react-markdown-table-ts 0.5.4 → 0.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -18563,12 +18563,13 @@ process.env.NODE_ENV !== "production" ? Tooltip.propTypes /* remove-proptypes */
18563
18563
  var Tooltip$1 = Tooltip;
18564
18564
 
18565
18565
  // CSS styles
18566
- var LIGHT_THEME_CSS = "\n.markdown-table-syntax code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n color:#000;\n background:0 0;\n text-shadow:0 1px #fff;\n font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;\n font-size:1em;\n text-align:left;\n white-space:pre;\n word-spacing:normal;\n word-break:normal;\n word-wrap:normal;\n line-height:1.5;\n -moz-tab-size:4;\n -o-tab-size:4;\n tab-size:4;\n -webkit-hyphens:none;\n -moz-hyphens:none;\n -ms-hyphens:none;\n hyphens:none;\n}\n.markdown-table-syntax code[class*=language-] ::-moz-selection,\n.markdown-table-syntax code[class*=language-]::-moz-selection,\n.markdown-table-syntax pre[class*=language-] ::-moz-selection,\n.markdown-table-syntax pre[class*=language-]::-moz-selection {\n text-shadow:none;\n background:#b3d4fc;\n}\n.markdown-table-syntax code[class*=language-] ::selection,\n.markdown-table-syntax code[class*=language-]::selection,\n.markdown-table-syntax pre[class*=language-] ::selection,\n.markdown-table-syntax pre[class*=language-]::selection {\n text-shadow:none;\n background:#b3d4fc;\n}\n@media print {\n .markdown-table-syntax code[class*=language-],\n .markdown-table-syntax pre[class*=language-] {\n text-shadow:none;\n }\n}\n.markdown-table-syntax pre[class*=language-] {\n padding:1em;\n margin:.5em 0;\n overflow:auto;\n border-radius:.3em;\n}\n:not(pre)>code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n background:#f5f2f0;\n}\n:not(pre)>code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n padding:.1em;\n border-radius:.3em;\n white-space:normal;\n}\n.markdown-table-syntax pre[class*=language-].line-numbers {\n position:relative;\n padding-left:2.4em;\n counter-reset:linenumber;\n}\n.markdown-table-syntax pre[class*=language-].line-numbers>code {\n position:relative;\n white-space:inherit;\n}\n.line-numbers .line-numbers-rows {\n position:absolute;\n pointer-events:none;\n top:0;\n font-size:100%;\n left:-3.8em;\n width:3em;\n letter-spacing:-1px;\n border-right:1px solid #999;\n -webkit-user-select:none;\n -moz-user-select:none;\n -ms-user-select:none;\n user-select:none;\n}\n.line-numbers-rows>span {\n display:block;\n counter-increment:linenumber;\n}\n.line-numbers-rows>span:before {\n content:counter(linenumber);\n color:#999;\n display:block;\n padding-right:.5em;\n text-align:right;\n}\n";
18567
- var DARK_THEME_CSS = "\n.markdown-table-syntax code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n color:#f8f8f2;\n background:0 0;\n text-shadow:0 1px rgba(0,0,0,.3);\n font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;\n font-size:1em;\n text-align:left;\n white-space:pre;\n word-spacing:normal;\n word-break:normal;\n word-wrap:normal;\n line-height:1.5;\n -moz-tab-size:4;\n -o-tab-size:4;\n tab-size:4;\n -webkit-hyphens:none;\n -moz-hyphens:none;\n -ms-hyphens:none;\n hyphens:none;\n}\n.markdown-table-syntax pre[class*=language-] {\n padding:1em;\n margin:.5em 0;\n overflow:auto;\n border-radius:.3em;\n}\n:not(pre)>code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n background:#282a36;\n}\n:not(pre)>code[class*=language-],\n.markdown-table-syntax pre[class*=language-] {\n padding:.1em;\n border-radius:.3em;\n white-space:normal;\n}\n.markdown-table-syntax pre[class*=language-].line-numbers {\n position:relative;\n padding-left:2.4em;\n counter-reset:linenumber;\n}\n.markdown-table-syntax pre[class*=language-].line-numbers>code {\n position:relative;\n white-space:inherit;\n}\n.line-numbers .line-numbers-rows {\n position:absolute;\n pointer-events:none;\n top:0;\n font-size:100%;\n left:-3.8em;\n width:3em;\n letter-spacing:-1px;\n border-right:1px solid #999;\n -webkit-user-select:none;\n -moz-user-select:none;\n -ms-user-select:none;\n user-select:none;\n}\n.line-numbers-rows>span {\n display:block;\n counter-increment:linenumber;\n}\n.line-numbers-rows>span:before {\n content:counter(linenumber);\n color:#999;\n display:block;\n padding-right:.5em;\n text-align:right;\n}\n";
18566
+ var LIGHT_THEME_CSS = "\ncode[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}pre[class*=language-].line-numbers{position:relative;padding-left:2.4em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.5em;text-align:right}\n";
18567
+ var DARK_THEME_CSS = "\ncode[class*=language-],pre[class*=language-]{color:#f8f8f2;background:0 0;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#282a36}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}pre[class*=language-].line-numbers{position:relative;padding-left:2.4em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.5em;text-align:right}\n";
18568
18568
  var MarkdownTable = function (_a) {
18569
- var _b = _a.inputData, inputData = _b === void 0 ? null : _b, _c = _a.hasHeader, hasHeader = _c === void 0 ? true : _c, _d = _a.columnAlignments, columnAlignments = _d === void 0 ? [] : _d, _e = _a.isCompact, isCompact = _e === void 0 ? false : _e, _f = _a.hasTabs, hasTabs = _f === void 0 ? false : _f, _g = _a.hasPadding, hasPadding = _g === void 0 ? true : _g, _h = _a.canReplaceNewlines, canReplaceNewlines = _h === void 0 ? false : _h, className = _a.className, onTableCreate = _a.onTableCreate, _j = _a.theme, theme = _j === void 0 ? 'light' : _j, preStyle = _a.preStyle;
18569
+ var _b = _a.inputData, inputData = _b === void 0 ? null : _b, _c = _a.hasHeader, hasHeader = _c === void 0 ? true : _c, _d = _a.columnAlignments, columnAlignments = _d === void 0 ? [] : _d, _e = _a.isCompact, isCompact = _e === void 0 ? false : _e, _f = _a.hasTabs, hasTabs = _f === void 0 ? false : _f, _g = _a.hasPadding, hasPadding = _g === void 0 ? true : _g, _h = _a.canReplaceNewlines, canReplaceNewlines = _h === void 0 ? false : _h, className = _a.className, onTableCreate = _a.onTableCreate, _j = _a.theme, theme = _j === void 0 ? 'light' : _j, preStyle = _a.preStyle, _k = _a.showCopyButton, showCopyButton = _k === void 0 ? false : _k;
18570
18570
  var adjustColumnWidths = !isCompact;
18571
18571
  var preElementRef = React.useRef(null);
18572
+ var _l = React.useState(false), isCopied = _l[0], setIsCopied = _l[1];
18572
18573
  var markdownTableSyntax = React.useMemo(function () {
18573
18574
  if (inputData === null) {
18574
18575
  return 'Error: No data provided for the table.';
@@ -18621,16 +18622,18 @@ var MarkdownTable = function (_a) {
18621
18622
  }, [markdownTableSyntax]);
18622
18623
  var handleCopy = function () {
18623
18624
  navigator.clipboard.writeText(markdownTableSyntax);
18625
+ setIsCopied(true);
18626
+ setTimeout(function () { return setIsCopied(false); }, 2000);
18624
18627
  };
18625
- return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("style", { children: theme === 'light' ? LIGHT_THEME_CSS : DARK_THEME_CSS }), jsxRuntimeExports.jsxs("div", { className: "markdown-table-syntax", style: {
18628
+ return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("style", { children: theme === 'light' ? LIGHT_THEME_CSS : DARK_THEME_CSS }), jsxRuntimeExports.jsxs("div", { style: {
18626
18629
  position: 'relative',
18627
18630
  isolation: 'isolate'
18628
- }, children: [jsxRuntimeExports.jsx(Tooltip$1, { title: "Copy markdown table syntax", placement: "left-end", arrow: true, children: jsxRuntimeExports.jsx(IconButton$1, { onClick: handleCopy, sx: {
18631
+ }, children: [showCopyButton && (jsxRuntimeExports.jsx(Tooltip$1, { title: isCopied ? 'Copied!' : 'Copy markdown table syntax', placement: "left-end", arrow: true, children: jsxRuntimeExports.jsx(IconButton$1, { onClick: handleCopy, sx: {
18629
18632
  position: 'absolute',
18630
18633
  top: '12px',
18631
18634
  right: '8px',
18632
18635
  zIndex: 1
18633
- }, "aria-label": "Copy to clipboard", size: "small", children: jsxRuntimeExports.jsx(ContentCopyIcon, { fontSize: "small" }) }) }), jsxRuntimeExports.jsx("pre", { ref: preElementRef, className: "".concat(className, " language-markdown line-numbers ").concat(theme === 'dark' ? 'dark-theme' : ''), style: preStyle, children: jsxRuntimeExports.jsx("code", { className: "language-markdown", role: "code", children: markdownTableSyntax }) })] })] }));
18636
+ }, "aria-label": "Copy to clipboard", size: "small", children: jsxRuntimeExports.jsx(ContentCopyIcon, { fontSize: "small" }) }) })), jsxRuntimeExports.jsx("pre", { ref: preElementRef, className: "".concat(className, " language-markdown line-numbers ").concat(theme === 'dark' ? 'dark-theme' : ''), style: preStyle, children: jsxRuntimeExports.jsx("code", { className: "language-markdown", role: "code", children: markdownTableSyntax }) })] })] }));
18634
18637
  };
18635
18638
 
18636
18639
  exports.MarkdownTable = MarkdownTable;