react-native-nitro-markdown 0.5.2 → 0.5.4

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 (178) hide show
  1. package/README.md +311 -669
  2. package/android/CMakeLists.txt +8 -1
  3. package/android/build.gradle +9 -2
  4. package/android/consumer-rules.pro +31 -0
  5. package/android/gradle.properties +2 -0
  6. package/android/src/main/java/com/margelo/nitro/com/nitromarkdown/HybridMarkdownSession.kt +68 -22
  7. package/android/src/main/java/com/nitromarkdown/NitroMarkdownPackage.kt +6 -18
  8. package/cpp/bindings/HybridMarkdownParser.cpp +40 -12
  9. package/cpp/bindings/HybridMarkdownParser.hpp +4 -4
  10. package/cpp/bindings/HybridMarkdownSession.cpp +2 -0
  11. package/cpp/core/MD4CParser.cpp +147 -86
  12. package/cpp/core/MarkdownSessionCore.cpp +2 -0
  13. package/cpp/core/MarkdownTypes.hpp +1 -1
  14. package/ios/HybridMarkdownSession.swift +89 -46
  15. package/lib/commonjs/headless.js +34 -8
  16. package/lib/commonjs/headless.js.map +1 -1
  17. package/lib/commonjs/index.js +48 -38
  18. package/lib/commonjs/index.js.map +1 -1
  19. package/lib/commonjs/markdown-stream.js +1 -1
  20. package/lib/commonjs/markdown-stream.js.map +1 -1
  21. package/lib/commonjs/markdown.js +57 -16
  22. package/lib/commonjs/markdown.js.map +1 -1
  23. package/lib/commonjs/renderers/blockquote.js +15 -13
  24. package/lib/commonjs/renderers/blockquote.js.map +1 -1
  25. package/lib/commonjs/renderers/code.js +58 -54
  26. package/lib/commonjs/renderers/code.js.map +1 -1
  27. package/lib/commonjs/renderers/heading.js +48 -46
  28. package/lib/commonjs/renderers/heading.js.map +1 -1
  29. package/lib/commonjs/renderers/horizontal-rule.js +10 -8
  30. package/lib/commonjs/renderers/horizontal-rule.js.map +1 -1
  31. package/lib/commonjs/renderers/image.js +18 -4
  32. package/lib/commonjs/renderers/image.js.map +1 -1
  33. package/lib/commonjs/renderers/link.js +7 -2
  34. package/lib/commonjs/renderers/link.js.map +1 -1
  35. package/lib/commonjs/renderers/list.js +75 -68
  36. package/lib/commonjs/renderers/list.js.map +1 -1
  37. package/lib/commonjs/renderers/math.js +8 -5
  38. package/lib/commonjs/renderers/math.js.map +1 -1
  39. package/lib/commonjs/renderers/paragraph.js +15 -13
  40. package/lib/commonjs/renderers/paragraph.js.map +1 -1
  41. package/lib/commonjs/renderers/style-cache.js +14 -0
  42. package/lib/commonjs/renderers/style-cache.js.map +1 -0
  43. package/lib/commonjs/renderers/table/cell-content.js +1 -1
  44. package/lib/commonjs/renderers/table/cell-content.js.map +1 -1
  45. package/lib/commonjs/renderers/table/index.js +17 -6
  46. package/lib/commonjs/renderers/table/index.js.map +1 -1
  47. package/lib/commonjs/theme.js +7 -7
  48. package/lib/commonjs/theme.js.map +1 -1
  49. package/lib/commonjs/utils/code-highlight.js +24 -25
  50. package/lib/commonjs/utils/code-highlight.js.map +1 -1
  51. package/lib/module/headless.js +35 -7
  52. package/lib/module/headless.js.map +1 -1
  53. package/lib/module/index.js +1 -1
  54. package/lib/module/index.js.map +1 -1
  55. package/lib/module/markdown-stream.js +1 -1
  56. package/lib/module/markdown-stream.js.map +1 -1
  57. package/lib/module/markdown.js +58 -17
  58. package/lib/module/markdown.js.map +1 -1
  59. package/lib/module/renderers/blockquote.js +15 -13
  60. package/lib/module/renderers/blockquote.js.map +1 -1
  61. package/lib/module/renderers/code.js +58 -54
  62. package/lib/module/renderers/code.js.map +1 -1
  63. package/lib/module/renderers/heading.js +48 -46
  64. package/lib/module/renderers/heading.js.map +1 -1
  65. package/lib/module/renderers/horizontal-rule.js +10 -8
  66. package/lib/module/renderers/horizontal-rule.js.map +1 -1
  67. package/lib/module/renderers/image.js +19 -5
  68. package/lib/module/renderers/image.js.map +1 -1
  69. package/lib/module/renderers/link.js +7 -2
  70. package/lib/module/renderers/link.js.map +1 -1
  71. package/lib/module/renderers/list.js +75 -68
  72. package/lib/module/renderers/list.js.map +1 -1
  73. package/lib/module/renderers/math.js +8 -5
  74. package/lib/module/renderers/math.js.map +1 -1
  75. package/lib/module/renderers/paragraph.js +15 -13
  76. package/lib/module/renderers/paragraph.js.map +1 -1
  77. package/lib/module/renderers/style-cache.js +10 -0
  78. package/lib/module/renderers/style-cache.js.map +1 -0
  79. package/lib/module/renderers/table/cell-content.js +1 -1
  80. package/lib/module/renderers/table/cell-content.js.map +1 -1
  81. package/lib/module/renderers/table/index.js +17 -6
  82. package/lib/module/renderers/table/index.js.map +1 -1
  83. package/lib/module/theme.js +7 -7
  84. package/lib/module/theme.js.map +1 -1
  85. package/lib/module/utils/code-highlight.js +24 -25
  86. package/lib/module/utils/code-highlight.js.map +1 -1
  87. package/lib/typescript/commonjs/Markdown.nitro.d.ts +1 -0
  88. package/lib/typescript/commonjs/Markdown.nitro.d.ts.map +1 -1
  89. package/lib/typescript/commonjs/headless.d.ts +10 -2
  90. package/lib/typescript/commonjs/headless.d.ts.map +1 -1
  91. package/lib/typescript/commonjs/index.d.ts +3 -2
  92. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  93. package/lib/typescript/commonjs/markdown-stream.d.ts.map +1 -1
  94. package/lib/typescript/commonjs/markdown.d.ts +8 -3
  95. package/lib/typescript/commonjs/markdown.d.ts.map +1 -1
  96. package/lib/typescript/commonjs/renderers/blockquote.d.ts +1 -1
  97. package/lib/typescript/commonjs/renderers/blockquote.d.ts.map +1 -1
  98. package/lib/typescript/commonjs/renderers/code.d.ts.map +1 -1
  99. package/lib/typescript/commonjs/renderers/heading.d.ts +1 -1
  100. package/lib/typescript/commonjs/renderers/heading.d.ts.map +1 -1
  101. package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts +1 -1
  102. package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts.map +1 -1
  103. package/lib/typescript/commonjs/renderers/image.d.ts.map +1 -1
  104. package/lib/typescript/commonjs/renderers/link.d.ts.map +1 -1
  105. package/lib/typescript/commonjs/renderers/list.d.ts +1 -1
  106. package/lib/typescript/commonjs/renderers/list.d.ts.map +1 -1
  107. package/lib/typescript/commonjs/renderers/math.d.ts +1 -1
  108. package/lib/typescript/commonjs/renderers/math.d.ts.map +1 -1
  109. package/lib/typescript/commonjs/renderers/paragraph.d.ts +1 -1
  110. package/lib/typescript/commonjs/renderers/paragraph.d.ts.map +1 -1
  111. package/lib/typescript/commonjs/renderers/style-cache.d.ts +3 -0
  112. package/lib/typescript/commonjs/renderers/style-cache.d.ts.map +1 -0
  113. package/lib/typescript/commonjs/renderers/table/cell-content.d.ts +4 -3
  114. package/lib/typescript/commonjs/renderers/table/cell-content.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/renderers/table/index.d.ts.map +1 -1
  116. package/lib/typescript/commonjs/theme.d.ts.map +1 -1
  117. package/lib/typescript/commonjs/utils/code-highlight.d.ts +1 -1
  118. package/lib/typescript/commonjs/utils/code-highlight.d.ts.map +1 -1
  119. package/lib/typescript/module/Markdown.nitro.d.ts +1 -0
  120. package/lib/typescript/module/Markdown.nitro.d.ts.map +1 -1
  121. package/lib/typescript/module/headless.d.ts +10 -2
  122. package/lib/typescript/module/headless.d.ts.map +1 -1
  123. package/lib/typescript/module/index.d.ts +3 -2
  124. package/lib/typescript/module/index.d.ts.map +1 -1
  125. package/lib/typescript/module/markdown-stream.d.ts.map +1 -1
  126. package/lib/typescript/module/markdown.d.ts +8 -3
  127. package/lib/typescript/module/markdown.d.ts.map +1 -1
  128. package/lib/typescript/module/renderers/blockquote.d.ts +1 -1
  129. package/lib/typescript/module/renderers/blockquote.d.ts.map +1 -1
  130. package/lib/typescript/module/renderers/code.d.ts.map +1 -1
  131. package/lib/typescript/module/renderers/heading.d.ts +1 -1
  132. package/lib/typescript/module/renderers/heading.d.ts.map +1 -1
  133. package/lib/typescript/module/renderers/horizontal-rule.d.ts +1 -1
  134. package/lib/typescript/module/renderers/horizontal-rule.d.ts.map +1 -1
  135. package/lib/typescript/module/renderers/image.d.ts.map +1 -1
  136. package/lib/typescript/module/renderers/link.d.ts.map +1 -1
  137. package/lib/typescript/module/renderers/list.d.ts +1 -1
  138. package/lib/typescript/module/renderers/list.d.ts.map +1 -1
  139. package/lib/typescript/module/renderers/math.d.ts +1 -1
  140. package/lib/typescript/module/renderers/math.d.ts.map +1 -1
  141. package/lib/typescript/module/renderers/paragraph.d.ts +1 -1
  142. package/lib/typescript/module/renderers/paragraph.d.ts.map +1 -1
  143. package/lib/typescript/module/renderers/style-cache.d.ts +3 -0
  144. package/lib/typescript/module/renderers/style-cache.d.ts.map +1 -0
  145. package/lib/typescript/module/renderers/table/cell-content.d.ts +4 -3
  146. package/lib/typescript/module/renderers/table/cell-content.d.ts.map +1 -1
  147. package/lib/typescript/module/renderers/table/index.d.ts.map +1 -1
  148. package/lib/typescript/module/theme.d.ts.map +1 -1
  149. package/lib/typescript/module/utils/code-highlight.d.ts +1 -1
  150. package/lib/typescript/module/utils/code-highlight.d.ts.map +1 -1
  151. package/nitro.json +12 -3
  152. package/nitrogen/generated/android/NitroMarkdownOnLoad.cpp +2 -2
  153. package/nitrogen/generated/android/c++/JFunc_void.hpp +2 -2
  154. package/nitrogen/generated/android/c++/JFunc_void_double_double.hpp +2 -2
  155. package/nitrogen/generated/android/c++/JHybridMarkdownSessionSpec.hpp +2 -2
  156. package/nitrogen/generated/ios/NitroMarkdown+autolinking.rb +2 -0
  157. package/nitrogen/generated/shared/c++/ParserOptions.hpp +6 -2
  158. package/package.json +8 -6
  159. package/react-native-nitro-markdown.podspec +3 -0
  160. package/src/Markdown.nitro.ts +1 -0
  161. package/src/headless.ts +58 -8
  162. package/src/index.ts +16 -2
  163. package/src/markdown-stream.tsx +1 -0
  164. package/src/markdown.tsx +108 -23
  165. package/src/renderers/blockquote.tsx +22 -17
  166. package/src/renderers/code.tsx +76 -57
  167. package/src/renderers/heading.tsx +60 -54
  168. package/src/renderers/horizontal-rule.tsx +17 -12
  169. package/src/renderers/image.tsx +24 -5
  170. package/src/renderers/link.tsx +8 -2
  171. package/src/renderers/list.tsx +93 -74
  172. package/src/renderers/math.tsx +14 -5
  173. package/src/renderers/paragraph.tsx +22 -17
  174. package/src/renderers/style-cache.ts +14 -0
  175. package/src/renderers/table/cell-content.tsx +15 -4
  176. package/src/renderers/table/index.tsx +30 -13
  177. package/src/theme.ts +34 -14
  178. package/src/utils/code-highlight.ts +133 -44
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_blockquote","_code","_heading","_horizontalRule","_image","_link","_list","_math","_paragraph","_table","_theme","_jsxRuntime","baseStylesCache","WeakMap","parseAstCache","Map","MAX_PARSE_CACHE_ENTRIES","MAX_CACHEABLE_TEXT_LENGTH","isMarkdownNode","value","Reflect","get","warnInDev","message","error","__DEV__","runtimeConsole","globalThis","warn","cloneMarkdownNode","node","children","map","getParserOptionsKey","options","gfm","undefined","math","normalizeParserOptions","parseWithNativeParser","text","parseMarkdownWithOptions","parseMarkdown","getCachedParsedAst","length","cacheKey","cachedNode","delete","set","parsedNode","size","oldestCacheKey","keys","next","applyBeforeParsePlugins","markdown","plugins","onError","sorted","sort","a","b","priority","nextMarkdown","plugin","beforeParse","transformed","pluginLabel","name","Error","String","applyAfterParsePlugins","ast","nextAst","afterParse","Markdown","sourceAst","astTransform","renderers","theme","userTheme","styles","nodeStyles","stylingStrategy","style","onParsingInProgress","onParseComplete","onLinkPress","virtualize","virtualizationMinBlocks","virtualization","tableOptions","highlightCode","parserOptionGfm","parserOptionMath","parseResult","useMemo","markdownToParse","e","phase","parserOptions","parsedAst","parseError","useEffect","raw","getFlattenedText","base","minimalMarkdownTheme","defaultMarkdownTheme","mergeThemes","baseStyles","getBaseStyles","contextValue","topLevelBlocks","type","shouldVirtualizeBySetting","shouldVirtualize","keyExtractor","useCallback","index","beg","end","renderVirtualizedItem","item","jsx","NodeRenderer","depth","inListItem","View","container","Text","errorText","MarkdownContext","Provider","FlatList","data","renderItem","virtualizedList","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","removeClippedSubviews","showsVerticalScrollIndicator","exports","isInline","NodeRendererComponent","parentIsText","useMarkdownContext","renderChildren","childInListItem","childParentIsText","elements","currentInlineGroup","flushInlineGroup","hasMath","some","child","push","flexDirection","alignItems","flexWrap","flexShrink","n","idx","Wrapper","Fragment","wrapperProps","forEach","customRenderer","childrenRendered","baseProps","Renderer","enhancedProps","level","href","title","url","alt","content","getTextContent","language","ordered","start","checked","result","nodeStyleOverride","document","Heading","Paragraph","bold","italic","strikethrough","Link","Image","InlineCode","CodeBlock","Blockquote","HorizontalRule","mathContent","replace","trim","MathInline","MathBlock","List","ListItem","TaskListItem","TableRenderer","memo","previousProps","nextProps","cached","created","createBaseStyles","StyleSheet","create","flex","color","fontSize","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","colors","fontSizes","m","lineHeight","regular","fontWeight","fontStyle","textDecorationLine"],"sourceRoot":"../../src","sources":["markdown.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_blockquote","_code","_heading","_horizontalRule","_image","_link","_list","_math","_paragraph","_table","_theme","_jsxRuntime","hashString","str","hash","i","length","char","charCodeAt","ERROR_PHASE","PARSE","BEFORE_PLUGIN","AFTER_PLUGIN","safeOnError","onError","error","phase","pluginName","Error","String","callbackError","__DEV__","console","warn","baseStylesCache","WeakMap","parseAstCache","Map","MAX_PARSE_CACHE_ENTRIES","MAX_CACHEABLE_TEXT_LENGTH","EMPTY_RENDERERS","isMarkdownNode","value","Reflect","get","warnInDev","message","runtimeConsole","globalThis","cloneMarkdownNode","node","children","map","getParserOptionsKey","options","gfm","undefined","math","html","normalizeParserOptions","parseWithNativeParser","text","parseMarkdownWithOptions","parseMarkdown","getCachedParsedAst","cacheKey","cachedNode","delete","set","parsedNode","size","oldestCacheKey","keys","next","applyBeforeParsePlugins","markdown","plugins","sorted","sort","a","b","priority","nextMarkdown","plugin","beforeParse","transformed","pluginLabel","name","applyAfterParsePlugins","ast","nextAst","afterParse","Markdown","sourceAst","astTransform","renderers","theme","userTheme","styles","nodeStyles","stylingStrategy","style","onParsingInProgress","onParseComplete","onLinkPress","virtualize","virtualizationMinBlocks","virtualization","tableOptions","highlightCode","parserOptionGfm","parserOptionMath","parserOptionHtml","onErrorRef","useRef","current","parseResult","useMemo","markdownToParse","parserOptions","parsedAst","parseError","useEffect","raw","getFlattenedText","base","minimalMarkdownTheme","defaultMarkdownTheme","mergeThemes","baseStyles","getBaseStyles","contextValue","topLevelBlocks","type","shouldVirtualizeBySetting","shouldVirtualize","keyExtractor","useCallback","index","beg","end","renderVirtualizedItem","item","jsx","NodeRenderer","depth","inListItem","View","container","Text","errorText","MarkdownContext","Provider","FlatList","data","renderItem","virtualizedList","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","removeClippedSubviews","showsVerticalScrollIndicator","exports","isInline","NodeRendererComponent","parentIsText","useMarkdownContext","renderChildren","childInListItem","childParentIsText","elements","currentInlineGroup","flushInlineGroup","hasMath","some","child","push","flexDirection","alignItems","flexWrap","flexShrink","n","idx","Wrapper","Fragment","wrapperProps","forEach","customRenderer","childrenRendered","baseProps","Renderer","enhancedProps","level","href","title","url","alt","content","getTextContent","language","ordered","start","checked","result","nodeStyleOverride","document","Heading","Paragraph","bold","italic","strikethrough","Link","Image","InlineCode","CodeBlock","Blockquote","HorizontalRule","mathContent","replace","trim","MathInline","MathBlock","List","ListItem","TaskListItem","TableRenderer","memo","previousProps","nextProps","cached","created","createBaseStyles","StyleSheet","create","flex","color","fontSize","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","colors","fontSizes","m","lineHeight","regular","fontWeight","fontStyle","textDecorationLine"],"sourceRoot":"../../src","sources":["markdown.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Blockquote = void 0;
7
- var _react = require("react");
8
7
  var _reactNative = require("react-native");
