react-native-nitro-markdown 0.2.1 → 0.3.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 (148) hide show
  1. package/README.md +237 -103
  2. package/cpp/bindings/HybridMarkdownParser.cpp +2 -0
  3. package/cpp/core/MD4CParser.cpp +73 -39
  4. package/cpp/core/MarkdownTypes.hpp +6 -1
  5. package/cpp/md4c/md4c.c +79 -56
  6. package/cpp/md4c/md4c.h +7 -4
  7. package/lib/commonjs/MarkdownContext.js +3 -7
  8. package/lib/commonjs/MarkdownContext.js.map +1 -1
  9. package/lib/commonjs/default-markdown-renderer.js +4 -7
  10. package/lib/commonjs/default-markdown-renderer.js.map +1 -1
  11. package/lib/commonjs/headless.js +49 -1
  12. package/lib/commonjs/headless.js.map +1 -1
  13. package/lib/commonjs/index.js +35 -0
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/markdown.js +100 -41
  16. package/lib/commonjs/markdown.js.map +1 -1
  17. package/lib/commonjs/renderers/blockquote.js +1 -1
  18. package/lib/commonjs/renderers/blockquote.js.map +1 -1
  19. package/lib/commonjs/renderers/code.js +15 -8
  20. package/lib/commonjs/renderers/code.js.map +1 -1
  21. package/lib/commonjs/renderers/heading.js +2 -1
  22. package/lib/commonjs/renderers/heading.js.map +1 -1
  23. package/lib/commonjs/renderers/horizontal-rule.js +4 -2
  24. package/lib/commonjs/renderers/horizontal-rule.js.map +1 -1
  25. package/lib/commonjs/renderers/image.js +39 -14
  26. package/lib/commonjs/renderers/image.js.map +1 -1
  27. package/lib/commonjs/renderers/link.js +1 -3
  28. package/lib/commonjs/renderers/link.js.map +1 -1
  29. package/lib/commonjs/renderers/list.js +12 -10
  30. package/lib/commonjs/renderers/list.js.map +1 -1
  31. package/lib/commonjs/renderers/math.js +33 -47
  32. package/lib/commonjs/renderers/math.js.map +1 -1
  33. package/lib/commonjs/renderers/paragraph.js +0 -6
  34. package/lib/commonjs/renderers/paragraph.js.map +1 -1
  35. package/lib/commonjs/renderers/table.js +127 -120
  36. package/lib/commonjs/renderers/table.js.map +1 -1
  37. package/lib/commonjs/theme.js +146 -13
  38. package/lib/commonjs/theme.js.map +1 -1
  39. package/lib/module/MarkdownContext.js +3 -8
  40. package/lib/module/MarkdownContext.js.map +1 -1
  41. package/lib/module/default-markdown-renderer.js +1 -4
  42. package/lib/module/default-markdown-renderer.js.map +1 -1
  43. package/lib/module/headless.js +46 -0
  44. package/lib/module/headless.js.map +1 -1
  45. package/lib/module/index.js +2 -20
  46. package/lib/module/index.js.map +1 -1
  47. package/lib/module/markdown.js +101 -42
  48. package/lib/module/markdown.js.map +1 -1
  49. package/lib/module/renderers/blockquote.js +1 -1
  50. package/lib/module/renderers/blockquote.js.map +1 -1
  51. package/lib/module/renderers/code.js +15 -8
  52. package/lib/module/renderers/code.js.map +1 -1
  53. package/lib/module/renderers/heading.js +2 -1
  54. package/lib/module/renderers/heading.js.map +1 -1
  55. package/lib/module/renderers/horizontal-rule.js +4 -2
  56. package/lib/module/renderers/horizontal-rule.js.map +1 -1
  57. package/lib/module/renderers/image.js +40 -15
  58. package/lib/module/renderers/image.js.map +1 -1
  59. package/lib/module/renderers/link.js +1 -3
  60. package/lib/module/renderers/link.js.map +1 -1
  61. package/lib/module/renderers/list.js +12 -10
  62. package/lib/module/renderers/list.js.map +1 -1
  63. package/lib/module/renderers/math.js +34 -48
  64. package/lib/module/renderers/math.js.map +1 -1
  65. package/lib/module/renderers/paragraph.js +0 -6
  66. package/lib/module/renderers/paragraph.js.map +1 -1
  67. package/lib/module/renderers/table.js +128 -121
  68. package/lib/module/renderers/table.js.map +1 -1
  69. package/lib/module/theme.js +144 -12
  70. package/lib/module/theme.js.map +1 -1
  71. package/lib/typescript/commonjs/MarkdownContext.d.ts +45 -6
  72. package/lib/typescript/commonjs/MarkdownContext.d.ts.map +1 -1
  73. package/lib/typescript/commonjs/default-markdown-renderer.d.ts +1 -1
  74. package/lib/typescript/commonjs/default-markdown-renderer.d.ts.map +1 -1
  75. package/lib/typescript/commonjs/headless.d.ts +12 -1
  76. package/lib/typescript/commonjs/headless.d.ts.map +1 -1
  77. package/lib/typescript/commonjs/index.d.ts +4 -16
  78. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/markdown.d.ts +33 -2
  80. package/lib/typescript/commonjs/markdown.d.ts.map +1 -1
  81. package/lib/typescript/commonjs/renderers/code.d.ts +6 -2
  82. package/lib/typescript/commonjs/renderers/code.d.ts.map +1 -1
  83. package/lib/typescript/commonjs/renderers/heading.d.ts.map +1 -1
  84. package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts +6 -1
  85. package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts.map +1 -1
  86. package/lib/typescript/commonjs/renderers/image.d.ts +2 -0
  87. package/lib/typescript/commonjs/renderers/image.d.ts.map +1 -1
  88. package/lib/typescript/commonjs/renderers/link.d.ts.map +1 -1
  89. package/lib/typescript/commonjs/renderers/list.d.ts +4 -0
  90. package/lib/typescript/commonjs/renderers/list.d.ts.map +1 -1
  91. package/lib/typescript/commonjs/renderers/math.d.ts +3 -4
  92. package/lib/typescript/commonjs/renderers/math.d.ts.map +1 -1
  93. package/lib/typescript/commonjs/renderers/paragraph.d.ts +0 -5
  94. package/lib/typescript/commonjs/renderers/paragraph.d.ts.map +1 -1
  95. package/lib/typescript/commonjs/renderers/table.d.ts +2 -0
  96. package/lib/typescript/commonjs/renderers/table.d.ts.map +1 -1
  97. package/lib/typescript/commonjs/specs/MarkdownSession.nitro.d.ts.map +1 -1
  98. package/lib/typescript/commonjs/theme.d.ts +41 -28
  99. package/lib/typescript/commonjs/theme.d.ts.map +1 -1
  100. package/lib/typescript/module/MarkdownContext.d.ts +45 -6
  101. package/lib/typescript/module/MarkdownContext.d.ts.map +1 -1
  102. package/lib/typescript/module/default-markdown-renderer.d.ts +1 -1
  103. package/lib/typescript/module/default-markdown-renderer.d.ts.map +1 -1
  104. package/lib/typescript/module/headless.d.ts +12 -1
  105. package/lib/typescript/module/headless.d.ts.map +1 -1
  106. package/lib/typescript/module/index.d.ts +4 -16
  107. package/lib/typescript/module/index.d.ts.map +1 -1
  108. package/lib/typescript/module/markdown.d.ts +33 -2
  109. package/lib/typescript/module/markdown.d.ts.map +1 -1
  110. package/lib/typescript/module/renderers/code.d.ts +6 -2
  111. package/lib/typescript/module/renderers/code.d.ts.map +1 -1
  112. package/lib/typescript/module/renderers/heading.d.ts.map +1 -1
  113. package/lib/typescript/module/renderers/horizontal-rule.d.ts +6 -1
  114. package/lib/typescript/module/renderers/horizontal-rule.d.ts.map +1 -1
  115. package/lib/typescript/module/renderers/image.d.ts +2 -0
  116. package/lib/typescript/module/renderers/image.d.ts.map +1 -1
  117. package/lib/typescript/module/renderers/link.d.ts.map +1 -1
  118. package/lib/typescript/module/renderers/list.d.ts +4 -0
  119. package/lib/typescript/module/renderers/list.d.ts.map +1 -1
  120. package/lib/typescript/module/renderers/math.d.ts +3 -4
  121. package/lib/typescript/module/renderers/math.d.ts.map +1 -1
  122. package/lib/typescript/module/renderers/paragraph.d.ts +0 -5
  123. package/lib/typescript/module/renderers/paragraph.d.ts.map +1 -1
  124. package/lib/typescript/module/renderers/table.d.ts +2 -0
  125. package/lib/typescript/module/renderers/table.d.ts.map +1 -1
  126. package/lib/typescript/module/specs/MarkdownSession.nitro.d.ts.map +1 -1
  127. package/lib/typescript/module/theme.d.ts +41 -28
  128. package/lib/typescript/module/theme.d.ts.map +1 -1
  129. package/nitrogen/generated/ios/NitroMarkdownAutolinking.swift +8 -7
  130. package/nitrogen/generated/ios/swift/HybridMarkdownSessionSpec.swift +2 -2
  131. package/package.json +1 -1
  132. package/src/MarkdownContext.ts +66 -9
  133. package/src/default-markdown-renderer.tsx +1 -6
  134. package/src/headless.ts +67 -2
  135. package/src/index.ts +24 -19
  136. package/src/markdown.tsx +158 -52
  137. package/src/renderers/blockquote.tsx +1 -2
  138. package/src/renderers/code.tsx +36 -12
  139. package/src/renderers/heading.tsx +1 -1
  140. package/src/renderers/horizontal-rule.tsx +7 -4
  141. package/src/renderers/image.tsx +59 -15
  142. package/src/renderers/link.tsx +1 -6
  143. package/src/renderers/list.tsx +15 -15
  144. package/src/renderers/math.tsx +28 -45
  145. package/src/renderers/paragraph.tsx +1 -8
  146. package/src/renderers/table.tsx +185 -160
  147. package/src/specs/MarkdownSession.nitro.ts +4 -6
  148. package/src/theme.ts +203 -12
