/
sdds
/
plasma
Обзор
Документация
Войти
/
sdds
/
plasma
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
dev
website/sdds-serv-docs/src/components/CodeSandbox.tsx
63 строки
2 KB
Alexander Lobyntsev
chore(sdds-serve-docs): init package
06 мар 2024, 06:23
06 мар 2024, 06:23
8cb1ccf
Код
Авторство
О чём код?
import React, { FC } from 'react'; import { CodeSandbox as CodeSandboxView } from '@salutejs/plasma-docs-ui'; import IconExternalLink from '@theme/Icon/ExternalLink'; import styled from 'styled-components'; import packageJson from '../../package.json'; const StyledText = styled.span` margin-left: 6px; `; const sberdevicesDependencies = Object.entries(packageJson.dependencies) .filter(([key]) => key.startsWith('@salutejs') && !key.includes('plasma-docs-ui')) .reduce((acc: Record<string, string>, [key, value]) => { acc[key] = value; return acc; }, {}); const indexSource = `import React from "react"; import ReactDOM from "react-dom"; import styled, { createGlobalStyle } from "styled-components"; import { sdds_serv__light } from '@salutejs/sdds-themes'; import { App } from "./App"; import "./style.css"; const Theme = createGlobalStyle(sdds_serv__light); const StyledPreview = styled.div\` padding: 1rem; > div { display: flex; gap: 1rem; } \` ReactDOM.render( <> <Theme/> <StyledPreview> <App /> </StyledPreview> </>, document.getElementById("root") );`; export const CodeSandbox: FC<{ source: string }> = ({ source }) => { return ( <CodeSandboxView source={source} content={ <> <IconExternalLink /> <StyledText>Open in CodeSandbox</StyledText> </> } sandboxName="plasma-sdds-serv-example" dependencies={sberdevicesDependencies} indexSource={indexSource} /> ); };