8
+ var _styleCache = require("./style-cache.js");
9
9
  var _MarkdownContext = require("../MarkdownContext.js");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  const Blockquote = ({
@@ -15,22 +15,24 @@ const Blockquote = ({
15
15
  const {
16
16
  theme
17
17
  } = (0, _MarkdownContext.useMarkdownContext)();
18
- const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
19
- blockquote: {
20
- borderLeftWidth: 4,
21
- borderLeftColor: theme.colors.blockquote,
22
- paddingLeft: theme.spacing.l,
23
- marginVertical: theme.spacing.m,
24
- backgroundColor: theme.colors.surfaceLight,
25
- paddingVertical: theme.spacing.m,
26
- paddingRight: theme.spacing.m,
27
- borderRadius: theme.borderRadius.s
28
- }
29
- }), [theme]);
18
+ const styles = (0, _styleCache.getCachedStyles)(stylesCache, theme, createStyles);
30
19
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
31
20
  style: [styles.blockquote, style],
32
21
  children: children
33
22
  });
34
23
  };
35
24
  exports.Blockquote = Blockquote;
25
+ const stylesCache = new WeakMap();
26
+ const createStyles = theme => _reactNative.StyleSheet.create({
27
+ blockquote: {
28
+ borderLeftWidth: 4,
29
+ borderLeftColor: theme.colors.blockquote,
30
+ paddingLeft: theme.spacing.l,
31
+ marginVertical: theme.spacing.m,
32
+ backgroundColor: theme.colors.surfaceLight,
33
+ paddingVertical: theme.spacing.m,
34
+ paddingRight: theme.spacing.m,
35
+ borderRadius: theme.borderRadius.s
36
+ }
37
+ });
36
38
  //# sourceMappingURL=blockquote.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","Blockquote","children","style","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","blockquote","borderLeftWidth","borderLeftColor","colors","paddingLeft","spacing","l","marginVertical","m","backgroundColor","surfaceLight","paddingVertical","paddingRight","borderRadius","s","jsx","View","exports"],"sourceRoot":"../../../src","sources":["renderers/blockquote.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAOjD,MAAMI,UAA+B,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACtE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBC,UAAU,EAAE;MACVC,eAAe,EAAE,CAAC;MAClBC,eAAe,EAAER,KAAK,CAACS,MAAM,CAACH,UAAU;MACxCI,WAAW,EAAEV,KAAK,CAACW,OAAO,CAACC,CAAC;MAC5BC,cAAc,EAAEb,KAAK,CAACW,OAAO,CAACG,CAAC;MAC/BC,eAAe,EAAEf,KAAK,CAACS,MAAM,CAACO,YAAY;MAC1CC,eAAe,EAAEjB,KAAK,CAACW,OAAO,CAACG,CAAC;MAChCI,YAAY,EAAElB,KAAK,CAACW,OAAO,CAACG,CAAC;MAC7BK,YAAY,EAAEnB,KAAK,CAACmB,YAAY,CAACC;IACnC;EACF,CAAC,CAAC,EACJ,CAACpB,KAAK,CACR,CAAC;EAED,oBAAO,IAAAJ,WAAA,CAAAyB,GAAA,EAAC3B,YAAA,CAAA4B,IAAI;IAACvB,KAAK,EAAE,CAACG,MAAM,CAACI,UAAU,EAAEP,KAAK,CAAE;IAAAD,QAAA,EAAEA;EAAQ,CAAO,CAAC;AACnE,CAAC;AAACyB,OAAA,CAAA1B,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_styleCache","_MarkdownContext","_jsxRuntime","Blockquote","children","style","theme","useMarkdownContext","styles","getCachedStyles","stylesCache","createStyles","jsx","View","blockquote","exports","WeakMap","StyleSheet","create","borderLeftWidth","borderLeftColor","colors","paddingLeft","spacing","l","marginVertical","m","backgroundColor","surfaceLight","paddingVertical","paddingRight","borderRadius","s"],"sourceRoot":"../../../src","sources":["renderers/blockquote.tsx"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAQjD,MAAMI,UAA+B,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACtE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,2BAAe,EAACC,WAAW,EAAEJ,KAAK,EAAEK,YAAY,CAAC;EAEhE,oBAAO,IAAAT,WAAA,CAAAU,GAAA,EAACd,YAAA,CAAAe,IAAI;IAACR,KAAK,EAAE,CAACG,MAAM,CAACM,UAAU,EAAET,KAAK,CAAE;IAAAD,QAAA,EAAEA;EAAQ,CAAO,CAAC;AACnE,CAAC;AAACW,OAAA,CAAAZ,UAAA,GAAAA,UAAA;AAIF,MAAMO,WAAW,GAAG,IAAIM,OAAO,CAAkC,CAAC;AAElE,MAAML,YAAY,GAAIL,KAAoB,IACxCW,uBAAU,CAACC,MAAM,CAAC;EAChBJ,UAAU,EAAE;IACVK,eAAe,EAAE,CAAC;IAClBC,eAAe,EAAEd,KAAK,CAACe,MAAM,CAACP,UAAU;IACxCQ,WAAW,EAAEhB,KAAK,CAACiB,OAAO,CAACC,CAAC;IAC5BC,cAAc,EAAEnB,KAAK,CAACiB,OAAO,CAACG,CAAC;IAC/BC,eAAe,EAAErB,KAAK,CAACe,MAAM,CAACO,YAAY;IAC1CC,eAAe,EAAEvB,KAAK,CAACiB,OAAO,CAACG,CAAC;IAChCI,YAAY,EAAExB,KAAK,CAACiB,OAAO,CAACG,CAAC;IAC7BK,YAAY,EAAEzB,KAAK,CAACyB,YAAY,CAACC;EACnC;AACF,CAAC,CAAC","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.InlineCode = exports.CodeBlock = void 0;
