markdown-to-jsx 7.4.7 → 7.5.0

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.d.ts CHANGED
@@ -10,47 +10,48 @@ import * as React from 'react';
10
10
  * Analogous to `node.type`. Please note that the values here may change at any time,
11
11
  * so do not hard code against the value directly.
12
12
  */
13
- export declare const enum RuleType {
14
- blockQuote = "0",
15
- breakLine = "1",
16
- breakThematic = "2",
17
- codeBlock = "3",
18
- codeFenced = "4",
19
- codeInline = "5",
20
- footnote = "6",
21
- footnoteReference = "7",
22
- gfmTask = "8",
23
- heading = "9",
24
- headingSetext = "10",
13
+ export declare const RuleType: {
14
+ readonly blockQuote: "0";
15
+ readonly breakLine: "1";
16
+ readonly breakThematic: "2";
17
+ readonly codeBlock: "3";
18
+ readonly codeFenced: "4";
19
+ readonly codeInline: "5";
20
+ readonly footnote: "6";
21
+ readonly footnoteReference: "7";
22
+ readonly gfmTask: "8";
23
+ readonly heading: "9";
24
+ readonly headingSetext: "10";
25
25
  /** only available if not `disableHTMLParsing` */
26
- htmlBlock = "11",
27
- htmlComment = "12",
26
+ readonly htmlBlock: "11";
27
+ readonly htmlComment: "12";
28
28
  /** only available if not `disableHTMLParsing` */
29
- htmlSelfClosing = "13",
30
- image = "14",
31
- link = "15",
29
+ readonly htmlSelfClosing: "13";
30
+ readonly image: "14";
31
+ readonly link: "15";
32
32
  /** emits a `link` 'node', does not render directly */
33
- linkAngleBraceStyleDetector = "16",
33
+ readonly linkAngleBraceStyleDetector: "16";
34
34
  /** emits a `link` 'node', does not render directly */
35
- linkBareUrlDetector = "17",
35
+ readonly linkBareUrlDetector: "17";
36
36
  /** emits a `link` 'node', does not render directly */
37
- linkMailtoDetector = "18",
38
- newlineCoalescer = "19",
39
- orderedList = "20",
40
- paragraph = "21",
41
- ref = "22",
42
- refImage = "23",
43
- refLink = "24",
44
- table = "25",
45
- tableSeparator = "26",
46
- text = "27",
47
- textBolded = "28",
48
- textEmphasized = "29",
49
- textEscaped = "30",
50
- textMarked = "31",
51
- textStrikethroughed = "32",
52
- unorderedList = "33"
53
- }
37
+ readonly linkMailtoDetector: "18";
38
+ readonly newlineCoalescer: "19";
39
+ readonly orderedList: "20";
40
+ readonly paragraph: "21";
41
+ readonly ref: "22";
42
+ readonly refImage: "23";
43
+ readonly refLink: "24";
44
+ readonly table: "25";
45
+ readonly tableSeparator: "26";
46
+ readonly text: "27";
47
+ readonly textBolded: "28";
48
+ readonly textEmphasized: "29";
49
+ readonly textEscaped: "30";
50
+ readonly textMarked: "31";
51
+ readonly textStrikethroughed: "32";
52
+ readonly unorderedList: "33";
53
+ };
54
+ export type RuleType = (typeof RuleType)[keyof typeof RuleType];
54
55
  declare const enum Priority {
55
56
  /**
56
57
  * anything that must scan the tree before everything else
@@ -74,6 +75,7 @@ declare const enum Priority {
74
75
  MIN = 4
75
76
  }
76
77
  export declare function slugify(str: string): string;
78
+ export declare function sanitizer(url: string): string;
77
79
  export declare function compiler(markdown?: string, options?: MarkdownToJSX.Options): JSX.Element;
78
80
  /**
79
81
  * A simple HOC for easy React use. Feed the markdown content as a direct child
@@ -109,106 +111,106 @@ export declare namespace MarkdownToJSX {
109
111
  };
110
112
  export interface BlockQuoteNode {
111
113
  children: MarkdownToJSX.ParserResult[];
112
- type: RuleType.blockQuote;
114
+ type: typeof RuleType.blockQuote;
113
115
  }
114
116
  export interface BreakLineNode {
115
- type: RuleType.breakLine;
117
+ type: typeof RuleType.breakLine;
116
118
  }
117
119
  export interface BreakThematicNode {
118
- type: RuleType.breakThematic;
120
+ type: typeof RuleType.breakThematic;
119
121
  }
120
122
  export interface CodeBlockNode {
121
- type: RuleType.codeBlock;
123
+ type: typeof RuleType.codeBlock;
122
124
  attrs?: JSX.IntrinsicAttributes;
123
125
  lang?: string;
124
126
  text: string;
125
127
  }
126
128
  export interface CodeFencedNode {
127
- type: RuleType.codeFenced;
129
+ type: typeof RuleType.codeFenced;
128
130
  }
129
131
  export interface CodeInlineNode {
130
- type: RuleType.codeInline;
132
+ type: typeof RuleType.codeInline;
131
133
  text: string;
132
134
  }
133
135
  export interface FootnoteNode {
134
- type: RuleType.footnote;
136
+ type: typeof RuleType.footnote;
135
137
  }
136
138
  export interface FootnoteReferenceNode {
137
- type: RuleType.footnoteReference;
139
+ type: typeof RuleType.footnoteReference;
138
140
  target: string;
139
141
  text: string;
140
142
  }
141
143
  export interface GFMTaskNode {
142
- type: RuleType.gfmTask;
144
+ type: typeof RuleType.gfmTask;
143
145
  completed: boolean;
144
146
  }
145
147
  export interface HeadingNode {
146
- type: RuleType.heading;
148
+ type: typeof RuleType.heading;
147
149
  children: MarkdownToJSX.ParserResult[];
148
150
  id: string;
149
151
  level: 1 | 2 | 3 | 4 | 5 | 6;
150
152
  }
151
153
  export interface HeadingSetextNode {
152
- type: RuleType.headingSetext;
154
+ type: typeof RuleType.headingSetext;
153
155
  }
154
156
  export interface HTMLCommentNode {
155
- type: RuleType.htmlComment;
157
+ type: typeof RuleType.htmlComment;
156
158
  }
157
159
  export interface ImageNode {
158
- type: RuleType.image;
160
+ type: typeof RuleType.image;
159
161
  alt?: string;
160
162
  target: string;
161
163
  title?: string;
162
164
  }
163
165
  export interface LinkNode {
164
- type: RuleType.link;
166
+ type: typeof RuleType.link;
165
167
  children: MarkdownToJSX.ParserResult[];
166
168
  target: string;
167
169
  title?: string;
168
170
  }
169
171
  export interface LinkAngleBraceNode {
170
- type: RuleType.linkAngleBraceStyleDetector;
172
+ type: typeof RuleType.linkAngleBraceStyleDetector;
171
173
  }
172
174
  export interface LinkBareURLNode {
173
- type: RuleType.linkBareUrlDetector;
175
+ type: typeof RuleType.linkBareUrlDetector;
174
176
  }
175
177
  export interface LinkMailtoNode {
176
- type: RuleType.linkMailtoDetector;
178
+ type: typeof RuleType.linkMailtoDetector;
177
179
  }
178
180
  export interface OrderedListNode {
179
- type: RuleType.orderedList;
181
+ type: typeof RuleType.orderedList;
180
182
  items: MarkdownToJSX.ParserResult[][];
181
183
  ordered: true;
182
184
  start?: number;
183
185
  }
184
186
  export interface UnorderedListNode {
185
- type: RuleType.unorderedList;
187
+ type: typeof RuleType.unorderedList;
186
188
  items: MarkdownToJSX.ParserResult[][];
187
189
  ordered: false;
188
190
  }
189
191
  export interface NewlineNode {
190
- type: RuleType.newlineCoalescer;
192
+ type: typeof RuleType.newlineCoalescer;
191
193
  }
192
194
  export interface ParagraphNode {
193
- type: RuleType.paragraph;
195
+ type: typeof RuleType.paragraph;
194
196
  children: MarkdownToJSX.ParserResult[];
195
197
  }
196
198
  export interface ReferenceNode {
197
- type: RuleType.ref;
199
+ type: typeof RuleType.ref;
198
200
  }
199
201
  export interface ReferenceImageNode {
200
- type: RuleType.refImage;
202
+ type: typeof RuleType.refImage;
201
203
  alt?: string;
202
204
  ref: string;
203
205
  }
204
206
  export interface ReferenceLinkNode {
205
- type: RuleType.refLink;
207
+ type: typeof RuleType.refLink;
206
208
  children: MarkdownToJSX.ParserResult[];
207
209
  fallbackChildren: MarkdownToJSX.ParserResult[];
208
210
  ref: string;
209
211
  }
210
212
  export interface TableNode {
211
- type: RuleType.table;
213
+ type: typeof RuleType.table;
212
214
  /**
213
215
  * alignment for each table column
214
216
  */
@@ -217,33 +219,33 @@ export declare namespace MarkdownToJSX {
217
219
  header: MarkdownToJSX.ParserResult[][];
218
220
  }
219
221
  export interface TableSeparatorNode {
220
- type: RuleType.tableSeparator;
222
+ type: typeof RuleType.tableSeparator;
221
223
  }
222
224
  export interface TextNode {
223
- type: RuleType.text;
225
+ type: typeof RuleType.text;
224
226
  text: string;
225
227
  }
226
228
  export interface BoldTextNode {
227
- type: RuleType.textBolded;
229
+ type: typeof RuleType.textBolded;
228
230
  children: MarkdownToJSX.ParserResult[];
229
231
  }
230
232
  export interface ItalicTextNode {
231
- type: RuleType.textEmphasized;
233
+ type: typeof RuleType.textEmphasized;
232
234
  children: MarkdownToJSX.ParserResult[];
233
235
  }
234
236
  export interface EscapedTextNode {
235
- type: RuleType.textEscaped;
237
+ type: typeof RuleType.textEscaped;
236
238
  }
237
239
  export interface MarkedTextNode {
238
- type: RuleType.textMarked;
240
+ type: typeof RuleType.textMarked;
239
241
  children: MarkdownToJSX.ParserResult[];
240
242
  }
241
243
  export interface StrikethroughTextNode {
242
- type: RuleType.textStrikethroughed;
244
+ type: typeof RuleType.textStrikethroughed;
243
245
  children: MarkdownToJSX.ParserResult[];
244
246
  }
245
247
  export interface HTMLNode {
246
- type: RuleType.htmlBlock;
248
+ type: typeof RuleType.htmlBlock;
247
249
  attrs: JSX.IntrinsicAttributes;
248
250
  children?: ReturnType<MarkdownToJSX.NestedParser> | undefined;
249
251
  noInnerParse: Boolean;
@@ -251,7 +253,7 @@ export declare namespace MarkdownToJSX {
251
253
  text?: string | undefined;
252
254
  }
253
255
  export interface HTMLSelfClosingNode {
254
- type: RuleType.htmlSelfClosing;
256
+ type: typeof RuleType.htmlSelfClosing;
255
257
  attrs: JSX.IntrinsicAttributes;
256
258
  tag: string;
257
259
  }
@@ -270,8 +272,8 @@ export declare namespace MarkdownToJSX {
270
272
  render: RuleOutput, state?: MarkdownToJSX.State) => React.ReactChild;
271
273
  };
272
274
  export type Rules = {
273
- [K in ParserResult['type']]: K extends RuleType.table ? Rule<Extract<ParserResult, {
274
- type: K | RuleType.paragraph;
275
+ [K in ParserResult['type']]: K extends typeof RuleType.table ? Rule<Extract<ParserResult, {
276
+ type: K | typeof RuleType.paragraph;
275
277
  }>> : Rule<Extract<ParserResult, {
276
278
  type: K;
277
279
  }>>;
@@ -374,11 +376,15 @@ export declare namespace MarkdownToJSX {
374
376
  renderChildren: RuleOutput,
375
377
  /** contains `key` which should be supplied to the topmost JSX element */
376
378
  state: State) => React.ReactChild;
379
+ /**
380
+ * Override the built-in sanitizer function for URLs, etc if desired. The built-in version is available as a library export called `sanitizer`.
381
+ */
382
+ sanitizer: (value: string, tag: HTMLTags, attribute: string) => string | null;
377
383
  /**
378
384
  * Override normalization of non-URI-safe characters for use in generating
379
385
  * HTML IDs for anchor linking purposes.
380
386
  */
381
- slugify: (source: string) => string;
387
+ slugify: (input: string, defaultFn: (input: string) => string) => string;
382
388
  /**
383
389
  * Declare the type of the wrapper to be used when there are multiple
384
390
  * children to render. Set to `null` to get an array of children back
@@ -1,2 +1,2 @@
1
- import*as e from"react";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},n.apply(this,arguments)}const t=["children","options"];var r,i;!function(e){e.blockQuote="0",e.breakLine="1",e.breakThematic="2",e.codeBlock="3",e.codeFenced="4",e.codeInline="5",e.footnote="6",e.footnoteReference="7",e.gfmTask="8",e.heading="9",e.headingSetext="10",e.htmlBlock="11",e.htmlComment="12",e.htmlSelfClosing="13",e.image="14",e.link="15",e.linkAngleBraceStyleDetector="16",e.linkBareUrlDetector="17",e.linkMailtoDetector="18",e.newlineCoalescer="19",e.orderedList="20",e.paragraph="21",e.ref="22",e.refImage="23",e.refLink="24",e.table="25",e.tableSeparator="26",e.text="27",e.textBolded="28",e.textEmphasized="29",e.textEscaped="30",e.textMarked="31",e.textStrikethroughed="32",e.unorderedList="33"}(r||(r={})),function(e){e[e.MAX=0]="MAX",e[e.HIGH=1]="HIGH",e[e.MED=2]="MED",e[e.LOW=3]="LOW",e[e.MIN=4]="MIN"}(i||(i={}));const l=["allowFullScreen","allowTransparency","autoComplete","autoFocus","autoPlay","cellPadding","cellSpacing","charSet","className","classId","colSpan","contentEditable","contextMenu","crossOrigin","encType","formAction","formEncType","formMethod","formNoValidate","formTarget","frameBorder","hrefLang","inputMode","keyParams","keyType","marginHeight","marginWidth","maxLength","mediaGroup","minLength","noValidate","radioGroup","readOnly","rowSpan","spellCheck","srcDoc","srcLang","srcSet","tabIndex","useMap"].reduce((e,n)=>(e[n.toLowerCase()]=n,e),{for:"htmlFor"}),o={amp:"&",apos:"'",gt:">",lt:"<",nbsp:" ",quot:"“"},c=["style","script"],a=/([-A-Z0-9_:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|(?:\{((?:\\.|{[^}]*?}|[^}])*)\})))?/gi,s=/mailto:/i,d=/\n{2,}$/,u=/^(\s*>[\s\S]*?)(?=\n{2,})/,p=/^ *> ?/gm,f=/^ {2,}\n/,h=/^(?:( *[-*_])){3,} *(?:\n *)+\n/,m=/^\s*(`{3,}|~{3,}) *(\S+)?([^\n]*?)?\n([\s\S]+?)\s*\1 *(?:\n *)*\n?/,g=/^(?: {4}[^\n]+\n*)+(?:\n *)+\n?/,y=/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,k=/^(?:\n *)*\n/,x=/\r\n?/g,v=/^\[\^([^\]]+)](:(.*)((\n+ {4,}.*)|(\n(?!\[\^).+))*)/,b=/^\[\^([^\]]+)]/,$=/\f/g,E=/^---[ \t]*\n(.|\n)*\n---[ \t]*\n/,w=/^\s*?\[(x|\s)\]/,S=/^ *(#{1,6}) *([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,C=/^ *(#{1,6}) +([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,A=/^([^\n]+)\n *(=|-){3,} *(?:\n *)+\n/,O=/^ *(?!<[a-z][^ >/]* ?\/>)<([a-z][^ >/]*) ?((?:[^>]*[^/])?)>\n?(\s*(?:<\1[^>]*?>[\s\S]*?<\/\1>|(?!<\1\b)[\s\S])*?)<\/\1>(?!<\/\1>)\n*/i,T=/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});/gi,L=/^<!--[\s\S]*?(?:-->)/,R=/^(data|aria|x)-[a-z_][a-z\d_.-]*$/,z=/^ *<([a-z][a-z0-9:]*)(?:\s+((?:<.*?>|[^>])*))?\/?>(?!<\/\1>)(\s*\n)?/i,M=/^\{.*\}$/,I=/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,U=/^<([^ >]+@[^ >]+)>/,j=/^<([^ >]+:\/[^ >]+)>/,B=/-([a-z])?/gi,N=/^(.*\|.*)\n(?: *(\|? *[-:]+ *\|[-| :]*)\n((?:.*\|.*\n)*))?\n?/,H=/^\[([^\]]*)\]:\s+<?([^\s>]+)>?\s*("([^"]*)")?/,D=/^!\[([^\]]*)\] ?\[([^\]]*)\]/,P=/^\[([^\]]*)\] ?\[([^\]]*)\]/,_=/(\[|\])/g,F=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s)/,W=/\t/g,G=/(^ *\||\| *$)/g,Z=/^ *:-+: *$/,q=/^ *:-+ *$/,V=/^ *-+: *$/,X="((?:\\[.*?\\][([].*?[)\\]]|<.*?>(?:.*?<.*?>)?|`.*?`|~~.*?~~|==.*?==|.|\\n)*?)",Q=new RegExp(`^([*_])\\1${X}\\1\\1(?!\\1)`),J=new RegExp(`^([*_])${X}\\1(?!\\1|\\w)`),K=new RegExp(`^==${X}==`),Y=new RegExp(`^~~${X}~~`),ee=/^\\([^0-9A-Za-z\s])/,ne=/^[\s\S]+?(?=[^0-9A-Z\s\u00c0-\uffff&#;.()'"]|\d+\.|\n\n| {2,}\n|\w+:\S|$)/i,te=/^\n+/,re=/^([ \t]*)/,ie=/\\([^\\])/g,le=/ *\n+$/,oe=/(?:^|\n)( *)$/,ce="(?:\\d+\\.)",ae="(?:[*+-])";function se(e){return"( *)("+(1===e?ce:ae)+") +"}const de=se(1),ue=se(2);function pe(e){return new RegExp("^"+(1===e?de:ue))}const fe=pe(1),he=pe(2);function me(e){return new RegExp("^"+(1===e?de:ue)+"[^\\n]*(?:\\n(?!\\1"+(1===e?ce:ae)+" )[^\\n]*)*(\\n|$)","gm")}const ge=me(1),ye=me(2);function ke(e){const n=1===e?ce:ae;return new RegExp("^( *)("+n+") [\\s\\S]+?(?:\\n{2,}(?! )(?!\\1"+n+" (?!"+n+" ))\\n*|\\s*\\n*$)")}const xe=ke(1),ve=ke(2);function be(e,n){const t=1===n,r=t?xe:ve,i=t?ge:ye,l=t?fe:he;return{match(e,n,t){const i=oe.exec(t);return i&&(n.list||!n.inline&&!n.simple)?r.exec(e=i[1]+e):null},order:1,parse(e,n,r){const o=t?+e[2]:void 0,c=e[0].replace(d,"\n").match(i);let a=!1;return{items:c.map(function(e,t){const i=l.exec(e)[0].length,o=new RegExp("^ {1,"+i+"}","gm"),s=e.replace(o,"").replace(l,""),d=t===c.length-1,u=-1!==s.indexOf("\n\n")||d&&a;a=u;const p=r.inline,f=r.list;let h;r.list=!0,u?(r.inline=!1,h=s.replace(le,"\n\n")):(r.inline=!0,h=s.replace(le,""));const m=n(h,r);return r.inline=p,r.list=f,m}),ordered:t,start:o}},render:(n,t,r)=>e(n.ordered?"ol":"ul",{key:r.key,start:"20"===n.type?n.start:void 0},n.items.map(function(n,i){return e("li",{key:i},t(n,r))}))}}const $e=new RegExp("^\\[((?:\\[[^\\]]*\\]|[^\\[\\]]|\\](?=[^\\[]*\\]))*)\\]\\(\\s*<?((?:\\([^)]*\\)|[^\\s\\\\]|\\\\.)*?)>?(?:\\s+['\"]([\\s\\S]*?)['\"])?\\s*\\)"),Ee=/^!\[(.*?)\]\( *((?:\([^)]*\)|[^() ])*) *"?([^)"]*)?"?\)/,we=[u,m,g,S,A,C,L,N,ge,xe,ye,ve],Se=[...we,/^[^\n]+(?: \n|\n{2,})/,O,z];function Ce(e){return e.replace(/[ÀÁÂÃÄÅàáâãä忯]/g,"a").replace(/[çÇ]/g,"c").replace(/[ðÐ]/g,"d").replace(/[ÈÉÊËéèêë]/g,"e").replace(/[ÏïÎîÍíÌì]/g,"i").replace(/[Ññ]/g,"n").replace(/[øØœŒÕõÔôÓóÒò]/g,"o").replace(/[ÜüÛûÚúÙù]/g,"u").replace(/[ŸÿÝý]/g,"y").replace(/[^a-z0-9- ]/gi,"").replace(/ /gi,"-").toLowerCase()}function Ae(e){return V.test(e)?"right":Z.test(e)?"center":q.test(e)?"left":null}function Oe(e,n,t,r){const i=t.inTable;t.inTable=!0;let l=e.trim().split(/( *(?:`[^`]*`|<.*?>.*?<\/.*?>(?!<\/.*?>)|\\\||\|) *)/).reduce((e,i)=>("|"===i.trim()?e.push(r?{type:"26"}:{type:"27",text:i}):""!==i&&e.push.apply(e,n(i,t)),e),[]);t.inTable=i;let o=[[]];return l.forEach(function(e,n){"26"===e.type?0!==n&&n!==l.length-1&&o.push([]):("27"!==e.type||null!=l[n+1]&&"26"!==l[n+1].type||(e.text=e.text.trimEnd()),o[o.length-1].push(e))}),o}function Te(e,n,t){t.inline=!0;const r=e[2]?e[2].replace(G,"").split("|").map(Ae):[],i=e[3]?function(e,n,t){return e.trim().split("\n").map(function(e){return Oe(e,n,t,!0)})}(e[3],n,t):[],l=Oe(e[1],n,t,!!i.length);return t.inline=!1,i.length?{align:r,cells:i,header:l,type:"25"}:{children:l,type:"21"}}function Le(e,n){return null==e.align[n]?{}:{textAlign:e.align[n]}}function Re(e){return function(n,t){return t.inline?e.exec(n):null}}function ze(e){return function(n,t){return t.inline||t.simple?e.exec(n):null}}function Me(e){return function(n,t){return t.inline||t.simple?null:e.exec(n)}}function Ie(e){return function(n){return e.exec(n)}}function Ue(e,n,t){if(n.inline||n.simple)return null;if(t&&!t.endsWith("\n"))return null;let r="";e.split("\n").every(e=>!we.some(n=>n.test(e))&&(r+=e+"\n",e.trim()));const i=r.trimEnd();return""==i?null:[r,i]}function je(e){try{if(decodeURIComponent(e).replace(/[^A-Za-z0-9/:]/g,"").match(/^\s*(javascript|vbscript|data(?!:image)):/i))return}catch(e){return null}return e}function Be(e){return e.replace(ie,"$1")}function Ne(e,n,t){const r=t.inline||!1,i=t.simple||!1;t.inline=!0,t.simple=!0;const l=e(n,t);return t.inline=r,t.simple=i,l}function He(e,n,t){const r=t.inline||!1,i=t.simple||!1;t.inline=!1,t.simple=!0;const l=e(n,t);return t.inline=r,t.simple=i,l}function De(e,n,t){const r=t.inline||!1;t.inline=!1;const i=e(n,t);return t.inline=r,i}const Pe=(e,n,t)=>({children:Ne(n,e[1],t)});function _e(){return{}}function Fe(){return null}function We(...e){return e.filter(Boolean).join(" ")}function Ge(e,n,t){let r=e;const i=n.split(".");for(;i.length&&(r=r[i[0]],void 0!==r);)i.shift();return r||t}function Ze(t="",r={}){r.overrides=r.overrides||{},r.slugify=r.slugify||Ce,r.namedCodesToUnicode=r.namedCodesToUnicode?n({},o,r.namedCodesToUnicode):o;const i=r.createElement||e.createElement;function d(e,t,...l){const o=Ge(r.overrides,`${e}.props`,{});return i(function(e,n){const t=Ge(n,e);return t?"function"==typeof t||"object"==typeof t&&"render"in t?t:Ge(n,`${e}.component`,e):e}(e,r.overrides),n({},t,o,{className:We(null==t?void 0:t.className,o.className)||void 0}),...l)}function G(n){n=n.replace(E,"");let t=!1;r.forceInline?t=!0:r.forceBlock||(t=!1===F.test(n));const i=le(ie(t?n:`${n.trimEnd().replace(te,"")}\n\n`,{inline:t}));for(;"string"==typeof i[i.length-1]&&!i[i.length-1].trim();)i.pop();if(null===r.wrapper)return i;const l=r.wrapper||(t?"span":"div");let o;if(i.length>1||r.forceWrapper)o=i;else{if(1===i.length)return o=i[0],"string"==typeof o?d("span",{key:"outer"},o):o;o=null}return e.createElement(l,{key:"outer"},o)}function Z(n){const t=n.match(a);return t?t.reduce(function(n,t,r){const i=t.indexOf("=");if(-1!==i){const o=function(e){return-1!==e.indexOf("-")&&null===e.match(R)&&(e=e.replace(B,function(e,n){return n.toUpperCase()})),e}(t.slice(0,i)).trim(),c=function(e){const n=e[0];return('"'===n||"'"===n)&&e.length>=2&&e[e.length-1]===n?e.slice(1,-1):e}(t.slice(i+1).trim()),a=l[o]||o,s=n[a]=function(e,n){return"style"===e?n.split(/;\s?/).reduce(function(e,n){const t=n.slice(0,n.indexOf(":"));return e[t.trim().replace(/(-[a-z])/g,e=>e[1].toUpperCase())]=n.slice(t.length+1).trim(),e},{}):"href"===e||"src"===e?je(n):(n.match(M)&&(n=n.slice(1,n.length-1)),"true"===n||"false"!==n&&n)}(o,c);"string"==typeof s&&(O.test(s)||z.test(s))&&(n[a]=e.cloneElement(G(s.trim()),{key:r}))}else"style"!==t&&(n[l[t]||t]=!0);return n},{}):null}const q=[],V={},X={0:{match:Me(u),order:1,parse:(e,n,t)=>({children:n(e[0].replace(p,""),t)}),render:(e,n,t)=>d("blockquote",{key:t.key},n(e.children,t))},1:{match:Ie(f),order:1,parse:_e,render:(e,n,t)=>d("br",{key:t.key})},2:{match:Me(h),order:1,parse:_e,render:(e,n,t)=>d("hr",{key:t.key})},3:{match:Me(g),order:0,parse:e=>({lang:void 0,text:e[0].replace(/^ {4}/gm,"").replace(/\n+$/,"")}),render:(e,t,r)=>d("pre",{key:r.key},d("code",n({},e.attrs,{className:e.lang?`lang-${e.lang}`:""}),e.text))},4:{match:Me(m),order:0,parse:e=>({attrs:Z(e[3]||""),lang:e[2]||void 0,text:e[4],type:"3"})},5:{match:ze(y),order:3,parse:e=>({text:e[2]}),render:(e,n,t)=>d("code",{key:t.key},e.text)},6:{match:Me(v),order:0,parse:e=>(q.push({footnote:e[2],identifier:e[1]}),{}),render:Fe},7:{match:Re(b),order:1,parse:e=>({target:`#${r.slugify(e[1])}`,text:e[1]}),render:(e,n,t)=>d("a",{key:t.key,href:je(e.target)},d("sup",{key:t.key},e.text))},8:{match:Re(w),order:1,parse:e=>({completed:"x"===e[1].toLowerCase()}),render:(e,n,t)=>d("input",{checked:e.completed,key:t.key,readOnly:!0,type:"checkbox"})},9:{match:Me(r.enforceAtxHeadings?C:S),order:1,parse:(e,n,t)=>({children:Ne(n,e[2],t),id:r.slugify(e[2]),level:e[1].length}),render:(e,n,t)=>d(`h${e.level}`,{id:e.id,key:t.key},n(e.children,t))},10:{match:Me(A),order:0,parse:(e,n,t)=>({children:Ne(n,e[1],t),level:"="===e[2]?1:2,type:"9"})},11:{match:Ie(O),order:1,parse(e,n,t){const[,r]=e[3].match(re),i=new RegExp(`^${r}`,"gm"),l=e[3].replace(i,""),o=(a=l,Se.some(e=>e.test(a))?De:Ne);var a;const s=e[1].toLowerCase(),d=-1!==c.indexOf(s),u={attrs:Z(e[2]),noInnerParse:d,tag:(d?s:e[1]).trim()};return t.inAnchor=t.inAnchor||"a"===s,d?u.text=e[3]:u.children=o(n,l,t),t.inAnchor=!1,u},render:(e,t,r)=>d(e.tag,n({key:r.key},e.attrs),e.text||t(e.children,r))},13:{match:Ie(z),order:1,parse:e=>({attrs:Z(e[2]||""),tag:e[1].trim()}),render:(e,t,r)=>d(e.tag,n({},e.attrs,{key:r.key}))},12:{match:Ie(L),order:1,parse:()=>({}),render:Fe},14:{match:ze(Ee),order:1,parse:e=>({alt:e[1],target:Be(e[2]),title:e[3]}),render:(e,n,t)=>d("img",{key:t.key,alt:e.alt||void 0,title:e.title||void 0,src:je(e.target)})},15:{match:Re($e),order:3,parse:(e,n,t)=>({children:He(n,e[1],t),target:Be(e[2]),title:e[3]}),render:(e,n,t)=>d("a",{key:t.key,href:je(e.target),title:e.title},n(e.children,t))},16:{match:Re(j),order:0,parse:e=>({children:[{text:e[1],type:"27"}],target:e[1],type:"15"})},17:{match:(e,n)=>n.inAnchor?null:Re(I)(e,n),order:0,parse:e=>({children:[{text:e[1],type:"27"}],target:e[1],title:void 0,type:"15"})},18:{match:Re(U),order:0,parse(e){let n=e[1],t=e[1];return s.test(t)||(t="mailto:"+t),{children:[{text:n.replace("mailto:",""),type:"27"}],target:t,type:"15"}}},20:be(d,1),33:be(d,2),19:{match:Me(k),order:3,parse:_e,render:()=>"\n"},21:{match:Ue,order:3,parse:Pe,render:(e,n,t)=>d("p",{key:t.key},n(e.children,t))},22:{match:Re(H),order:0,parse:e=>(V[e[1]]={target:e[2],title:e[4]},{}),render:Fe},23:{match:ze(D),order:0,parse:e=>({alt:e[1]||void 0,ref:e[2]}),render:(e,n,t)=>V[e.ref]?d("img",{key:t.key,alt:e.alt,src:je(V[e.ref].target),title:V[e.ref].title}):null},24:{match:Re(P),order:0,parse:(e,n,t)=>({children:n(e[1],t),fallbackChildren:n(e[0].replace(_,"\\$1"),t),ref:e[2]}),render:(e,n,t)=>V[e.ref]?d("a",{key:t.key,href:je(V[e.ref].target),title:V[e.ref].title},n(e.children,t)):d("span",{key:t.key},n(e.fallbackChildren,t))},25:{match:Me(N),order:1,parse:Te,render(e,n,t){const r=e;return d("table",{key:t.key},d("thead",null,d("tr",null,r.header.map(function(e,i){return d("th",{key:i,style:Le(r,i)},n(e,t))}))),d("tbody",null,r.cells.map(function(e,i){return d("tr",{key:i},e.map(function(e,i){return d("td",{key:i,style:Le(r,i)},n(e,t))}))})))}},27:{match:Ie(ne),order:4,parse:e=>({text:e[0].replace(T,(e,n)=>r.namedCodesToUnicode[n]?r.namedCodesToUnicode[n]:e)}),render:e=>e.text},28:{match:ze(Q),order:2,parse:(e,n,t)=>({children:n(e[2],t)}),render:(e,n,t)=>d("strong",{key:t.key},n(e.children,t))},29:{match:ze(J),order:3,parse:(e,n,t)=>({children:n(e[2],t)}),render:(e,n,t)=>d("em",{key:t.key},n(e.children,t))},30:{match:ze(ee),order:1,parse:e=>({text:e[1],type:"27"})},31:{match:ze(K),order:3,parse:Pe,render:(e,n,t)=>d("mark",{key:t.key},n(e.children,t))},32:{match:ze(Y),order:3,parse:Pe,render:(e,n,t)=>d("del",{key:t.key},n(e.children,t))}};!0===r.disableParsingRawHTML&&(delete X[11],delete X[13]);const ie=function(e){let n=Object.keys(e);function t(r,i){let l=[],o="";for(;r;){let c=0;for(;c<n.length;){const a=n[c],s=e[a],d=s.match(r,i,o);if(d){const e=d[0];r=r.substring(e.length);const n=s.parse(d,t,i);null==n.type&&(n.type=a),l.push(n),o=e;break}c++}}return l}return n.sort(function(n,t){let r=e[n].order,i=e[t].order;return r!==i?r-i:n<t?-1:1}),function(e,n){return t(function(e){return e.replace(x,"\n").replace($,"").replace(W," ")}(e),n)}}(X),le=(oe=function(e,n){return function(t,r,i){const l=e[t.type].render;return n?n(()=>l(t,r,i),t,r,i):l(t,r,i)}}(X,r.renderRule),function e(n,t={}){if(Array.isArray(n)){const r=t.key,i=[];let l=!1;for(let r=0;r<n.length;r++){t.key=r;const o=e(n[r],t),c="string"==typeof o;c&&l?i[i.length-1]+=o:null!==o&&i.push(o),l=c}return t.key=r,i}return oe(n,e,t)});var oe;const ce=G(t);return q.length?d("div",null,ce,d("footer",{key:"footer"},q.map(function(e){return d("div",{id:r.slugify(e.identifier),key:e.identifier},e.identifier,le(ie(e.footnote,{inline:!0})))}))):ce}export default n=>{let{children:r="",options:i}=n,l=function(e,n){if(null==e)return{};var t,r,i={},l=Object.keys(e);for(r=0;r<l.length;r++)n.indexOf(t=l[r])>=0||(i[t]=e[t]);return i}(n,t);return e.cloneElement(Ze(r,i),l)};export{r as RuleType,Ze as compiler,Ce as slugify};
1
+ import*as e from"react";function t(){return t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},t.apply(this,arguments)}const n=["children","options"],r={blockQuote:"0",breakLine:"1",breakThematic:"2",codeBlock:"3",codeFenced:"4",codeInline:"5",footnote:"6",footnoteReference:"7",gfmTask:"8",heading:"9",headingSetext:"10",htmlBlock:"11",htmlComment:"12",htmlSelfClosing:"13",image:"14",link:"15",linkAngleBraceStyleDetector:"16",linkBareUrlDetector:"17",linkMailtoDetector:"18",newlineCoalescer:"19",orderedList:"20",paragraph:"21",ref:"22",refImage:"23",refLink:"24",table:"25",tableSeparator:"26",text:"27",textBolded:"28",textEmphasized:"29",textEscaped:"30",textMarked:"31",textStrikethroughed:"32",unorderedList:"33"};var i;!function(e){e[e.MAX=0]="MAX",e[e.HIGH=1]="HIGH",e[e.MED=2]="MED",e[e.LOW=3]="LOW",e[e.MIN=4]="MIN"}(i||(i={}));const l=["allowFullScreen","allowTransparency","autoComplete","autoFocus","autoPlay","cellPadding","cellSpacing","charSet","className","classId","colSpan","contentEditable","contextMenu","crossOrigin","encType","formAction","formEncType","formMethod","formNoValidate","formTarget","frameBorder","hrefLang","inputMode","keyParams","keyType","marginHeight","marginWidth","maxLength","mediaGroup","minLength","noValidate","radioGroup","readOnly","rowSpan","spellCheck","srcDoc","srcLang","srcSet","tabIndex","useMap"].reduce((e,t)=>(e[t.toLowerCase()]=t,e),{for:"htmlFor"}),a={amp:"&",apos:"'",gt:">",lt:"<",nbsp:" ",quot:"“"},o=["style","script"],c=/([-A-Z0-9_:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|(?:\{((?:\\.|{[^}]*?}|[^}])*)\})))?/gi,s=/mailto:/i,d=/\n{2,}$/,u=/^(\s*>[\s\S]*?)(?=\n{2,})/,p=/^ *> ?/gm,f=/^ {2,}\n/,h=/^(?:( *[-*_])){3,} *(?:\n *)+\n/,m=/^\s*(`{3,}|~{3,}) *(\S+)?([^\n]*?)?\n([\s\S]+?)\s*\1 *(?:\n *)*\n?/,g=/^(?: {4}[^\n]+\n*)+(?:\n *)+\n?/,y=/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,k=/^(?:\n *)*\n/,x=/\r\n?/g,b=/^\[\^([^\]]+)](:(.*)((\n+ {4,}.*)|(\n(?!\[\^).+))*)/,v=/^\[\^([^\]]+)]/,S=/\f/g,E=/^---[ \t]*\n(.|\n)*\n---[ \t]*\n/,$=/^\s*?\[(x|\s)\]/,w=/^ *(#{1,6}) *([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,C=/^ *(#{1,6}) +([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,z=/^([^\n]+)\n *(=|-){3,} *(?:\n *)+\n/,L=/^ *(?!<[a-z][^ >/]* ?\/>)<([a-z][^ >/]*) ?((?:[^>]*[^/])?)>\n?(\s*(?:<\1[^>]*?>[\s\S]*?<\/\1>|(?!<\1\b)[\s\S])*?)<\/\1>(?!<\/\1>)\n*/i,A=/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});/gi,T=/^<!--[\s\S]*?(?:-->)/,O=/^(data|aria|x)-[a-z_][a-z\d_.-]*$/,B=/^ *<([a-z][a-z0-9:]*)(?:\s+((?:<.*?>|[^>])*))?\/?>(?!<\/\1>)(\s*\n)?/i,M=/^\{.*\}$/,R=/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,I=/^<([^ >]+@[^ >]+)>/,U=/^<([^ >]+:\/[^ >]+)>/,D=/-([a-z])?/gi,j=/^(.*\|.*)\n(?: *(\|? *[-:]+ *\|[-| :]*)\n((?:.*\|.*\n)*))?\n?/,N=/^\[([^\]]*)\]:\s+<?([^\s>]+)>?\s*("([^"]*)")?/,H=/^!\[([^\]]*)\] ?\[([^\]]*)\]/,F=/^\[([^\]]*)\] ?\[([^\]]*)\]/,P=/(\[|\])/g,_=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s)/,W=/\t/g,G=/(^ *\||\| *$)/g,Z=/^ *:-+: *$/,q=/^ *:-+ *$/,Q=/^ *-+: *$/,V="((?:\\[.*?\\][([].*?[)\\]]|<.*?>(?:.*?<.*?>)?|`.*?`|~~.*?~~|==.*?==|.|\\n)*?)",X=new RegExp(`^([*_])\\1${V}\\1\\1(?!\\1)`),J=new RegExp(`^([*_])${V}\\1(?!\\1|\\w)`),K=new RegExp(`^==${V}==`),Y=new RegExp(`^~~${V}~~`),ee=/^\\([^0-9A-Za-z\s])/,te=/^[\s\S]+?(?=[^0-9A-Z\s\u00c0-\uffff&#;.()'"]|\d+\.|\n\n| {2,}\n|\w+:\S|$)/i,ne=/^\n+/,re=/^([ \t]*)/,ie=/\\([^\\])/g,le=/ *\n+$/,ae=/(?:^|\n)( *)$/,oe="(?:\\d+\\.)",ce="(?:[*+-])";function se(e){return"( *)("+(1===e?oe:ce)+") +"}const de=se(1),ue=se(2);function pe(e){return new RegExp("^"+(1===e?de:ue))}const fe=pe(1),he=pe(2);function me(e){return new RegExp("^"+(1===e?de:ue)+"[^\\n]*(?:\\n(?!\\1"+(1===e?oe:ce)+" )[^\\n]*)*(\\n|$)","gm")}const ge=me(1),ye=me(2);function ke(e){const t=1===e?oe:ce;return new RegExp("^( *)("+t+") [\\s\\S]+?(?:\\n{2,}(?! )(?!\\1"+t+" (?!"+t+" ))\\n*|\\s*\\n*$)")}const xe=ke(1),be=ke(2);function ve(e,t){const n=1===t,i=n?xe:be,l=n?ge:ye,a=n?fe:he;return{match(e,t,n){const r=ae.exec(n);return r&&(t.list||!t.inline&&!t.simple)?i.exec(e=r[1]+e):null},order:1,parse(e,t,r){const i=n?+e[2]:void 0,o=e[0].replace(d,"\n").match(l);let c=!1;return{items:o.map(function(e,n){const i=a.exec(e)[0].length,l=new RegExp("^ {1,"+i+"}","gm"),s=e.replace(l,"").replace(a,""),d=n===o.length-1,u=-1!==s.indexOf("\n\n")||d&&c;c=u;const p=r.inline,f=r.list;let h;r.list=!0,u?(r.inline=!1,h=s.replace(le,"\n\n")):(r.inline=!0,h=s.replace(le,""));const m=t(h,r);return r.inline=p,r.list=f,m}),ordered:n,start:i}},render:(t,n,i)=>e(t.ordered?"ol":"ul",{key:i.key,start:t.type===r.orderedList?t.start:void 0},t.items.map(function(t,r){return e("li",{key:r},n(t,i))}))}}const Se=new RegExp("^\\[((?:\\[[^\\]]*\\]|[^\\[\\]]|\\](?=[^\\[]*\\]))*)\\]\\(\\s*<?((?:\\([^)]*\\)|[^\\s\\\\]|\\\\.)*?)>?(?:\\s+['\"]([\\s\\S]*?)['\"])?\\s*\\)"),Ee=/^!\[(.*?)\]\( *((?:\([^)]*\)|[^() ])*) *"?([^)"]*)?"?\)/,$e=[u,m,g,w,z,C,T,j,ge,xe,ye,be],we=[...$e,/^[^\n]+(?: \n|\n{2,})/,L,B];function Ce(e){return e.replace(/[ÀÁÂÃÄÅàáâãä忯]/g,"a").replace(/[çÇ]/g,"c").replace(/[ðÐ]/g,"d").replace(/[ÈÉÊËéèêë]/g,"e").replace(/[ÏïÎîÍíÌì]/g,"i").replace(/[Ññ]/g,"n").replace(/[øØœŒÕõÔôÓóÒò]/g,"o").replace(/[ÜüÛûÚúÙù]/g,"u").replace(/[ŸÿÝý]/g,"y").replace(/[^a-z0-9- ]/gi,"").replace(/ /gi,"-").toLowerCase()}function ze(e){return Q.test(e)?"right":Z.test(e)?"center":q.test(e)?"left":null}function Le(e,t,n,i){const l=n.inTable;n.inTable=!0;let a=e.trim().split(/( *(?:`[^`]*`|<.*?>.*?<\/.*?>(?!<\/.*?>)|\\\||\|) *)/).reduce((e,l)=>("|"===l.trim()?e.push(i?{type:r.tableSeparator}:{type:r.text,text:l}):""!==l&&e.push.apply(e,t(l,n)),e),[]);n.inTable=l;let o=[[]];return a.forEach(function(e,t){e.type===r.tableSeparator?0!==t&&t!==a.length-1&&o.push([]):(e.type!==r.text||null!=a[t+1]&&a[t+1].type!==r.tableSeparator||(e.text=e.text.trimEnd()),o[o.length-1].push(e))}),o}function Ae(e,t,n){n.inline=!0;const i=e[2]?e[2].replace(G,"").split("|").map(ze):[],l=e[3]?function(e,t,n){return e.trim().split("\n").map(function(e){return Le(e,t,n,!0)})}(e[3],t,n):[],a=Le(e[1],t,n,!!l.length);return n.inline=!1,l.length?{align:i,cells:l,header:a,type:r.table}:{children:a,type:r.paragraph}}function Te(e,t){return null==e.align[t]?{}:{textAlign:e.align[t]}}function Oe(e){return function(t,n){return n.inline?e.exec(t):null}}function Be(e){return function(t,n){return n.inline||n.simple?e.exec(t):null}}function Me(e){return function(t,n){return n.inline||n.simple?null:e.exec(t)}}function Re(e){return function(t){return e.exec(t)}}function Ie(e,t,n){if(t.inline||t.simple)return null;if(n&&!n.endsWith("\n"))return null;let r="";e.split("\n").every(e=>!$e.some(t=>t.test(e))&&(r+=e+"\n",e.trim()));const i=r.trimEnd();return""==i?null:[r,i]}function Ue(e){try{if(decodeURIComponent(e).replace(/[^A-Za-z0-9/:]/g,"").match(/^\s*(javascript|vbscript|data(?!:image)):/i))return null}catch(e){return null}return e}function De(e){return e.replace(ie,"$1")}function je(e,t,n){const r=n.inline||!1,i=n.simple||!1;n.inline=!0,n.simple=!0;const l=e(t,n);return n.inline=r,n.simple=i,l}function Ne(e,t,n){const r=n.inline||!1,i=n.simple||!1;n.inline=!1,n.simple=!0;const l=e(t,n);return n.inline=r,n.simple=i,l}function He(e,t,n){const r=n.inline||!1;n.inline=!1;const i=e(t,n);return n.inline=r,i}const Fe=(e,t,n)=>({children:je(t,e[1],n)});function Pe(){return{}}function _e(){return null}function We(...e){return e.filter(Boolean).join(" ")}function Ge(e,t,n){let r=e;const i=t.split(".");for(;i.length&&(r=r[i[0]],void 0!==r);)i.shift();return r||n}function Ze(n="",i={}){function d(e,n,...r){const l=Ge(i.overrides,`${e}.props`,{});return i.createElement(function(e,t){const n=Ge(t,e);return n?"function"==typeof n||"object"==typeof n&&"render"in n?n:Ge(t,`${e}.component`,e):e}(e,i.overrides),t({},n,l,{className:We(null==n?void 0:n.className,l.className)||void 0}),...r)}function G(t){t=t.replace(E,"");let n=!1;i.forceInline?n=!0:i.forceBlock||(n=!1===_.test(t));const r=le(ie(n?t:`${t.trimEnd().replace(ne,"")}\n\n`,{inline:n}));for(;"string"==typeof r[r.length-1]&&!r[r.length-1].trim();)r.pop();if(null===i.wrapper)return r;const l=i.wrapper||(n?"span":"div");let a;if(r.length>1||i.forceWrapper)a=r;else{if(1===r.length)return a=r[0],"string"==typeof a?d("span",{key:"outer"},a):a;a=null}return e.createElement(l,{key:"outer"},a)}function Z(t,n){const r=n.match(c);return r?r.reduce(function(n,r,a){const o=r.indexOf("=");if(-1!==o){const c=function(e){return-1!==e.indexOf("-")&&null===e.match(O)&&(e=e.replace(D,function(e,t){return t.toUpperCase()})),e}(r.slice(0,o)).trim(),s=function(e){const t=e[0];return('"'===t||"'"===t)&&e.length>=2&&e[e.length-1]===t?e.slice(1,-1):e}(r.slice(o+1).trim()),d=l[c]||c,u=n[d]=function(e,t,n,r){return"style"===t?n.split(/;\s?/).reduce(function(e,t){const n=t.slice(0,t.indexOf(":"));return e[n.trim().replace(/(-[a-z])/g,e=>e[1].toUpperCase())]=t.slice(n.length+1).trim(),e},{}):"href"===t||"src"===t?r(n,e,t):(n.match(M)&&(n=n.slice(1,n.length-1)),"true"===n||"false"!==n&&n)}(t,c,s,i.sanitizer);"string"==typeof u&&(L.test(u)||B.test(u))&&(n[d]=e.cloneElement(G(u.trim()),{key:a}))}else"style"!==r&&(n[l[r]||r]=!0);return n},{}):null}i.overrides=i.overrides||{},i.sanitizer=i.sanitizer||Ue,i.slugify=i.slugify||Ce,i.namedCodesToUnicode=i.namedCodesToUnicode?t({},a,i.namedCodesToUnicode):a,i.createElement=i.createElement||e.createElement;const q=[],Q={},V={[r.blockQuote]:{match:Me(u),order:1,parse:(e,t,n)=>({children:t(e[0].replace(p,""),n)}),render:(e,t,n)=>d("blockquote",{key:n.key},t(e.children,n))},[r.breakLine]:{match:Re(f),order:1,parse:Pe,render:(e,t,n)=>d("br",{key:n.key})},[r.breakThematic]:{match:Me(h),order:1,parse:Pe,render:(e,t,n)=>d("hr",{key:n.key})},[r.codeBlock]:{match:Me(g),order:0,parse:e=>({lang:void 0,text:e[0].replace(/^ {4}/gm,"").replace(/\n+$/,"")}),render:(e,n,r)=>d("pre",{key:r.key},d("code",t({},e.attrs,{className:e.lang?`lang-${e.lang}`:""}),e.text))},[r.codeFenced]:{match:Me(m),order:0,parse:e=>({attrs:Z("code",e[3]||""),lang:e[2]||void 0,text:e[4],type:r.codeBlock})},[r.codeInline]:{match:Be(y),order:3,parse:e=>({text:e[2]}),render:(e,t,n)=>d("code",{key:n.key},e.text)},[r.footnote]:{match:Me(b),order:0,parse:e=>(q.push({footnote:e[2],identifier:e[1]}),{}),render:_e},[r.footnoteReference]:{match:Oe(v),order:1,parse:e=>({target:`#${i.slugify(e[1],Ce)}`,text:e[1]}),render:(e,t,n)=>d("a",{key:n.key,href:i.sanitizer(e.target,"a","href")},d("sup",{key:n.key},e.text))},[r.gfmTask]:{match:Oe($),order:1,parse:e=>({completed:"x"===e[1].toLowerCase()}),render:(e,t,n)=>d("input",{checked:e.completed,key:n.key,readOnly:!0,type:"checkbox"})},[r.heading]:{match:Me(i.enforceAtxHeadings?C:w),order:1,parse:(e,t,n)=>({children:je(t,e[2],n),id:i.slugify(e[2],Ce),level:e[1].length}),render:(e,t,n)=>d(`h${e.level}`,{id:e.id,key:n.key},t(e.children,n))},[r.headingSetext]:{match:Me(z),order:0,parse:(e,t,n)=>({children:je(t,e[1],n),level:"="===e[2]?1:2,type:r.heading})},[r.htmlBlock]:{match:Re(L),order:1,parse(e,t,n){const[,r]=e[3].match(re),i=new RegExp(`^${r}`,"gm"),l=e[3].replace(i,""),a=(c=l,we.some(e=>e.test(c))?He:je);var c;const s=e[1].toLowerCase(),d=-1!==o.indexOf(s),u=(d?s:e[1]).trim(),p={attrs:Z(u,e[2]),noInnerParse:d,tag:u};return n.inAnchor=n.inAnchor||"a"===s,d?p.text=e[3]:p.children=a(t,l,n),n.inAnchor=!1,p},render:(e,n,r)=>d(e.tag,t({key:r.key},e.attrs),e.text||n(e.children,r))},[r.htmlSelfClosing]:{match:Re(B),order:1,parse(e){const t=e[1].trim();return{attrs:Z(t,e[2]||""),tag:t}},render:(e,n,r)=>d(e.tag,t({},e.attrs,{key:r.key}))},[r.htmlComment]:{match:Re(T),order:1,parse:()=>({}),render:_e},[r.image]:{match:Be(Ee),order:1,parse:e=>({alt:e[1],target:De(e[2]),title:e[3]}),render:(e,t,n)=>d("img",{key:n.key,alt:e.alt||void 0,title:e.title||void 0,src:i.sanitizer(e.target,"img","src")})},[r.link]:{match:Oe(Se),order:3,parse:(e,t,n)=>({children:Ne(t,e[1],n),target:De(e[2]),title:e[3]}),render:(e,t,n)=>d("a",{key:n.key,href:i.sanitizer(e.target,"a","href"),title:e.title},t(e.children,n))},[r.linkAngleBraceStyleDetector]:{match:Oe(U),order:0,parse:e=>({children:[{text:e[1],type:r.text}],target:e[1],type:r.link})},[r.linkBareUrlDetector]:{match:(e,t)=>t.inAnchor?null:Oe(R)(e,t),order:0,parse:e=>({children:[{text:e[1],type:r.text}],target:e[1],title:void 0,type:r.link})},[r.linkMailtoDetector]:{match:Oe(I),order:0,parse(e){let t=e[1],n=e[1];return s.test(n)||(n="mailto:"+n),{children:[{text:t.replace("mailto:",""),type:r.text}],target:n,type:r.link}}},[r.orderedList]:ve(d,1),[r.unorderedList]:ve(d,2),[r.newlineCoalescer]:{match:Me(k),order:3,parse:Pe,render:()=>"\n"},[r.paragraph]:{match:Ie,order:3,parse:Fe,render:(e,t,n)=>d("p",{key:n.key},t(e.children,n))},[r.ref]:{match:Oe(N),order:0,parse:e=>(Q[e[1]]={target:e[2],title:e[4]},{}),render:_e},[r.refImage]:{match:Be(H),order:0,parse:e=>({alt:e[1]||void 0,ref:e[2]}),render:(e,t,n)=>Q[e.ref]?d("img",{key:n.key,alt:e.alt,src:i.sanitizer(Q[e.ref].target,"img","src"),title:Q[e.ref].title}):null},[r.refLink]:{match:Oe(F),order:0,parse:(e,t,n)=>({children:t(e[1],n),fallbackChildren:t(e[0].replace(P,"\\$1"),n),ref:e[2]}),render:(e,t,n)=>Q[e.ref]?d("a",{key:n.key,href:i.sanitizer(Q[e.ref].target,"a","href"),title:Q[e.ref].title},t(e.children,n)):d("span",{key:n.key},t(e.fallbackChildren,n))},[r.table]:{match:Me(j),order:1,parse:Ae,render(e,t,n){const r=e;return d("table",{key:n.key},d("thead",null,d("tr",null,r.header.map(function(e,i){return d("th",{key:i,style:Te(r,i)},t(e,n))}))),d("tbody",null,r.cells.map(function(e,i){return d("tr",{key:i},e.map(function(e,i){return d("td",{key:i,style:Te(r,i)},t(e,n))}))})))}},[r.text]:{match:Re(te),order:4,parse:e=>({text:e[0].replace(A,(e,t)=>i.namedCodesToUnicode[t]?i.namedCodesToUnicode[t]:e)}),render:e=>e.text},[r.textBolded]:{match:Be(X),order:2,parse:(e,t,n)=>({children:t(e[2],n)}),render:(e,t,n)=>d("strong",{key:n.key},t(e.children,n))},[r.textEmphasized]:{match:Be(J),order:3,parse:(e,t,n)=>({children:t(e[2],n)}),render:(e,t,n)=>d("em",{key:n.key},t(e.children,n))},[r.textEscaped]:{match:Be(ee),order:1,parse:e=>({text:e[1],type:r.text})},[r.textMarked]:{match:Be(K),order:3,parse:Fe,render:(e,t,n)=>d("mark",{key:n.key},t(e.children,n))},[r.textStrikethroughed]:{match:Be(Y),order:3,parse:Fe,render:(e,t,n)=>d("del",{key:n.key},t(e.children,n))}};!0===i.disableParsingRawHTML&&(delete V[r.htmlBlock],delete V[r.htmlSelfClosing]);const ie=function(e){let t=Object.keys(e);function n(r,i){let l=[],a="";for(;r;){let o=0;for(;o<t.length;){const c=t[o],s=e[c],d=s.match(r,i,a);if(d){const e=d[0];r=r.substring(e.length);const t=s.parse(d,n,i);null==t.type&&(t.type=c),l.push(t),a=e;break}o++}}return l}return t.sort(function(t,n){let r=e[t].order,i=e[n].order;return r!==i?r-i:t<n?-1:1}),function(e,t){return n(function(e){return e.replace(x,"\n").replace(S,"").replace(W," ")}(e),t)}}(V),le=(ae=function(e,t){return function(n,r,i){const l=e[n.type].render;return t?t(()=>l(n,r,i),n,r,i):l(n,r,i)}}(V,i.renderRule),function e(t,n={}){if(Array.isArray(t)){const r=n.key,i=[];let l=!1;for(let r=0;r<t.length;r++){n.key=r;const a=e(t[r],n),o="string"==typeof a;o&&l?i[i.length-1]+=a:null!==a&&i.push(a),l=o}return n.key=r,i}return ae(t,e,n)});var ae;const oe=G(n);return q.length?d("div",null,oe,d("footer",{key:"footer"},q.map(function(e){return d("div",{id:i.slugify(e.identifier,Ce),key:e.identifier},e.identifier,le(ie(e.footnote,{inline:!0})))}))):oe}export default t=>{let{children:r="",options:i}=t,l=function(e,t){if(null==e)return{};var n,r,i={},l=Object.keys(e);for(r=0;r<l.length;r++)t.indexOf(n=l[r])>=0||(i[n]=e[n]);return i}(t,n);return e.cloneElement(Ze(r,i),l)};export{r as RuleType,Ze as compiler,Ue as sanitizer,Ce as slugify};
2
2
  //# sourceMappingURL=index.modern.js.map