diff --git a/src/docs/docs-components/CopyTable/Table.jsx b/src/docs/docs-components/CopyTable/Table.jsx index 2278d35d..79bd229c 100644 --- a/src/docs/docs-components/CopyTable/Table.jsx +++ b/src/docs/docs-components/CopyTable/Table.jsx @@ -1,22 +1,37 @@ -import React from 'react'; +import React, { useEffect, useState } from 'react'; + import { Unstyled } from '@storybook/blocks'; // @ts-ignore import classes from './styles.module.scss'; -const handleClick = async(props) => { - const copyText = typeof props.copyable[props.column] === 'function' ? - props.copyable[props.column](`${props.children}`) : `${props.children}`; - await navigator.clipboard.writeText(copyText); -} - const MultiLine = (props) => props.children.split('\n').map(t => (
{t}
)) -const Copyable = (props) => props.copyable && props.copyable[props.column] ? - : {props.children}; -const TD = (props) => {props.children} +} + + const TD = (props) => {props.children} const TR = (props) => {props.children.map((c, i) => ({c}))} const TH = (props) => {props.children}; diff --git a/src/docs/docs-components/CopyTable/styles.module.scss b/src/docs/docs-components/CopyTable/styles.module.scss index 904fd48b..a49665a1 100644 --- a/src/docs/docs-components/CopyTable/styles.module.scss +++ b/src/docs/docs-components/CopyTable/styles.module.scss @@ -19,7 +19,7 @@ $header: #5e81ac; } } -.table { +.table :global { min-height: 100px; margin: 0 0 3rem; width: 100%; @@ -77,6 +77,7 @@ $header: #5e81ac; border-right: 1px solid #eee; vertical-align: text-top; color: #2e3438; + position: relative; button { text-align: left; padding: 0; @@ -84,12 +85,25 @@ $header: #5e81ac; background-color: transparent; cursor: pointer; color: $copyable; + span { font-size: 1rem; color: inherit; margin-right: 5px; vertical-align: bottom; } + div.copy-tag { + position: absolute; + right: 4px; + top: 50%; + transform: translate(0, -50%); + background-color: #333; + pointer-events: none; + color: white; + padding: 4px 6px; + border-radius: 4px; + font-size: 12px; + } &:active { transform: translate(1px, 1px); }