7
7
  var _react = require("react");
8
8
  var _reactNative = require("react-native");
9
+ var _styleCache = require("./style-cache.js");
9
10
  var _headless = require("../headless.js");
10
11
  var _MarkdownContext = require("../MarkdownContext.js");
11
12
  var _codeHighlight = require("../utils/code-highlight.js");
@@ -20,42 +21,10 @@ const CodeBlock = ({
20
21
  const {
21
22
  theme
22
23
  } = ctx;
23
- const highlighter = ctx.highlightCode === true ? _codeHighlight.defaultHighlighter : typeof ctx.highlightCode === 'function' ? ctx.highlightCode : null;
24
+ const highlighter = ctx.highlightCode === true ? _codeHighlight.defaultHighlighter : typeof ctx.highlightCode === "function" ? ctx.highlightCode : null;
24
25
  const displayContent = content ?? (node ? (0, _headless.getTextContent)(node) : "");
25
- const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
26
- codeBlock: {
27
- backgroundColor: theme.colors.codeBackground,
28
- borderRadius: theme.borderRadius.m,
29
- padding: theme.spacing.l,
30
- marginVertical: theme.spacing.m,
31
- borderWidth: 1,
32
- borderColor: theme.colors.border
33
- },
34
- codeLanguage: {
35
- color: theme.colors.codeLanguage,
36
- fontSize: theme.fontSizes.xs,
37
- fontWeight: "600",
38
- marginBottom: theme.spacing.s,
39
- textTransform: "uppercase",
40
- letterSpacing: 0.5,
41
- fontFamily: theme.fontFamilies.mono,
42
- ...(_reactNative.Platform.OS === "android" && {
43
- includeFontPadding: false
44
- })
45
- },
46
- codeBlockText: {
47
- fontFamily: theme.fontFamilies.mono ?? _reactNative.Platform.select({
48
- ios: "Courier",
49
- android: "monospace"
50
- }),
51
- fontSize: theme.fontSizes.s,
52
- color: theme.colors.text,
53
- lineHeight: theme.fontSizes.s * 1.5,
54
- ...(_reactNative.Platform.OS === "android" && {
55
- includeFontPadding: false
56
- })
57
- }
58
- }), [theme]);
26
+ const highlightedTokens = (0, _react.useMemo)(() => highlighter && language ? highlighter(language, displayContent) : null, [displayContent, highlighter, language]);
27
+ const styles = (0, _styleCache.getCachedStyles)(codeBlockStylesCache, theme, createCodeStyles);
59
28
  const showLanguage = theme.showCodeLanguage && language;