@@ -3,26 +3,29 @@
3
3
  import { useMemo } from "react";
4
4
  import { View, Text, StyleSheet, ScrollView, Platform } from "react-native";
5
5
  import { useMarkdownContext } from "../MarkdownContext.js";
6
+ import { getTextContent } from "../headless.js";
6
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
8
  export const CodeBlock = ({
8
9
  language,
9
10
  content,
11
+ node,
10
12
  style
11
13
  }) => {
12
14
  const {
13
15
  theme
14
16
  } = useMarkdownContext();
17
+ const displayContent = content ?? (node ? getTextContent(node) : "");
15
18
  const styles = useMemo(() => StyleSheet.create({
16
19
  codeBlock: {
17
20
  backgroundColor: theme.colors.codeBackground,
18
- borderRadius: 8,
21
+ borderRadius: theme.borderRadius.m,
19
22
  padding: theme.spacing.l,
20
23
  marginVertical: theme.spacing.m,
21
24
  borderWidth: 1,
22
25
  borderColor: theme.colors.border
23
26
  },
24
27
  codeLanguage: {
25
- color: theme.colors.accent,
28
+ color: theme.colors.codeLanguage,
26
29
  fontSize: theme.fontSizes.xs,
27
30
  fontWeight: "600",
28
31
  marginBottom: theme.spacing.s,
@@ -30,7 +33,7 @@ export const CodeBlock = ({
30
33
  letterSpacing: 0.5
31
34
  },
32
35
  codeBlockText: {
33
- fontFamily: Platform.select({
36
+ fontFamily: theme.fontFamilies.mono ?? Platform.select({
34
37
  ios: "Courier",
35
38
  android: "monospace"
36
39
  }),
@@ -39,9 +42,10 @@ export const CodeBlock = ({
39
42
  lineHeight: theme.fontSizes.s * 1.5
40
43
  }
41
44
  }), [theme]);
45
+ const showLanguage = theme.showCodeLanguage && language;
42
46
  return /*#__PURE__*/_jsxs(View, {
43
47
  style: [styles.codeBlock, style],
44
- children: [language && /*#__PURE__*/_jsx(Text, {
48
+ children: [showLanguage && /*#__PURE__*/_jsx(Text, {
45
49
  style: styles.codeLanguage,
46
50
  children: language
47
51
  }), /*#__PURE__*/_jsx(ScrollView, {
@@ -49,21 +53,24 @@ export const CodeBlock = ({
49
53
  showsHorizontalScrollIndicator: false,
50
54
  children: /*#__PURE__*/_jsx(Text, {
51
55
  style: styles.codeBlockText,
52
- children: content
56
+ children: displayContent
53
57
  })
54
58
  })]
55
59
  });
56
60
  };
57
61
  export const InlineCode = ({
62
+ content,
63
+ node,
58
64
  children,
59
65
  style
60
66
  }) => {
61
67
  const {
62
68
  theme
63
69
  } = useMarkdownContext();
70
+ const displayContent = content ?? children ?? (node ? getTextContent(node) : "");
64
71
  const styles = useMemo(() => StyleSheet.create({
65
72
  codeInline: {
66
- fontFamily: Platform.select({
73
+ fontFamily: theme.fontFamilies.mono ?? Platform.select({
67
74
  ios: "Courier",
68
75
  android: "monospace"
69
76
  }),
@@ -72,7 +79,7 @@ export const InlineCode = ({
72
79
  backgroundColor: theme.colors.codeBackground,
73
80
  paddingHorizontal: theme.spacing.xs,
74
81
  paddingVertical: 2,
75
- borderRadius: 4,
82
+ borderRadius: theme.borderRadius.s,
76
83
  ...(Platform.OS === "android" && {
77
84
  includeFontPadding: false
78
85
  })
@@ -80,7 +87,7 @@ export const InlineCode = ({
80
87
  }), [theme]);
81
88
  return /*#__PURE__*/_jsx(Text, {
82
89
  style: [styles.codeInline, style],
83
- children: children
90
+ children: displayContent
84
91
  });
85
92
  };
86
93
  //# sourceMappingURL=code.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","View","Text","StyleSheet","ScrollView","Platform","useMarkdownContext","jsx","_jsx","jsxs","_jsxs","CodeBlock","language","content","style","theme","styles","create","codeBlock","backgroundColor","colors","codeBackground","borderRadius","padding","spacing","l","marginVertical","m","borderWidth","borderColor","border","codeLanguage","color","accent","fontSize","fontSizes","xs","fontWeight","marginBottom","s","textTransform","letterSpacing","codeBlockText","fontFamily","select","ios","android","text","lineHeight","children","horizontal","showsHorizontalScrollIndicator","InlineCode","codeInline","code","paddingHorizontal","paddingVertical","OS","includeFontPadding"],"sourceRoot":"../../../src","sources":["renderers/code.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SACEC,IAAI,EACJC,IAAI,EACJC,UAAU,EACVC,UAAU,EACVC,QAAQ,QAGH,cAAc;AACrB,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQxD,OAAO,MAAMC,SAA6B,GAAGA,CAAC;EAC5CC,QAAQ;EACRC,OAAO;EACPC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAGT,kBAAkB,CAAC,CAAC;EACtC,MAAMU,MAAM,GAAGhB,OAAO,CACpB,MACEG,UAAU,CAACc,MAAM,CAAC;IAChBC,SAAS,EAAE;MACTC,eAAe,EAAEJ,KAAK,CAACK,MAAM,CAACC,cAAc;MAC5CC,YAAY,EAAE,CAAC;MACfC,OAAO,EAAER,KAAK,CAACS,OAAO,CAACC,CAAC;MACxBC,cAAc,EAAEX,KAAK,CAACS,OAAO,CAACG,CAAC;MAC/BC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAEd,KAAK,CAACK,MAAM,CAACU;IAC5B,CAAC;IACDC,YAAY,EAAE;MACZC,KAAK,EAAEjB,KAAK,CAACK,MAAM,CAACa,MAAM;MAC1BC,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACC,EAAE;MAC5BC,UAAU,EAAE,KAAK;MACjBC,YAAY,EAAEvB,KAAK,CAACS,OAAO,CAACe,CAAC;MAC7BC,aAAa,EAAE,WAAW;MAC1BC,aAAa,EAAE;IACjB,CAAC;IACDC,aAAa,EAAE;MACbC,UAAU,EAAEtC,QAAQ,CAACuC,MAAM,CAAC;QAAEC,GAAG,EAAE,SAAS;QAAEC,OAAO,EAAE;MAAY,CAAC,CAAC;MACrEZ,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACI,CAAC;MAC3BP,KAAK,EAAEjB,KAAK,CAACK,MAAM,CAAC2B,IAAI;MACxBC,UAAU,EAAEjC,KAAK,CAACoB,SAAS,CAACI,CAAC,GAAG;IAClC;EACF,CAAC,CAAC,EACJ,CAACxB,KAAK,CACR,CAAC;EACD,oBACEL,KAAA,CAACT,IAAI;IAACa,KAAK,EAAE,CAACE,MAAM,CAACE,SAAS,EAAEJ,KAAK,CAAE;IAAAmC,QAAA,GACpCrC,QAAQ,iBAAIJ,IAAA,CAACN,IAAI;MAACY,KAAK,EAAEE,MAAM,CAACe,YAAa;MAAAkB,QAAA,EAAErC;IAAQ,CAAO,CAAC,eAChEJ,IAAA,CAACJ,UAAU;MAAC8C,UAAU;MAACC,8BAA8B,EAAE,KAAM;MAAAF,QAAA,eAC3DzC,IAAA,CAACN,IAAI;QAACY,KAAK,EAAEE,MAAM,CAAC0B,aAAc;QAAAO,QAAA,EAAEpC;MAAO,CAAO;IAAC,CACzC,CAAC;EAAA,CACT,CAAC;AAEX,CAAC;AAOD,OAAO,MAAMuC,UAA+B,GAAGA,CAAC;EAAEH,QAAQ;EAAEnC;AAAM,CAAC,KAAK;EACtE,MAAM;IAAEC;EAAM,CAAC,GAAGT,kBAAkB,CAAC,CAAC;EACtC,MAAMU,MAAM,GAAGhB,OAAO,CACpB,MACEG,UAAU,CAACc,MAAM,CAAC;IAChBoC,UAAU,EAAE;MACVV,UAAU,EAAEtC,QAAQ,CAACuC,MAAM,CAAC;QAAEC,GAAG,EAAE,SAAS;QAAEC,OAAO,EAAE;MAAY,CAAC,CAAC;MACrEZ,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACI,CAAC;MAC3BP,KAAK,EAAEjB,KAAK,CAACK,MAAM,CAACkC,IAAI;MACxBnC,eAAe,EAAEJ,KAAK,CAACK,MAAM,CAACC,cAAc;MAC5CkC,iBAAiB,EAAExC,KAAK,CAACS,OAAO,CAACY,EAAE;MACnCoB,eAAe,EAAE,CAAC;MAClBlC,YAAY,EAAE,CAAC;MACf,IAAIjB,QAAQ,CAACoD,EAAE,KAAK,SAAS,IAAI;QAAEC,kBAAkB,EAAE;MAAM,CAAC;IAChE;EACF,CAAC,CAAC,EACJ,CAAC3C,KAAK,CACR,CAAC;EACD,oBAAOP,IAAA,CAACN,IAAI;IAACY,KAAK,EAAE,CAACE,MAAM,CAACqC,UAAU,EAAEvC,KAAK,CAAE;IAAAmC,QAAA,EAAEA;EAAQ,CAAO,CAAC;AACnE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","View","Text","StyleSheet","ScrollView","Platform","useMarkdownContext","getTextContent","jsx","_jsx","jsxs","_jsxs","CodeBlock","language","content","node","style","theme","displayContent","styles","create","codeBlock","backgroundColor","colors","codeBackground","borderRadius","m","padding","spacing","l","marginVertical","borderWidth","borderColor","border","codeLanguage","color","fontSize","fontSizes","xs","fontWeight","marginBottom","s","textTransform","letterSpacing","codeBlockText","fontFamily","fontFamilies","mono","select","ios","android","text","lineHeight","showLanguage","showCodeLanguage","children","horizontal","showsHorizontalScrollIndicator","InlineCode","codeInline","code","paddingHorizontal","paddingVertical","OS","includeFontPadding"],"sourceRoot":"../../../src","sources":["renderers/code.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SACEC,IAAI,EACJC,IAAI,EACJC,UAAU,EACVC,UAAU,EACVC,QAAQ,QAGH,cAAc;AACrB,SAASC,kBAAkB,QAAQ,uBAAoB;AAEvD,SAASC,cAAc,QAAQ,gBAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAS7C,OAAO,MAAMC,SAA6B,GAAGA,CAAC;EAC5CC,QAAQ;EACRC,OAAO;EACPC,IAAI;EACJC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAGX,kBAAkB,CAAC,CAAC;EAEtC,MAAMY,cAAc,GAAGJ,OAAO,KAAKC,IAAI,GAAGR,cAAc,CAACQ,IAAI,CAAC,GAAG,EAAE,CAAC;EAEpE,MAAMI,MAAM,GAAGnB,OAAO,CACpB,MACEG,UAAU,CAACiB,MAAM,CAAC;IAChBC,SAAS,EAAE;MACTC,eAAe,EAAEL,KAAK,CAACM,MAAM,CAACC,cAAc;MAC5CC,YAAY,EAAER,KAAK,CAACQ,YAAY,CAACC,CAAC;MAClCC,OAAO,EAAEV,KAAK,CAACW,OAAO,CAACC,CAAC;MACxBC,cAAc,EAAEb,KAAK,CAACW,OAAO,CAACF,CAAC;MAC/BK,WAAW,EAAE,CAAC;MACdC,WAAW,EAAEf,KAAK,CAACM,MAAM,CAACU;IAC5B,CAAC;IACDC,YAAY,EAAE;MACZC,KAAK,EAAElB,KAAK,CAACM,MAAM,CAACW,YAAY;MAChCE,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACC,EAAE;MAC5BC,UAAU,EAAE,KAAK;MACjBC,YAAY,EAAEvB,KAAK,CAACW,OAAO,CAACa,CAAC;MAC7BC,aAAa,EAAE,WAAW;MAC1BC,aAAa,EAAE;IACjB,CAAC;IACDC,aAAa,EAAE;MACbC,UAAU,EACR5B,KAAK,CAAC6B,YAAY,CAACC,IAAI,IACvB1C,QAAQ,CAAC2C,MAAM,CAAC;QAAEC,GAAG,EAAE,SAAS;QAAEC,OAAO,EAAE;MAAY,CAAC,CAAC;MAC3Dd,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACI,CAAC;MAC3BN,KAAK,EAAElB,KAAK,CAACM,MAAM,CAAC4B,IAAI;MACxBC,UAAU,EAAEnC,KAAK,CAACoB,SAAS,CAACI,CAAC,GAAG;IAClC;EACF,CAAC,CAAC,EACJ,CAACxB,KAAK,CACR,CAAC;EAED,MAAMoC,YAAY,GAAGpC,KAAK,CAACqC,gBAAgB,IAAIzC,QAAQ;EAEvD,oBACEF,KAAA,CAACV,IAAI;IAACe,KAAK,EAAE,CAACG,MAAM,CAACE,SAAS,EAAEL,KAAK,CAAE;IAAAuC,QAAA,GACpCF,YAAY,iBAAI5C,IAAA,CAACP,IAAI;MAACc,KAAK,EAAEG,MAAM,CAACe,YAAa;MAAAqB,QAAA,EAAE1C;IAAQ,CAAO,CAAC,eACpEJ,IAAA,CAACL,UAAU;MAACoD,UAAU;MAACC,8BAA8B,EAAE,KAAM;MAAAF,QAAA,eAC3D9C,IAAA,CAACP,IAAI;QAACc,KAAK,EAAEG,MAAM,CAACyB,aAAc;QAAAW,QAAA,EAAErC;MAAc,CAAO;IAAC,CAChD,CAAC;EAAA,CACT,CAAC;AAEX,CAAC;AASD,OAAO,MAAMwC,UAA+B,GAAGA,CAAC;EAC9C5C,OAAO;EACPC,IAAI;EACJwC,QAAQ;EACRvC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAGX,kBAAkB,CAAC,CAAC;EAEtC,MAAMY,cAAc,GAClBJ,OAAO,IAAIyC,QAAQ,KAAKxC,IAAI,GAAGR,cAAc,CAACQ,IAAI,CAAC,GAAG,EAAE,CAAC;EAE3D,MAAMI,MAAM,GAAGnB,OAAO,CACpB,MACEG,UAAU,CAACiB,MAAM,CAAC;IAChBuC,UAAU,EAAE;MACVd,UAAU,EACR5B,KAAK,CAAC6B,YAAY,CAACC,IAAI,IACvB1C,QAAQ,CAAC2C,MAAM,CAAC;QAAEC,GAAG,EAAE,SAAS;QAAEC,OAAO,EAAE;MAAY,CAAC,CAAC;MAC3Dd,QAAQ,EAAEnB,KAAK,CAACoB,SAAS,CAACI,CAAC;MAC3BN,KAAK,EAAElB,KAAK,CAACM,MAAM,CAACqC,IAAI;MACxBtC,eAAe,EAAEL,KAAK,CAACM,MAAM,CAACC,cAAc;MAC5CqC,iBAAiB,EAAE5C,KAAK,CAACW,OAAO,CAACU,EAAE;MACnCwB,eAAe,EAAE,CAAC;MAClBrC,YAAY,EAAER,KAAK,CAACQ,YAAY,CAACgB,CAAC;MAClC,IAAIpC,QAAQ,CAAC0D,EAAE,KAAK,SAAS,IAAI;QAAEC,kBAAkB,EAAE;MAAM,CAAC;IAChE;EACF,CAAC,CAAC,EACJ,CAAC/C,KAAK,CACR,CAAC;EACD,oBAAOR,IAAA,CAACP,IAAI;IAACc,KAAK,EAAE,CAACG,MAAM,CAACwC,UAAU,EAAE3C,KAAK,CAAE;IAAAuC,QAAA,EAAErC;EAAc,CAAO,CAAC;AACzE,CAAC","ignoreList":[]}
@@ -17,7 +17,8 @@ export const Heading = ({
17
17
  color: theme.colors.heading,
18
18
  fontWeight: "700",
19
19
  marginTop: theme.spacing.xl,
20
- marginBottom: theme.spacing.m
20
+ marginBottom: theme.spacing.m,
21
+ fontFamily: theme.fontFamilies.heading
21
22
  },
22
23
  h1: {
23
24
  fontSize: theme.fontSizes.h1,
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","Text","StyleSheet","useMarkdownContext","jsx","_jsx","Heading","level","children","style","theme","styles","create","heading","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","h1","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","h2","h3","h4","h5","h6","textMuted","headingStyles"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SAASC,IAAI,EAAEC,UAAU,QAAwB,cAAc;AAC/D,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQxD,OAAO,MAAMC,OAAyB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACvE,MAAM;IAAEC;EAAM,CAAC,GAAGP,kBAAkB,CAAC,CAAC;EACtC,MAAMQ,MAAM,GAAGX,OAAO,CACpB,MACEE,UAAU,CAACU,MAAM,CAAC;IAChBC,OAAO,EAAE;MACPC,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACF,OAAO;MAC3BG,UAAU,EAAE,KAAK;MACjBC,SAAS,EAAEP,KAAK,CAACQ,OAAO,CAACC,EAAE;MAC3BC,YAAY,EAAEV,KAAK,CAACQ,OAAO,CAACG;IAC9B,CAAC;IACDC,EAAE,EAAE;MACFC,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACF,EAAE;MAC5BG,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACF,EAAE,GAAG,GAAG;MACpCI,iBAAiB,EAAE,CAAC;MACpBC,iBAAiB,EAAEjB,KAAK,CAACK,MAAM,CAACa,MAAM;MACtCC,aAAa,EAAEnB,KAAK,CAACQ,OAAO,CAACY;IAC/B,CAAC;IACDC,EAAE,EAAE;MACFR,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACO,EAAE;MAC5BN,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACO,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFT,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACQ,EAAE;MAC5BP,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACQ,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFV,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACS,EAAE;MAC5BR,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACS,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFX,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACU,EAAE;MAC5BT,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACU,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFZ,QAAQ,EAAEb,KAAK,CAACc,SAAS,CAACW,EAAE;MAC5BV,UAAU,EAAEf,KAAK,CAACc,SAAS,CAACW,EAAE,GAAG,GAAG;MACpCrB,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACqB;IACtB;EACF,CAAC,CAAC,EACJ,CAAC1B,KAAK,CACR,CAAC;EAED,MAAM2B,aAAa,GAAG,CACpB1B,MAAM,CAACE,OAAO,EACdN,KAAK,KAAK,CAAC,IAAII,MAAM,CAACW,EAAE,EACxBf,KAAK,KAAK,CAAC,IAAII,MAAM,CAACoB,EAAE,EACxBxB,KAAK,KAAK,CAAC,IAAII,MAAM,CAACqB,EAAE,EACxBzB,KAAK,KAAK,CAAC,IAAII,MAAM,CAACsB,EAAE,EACxB1B,KAAK,KAAK,CAAC,IAAII,MAAM,CAACuB,EAAE,EACxB3B,KAAK,KAAK,CAAC,IAAII,MAAM,CAACwB,EAAE,CACzB;EAED,oBAAO9B,IAAA,CAACJ,IAAI;IAACQ,KAAK,EAAE,CAAC,GAAG4B,aAAa,EAAE5B,KAAK,CAAE;IAAAD,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAClE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","Text","StyleSheet","useMarkdownContext","jsx","_jsx","Heading","level","children","style","theme","styles","create","heading","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","fontFamily","fontFamilies","h1","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","h2","h3","h4","h5","h6","textMuted","headingStyles"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SAASC,IAAI,EAAEC,UAAU,QAAwB,cAAc;AAC/D,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQxD,OAAO,MAAMC,OAAyB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACvE,MAAM;IAAEC;EAAM,CAAC,GAAGP,kBAAkB,CAAC,CAAC;EACtC,MAAMQ,MAAM,GAAGX,OAAO,CACpB,MACEE,UAAU,CAACU,MAAM,CAAC;IAChBC,OAAO,EAAE;MACPC,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACF,OAAO;MAC3BG,UAAU,EAAE,KAAK;MACjBC,SAAS,EAAEP,KAAK,CAACQ,OAAO,CAACC,EAAE;MAC3BC,YAAY,EAAEV,KAAK,CAACQ,OAAO,CAACG,CAAC;MAC7BC,UAAU,EAAEZ,KAAK,CAACa,YAAY,CAACV;IACjC,CAAC;IACDW,EAAE,EAAE;MACFC,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACF,EAAE;MAC5BG,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACF,EAAE,GAAG,GAAG;MACpCI,iBAAiB,EAAE,CAAC;MACpBC,iBAAiB,EAAEnB,KAAK,CAACK,MAAM,CAACe,MAAM;MACtCC,aAAa,EAAErB,KAAK,CAACQ,OAAO,CAACc;IAC/B,CAAC;IACDC,EAAE,EAAE;MACFR,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACO,EAAE;MAC5BN,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACO,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFT,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACQ,EAAE;MAC5BP,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACQ,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFV,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACS,EAAE;MAC5BR,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACS,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFX,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACU,EAAE;MAC5BT,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACU,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFZ,QAAQ,EAAEf,KAAK,CAACgB,SAAS,CAACW,EAAE;MAC5BV,UAAU,EAAEjB,KAAK,CAACgB,SAAS,CAACW,EAAE,GAAG,GAAG;MACpCvB,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACuB;IACtB;EACF,CAAC,CAAC,EACJ,CAAC5B,KAAK,CACR,CAAC;EAED,MAAM6B,aAAa,GAAG,CACpB5B,MAAM,CAACE,OAAO,EACdN,KAAK,KAAK,CAAC,IAAII,MAAM,CAACa,EAAE,EACxBjB,KAAK,KAAK,CAAC,IAAII,MAAM,CAACsB,EAAE,EACxB1B,KAAK,KAAK,CAAC,IAAII,MAAM,CAACuB,EAAE,EACxB3B,KAAK,KAAK,CAAC,IAAII,MAAM,CAACwB,EAAE,EACxB5B,KAAK,KAAK,CAAC,IAAII,MAAM,CAACyB,EAAE,EACxB7B,KAAK,KAAK,CAAC,IAAII,MAAM,CAAC0B,EAAE,CACzB;EAED,oBAAOhC,IAAA,CAACJ,IAAI;IAACQ,KAAK,EAAE,CAAC,GAAG8B,aAAa,EAAE9B,KAAK,CAAE;IAAAD,QAAA,EAAEA;EAAQ,CAAO,CAAC;AAClE,CAAC","ignoreList":[]}
@@ -4,7 +4,9 @@ import { useMemo } from "react";
4
4
  import { View, StyleSheet } from "react-native";
5
5
  import { useMarkdownContext } from "../MarkdownContext.js";
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
- export const HorizontalRule = () => {
7
+ export const HorizontalRule = ({
8
+ style
9
+ }) => {
8
10
  const {
9
11
  theme
10
12
  } = useMarkdownContext();
@@ -16,7 +18,7 @@ export const HorizontalRule = () => {
16
18
  }
17
19
  }), [theme]);
18
20
  return /*#__PURE__*/_jsx(View, {
19
- style: styles.horizontalRule
21
+ style: [styles.horizontalRule, style]
20
22
  });
21
23
  };
22
24
  //# sourceMappingURL=horizontal-rule.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","View","StyleSheet","useMarkdownContext","jsx","_jsx","HorizontalRule","theme","styles","create","horizontalRule","height","backgroundColor","colors","border","marginVertical","spacing","xl","style"],"sourceRoot":"../../../src","sources":["renderers/horizontal-rule.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAiB,OAAO;AACxC,SAASC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAC/C,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExD,OAAO,MAAMC,cAAkB,GAAGA,CAAA,KAAM;EACtC,MAAM;IAAEC;EAAM,CAAC,GAAGJ,kBAAkB,CAAC,CAAC;EACtC,MAAMK,MAAM,GAAGR,OAAO,CACpB,MACEE,UAAU,CAACO,MAAM,CAAC;IAChBC,cAAc,EAAE;MACdC,MAAM,EAAE,CAAC;MACTC,eAAe,EAAEL,KAAK,CAACM,MAAM,CAACC,MAAM;MACpCC,cAAc,EAAER,KAAK,CAACS,OAAO,CAACC;IAChC;EACF,CAAC,CAAC,EACJ,CAACV,KAAK,CACR,CAAC;EACD,oBAAOF,IAAA,CAACJ,IAAI;IAACiB,KAAK,EAAEV,MAAM,CAACE;EAAe,CAAE,CAAC;AAC/C,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","View","StyleSheet","useMarkdownContext","jsx","_jsx","HorizontalRule","style","theme","styles","create","horizontalRule","height","backgroundColor","colors","border","marginVertical","spacing","xl"],"sourceRoot":"../../../src","sources":["renderers/horizontal-rule.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAiB,OAAO;AACxC,SAASC,IAAI,EAAEC,UAAU,QAAwB,cAAc;AAC/D,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMxD,OAAO,MAAMC,cAAuC,GAAGA,CAAC;EAAEC;AAAM,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAM,CAAC,GAAGL,kBAAkB,CAAC,CAAC;EACtC,MAAMM,MAAM,GAAGT,OAAO,CACpB,MACEE,UAAU,CAACQ,MAAM,CAAC;IAChBC,cAAc,EAAE;MACdC,MAAM,EAAE,CAAC;MACTC,eAAe,EAAEL,KAAK,CAACM,MAAM,CAACC,MAAM;MACpCC,cAAc,EAAER,KAAK,CAACS,OAAO,CAACC;IAChC;EACF,CAAC,CAAC,EACJ,CAACV,KAAK,CACR,CAAC;EACD,oBAAOH,IAAA,CAACJ,IAAI;IAACM,KAAK,EAAE,CAACE,MAAM,CAACE,cAAc,EAAEJ,KAAK;EAAE,CAAE,CAAC;AACxD,CAAC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { useState, useMemo } from "react";
3
+ import { useState, useLayoutEffect, useMemo } from "react";
4
4
  import { View, Text, Image as RNImage, StyleSheet } from "react-native";
5
5
  import { parseMarkdownWithOptions } from "../headless.js";
6
6
  import { useMarkdownContext } from "../MarkdownContext.js";
@@ -21,10 +21,12 @@ export const Image = ({
21
21
  url,
22
22
  title,
23
23
  alt,
24
- Renderer
24
+ Renderer,
25
+ style
25
26
  }) => {
26
27
  const [loading, setLoading] = useState(true);
27
28
  const [error, setError] = useState(false);
29
+ const [aspectRatio, setAspectRatio] = useState(undefined);
28
30
  const {
29
31
  theme
30
32
  } = useMarkdownContext();
@@ -35,8 +37,10 @@ export const Image = ({
35
37
  },
36
38
  image: {
37
39
  width: "100%",
38
- height: 200,
39
- borderRadius: 8,
40
+ // If we have an aspect ratio, use it. Otherwise, use minHeight as fallback.
41
+ aspectRatio: aspectRatio,
42
+ minHeight: aspectRatio ? undefined : 200,
43
+ borderRadius: theme.borderRadius.m,
40
44
  backgroundColor: theme.colors.surface
41
45
  },
42
46
  imageHidden: {
@@ -45,36 +49,57 @@ export const Image = ({
45
49
  },
46
50
  imageLoading: {
47
51
  width: "100%",
48
- height: 200,
49
- borderRadius: 8,
52
+ // Match the image size if possible
53
+ aspectRatio: aspectRatio,
54
+ height: aspectRatio ? undefined : 200,
55
+ borderRadius: theme.borderRadius.m,
50
56
  backgroundColor: theme.colors.surface,
51
57
  justifyContent: "center",
52
58
  alignItems: "center"
53
59
  },
54
60
  imageLoadingText: {
55
61
  color: theme.colors.textMuted,
56
- fontSize: theme.fontSizes.s
62
+ fontSize: theme.fontSizes.s,
63
+ fontFamily: theme.fontFamilies.regular
57
64
  },
58
65
  imageError: {
59
66
  width: "100%",
60
67
  padding: theme.spacing.l,
61
- borderRadius: 8,
68
+ borderRadius: theme.borderRadius.m,
62
69
  backgroundColor: theme.colors.surface,
63
70
  alignItems: "center",
64
71
  marginVertical: theme.spacing.m
65
72
  },
66
73
  imageErrorText: {
67
74
  color: theme.colors.textMuted,
68
- fontSize: theme.fontSizes.s
75
+ fontSize: theme.fontSizes.s,
76
+ fontFamily: theme.fontFamilies.regular
69
77
  },
70
78
  imageCaption: {
71
79
  color: theme.colors.textMuted,
72
80
  fontSize: theme.fontSizes.xs,
73
81
  marginTop: theme.spacing.s,
74
82
  fontStyle: "italic",
75
- textAlign: "center"
83
+ textAlign: "center",
84
+ fontFamily: theme.fontFamilies.regular
76
85
  }
77
- }), [theme]);
86
+ }), [theme, aspectRatio]);
87
+ useLayoutEffect(() => {
88
+ // Fast path for consistent aspect ratios if checking picsum
89
+ const picsumMatch = url.match(/picsum\.photos\/.*\/(\d+)\/(\d+)/);
90
+ if (picsumMatch) {
91
+ const w = parseInt(picsumMatch[1], 10);
92
+ const h = parseInt(picsumMatch[2], 10);
93
+ if (!isNaN(w) && !isNaN(h) && h !== 0) {
94
+ setAspectRatio(w / h);
95
+ }
96
+ }
97
+ RNImage.getSize(url, (width, height) => {
98
+ if (width > 0 && height > 0) {
99
+ setAspectRatio(width / height);
100
+ }
101
+ }, () => {});
102
+ }, [url]);
78
103
  const altContent = useMemo(() => {
79
104
  if (!alt || !Renderer) return null;
80
105
  if (alt.includes("$") || alt.includes("*") || alt.includes("_") || alt.includes("`") || alt.includes("[")) {
@@ -108,7 +133,7 @@ export const Image = ({
108
133
  }, [alt, Renderer, styles.imageErrorText]);
109
134
  if (error) {
110
135
  return /*#__PURE__*/_jsx(View, {
111
- style: styles.imageError,
136
+ style: [styles.imageError, style],
112
137
  children: /*#__PURE__*/_jsxs(View, {
113
138
  style: {
114
139
  flexDirection: "row",
@@ -127,8 +152,8 @@ export const Image = ({
127
152
  });
128
153
  }
129
154
  return /*#__PURE__*/_jsxs(View, {
130
- style: styles.imageContainer,
131
- children: [loading && /*#__PURE__*/_jsx(View, {
155
+ style: [styles.imageContainer, style],
156
+ children: [loading && !aspectRatio && /*#__PURE__*/_jsx(View, {
132
157
  style: styles.imageLoading,
133
158
  children: /*#__PURE__*/_jsx(Text, {
134
159
  style: styles.imageLoadingText,
@@ -138,7 +163,7 @@ export const Image = ({
138
163
  source: {
139
164
  uri: url
140
165
  },
141
- style: [styles.image, loading && styles.imageHidden],
166
+ style: [styles.image, loading && !aspectRatio && styles.imageHidden],
142
167
  resizeMode: "contain",
143
168
  onLoad: () => setLoading(false),
144
169
  onError: () => {
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useMemo","View","Text","Image","RNImage","StyleSheet","parseMarkdownWithOptions","useMarkdownContext","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","renderInlineContent","node","Renderer","type","children","map","child","idx","depth","inListItem","url","title","alt","loading","setLoading","error","setError","theme","styles","create","imageContainer","marginVertical","spacing","m","alignItems","image","width","height","borderRadius","backgroundColor","colors","surface","imageHidden","opacity","position","imageLoading","justifyContent","imageLoadingText","color","textMuted","fontSize","fontSizes","s","imageError","padding","l","imageErrorText","imageCaption","xs","marginTop","fontStyle","textAlign","altContent","includes","ast","math","gfm","paragraph","inlineContent","style","flexDirection","flexWrap","source","uri","resizeMode","onLoad","onError"],"sourceRoot":"../../../src","sources":["renderers/image.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useLayoutEffect","useMemo","View","Text","Image","RNImage","StyleSheet","parseMarkdownWithOptions","useMarkdownContext","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","renderInlineContent","node","Renderer","type","children","map","child","idx","depth","inListItem","url","title","alt","style","loading","setLoading","error","setError","aspectRatio","setAspectRatio","undefined","theme","styles","create","imageContainer","marginVertical","spacing","m","alignItems","image","width","minHeight","borderRadius","backgroundColor","colors","surface","imageHidden","opacity","position","imageLoading","height","justifyContent","imageLoadingText","color","textMuted","fontSize","fontSizes","s","fontFamily","fontFamilies","regular","imageError","padding","l","imageErrorText","imageCaption","xs","marginTop","fontStyle","textAlign","picsumMatch","match","w","parseInt","h","isNaN","getSize","altContent","includes","ast","math","gfm","paragraph","inlineContent","flexDirection","flexWrap","source","uri","resizeMode","onLoad","onError"],"sourceRoot":"../../../src","sources":["renderers/image.tsx"],"mappings":"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","ignoreList":[]}
@@ -19,9 +19,7 @@ export const Link = ({
19
19
  }
20
20
  }), [theme]);
21
21
  const handlePress = () => {
22
- if (href) {
23
- Linking.openURL(href).catch(err => console.error("Failed to open URL:", err));
24
- }
22
+ if (href) Linking.openURL(href);
25
23
  };
26
24
  return /*#__PURE__*/_jsx(Text, {
27
25
  style: [styles.link, style],
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","Text","StyleSheet","Linking","useMarkdownContext","jsx","_jsx","Link","href","children","style","theme","styles","create","link","color","colors","textDecorationLine","handlePress","openURL","catch","err","console","error","onPress"],"sourceRoot":"../../../src","sources":["renderers/link.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SAASC,IAAI,EAAEC,UAAU,EAAEC,OAAO,QAAwB,cAAc;AACxE,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQxD,OAAO,MAAMC,IAAmB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EAChE,MAAM;IAAEC;EAAM,CAAC,GAAGP,kBAAkB,CAAC,CAAC;EACtC,MAAMQ,MAAM,GAAGZ,OAAO,CACpB,MACEE,UAAU,CAACW,MAAM,CAAC;IAChBC,IAAI,EAAE;MACJC,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACF,IAAI;MACxBG,kBAAkB,EAAE;IACtB;EACF,CAAC,CAAC,EACJ,CAACN,KAAK,CACR,CAAC;EAED,MAAMO,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAIV,IAAI,EAAE;MACRL,OAAO,CAACgB,OAAO,CAACX,IAAI,CAAC,CAACY,KAAK,CAAEC,GAAG,IAC9BC,OAAO,CAACC,KAAK,CAAC,qBAAqB,EAAEF,GAAG,CAC1C,CAAC;IACH;EACF,CAAC;EAED,oBACEf,IAAA,CAACL,IAAI;IAACS,KAAK,EAAE,CAACE,MAAM,CAACE,IAAI,EAAEJ,KAAK,CAAE;IAACc,OAAO,EAAEN,WAAY;IAAAT,QAAA,EACrDA;EAAQ,CACL,CAAC;AAEX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","Text","StyleSheet","Linking","useMarkdownContext","jsx","_jsx","Link","href","children","style","theme","styles","create","link","color","colors","textDecorationLine","handlePress","openURL","onPress"],"sourceRoot":"../../../src","sources":["renderers/link.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SAASC,IAAI,EAAEC,UAAU,EAAEC,OAAO,QAAwB,cAAc;AACxE,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQxD,OAAO,MAAMC,IAAmB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EAChE,MAAM;IAAEC;EAAM,CAAC,GAAGP,kBAAkB,CAAC,CAAC;EACtC,MAAMQ,MAAM,GAAGZ,OAAO,CACpB,MACEE,UAAU,CAACW,MAAM,CAAC;IAChBC,IAAI,EAAE;MACJC,KAAK,EAAEJ,KAAK,CAACK,MAAM,CAACF,IAAI;MACxBG,kBAAkB,EAAE;IACtB;EACF,CAAC,CAAC,EACJ,CAACN,KAAK,CACR,CAAC;EAED,MAAMO,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAIV,IAAI,EAAEL,OAAO,CAACgB,OAAO,CAACX,IAAI,CAAC;EACjC,CAAC;EAED,oBACEF,IAAA,CAACL,IAAI;IAACS,KAAK,EAAE,CAACE,MAAM,CAACE,IAAI,EAAEJ,KAAK,CAAE;IAACU,OAAO,EAAEF,WAAY;IAAAT,QAAA,EACrDA;EAAQ,CACL,CAAC;AAEX,CAAC","ignoreList":[]}
@@ -5,10 +5,9 @@ import { View, Text, StyleSheet } from "react-native";
5
5
  import { useMarkdownContext } from "../MarkdownContext.js";
6
6
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
7
  export const List = ({
8
- ordered,
9
- start = 1,
10
8
  depth,
11
- children
9
+ children,
10
+ style
12
11
  }) => {
13
12
  const {
14
13
  theme
@@ -18,12 +17,12 @@ export const List = ({
18
17
  marginBottom: theme.spacing.m
19
18
  },
20
19
  listNested: {
21
- marginLeft: theme.spacing.l,
20
+ marginLeft: theme.spacing.s,
22
21
  marginBottom: 0
23
22
  }
24
23
  }), [theme]);
25
24
  return /*#__PURE__*/_jsx(View, {
26
- style: [styles.list, depth > 0 && styles.listNested],
25
+ style: [styles.list, depth > 0 && styles.listNested, style],
27
26
  children: children
28
27
  });
29
28
  };
@@ -31,7 +30,8 @@ export const ListItem = ({
31
30
  children,
32
31
  index,
33
32
  ordered,
34
- start
33
+ start,
34
+ style
35
35
  }) => {
36
36
  const {
37
37
  theme
@@ -48,7 +48,8 @@ export const ListItem = ({
48
48
  lineHeight: theme.fontSizes.m * 1.6,
49
49
  marginRight: theme.spacing.s,
50
50
  minWidth: 20,
51
- textAlign: "center"
51
+ textAlign: "center",
52
+ fontFamily: theme.fontFamilies.regular
52
53
  },
53
54
  listItemContent: {
54
55
  flex: 1,
@@ -58,7 +59,7 @@ export const ListItem = ({
58
59
  }), [theme]);
59
60
  const bullet = ordered ? `${start + index}.` : "•";
60
61
  return /*#__PURE__*/_jsxs(View, {
61
- style: styles.listItem,
62
+ style: [styles.listItem, style],
62
63
  children: [/*#__PURE__*/_jsx(Text, {
63
64
  style: styles.listBullet,
64
65
  children: bullet
@@ -70,7 +71,8 @@ export const ListItem = ({
70
71
  };
71
72
  export const TaskListItem = ({
72
73
  children,
73
- checked
74
+ checked,
75
+ style
74
76
  }) => {
75
77
  const {
76
78
  theme
@@ -94,7 +96,7 @@ export const TaskListItem = ({
94
96
  }
95
97
  }), [theme]);
96
98
  return /*#__PURE__*/_jsxs(View, {
97
- style: styles.taskListItem,
99
+ style: [styles.taskListItem, style],
98
100
  children: [/*#__PURE__*/_jsx(Text, {
99
101
  style: styles.taskCheckbox,
100
102
  children: checked ? "☑" : "☐"
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","View","Text","StyleSheet","useMarkdownContext","jsx","_jsx","jsxs","_jsxs","List","ordered","start","depth","children","theme","styles","create","list","marginBottom","spacing","m","listNested","marginLeft","l","style","ListItem","index","listItem","flexDirection","s","alignItems","listBullet","color","colors","accent","fontSize","fontSizes","lineHeight","marginRight","minWidth","textAlign","listItemContent","flex","flexShrink","bullet","TaskListItem","checked","taskListItem","taskCheckbox","taskContent"],"sourceRoot":"../../../src","sources":["renderers/list.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","View","Text","StyleSheet","useMarkdownContext","jsx","_jsx","jsxs","_jsxs","List","depth","children","style","theme","styles","create","list","marginBottom","spacing","m","listNested","marginLeft","s","ListItem","index","ordered","start","listItem","flexDirection","alignItems","listBullet","color","colors","accent","fontSize","fontSizes","lineHeight","marginRight","minWidth","textAlign","fontFamily","fontFamilies","regular","listItemContent","flex","flexShrink","bullet","TaskListItem","checked","taskListItem","taskCheckbox","l","taskContent"],"sourceRoot":"../../../src","sources":["renderers/list.tsx"],"mappings":";;AAAA,SAAoBA,OAAO,QAAiB,OAAO;AACnD,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAwB,cAAc;AACrE,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAUxD,OAAO,MAAMC,IAAmB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACjE,MAAM;IAAEC;EAAM,CAAC,GAAGT,kBAAkB,CAAC,CAAC;EACtC,MAAMU,MAAM,GAAGd,OAAO,CACpB,MACEG,UAAU,CAACY,MAAM,CAAC;IAChBC,IAAI,EAAE;MACJC,YAAY,EAAEJ,KAAK,CAACK,OAAO,CAACC;IAC9B,CAAC;IACDC,UAAU,EAAE;MACVC,UAAU,EAAER,KAAK,CAACK,OAAO,CAACI,CAAC;MAC3BL,YAAY,EAAE;IAChB;EACF,CAAC,CAAC,EACJ,CAACJ,KAAK,CACR,CAAC;EACD,oBACEP,IAAA,CAACL,IAAI;IAACW,KAAK,EAAE,CAACE,MAAM,CAACE,IAAI,EAAEN,KAAK,GAAG,CAAC,IAAII,MAAM,CAACM,UAAU,EAAER,KAAK,CAAE;IAAAD,QAAA,EAC/DA;EAAQ,CACL,CAAC;AAEX,CAAC;AAUD,OAAO,MAAMY,QAA2B,GAAGA,CAAC;EAC1CZ,QAAQ;EACRa,KAAK;EACLC,OAAO;EACPC,KAAK;EACLd;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAGT,kBAAkB,CAAC,CAAC;EACtC,MAAMU,MAAM,GAAGd,OAAO,CACpB,MACEG,UAAU,CAACY,MAAM,CAAC;IAChBY,QAAQ,EAAE;MACRC,aAAa,EAAE,KAAK;MACpBX,YAAY,EAAEJ,KAAK,CAACK,OAAO,CAACI,CAAC;MAC7BO,UAAU,EAAE;IACd,CAAC;IACDC,UAAU,EAAE;MACVC,KAAK,EAAElB,KAAK,CAACmB,MAAM,CAACC,MAAM;MAC1BC,QAAQ,EAAErB,KAAK,CAACsB,SAAS,CAAChB,CAAC;MAC3BiB,UAAU,EAAEvB,KAAK,CAACsB,SAAS,CAAChB,CAAC,GAAG,GAAG;MACnCkB,WAAW,EAAExB,KAAK,CAACK,OAAO,CAACI,CAAC;MAC5BgB,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,QAAQ;MACnBC,UAAU,EAAE3B,KAAK,CAAC4B,YAAY,CAACC;IACjC,CAAC;IACDC,eAAe,EAAE;MACfC,IAAI,EAAE,CAAC;MACPC,UAAU,EAAE,CAAC;MACbP,QAAQ,EAAE;IACZ;EACF,CAAC,CAAC,EACJ,CAACzB,KAAK,CACR,CAAC;EACD,MAAMiC,MAAM,GAAGrB,OAAO,GAAG,GAAGC,KAAK,GAAGF,KAAK,GAAG,GAAG,GAAG;EAClD,oBACEhB,KAAA,CAACP,IAAI;IAACW,KAAK,EAAE,CAACE,MAAM,CAACa,QAAQ,EAAEf,KAAK,CAAE;IAAAD,QAAA,gBACpCL,IAAA,CAACJ,IAAI;MAACU,KAAK,EAAEE,MAAM,CAACgB,UAAW;MAAAnB,QAAA,EAAEmC;IAAM,CAAO,CAAC,eAC/CxC,IAAA,CAACL,IAAI;MAACW,KAAK,EAAEE,MAAM,CAAC6B,eAAgB;MAAAhC,QAAA,EAAEA;IAAQ,CAAO,CAAC;EAAA,CAClD,CAAC;AAEX,CAAC;AAQD,OAAO,MAAMoC,YAAmC,GAAGA,CAAC;EAClDpC,QAAQ;EACRqC,OAAO;EACPpC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAGT,kBAAkB,CAAC,CAAC;EACtC,MAAMU,MAAM,GAAGd,OAAO,CACpB,MACEG,UAAU,CAACY,MAAM,CAAC;IAChBkC,YAAY,EAAE;MACZrB,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,YAAY;MACxBZ,YAAY,EAAEJ,KAAK,CAACK,OAAO,CAACI;IAC9B,CAAC;IACD4B,YAAY,EAAE;MACZhB,QAAQ,EAAErB,KAAK,CAACsB,SAAS,CAACgB,CAAC;MAC3Bf,UAAU,EAAEvB,KAAK,CAACsB,SAAS,CAAChB,CAAC,GAAG,GAAG;MACnCkB,WAAW,EAAExB,KAAK,CAACK,OAAO,CAACI,CAAC;MAC5BS,KAAK,EAAElB,KAAK,CAACmB,MAAM,CAACC;IACtB,CAAC;IACDmB,WAAW,EAAE;MACXR,IAAI,EAAE,CAAC;MACPC,UAAU,EAAE,CAAC;MACbP,QAAQ,EAAE;IACZ;EACF,CAAC,CAAC,EACJ,CAACzB,KAAK,CACR,CAAC;EACD,oBACEL,KAAA,CAACP,IAAI;IAACW,KAAK,EAAE,CAACE,MAAM,CAACmC,YAAY,EAAErC,KAAK,CAAE;IAAAD,QAAA,gBACxCL,IAAA,CAACJ,IAAI;MAACU,KAAK,EAAEE,MAAM,CAACoC,YAAa;MAAAvC,QAAA,EAAEqC,OAAO,GAAG,GAAG,GAAG;IAAG,CAAO,CAAC,eAC9D1C,IAAA,CAACL,IAAI;MAACW,KAAK,EAAEE,MAAM,CAACsC,WAAY;MAAAzC,QAAA,EAAEA;IAAQ,CAAO,CAAC;EAAA,CAC9C,CAAC;AAEX,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { useMemo } from "react";
4
- import { View, Text, StyleSheet } from "react-native";
4
+ import { View, Text, StyleSheet, Platform } from "react-native";
5
5
  import { useMarkdownContext } from "../MarkdownContext.js";
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
7
  let MathJaxComponent = null;
@@ -12,38 +12,24 @@ try {
12
12
  } catch {
13
13
  // ignored
14
14
  }
15
- /**
16
- * Inline math renderer.
17
- * Uses react-native-mathjax-svg if installed, otherwise shows raw LaTeX.
18
- * Note: Renders as a View since SVG can't be nested in Text.
19
- */
20
-
21
15
  const createMathStyles = theme => StyleSheet.create({
22
16
  mathInlineContainer: {
23
- flexDirection: "row",
24
- alignItems: "baseline",
25
- alignSelf: "baseline",
26
- justifyContent: "flex-start",
27
- flexShrink: 1,
28
17
  marginHorizontal: 2,
29
- top: -theme.fontSizes.m,
30
- marginBottom: 0,
31
- paddingVertical: 0
32
- },
33
- mathJaxInline: {
34
- marginTop: 0,
35
- marginBottom: 0
18
+ // Ensure the inline view has layout alignment
19
+ justifyContent: "center"
36
20
  },
37
21
  mathInlineFallbackContainer: {
38
22
  backgroundColor: theme.colors.codeBackground,
39
- paddingHorizontal: 4,
23
+ paddingHorizontal: theme.spacing.xs,
40
24
  paddingVertical: 2,
41
- borderRadius: 4,
42
- alignSelf: "baseline",
25
+ borderRadius: theme.borderRadius.s,
43
26
  marginHorizontal: 2
44
27
  },
45
28
  mathInlineFallback: {
46
- fontFamily: "monospace",
29
+ fontFamily: theme.fontFamilies.mono ?? Platform.select({
30
+ ios: "Courier",
31
+ android: "monospace"
32
+ }),
47
33
  fontSize: theme.fontSizes.s,
48
34
  color: theme.colors.code
49
35
  },
@@ -52,38 +38,36 @@ const createMathStyles = theme => StyleSheet.create({
52
38
  paddingVertical: theme.spacing.l,
53
39
  paddingHorizontal: theme.spacing.l,
54
40
  backgroundColor: theme.colors.surface,
55
- borderRadius: 12,
41
+ borderRadius: theme.borderRadius.l,
56
42
  alignItems: "center",
57
43
  borderWidth: 1,
58
44
  borderColor: theme.colors.border,
59
- shadowColor: "#000",
60
- shadowOffset: {
61
- width: 0,
62
- height: 1
63
- },
64
- shadowOpacity: 0.05,
65
- shadowRadius: 2,
66
- elevation: 1
45
+ // Ensure we don't collapse if MathJax fails to report size immediately
46
+ minHeight: 48
67
47
  },
68
48
  mathBlockFallbackContainer: {
69
49
  marginVertical: theme.spacing.m,
70
50
  paddingVertical: theme.spacing.m,
71
51
  paddingHorizontal: theme.spacing.l,
72
52
  backgroundColor: theme.colors.codeBackground,
73
- borderRadius: 8,
53
+ borderRadius: theme.borderRadius.m,
74
54
  alignItems: "center",
75
55
  borderWidth: 1,
76
56
  borderColor: theme.colors.border
77
57
  },
78
58
  mathBlockFallback: {
79
- fontFamily: "monospace",
59
+ fontFamily: theme.fontFamilies.mono ?? Platform.select({
60
+ ios: "Courier",
61
+ android: "monospace"
62
+ }),
80
63
  fontSize: theme.fontSizes.m,
81
64
  color: theme.colors.code,
82
65
  textAlign: "center"
83
66
  }
84
67
  });
85
68
  export const MathInline = ({
86
- content
69
+ content,
70
+ style
87
71
  }) => {
88
72
  const {
89
73
  theme
@@ -91,32 +75,31 @@ export const MathInline = ({
91
75
  const styles = useMemo(() => createMathStyles(theme), [theme]);
92
76
  if (!content) return null;
93
77
  if (MathJaxComponent) {
94
- const fontSize = theme.fontSizes.m;
78
+ const fontSize = theme.fontSizes.s;
95
79
  return /*#__PURE__*/_jsx(View, {
96
- style: styles.mathInlineContainer,
80
+ style: [styles.mathInlineContainer, style],
97
81
  children: /*#__PURE__*/_jsx(MathJaxComponent, {
98
82
  fontSize: fontSize,
99
83
  color: theme.colors.text,
100
- fontCache: true,
101
- style: styles.mathJaxInline,
84
+ fontCache: false,
85
+ style: {
86
+ backgroundColor: "transparent"
87
+ },
102
88
  children: content
103
89
  })
104
90
  });
105
91
  }
106
92
  return /*#__PURE__*/_jsx(View, {
107
- style: styles.mathInlineFallbackContainer,
93
+ style: [styles.mathInlineFallbackContainer, style],
108
94
  children: /*#__PURE__*/_jsx(Text, {
109
95
  style: styles.mathInlineFallback,
110
96
  children: content
111
97
  })
112
98
  });
113
99
  };
114
- /**
115
- * Block math renderer.
116
- * Uses react-native-mathjax-svg if installed, otherwise shows raw LaTeX.
117
- */
118
100
  export const MathBlock = ({
119
- content
101
+ content,
102
+ style
120
103
  }) => {
121
104
  const {
122
105
  theme
@@ -125,17 +108,20 @@ export const MathBlock = ({
125
108
  if (!content) return null;
126
109
  if (MathJaxComponent) {
127
110
  return /*#__PURE__*/_jsx(View, {
128
- style: styles.mathBlockContainer,
111
+ style: [styles.mathBlockContainer, style],
129
112
  children: /*#__PURE__*/_jsx(MathJaxComponent, {
130
113
  fontSize: theme.fontSizes.l,
131
114
  color: theme.colors.text,
132
- fontCache: true,
115
+ fontCache: false,
116
+ style: {
117
+ backgroundColor: "transparent"
118
+ },
133
119
  children: `\\displaystyle ${content}`
134
120
  })
135
121
  });
136
122
  }
137
123
  return /*#__PURE__*/_jsx(View, {
138
- style: styles.mathBlockFallbackContainer,
124
+ style: [styles.mathBlockFallbackContainer, style],
139
125
  children: /*#__PURE__*/_jsx(Text, {
140
126
  style: styles.mathBlockFallback,
141
127
  children: content