react-native-marked 4.1.1 → 5.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +93 -62
  2. package/dist/commonjs/hooks/useMarkdown.js +2 -1
  3. package/dist/commonjs/hooks/useMarkdown.js.map +1 -1
  4. package/dist/commonjs/index.js +11 -0
  5. package/dist/commonjs/index.js.map +1 -1
  6. package/dist/commonjs/lib/Markdown.js +4 -2
  7. package/dist/commonjs/lib/Markdown.js.map +1 -1
  8. package/dist/commonjs/lib/Parser.js +8 -7
  9. package/dist/commonjs/lib/Parser.js.map +1 -1
  10. package/dist/commonjs/lib/Renderer.js +5 -4
  11. package/dist/commonjs/lib/Renderer.js.map +1 -1
  12. package/dist/module/hooks/useMarkdown.js +2 -1
  13. package/dist/module/hooks/useMarkdown.js.map +1 -1
  14. package/dist/module/index.js +3 -1
  15. package/dist/module/index.js.map +1 -1
  16. package/dist/module/lib/Markdown.js +4 -2
  17. package/dist/module/lib/Markdown.js.map +1 -1
  18. package/dist/module/lib/Parser.js +8 -7
  19. package/dist/module/lib/Parser.js.map +1 -1
  20. package/dist/module/lib/Renderer.js +5 -4
  21. package/dist/module/lib/Renderer.js.map +1 -1
  22. package/dist/typescript/hooks/useMarkdown.d.ts +3 -1
  23. package/dist/typescript/hooks/useMarkdown.d.ts.map +1 -1
  24. package/dist/typescript/index.d.ts +5 -3
  25. package/dist/typescript/index.d.ts.map +1 -1
  26. package/dist/typescript/lib/Markdown.d.ts +1 -1
  27. package/dist/typescript/lib/Markdown.d.ts.map +1 -1
  28. package/dist/typescript/lib/Parser.d.ts +2 -3
  29. package/dist/typescript/lib/Parser.d.ts.map +1 -1
  30. package/dist/typescript/lib/Renderer.d.ts +1 -0
  31. package/dist/typescript/lib/Renderer.d.ts.map +1 -1
  32. package/dist/typescript/lib/types.d.ts +12 -0
  33. package/dist/typescript/lib/types.d.ts.map +1 -1
  34. package/package.json +7 -8
  35. package/src/hooks/useMarkdown.ts +8 -3
  36. package/src/index.ts +7 -1
  37. package/src/lib/Markdown.tsx +2 -0
  38. package/src/lib/Parser.tsx +17 -16
  39. package/src/lib/Renderer.tsx +16 -3
  40. package/src/lib/types.ts +42 -0