60
29
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
61
30
  style: [styles.codeBlock, style],
@@ -66,10 +35,10 @@ const CodeBlock = ({
66
35
  horizontal: true,
67
36
  showsHorizontalScrollIndicator: false,
68
37
  bounces: false,
69
- children: highlighter && language ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
38
+ children: highlightedTokens ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
70
39
  style: styles.codeBlockText,
71
40
  selectable: true,
72
- children: highlighter(language, displayContent).map((token, i) => {
41
+ children: highlightedTokens.map((token, i) => {
73
42
  const tokenColor = ctx.theme.colors.codeTokenColors?.[token.type];
74
43
  return tokenColor ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
75
44
  style: {
@@ -99,27 +68,62 @@ const InlineCode = ({
99
68
  theme
100
69
  } = (0, _MarkdownContext.useMarkdownContext)();
101
70
  const displayContent = content ?? children ?? (node ? (0, _headless.getTextContent)(node) : "");
102
- const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
103
- codeInline: {
104
- fontFamily: theme.fontFamilies.mono ?? _reactNative.Platform.select({
105
- ios: "Courier",
106
- android: "monospace"
107
- }),
108
- fontSize: theme.fontSizes.s,
109
- color: theme.colors.code,
110
- backgroundColor: theme.colors.codeBackground,
111
- paddingHorizontal: theme.spacing.xs,
112
- paddingVertical: 2,
113
- borderRadius: theme.borderRadius.s,
114
- ...(_reactNative.Platform.OS === "android" && {
115
- includeFontPadding: false
116
- })
117
- }
118
- }), [theme]);
71
+ const styles = (0, _styleCache.getCachedStyles)(inlineCodeStylesCache, theme, createInlineStyles);
119
72
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
120
73
  style: [styles.codeInline, style],
121
74
  children: displayContent
122
75
  });
123
76
  };
124
77
  exports.InlineCode = InlineCode;
78
+ const codeBlockStylesCache = new WeakMap();
79
+ const inlineCodeStylesCache = new WeakMap();
80
+ const getMonoFontFamily = theme => theme.fontFamilies.mono ?? _reactNative.Platform.select({
81
+ ios: "Courier",
82
+ android: "monospace"
83
+ });
84
+ const createCodeStyles = theme => _reactNative.StyleSheet.create({
85
+ codeBlock: {
86
+ backgroundColor: theme.colors.codeBackground,
87
+ borderRadius: theme.borderRadius.m,
88
+ padding: theme.spacing.l,
89
+ marginVertical: theme.spacing.m,
90
+ borderWidth: 1,
91
+ borderColor: theme.colors.border
92
+ },
93
+ codeLanguage: {
94
+ color: theme.colors.codeLanguage,
95
+ fontSize: theme.fontSizes.xs,
96
+ fontWeight: "600",
97
+ marginBottom: theme.spacing.s,
98
+ textTransform: "uppercase",
99
+ letterSpacing: 0.5,
100
+ fontFamily: theme.fontFamilies.mono,
101
+ ...(_reactNative.Platform.OS === "android" && {
102
+ includeFontPadding: false
103
+ })
104
+ },
105
+ codeBlockText: {
106
+ fontFamily: getMonoFontFamily(theme),
107
+ fontSize: theme.fontSizes.s,
108
+ color: theme.colors.text,
109
+ lineHeight: theme.fontSizes.s * 1.5,
110
+ ...(_reactNative.Platform.OS === "android" && {
111
+ includeFontPadding: false
112
+ })
113
+ }
114
+ });
115
+ const createInlineStyles = theme => _reactNative.StyleSheet.create({
116
+ codeInline: {
117
+ fontFamily: getMonoFontFamily(theme),
118
+ fontSize: theme.fontSizes.s,
119
+ color: theme.colors.code,
120
+ backgroundColor: theme.colors.codeBackground,
121
+ paddingHorizontal: theme.spacing.xs,
122
+ paddingVertical: 2,
123
+ borderRadius: theme.borderRadius.s,
124
+ ...(_reactNative.Platform.OS === "android" && {
125
+ includeFontPadding: false
126
+ })
127
+ }
128
+ });
125
129
  //# sourceMappingURL=code.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_codeHighlight","_jsxRuntime","CodeBlock","language","content","node","style","ctx","useMarkdownContext","theme","highlighter","highlightCode","defaultHighlighter","displayContent","getTextContent","styles","useMemo","StyleSheet","create","codeBlock","backgroundColor","colors","codeBackground","borderRadius","m","padding","spacing","l","marginVertical","borderWidth","borderColor","border","codeLanguage","color","fontSize","fontSizes","xs","fontWeight","marginBottom","s","textTransform","letterSpacing","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","codeBlockText","select","ios","android","text","lineHeight","showLanguage","showCodeLanguage","jsxs","View","children","jsx","Text","ScrollView","horizontal","showsHorizontalScrollIndicator","bounces","selectable","map","token","i","tokenColor","codeTokenColors","type","exports","InlineCode","codeInline","code","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../src","sources":["renderers/code.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_styleCache","_headless","_MarkdownContext","_codeHighlight","_jsxRuntime","CodeBlock","language","content","node","style","ctx","useMarkdownContext","theme","highlighter","highlightCode","defaultHighlighter","displayContent","getTextContent","highlightedTokens","useMemo","styles","getCachedStyles","codeBlockStylesCache","createCodeStyles","showLanguage","showCodeLanguage","jsxs","View","codeBlock","children","jsx","Text","codeLanguage","ScrollView","horizontal","showsHorizontalScrollIndicator","bounces","codeBlockText","selectable","map","token","i","tokenColor","colors","codeTokenColors","type","color","text","exports","InlineCode","inlineCodeStylesCache","createInlineStyles","codeInline","WeakMap","getMonoFontFamily","fontFamilies","mono","Platform","select","ios","android","StyleSheet","create","backgroundColor","codeBackground","borderRadius","m","padding","spacing","l","marginVertical","borderWidth","borderColor","border","fontSize","fontSizes","xs","fontWeight","marginBottom","s","textTransform","letterSpacing","fontFamily","OS","includeFontPadding","lineHeight","code","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../src","sources":["renderers/code.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Heading = void 0;
7
- var _react = require("react");
8
7
  var _reactNative = require("react-native");
8
+ var _styleCache = require("./style-cache.js");
9
9
  var _MarkdownContext = require("../MarkdownContext.js");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  const ANDROID_SYSTEM_FONTS = new Set(["sans-serif", "sans-serif-medium", "sans-serif-light", "sans-serif-condensed", "sans-serif-thin", "serif", "monospace"]);
@@ -17,51 +17,7 @@ const Heading = ({
17
17
  const {
18
18
  theme
19
19
  } = (0, _MarkdownContext.useMarkdownContext)();
20
- const headingWeight = theme.headingWeight ?? (_reactNative.Platform.OS === "android" && theme.fontFamilies.heading && !ANDROID_SYSTEM_FONTS.has(theme.fontFamilies.heading) ? "normal" : "700");
21
- const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
22
- heading: {
23
- color: theme.colors.heading,
24
- fontWeight: headingWeight,
25
- marginTop: theme.spacing.xl,
26
- marginBottom: theme.spacing.m,
27
- fontFamily: theme.fontFamilies.heading,
28
- letterSpacing: -0.2,
29
- ...(_reactNative.Platform.OS === "android" && {
30
- includeFontPadding: false
31
- })
32
- },
33
- h1: {
34
- fontSize: theme.fontSizes.h1,
35
- lineHeight: theme.fontSizes.h1 * 1.3,
36
- borderBottomWidth: 1,
37
- borderBottomColor: theme.colors.border,
38
- paddingBottom: theme.spacing.s,
39
- letterSpacing: -0.6
40
- },
41
- h2: {
42
- fontSize: theme.fontSizes.h2,
43
- lineHeight: theme.fontSizes.h2 * 1.3,
44
- letterSpacing: -0.4
45
- },
46
- h3: {
47
- fontSize: theme.fontSizes.h3,
48
- lineHeight: theme.fontSizes.h3 * 1.3,
49
- letterSpacing: -0.2
50
- },
51
- h4: {
52
- fontSize: theme.fontSizes.h4,
53
- lineHeight: theme.fontSizes.h4 * 1.3
54
- },
55
- h5: {
56
- fontSize: theme.fontSizes.h5,
57
- lineHeight: theme.fontSizes.h5 * 1.3
58
- },
59
- h6: {
60
- fontSize: theme.fontSizes.h6,
61
- lineHeight: theme.fontSizes.h6 * 1.3,
62
- color: theme.colors.textMuted
63
- }
64
- }), [headingWeight, theme]);
20
+ const styles = (0, _styleCache.getCachedStyles)(stylesCache, theme, createStyles);
65
21
  const headingStyles = [styles.heading, level === 1 && styles.h1, level === 2 && styles.h2, level === 3 && styles.h3, level === 4 && styles.h4, level === 5 && styles.h5, level === 6 && styles.h6];
66
22
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
67
23
  style: [...headingStyles, style],
@@ -69,4 +25,50 @@ const Heading = ({
69
25
  });
70
26
  };
