react-markdown-table-ts 1.3.7 → 1.3.9

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 CHANGED
@@ -14,6 +14,14 @@
14
14
  ## Overview
15
15
  A React component for generating and displaying formatted Markdown tables with syntax highlighting. The core component is `MarkdownTable` which converts 2D array data into properly formatted Markdown table syntax. Columns of variable width maintain consistent spacing across all rows, ensuring vertical alignment of delimiters. For syntax highlighting and line numbering, Prism.js is used within a `<pre>` HTML element.
16
16
 
17
+ ## Installation
18
+
19
+ ```bash
20
+ npm install react-markdown-table-ts
21
+ ```
22
+
23
+ The component includes all necessary Prism.js dependencies and CSS is embedded inline, so no additional setup is required.
24
+
17
25
  ## API
18
26
  ```typescript
19
27
  interface MarkdownTableProps {
@@ -122,3 +130,34 @@ interface MarkdownTableProps {
122
130
  2. **Header Generation**:
123
131
  - Auto-generates A, B, C... headers when `hasHeader={false}`
124
132
  - Supports custom headers via first row when `hasHeader={true}`
133
+
134
+ ## Troubleshooting
135
+
136
+ ### Styling Issues (Missing Line Numbers or Wrong Colors)
137
+
138
+ If you experience styling issues when importing this component into your project (e.g., missing line numbers, incorrect header colors), this may be due to your bundler's tree-shaking configuration.
139
+
140
+ **Solution 1 - Module Side Effects (Recommended)**
141
+
142
+ Ensure your bundler preserves module side effects from this package. If using Webpack, add to your config:
143
+
144
+ ```javascript
145
+ module.exports = {
146
+ // ... other config
147
+ optimization: {
148
+ sideEffects: true,
149
+ },
150
+ };
151
+ ```
152
+
153
+ **Solution 2 - Force Import**
154
+
155
+ If issues persist, you can manually import the Prism.js plugins in your app entry file:
156
+
157
+ ```javascript
158
+ import 'prismjs/components/prism-markdown';
159
+ import 'prismjs/plugins/line-numbers/prism-line-numbers';
160
+ import 'prismjs/plugins/line-numbers/prism-line-numbers.css';
161
+ ```
162
+
163
+ Note: You may need to install `@types/prismjs` as a dev dependency for TypeScript projects.
package/dist/dark.png ADDED
Binary file
package/dist/index.cjs ADDED
@@ -0,0 +1,69 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const J=require("react");var We=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function br(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var we={exports:{}},ge={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.min.js
4
+ *
5
+ * Copyright (c) Facebook, Inc. and its affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var He;function yr(){if(He)return ge;He=1;var l=J,g=Symbol.for("react.element"),t=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,v=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,x={key:!0,ref:!0,__self:!0,__source:!0};function h(a,c,E){var p,f={},k=null,C=null;E!==void 0&&(k=""+E),c.key!==void 0&&(k=""+c.key),c.ref!==void 0&&(C=c.ref);for(p in c)m.call(c,p)&&!x.hasOwnProperty(p)&&(f[p]=c[p]);if(a&&a.defaultProps)for(p in c=a.defaultProps,c)f[p]===void 0&&(f[p]=c[p]);return{$$typeof:g,type:a,key:k,ref:C,props:f,_owner:v.current}}return ge.Fragment=t,ge.jsx=h,ge.jsxs=h,ge}var pe={};/**
10
+ * @license React
11
+ * react-jsx-runtime.development.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var qe;function wr(){return qe||(qe=1,process.env.NODE_ENV!=="production"&&(function(){var l=J,g=Symbol.for("react.element"),t=Symbol.for("react.portal"),m=Symbol.for("react.fragment"),v=Symbol.for("react.strict_mode"),x=Symbol.for("react.profiler"),h=Symbol.for("react.provider"),a=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),E=Symbol.for("react.suspense"),p=Symbol.for("react.suspense_list"),f=Symbol.for("react.memo"),k=Symbol.for("react.lazy"),C=Symbol.for("react.offscreen"),P=Symbol.iterator,S="@@iterator";function _(e){if(e===null||typeof e!="object")return null;var i=P&&e[P]||e[S];return typeof i=="function"?i:null}var A=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function r(e){{for(var i=arguments.length,d=new Array(i>1?i-1:0),w=1;w<i;w++)d[w-1]=arguments[w];n("error",e,d)}}function n(e,i,d){{var w=A.ReactDebugCurrentFrame,$=w.getStackAddendum();$!==""&&(i+="%s",d=d.concat([$]));var O=d.map(function(T){return String(T)});O.unshift("Warning: "+i),Function.prototype.apply.call(console[e],console,O)}}var o=!1,s=!1,u=!1,y=!1,R=!1,b;b=Symbol.for("react.module.reference");function j(e){return!!(typeof e=="string"||typeof e=="function"||e===m||e===x||R||e===v||e===E||e===p||y||e===C||o||s||u||typeof e=="object"&&e!==null&&(e.$$typeof===k||e.$$typeof===f||e.$$typeof===h||e.$$typeof===a||e.$$typeof===c||e.$$typeof===b||e.getModuleId!==void 0))}function z(e,i,d){var w=e.displayName;if(w)return w;var $=i.displayName||i.name||"";return $!==""?d+"("+$+")":d}function U(e){return e.displayName||"Context"}function Y(e){if(e==null)return null;if(typeof e.tag=="number"&&r("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case m:return"Fragment";case t:return"Portal";case x:return"Profiler";case v:return"StrictMode";case E:return"Suspense";case p:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case a:var i=e;return U(i)+".Consumer";case h:var d=e;return U(d._context)+".Provider";case c:return z(e,e.render,"ForwardRef");case f:var w=e.displayName||null;return w!==null?w:Y(e.type)||"Memo";case k:{var $=e,O=$._payload,T=$._init;try{return Y(T(O))}catch{return null}}}return null}var B=Object.assign,ee=0,he,ce,D,H,G,re,N;function me(){}me.__reactDisabledLog=!0;function V(){{if(ee===0){he=console.log,ce=console.info,D=console.warn,H=console.error,G=console.group,re=console.groupCollapsed,N=console.groupEnd;var e={configurable:!0,enumerable:!0,value:me,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}ee++}}function ne(){{if(ee--,ee===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:B({},e,{value:he}),info:B({},e,{value:ce}),warn:B({},e,{value:D}),error:B({},e,{value:H}),group:B({},e,{value:G}),groupCollapsed:B({},e,{value:re}),groupEnd:B({},e,{value:N})})}ee<0&&r("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var K=A.ReactCurrentDispatcher,Z;function X(e,i,d){{if(Z===void 0)try{throw Error()}catch($){var w=$.stack.trim().match(/\n( *(at )?)/);Z=w&&w[1]||""}return`
18
+ `+Z+e}}var ae=!1,Q;{var ie=typeof WeakMap=="function"?WeakMap:Map;Q=new ie}function ve(e,i){if(!e||ae)return"";{var d=Q.get(e);if(d!==void 0)return d}var w;ae=!0;var $=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var O;O=K.current,K.current=null,V();try{if(i){var T=function(){throw Error()};if(Object.defineProperty(T.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(T,[])}catch(W){w=W}Reflect.construct(e,[],T)}else{try{T.call()}catch(W){w=W}e.call(T.prototype)}}else{try{throw Error()}catch(W){w=W}e()}}catch(W){if(W&&w&&typeof W.stack=="string"){for(var F=W.stack.split(`
19
+ `),L=w.stack.split(`
20
+ `),I=F.length-1,M=L.length-1;I>=1&&M>=0&&F[I]!==L[M];)M--;for(;I>=1&&M>=0;I--,M--)if(F[I]!==L[M]){if(I!==1||M!==1)do if(I--,M--,M<0||F[I]!==L[M]){var q=`
21
+ `+F[I].replace(" at new "," at ");return e.displayName&&q.includes("<anonymous>")&&(q=q.replace("<anonymous>",e.displayName)),typeof e=="function"&&Q.set(e,q),q}while(I>=1&&M>=0);break}}}finally{ae=!1,K.current=O,ne(),Error.prepareStackTrace=$}var se=e?e.displayName||e.name:"",te=se?X(se):"";return typeof e=="function"&&Q.set(e,te),te}function de(e,i,d){return ve(e,!1)}function Je(e){var i=e.prototype;return!!(i&&i.isReactComponent)}function be(e,i,d){if(e==null)return"";if(typeof e=="function")return ve(e,Je(e));if(typeof e=="string")return X(e);switch(e){case E:return X("Suspense");case p:return X("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case c:return de(e.render);case f:return be(e.type,i,d);case k:{var w=e,$=w._payload,O=w._init;try{return be(O($),i,d)}catch{}}}return""}var fe=Object.prototype.hasOwnProperty,Fe={},Re=A.ReactDebugCurrentFrame;function ye(e){if(e){var i=e._owner,d=be(e.type,e._source,i?i.type:null);Re.setExtraStackFrame(d)}else Re.setExtraStackFrame(null)}function Ke(e,i,d,w,$){{var O=Function.call.bind(fe);for(var T in e)if(O(e,T)){var F=void 0;try{if(typeof e[T]!="function"){var L=Error((w||"React class")+": "+d+" type `"+T+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[T]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw L.name="Invariant Violation",L}F=e[T](i,T,w,d,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(I){F=I}F&&!(F instanceof Error)&&(ye($),r("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",w||"React class",d,T,typeof F),ye(null)),F instanceof Error&&!(F.message in Fe)&&(Fe[F.message]=!0,ye($),r("Failed %s type: %s",d,F.message),ye(null))}}}var Ze=Array.isArray;function xe(e){return Ze(e)}function Xe(e){{var i=typeof Symbol=="function"&&Symbol.toStringTag,d=i&&e[Symbol.toStringTag]||e.constructor.name||"Object";return d}}function Qe(e){try{return Ce(e),!1}catch{return!0}}function Ce(e){return""+e}function Te(e){if(Qe(e))return r("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",Xe(e)),Ce(e)}var $e=A.ReactCurrentOwner,er={key:!0,ref:!0,__self:!0,__source:!0},Oe,je;function rr(e){if(fe.call(e,"ref")){var i=Object.getOwnPropertyDescriptor(e,"ref").get;if(i&&i.isReactWarning)return!1}return e.ref!==void 0}function nr(e){if(fe.call(e,"key")){var i=Object.getOwnPropertyDescriptor(e,"key").get;if(i&&i.isReactWarning)return!1}return e.key!==void 0}function tr(e,i){typeof e.ref=="string"&&$e.current}function ar(e,i){{var d=function(){Oe||(Oe=!0,r("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",i))};d.isReactWarning=!0,Object.defineProperty(e,"key",{get:d,configurable:!0})}}function ir(e,i){{var d=function(){je||(je=!0,r("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",i))};d.isReactWarning=!0,Object.defineProperty(e,"ref",{get:d,configurable:!0})}}var or=function(e,i,d,w,$,O,T){var F={$$typeof:g,type:e,key:i,ref:d,props:T,_owner:O};return F._store={},Object.defineProperty(F._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(F,"_self",{configurable:!1,enumerable:!1,writable:!1,value:w}),Object.defineProperty(F,"_source",{configurable:!1,enumerable:!1,writable:!1,value:$}),Object.freeze&&(Object.freeze(F.props),Object.freeze(F)),F};function sr(e,i,d,w,$){{var O,T={},F=null,L=null;d!==void 0&&(Te(d),F=""+d),nr(i)&&(Te(i.key),F=""+i.key),rr(i)&&(L=i.ref,tr(i,$));for(O in i)fe.call(i,O)&&!er.hasOwnProperty(O)&&(T[O]=i[O]);if(e&&e.defaultProps){var I=e.defaultProps;for(O in I)T[O]===void 0&&(T[O]=I[O])}if(F||L){var M=typeof e=="function"?e.displayName||e.name||"Unknown":e;F&&ar(T,M),L&&ir(T,M)}return or(e,F,L,$,w,$e.current,T)}}var Ee=A.ReactCurrentOwner,Pe=A.ReactDebugCurrentFrame;function oe(e){if(e){var i=e._owner,d=be(e.type,e._source,i?i.type:null);Pe.setExtraStackFrame(d)}else Pe.setExtraStackFrame(null)}var ke;ke=!1;function Ae(e){return typeof e=="object"&&e!==null&&e.$$typeof===g}function Ie(){{if(Ee.current){var e=Y(Ee.current.type);if(e)return`
22
+
23
+ Check the render method of \``+e+"`."}return""}}function lr(e){return""}var Me={};function ur(e){{var i=Ie();if(!i){var d=typeof e=="string"?e:e.displayName||e.name;d&&(i=`
24
+
25
+ Check the top-level render call using <`+d+">.")}return i}}function De(e,i){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var d=ur(i);if(Me[d])return;Me[d]=!0;var w="";e&&e._owner&&e._owner!==Ee.current&&(w=" It was passed a child from "+Y(e._owner.type)+"."),oe(e),r('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',d,w),oe(null)}}function ze(e,i){{if(typeof e!="object")return;if(xe(e))for(var d=0;d<e.length;d++){var w=e[d];Ae(w)&&De(w,i)}else if(Ae(e))e._store&&(e._store.validated=!0);else if(e){var $=_(e);if(typeof $=="function"&&$!==e.entries)for(var O=$.call(e),T;!(T=O.next()).done;)Ae(T.value)&&De(T.value,i)}}}function cr(e){{var i=e.type;if(i==null||typeof i=="string")return;var d;if(typeof i=="function")d=i.propTypes;else if(typeof i=="object"&&(i.$$typeof===c||i.$$typeof===f))d=i.propTypes;else return;if(d){var w=Y(i);Ke(d,e.props,"prop",w,e)}else if(i.PropTypes!==void 0&&!ke){ke=!0;var $=Y(i);r("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",$||"Unknown")}typeof i.getDefaultProps=="function"&&!i.getDefaultProps.isReactClassApproved&&r("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function dr(e){{for(var i=Object.keys(e.props),d=0;d<i.length;d++){var w=i[d];if(w!=="children"&&w!=="key"){oe(e),r("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",w),oe(null);break}}e.ref!==null&&(oe(e),r("Invalid attribute `ref` supplied to `React.Fragment`."),oe(null))}}var Le={};function Ne(e,i,d,w,$,O){{var T=j(e);if(!T){var F="";(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(F+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var L=lr();L?F+=L:F+=Ie();var I;e===null?I="null":xe(e)?I="array":e!==void 0&&e.$$typeof===g?(I="<"+(Y(e.type)||"Unknown")+" />",F=" Did you accidentally export a JSX literal instead of a component?"):I=typeof e,r("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",I,F)}var M=sr(e,i,d,$,O);if(M==null)return M;if(T){var q=i.children;if(q!==void 0)if(w)if(xe(q)){for(var se=0;se<q.length;se++)ze(q[se],e);Object.freeze&&Object.freeze(q)}else r("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else ze(q,e)}if(fe.call(i,"key")){var te=Y(e),W=Object.keys(i).filter(function(vr){return vr!=="key"}),_e=W.length>0?"{key: someKey, "+W.join(": ..., ")+": ...}":"{key: someKey}";if(!Le[te+_e]){var mr=W.length>0?"{"+W.join(": ..., ")+": ...}":"{}";r(`A props object containing a "key" prop is being spread into JSX:
26
+ let props = %s;
27
+ <%s {...props} />
28
+ React keys must be passed directly to JSX without using spread:
29
+ let props = %s;
30
+ <%s key={someKey} {...props} />`,_e,te,mr,te),Le[te+_e]=!0}}return e===m?dr(M):cr(M),M}}function fr(e,i,d){return Ne(e,i,d,!0)}function gr(e,i,d){return Ne(e,i,d,!1)}var pr=gr,hr=fr;pe.Fragment=m,pe.jsx=pr,pe.jsxs=hr})()),pe}var Ue;function xr(){return Ue||(Ue=1,process.env.NODE_ENV==="production"?we.exports=yr():we.exports=wr()),we.exports}var le=xr(),Se={exports:{}},Ye;function Er(){return Ye||(Ye=1,(function(l){var g=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/**
31
+ * Prism: Lightweight, robust, elegant syntax highlighting
32
+ *
33
+ * @license MIT <https://opensource.org/licenses/MIT>
34
+ * @author Lea Verou <https://lea.verou.me>
35
+ * @namespace
36
+ * @public
37
+ */var t=(function(m){var v=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,x=0,h={},a={manual:m.Prism&&m.Prism.manual,disableWorkerMessageHandler:m.Prism&&m.Prism.disableWorkerMessageHandler,util:{encode:function r(n){return n instanceof c?new c(n.type,r(n.content),n.alias):Array.isArray(n)?n.map(r):n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(r){return Object.prototype.toString.call(r).slice(8,-1)},objId:function(r){return r.__id||Object.defineProperty(r,"__id",{value:++x}),r.__id},clone:function r(n,o){o=o||{};var s,u;switch(a.util.type(n)){case"Object":if(u=a.util.objId(n),o[u])return o[u];s={},o[u]=s;for(var y in n)n.hasOwnProperty(y)&&(s[y]=r(n[y],o));return s;case"Array":return u=a.util.objId(n),o[u]?o[u]:(s=[],o[u]=s,n.forEach(function(R,b){s[b]=r(R,o)}),s);default:return n}},getLanguage:function(r){for(;r;){var n=v.exec(r.className);if(n)return n[1].toLowerCase();r=r.parentElement}return"none"},setLanguage:function(r,n){r.className=r.className.replace(RegExp(v,"gi"),""),r.classList.add("language-"+n)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(s){var r=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(s.stack)||[])[1];if(r){var n=document.getElementsByTagName("script");for(var o in n)if(n[o].src==r)return n[o]}return null}},isActive:function(r,n,o){for(var s="no-"+n;r;){var u=r.classList;if(u.contains(n))return!0;if(u.contains(s))return!1;r=r.parentElement}return!!o}},languages:{plain:h,plaintext:h,text:h,txt:h,extend:function(r,n){var o=a.util.clone(a.languages[r]);for(var s in n)o[s]=n[s];return o},insertBefore:function(r,n,o,s){s=s||a.languages;var u=s[r],y={};for(var R in u)if(u.hasOwnProperty(R)){if(R==n)for(var b in o)o.hasOwnProperty(b)&&(y[b]=o[b]);o.hasOwnProperty(R)||(y[R]=u[R])}var j=s[r];return s[r]=y,a.languages.DFS(a.languages,function(z,U){U===j&&z!=r&&(this[z]=y)}),y},DFS:function r(n,o,s,u){u=u||{};var y=a.util.objId;for(var R in n)if(n.hasOwnProperty(R)){o.call(n,R,n[R],s||R);var b=n[R],j=a.util.type(b);j==="Object"&&!u[y(b)]?(u[y(b)]=!0,r(b,o,null,u)):j==="Array"&&!u[y(b)]&&(u[y(b)]=!0,r(b,o,R,u))}}},plugins:{},highlightAll:function(r,n){a.highlightAllUnder(document,r,n)},highlightAllUnder:function(r,n,o){var s={callback:o,container:r,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};a.hooks.run("before-highlightall",s),s.elements=Array.prototype.slice.apply(s.container.querySelectorAll(s.selector)),a.hooks.run("before-all-elements-highlight",s);for(var u=0,y;y=s.elements[u++];)a.highlightElement(y,n===!0,s.callback)},highlightElement:function(r,n,o){var s=a.util.getLanguage(r),u=a.languages[s];a.util.setLanguage(r,s);var y=r.parentElement;y&&y.nodeName.toLowerCase()==="pre"&&a.util.setLanguage(y,s);var R=r.textContent,b={element:r,language:s,grammar:u,code:R};function j(U){b.highlightedCode=U,a.hooks.run("before-insert",b),b.element.innerHTML=b.highlightedCode,a.hooks.run("after-highlight",b),a.hooks.run("complete",b),o&&o.call(b.element)}if(a.hooks.run("before-sanity-check",b),y=b.element.parentElement,y&&y.nodeName.toLowerCase()==="pre"&&!y.hasAttribute("tabindex")&&y.setAttribute("tabindex","0"),!b.code){a.hooks.run("complete",b),o&&o.call(b.element);return}if(a.hooks.run("before-highlight",b),!b.grammar){j(a.util.encode(b.code));return}if(n&&m.Worker){var z=new Worker(a.filename);z.onmessage=function(U){j(U.data)},z.postMessage(JSON.stringify({language:b.language,code:b.code,immediateClose:!0}))}else j(a.highlight(b.code,b.grammar,b.language))},highlight:function(r,n,o){var s={code:r,grammar:n,language:o};if(a.hooks.run("before-tokenize",s),!s.grammar)throw new Error('The language "'+s.language+'" has no grammar.');return s.tokens=a.tokenize(s.code,s.grammar),a.hooks.run("after-tokenize",s),c.stringify(a.util.encode(s.tokens),s.language)},tokenize:function(r,n){var o=n.rest;if(o){for(var s in o)n[s]=o[s];delete n.rest}var u=new f;return k(u,u.head,r),p(r,u,n,u.head,0),P(u)},hooks:{all:{},add:function(r,n){var o=a.hooks.all;o[r]=o[r]||[],o[r].push(n)},run:function(r,n){var o=a.hooks.all[r];if(!(!o||!o.length))for(var s=0,u;u=o[s++];)u(n)}},Token:c};m.Prism=a;function c(r,n,o,s){this.type=r,this.content=n,this.alias=o,this.length=(s||"").length|0}c.stringify=function r(n,o){if(typeof n=="string")return n;if(Array.isArray(n)){var s="";return n.forEach(function(j){s+=r(j,o)}),s}var u={type:n.type,content:r(n.content,o),tag:"span",classes:["token",n.type],attributes:{},language:o},y=n.alias;y&&(Array.isArray(y)?Array.prototype.push.apply(u.classes,y):u.classes.push(y)),a.hooks.run("wrap",u);var R="";for(var b in u.attributes)R+=" "+b+'="'+(u.attributes[b]||"").replace(/"/g,"&quot;")+'"';return"<"+u.tag+' class="'+u.classes.join(" ")+'"'+R+">"+u.content+"</"+u.tag+">"};function E(r,n,o,s){r.lastIndex=n;var u=r.exec(o);if(u&&s&&u[1]){var y=u[1].length;u.index+=y,u[0]=u[0].slice(y)}return u}function p(r,n,o,s,u,y){for(var R in o)if(!(!o.hasOwnProperty(R)||!o[R])){var b=o[R];b=Array.isArray(b)?b:[b];for(var j=0;j<b.length;++j){if(y&&y.cause==R+","+j)return;var z=b[j],U=z.inside,Y=!!z.lookbehind,B=!!z.greedy,ee=z.alias;if(B&&!z.pattern.global){var he=z.pattern.toString().match(/[imsuy]*$/)[0];z.pattern=RegExp(z.pattern.source,he+"g")}for(var ce=z.pattern||z,D=s.next,H=u;D!==n.tail&&!(y&&H>=y.reach);H+=D.value.length,D=D.next){var G=D.value;if(n.length>r.length)return;if(!(G instanceof c)){var re=1,N;if(B){if(N=E(ce,H,r,Y),!N||N.index>=r.length)break;var K=N.index,me=N.index+N[0].length,V=H;for(V+=D.value.length;K>=V;)D=D.next,V+=D.value.length;if(V-=D.value.length,H=V,D.value instanceof c)continue;for(var ne=D;ne!==n.tail&&(V<me||typeof ne.value=="string");ne=ne.next)re++,V+=ne.value.length;re--,G=r.slice(H,V),N.index-=H}else if(N=E(ce,0,G,Y),!N)continue;var K=N.index,Z=N[0],X=G.slice(0,K),ae=G.slice(K+Z.length),Q=H+G.length;y&&Q>y.reach&&(y.reach=Q);var ie=D.prev;X&&(ie=k(n,ie,X),H+=X.length),C(n,ie,re);var ve=new c(R,U?a.tokenize(Z,U):Z,ee,Z);if(D=k(n,ie,ve),ae&&k(n,D,ae),re>1){var de={cause:R+","+j,reach:Q};p(r,n,o,D.prev,H,de),y&&de.reach>y.reach&&(y.reach=de.reach)}}}}}}function f(){var r={value:null,prev:null,next:null},n={value:null,prev:r,next:null};r.next=n,this.head=r,this.tail=n,this.length=0}function k(r,n,o){var s=n.next,u={value:o,prev:n,next:s};return n.next=u,s.prev=u,r.length++,u}function C(r,n,o){for(var s=n.next,u=0;u<o&&s!==r.tail;u++)s=s.next;n.next=s,s.prev=n,r.length-=u}function P(r){for(var n=[],o=r.head.next;o!==r.tail;)n.push(o.value),o=o.next;return n}if(!m.document)return m.addEventListener&&(a.disableWorkerMessageHandler||m.addEventListener("message",function(r){var n=JSON.parse(r.data),o=n.language,s=n.code,u=n.immediateClose;m.postMessage(a.highlight(s,a.languages[o],o)),u&&m.close()},!1)),a;var S=a.util.currentScript();S&&(a.filename=S.src,S.hasAttribute("data-manual")&&(a.manual=!0));function _(){a.manual||a.highlightAll()}if(!a.manual){var A=document.readyState;A==="loading"||A==="interactive"&&S&&S.defer?document.addEventListener("DOMContentLoaded",_):window.requestAnimationFrame?window.requestAnimationFrame(_):window.setTimeout(_,16)}return a})(g);l.exports&&(l.exports=t),typeof We<"u"&&(We.Prism=t),t.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},t.languages.markup.tag.inside["attr-value"].inside.entity=t.languages.markup.entity,t.languages.markup.doctype.inside["internal-subset"].inside=t.languages.markup,t.hooks.add("wrap",function(m){m.type==="entity"&&(m.attributes.title=m.content.replace(/&amp;/,"&"))}),Object.defineProperty(t.languages.markup.tag,"addInlined",{value:function(v,x){var h={};h["language-"+x]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:t.languages[x]},h.cdata=/^<!\[CDATA\[|\]\]>$/i;var a={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:h}};a["language-"+x]={pattern:/[\s\S]+/,inside:t.languages[x]};var c={};c[v]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return v}),"i"),lookbehind:!0,greedy:!0,inside:a},t.languages.insertBefore("markup","cdata",c)}}),Object.defineProperty(t.languages.markup.tag,"addAttribute",{value:function(m,v){t.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+m+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[v,"language-"+v],inside:t.languages[v]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),t.languages.html=t.languages.markup,t.languages.mathml=t.languages.markup,t.languages.svg=t.languages.markup,t.languages.xml=t.languages.extend("markup",{}),t.languages.ssml=t.languages.xml,t.languages.atom=t.languages.xml,t.languages.rss=t.languages.xml,(function(m){var v=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;m.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+v.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+v.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+v.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+v.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:v,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},m.languages.css.atrule.inside.rest=m.languages.css;var x=m.languages.markup;x&&(x.tag.addInlined("style","css"),x.tag.addAttribute("style","css"))})(t),t.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},t.languages.javascript=t.languages.extend("clike",{"class-name":[t.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),t.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,t.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:t.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:t.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:t.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:t.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:t.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),t.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:t.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),t.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),t.languages.markup&&(t.languages.markup.tag.addInlined("script","javascript"),t.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),t.languages.js=t.languages.javascript,(function(){if(typeof t>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var m="Loading…",v=function(S,_){return"✖ Error "+S+" while fetching file: "+_},x="✖ Error: File does not exist or is empty",h={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},a="data-src-status",c="loading",E="loaded",p="failed",f="pre[data-src]:not(["+a+'="'+E+'"]):not(['+a+'="'+c+'"])';function k(S,_,A){var r=new XMLHttpRequest;r.open("GET",S,!0),r.onreadystatechange=function(){r.readyState==4&&(r.status<400&&r.responseText?_(r.responseText):r.status>=400?A(v(r.status,r.statusText)):A(x))},r.send(null)}function C(S){var _=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(S||"");if(_){var A=Number(_[1]),r=_[2],n=_[3];return r?n?[A,Number(n)]:[A,void 0]:[A,A]}}t.hooks.add("before-highlightall",function(S){S.selector+=", "+f}),t.hooks.add("before-sanity-check",function(S){var _=S.element;if(_.matches(f)){S.code="",_.setAttribute(a,c);var A=_.appendChild(document.createElement("CODE"));A.textContent=m;var r=_.getAttribute("data-src"),n=S.language;if(n==="none"){var o=(/\.(\w+)$/.exec(r)||[,"none"])[1];n=h[o]||o}t.util.setLanguage(A,n),t.util.setLanguage(_,n);var s=t.plugins.autoloader;s&&s.loadLanguages(n),k(r,function(u){_.setAttribute(a,E);var y=C(_.getAttribute("data-range"));if(y){var R=u.split(/\r\n?|\n/g),b=y[0],j=y[1]==null?R.length:y[1];b<0&&(b+=R.length),b=Math.max(0,Math.min(b-1,R.length)),j<0&&(j+=R.length),j=Math.max(0,Math.min(j,R.length)),u=R.slice(b,j).join(`
38
+ `),_.hasAttribute("data-start")||_.setAttribute("data-start",String(b+1))}A.textContent=u,t.highlightElement(A)},function(u){_.setAttribute(a,p),A.textContent=u})}}),t.plugins.fileHighlight={highlight:function(_){for(var A=(_||document).querySelectorAll(f),r=0,n;n=A[r++];)t.highlightElement(n)}};var P=!1;t.fileHighlight=function(){P||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),P=!0),t.plugins.fileHighlight.highlight.apply(this,arguments)}})()})(Se)),Se.exports}var kr=Er();const Ar=br(kr);(function(l){var g=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function t(p){return p=p.replace(/<inner>/g,function(){return g}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+p+")")}var m=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,v=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return m}),x=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;l.languages.markdown=l.languages.extend("markup",{}),l.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:l.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+v+x+"(?:"+v+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+v+x+")(?:"+v+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(m),inside:l.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+v+")"+x+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+v+"$"),inside:{"table-header":{pattern:RegExp(m),alias:"important",inside:l.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:t(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:t(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:t(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:t(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(p){["url","bold","italic","strike","code-snippet"].forEach(function(f){p!==f&&(l.languages.markdown[p].inside.content.inside[f]=l.languages.markdown[f])})}),l.hooks.add("after-tokenize",function(p){if(p.language!=="markdown"&&p.language!=="md")return;function f(k){if(!(!k||typeof k=="string"))for(var C=0,P=k.length;C<P;C++){var S=k[C];if(S.type!=="code"){f(S.content);continue}var _=S.content[1],A=S.content[3];if(_&&A&&_.type==="code-language"&&A.type==="code-block"&&typeof _.content=="string"){var r=_.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp");r=(/[a-z][\w-]*/i.exec(r)||[""])[0].toLowerCase();var n="language-"+r;A.alias?typeof A.alias=="string"?A.alias=[A.alias,n]:A.alias.push(n):A.alias=[n]}}}f(p.tokens)}),l.hooks.add("wrap",function(p){if(p.type==="code-block"){for(var f="",k=0,C=p.classes.length;k<C;k++){var P=p.classes[k],S=/language-(.+)/.exec(P);if(S){f=S[1];break}}var _=l.languages[f];if(_)p.content=l.highlight(E(p.content),_,f);else if(f&&f!=="none"&&l.plugins.autoloader){var A="md-"+new Date().valueOf()+"-"+Math.floor(Math.random()*1e16);p.attributes.id=A,l.plugins.autoloader.loadLanguages(f,function(){var r=document.getElementById(A);r&&(r.innerHTML=l.highlight(r.textContent,l.languages[f],f))})}}});var h=RegExp(l.languages.markup.tag.pattern.source,"gi"),a={amp:"&",lt:"<",gt:">",quot:'"'},c=String.fromCodePoint||String.fromCharCode;function E(p){var f=p.replace(h,"");return f=f.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,function(k,C){if(C=C.toLowerCase(),C[0]==="#"){var P;return C[1]==="x"?P=parseInt(C.slice(2),16):P=Number(C.slice(1)),c(P)}else{var S=a[C];return S||k}}),f}l.languages.md=l.languages.markdown})(Prism);var Be={},Ve;function _r(){return Ve||(Ve=1,(function(){if(typeof Prism>"u"||typeof document>"u")return;var l="line-numbers",g=/\n(?!$)/g,t=Prism.plugins.lineNumbers={getLine:function(h,a){if(!(h.tagName!=="PRE"||!h.classList.contains(l))){var c=h.querySelector(".line-numbers-rows");if(c){var E=parseInt(h.getAttribute("data-start"),10)||1,p=E+(c.children.length-1);a<E&&(a=E),a>p&&(a=p);var f=a-E;return c.children[f]}}},resize:function(h){m([h])},assumeViewportIndependence:!0};function m(h){if(h=h.filter(function(c){var E=v(c),p=E["white-space"];return p==="pre-wrap"||p==="pre-line"}),h.length!=0){var a=h.map(function(c){var E=c.querySelector("code"),p=c.querySelector(".line-numbers-rows");if(!(!E||!p)){var f=c.querySelector(".line-numbers-sizer"),k=E.textContent.split(g);f||(f=document.createElement("span"),f.className="line-numbers-sizer",E.appendChild(f)),f.innerHTML="0",f.style.display="block";var C=f.getBoundingClientRect().height;return f.innerHTML="",{element:c,lines:k,lineHeights:[],oneLinerHeight:C,sizer:f}}}).filter(Boolean);a.forEach(function(c){var E=c.sizer,p=c.lines,f=c.lineHeights,k=c.oneLinerHeight;f[p.length-1]=void 0,p.forEach(function(C,P){if(C&&C.length>1){var S=E.appendChild(document.createElement("span"));S.style.display="block",S.textContent=C}else f[P]=k})}),a.forEach(function(c){for(var E=c.sizer,p=c.lineHeights,f=0,k=0;k<p.length;k++)p[k]===void 0&&(p[k]=E.children[f++].getBoundingClientRect().height)}),a.forEach(function(c){var E=c.sizer,p=c.element.querySelector(".line-numbers-rows");E.style.display="none",E.innerHTML="",c.lineHeights.forEach(function(f,k){p.children[k].style.height=f+"px"})})}}function v(h){return h?window.getComputedStyle?getComputedStyle(h):h.currentStyle||null:null}var x=void 0;window.addEventListener("resize",function(){t.assumeViewportIndependence&&x===window.innerWidth||(x=window.innerWidth,m(Array.prototype.slice.call(document.querySelectorAll("pre."+l))))}),Prism.hooks.add("complete",function(h){if(h.code){var a=h.element,c=a.parentNode;if(!(!c||!/pre/i.test(c.nodeName))&&!a.querySelector(".line-numbers-rows")&&Prism.util.isActive(a,l)){a.classList.remove(l),c.classList.add(l);var E=h.code.match(g),p=E?E.length+1:1,f,k=new Array(p+1).join("<span></span>");f=document.createElement("span"),f.setAttribute("aria-hidden","true"),f.className="line-numbers-rows",f.innerHTML=k,c.hasAttribute("data-start")&&(c.style.counterReset="linenumber "+(parseInt(c.getAttribute("data-start"),10)-1)),h.element.appendChild(f),m([c]),Prism.hooks.run("line-numbers",h)}}}),Prism.hooks.add("line-numbers",function(h){h.plugins=h.plugins||{},h.plugins.lineNumbers=!0})})()),Be}_r();function Ge(l){return l.useTabs?" ":l.hasPadding?" ":""}class Sr{padding;constructor(g){this.padding=Ge(g)}formatCell(g,t,m){const v=m;switch(t){case"right":return`${this.padding}${g.padStart(v)}${this.padding}`;case"center":{const x=v-g.length,h=Math.floor(x/2),a=x-h;return`${this.padding}${" ".repeat(h)}${g}${" ".repeat(a)}${this.padding}`}default:return`${this.padding}${g.padEnd(v)}${this.padding}`}}}class Fr{static indicators={left:g=>`:${"-".repeat(g-1)}`,right:g=>`${"-".repeat(g-1)}:`,center:g=>`:${"-".repeat(g-2)}:`,none:g=>"-".repeat(g)};static formatIndicator(g,t){return this.indicators[g](t)}}class Rr{config;cellFormatter;adjustedAlignments;constructor(g){this.config=g,this.cellFormatter=new Sr(g),this.adjustedAlignments=this.getAdjustedAlignments()}getAdjustedAlignments(){return this.config.columnAlignments.length<this.config.columnCount?[...Array.from(this.config.columnAlignments),...Array(this.config.columnCount-this.config.columnAlignments.length).fill("none")]:Array.from(this.config.columnAlignments)}formatRow(g){return`|${Array.from({length:this.config.columnCount},(m,v)=>{let x=g[v]??"";this.config.replaceNewlines&&(x=x.replace(/\n/g,"<br>"));const h=this.adjustedAlignments[v],a=this.config.columnWidths?this.config.columnWidths[v]:x.length;return this.cellFormatter.formatCell(x,h,a)}).join("|")}|`}formatAlignmentRow(){const g=Ge(this.config);return`|${Array.from({length:this.config.columnCount},(m,v)=>{const x=this.adjustedAlignments[v],h=this.config.columnWidths?this.config.columnWidths[v]:3,a=Fr.formatIndicator(x,h);return`${g}${a}${g}`}).join("|")}|`}}function Cr(l,g){const t=new Array(g).fill(3);return l.forEach(m=>{for(let v=0;v<g;v++){const x=m[v]??"";t[v]=Math.max(t[v],x.length)}}),t}function Tr(l){const g=l.inputDataHeader.length,t=l.inputDataBody.map(m=>m.length);return Math.max(g,...t)}function $r(l,g,t){return t?Cr([l.inputDataHeader,...l.inputDataBody],g):void 0}function Or(l,g,t=!0,m=!1,v=!1,x=!0){const h=Tr(l),a=$r(l,h,t),c={columnCount:h,columnAlignments:g,columnWidths:a,useTabs:m,replaceNewlines:v,hasPadding:x},E=new Rr(c),p=E.formatRow(l.inputDataHeader),f=E.formatAlignmentRow(),k=l.inputDataBody.map(C=>E.formatRow(C)).join(`
39
+ `);return`${p}
40
+ ${f}
41
+ ${k}`.trimEnd()}function jr(l){let g="",t=l;for(;t>=0;)g=String.fromCharCode(t%26+65)+g,t=Math.floor(t/26)-1;return g}function Pr(l){return Array.from({length:l},(g,t)=>jr(t))}class ue extends Error{constructor(g,t){super(g,t),this.name="MarkdownTableError",Object.setPrototypeOf(this,ue.prototype)}}function Ir(l){if(l===null||!Array.isArray(l))throw new ue("The 'data' prop must be a two-dimensional array.");if(l.length===0)throw new ue("The 'data' array must contain at least one row.")}const Mr=`
42
+ code[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}
43
+ `,Dr=`
44
+ code[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}
45
+ `;function zr(l,g){return g?{inputDataHeader:l[0],inputDataBody:l.slice(1)}:{inputDataHeader:Pr(l[0].length),inputDataBody:l}}function Lr(l,g,t,m,v,x,h){try{Ir(l);const{inputDataHeader:a,inputDataBody:c}=zr(l,g);return Or({inputDataHeader:a,inputDataBody:c},t,m,v,x,h)}catch(a){if(a instanceof ue)return`Error: ${a.message}`;throw a}}function Nr({inputData:l=null,hasHeader:g=!0,columnAlignments:t=[],isCompact:m=!1,hasTabs:v=!1,hasPadding:x=!0,convertLineBreaks:h=!1,className:a,onGenerate:c,theme:E="light",preStyle:p,topPadding:f=16,minWidth:k,showLineNumbers:C=!0}){const P=J.useRef(null),S=J.useId(),_=J.useDeferredValue(l),[,A]=J.useTransition(),r=J.useMemo(()=>Lr(_,g,t,!m,v,h,x),[_,g,t,m,v,h,x]);return J.useEffect(()=>{c&&c(r)},[r,c]),J.useEffect(()=>{const n=P.current?.querySelector("code");n&&r&&A(()=>{requestAnimationFrame(()=>{if(Ar.highlightElement(n),!C&&P.current){const o=P.current.querySelector(".line-numbers-rows");o&&o.remove()}})})},[r,A,C]),le.jsxs(le.Fragment,{children:[le.jsxs("style",{children:[E==="light"?Mr:Dr,`
46
+ pre {
47
+ position: relative;
48
+ padding-top: ${f}px !important;
49
+ }
50
+ pre::before {
51
+ position: absolute;
52
+ top: 8px;
53
+ left: 12px;
54
+ color: ${E==="light"?"#666":"#999"};
55
+ letter-spacing: 2px;
56
+ font-size: 12px;
57
+ }
58
+ /* Hide line numbers when showLineNumbers is false */
59
+ pre:not(.line-numbers) .line-numbers-rows {
60
+ display: none !important;
61
+ }
62
+ /* Remove left padding when line numbers are hidden */
63
+ pre:not(.line-numbers) {
64
+ padding-left: 1em !important;
65
+ }
66
+ pre:not(.line-numbers) > code {
67
+ padding-left: 0 !important;
68
+ }
69
+ `]}),le.jsx("div",{id:S,style:{position:"relative",isolation:"isolate",display:"inline-block"},children:le.jsx("pre",{ref:P,className:`${a} language-markdown ${C?"line-numbers":""} ${E==="dark"?"dark-theme":""}`,style:{width:"fit-content",minWidth:k?`${k}px`:"min-content",margin:0,...p},children:le.jsx("code",{className:"language-markdown",role:"code",children:r})})})]})}exports.MarkdownTable=Nr;exports.MarkdownTableError=ue;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview Main MarkdownTable component that generates and displays markdown
3
+ * table syntax with Prism.js syntax highlighting.
4
+ */
5
+ import 'prismjs/components/prism-markdown';
6
+ import 'prismjs/plugins/line-numbers/prism-line-numbers';
7
+ import type { MarkdownTableProps } from './types';
8
+ export type { Alignment, MarkdownTableProps, InputData, TableConfig } from './types';
9
+ export { MarkdownTableError } from './validation';
10
+ export declare function MarkdownTable({ inputData, hasHeader, columnAlignments, isCompact, hasTabs, hasPadding, convertLineBreaks, className, onGenerate, theme, preStyle, topPadding, minWidth, showLineNumbers, }: MarkdownTableProps): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,mCAAmC,CAAC;AAC3C,OAAO,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAa,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAI7D,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AA6ClD,wBAAgB,aAAa,CAAC,EAC5B,SAAgB,EAChB,SAAgB,EAChB,gBAAqB,EACrB,SAAiB,EACjB,OAAe,EACf,UAAiB,EACjB,iBAAyB,EACzB,SAAS,EACT,UAAU,EACV,KAAe,EACf,QAAQ,EACR,UAAe,EACf,QAAQ,EACR,eAAsB,GACvB,EAAE,kBAAkB,2CAwGpB"}