package/README.md CHANGED
@@ -37,7 +37,7 @@ const ExampleComponent = () => {
37
37
  export default ExampleComponent;
38
38
  ```
39
39
 
40
- #### [Props](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L9)
40
+ #### [Props](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L17)
41
41
 
42
42
  | Prop | Description | Type | Optional? |
43
43
  | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------- |
@@ -76,13 +76,15 @@ const CustomComponent = () => {
76
76
 
77
77
  #### Options
78
78
 
79
- | Option | Description | Type | Optional? |
80
- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | --------- |
81
- | colorScheme | Device color scheme ("dark" or "light") | ColorSchemeName | false |
82
- | styles | Styles for parsed components | [MarkedStyles](https://github.com/gmsgowtham/react-native-marked/blob/main/src/theme/types.ts#L5) | true |
83
- | theme | Props for customizing colors and spacing for all components,and it will get overridden with custom component style applied via 'styles' prop | [UserTheme](https://github.com/gmsgowtham/react-native-marked/blob/main/src/theme/types.ts#L28) | true |
84
- | baseUrl | A prefix url for any relative link | string | true |
85
- | renderer | Custom component Renderer | [RendererInterface](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L25) | true |
79
+ | Option | Description | Type | Optional? |
80
+ | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | --------- |
81
+ | colorScheme | Device color scheme ("dark" or "light") | ColorSchemeName | false |
82
+ | styles | Styles for parsed components | [MarkedStyles](https://github.com/gmsgowtham/react-native-marked/blob/main/src/theme/types.ts#L5) | true |
83
+ | theme | Props for customizing colors and spacing for all components,and it will get overridden with custom component style applied via 'styles' prop | [UserTheme](https://github.com/gmsgowtham/react-native-marked/blob/main/src/theme/types.ts#L28) | true |
84
+ | baseUrl | A prefix url for any relative link | string | true |
85
+ | renderer | Custom component Renderer | [RendererInterface](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L29) | true |
86
+ | tokenizer | Generate custom tokens | [MarkedTokenizer<CustomToken>](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L24) | true |
87
+
86
88
 
87
89
  ## Examples
88
90
 
@@ -108,7 +110,12 @@ Ref: [CommonMark](https://commonmark.org/help/)
108
110
 
109
111
  > HTML will be treated as plain text. Please refer [issue#290](https://github.com/gmsgowtham/react-native-marked/issues/290) for a potential solution
110
112
 
111
- ## Using custom components
113
+ ## Advanced
114
+ ### Using custom components
115
+
116
+ > Custom components can be used to override elements, i.e. Code Highlighting, Fast Image integration
117
+
118
+ #### Example
112
119
 
113
120
  ```tsx
114
121
  import React, { ReactNode, Fragment } from "react";
@@ -173,61 +180,85 @@ const ExampleComponentWithHook = () => {
173
180
  export default ExampleComponent;
174
181
  ```
175
182
 
176
- > Please refer to `RendererInterface` for all the override methods
177
-
178
- ```ts
179
- export interface RendererInterface {
180
- paragraph(children: ReactNode[], styles?: ViewStyle): ReactNode;
181
- blockquote(children: ReactNode[], styles?: ViewStyle): ReactNode;
182
- heading(text: string | ReactNode[], styles?: TextStyle): ReactNode;
183
- code(
184
- text: string,
185
- language?: string,
186
- containerStyle?: ViewStyle,
187
- textStyle?: TextStyle,
188
- ): ReactNode;
189
- hr(styles?: ViewStyle): ReactNode;
190
- listItem(children: ReactNode[], styles?: ViewStyle): ReactNode;
191
- list(
192
- ordered: boolean,
193
- li: ReactNode[],
194
- listStyle?: ViewStyle,
195
- textStyle?: TextStyle,
196
- startIndex?: number,
197
- ): ReactNode;
198
- escape(text: string, styles?: TextStyle): ReactNode;
199
- link(
200
- children: string | ReactNode[],
201
- href: string,
202
- styles?: TextStyle,
203
- ): ReactNode;
204
- image(uri: string, alt?: string, style?: ImageStyle): ReactNode;
205
- strong(children: ReactNode[], styles?: TextStyle): ReactNode;
206
- em(children: ReactNode[], styles?: TextStyle): ReactNode;
207
- codespan(text: string, styles?: TextStyle): ReactNode;
208
- br(): ReactNode;
209
- del(children: ReactNode[], styles?: TextStyle): ReactNode;
210
- text(text: string | ReactNode[], styles?: TextStyle): ReactNode;
211
- html(text: string | ReactNode[], styles?: TextStyle): ReactNode;
212
- linkImage(
213
- href: string,
214
- imageUrl: string,
215
- alt?: string,
216
- style?: ImageStyle,
217
- ): ReactNode;
218
- table(
219
- header: ReactNode[][],
220
- rows: ReactNode[][][],
221
- tableStyle?: ViewStyle,
222
- rowStyle?: ViewStyle,
223
- cellStyle?: ViewStyle,
224
- ): ReactNode;
225
- }
226
- ```
183
+ > Please refer to [RendererInterface](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L2) for all the overrides
227
184
 
228
185
  > Note:
229
186
  >
230
- > For `key` property for a component, use `getKey` method from Renderer class.
187
+ > For `key` property for a component, you can use the `getKey` method from Renderer class.
188
+
189
+ ### Using tokenizer with custom components
190
+
191
+ Refer [marked](https://marked.js.org/using_pro#tokenizer)
192
+ > The tokenizer defines how to turn markdown text into tokens. If you supply a tokenizer object to the Marked options, it will be merged with the built-in tokenizer and any functions inside will override the default handling of that token type.
193
+
194
+ -------------
195
+
196
+ > The implementation requires you to return a token of type 'custom' (ref: [CustomToken](https://github.com/gmsgowtham/react-native-marked/blob/main/src/lib/types.ts#L83)) and the same needs to be implemented in the Renderer
197
+
198
+
199
+ #### Example
200
+
201
+ Overriding default codespan tokenizer to include LaTeX.
202
+
203
+ ```tsx
204
+ import React, { ReactNode } from "react";
205
+ import Markdown, { Renderer, MarkedTokenizer, MarkedLexer } from "react-native-marked";
206
+ import type { RendererInterface, type CustomToken, } from "react-native-marked";
207
+
208
+ class CustomTokenizer extends MarkedTokenizer<CustomToken> {
209
+ // Override
210
+ codespan(this: MarkedTokenizer<CustomToken>, src: string) {
211
+ const match = src.match(/^\$+([^\$\n]+?)\$+/);
212
+ if (match?.[1]) {
213
+ const text = match[1].trim();
214
+ const raw = match[0];
215
+ const token: CustomToken = {
216
+ type: 'custom',
217
+ raw: raw, // should be the exact regex pattern match
218
+ text: text,
219
+ identifier: "latex",
220
+ tokens: MarkedLexer(text), // optional, can be used if the markdown contains children
221
+ };
222
+ return token;
223
+ }
224
+
225
+ return super.codespan(src)
226
+ }
227
+ }
228
+
229
+ class CustomRenderer extends Renderer implements RendererInterface {
230
+ // Custom Token implementation
231
+ custom(identifier: string, text: string, _raw: string, _children: ReactNode[]): ReactNode {
232
+ if (identifier === "latex") {
233
+ const styles = {
234
+ padding: 16,
235
+ minWidth: "100%",
236
+ backgroundColor: "#f6f8fa"
237
+ };
238
+ return this.code(text.trim(), "latex", styles);
239
+ }
240
+ return null;
241
+ }
242
+ }
243
+
244
+ const renderer = new CustomRenderer();
245
+ const tokenizer = new CustomTokenizer();
246
+
247
+ const ExampleComponent = () => {
248
+ return (
249
+ <Markdown
250
+ value={"$ latex code $\n\n` other code `"}
251
+ flatListProps={{
252
+ initialNumToRender: 8,
253
+ }}
254
+ renderer={renderer}
255
+ tokenizer={tokenizer}
256
+ />
257
+ );
258
+ };
259
+ ```
260
+
261
+ #### Example
231
262
 
232
263
  ## Screenshots
233
264
 
@@ -255,4 +286,4 @@ Made with
255
286
  - [@jsamr/react-native-li](https://github.com/jsamr/react-native-li)
256
287
  - [react-native-table-component](https://github.com/Gil2015/react-native-table-component)
257
288
  - [react-native-svg](https://github.com/software-mansion/react-native-svg)
258
-
289
+ - [svg-parser](https://github.com/Rich-Harris/svg-parser)
@@ -27,7 +27,8 @@ const useMarkdown = (value, options) => {
27
27
  const elements = (0, _react.useMemo)(() => {
28
28
  const tokens = _marked.marked.lexer(value, {
29
29
  mangle: false,
30
- gfm: true
30
+ gfm: true,
31
+ tokenizer: options === null || options === void 0 ? void 0 : options.tokenizer
31
32
  });
32
33
 
33
34
  return parser.parse(tokens);
@@ -1 +1 @@
1
- {"version":3,"names":["useMarkdown","value","options","styles","useMemo","getStyles","colorScheme","theme","parser","Parser","baseUrl","renderer","Renderer","elements","tokens","marked","lexer","mangle","gfm","parse"],"sourceRoot":"../../../src","sources":["hooks/useMarkdown.ts"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;AAYA,MAAMA,WAAW,GAAG,CACnBC,KADmB,EAEnBC,OAFmB,KAGF;EACjB,MAAMC,MAAM,GAAG,IAAAC,cAAA,EACd,MAAM,IAAAC,eAAA,EAAUH,OAAV,aAAUA,OAAV,uBAAUA,OAAO,CAAEC,MAAnB,EAA2BD,OAA3B,aAA2BA,OAA3B,uBAA2BA,OAAO,CAAEI,WAApC,EAAiDJ,OAAjD,aAAiDA,OAAjD,uBAAiDA,OAAO,CAAEK,KAA1D,CADQ,EAEd,CAACL,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEK,KAA3B,EAAkCL,OAAlC,aAAkCA,OAAlC,uBAAkCA,OAAO,CAAEI,WAA3C,CAFc,CAAf;EAKA,MAAME,MAAM,GAAG,IAAAJ,cAAA,EACd,MACC,IAAIK,eAAJ,CAAW;IACVN,MAAM,EAAEA,MADE;IAEVO,OAAO,EAAER,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEQ,OAFR;IAGVC,QAAQ,EAAE,CAAAT,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAES,QAAT,KAAqB,IAAIC,iBAAJ;EAHrB,CAAX,CAFa,EAOd,CAACV,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAES,QAAV,EAAoBT,OAApB,aAAoBA,OAApB,uBAAoBA,OAAO,CAAEQ,OAA7B,EAAsCP,MAAtC,CAPc,CAAf;EAUA,MAAMU,QAAQ,GAAG,IAAAT,cAAA,EAAQ,MAAM;IAC9B,MAAMU,MAAM,GAAGC,cAAA,CAAOC,KAAP,CAAaf,KAAb,EAAoB;MAAEgB,MAAM,EAAE,KAAV;MAAiBC,GAAG,EAAE;IAAtB,CAApB,CAAf;;IACA,OAAOV,MAAM,CAACW,KAAP,CAAaL,MAAb,CAAP;EACA,CAHgB,EAGd,CAACb,KAAD,EAAQO,MAAR,CAHc,CAAjB;EAKA,OAAOK,QAAP;AACA,CAzBD;;eA2Beb,W"}
1
+ {"version":3,"names":["useMarkdown","value","options","styles","useMemo","getStyles","colorScheme","theme","parser","Parser","baseUrl","renderer","Renderer","elements","tokens","marked","lexer","mangle","gfm","tokenizer","parse"],"sourceRoot":"../../../src","sources":["hooks/useMarkdown.ts"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;AAaA,MAAMA,WAAW,GAAG,CACnBC,KADmB,EAEnBC,OAFmB,KAGF;EACjB,MAAMC,MAAM,GAAG,IAAAC,cAAA,EACd,MAAM,IAAAC,eAAA,EAAUH,OAAV,aAAUA,OAAV,uBAAUA,OAAO,CAAEC,MAAnB,EAA2BD,OAA3B,aAA2BA,OAA3B,uBAA2BA,OAAO,CAAEI,WAApC,EAAiDJ,OAAjD,aAAiDA,OAAjD,uBAAiDA,OAAO,CAAEK,KAA1D,CADQ,EAEd,CAACL,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEK,KAA3B,EAAkCL,OAAlC,aAAkCA,OAAlC,uBAAkCA,OAAO,CAAEI,WAA3C,CAFc,CAAf;EAKA,MAAME,MAAM,GAAG,IAAAJ,cAAA,EACd,MACC,IAAIK,eAAJ,CAAW;IACVN,MAAM,EAAEA,MADE;IAEVO,OAAO,EAAER,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEQ,OAFR;IAGVC,QAAQ,EAAE,CAAAT,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAES,QAAT,KAAqB,IAAIC,iBAAJ;EAHrB,CAAX,CAFa,EAOd,CAACV,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAES,QAAV,EAAoBT,OAApB,aAAoBA,OAApB,uBAAoBA,OAAO,CAAEQ,OAA7B,EAAsCP,MAAtC,CAPc,CAAf;EAUA,MAAMU,QAAQ,GAAG,IAAAT,cAAA,EAAQ,MAAM;IAC9B,MAAMU,MAAM,GAAGC,cAAA,CAAOC,KAAP,CAAaf,KAAb,EAAoB;MAClCgB,MAAM,EAAE,KAD0B;MAElCC,GAAG,EAAE,IAF6B;MAGlCC,SAAS,EAAEjB,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEiB;IAHc,CAApB,CAAf;;IAKA,OAAOX,MAAM,CAACY,KAAP,CAAaN,MAAb,CAAP;EACA,CAPgB,EAOd,CAACb,KAAD,EAAQO,MAAR,CAPc,CAAjB;EASA,OAAOK,QAAP;AACA,CA7BD;;eA+Beb,W"}
@@ -3,6 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.MarkedLexer = void 0;
7
+ Object.defineProperty(exports, "MarkedTokenizer", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _marked.Tokenizer;
11
+ }
12
+ });
6
13
  Object.defineProperty(exports, "Renderer", {
7
14
  enumerable: true,
8
15
  get: function () {
@@ -17,6 +24,8 @@ Object.defineProperty(exports, "useMarkdown", {
17
24
  }
18
25
  });
19
26
 
27
+ var _marked = require("marked");
28
+
20
29
  var _Markdown = _interopRequireDefault(require("./lib/Markdown"));
21
30
 
22
31
  var _Renderer = _interopRequireDefault(require("./lib/Renderer"));
@@ -25,6 +34,8 @@ var _useMarkdown = _interopRequireDefault(require("./hooks/useMarkdown"));
25
34
 
26
35
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
36
 
37
+ const MarkedLexer = _marked.marked.lexer;
38
+ exports.MarkedLexer = MarkedLexer;
28
39
  var _default = _Markdown.default;
29
40
  exports.default = _default;
30
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Markdown"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;eAceA,iB"}
1
+ {"version":3,"names":["MarkedLexer","marked","lexer","Markdown"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;AAQA,MAAMA,WAAW,GAAGC,cAAA,CAAOC,KAA3B;;eAWeC,iB"}
@@ -28,7 +28,8 @@ const Markdown = _ref => {
28
28
  theme,
29
29
  baseUrl,
30
30
  renderer,
31
- styles
31
+ styles,
32
+ tokenizer
32
33
  } = _ref;
33
34
  const colorScheme = (0, _reactNative.useColorScheme)();
34
35
  const rnElements = (0, _useMarkdown.default)(value, {
@@ -36,7 +37,8 @@ const Markdown = _ref => {
36
37
  baseUrl,
37
38
  renderer,
38
39
  colorScheme,
39
- styles
40
+ styles,
41
+ tokenizer
40
42
  });
41
43
  const renderItem = (0, _react.useCallback)(_ref2 => {
42
44
  let {
@@ -1 +1 @@
1
- {"version":3,"names":["Markdown","value","flatListProps","theme","baseUrl","renderer","styles","colorScheme","useColorScheme","rnElements","useMarkdown","renderItem","useCallback","item","keyExtractor","_","index","toString","backgroundColor","colors","light","background","dark","memo"],"sourceRoot":"../../../src","sources":["lib/Markdown.tsx"],"mappings":";;;;;;;AAAA;;AAMA;;AAEA;;AACA;;;;;;;;;;AAEA,MAAMA,QAAQ,GAAG,QAOI;EAAA,IAPH;IACjBC,KADiB;IAEjBC,aAFiB;IAGjBC,KAHiB;IAIjBC,OAJiB;IAKjBC,QALiB;IAMjBC;EANiB,CAOG;EACpB,MAAMC,WAAW,GAAG,IAAAC,2BAAA,GAApB;EAEA,MAAMC,UAAU,GAAG,IAAAC,oBAAA,EAAYT,KAAZ,EAAmB;IACrCE,KADqC;IAErCC,OAFqC;IAGrCC,QAHqC;IAIrCE,WAJqC;IAKrCD;EALqC,CAAnB,CAAnB;EAQA,MAAMK,UAAU,GAAG,IAAAC,kBAAA,EAAY,SAAmC;IAAA,IAAlC;MAAEC;IAAF,CAAkC;IACjE,OAAOA,IAAP;EACA,CAFkB,EAEhB,EAFgB,CAAnB;EAIA,MAAMC,YAAY,GAAG,IAAAF,kBAAA,EACpB,CAACG,CAAD,EAAeC,KAAf,KAAiCA,KAAK,CAACC,QAAN,EADb,EAEpB,EAFoB,CAArB;EAKA,oBACC,6BAAC,qBAAD;IACC,qBAAqB,EAAE,KADxB;IAEC,YAAY,EAAEH,YAFf;IAGC,mBAAmB,EAAE,CAHtB;IAIC,kBAAkB,EAAE,CAJrB;IAKC,KAAK,EAAE;MACNI,eAAe,EACdX,WAAW,KAAK,OAAhB,GACGY,eAAA,CAAOC,KAAP,CAAaC,UADhB,GAEGF,eAAA,CAAOG,IAAP,CAAYD;IAJV;EALR,GAWKnB,aAXL;IAYC,IAAI,EAAEO,UAZP;IAaC,UAAU,EAAEE;EAbb,GADD;AAiBA,CA5CD;;4BA8Ce,IAAAY,WAAA,EAAKvB,QAAL,C"}
1
+ {"version":3,"names":["Markdown","value","flatListProps","theme","baseUrl","renderer","styles","tokenizer","colorScheme","useColorScheme","rnElements","useMarkdown","renderItem","useCallback","item","keyExtractor","_","index","toString","backgroundColor","colors","light","background","dark","memo"],"sourceRoot":"../../../src","sources":["lib/Markdown.tsx"],"mappings":";;;;;;;AAAA;;AAMA;;AAEA;;AACA;;;;;;;;;;AAEA,MAAMA,QAAQ,GAAG,QAQI;EAAA,IARH;IACjBC,KADiB;IAEjBC,aAFiB;IAGjBC,KAHiB;IAIjBC,OAJiB;IAKjBC,QALiB;IAMjBC,MANiB;IAOjBC;EAPiB,CAQG;EACpB,MAAMC,WAAW,GAAG,IAAAC,2BAAA,GAApB;EAEA,MAAMC,UAAU,GAAG,IAAAC,oBAAA,EAAYV,KAAZ,EAAmB;IACrCE,KADqC;IAErCC,OAFqC;IAGrCC,QAHqC;IAIrCG,WAJqC;IAKrCF,MALqC;IAMrCC;EANqC,CAAnB,CAAnB;EASA,MAAMK,UAAU,GAAG,IAAAC,kBAAA,EAAY,SAAmC;IAAA,IAAlC;MAAEC;IAAF,CAAkC;IACjE,OAAOA,IAAP;EACA,CAFkB,EAEhB,EAFgB,CAAnB;EAIA,MAAMC,YAAY,GAAG,IAAAF,kBAAA,EACpB,CAACG,CAAD,EAAeC,KAAf,KAAiCA,KAAK,CAACC,QAAN,EADb,EAEpB,EAFoB,CAArB;EAKA,oBACC,6BAAC,qBAAD;IACC,qBAAqB,EAAE,KADxB;IAEC,YAAY,EAAEH,YAFf;IAGC,mBAAmB,EAAE,CAHtB;IAIC,kBAAkB,EAAE,CAJrB;IAKC,KAAK,EAAE;MACNI,eAAe,EACdX,WAAW,KAAK,OAAhB,GACGY,eAAA,CAAOC,KAAP,CAAaC,UADhB,GAEGF,eAAA,CAAOG,IAAP,CAAYD;IAJV;EALR,GAWKpB,aAXL;IAYC,IAAI,EAAEQ,UAZP;IAaC,UAAU,EAAEE;EAbb,GADD;AAiBA,CA9CD;;4BAgDe,IAAAY,WAAA,EAAKxB,QAAL,C"}
@@ -38,11 +38,6 @@ class Parser {
38
38
 
39
39
  _parseToken(token, styles) {
40
40
  switch (token.type) {
41
- case "space":
42
- {
43
- return null;
44
- }
45
-
46
41
  case "paragraph":
47
42
  {
48
43
  const children = this.getNormalizedSiblingNodesForBlockAndInlineTokens(token.tokens, this.styles.text);
@@ -200,9 +195,15 @@ class Parser {
200
195
  return this.renderer.table(header, rows, this.styles.table, this.styles.tableRow, this.styles.tableCell);
201
196
  }
202
197
 
198
+ case "custom":
199
+ {
200
+ const children = this._parse(token.tokens ?? []);
201
+
202
+ return this.renderer.custom(token.identifier, token.text, token.raw, children, token.args);
203
+ }
204
+
203
205
  default:
204
206
  {
205
- console.warn(`react-native-marked: token with '${token.type}' type was not found.`);
206
207
  return null;
207
208
  }
208
209
  }
@@ -219,7 +220,7 @@ class Parser {
219
220
  */
220
221
  if (t.type === "image" || t.type === "link" && t.tokens && t.tokens[0] && t.tokens[0].type === "image") {
221
222
  // Render existing inline tokens in the queue
222
- const parsed = this.parse(tokenRenderQueue);
223
+ const parsed = this._parse(tokenRenderQueue);
223
224
 
224
225
  if (parsed.length > 0) {
225
226
  siblingNodes.push(this.renderer.text(parsed, textStyle));
@@ -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","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","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","textStyle","tokenRenderQueue","siblingNodes","forEach","t","parsed","push","imageToken","linkImage"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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"}
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","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","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","forEach","t","parsed","push","imageToken","linkImage"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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"}
@@ -59,10 +59,7 @@ class Renderer {
59
59
  horizontal: true,
60
60
  key: this.getKey(),
61
61
  contentContainerStyle: containerStyle
62
- }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
63
- selectable: true,
64
- style: textStyle
65
- }, text));
62
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, null, this.getTextNode(text, textStyle)));
66
63
  }
67
64
 
68
65
  hr(styles) {
@@ -195,6 +192,10 @@ class Renderer {
195
192
  })));
196
193
  }
197
194
 
195
+ custom(_identifier, _text, _raw, _children, _args) {
196
+ return null;
197
+ }
198
+
198
199
  getKey() {
199
200
  return this.slugger.slug(this.slugPrefix);
200
201
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Renderer","slugPrefix","constructor","slugger","Slugger","width","Dimensions","get","windowWidth","paragraph","children","styles","getViewNode","blockquote","getBlockquoteNode","heading","text","getTextNode","code","_language","containerStyle","textStyle","getKey","hr","listItem","list","ordered","li","listStyle","startIndex","Decimal","Disc","map","node","escape","link","href","onLinkPress","image","uri","alt","style","key","endsWith","strong","em","codespan","br","del","html","linkImage","imageUrl","imageNode","table","header","rows","tableStyle","rowStyle","cellStyle","widthArr","getTableWidthArr","length","borderWidth","borderColor","tableStyleRest","headerCol","index","rowData","cellData","cellIndex","slug"],"sourceRoot":"../../../src","sources":["lib/Renderer.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["Renderer","slugPrefix","constructor","slugger","Slugger","width","Dimensions","get","windowWidth","paragraph","children","styles","getViewNode","blockquote","getBlockquoteNode","heading","text","getTextNode","code","_language","containerStyle","textStyle","getKey","hr","listItem","list","ordered","li","listStyle","startIndex","Decimal","Disc","map","node","escape","link","href","onLinkPress","image","uri","alt","style","key","endsWith","strong","em","codespan","br","del","html","linkImage","imageUrl","imageNode","table","header","rows","tableStyle","rowStyle","cellStyle","widthArr","getTableWidthArr","length","borderWidth","borderColor","tableStyleRest","headerCol","index","rowData","cellData","cellIndex","custom","_identifier","_text","_raw","_children","_args","slug"],"sourceRoot":"../../../src","sources":["lib/Renderer.tsx"],"mappings":"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"}
@@ -14,7 +14,8 @@ const useMarkdown = (value, options) => {
14
14
  const elements = useMemo(() => {
15
15
  const tokens = marked.lexer(value, {
16
16
  mangle: false,
17
- gfm: true
17
+ gfm: true,
18
+ tokenizer: options === null || options === void 0 ? void 0 : options.tokenizer
18
19
  });
19
20
  return parser.parse(tokens);
20
21
  }, [value, parser]);
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","marked","Parser","Renderer","getStyles","useMarkdown","value","options","styles","colorScheme","theme","parser","baseUrl","renderer","elements","tokens","lexer","mangle","gfm","parse"],"sourceRoot":"../../../src","sources":["hooks/useMarkdown.ts"],"mappings":"AAAA,SAASA,OAAT,QAAwC,OAAxC;AACA,SAASC,MAAT,QAAuB,QAAvB;AAEA,OAAOC,MAAP,MAAmB,eAAnB;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,OAAOC,SAAP,MAAsB,mBAAtB;;AAYA,MAAMC,WAAW,GAAG,CACnBC,KADmB,EAEnBC,OAFmB,KAGF;EACjB,MAAMC,MAAM,GAAGR,OAAO,CACrB,MAAMI,SAAS,CAACG,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEE,WAA3B,EAAwCF,OAAxC,aAAwCA,OAAxC,uBAAwCA,OAAO,CAAEG,KAAjD,CADM,EAErB,CAACH,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEG,KAA3B,EAAkCH,OAAlC,aAAkCA,OAAlC,uBAAkCA,OAAO,CAAEE,WAA3C,CAFqB,CAAtB;EAKA,MAAME,MAAM,GAAGX,OAAO,CACrB,MACC,IAAIE,MAAJ,CAAW;IACVM,MAAM,EAAEA,MADE;IAEVI,OAAO,EAAEL,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEK,OAFR;IAGVC,QAAQ,EAAE,CAAAN,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEM,QAAT,KAAqB,IAAIV,QAAJ;EAHrB,CAAX,CAFoB,EAOrB,CAACI,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEM,QAAV,EAAoBN,OAApB,aAAoBA,OAApB,uBAAoBA,OAAO,CAAEK,OAA7B,EAAsCJ,MAAtC,CAPqB,CAAtB;EAUA,MAAMM,QAAQ,GAAGd,OAAO,CAAC,MAAM;IAC9B,MAAMe,MAAM,GAAGd,MAAM,CAACe,KAAP,CAAaV,KAAb,EAAoB;MAAEW,MAAM,EAAE,KAAV;MAAiBC,GAAG,EAAE;IAAtB,CAApB,CAAf;IACA,OAAOP,MAAM,CAACQ,KAAP,CAAaJ,MAAb,CAAP;EACA,CAHuB,EAGrB,CAACT,KAAD,EAAQK,MAAR,CAHqB,CAAxB;EAKA,OAAOG,QAAP;AACA,CAzBD;;AA2BA,eAAeT,WAAf"}
1
+ {"version":3,"names":["useMemo","marked","Parser","Renderer","getStyles","useMarkdown","value","options","styles","colorScheme","theme","parser","baseUrl","renderer","elements","tokens","lexer","mangle","gfm","tokenizer","parse"],"sourceRoot":"../../../src","sources":["hooks/useMarkdown.ts"],"mappings":"AAAA,SAASA,OAAT,QAAwC,OAAxC;AACA,SAAoBC,MAApB,QAAkC,QAAlC;AAEA,OAAOC,MAAP,MAAmB,eAAnB;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,OAAOC,SAAP,MAAsB,mBAAtB;;AAaA,MAAMC,WAAW,GAAG,CACnBC,KADmB,EAEnBC,OAFmB,KAGF;EACjB,MAAMC,MAAM,GAAGR,OAAO,CACrB,MAAMI,SAAS,CAACG,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEE,WAA3B,EAAwCF,OAAxC,aAAwCA,OAAxC,uBAAwCA,OAAO,CAAEG,KAAjD,CADM,EAErB,CAACH,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,MAAV,EAAkBD,OAAlB,aAAkBA,OAAlB,uBAAkBA,OAAO,CAAEG,KAA3B,EAAkCH,OAAlC,aAAkCA,OAAlC,uBAAkCA,OAAO,CAAEE,WAA3C,CAFqB,CAAtB;EAKA,MAAME,MAAM,GAAGX,OAAO,CACrB,MACC,IAAIE,MAAJ,CAAW;IACVM,MAAM,EAAEA,MADE;IAEVI,OAAO,EAAEL,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEK,OAFR;IAGVC,QAAQ,EAAE,CAAAN,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEM,QAAT,KAAqB,IAAIV,QAAJ;EAHrB,CAAX,CAFoB,EAOrB,CAACI,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEM,QAAV,EAAoBN,OAApB,aAAoBA,OAApB,uBAAoBA,OAAO,CAAEK,OAA7B,EAAsCJ,MAAtC,CAPqB,CAAtB;EAUA,MAAMM,QAAQ,GAAGd,OAAO,CAAC,MAAM;IAC9B,MAAMe,MAAM,GAAGd,MAAM,CAACe,KAAP,CAAaV,KAAb,EAAoB;MAClCW,MAAM,EAAE,KAD0B;MAElCC,GAAG,EAAE,IAF6B;MAGlCC,SAAS,EAAEZ,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEY;IAHc,CAApB,CAAf;IAKA,OAAOR,MAAM,CAACS,KAAP,CAAaL,MAAb,CAAP;EACA,CAPuB,EAOrB,CAACT,KAAD,EAAQK,MAAR,CAPqB,CAAxB;EASA,OAAOG,QAAP;AACA,CA7BD;;AA+BA,eAAeT,WAAf"}
@@ -1,6 +1,8 @@
1
+ import { Tokenizer, marked } from "marked";
1
2
  import Markdown from "./lib/Markdown";
2
3
  import Renderer from "./lib/Renderer";
3
4
  import useMarkdown from "./hooks/useMarkdown";
4
- export { Renderer, useMarkdown };
5
+ const MarkedLexer = marked.lexer;
6
+ export { Renderer, useMarkdown, Tokenizer as MarkedTokenizer, MarkedLexer };
5
7
  export default Markdown;
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Markdown","Renderer","useMarkdown"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,OAAOA,QAAP,MAAqB,gBAArB;AACA,OAAOC,QAAP,MAAqB,gBAArB;AACA,OAAOC,WAAP,MAAyD,qBAAzD;AAaA,SAASD,QAAT,EAAmBC,WAAnB;AACA,eAAeF,QAAf"}
1
+ {"version":3,"names":["Tokenizer","marked","Markdown","Renderer","useMarkdown","MarkedLexer","lexer","MarkedTokenizer"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,MAApB,QAAkC,QAAlC;AACA,OAAOC,QAAP,MAAqB,gBAArB;AACA,OAAOC,QAAP,MAAqB,gBAArB;AACA,OAAOC,WAAP,MAAyD,qBAAzD;AAQA,MAAMC,WAAW,GAAGJ,MAAM,CAACK,KAA3B;AAUA,SAASH,QAAT,EAAmBC,WAAnB,EAAgCJ,SAAS,IAAIO,eAA7C,EAA8DF,WAA9D;AACA,eAAeH,QAAf"}
@@ -12,7 +12,8 @@ const Markdown = _ref => {
12
12
  theme,
13
13
  baseUrl,
14
14
  renderer,
15
- styles
15
+ styles,
16
+ tokenizer
16
17
  } = _ref;
17
18
  const colorScheme = useColorScheme();
18
19
  const rnElements = useMarkdown(value, {
@@ -20,7 +21,8 @@ const Markdown = _ref => {
20
21
  baseUrl,
21
22
  renderer,
22
23
  colorScheme,
23
- styles
24
+ styles,
25
+ tokenizer
24
26
  });
25
27
  const renderItem = useCallback(_ref2 => {
26
28
  let {
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useCallback","FlatList","useColorScheme","useMarkdown","colors","Markdown","value","flatListProps","theme","baseUrl","renderer","styles","colorScheme","rnElements","renderItem","item","keyExtractor","_","index","toString","backgroundColor","light","background","dark"],"sourceRoot":"../../../src","sources":["lib/Markdown.tsx"],"mappings":";;AAAA,OAAOA,KAAP,IACCC,IADD,EAECC,WAFD,QAKO,OALP;AAMA,SAASC,QAAT,EAAmBC,cAAnB,QAAyC,cAAzC;AAEA,OAAOC,WAAP,MAAwB,sBAAxB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;;AAEA,MAAMC,QAAQ,GAAG,QAOI;EAAA,IAPH;IACjBC,KADiB;IAEjBC,aAFiB;IAGjBC,KAHiB;IAIjBC,OAJiB;IAKjBC,QALiB;IAMjBC;EANiB,CAOG;EACpB,MAAMC,WAAW,GAAGV,cAAc,EAAlC;EAEA,MAAMW,UAAU,GAAGV,WAAW,CAACG,KAAD,EAAQ;IACrCE,KADqC;IAErCC,OAFqC;IAGrCC,QAHqC;IAIrCE,WAJqC;IAKrCD;EALqC,CAAR,CAA9B;EAQA,MAAMG,UAAU,GAAGd,WAAW,CAAC,SAAmC;IAAA,IAAlC;MAAEe;IAAF,CAAkC;IACjE,OAAOA,IAAP;EACA,CAF6B,EAE3B,EAF2B,CAA9B;EAIA,MAAMC,YAAY,GAAGhB,WAAW,CAC/B,CAACiB,CAAD,EAAeC,KAAf,KAAiCA,KAAK,CAACC,QAAN,EADF,EAE/B,EAF+B,CAAhC;EAKA,oBACC,oBAAC,QAAD;IACC,qBAAqB,EAAE,KADxB;IAEC,YAAY,EAAEH,YAFf;IAGC,mBAAmB,EAAE,CAHtB;IAIC,kBAAkB,EAAE,CAJrB;IAKC,KAAK,EAAE;MACNI,eAAe,EACdR,WAAW,KAAK,OAAhB,GACGR,MAAM,CAACiB,KAAP,CAAaC,UADhB,GAEGlB,MAAM,CAACmB,IAAP,CAAYD;IAJV;EALR,GAWKf,aAXL;IAYC,IAAI,EAAEM,UAZP;IAaC,UAAU,EAAEC;EAbb,GADD;AAiBA,CA5CD;;AA8CA,4BAAef,IAAI,CAACM,QAAD,CAAnB"}
1
+ {"version":3,"names":["React","memo","useCallback","FlatList","useColorScheme","useMarkdown","colors","Markdown","value","flatListProps","theme","baseUrl","renderer","styles","tokenizer","colorScheme","rnElements","renderItem","item","keyExtractor","_","index","toString","backgroundColor","light","background","dark"],"sourceRoot":"../../../src","sources":["lib/Markdown.tsx"],"mappings":";;AAAA,OAAOA,KAAP,IACCC,IADD,EAECC,WAFD,QAKO,OALP;AAMA,SAASC,QAAT,EAAmBC,cAAnB,QAAyC,cAAzC;AAEA,OAAOC,WAAP,MAAwB,sBAAxB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;;AAEA,MAAMC,QAAQ,GAAG,QAQI;EAAA,IARH;IACjBC,KADiB;IAEjBC,aAFiB;IAGjBC,KAHiB;IAIjBC,OAJiB;IAKjBC,QALiB;IAMjBC,MANiB;IAOjBC;EAPiB,CAQG;EACpB,MAAMC,WAAW,GAAGX,cAAc,EAAlC;EAEA,MAAMY,UAAU,GAAGX,WAAW,CAACG,KAAD,EAAQ;IACrCE,KADqC;IAErCC,OAFqC;IAGrCC,QAHqC;IAIrCG,WAJqC;IAKrCF,MALqC;IAMrCC;EANqC,CAAR,CAA9B;EASA,MAAMG,UAAU,GAAGf,WAAW,CAAC,SAAmC;IAAA,IAAlC;MAAEgB;IAAF,CAAkC;IACjE,OAAOA,IAAP;EACA,CAF6B,EAE3B,EAF2B,CAA9B;EAIA,MAAMC,YAAY,GAAGjB,WAAW,CAC/B,CAACkB,CAAD,EAAeC,KAAf,KAAiCA,KAAK,CAACC,QAAN,EADF,EAE/B,EAF+B,CAAhC;EAKA,oBACC,oBAAC,QAAD;IACC,qBAAqB,EAAE,KADxB;IAEC,YAAY,EAAEH,YAFf;IAGC,mBAAmB,EAAE,CAHtB;IAIC,kBAAkB,EAAE,CAJrB;IAKC,KAAK,EAAE;MACNI,eAAe,EACdR,WAAW,KAAK,OAAhB,GACGT,MAAM,CAACkB,KAAP,CAAaC,UADhB,GAEGnB,MAAM,CAACoB,IAAP,CAAYD;IAJV;EALR,GAWKhB,aAXL;IAYC,IAAI,EAAEO,UAZP;IAaC,UAAU,EAAEC;EAbb,GADD;AAiBA,CA9CD;;AAgDA,4BAAehB,IAAI,CAACM,QAAD,CAAnB"}
@@ -30,11 +30,6 @@ class Parser {
30
30
 
31
31
  _parseToken(token, styles) {
32
32
  switch (token.type) {
33
- case "space":
34
- {
35
- return null;
36
- }
37
-
38
33
  case "paragraph":
39
34
  {
40
35
  const children = this.getNormalizedSiblingNodesForBlockAndInlineTokens(token.tokens, this.styles.text);
@@ -192,9 +187,15 @@ class Parser {
192
187
  return this.renderer.table(header, rows, this.styles.table, this.styles.tableRow, this.styles.tableCell);
193
188
  }
194
189
 
190
+ case "custom":
191
+ {
192
+ const children = this._parse(token.tokens ?? []);
193
+
194
+ return this.renderer.custom(token.identifier, token.text, token.raw, children, token.args);
195
+ }
196
+
195
197
  default:
196
198
  {
197
- console.warn(`react-native-marked: token with '${token.type}' type was not found.`);
198
199
  return null;
199
200
  }
200
201
  }
@@ -211,7 +212,7 @@ class Parser {
211
212
  */
212
213
  if (t.type === "image" || t.type === "link" && t.tokens && t.tokens[0] && t.tokens[0].type === "image") {
213
214
  // Render existing inline tokens in the queue
214
- const parsed = this.parse(tokenRenderQueue);
215
+ const parsed = this._parse(tokenRenderQueue);
215
216
 
216
217
  if (parsed.length > 0) {
217
218
  siblingNodes.push(this.renderer.text(parsed, textStyle));
@@ -1 +1 @@
1
- {"version":3,"names":["getValidURL","getTableColAlignmentStyle","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","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","href","image","title","boldStyle","strong","italicStyle","codespan","br","strikethroughStyle","strikethrough","del","raw","console","warn","html","header","row","i","align","rows","cols","col","table","tableRow","tableCell","textStyle","tokenRenderQueue","siblingNodes","forEach","t","parsed","push","imageToken","linkImage"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["getValidURL","getTableColAlignmentStyle","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","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","href","image","title","boldStyle","strong","italicStyle","codespan","br","strikethroughStyle","strikethrough","del","raw","console","warn","html","header","row","i","align","rows","cols","col","table","tableRow","tableCell","custom","identifier","args","textStyle","tokenRenderQueue","siblingNodes","forEach","t","parsed","push","imageToken","linkImage"],"sourceRoot":"../../../src","sources":["lib/Parser.tsx"],"mappings":"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"}
@@ -38,10 +38,7 @@ class Renderer {
38
38
  horizontal: true,
39
39
  key: this.getKey(),
40
40
  contentContainerStyle: containerStyle
41
- }, /*#__PURE__*/React.createElement(Text, {
42
- selectable: true,
43
- style: textStyle
44
- }, text));
41
+ }, /*#__PURE__*/React.createElement(View, null, this.getTextNode(text, textStyle)));
45
42
  }
46
43
 
47
44
  hr(styles) {
@@ -174,6 +171,10 @@ class Renderer {
174
171
  })));
175
172
  }
176
173
 
174
+ custom(_identifier, _text, _raw, _children, _args) {
175
+ return null;
176
+ }
177
+
177
178
  getKey() {
178
179
  return this.slugger.slug(this.slugPrefix);
179
180
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","ScrollView","View","Text","TouchableHighlight","Dimensions","MarkedList","Disc","Decimal","Slugger","Table","Cell","TableWrapper","MDImage","onLinkPress","getTableWidthArr","MDSvg","Renderer","slugPrefix","constructor","slugger","width","get","windowWidth","paragraph","children","styles","getViewNode","blockquote","getBlockquoteNode","heading","text","getTextNode","code","_language","containerStyle","textStyle","getKey","hr","listItem","list","ordered","li","listStyle","startIndex","map","node","escape","link","href","image","uri","alt","style","key","endsWith","strong","em","codespan","br","del","html","linkImage","imageUrl","imageNode","table","header","rows","tableStyle","rowStyle","cellStyle","widthArr","length","borderWidth","borderColor","tableStyleRest","headerCol","index","rowData","cellData","cellIndex","slug"],"sourceRoot":"../../../src","sources":["lib/Renderer.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","ScrollView","View","Text","TouchableHighlight","Dimensions","MarkedList","Disc","Decimal","Slugger","Table","Cell","TableWrapper","MDImage","onLinkPress","getTableWidthArr","MDSvg","Renderer","slugPrefix","constructor","slugger","width","get","windowWidth","paragraph","children","styles","getViewNode","blockquote","getBlockquoteNode","heading","text","getTextNode","code","_language","containerStyle","textStyle","getKey","hr","listItem","list","ordered","li","listStyle","startIndex","map","node","escape","link","href","image","uri","alt","style","key","endsWith","strong","em","codespan","br","del","html","linkImage","imageUrl","imageNode","table","header","rows","tableStyle","rowStyle","cellStyle","widthArr","length","borderWidth","borderColor","tableStyleRest","headerCol","index","rowData","cellData","cellIndex","custom","_identifier","_text","_raw","_children","_args","slug"],"sourceRoot":"../../../src","sources":["lib/Renderer.tsx"],"mappings":"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"}
@@ -1,13 +1,15 @@
1
1
  import { type ReactNode } from "react";
2
+ import { Tokenizer } from "marked";
2
3
  import type { MarkedStyles, UserTheme } from "./../theme/types";
3
4
  import { type ColorSchemeName } from "react-native";
4
- import type { RendererInterface } from "../lib/types";
5
+ import type { CustomToken, RendererInterface } from "../lib/types";
5
6
  export interface useMarkdownHookOptions {
6
7
  colorScheme?: ColorSchemeName;
7
8
  renderer?: RendererInterface;
8
9
  theme?: UserTheme;
9
10
  styles?: MarkedStyles;
10
11
  baseUrl?: string;
12
+ tokenizer?: Tokenizer<CustomToken>;
11
13
  }
12
14
  declare const useMarkdown: (value: string, options?: useMarkdownHookOptions) => ReactNode[];
13
15
  export default useMarkdown;
@@ -1 +1 @@
1
- {"version":3,"file":"useMarkdown.d.ts","sourceRoot":"","sources":["../../../src/hooks/useMarkdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,sBAAsB;IACtC,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,QAAA,MAAM,WAAW,UACT,MAAM,YACH,sBAAsB,KAC9B,SAAS,EAsBX,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"useMarkdown.d.ts","sourceRoot":"","sources":["../../../src/hooks/useMarkdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEnE,MAAM,WAAW,sBAAsB;IACtC,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;CACnC;AAED,QAAA,MAAM,WAAW,UACT,MAAM,YACH,sBAAsB,KAC9B,SAAS,EA0BX,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,8 +1,10 @@
1
+ import { Tokenizer, marked } from "marked";
1
2
  import Markdown from "./lib/Markdown";
2
3
  import Renderer from "./lib/Renderer";
3
4
  import useMarkdown, { type useMarkdownHookOptions } from "./hooks/useMarkdown";
4
- import type { MarkdownProps, ParserOptions, RendererInterface } from "./lib/types";
5
- export type { MarkdownProps, ParserOptions, RendererInterface, useMarkdownHookOptions, };
6
- export { Renderer, useMarkdown };
5
+ import type { MarkdownProps, ParserOptions, RendererInterface, CustomToken } from "./lib/types";
6
+ declare const MarkedLexer: typeof marked.lexer;
7
+ export type { MarkdownProps, ParserOptions, RendererInterface, useMarkdownHookOptions, CustomToken, };
8
+ export { Renderer, useMarkdown, Tokenizer as MarkedTokenizer, MarkedLexer };
7
9
  export default Markdown;
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,WAAW,EAAE,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,sBAAsB,GACtB,CAAC;AACF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AACjC,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,WAAW,EAAE,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,MAAM,aAAa,CAAC;AAErB,QAAA,MAAM,WAAW,qBAAe,CAAC;AAEjC,YAAY,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,GACX,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,IAAI,eAAe,EAAE,WAAW,EAAE,CAAC;AAC5E,eAAe,QAAQ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
2
  import type { MarkdownProps } from "./types";
3
- declare const _default: React.MemoExoticComponent<({ value, flatListProps, theme, baseUrl, renderer, styles, }: MarkdownProps) => React.JSX.Element>;
3
+ declare const _default: React.MemoExoticComponent<({ value, flatListProps, theme, baseUrl, renderer, styles, tokenizer, }: MarkdownProps) => React.JSX.Element>;
4
4
  export default _default;
5
5
  //# sourceMappingURL=Markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../../src/lib/Markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAKN,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AAkD7C,wBAA8B"}
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../../src/lib/Markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAKN,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AAoD7C,wBAA8B"}
@@ -1,13 +1,12 @@
1
1
  import type { ReactNode } from "react";
2
- import type { marked } from "marked";
3
- import type { ParserOptions } from "./types";
2
+ import type { ParserOptions, Token } from "./types";
4
3
  declare class Parser {
5
4
  private renderer;
6
5
  private styles;
7
6
  private headingStylesMap;
8
7
  private baseUrl;
9
8
  constructor(options: ParserOptions);
10
- parse(tokens: marked.Token[]): ReactNode[];
9
+ parse(tokens: Token[]): ReactNode[];
11
10
  private _parse;
12
11
  private _parseToken;
13
12
  private getNormalizedSiblingNodesForBlockAndInlineTokens;
@@ -1 +1 @@
1
- {"version":3,"file":"Parser.d.ts","sourceRoot":"","sources":["../../../src/lib/Parser.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAqB,aAAa,EAAE,MAAM,SAAS,CAAC;AAIhE,cAAM,MAAM;IACX,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,aAAa;IAclC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE;IAI5B,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,WAAW;IAkLnB,OAAO,CAAC,gDAAgD;CAsDxD;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Parser.d.ts","sourceRoot":"","sources":["../../../src/lib/Parser.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAqB,aAAa,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIvE,cAAM,MAAM;IACX,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,aAAa;IAclC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE;IAIrB,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,WAAW;IAsLnB,OAAO,CAAC,gDAAgD;CAsDxD;AAED,eAAe,MAAM,CAAC"}
@@ -25,6 +25,7 @@ declare class Renderer implements RendererInterface {
25
25
  html(text: string | ReactNode[], styles?: TextStyle): ReactNode;
26
26
  linkImage(href: string, imageUrl: string, alt?: string, style?: ImageStyle): ReactNode;
27
27
  table(header: ReactNode[][], rows: ReactNode[][][], tableStyle?: ViewStyle, rowStyle?: ViewStyle, cellStyle?: ViewStyle): React.ReactNode;
28
+ custom(_identifier: string, _text: string, _raw: string, _children: ReactNode[], _args: Record<string, unknown>): ReactNode;
28
29
  getKey(): string;
29
30
  private getTextNode;
30
31
  private getViewNode;
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../../src/lib/Renderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../../src/lib/Renderer.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { FlatListProps, ViewStyle, TextStyle, ImageStyle } from "react-native";
3
3
  import type { MarkedStyles, UserTheme } from "./../theme/types";
4
+ import { Tokenizer as MarkedTokenizer, marked } from "marked";
4
5
  export interface ParserOptions {
5
6
  styles?: MarkedStyles;
6
7
  baseUrl?: string;
@@ -10,6 +11,7 @@ export interface MarkdownProps extends Partial<ParserOptions> {
10
11
  value: string;
11
12
  flatListProps?: Omit<FlatListProps<ReactNode>, "data" | "renderItem" | "horizontal">;
12
13
  theme?: UserTheme;
14
+ tokenizer?: MarkedTokenizer<CustomToken>;
13
15
  }
14
16
  export type TableColAlignment = "center" | "left" | "right" | null;
15
17
  export interface RendererInterface {
@@ -32,5 +34,15 @@ export interface RendererInterface {
32
34
  html(text: string | ReactNode[], styles?: TextStyle): ReactNode;
33
35
  linkImage(href: string, imageUrl: string, alt?: string, style?: ImageStyle): ReactNode;
34
36
  table(header: ReactNode[][], rows: ReactNode[][][], tableStyle?: ViewStyle, rowStyle?: ViewStyle, cellStyle?: ViewStyle): ReactNode;
37
+ custom(identifier: string, text: string, raw: string, children: ReactNode[], args?: Record<string, unknown>): ReactNode;
35
38
  }
39
+ export interface CustomToken {
40
+ type: "custom";
41
+ identifier: string;
42
+ raw: string;
43
+ text: string;
44
+ tokens?: Token[];
45
+ args?: Record<string, unknown>;
46
+ }
47
+ export type Token = marked.Tokens.Space | marked.Tokens.Code | marked.Tokens.Heading | marked.Tokens.Table | marked.Tokens.Hr | marked.Tokens.Blockquote | marked.Tokens.List | marked.Tokens.ListItem | marked.Tokens.Paragraph | marked.Tokens.HTML | marked.Tokens.Text | marked.Tokens.Def | marked.Tokens.Escape | marked.Tokens.Tag | marked.Tokens.Image | marked.Tokens.Link | marked.Tokens.Strong | marked.Tokens.Em | marked.Tokens.Codespan | marked.Tokens.Br | marked.Tokens.Del | CustomToken;
36
48
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-marked",
3
- "version": "4.1.1",
3
+ "version": "5.0.0-rc.1",
4
4
  "description": "Markdown renderer for React Native powered by marked.js",
5
5
  "main": "dist/commonjs/index",
6
6
  "module": "dist/module/index",
@@ -52,22 +52,22 @@
52
52
  "@babel/core": "7.21.8",
53
53
  "@babel/preset-env": "7.21.5",
54
54
  "@commitlint/config-conventional": "17.6.3",
55
- "@evilmartians/lefthook": "1.4.0",
55
+ "@evilmartians/lefthook": "1.4.1",
56
56
  "@release-it/conventional-changelog": "5.1.1",
57
57
  "@testing-library/jest-native": "5.4.2",
58
58
  "@testing-library/react-native": "12.1.2",
59
59
  "@types/jest": "29.5.1",
60
60
  "@types/marked": "4.3.1",
61
- "@types/node": "18.16.13",
62
- "@types/react": "18.2.6",
63
- "@types/react-native": "0.72.0",
61
+ "@types/node": "18.16.15",
62
+ "@types/react": "18.2.7",
63
+ "@types/react-native": "0.72.2",
64
64
  "@types/react-native-table-component": "1.2.4",
65
65
  "@types/svg-parser": "^2.0.3",
66
66
  "commitlint": "17.6.3",
67
67
  "danger": "11.2.6",
68
68
  "jest": "29.5.0",
69
69
  "jest-environment-jsdom": "29.5.0",
70
- "metro-react-native-babel-preset": "0.76.4",
70
+ "metro-react-native-babel-preset": "0.76.5",
71
71
  "pod-install": "0.1.38",
72
72
  "postinstall-postinstall": "2.1.0",
73
73
  "react": "18.2.0",
@@ -163,7 +163,6 @@
163
163
  "marked": "4.3.0",
164
164
  "react-native-svg": "13.9.0",
165
165
  "react-native-table-component": "1.2.2",
166
- "svg-parser": "^2.0.4",
167
- "svgps": "0.8.0"
166
+ "svg-parser": "2.0.4"
168
167
  }
169
168
  }
@@ -1,11 +1,11 @@
1
1
  import { useMemo, type ReactNode } from "react";
2
- import { marked } from "marked";
2
+ import { Tokenizer, marked } from "marked";
3
3
  import type { MarkedStyles, UserTheme } from "./../theme/types";
4
4
  import Parser from "../lib/Parser";
5
5
  import Renderer from "../lib/Renderer";
6
6
  import getStyles from "./../theme/styles";
7
7
  import { type ColorSchemeName } from "react-native";
8
- import type { RendererInterface } from "../lib/types";
8
+ import type { CustomToken, RendererInterface } from "../lib/types";
9
9
 
10
10
  export interface useMarkdownHookOptions {
11
11
  colorScheme?: ColorSchemeName;
@@ -13,6 +13,7 @@ export interface useMarkdownHookOptions {
13
13
  theme?: UserTheme;
14
14
  styles?: MarkedStyles;
15
15
  baseUrl?: string;
16
+ tokenizer?: Tokenizer<CustomToken>;
16
17
  }
17
18
 
18
19
  const useMarkdown = (
@@ -35,7 +36,11 @@ const useMarkdown = (
35
36
  );
36
37
 
37
38
  const elements = useMemo(() => {
38
- const tokens = marked.lexer(value, { mangle: false, gfm: true });
39
+ const tokens = marked.lexer(value, {
40
+ mangle: false,
41
+ gfm: true,
42
+ tokenizer: options?.tokenizer as Tokenizer<never>,
43
+ });
39
44
  return parser.parse(tokens);
40
45
  }, [value, parser]);
41
46
 
package/src/index.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { Tokenizer, marked } from "marked";
1
2
  import Markdown from "./lib/Markdown";
2
3
  import Renderer from "./lib/Renderer";
3
4
  import useMarkdown, { type useMarkdownHookOptions } from "./hooks/useMarkdown";
@@ -5,13 +6,18 @@ import type {
5
6
  MarkdownProps,
6
7
  ParserOptions,
7
8
  RendererInterface,
9
+ CustomToken,
8
10
  } from "./lib/types";
9
11
 
12
+ const MarkedLexer = marked.lexer;
13
+
10
14
  export type {
11
15
  MarkdownProps,
12
16
  ParserOptions,
13
17
  RendererInterface,
14
18
  useMarkdownHookOptions,
19
+ CustomToken,
15
20
  };
16
- export { Renderer, useMarkdown };
21
+
22
+ export { Renderer, useMarkdown, Tokenizer as MarkedTokenizer, MarkedLexer };
17
23
  export default Markdown;
@@ -16,6 +16,7 @@ const Markdown = ({
16
16
  baseUrl,
17
17
  renderer,
18
18
  styles,
19
+ tokenizer,
19
20
  }: MarkdownProps) => {
20
21
  const colorScheme = useColorScheme();
21
22
 
@@ -25,6 +26,7 @@ const Markdown = ({
25
26
  renderer,
26
27
  colorScheme,
27
28
  styles,
29
+ tokenizer,
28
30
  });
29
31
 
30
32
  const renderItem = useCallback(({ item }: { item: ReactNode }) => {
@@ -2,7 +2,7 @@ import type { ReactNode } from "react";
2
2
  import type { TextStyle, ViewStyle, ImageStyle } from "react-native";
3
3
  import type { marked } from "marked";
4
4
  import type { MarkedStyles } from "../theme/types";
5
- import type { RendererInterface, ParserOptions } from "./types";
5
+ import type { RendererInterface, ParserOptions, Token } from "./types";
6
6
  import { getValidURL } from "./../utils/url";
7
7
  import { getTableColAlignmentStyle } from "./../utils/table";
8
8
 
@@ -26,14 +26,11 @@ class Parser {
26
26
  };
27
27
  }
28
28
 
29
- parse(tokens: marked.Token[]) {
29
+ parse(tokens: Token[]) {
30
30
  return this._parse(tokens);
31
31
  }
32
32
 
33
- private _parse(
34
- tokens: marked.Token[],
35
- styles?: ViewStyle | TextStyle | ImageStyle,
36
- ) {
33
+ private _parse(tokens: Token[], styles?: ViewStyle | TextStyle | ImageStyle) {
37
34
  const elements: ReactNode[] = tokens.map((token) => {
38
35
  return this._parseToken(token, styles);
39
36
  });
@@ -41,13 +38,10 @@ class Parser {
41
38
  }
42
39
 
43
40
  private _parseToken(
44
- token: marked.Token,
41
+ token: Token,
45
42
  styles?: ViewStyle | TextStyle | ImageStyle,
46
43
  ): ReactNode {
47
44
  switch (token.type) {
48
- case "space": {
49
- return null;
50
- }
51
45
  case "paragraph": {
52
46
  const children = this.getNormalizedSiblingNodesForBlockAndInlineTokens(
53
47
  token.tokens,
@@ -209,20 +203,27 @@ class Parser {
209
203
  this.styles.tableCell,
210
204
  );
211
205
  }
212
- default: {
213
- console.warn(
214
- `react-native-marked: token with '${token.type}' type was not found.`,
206
+ case "custom": {
207
+ const children = this._parse(token.tokens ?? []);
208
+ return this.renderer.custom(
209
+ token.identifier,
210
+ token.text,
211
+ token.raw,
212
+ children,
213
+ token.args,
215
214
  );
215
+ }
216
+ default: {
216
217
  return null;
217
218
  }
218
219
  }
219
220
  }
220
221
 
221
222
  private getNormalizedSiblingNodesForBlockAndInlineTokens(
222
- tokens: marked.Token[],
223
+ tokens: Token[],
223
224
  textStyle?: TextStyle,
224
225
  ): ReactNode[] {
225
- let tokenRenderQueue: marked.Token[] = [];
226
+ let tokenRenderQueue: Token[] = [];
226
227
  const siblingNodes: ReactNode[] = [];
227
228
  tokens.forEach((t) => {
228
229
  /**
@@ -238,7 +239,7 @@ class Parser {
238
239
  t.tokens[0].type === "image")
239
240
  ) {
240
241
  // Render existing inline tokens in the queue
241
- const parsed = this.parse(tokenRenderQueue);
242
+ const parsed = this._parse(tokenRenderQueue);
242
243
  if (parsed.length > 0) {
243
244
  siblingNodes.push(this.renderer.text(parsed, textStyle));
244
245
  }
@@ -54,9 +54,12 @@ class Renderer implements RendererInterface {
54
54
  key={this.getKey()}
55
55
  contentContainerStyle={containerStyle}
56
56
  >
57
- <Text selectable style={textStyle}>
58
- {text}
59
- </Text>
57
+ {/*
58
+ Wrapped in View node to avoid the following error
59
+ Error: Cannot add a child that doesn't have a YogaNode to a parent without a measure function!
60
+ ref: https://github.com/facebook/react-native/issues/18773
61
+ */}
62
+ <View>{this.getTextNode(text, textStyle)}</View>
60
63
  </ScrollView>
61
64
  );
62
65
  }
@@ -213,6 +216,16 @@ class Renderer implements RendererInterface {
213
216
  );
214
217
  }
215
218
 
219
+ custom(
220
+ _identifier: string,
221
+ _text: string,
222
+ _raw: string,
223
+ _children: ReactNode[],
224
+ _args: Record<string, unknown>,
225
+ ): ReactNode {
226
+ return null;
227
+ }
228
+
216
229
  getKey(): string {
217
230
  return this.slugger.slug(this.slugPrefix);
218
231
  }
package/src/lib/types.ts CHANGED
@@ -6,6 +6,7 @@ import type {
6
6
  ImageStyle,
7
7
  } from "react-native";
8
8
  import type { MarkedStyles, UserTheme } from "./../theme/types";
9
+ import { Tokenizer as MarkedTokenizer, marked } from "marked";
9
10
 
10
11
  export interface ParserOptions {
11
12
  styles?: MarkedStyles;
@@ -20,6 +21,7 @@ export interface MarkdownProps extends Partial<ParserOptions> {
20
21
  "data" | "renderItem" | "horizontal"
21
22
  >;
22
23
  theme?: UserTheme;
24
+ tokenizer?: MarkedTokenizer<CustomToken>;
23
25
  }
24
26
 
25
27
  export type TableColAlignment = "center" | "left" | "right" | null;
@@ -70,4 +72,44 @@ export interface RendererInterface {
70
72
  rowStyle?: ViewStyle,
71
73
  cellStyle?: ViewStyle,
72
74
  ): ReactNode;
75
+ custom(
76
+ identifier: string,
77
+ text: string,
78
+ raw: string,
79
+ children: ReactNode[],
80
+ args?: Record<string, unknown>,
81
+ ): ReactNode;
73
82
  }
83
+
84
+ export interface CustomToken {
85
+ type: "custom";
86
+ identifier: string;
87
+ raw: string;
88
+ text: string;
89
+ tokens?: Token[];
90
+ args?: Record<string, unknown>;
91
+ }
92
+
93
+ export type Token =
94
+ | marked.Tokens.Space
95
+ | marked.Tokens.Code
96
+ | marked.Tokens.Heading
97
+ | marked.Tokens.Table
98
+ | marked.Tokens.Hr
99
+ | marked.Tokens.Blockquote
100
+ | marked.Tokens.List
101
+ | marked.Tokens.ListItem
102
+ | marked.Tokens.Paragraph
103
+ | marked.Tokens.HTML
104
+ | marked.Tokens.Text
105
+ | marked.Tokens.Def
106
+ | marked.Tokens.Escape
107
+ | marked.Tokens.Tag
108
+ | marked.Tokens.Image
109
+ | marked.Tokens.Link
110
+ | marked.Tokens.Strong
111
+ | marked.Tokens.Em
112
+ | marked.Tokens.Codespan
113
+ | marked.Tokens.Br
114
+ | marked.Tokens.Del
115
+ | CustomToken;