71
27
  exports.Heading = Heading;
28
+ const stylesCache = new WeakMap();
29
+ const getHeadingWeight = theme => theme.headingWeight ?? (_reactNative.Platform.OS === "android" && theme.fontFamilies.heading && !ANDROID_SYSTEM_FONTS.has(theme.fontFamilies.heading) ? "normal" : "700");
30
+ const createStyles = theme => _reactNative.StyleSheet.create({
31
+ heading: {
32
+ color: theme.colors.heading,
33
+ fontWeight: getHeadingWeight(theme),
34
+ marginTop: theme.spacing.xl,
35
+ marginBottom: theme.spacing.m,
36
+ fontFamily: theme.fontFamilies.heading,
37
+ letterSpacing: -0.2,
38
+ ...(_reactNative.Platform.OS === "android" && {
39
+ includeFontPadding: false
40
+ })
41
+ },
42
+ h1: {
43
+ fontSize: theme.fontSizes.h1,
44
+ lineHeight: theme.fontSizes.h1 * 1.3,
45
+ borderBottomWidth: 1,
46
+ borderBottomColor: theme.colors.border,
47
+ paddingBottom: theme.spacing.s,
48
+ letterSpacing: -0.6
49
+ },
50
+ h2: {
51
+ fontSize: theme.fontSizes.h2,
52
+ lineHeight: theme.fontSizes.h2 * 1.3,
53
+ letterSpacing: -0.4
54
+ },
55
+ h3: {
56
+ fontSize: theme.fontSizes.h3,
57
+ lineHeight: theme.fontSizes.h3 * 1.3,
58
+ letterSpacing: -0.2
59
+ },
60
+ h4: {
61
+ fontSize: theme.fontSizes.h4,
62
+ lineHeight: theme.fontSizes.h4 * 1.3
63
+ },
64
+ h5: {
65
+ fontSize: theme.fontSizes.h5,
66
+ lineHeight: theme.fontSizes.h5 * 1.3
67
+ },
68
+ h6: {
69
+ fontSize: theme.fontSizes.h6,
70
+ lineHeight: theme.fontSizes.h6 * 1.3,
71
+ color: theme.colors.textMuted
72
+ }
73
+ });
72
74
  //# sourceMappingURL=heading.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","ANDROID_SYSTEM_FONTS","Set","Heading","level","children","style","theme","useMarkdownContext","headingWeight","Platform","OS","fontFamilies","heading","has","styles","useMemo","StyleSheet","create","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","fontFamily","letterSpacing","includeFontPadding","h1","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","h2","h3","h4","h5","h6","textMuted","headingStyles","jsx","Text","exports"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_styleCache","_MarkdownContext","_jsxRuntime","ANDROID_SYSTEM_FONTS","Set","Heading","level","children","style","theme","useMarkdownContext","styles","getCachedStyles","stylesCache","createStyles","headingStyles","heading","h1","h2","h3","h4","h5","h6","jsx","Text","exports","WeakMap","getHeadingWeight","headingWeight","Platform","OS","fontFamilies","has","StyleSheet","create","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","fontFamily","letterSpacing","includeFontPadding","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","textMuted"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AASxD,MAAMI,oBAAoB,GAAG,IAAIC,GAAG,CAAC,CACnC,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,OAAO,EACP,WAAW,CACZ,CAAC;AAEK,MAAMC,OAAyB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACvE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,2BAAe,EAACC,WAAW,EAAEJ,KAAK,EAAEK,YAAY,CAAC;EAEhE,MAAMC,aAAa,GAAG,CACpBJ,MAAM,CAACK,OAAO,EACdV,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACM,EAAE,EACxBX,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACO,EAAE,EACxBZ,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACQ,EAAE,EACxBb,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACS,EAAE,EACxBd,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACU,EAAE,EACxBf,KAAK,KAAK,CAAC,IAAIK,MAAM,CAACW,EAAE,CACzB;EAED,oBAAO,IAAApB,WAAA,CAAAqB,GAAA,EAACzB,YAAA,CAAA0B,IAAI;IAAChB,KAAK,EAAE,CAAC,GAAGO,aAAa,EAAEP,KAAK,CAAE;IAAAD,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAClE,CAAC;AAACkB,OAAA,CAAApB,OAAA,GAAAA,OAAA;AAIF,MAAMQ,WAAW,GAAG,IAAIa,OAAO,CAA+B,CAAC;AAE/D,MAAMC,gBAAgB,GAAIlB,KAAoB,IAC5CA,KAAK,CAACmB,aAAa,KAClBC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAC1BrB,KAAK,CAACsB,YAAY,CAACf,OAAO,IAC1B,CAACb,oBAAoB,CAAC6B,GAAG,CAACvB,KAAK,CAACsB,YAAY,CAACf,OAAO,CAAC,GACjD,QAAQ,GACR,KAAK,CAAC;AAEZ,MAAMF,YAAY,GAAIL,KAAoB,IACxCwB,uBAAU,CAACC,MAAM,CAAC;EAChBlB,OAAO,EAAE;IACPmB,KAAK,EAAE1B,KAAK,CAAC2B,MAAM,CAACpB,OAAO;IAC3BqB,UAAU,EAAEV,gBAAgB,CAAClB,KAAK,CAAC;IACnC6B,SAAS,EAAE7B,KAAK,CAAC8B,OAAO,CAACC,EAAE;IAC3BC,YAAY,EAAEhC,KAAK,CAAC8B,OAAO,CAACG,CAAC;IAC7BC,UAAU,EAAElC,KAAK,CAACsB,YAAY,CAACf,OAAO;IACtC4B,aAAa,EAAE,CAAC,GAAG;IACnB,IAAIf,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEe,kBAAkB,EAAE;IAAM,CAAC;EAChE,CAAC;EACD5B,EAAE,EAAE;IACF6B,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAAC9B,EAAE;IAC5B+B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAAC9B,EAAE,GAAG,GAAG;IACpCgC,iBAAiB,EAAE,CAAC;IACpBC,iBAAiB,EAAEzC,KAAK,CAAC2B,MAAM,CAACe,MAAM;IACtCC,aAAa,EAAE3C,KAAK,CAAC8B,OAAO,CAACc,CAAC;IAC9BT,aAAa,EAAE,CAAC;EAClB,CAAC;EACD1B,EAAE,EAAE;IACF4B,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAAC7B,EAAE;IAC5B8B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAAC7B,EAAE,GAAG,GAAG;IACpC0B,aAAa,EAAE,CAAC;EAClB,CAAC;EACDzB,EAAE,EAAE;IACF2B,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAAC5B,EAAE;IAC5B6B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAAC5B,EAAE,GAAG,GAAG;IACpCyB,aAAa,EAAE,CAAC;EAClB,CAAC;EACDxB,EAAE,EAAE;IACF0B,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAAC3B,EAAE;IAC5B4B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAAC3B,EAAE,GAAG;EACnC,CAAC;EACDC,EAAE,EAAE;IACFyB,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAAC1B,EAAE;IAC5B2B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAAC1B,EAAE,GAAG;EACnC,CAAC;EACDC,EAAE,EAAE;IACFwB,QAAQ,EAAErC,KAAK,CAACsC,SAAS,CAACzB,EAAE;IAC5B0B,UAAU,EAAEvC,KAAK,CAACsC,SAAS,CAACzB,EAAE,GAAG,GAAG;IACpCa,KAAK,EAAE1B,KAAK,CAAC2B,MAAM,CAACkB;EACtB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HorizontalRule = void 0;
