react-native-marked 6.0.3 → 6.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.md +2 -1
  2. package/dist/commonjs/components/MDImage.js +19 -25
  3. package/dist/commonjs/components/MDImage.js.map +1 -1
  4. package/dist/commonjs/components/MDSvg.js +25 -39
  5. package/dist/commonjs/components/MDSvg.js.map +1 -1
  6. package/dist/commonjs/hooks/useMarkdown.js +7 -16
  7. package/dist/commonjs/hooks/useMarkdown.js.map +1 -1
  8. package/dist/commonjs/index.js +1 -7
  9. package/dist/commonjs/index.js.map +1 -1
  10. package/dist/commonjs/lib/Markdown.js +20 -32
  11. package/dist/commonjs/lib/Markdown.js.map +1 -1
  12. package/dist/commonjs/lib/Parser.js +39 -85
  13. package/dist/commonjs/lib/Parser.js.map +1 -1
  14. package/dist/commonjs/lib/Renderer.js +71 -115
  15. package/dist/commonjs/lib/Renderer.js.map +1 -1
  16. package/dist/commonjs/lib/types.js.map +1 -1
  17. package/dist/commonjs/package.json +1 -0
  18. package/dist/commonjs/theme/colors.js.map +1 -1
  19. package/dist/commonjs/theme/spacing.js.map +1 -1
  20. package/dist/commonjs/theme/styles.js +28 -33
  21. package/dist/commonjs/theme/styles.js.map +1 -1
  22. package/dist/commonjs/theme/types.js.map +1 -1
  23. package/dist/commonjs/utils/handlers.js +0 -3
  24. package/dist/commonjs/utils/handlers.js.map +1 -1
  25. package/dist/commonjs/utils/svg.js +3 -8
  26. package/dist/commonjs/utils/svg.js.map +1 -1
  27. package/dist/commonjs/utils/table.js +0 -8
  28. package/dist/commonjs/utils/table.js.map +1 -1
  29. package/dist/commonjs/utils/url.js +9 -12
  30. package/dist/commonjs/utils/url.js.map +1 -1
  31. package/dist/module/components/MDImage.js +19 -18
  32. package/dist/module/components/MDImage.js.map +1 -1
  33. package/dist/module/components/MDSvg.js +25 -30
  34. package/dist/module/components/MDSvg.js.map +1 -1
  35. package/dist/module/hooks/useMarkdown.js +8 -8
  36. package/dist/module/hooks/useMarkdown.js.map +1 -1
  37. package/dist/module/index.js +2 -0
  38. package/dist/module/index.js.map +1 -1
  39. package/dist/module/lib/Markdown.js +18 -21
  40. package/dist/module/lib/Markdown.js.map +1 -1
  41. package/dist/module/lib/Parser.js +41 -83
  42. package/dist/module/lib/Parser.js.map +1 -1
  43. package/dist/module/lib/Renderer.js +72 -100
  44. package/dist/module/lib/Renderer.js.map +1 -1
  45. package/dist/module/lib/types.js +2 -0
  46. package/dist/module/lib/types.js.map +1 -1
  47. package/dist/module/package.json +1 -0
  48. package/dist/module/theme/colors.js +2 -0
  49. package/dist/module/theme/colors.js.map +1 -1
  50. package/dist/module/theme/spacing.js +2 -0
  51. package/dist/module/theme/spacing.js.map +1 -1
  52. package/dist/module/theme/styles.js +29 -28
  53. package/dist/module/theme/styles.js.map +1 -1
  54. package/dist/module/theme/types.js +2 -0
  55. package/dist/module/theme/types.js.map +1 -1
  56. package/dist/module/utils/handlers.js +2 -0
  57. package/dist/module/utils/handlers.js.map +1 -1
  58. package/dist/module/utils/svg.js +5 -5
  59. package/dist/module/utils/svg.js.map +1 -1
  60. package/dist/module/utils/table.js +2 -4
  61. package/dist/module/utils/table.js.map +1 -1
  62. package/dist/module/utils/url.js +11 -10
  63. package/dist/module/utils/url.js.map +1 -1
  64. package/dist/typescript/hooks/useMarkdown.d.ts +2 -2
  65. package/dist/typescript/hooks/useMarkdown.d.ts.map +1 -1
  66. package/dist/typescript/lib/Markdown.d.ts.map +1 -1
  67. package/dist/typescript/lib/Parser.d.ts +1 -1
  68. package/dist/typescript/lib/Parser.d.ts.map +1 -1
  69. package/dist/typescript/lib/Renderer.d.ts.map +1 -1
  70. package/dist/typescript/lib/types.d.ts +1 -1
  71. package/dist/typescript/lib/types.d.ts.map +1 -1
  72. package/package.json +178 -175
  73. package/src/hooks/useMarkdown.ts +2 -2
  74. package/src/lib/Parser.tsx +3 -2
  75. package/src/lib/Renderer.tsx +10 -14
  76. package/src/lib/types.ts +1 -1
  77. package/src/utils/svg.ts +2 -2
