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.
Files changed (49) hide show
  1. package/README.md +2 -2
  2. package/dist/errors.js +31 -0
  3. package/dist/errors.js.map +1 -0
  4. package/dist/helpers.js +93 -0
  5. package/dist/helpers.js.map +1 -0
  6. package/dist/index.cjs.js +17 -17
  7. package/dist/index.cjs.js.map +1 -1
  8. package/dist/index.esm.js +17 -17
  9. package/dist/index.esm.js.map +1 -1
  10. package/dist/src/errors.d.ts +6 -0
  11. package/dist/src/errors.js +31 -0
  12. package/dist/src/errors.js.map +1 -0
  13. package/dist/src/helpers.d.ts +34 -0
  14. package/dist/src/helpers.js +93 -0
  15. package/dist/src/helpers.js.map +1 -0
  16. package/dist/src/index.d.ts +19 -0
  17. package/dist/src/index.js +201 -0
  18. package/dist/src/index.js.map +1 -0
  19. package/dist/src/types.d.ts +62 -0
  20. package/dist/src/types.js +3 -0
  21. package/dist/src/types.js.map +1 -0
  22. package/dist/src/utils.d.ts +47 -0
  23. package/dist/src/utils.js +142 -0
  24. package/dist/src/utils.js.map +1 -0
  25. package/dist/src/validation.d.ts +7 -0
  26. package/dist/src/validation.js +65 -0
  27. package/dist/src/validation.js.map +1 -0
  28. package/dist/test/MarkdownTable.test.d.ts +1 -0
  29. package/dist/test/MarkdownTable.test.js +91 -0
  30. package/dist/test/MarkdownTable.test.js.map +1 -0
  31. package/dist/test/helpers.test.d.ts +1 -0
  32. package/dist/test/helpers.test.js +99 -0
  33. package/dist/test/helpers.test.js.map +1 -0
  34. package/dist/test/jest.setup.d.ts +2 -0
  35. package/dist/test/jest.setup.js +3 -0
  36. package/dist/test/jest.setup.js.map +1 -0
  37. package/dist/test/utils.test.d.ts +1 -0
  38. package/dist/test/utils.test.js +191 -0
  39. package/dist/test/utils.test.js.map +1 -0
  40. package/dist/test/validation.test.d.ts +1 -0
  41. package/dist/test/validation.test.js +87 -0
  42. package/dist/test/validation.test.js.map +1 -0
  43. package/dist/types.js +3 -0
  44. package/dist/types.js.map +1 -0
  45. package/dist/utils.js +142 -0
  46. package/dist/utils.js.map +1 -0
  47. package/dist/validation.js +65 -0
  48. package/dist/validation.js.map +1 -0
  49. 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 prismStyles = "\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";
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.data, data = _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;
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 preRef = useRef(null);
4175
- var markdownSyntax = useMemo(function () {
4176
- if (data === null) {
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(data) || data.length === 0) {
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: data[0],
4186
- rows: data.slice(1),
4185
+ header: inputData[0],
4186
+ rows: inputData.slice(1),
4187
4187
  }
4188
4188
  : {
4189
- header: generateAlphabetHeaders(data[0].length),
4190
- rows: data,
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
- data,
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(markdownSyntax);
4212
+ onTableCreate(markdownTableSyntax);
4213
4213
  }
4214
- }, [markdownSyntax, onTableCreate]);
4214
+ }, [markdownTableSyntax, onTableCreate]);
4215
4215
  useEffect(function () {
4216
- if (preRef.current) {
4217
- Prism$1.highlightElement(preRef.current.querySelector('code'));
4216
+ if (preElementRef.current) {
4217
+ Prism$1.highlightElement(preElementRef.current.querySelector('code'));
4218
4218
  }
4219
- }, [markdownSyntax]);
4220
- return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("style", { children: prismStyles }), jsxRuntimeExports.jsx("pre", { ref: preRef, className: "".concat(className, " language-markdown line-numbers"), children: jsxRuntimeExports.jsx("code", { children: markdownSyntax }) })] }));
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 };