7
- var _react = require("react");
8
7
  var _reactNative = require("react-native");
8
+ var _styleCache = require("./style-cache.js");
9
9
  var _MarkdownContext = require("../MarkdownContext.js");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  const HorizontalRule = ({
@@ -14,16 +14,18 @@ const HorizontalRule = ({
14
14
  const {
15
15
  theme
16
16
  } = (0, _MarkdownContext.useMarkdownContext)();
17
- const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
18
- horizontalRule: {
19
- height: 1,
20
- backgroundColor: theme.colors.border,
21
- marginVertical: theme.spacing.xl
22
- }
23
- }), [theme]);
17
+ const styles = (0, _styleCache.getCachedStyles)(stylesCache, theme, createStyles);
24
18
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
25
19
  style: [styles.horizontalRule, style]
26
20
  });
27
21
  };
28
22
  exports.HorizontalRule = HorizontalRule;
23
+ const stylesCache = new WeakMap();
24
+ const createStyles = theme => _reactNative.StyleSheet.create({
25
+ horizontalRule: {
26
+ height: 1,
27
+ backgroundColor: theme.colors.border,
28
+ marginVertical: theme.spacing.xl
29
+ }
30
+ });
29
31
  //# sourceMappingURL=horizontal-rule.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","HorizontalRule","style","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","horizontalRule","height","backgroundColor","colors","border","marginVertical","spacing","xl","jsx","View","exports"],"sourceRoot":"../../../src","sources":["renderers/horizontal-rule.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAMjD,MAAMI,cAAuC,GAAGA,CAAC;EAAEC;AAAM,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBC,cAAc,EAAE;MACdC,MAAM,EAAE,CAAC;MACTC,eAAe,EAAER,KAAK,CAACS,MAAM,CAACC,MAAM;MACpCC,cAAc,EAAEX,KAAK,CAACY,OAAO,CAACC;IAChC;EACF,CAAC,CAAC,EACJ,CAACb,KAAK,CACR,CAAC;EACD,oBAAO,IAAAH,WAAA,CAAAiB,GAAA,EAACnB,YAAA,CAAAoB,IAAI;IAAChB,KAAK,EAAE,CAACG,MAAM,CAACI,cAAc,EAAEP,KAAK;EAAE,CAAE,CAAC;AACxD,CAAC;AAACiB,OAAA,CAAAlB,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_styleCache","_MarkdownContext","_jsxRuntime","HorizontalRule","style","theme","useMarkdownContext","styles","getCachedStyles","stylesCache","createStyles","jsx","View","horizontalRule","exports","WeakMap","StyleSheet","create","height","backgroundColor","colors","border","marginVertical","spacing","xl"],"sourceRoot":"../../../src","sources":["renderers/horizontal-rule.tsx"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAOjD,MAAMI,cAAuC,GAAGA,CAAC;EAAEC;AAAM,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,2BAAe,EAACC,WAAW,EAAEJ,KAAK,EAAEK,YAAY,CAAC;EAChE,oBAAO,IAAAR,WAAA,CAAAS,GAAA,EAACb,YAAA,CAAAc,IAAI;IAACR,KAAK,EAAE,CAACG,MAAM,CAACM,cAAc,EAAET,KAAK;EAAE,CAAE,CAAC;AACxD,CAAC;AAACU,OAAA,CAAAX,cAAA,GAAAA,cAAA;AAIF,MAAMM,WAAW,GAAG,IAAIM,OAAO,CAAsC,CAAC;AAEtE,MAAML,YAAY,GAAIL,KAAoB,IACxCW,uBAAU,CAACC,MAAM,CAAC;EAChBJ,cAAc,EAAE;IACdK,MAAM,EAAE,CAAC;IACTC,eAAe,EAAEd,KAAK,CAACe,MAAM,CAACC,MAAM;IACpCC,cAAc,EAAEjB,KAAK,CAACkB,OAAO,CAACC;EAChC;AACF,CAAC,CAAC","ignoreList":[]}
