react-markdown-table-ts 0.2.5 → 0.3.1
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/README.md +2 -2
- package/dist/errors.js +31 -0
- package/dist/errors.js.map +1 -0
- package/dist/helpers.js +93 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index.cjs.js +17 -17
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +17 -17
- package/dist/index.esm.js.map +1 -1
- package/dist/src/errors.d.ts +6 -0
- package/dist/src/errors.js +31 -0
- package/dist/src/errors.js.map +1 -0
- package/dist/src/helpers.d.ts +34 -0
- package/dist/src/helpers.js +93 -0
- package/dist/src/helpers.js.map +1 -0
- package/dist/src/index.d.ts +19 -0
- package/dist/src/index.js +201 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/types.d.ts +62 -0
- package/dist/src/types.js +3 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/utils.d.ts +47 -0
- package/dist/src/utils.js +142 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/src/validation.d.ts +7 -0
- package/dist/src/validation.js +65 -0
- package/dist/src/validation.js.map +1 -0
- package/dist/test/MarkdownTable.test.d.ts +1 -0
- package/dist/test/MarkdownTable.test.js +91 -0
- package/dist/test/MarkdownTable.test.js.map +1 -0
- package/dist/test/helpers.test.d.ts +1 -0
- package/dist/test/helpers.test.js +99 -0
- package/dist/test/helpers.test.js.map +1 -0
- package/dist/test/jest.setup.d.ts +2 -0
- package/dist/test/jest.setup.js +3 -0
- package/dist/test/jest.setup.js.map +1 -0
- package/dist/test/utils.test.d.ts +1 -0
- package/dist/test/utils.test.js +191 -0
- package/dist/test/utils.test.js.map +1 -0
- package/dist/test/validation.test.d.ts +1 -0
- package/dist/test/validation.test.js +87 -0
- package/dist/test/validation.test.js.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.js +142 -0
- package/dist/utils.js.map +1 -0
- package/dist/validation.js +65 -0
- package/dist/validation.js.map +1 -0
- package/package.json +2 -1
package/dist/index.esm.js
CHANGED
@@ -4050,7 +4050,7 @@ var Prism$1 = /*@__PURE__*/getDefaultExportFromCjs(prismExports);
|
|
4050
4050
|
}());
|
4051
4051
|
|
4052
4052
|
// CSS styles
|
4053
|
-
var
|
4053
|
+
var PRISM_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:3.8em;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:.8em;text-align:right}\n";
|
4054
4054
|
var MarkdownTableError = /** @class */ (function (_super) {
|
4055
4055
|
__extends(MarkdownTableError, _super);
|
4056
4056
|
function MarkdownTableError(message) {
|
@@ -4169,25 +4169,25 @@ function getColumnName(index) {
|
|
4169
4169
|
return name;
|
4170
4170
|
}
|
4171
4171
|
var MarkdownTable = function (_a) {
|
4172
|
-
var _b = _a.
|
4172
|
+
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.canReplaceNewlines, canReplaceNewlines = _g === void 0 ? false : _g, className = _a.className, onTableCreate = _a.onTableCreate;
|
4173
4173
|
var adjustColumnWidths = !isCompact;
|
4174
|
-
var
|
4175
|
-
var
|
4176
|
-
if (
|
4174
|
+
var preElementRef = useRef(null);
|
4175
|
+
var markdownTableSyntax = useMemo(function () {
|
4176
|
+
if (inputData === null) {
|
4177
4177
|
return 'Error: No data provided for the table.';
|
4178
4178
|
}
|
4179
4179
|
try {
|
4180
|
-
if (!Array.isArray(
|
4180
|
+
if (!Array.isArray(inputData) || inputData.length === 0) {
|
4181
4181
|
throw new MarkdownTableError("The 'data' prop must be a non-empty two-dimensional array.");
|
4182
4182
|
}
|
4183
4183
|
var tableData = hasHeader
|
4184
4184
|
? {
|
4185
|
-
header:
|
4186
|
-
rows:
|
4185
|
+
header: inputData[0],
|
4186
|
+
rows: inputData.slice(1),
|
4187
4187
|
}
|
4188
4188
|
: {
|
4189
|
-
header: generateAlphabetHeaders(
|
4190
|
-
rows:
|
4189
|
+
header: generateAlphabetHeaders(inputData[0].length),
|
4190
|
+
rows: inputData,
|
4191
4191
|
};
|
4192
4192
|
return generateMarkdownTableString(tableData, columnAlignments, adjustColumnWidths, hasTabs, canReplaceNewlines);
|
4193
4193
|
}
|
@@ -4200,7 +4200,7 @@ var MarkdownTable = function (_a) {
|
|
4200
4200
|
}
|
4201
4201
|
}
|
4202
4202
|
}, [
|
4203
|
-
|
4203
|
+
inputData,
|
4204
4204
|
hasHeader,
|
4205
4205
|
columnAlignments,
|
4206
4206
|
isCompact,
|
@@ -4209,15 +4209,15 @@ var MarkdownTable = function (_a) {
|
|
4209
4209
|
]);
|
4210
4210
|
useEffect(function () {
|
4211
4211
|
if (onTableCreate) {
|
4212
|
-
onTableCreate(
|
4212
|
+
onTableCreate(markdownTableSyntax);
|
4213
4213
|
}
|
4214
|
-
}, [
|
4214
|
+
}, [markdownTableSyntax, onTableCreate]);
|
4215
4215
|
useEffect(function () {
|
4216
|
-
if (
|
4217
|
-
Prism$1.highlightElement(
|
4216
|
+
if (preElementRef.current) {
|
4217
|
+
Prism$1.highlightElement(preElementRef.current.querySelector('code'));
|
4218
4218
|
}
|
4219
|
-
}, [
|
4220
|
-
return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("style", { children:
|
4219
|
+
}, [markdownTableSyntax]);
|
4220
|
+
return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("style", { children: PRISM_CSS }), jsxRuntimeExports.jsx("pre", { ref: preElementRef, className: "".concat(className, " language-markdown line-numbers"), children: jsxRuntimeExports.jsx("code", { className: "language-markdown", role: "code", children: markdownTableSyntax }) })] }));
|
4221
4221
|
};
|
4222
4222
|
|
4223
4223
|
export { MarkdownTable };
|