@@ -4,14 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
7
+ var _htmlEntities = require("html-entities");
8
8
  var _url = require("./../utils/url");
9
-
10
9
  var _table = require("./../utils/table");
11
-
12
10
  class Parser {
13
11
  constructor(options) {
14
- this.styles = { ...options.styles
12
+ this.styles = {
13
+ ...options.styles
15
14
  };
16
15
  this.baseUrl = options.baseUrl ?? "";
17
16
  this.renderer = options.renderer;
@@ -24,18 +23,15 @@ class Parser {
24
23
  6: this.styles.h6
25
24
  };
26
25
  }
27
-
28
26
  parse(tokens) {
29
27
  return this._parse(tokens);
30
28
  }
31
-
32
29
  _parse(tokens, styles) {
33
30
  const elements = tokens.map(token => {
34
31
  return this._parseToken(token, styles);
35
32
  });
36
33
  return elements.filter(element => element !== null);
37
34
  }
38
-
39
35
  _parseToken(token, styles) {
40
36
  switch (token.type) {
41
37
  case "paragraph":
@@ -43,200 +39,169 @@ class Parser {
43
39
  const children = this.getNormalizedSiblingNodesForBlockAndInlineTokens(token.tokens, this.styles.text);
44
40
  return this.renderer.paragraph(children, this.styles.paragraph);
45
41
  }
46
-
47
42
  case "blockquote":
48
43
  {
49
44
  const children = this.parse(token.tokens);
50
45
  return this.renderer.blockquote(children, this.styles.blockquote);
51
46
  }
52
-
53
47
  case "heading":
54
48
  {
55
49
  const styles = this.headingStylesMap[token.depth];
56
-
57
50
  if (this.hasDuplicateTextChildToken(token)) {
58
51
  return this.renderer.heading(token.text, styles, token.depth);
59
52
  }
60
-
61
53
  const children = this._parse(token.tokens, styles);
62
-
63
54
  return this.renderer.heading(children, styles, token.depth);
64
55
  }
65
-
66
56
  case "code":
67
57
  {
68
58
  return this.renderer.code(token.text, token.lang, this.styles.code, this.styles.em);
69
59
  }
70
-
71
60
  case "hr":
72
61
  {
73
62
  return this.renderer.hr(this.styles.hr);
74
63
  }
75
-
76
64
  case "list":
77
65
  {
78
- let startIndex = parseInt(token.start.toString());
79
-
66
+ let startIndex = Number.parseInt(token.start.toString());
80
67
  if (Number.isNaN(startIndex)) {
81
68
  startIndex = 1;
82
69
  }
83
-
84
70
  const li = token.items.map(item => {
85
71
  const children = item.tokens.flatMap(cItem => {
86
72
  if (cItem.type === "text") {
87
73
  /* getViewNode since tokens could contain a block like elements (i.e. img) */
88
74
  const childTokens = cItem.tokens || [];
89
- const listChildren = this.getNormalizedSiblingNodesForBlockAndInlineTokens(childTokens, this.styles.li); // return this.renderer.listItem(listChildren, this.styles.li);
90
-
75
+ const listChildren = this.getNormalizedSiblingNodesForBlockAndInlineTokens(childTokens, this.styles.li);
76
+ // return this.renderer.listItem(listChildren, this.styles.li);
91
77
  return listChildren;
92
78
  }
93
- /* Parse the nested token */
94
-
95
79
 
80
+ /* Parse the nested token */
96
81
  return this._parseToken(cItem);
97
82
  });
98
83
  return this.renderer.listItem(children, this.styles.li);
99
84
  });
100
85
  return this.renderer.list(token.ordered, li, this.styles.list, this.styles.li, startIndex);
101
86
  }
102
-
103
87
  case "escape":
104
88
  {
105
- return this.renderer.escape(token.text, { ...this.styles.text,
89
+ return this.renderer.escape(token.text, {
90
+ ...this.styles.text,
106
91
  ...styles
107
92
  });
108
93
  }
109
-
110
94
  case "link":
111
95
  {
112
- var _this$styles$link, _this$styles$link2;
113
-
114
96
  // Don't render anchors without text and children
115
97
  if (token.text.trim.length < 1 && token.tokens.length < 1) {
116
98
  return null;
117
- } // Note: Linking Images (https://www.markdownguide.org/basic-syntax/#linking-images) are wrapped
118
- // in paragraph token, so will be handled via `getNormalizedSiblingNodesForBlockAndInlineTokens`
119
-
99
+ }
120
100
 
121
- const linkStyle = { ...this.styles.link,
101
+ // Note: Linking Images (https://www.markdownguide.org/basic-syntax/#linking-images) are wrapped
102
+ // in paragraph token, so will be handled via `getNormalizedSiblingNodesForBlockAndInlineTokens`
103
+ const linkStyle = {
104
+ ...this.styles.link,
122
105
  ...styles,
123
106
  // To override color and fontStyle properties
124
- color: (_this$styles$link = this.styles.link) === null || _this$styles$link === void 0 ? void 0 : _this$styles$link.color,
125
- fontStyle: (_this$styles$link2 = this.styles.link) === null || _this$styles$link2 === void 0 ? void 0 : _this$styles$link2.fontStyle
107
+ color: this.styles.link?.color,
108
+ fontStyle: this.styles.link?.fontStyle
126
109
  };
127
110
  const href = (0, _url.getValidURL)(this.baseUrl, token.href);
128
-
129
111
  if (this.hasDuplicateTextChildToken(token)) {
130
112
  return this.renderer.link(token.text, href, linkStyle);
131
113
  }
132
-
133
114
  const children = this._parse(token.tokens, linkStyle);
134
-
135
115
  return this.renderer.link(children, href, linkStyle);
136
116
  }
137
-
138
117
  case "image":
139
118
  {
140
119
  return this.renderer.image(token.href, token.text || token.title, this.styles.image);
141
120
  }
142
-
143
121
  case "strong":
144
122
  {
145
- const boldStyle = { ...this.styles.strong,
123
+ const boldStyle = {
124
+ ...this.styles.strong,
146
125
  ...styles
147
126
  };
148
-
149
127
  if (this.hasDuplicateTextChildToken(token)) {
150
128
  return this.renderer.strong(token.text, boldStyle);
151
129
  }
152
-
153
130
  const children = this._parse(token.tokens, boldStyle);
154
-
155
131
  return this.renderer.strong(children, boldStyle);
156
132
  }
157
-
158
133
  case "em":
159
134
  {
160
- const italicStyle = { ...this.styles.em,
135
+ const italicStyle = {
136
+ ...this.styles.em,
161
137
  ...styles
162
138
  };
163
-
164
139
  if (this.hasDuplicateTextChildToken(token)) {
165
140
  return this.renderer.em(token.text, italicStyle);
166
141
  }
167
-
168
142
  const children = this._parse(token.tokens, italicStyle);
169
-
170
143
  return this.renderer.em(children, italicStyle);
171
144
  }
172
-
173
145
  case "codespan":
174
146
  {
175
- return this.renderer.codespan(token.text, { ...this.styles.codespan,
147
+ return this.renderer.codespan((0, _htmlEntities.decode)(token.text), {
148
+ ...this.styles.codespan,
176
149
  ...styles
177
150
  });
178
151
  }
179
-
180
152
  case "br":
181
153
  {
182
154
  return this.renderer.br();
183
155
  }
184
-
185
156
  case "del":
186
157
  {
187
- const strikethroughStyle = { ...this.styles.strikethrough,
158
+ const strikethroughStyle = {
159
+ ...this.styles.strikethrough,
188
160
  ...styles
189
161
  };
190
-
191
162
  if (this.hasDuplicateTextChildToken(token)) {
192
163
  return this.renderer.del(token.text, strikethroughStyle);
193
164
  }
194
-
195
165
  const children = this._parse(token.tokens, strikethroughStyle);
196
-
197
166
  return this.renderer.del(children, strikethroughStyle);
198
167
  }
199
-
200
168
  case "text":
201
- return this.renderer.text(token.raw, { ...this.styles.text,
169
+ return this.renderer.text(token.raw, {
170
+ ...this.styles.text,
202
171
  ...styles
203
172
  });
204
-
205
173
  case "html":
206
174
  {
207
175
  console.warn("react-native-marked: rendering html from markdown is not supported");
208
- return this.renderer.html(token.raw, { ...this.styles.text,
176
+ return this.renderer.html(token.raw, {
177
+ ...this.styles.text,
209
178
  ...styles
210
179
  });
211
180
  }
212
-
213
181
  case "table":
214
182
  {
215
- const header = token.header.map((row, i) => this._parse(row.tokens, { ...(0, _table.getTableColAlignmentStyle)(token.align[i])
183
+ const header = token.header.map((row, i) => this._parse(row.tokens, {
184
+ ...(0, _table.getTableColAlignmentStyle)(token.align[i])
216
185
  }));
217
- const rows = token.rows.map(cols => cols.map((col, i) => this._parse(col.tokens, { ...(0, _table.getTableColAlignmentStyle)(token.align[i])
186
+ const rows = token.rows.map(cols => cols.map((col, i) => this._parse(col.tokens, {
187
+ ...(0, _table.getTableColAlignmentStyle)(token.align[i])
218
188
  })));
219
189
  return this.renderer.table(header, rows, this.styles.table, this.styles.tableRow, this.styles.tableCell);
220
190
  }
221
-
222
191
  case "custom":
223
192
  {
224
193
  const children = this._parse(token.tokens ?? []);
225
-
226
194
  return this.renderer.custom(token.identifier, token.raw, children, token.args);
227
195
  }
228
-
229
196
  default:
230
197
  {
231
198
  return null;
232
199
  }
233
200
  }
234
201
  }
235
-
236
202
  getNormalizedSiblingNodesForBlockAndInlineTokens(tokens, textStyle) {
237
203
  let tokenRenderQueue = [];
238
204
  const siblingNodes = [];
239
-
240
205
  for (const t of tokens) {
241
206
  /**
242
207
  * To avoid inlining images
@@ -246,12 +211,11 @@ class Parser {
246
211
  if (t.type === "image" || t.type === "link" && t.tokens && t.tokens[0] && t.tokens[0].type === "image") {
247
212
  // Render existing inline tokens in the queue
248
213
  const parsed = this._parse(tokenRenderQueue);
249
-
250
214
  if (parsed.length > 0) {
251
215
  siblingNodes.push(this.renderer.text(parsed, textStyle));
252
- } // Render the current block token
253
-
216
+ }
254
217
 
218
+ // Render the current block token
255
219
  if (t.type === "image") {
256
220
  siblingNodes.push(this._parseToken(t));
257
221
  } else if (t.type === "link") {
@@ -259,41 +223,31 @@ class Parser {
259
223
  const href = (0, _url.getValidURL)(this.baseUrl, t.href);
260
224
  siblingNodes.push(this.renderer.linkImage(href, imageToken.href, imageToken.text || imageToken.title, this.styles.image));
261
225
  }
262
-
263
226
  tokenRenderQueue = [];
264
227
  continue;
265
228
  }
266
-
267
229
  tokenRenderQueue = [...tokenRenderQueue, t];
268
230
  }
269
- /* Remaining temp tokens if any */
270
-
271
231
 
232
+ /* Remaining temp tokens if any */
272
233
  if (tokenRenderQueue.length > 0) {
273
234
  siblingNodes.push(this.renderer.text(this.parse(tokenRenderQueue), {}));
274
235
  }
275
-
276
236
  return siblingNodes;
277
- } // To avoid duplicate text node nesting when there are no child tokens with text emphasis (i.e., italic)
278
- // ref: https://github.com/gmsgowtham/react-native-marked/issues/522
279
-
237
+ }
280
238
 
239
+ // To avoid duplicate text node nesting when there are no child tokens with text emphasis (i.e., italic)
240
+ // ref: https://github.com/gmsgowtham/react-native-marked/issues/522
281
241
  hasDuplicateTextChildToken(token) {
282
- var _token$tokens$;
283
-
284
242
  if (!("tokens" in token)) {
285
243
  return false;
286
244
  }
287
-
288
- if (token.tokens && token.tokens.length === 1 && ((_token$tokens$ = token.tokens[0]) === null || _token$tokens$ === void 0 ? void 0 : _token$tokens$.type) === "text") {
245
+ if (token.tokens && token.tokens.length === 1 && token.tokens[0]?.type === "text") {
289
246
  return true;
290
247
  }
291
-
292
248
  return false;
293
249
  }
294
-
295
250
  }
296
-
297
251
  var _default = Parser;
298
252
  exports.default = _default;
299
253
  //# sourceMappingURL=Parser.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Parser","constructor","options","styles","baseUrl","renderer","headingStylesMap","h1","h2","h3","h4","h5","h6","parse","tokens","_parse","elements","map","token","_parseToken","filter","element","type","children","getNormalizedSiblingNodesForBlockAndInlineTokens","text","paragraph","blockquote","depth","hasDuplicateTextChildToken","heading","code","lang","em","hr","startIndex","parseInt","start","toString","Number","isNaN","li","items","item","flatMap","cItem","childTokens","listChildren","listItem","list","ordered","escape","trim","length","linkStyle","link","color","fontStyle","href","getValidURL","image","title","boldStyle","strong","italicStyle","codespan","br","strikethroughStyle","strikethrough","del","raw","console","warn","html","header","row","i","getTableColAlignmentStyle","align","rows","cols","col","table","tableRow","tableCell","custom","identifier","args","textStyle","tokenRenderQueue","siblingNodes","t","parsed","push","imageToken","linkImage"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_htmlEntities","require","_url","_table","Parser","constructor","options","styles","baseUrl","renderer","headingStylesMap","h1","h2","h3","h4","h5","h6","parse","tokens","_parse","elements","map","token","_parseToken","filter","element","type","children","getNormalizedSiblingNodesForBlockAndInlineTokens","text","paragraph","blockquote","depth","hasDuplicateTextChildToken","heading","code","lang","em","hr","startIndex","Number","parseInt","start","toString","isNaN","li","items","item","flatMap","cItem","childTokens","listChildren","listItem","list","ordered","escape","trim","length","linkStyle","link","color","fontStyle","href","getValidURL","image","title","boldStyle","strong","italicStyle","codespan","decode","br","strikethroughStyle","strikethrough","del","raw","console","warn","html","header","row","i","getTableColAlignmentStyle","align","rows","cols","col","table","tableRow","tableCell","custom","identifier","args","textStyle","tokenRenderQueue","siblingNodes","t","parsed","push","imageToken","linkImage","_default","exports","default"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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","ignoreList":[]}