@@ -97,21 +97,35 @@ const Image = ({
97
97
  })
98
98
  }
99
99
  }), [theme, aspectRatio]);
100
- (0, _react.useLayoutEffect)(() => {
101
- // Fast path for consistent aspect ratios if checking picsum
100
+ (0, _react.useEffect)(() => {
101
+ let isMounted = true;
102
+ setLoading(true);
103
+ setError(false);
104
+ setAspectRatio(undefined);
102
105
  const picsumMatch = url.match(/picsum\.photos\/.*\/(\d+)\/(\d+)/);
103
106
  if (picsumMatch) {
104
107
  const w = parseInt(picsumMatch[1], 10);
105
108
  const h = parseInt(picsumMatch[2], 10);
106
109
  if (!isNaN(w) && !isNaN(h) && h !== 0) {
107
110
  setAspectRatio(w / h);
111
+ return () => {
112
+ isMounted = false;
113
+ };
108
114
  }
109
115
  }
110
116
  _reactNative.Image.getSize(url, (width, height) => {
111
- if (width > 0 && height > 0) {
117
+ if (isMounted && width > 0 && height > 0) {
112
118
  setAspectRatio(width / height);
113
119
  }
114
- }, () => {});
120
+ }, error => {
121
+ if (__DEV__) {
122
+ // eslint-disable-next-line no-console
123
+ console.warn("[NitroMarkdown] Failed to get image dimensions:", error);
124
+ }
125
+ });
126
+ return () => {
127
+ isMounted = false;
128
+ };
115
129
  }, [url]);
116
130
  const altContent = (0, _react.useMemo)(() => {
117
131
  if (!alt || !Renderer) return null;