react-native-enriched-html 1.0.0 → 1.0.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 (272) hide show
  1. package/android/src/main/java/com/swmansion/enriched/common/EnrichedSpanFlags.kt +39 -0
  2. package/android/src/main/java/com/swmansion/enriched/common/parser/EnrichedParser.java +43 -20
  3. package/android/src/main/java/com/swmansion/enriched/common/parser/EnrichedSpanFactory.kt +1 -0
  4. package/android/src/main/java/com/swmansion/enriched/text/EnrichedTextSpanFactory.kt +1 -0
  5. package/android/src/main/java/com/swmansion/enriched/text/EnrichedTextView.kt +2 -1
  6. package/android/src/main/java/com/swmansion/enriched/textinput/EnrichedTextInputSpannableFactory.kt +2 -1
  7. package/android/src/main/java/com/swmansion/enriched/textinput/EnrichedTextInputView.kt +8 -5
  8. package/android/src/main/java/com/swmansion/enriched/textinput/events/MentionHandler.kt +12 -2
  9. package/android/src/main/java/com/swmansion/enriched/textinput/events/OnMentionEvent.kt +6 -0
  10. package/android/src/main/java/com/swmansion/enriched/textinput/styles/AlignmentStyles.kt +6 -7
  11. package/android/src/main/java/com/swmansion/enriched/textinput/styles/InlineStyles.kt +13 -1
  12. package/android/src/main/java/com/swmansion/enriched/textinput/styles/ListStyles.kt +4 -3
  13. package/android/src/main/java/com/swmansion/enriched/textinput/styles/ParagraphStyles.kt +4 -3
  14. package/android/src/main/java/com/swmansion/enriched/textinput/styles/ParametrizedStyles.kt +38 -11
  15. package/android/src/main/java/com/swmansion/enriched/textinput/utils/EnrichedSelection.kt +2 -0
  16. package/android/src/main/java/com/swmansion/enriched/textinput/utils/EnrichedSpannable.kt +2 -1
  17. package/android/src/main/java/com/swmansion/enriched/textinput/utils/Utils.kt +2 -1
  18. package/cpp/parser/GumboNormalizer.c +61 -3
  19. package/cpp/tests/GumboParserTest.cpp +54 -0
  20. package/ios/EnrichedTextInputView.mm +37 -25
  21. package/ios/extensions/LayoutManagerExtension.mm +73 -62
  22. package/ios/extensions/StringExtension.mm +75 -0
  23. package/ios/htmlParser/HtmlParser.h +4 -1
  24. package/ios/htmlParser/HtmlParser.mm +23 -5
  25. package/ios/inputHtmlParser/InputHtmlParser.mm +6 -3
  26. package/ios/interfaces/StyleHeaders.h +4 -0
  27. package/ios/styles/LinkStyle.mm +20 -34
  28. package/ios/styles/MentionStyle.mm +55 -4
  29. package/ios/textHtmlParser/TextHtmlParser.mm +2 -1
  30. package/ios/utils/ParagraphAttributesUtils.mm +7 -0
  31. package/lib/module/index.js +1 -0
  32. package/lib/module/index.js.map +1 -1
  33. package/lib/module/utils/expandMentionStylesForIndicators.js +2 -3
  34. package/lib/module/utils/expandMentionStylesForIndicators.js.map +1 -1
  35. package/lib/module/utils/normalizeHtmlStyle.js +1 -1
  36. package/lib/module/utils/normalizeHtmlStyle.js.map +1 -1
  37. package/lib/module/web/EnrichedText.css +343 -0
  38. package/lib/module/web/EnrichedText.js +55 -0
  39. package/lib/module/web/EnrichedText.js.map +1 -0
  40. package/lib/module/web/EnrichedTextInput.js +54 -52
  41. package/lib/module/web/EnrichedTextInput.js.map +1 -1
  42. package/lib/module/web/constants/brokenImageGlyph.js +9 -0
  43. package/lib/module/web/constants/brokenImageGlyph.js.map +1 -0
  44. package/lib/module/web/constants/classNames.js +5 -0
  45. package/lib/module/web/constants/classNames.js.map +1 -0
  46. package/lib/module/web/emitLinkDetected.js +12 -0
  47. package/lib/module/web/emitLinkDetected.js.map +1 -0
  48. package/lib/module/web/formats/EnrichedBlockquote.js +1 -1
  49. package/lib/module/web/formats/EnrichedBlockquote.js.map +1 -1
  50. package/lib/module/web/formats/EnrichedCheckboxList.js +2 -2
  51. package/lib/module/web/formats/EnrichedCheckboxList.js.map +1 -1
  52. package/lib/module/web/formats/EnrichedCodeBlock.js +1 -1
  53. package/lib/module/web/formats/EnrichedCodeBlock.js.map +1 -1
  54. package/lib/module/web/formats/EnrichedHeading.js +1 -1
  55. package/lib/module/web/formats/EnrichedHeading.js.map +1 -1
  56. package/lib/module/web/formats/EnrichedImageNodeView.js +1 -1
  57. package/lib/module/web/formats/EnrichedImageNodeView.js.map +1 -1
  58. package/lib/module/web/formats/EnrichedLink.js +43 -3
  59. package/lib/module/web/formats/EnrichedLink.js.map +1 -1
  60. package/lib/module/web/formats/EnrichedOrderedList.js +2 -2
  61. package/lib/module/web/formats/EnrichedOrderedList.js.map +1 -1
  62. package/lib/module/web/formats/EnrichedTextAlign.js +82 -0
  63. package/lib/module/web/formats/EnrichedTextAlign.js.map +1 -0
  64. package/lib/module/web/formats/EnrichedUnorderedList.js +2 -2
  65. package/lib/module/web/formats/EnrichedUnorderedList.js.map +1 -1
  66. package/lib/module/web/formats/applyWrappingListToSelection.js +3 -2
  67. package/lib/module/web/formats/applyWrappingListToSelection.js.map +1 -1
  68. package/lib/module/web/formats/formatRules.js +39 -3
  69. package/lib/module/web/formats/formatRules.js.map +1 -1
  70. package/lib/module/web/formats/listKeyboard.js +4 -1
  71. package/lib/module/web/formats/listKeyboard.js.map +1 -1
  72. package/lib/module/web/normalization/checkboxHtmlNormalizer.js.map +1 -0
  73. package/lib/module/web/normalization/htmlNormalizer.js +514 -0
  74. package/lib/module/web/normalization/htmlNormalizer.js.map +1 -0
  75. package/lib/module/web/normalization/prepareHtmlForWeb.js +78 -0
  76. package/lib/module/web/normalization/prepareHtmlForWeb.js.map +1 -0
  77. package/lib/module/web/{tiptapHtmlNormalizer.js → normalization/tiptapHtmlNormalizer.js} +6 -2
  78. package/lib/module/web/normalization/tiptapHtmlNormalizer.js.map +1 -0
  79. package/lib/module/web/pmPlugins/AutolinkPlugin/autolinkRegex.js +27 -0
  80. package/lib/module/web/pmPlugins/AutolinkPlugin/autolinkRegex.js.map +1 -0
  81. package/lib/module/web/pmPlugins/AutolinkPlugin/index.js +178 -0
  82. package/lib/module/web/pmPlugins/AutolinkPlugin/index.js.map +1 -0
  83. package/lib/module/web/pmPlugins/MentionPlugin/index.js +1 -1
  84. package/lib/module/web/pmPlugins/MentionPlugin/index.js.map +1 -1
  85. package/lib/module/web/pmPlugins/MentionPlugin/makeMentionPluginState.js +23 -4
  86. package/lib/module/web/pmPlugins/MentionPlugin/makeMentionPluginState.js.map +1 -1
  87. package/lib/module/web/pmPlugins/MentionPlugin/setMention.js +17 -18
  88. package/lib/module/web/pmPlugins/MentionPlugin/setMention.js.map +1 -1
  89. package/lib/module/web/pmPlugins/MentionPlugin/useMentionEvents.js +105 -0
  90. package/lib/module/web/pmPlugins/MentionPlugin/useMentionEvents.js.map +1 -0
  91. package/lib/module/web/pmPlugins/ShortcutPlugin.js +11 -0
  92. package/lib/module/web/pmPlugins/ShortcutPlugin.js.map +1 -1
  93. package/lib/module/web/pmPlugins/StrictMarksPlugin.js +2 -0
  94. package/lib/module/web/pmPlugins/StrictMarksPlugin.js.map +1 -1
  95. package/lib/module/web/pmPlugins/StripBoldInStyledHeadingsPlugin.js.map +1 -1
  96. package/lib/module/web/sanitization/htmlSanitizer.js +10 -0
  97. package/lib/module/web/sanitization/htmlSanitizer.js.map +1 -0
  98. package/lib/module/web/styleConversion/buildMentionRulesCSS.js +12 -6
  99. package/lib/module/web/styleConversion/buildMentionRulesCSS.js.map +1 -1
  100. package/lib/module/web/styleConversion/enrichedBaseStyleToCSSProperties.js +159 -0
  101. package/lib/module/web/styleConversion/enrichedBaseStyleToCSSProperties.js.map +1 -0
  102. package/lib/module/web/styleConversion/enrichedInputStyleToCSSProperties.js +3 -155
  103. package/lib/module/web/styleConversion/enrichedInputStyleToCSSProperties.js.map +1 -1
  104. package/lib/module/web/styleConversion/enrichedTextStyleToCSSProperties.js +44 -0
  105. package/lib/module/web/styleConversion/enrichedTextStyleToCSSProperties.js.map +1 -0
  106. package/lib/module/web/styleConversion/{enrichedInputThemingToCSSProperties.js → enrichedThemingToCSSProperties.js} +3 -3
  107. package/lib/module/web/styleConversion/enrichedThemingToCSSProperties.js.map +1 -0
  108. package/lib/module/web/styleConversion/htmlStyleToCSSVariables.js +87 -64
  109. package/lib/module/web/styleConversion/htmlStyleToCSSVariables.js.map +1 -1
  110. package/lib/module/web/styleConversion/inlineImageCSSVariables.js +7 -0
  111. package/lib/module/web/styleConversion/inlineImageCSSVariables.js.map +1 -0
  112. package/lib/module/web/useImageErrorFallback.js +33 -0
  113. package/lib/module/web/useImageErrorFallback.js.map +1 -0
  114. package/lib/module/web/useOnChangeHtml.js +1 -1
  115. package/lib/module/web/useOnChangeHtml.js.map +1 -1
  116. package/lib/module/web/useOnChangeState.js +6 -3
  117. package/lib/module/web/useOnChangeState.js.map +1 -1
  118. package/lib/module/web/useOnLinkDetected.js +32 -45
  119. package/lib/module/web/useOnLinkDetected.js.map +1 -1
  120. package/lib/module/web/usePressInteractions.js +19 -0
  121. package/lib/module/web/usePressInteractions.js.map +1 -0
  122. package/lib/module/web/useStableRef.js +13 -0
  123. package/lib/module/web/useStableRef.js.map +1 -0
  124. package/lib/typescript/src/index.d.ts +1 -0
  125. package/lib/typescript/src/index.d.ts.map +1 -1
  126. package/lib/typescript/src/native/EnrichedText.d.ts +1 -1
  127. package/lib/typescript/src/native/EnrichedText.d.ts.map +1 -1
  128. package/lib/typescript/src/native/EnrichedTextInput.d.ts +1 -1
  129. package/lib/typescript/src/native/EnrichedTextInput.d.ts.map +1 -1
  130. package/lib/typescript/src/types.d.ts +1 -1
  131. package/lib/typescript/src/types.d.ts.map +1 -1
  132. package/lib/typescript/src/utils/expandMentionStylesForIndicators.d.ts +1 -1
  133. package/lib/typescript/src/utils/expandMentionStylesForIndicators.d.ts.map +1 -1
  134. package/lib/typescript/src/utils/normalizeHtmlStyle.d.ts.map +1 -1
  135. package/lib/typescript/src/web/EnrichedText.d.ts +4 -0
  136. package/lib/typescript/src/web/EnrichedText.d.ts.map +1 -0
  137. package/lib/typescript/src/web/EnrichedTextInput.d.ts +2 -2
  138. package/lib/typescript/src/web/EnrichedTextInput.d.ts.map +1 -1
  139. package/lib/typescript/src/web/constants/brokenImageGlyph.d.ts +3 -0
  140. package/lib/typescript/src/web/constants/brokenImageGlyph.d.ts.map +1 -0
  141. package/lib/typescript/src/web/constants/classNames.d.ts +3 -0
  142. package/lib/typescript/src/web/constants/classNames.d.ts.map +1 -0
  143. package/lib/typescript/src/web/emitLinkDetected.d.ts +10 -0
  144. package/lib/typescript/src/web/emitLinkDetected.d.ts.map +1 -0
  145. package/lib/typescript/src/web/formats/EnrichedBlockquote.d.ts.map +1 -1
  146. package/lib/typescript/src/web/formats/EnrichedCheckboxList.d.ts.map +1 -1
  147. package/lib/typescript/src/web/formats/EnrichedCodeBlock.d.ts.map +1 -1
  148. package/lib/typescript/src/web/formats/EnrichedHeading.d.ts.map +1 -1
  149. package/lib/typescript/src/web/formats/EnrichedImageNodeView.d.ts +1 -1
  150. package/lib/typescript/src/web/formats/EnrichedImageNodeView.d.ts.map +1 -1
  151. package/lib/typescript/src/web/formats/EnrichedLink.d.ts +4 -1
  152. package/lib/typescript/src/web/formats/EnrichedLink.d.ts.map +1 -1
  153. package/lib/typescript/src/web/formats/EnrichedOrderedList.d.ts.map +1 -1
  154. package/lib/typescript/src/web/formats/EnrichedTextAlign.d.ts +2 -0
  155. package/lib/typescript/src/web/formats/EnrichedTextAlign.d.ts.map +1 -0
  156. package/lib/typescript/src/web/formats/EnrichedUnorderedList.d.ts.map +1 -1
  157. package/lib/typescript/src/web/formats/applyWrappingListToSelection.d.ts.map +1 -1
  158. package/lib/typescript/src/web/formats/formatRules.d.ts +3 -1
  159. package/lib/typescript/src/web/formats/formatRules.d.ts.map +1 -1
  160. package/lib/typescript/src/web/formats/listKeyboard.d.ts.map +1 -1
  161. package/lib/typescript/src/web/normalization/checkboxHtmlNormalizer.d.ts.map +1 -0
  162. package/lib/typescript/src/web/normalization/htmlNormalizer.d.ts +2 -0
  163. package/lib/typescript/src/web/normalization/htmlNormalizer.d.ts.map +1 -0
  164. package/lib/typescript/src/web/normalization/prepareHtmlForWeb.d.ts +2 -0
  165. package/lib/typescript/src/web/normalization/prepareHtmlForWeb.d.ts.map +1 -0
  166. package/lib/typescript/src/web/normalization/tiptapHtmlNormalizer.d.ts +3 -0
  167. package/lib/typescript/src/web/normalization/tiptapHtmlNormalizer.d.ts.map +1 -0
  168. package/lib/typescript/src/web/pmPlugins/AutolinkPlugin/autolinkRegex.d.ts +7 -0
  169. package/lib/typescript/src/web/pmPlugins/AutolinkPlugin/autolinkRegex.d.ts.map +1 -0
  170. package/lib/typescript/src/web/pmPlugins/AutolinkPlugin/index.d.ts +8 -0
  171. package/lib/typescript/src/web/pmPlugins/AutolinkPlugin/index.d.ts.map +1 -0
  172. package/lib/typescript/src/web/pmPlugins/MentionPlugin/index.d.ts +1 -1
  173. package/lib/typescript/src/web/pmPlugins/MentionPlugin/index.d.ts.map +1 -1
  174. package/lib/typescript/src/web/pmPlugins/MentionPlugin/makeMentionPluginState.d.ts.map +1 -1
  175. package/lib/typescript/src/web/pmPlugins/MentionPlugin/setMention.d.ts.map +1 -1
  176. package/lib/typescript/src/web/pmPlugins/MentionPlugin/useMentionEvents.d.ts +4 -0
  177. package/lib/typescript/src/web/pmPlugins/MentionPlugin/useMentionEvents.d.ts.map +1 -0
  178. package/lib/typescript/src/web/pmPlugins/ShortcutPlugin.d.ts.map +1 -1
  179. package/lib/typescript/src/web/pmPlugins/StrictMarksPlugin.d.ts.map +1 -1
  180. package/lib/typescript/src/web/pmPlugins/StripBoldInStyledHeadingsPlugin.d.ts +6 -1
  181. package/lib/typescript/src/web/pmPlugins/StripBoldInStyledHeadingsPlugin.d.ts.map +1 -1
  182. package/lib/typescript/src/web/sanitization/htmlSanitizer.d.ts +2 -0
  183. package/lib/typescript/src/web/sanitization/htmlSanitizer.d.ts.map +1 -0
  184. package/lib/typescript/src/web/styleConversion/buildMentionRulesCSS.d.ts +2 -2
  185. package/lib/typescript/src/web/styleConversion/buildMentionRulesCSS.d.ts.map +1 -1
  186. package/lib/typescript/src/web/styleConversion/enrichedBaseStyleToCSSProperties.d.ts +8 -0
  187. package/lib/typescript/src/web/styleConversion/enrichedBaseStyleToCSSProperties.d.ts.map +1 -0
  188. package/lib/typescript/src/web/styleConversion/enrichedInputStyleToCSSProperties.d.ts +2 -5
  189. package/lib/typescript/src/web/styleConversion/enrichedInputStyleToCSSProperties.d.ts.map +1 -1
  190. package/lib/typescript/src/web/styleConversion/enrichedTextStyleToCSSProperties.d.ts +4 -0
  191. package/lib/typescript/src/web/styleConversion/enrichedTextStyleToCSSProperties.d.ts.map +1 -0
  192. package/lib/typescript/src/web/styleConversion/{enrichedInputThemingToCSSProperties.d.ts → enrichedThemingToCSSProperties.d.ts} +1 -1
  193. package/lib/typescript/src/web/styleConversion/enrichedThemingToCSSProperties.d.ts.map +1 -0
  194. package/lib/typescript/src/web/styleConversion/htmlStyleToCSSVariables.d.ts +5 -4
  195. package/lib/typescript/src/web/styleConversion/htmlStyleToCSSVariables.d.ts.map +1 -1
  196. package/lib/typescript/src/web/styleConversion/inlineImageCSSVariables.d.ts +3 -0
  197. package/lib/typescript/src/web/styleConversion/inlineImageCSSVariables.d.ts.map +1 -0
  198. package/lib/typescript/src/web/useImageErrorFallback.d.ts +3 -0
  199. package/lib/typescript/src/web/useImageErrorFallback.d.ts.map +1 -0
  200. package/lib/typescript/src/web/useOnChangeState.d.ts.map +1 -1
  201. package/lib/typescript/src/web/useOnLinkDetected.d.ts +2 -2
  202. package/lib/typescript/src/web/useOnLinkDetected.d.ts.map +1 -1
  203. package/lib/typescript/src/web/usePressInteractions.d.ts +2 -0
  204. package/lib/typescript/src/web/usePressInteractions.d.ts.map +1 -0
  205. package/lib/typescript/src/web/useStableRef.d.ts +3 -0
  206. package/lib/typescript/src/web/useStableRef.d.ts.map +1 -0
  207. package/package.json +54 -28
  208. package/src/index.tsx +1 -0
  209. package/src/types.ts +5 -3
  210. package/src/utils/expandMentionStylesForIndicators.ts +3 -3
  211. package/src/utils/normalizeHtmlStyle.ts +2 -1
  212. package/src/web/EnrichedText.css +343 -0
  213. package/src/web/EnrichedText.tsx +82 -0
  214. package/src/web/EnrichedTextInput.tsx +69 -55
  215. package/src/web/constants/brokenImageGlyph.ts +7 -0
  216. package/src/web/constants/classNames.ts +2 -0
  217. package/src/web/emitLinkDetected.ts +29 -0
  218. package/src/web/formats/EnrichedBlockquote.ts +2 -1
  219. package/src/web/formats/EnrichedCheckboxList.ts +5 -2
  220. package/src/web/formats/EnrichedCodeBlock.ts +2 -1
  221. package/src/web/formats/EnrichedHeading.ts +2 -1
  222. package/src/web/formats/EnrichedImageNodeView.tsx +1 -3
  223. package/src/web/formats/EnrichedLink.ts +59 -4
  224. package/src/web/formats/EnrichedOrderedList.ts +5 -2
  225. package/src/web/formats/EnrichedTextAlign.ts +88 -0
  226. package/src/web/formats/EnrichedUnorderedList.ts +5 -2
  227. package/src/web/formats/applyWrappingListToSelection.ts +4 -4
  228. package/src/web/formats/formatRules.ts +48 -4
  229. package/src/web/formats/listKeyboard.ts +6 -1
  230. package/src/web/normalization/htmlNormalizer.ts +656 -0
  231. package/src/web/normalization/prepareHtmlForWeb.ts +93 -0
  232. package/src/web/{tiptapHtmlNormalizer.ts → normalization/tiptapHtmlNormalizer.ts} +12 -2
  233. package/src/web/pmPlugins/AutolinkPlugin/autolinkRegex.ts +43 -0
  234. package/src/web/pmPlugins/AutolinkPlugin/index.ts +274 -0
  235. package/src/web/pmPlugins/MentionPlugin/index.ts +1 -1
  236. package/src/web/pmPlugins/MentionPlugin/makeMentionPluginState.ts +32 -5
  237. package/src/web/pmPlugins/MentionPlugin/setMention.ts +19 -29
  238. package/src/web/pmPlugins/MentionPlugin/useMentionEvents.ts +114 -0
  239. package/src/web/pmPlugins/ShortcutPlugin.ts +7 -0
  240. package/src/web/pmPlugins/StrictMarksPlugin.ts +3 -0
  241. package/src/web/pmPlugins/StripBoldInStyledHeadingsPlugin.ts +41 -36
  242. package/src/web/sanitization/htmlSanitizer.ts +8 -0
  243. package/src/web/styleConversion/buildMentionRulesCSS.ts +30 -11
  244. package/src/web/styleConversion/enrichedBaseStyleToCSSProperties.ts +228 -0
  245. package/src/web/styleConversion/enrichedInputStyleToCSSProperties.ts +6 -217
  246. package/src/web/styleConversion/enrichedTextStyleToCSSProperties.ts +53 -0
  247. package/src/web/styleConversion/{enrichedInputThemingToCSSProperties.ts → enrichedThemingToCSSProperties.ts} +4 -4
  248. package/src/web/styleConversion/htmlStyleToCSSVariables.ts +121 -70
  249. package/src/web/styleConversion/inlineImageCSSVariables.ts +6 -0
  250. package/src/web/useImageErrorFallback.ts +37 -0
  251. package/src/web/useOnChangeHtml.ts +1 -1
  252. package/src/web/useOnChangeState.ts +7 -5
  253. package/src/web/useOnLinkDetected.ts +38 -50
  254. package/src/web/usePressInteractions.tsx +22 -0
  255. package/src/web/useStableRef.ts +12 -0
  256. package/lib/module/web/EnrichedTextInput.css +0 -201
  257. package/lib/module/web/checkboxHtmlNormalizer.js.map +0 -1
  258. package/lib/module/web/pmPlugins/MentionPlugin/subscribeMentionEvents.js +0 -100
  259. package/lib/module/web/pmPlugins/MentionPlugin/subscribeMentionEvents.js.map +0 -1
  260. package/lib/module/web/styleConversion/enrichedInputThemingToCSSProperties.js.map +0 -1
  261. package/lib/module/web/tiptapHtmlNormalizer.js.map +0 -1
  262. package/lib/typescript/src/web/checkboxHtmlNormalizer.d.ts.map +0 -1
  263. package/lib/typescript/src/web/pmPlugins/MentionPlugin/subscribeMentionEvents.d.ts +0 -4
  264. package/lib/typescript/src/web/pmPlugins/MentionPlugin/subscribeMentionEvents.d.ts.map +0 -1
  265. package/lib/typescript/src/web/styleConversion/enrichedInputThemingToCSSProperties.d.ts.map +0 -1
  266. package/lib/typescript/src/web/tiptapHtmlNormalizer.d.ts +0 -3
  267. package/lib/typescript/src/web/tiptapHtmlNormalizer.d.ts.map +0 -1
  268. package/src/web/EnrichedTextInput.css +0 -201
  269. package/src/web/pmPlugins/MentionPlugin/subscribeMentionEvents.ts +0 -105
  270. /package/lib/module/web/{checkboxHtmlNormalizer.js → normalization/checkboxHtmlNormalizer.js} +0 -0
  271. /package/lib/typescript/src/web/{checkboxHtmlNormalizer.d.ts → normalization/checkboxHtmlNormalizer.d.ts} +0 -0
  272. /package/src/web/{checkboxHtmlNormalizer.ts → normalization/checkboxHtmlNormalizer.ts} +0 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
- import { useEffect, useImperativeHandle, useMemo, useRef } from 'react';
4
- import './EnrichedTextInput.css';
3
+ import { useCallback, useEffect, useImperativeHandle, useMemo, useRef } from 'react';
4
+ import './EnrichedText.css';
5
5
  import { adaptWebToNativeEvent } from "./adaptWebToNativeEvent.js";
6
6
  import { tiptapPosToNativePos, nativePosToTiptapPos, nativeLeafText } from "./positionMapping.js";
7
7
  import { useEditor, EditorContent } from '@tiptap/react';
@@ -14,10 +14,10 @@ import { useOnChangeHtml } from "./useOnChangeHtml.js";
14
14
  import { useOnChangeText } from "./useOnChangeText.js";
15
15
  import { useOnChangeState } from "./useOnChangeState.js";
16
16
  import { useOnLinkDetected } from "./useOnLinkDetected.js";
17
- import { prepareHtmlForTiptap, normalizeHtmlFromTiptap } from "./tiptapHtmlNormalizer.js";
17
+ import { prepareHtmlForTiptap, normalizeHtmlFromTiptap } from "./normalization/tiptapHtmlNormalizer.js";
18
18
  import { ENRICHED_TEXT_INPUT_DEFAULT_PROPS } from "../utils/EnrichedTextInputDefaultProps.js";
19
19
  import { enrichedInputStyleToCSSProperties } from "./styleConversion/enrichedInputStyleToCSSProperties.js";
20
- import { enrichedInputThemingToCSSProperties } from "./styleConversion/enrichedInputThemingToCSSProperties.js";
20
+ import { enrichedInputThemingToCSSProperties } from "./styleConversion/enrichedThemingToCSSProperties.js";
21
21
  import { buildMentionRulesCSS } from "./styleConversion/buildMentionRulesCSS.js";
22
22
  import { htmlStyleToCSSVariables, mergeWithDefaultHtmlStyle } from "./styleConversion/htmlStyleToCSSVariables.js";
23
23
  import { EnrichedBold } from "./formats/EnrichedBold.js";
@@ -36,15 +36,19 @@ import { EnrichedUnorderedList } from "./formats/EnrichedUnorderedList.js";
36
36
  import { EnrichedOrderedList } from "./formats/EnrichedOrderedList.js";
37
37
  import { EnrichedCheckboxItem } from "./formats/EnrichedCheckboxItem.js";
38
38
  import { EnrichedCheckboxList } from "./formats/EnrichedCheckboxList.js";
39
+ import { EnrichedTextAlign } from "./formats/EnrichedTextAlign.js";
39
40
  import { StripBoldInStyledHeadingsPlugin } from "./pmPlugins/StripBoldInStyledHeadingsPlugin.js";
40
41
  import { StrictMarksPlugin } from "./pmPlugins/StrictMarksPlugin.js";
41
42
  import { MergeAdjacentSameKindBlocksPlugin } from "./pmPlugins/MergeAdjacentSameKindBlocksPlugin.js";
42
43
  import { StripMarksInCodeBlockPlugin } from "./pmPlugins/StripMarksInCodeBlockPlugin.js";
43
44
  import { handleClipboardPasteImages } from "./pasteImages.js";
44
- import { MentionPlugin, setMention, startMention, subscribeMentionEvents } from "./pmPlugins/MentionPlugin/index.js";
45
+ import { MentionPlugin, setMention, startMention, useMentionEvents } from "./pmPlugins/MentionPlugin/index.js";
45
46
  import { StripMarksOnImagePlugin } from "./pmPlugins/StripMarksOnImagePlugin.js";
46
47
  import { ShortcutPlugin } from "./pmPlugins/ShortcutPlugin.js";
47
48
  import { returnKeyTypeToEnterKeyHint } from "./returnKeyTypeToEnterKeyHint.js";
49
+ import { ENRICHED_TEXT_INPUT_CLASSNAME } from "./constants/classNames.js";
50
+ import { AutolinkPlugin } from "./pmPlugins/AutolinkPlugin/index.js";
51
+ import { useStableRef } from "./useStableRef.js";
48
52
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
49
53
  function runFocused(editor, apply) {
50
54
  apply(editor.chain().focus()).run();
@@ -78,49 +82,27 @@ export const EnrichedTextInput = ({
78
82
  onStartMention,
79
83
  onChangeMention,
80
84
  onEndMention,
81
- htmlStyle
85
+ linkRegex,
86
+ htmlStyle,
87
+ useHtmlNormalizer
82
88
  }) => {
83
- const tiptapContent = defaultValue != null ? prepareHtmlForTiptap(defaultValue) : defaultValue;
89
+ const tiptapContent = defaultValue != null ? prepareHtmlForTiptap(defaultValue, useHtmlNormalizer) : defaultValue;
84
90
  const resolvedHtmlStyle = useMemo(() => mergeWithDefaultHtmlStyle(htmlStyle), [htmlStyle]);
85
- const htmlStyleRef = useRef(resolvedHtmlStyle);
86
- useEffect(() => {
87
- htmlStyleRef.current = resolvedHtmlStyle;
88
- }, [resolvedHtmlStyle]);
89
- const onPasteImagesRef = useRef(onPasteImages);
90
- useEffect(() => {
91
- onPasteImagesRef.current = onPasteImages;
92
- }, [onPasteImages]);
93
- const mentionIndicatorsRef = useRef(mentionIndicators);
94
- useEffect(() => {
95
- mentionIndicatorsRef.current = mentionIndicators;
96
- }, [mentionIndicators]);
97
- const mentionCallbacksRef = useRef({
91
+ const mentionCallbacks = useMemo(() => ({
98
92
  onStartMention,
99
93
  onChangeMention,
100
94
  onEndMention,
101
95
  onMentionDetected
102
- });
103
- useEffect(() => {
104
- mentionCallbacksRef.current = {
105
- onStartMention,
106
- onChangeMention,
107
- onEndMention,
108
- onMentionDetected
109
- };
110
- }, [onStartMention, onChangeMention, onEndMention, onMentionDetected]);
111
- const submitBehaviorRef = useRef(submitBehavior);
112
- const onSubmitEditingRef = useRef(onSubmitEditing);
113
- const onKeyPressRef = useRef(onKeyPress);
96
+ }), [onStartMention, onChangeMention, onEndMention, onMentionDetected]);
97
+ const htmlStyleRef = useStableRef(resolvedHtmlStyle);
98
+ const onPasteImagesRef = useStableRef(onPasteImages);
99
+ const mentionIndicatorsRef = useStableRef(mentionIndicators);
100
+ const submitBehaviorRef = useStableRef(submitBehavior);
101
+ const onSubmitEditingRef = useStableRef(onSubmitEditing);
102
+ const onKeyPressRef = useStableRef(onKeyPress);
103
+ const useHtmlNormalizerRef = useStableRef(useHtmlNormalizer);
104
+ const mentionCallbacksRef = useStableRef(mentionCallbacks);
114
105
  const editorInstanceRef = useRef(null);
115
- useEffect(() => {
116
- submitBehaviorRef.current = submitBehavior;
117
- }, [submitBehavior]);
118
- useEffect(() => {
119
- onSubmitEditingRef.current = onSubmitEditing;
120
- }, [onSubmitEditing]);
121
- useEffect(() => {
122
- onKeyPressRef.current = onKeyPress;
123
- }, [onKeyPress]);
124
106
  const handleKeyDown = (doc, event) => {
125
107
  onKeyPressRef.current?.(adaptWebToNativeEvent(event, {
126
108
  key: event.key
@@ -142,16 +124,29 @@ export const EnrichedTextInput = ({
142
124
  }
143
125
  return false;
144
126
  };
145
- const extensions = useMemo(() => [Document, Paragraph, Text, History, EnrichedBold, EnrichedItalic, EnrichedUnderline, EnrichedStrike, EnrichedCode, EnrichedLink, EnrichedImage, EnrichedMention, EnrichedHeading, EnrichedBlockquote, EnrichedCodeBlock, EnrichedListItem, EnrichedCheckboxItem, EnrichedUnorderedList, EnrichedOrderedList, EnrichedCheckboxList, StripMarksInCodeBlockPlugin, StripMarksOnImagePlugin, StripBoldInStyledHeadingsPlugin.configure({
127
+ const linkEmitterRef = useRef({
128
+ linkRegex,
129
+ onLinkDetected,
130
+ lastEmitted: null
131
+ });
132
+ useEffect(() => {
133
+ linkEmitterRef.current.linkRegex = linkRegex;
134
+ linkEmitterRef.current.onLinkDetected = onLinkDetected;
135
+ }, [linkRegex, onLinkDetected]);
136
+ const extensions = useMemo(() => [Document, Paragraph, Text, History, EnrichedBold, EnrichedItalic, EnrichedUnderline, EnrichedStrike, EnrichedCode, EnrichedLink.configure({
137
+ getLinkRegex: () => linkEmitterRef.current.linkRegex
138
+ }), EnrichedImage, EnrichedMention, EnrichedHeading, EnrichedBlockquote, EnrichedCodeBlock, EnrichedListItem, EnrichedCheckboxItem, EnrichedUnorderedList, EnrichedOrderedList, EnrichedCheckboxList, EnrichedTextAlign, StripMarksInCodeBlockPlugin, StripMarksOnImagePlugin, StripBoldInStyledHeadingsPlugin.configure({
146
139
  getHtmlStyle: () => htmlStyleRef.current
147
140
  }), MergeAdjacentSameKindBlocksPlugin, StrictMarksPlugin, MentionPlugin.configure({
148
141
  getIndicators: () => mentionIndicatorsRef.current
149
142
  }), ShortcutPlugin.configure({
150
143
  getHtmlStyle: () => htmlStyleRef.current
144
+ }), AutolinkPlugin.configure({
145
+ getLinkEmitter: () => linkEmitterRef.current
151
146
  }), Placeholder.configure({
152
147
  placeholder,
153
148
  showOnlyWhenEditable: true
154
- })], [placeholder]);
149
+ })], [placeholder, htmlStyleRef, mentionIndicatorsRef]);
155
150
  const editor = useEditor({
156
151
  extensions,
157
152
  editable,
@@ -201,6 +196,9 @@ export const EnrichedTextInput = ({
201
196
  attributes: {
202
197
  autoCapitalize,
203
198
  enterkeyhint: returnKeyTypeToEnterKeyHint(returnKeyType)
199
+ },
200
+ transformPastedHTML: html => {
201
+ return prepareHtmlForTiptap(html, useHtmlNormalizerRef.current);
204
202
  }
205
203
  }
206
204
  }, [tiptapContent, extensions]);
@@ -220,18 +218,16 @@ export const EnrichedTextInput = ({
220
218
  useEffect(() => {
221
219
  editor?.commands.normalizeBoldInStyledHeadings();
222
220
  }, [editor, resolvedHtmlStyle]);
223
- useEffect(() => {
224
- if (!editor) return;
225
- return subscribeMentionEvents(editor, () => mentionCallbacksRef.current);
226
- }, [editor]);
221
+ const getMentionCallbacks = useCallback(() => mentionCallbacksRef.current, [mentionCallbacksRef]);
222
+ useMentionEvents(editor, getMentionCallbacks);
227
223
  useOnChangeHtml(editor, onChangeHtml);
228
224
  useOnChangeText(editor, onChangeText);
229
225
  useOnChangeState(editor, resolvedHtmlStyle, onChangeState);
230
- useOnLinkDetected(editor, onLinkDetected);
226
+ useOnLinkDetected(editor, linkEmitterRef);
231
227
  useImperativeHandle(ref, () => ({
232
228
  focus: () => editor.commands.focus(),
233
229
  blur: () => editor.commands.blur(),
234
- setValue: value => editor.commands.setContent(prepareHtmlForTiptap(value)),
230
+ setValue: value => editor.commands.setContent(prepareHtmlForTiptap(value, useHtmlNormalizerRef.current)),
235
231
  setSelection: (start, end) => {
236
232
  const doc = editor.state.doc;
237
233
  runFocused(editor, c => c.setTextSelection({
@@ -283,8 +279,14 @@ export const EnrichedTextInput = ({
283
279
  measureInWindow: () => {},
284
280
  measureLayout: () => {},
285
281
  setNativeProps: () => {},
286
- setTextAlignment: () => {}
287
- }), [editor]);
282
+ setTextAlignment: alignment => {
283
+ if (alignment === 'auto') {
284
+ runFocused(editor, c => c.unsetTextAlign());
285
+ } else {
286
+ runFocused(editor, c => c.setTextAlign(alignment));
287
+ }
288
+ }
289
+ }), [editor, mentionIndicatorsRef, useHtmlNormalizerRef]);
288
290
  const editorStyle = useMemo(() => enrichedInputStyleToCSSProperties(style ?? {}, {
289
291
  scrollEnabled
290
292
  }), [scrollEnabled, style]);
@@ -305,7 +307,7 @@ export const EnrichedTextInput = ({
305
307
  children: mentionRulesCSS
306
308
  }) : null, /*#__PURE__*/_jsx(EditorContent, {
307
309
  editor: editor,
308
- className: "eti-editor",
310
+ className: ENRICHED_TEXT_INPUT_CLASSNAME,
309
311
  style: finalStyle,
310
312
  "data-placeholder": placeholder
311
313
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useImperativeHandle","useMemo","useRef","adaptWebToNativeEvent","tiptapPosToNativePos","nativePosToTiptapPos","nativeLeafText","useEditor","EditorContent","Document","Paragraph","Text","History","Placeholder","useOnChangeHtml","useOnChangeText","useOnChangeState","useOnLinkDetected","prepareHtmlForTiptap","normalizeHtmlFromTiptap","ENRICHED_TEXT_INPUT_DEFAULT_PROPS","enrichedInputStyleToCSSProperties","enrichedInputThemingToCSSProperties","buildMentionRulesCSS","htmlStyleToCSSVariables","mergeWithDefaultHtmlStyle","EnrichedBold","EnrichedItalic","EnrichedStrike","EnrichedUnderline","EnrichedCode","EnrichedHeading","EnrichedBlockquote","EnrichedCodeBlock","EnrichedImage","EnrichedLink","setLink","removeLink","EnrichedMention","EnrichedListItem","EnrichedUnorderedList","EnrichedOrderedList","EnrichedCheckboxItem","EnrichedCheckboxList","StripBoldInStyledHeadingsPlugin","StrictMarksPlugin","MergeAdjacentSameKindBlocksPlugin","StripMarksInCodeBlockPlugin","handleClipboardPasteImages","MentionPlugin","setMention","startMention","subscribeMentionEvents","StripMarksOnImagePlugin","ShortcutPlugin","returnKeyTypeToEnterKeyHint","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","runFocused","editor","apply","chain","focus","run","EnrichedTextInput","ref","defaultValue","autoFocus","editable","placeholder","placeholderTextColor","cursorColor","selectionColor","autoCapitalize","scrollEnabled","mentionIndicators","slice","onFocus","style","onBlur","onChangeSelection","onKeyPress","onChangeText","onChangeHtml","onChangeState","onLinkDetected","onSubmitEditing","returnKeyType","submitBehavior","onPasteImages","onMentionDetected","onStartMention","onChangeMention","onEndMention","htmlStyle","tiptapContent","resolvedHtmlStyle","htmlStyleRef","current","onPasteImagesRef","mentionIndicatorsRef","mentionCallbacksRef","submitBehaviorRef","onSubmitEditingRef","onKeyPressRef","editorInstanceRef","handleKeyDown","doc","event","key","sb","preventDefault","text","content","size","commands","blur","extensions","configure","getHtmlStyle","getIndicators","showOnlyWhenEditable","autofocus","onCreate","_editor","setContent","target","onSelectionUpdate","state","from","to","selection","start","end","editorProps","view","handlePaste","_view","attributes","enterkeyhint","dom","setAttribute","normalizeBoldInStyledHeadings","setValue","value","setSelection","c","setTextSelection","getHTML","Promise","resolve","toggleBold","toggleItalic","toggleUnderline","toggleStrikeThrough","toggleStrike","toggleInlineCode","toggleCode","toggleH1","toggleHeading","level","toggleH2","toggleH3","toggleH4","toggleH5","toggleH6","toggleCodeBlock","toggleBlockQuote","toggleBlockquote","toggleOrderedList","toggleUnorderedList","toggleCheckboxList","checked","url","indicator","setImage","src","width","height","measure","measureInWindow","measureLayout","setNativeProps","setTextAlignment","editorStyle","cssVars","themingStyle","mentionRulesCSS","finalStyle","children","className"],"sourceRoot":"../../../src","sources":["web/EnrichedTextInput.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useImperativeHandle","useMemo","useRef","adaptWebToNativeEvent","tiptapPosToNativePos","nativePosToTiptapPos","nativeLeafText","useEditor","EditorContent","Document","Paragraph","Text","History","Placeholder","useOnChangeHtml","useOnChangeText","useOnChangeState","useOnLinkDetected","prepareHtmlForTiptap","normalizeHtmlFromTiptap","ENRICHED_TEXT_INPUT_DEFAULT_PROPS","enrichedInputStyleToCSSProperties","enrichedInputThemingToCSSProperties","buildMentionRulesCSS","htmlStyleToCSSVariables","mergeWithDefaultHtmlStyle","EnrichedBold","EnrichedItalic","EnrichedStrike","EnrichedUnderline","EnrichedCode","EnrichedHeading","EnrichedBlockquote","EnrichedCodeBlock","EnrichedImage","EnrichedLink","setLink","removeLink","EnrichedMention","EnrichedListItem","EnrichedUnorderedList","EnrichedOrderedList","EnrichedCheckboxItem","EnrichedCheckboxList","EnrichedTextAlign","StripBoldInStyledHeadingsPlugin","StrictMarksPlugin","MergeAdjacentSameKindBlocksPlugin","StripMarksInCodeBlockPlugin","handleClipboardPasteImages","MentionPlugin","setMention","startMention","useMentionEvents","StripMarksOnImagePlugin","ShortcutPlugin","returnKeyTypeToEnterKeyHint","ENRICHED_TEXT_INPUT_CLASSNAME","AutolinkPlugin","useStableRef","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","runFocused","editor","apply","chain","focus","run","EnrichedTextInput","ref","defaultValue","autoFocus","editable","placeholder","placeholderTextColor","cursorColor","selectionColor","autoCapitalize","scrollEnabled","mentionIndicators","slice","onFocus","style","onBlur","onChangeSelection","onKeyPress","onChangeText","onChangeHtml","onChangeState","onLinkDetected","onSubmitEditing","returnKeyType","submitBehavior","onPasteImages","onMentionDetected","onStartMention","onChangeMention","onEndMention","linkRegex","htmlStyle","useHtmlNormalizer","tiptapContent","resolvedHtmlStyle","mentionCallbacks","htmlStyleRef","onPasteImagesRef","mentionIndicatorsRef","submitBehaviorRef","onSubmitEditingRef","onKeyPressRef","useHtmlNormalizerRef","mentionCallbacksRef","editorInstanceRef","handleKeyDown","doc","event","current","key","sb","preventDefault","text","content","size","commands","blur","linkEmitterRef","lastEmitted","extensions","configure","getLinkRegex","getHtmlStyle","getIndicators","getLinkEmitter","showOnlyWhenEditable","autofocus","onCreate","_editor","setContent","target","onSelectionUpdate","state","from","to","selection","start","end","editorProps","view","handlePaste","_view","attributes","enterkeyhint","transformPastedHTML","html","dom","setAttribute","normalizeBoldInStyledHeadings","getMentionCallbacks","setValue","value","setSelection","c","setTextSelection","getHTML","Promise","resolve","toggleBold","toggleItalic","toggleUnderline","toggleStrikeThrough","toggleStrike","toggleInlineCode","toggleCode","toggleH1","toggleHeading","level","toggleH2","toggleH3","toggleH4","toggleH5","toggleH6","toggleCodeBlock","toggleBlockQuote","toggleBlockquote","toggleOrderedList","toggleUnorderedList","toggleCheckboxList","checked","url","indicator","setImage","src","width","height","measure","measureInWindow","measureLayout","setNativeProps","setTextAlignment","alignment","unsetTextAlign","setTextAlign","editorStyle","cssVars","themingStyle","mentionRulesCSS","finalStyle","children","className"],"sourceRoot":"../../../src","sources":["web/EnrichedTextInput.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ // SVG path of the broken-image glyph, shared between the editor's
4
+ // image node view (rendered as an inline <svg>).
5
+ export const BROKEN_IMAGE_PATH_D = 'M200,840Q167,840 143.5,816.5Q120,793 120,760L120,200Q120,167 143.5,143.5Q167,120 200,120L760,120Q793,120 816.5,143.5Q840,167 840,200L840,760Q840,793 816.5,816.5Q793,840 760,840L200,840ZM240,503L400,343L560,503L720,343L760,383L760,200Q760,200 760,200Q760,200 760,200L200,200Q200,200 200,200Q200,200 200,200L200,463L240,503ZM200,760L760,760Q760,760 760,760Q760,760 760,760L760,496L720,456L560,616L400,456L240,616L200,576L200,760Q200,760 200,760Q200,760 200,760ZM200,760L200,760Q200,760 200,760Q200,760 200,760L200,496L200,576L200,463L200,383L200,200Q200,200 200,200Q200,200 200,200L200,200Q200,200 200,200Q200,200 200,200L200,463L200,463L200,576L200,576L200,760Q200,760 200,760Q200,760 200,760Z';
6
+
7
+ // Glyph as a `mask`-ready data URI, used in EnrichedText.css.
8
+ export const BROKEN_IMAGE_GLYPH_MASK = `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 960 960'%3E%3Cpath d='${BROKEN_IMAGE_PATH_D}'/%3E%3C/svg%3E")`;
9
+ //# sourceMappingURL=brokenImageGlyph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BROKEN_IMAGE_PATH_D","BROKEN_IMAGE_GLYPH_MASK"],"sourceRoot":"../../../../src","sources":["web/constants/brokenImageGlyph.ts"],"mappings":";;AAAA;AACA;AACA,OAAO,MAAMA,mBAAmB,GAC9B,srBAAsrB;;AAExrB;AACA,OAAO,MAAMC,uBAAuB,GAAG,wGAAwGD,mBAAmB,mBAAmB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export const ENRICHED_TEXT_INPUT_CLASSNAME = 'eti-editor';
4
+ export const ENRICHED_TEXT_CLASSNAME = 'et-view';
5
+ //# sourceMappingURL=classNames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ENRICHED_TEXT_INPUT_CLASSNAME","ENRICHED_TEXT_CLASSNAME"],"sourceRoot":"../../../../src","sources":["web/constants/classNames.ts"],"mappings":";;AAAA,OAAO,MAAMA,6BAA6B,GAAG,YAAY;AACzD,OAAO,MAAMC,uBAAuB,GAAG,SAAS","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ function isSamePayload(a, b) {
4
+ return a.text === b.text && a.url === b.url && a.start === b.start && a.end === b.end;
5
+ }
6
+ export function emitLinkDetected(state, next) {
7
+ const prev = state.lastEmitted;
8
+ if (prev && isSamePayload(prev, next)) return;
9
+ state.lastEmitted = next;
10
+ state.onLinkDetected?.(next);
11
+ }
12
+ //# sourceMappingURL=emitLinkDetected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isSamePayload","a","b","text","url","start","end","emitLinkDetected","state","next","prev","lastEmitted","onLinkDetected"],"sourceRoot":"../../../src","sources":["web/emitLinkDetected.ts"],"mappings":";;AAWA,SAASA,aAAaA,CAACC,CAAiB,EAAEC,CAAiB,EAAW;EACpE,OACED,CAAC,CAACE,IAAI,KAAKD,CAAC,CAACC,IAAI,IACjBF,CAAC,CAACG,GAAG,KAAKF,CAAC,CAACE,GAAG,IACfH,CAAC,CAACI,KAAK,KAAKH,CAAC,CAACG,KAAK,IACnBJ,CAAC,CAACK,GAAG,KAAKJ,CAAC,CAACI,GAAG;AAEnB;AAEA,OAAO,SAASC,gBAAgBA,CAC9BC,KAAuB,EACvBC,IAAoB,EACd;EACN,MAAMC,IAAI,GAAGF,KAAK,CAACG,WAAW;EAC9B,IAAID,IAAI,IAAIV,aAAa,CAACU,IAAI,EAAED,IAAI,CAAC,EAAE;EACvCD,KAAK,CAACG,WAAW,GAAGF,IAAI;EACxBD,KAAK,CAACI,cAAc,GAAGH,IAAI,CAAC;AAC9B","ignoreList":[]}
@@ -25,7 +25,7 @@ export const EnrichedBlockquote = Blockquote.extend({
25
25
  editor,
26
26
  commands,
27
27
  chain
28
- }) => toggleParagraphFormat(() => editor.isActive('blockquote'), () => commands.lift('blockquote'), c => c.toggleWrap('blockquote'), chain)
28
+ }) => toggleParagraphFormat(() => editor.isActive('blockquote'), () => commands.lift('blockquote'), c => c.toggleWrap('blockquote'), chain, editor)
29
29
  };
30
30
  }
31
31
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Blockquote","toggleParagraphFormat","wrappedBlockBackspace","wrappedBlockEnter","EnrichedBlockquote","extend","content","addInputRules","addKeyboardShortcuts","Enter","editor","Backspace","addCommands","parent","toggleBlockquote","commands","chain","isActive","lift","c","toggleWrap"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedBlockquote.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,8BAA8B;AACrD,SAASC,qBAAqB,QAAQ,kBAAe;AACrD,SACEC,qBAAqB,EACrBC,iBAAiB,QACZ,2BAAwB;AAE/B,OAAO,MAAMC,kBAAkB,GAAGJ,UAAU,CAACK,MAAM,CAAC;EAClDC,OAAO,EAAE,cAAc;EAEvBC,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO;MACLC,KAAK,EAAEA,CAAC;QAAEC;MAAO,CAAC,KAAKP,iBAAiB,CAACO,MAAM,EAAE,YAAY,CAAC;MAC9DC,SAAS,EAAEA,CAAC;QAAED;MAAO,CAAC,KAAKR,qBAAqB,CAACQ,MAAM,EAAE,YAAY;IACvE,CAAC;EACH,CAAC;EAEDE,WAAWA,CAAA,EAAG;IACZ,OAAO;MACL,GAAG,IAAI,CAACC,MAAM,GAAG,CAAC;MAClBC,gBAAgB,EACdA,CAAA,KACA,CAAC;QAAEJ,MAAM;QAAEK,QAAQ;QAAEC;MAAM,CAAC,KAC1Bf,qBAAqB,CACnB,MAAMS,MAAM,CAACO,QAAQ,CAAC,YAAY,CAAC,EACnC,MAAMF,QAAQ,CAACG,IAAI,CAAC,YAAY,CAAC,EAChCC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,YAAY,CAAC,EACjCJ,KACF;IACN,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Blockquote","toggleParagraphFormat","wrappedBlockBackspace","wrappedBlockEnter","EnrichedBlockquote","extend","content","addInputRules","addKeyboardShortcuts","Enter","editor","Backspace","addCommands","parent","toggleBlockquote","commands","chain","isActive","lift","c","toggleWrap"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedBlockquote.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,8BAA8B;AACrD,SAASC,qBAAqB,QAAQ,kBAAe;AACrD,SACEC,qBAAqB,EACrBC,iBAAiB,QACZ,2BAAwB;AAE/B,OAAO,MAAMC,kBAAkB,GAAGJ,UAAU,CAACK,MAAM,CAAC;EAClDC,OAAO,EAAE,cAAc;EAEvBC,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO;MACLC,KAAK,EAAEA,CAAC;QAAEC;MAAO,CAAC,KAAKP,iBAAiB,CAACO,MAAM,EAAE,YAAY,CAAC;MAC9DC,SAAS,EAAEA,CAAC;QAAED;MAAO,CAAC,KAAKR,qBAAqB,CAACQ,MAAM,EAAE,YAAY;IACvE,CAAC;EACH,CAAC;EAEDE,WAAWA,CAAA,EAAG;IACZ,OAAO;MACL,GAAG,IAAI,CAACC,MAAM,GAAG,CAAC;MAClBC,gBAAgB,EACdA,CAAA,KACA,CAAC;QAAEJ,MAAM;QAAEK,QAAQ;QAAEC;MAAM,CAAC,KAC1Bf,qBAAqB,CACnB,MAAMS,MAAM,CAACO,QAAQ,CAAC,YAAY,CAAC,EACnC,MAAMF,QAAQ,CAACG,IAAI,CAAC,YAAY,CAAC,EAChCC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,YAAY,CAAC,EACjCJ,KAAK,EACLN,MACF;IACN,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  import { TaskList } from '@tiptap/extension-list';
4
4
  import { applyWrappingListToSelection } from "./applyWrappingListToSelection.js";
5
+ import { withPreservedAlignment } from "./formatRules.js";
5
6
  export const EnrichedCheckboxList = TaskList.extend({
6
7
  name: 'checkboxList',
7
8
  addOptions() {
@@ -15,11 +16,10 @@ export const EnrichedCheckboxList = TaskList.extend({
15
16
  toggleCheckboxList: checked => {
16
17
  return ({
17
18
  editor,
18
- commands,
19
19
  chain
20
20
  }) => {
21
21
  if (editor.isActive('checkboxList')) {
22
- return commands.setParagraph();
22
+ return withPreservedAlignment(editor, chain(), c => c.clearNodes().setParagraph());
23
23
  }
24
24
  return applyWrappingListToSelection(editor, chain, 'checkboxList', 'checkboxItem', {
25
25
  checked
@@ -1 +1 @@
1
- {"version":3,"names":["TaskList","applyWrappingListToSelection","EnrichedCheckboxList","extend","name","addOptions","itemTypeName","HTMLAttributes","addCommands","toggleCheckboxList","checked","editor","commands","chain","isActive","setParagraph","addKeyboardShortcuts"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedCheckboxList.ts"],"mappings":";;AACA,SAASA,QAAQ,QAAQ,wBAAwB;AAEjD,SAASC,4BAA4B,QAAQ,mCAAgC;AAU7E,OAAO,MAAMC,oBAAoB,GAAGF,QAAQ,CAACG,MAAM,CAAC;EAClDC,IAAI,EAAE,cAAc;EAEpBC,UAAUA,CAAA,EAAG;IACX,OAAO;MACLC,YAAY,EAAE,cAAc;MAC5BC,cAAc,EAAE,CAAC;IACnB,CAAC;EACH,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,kBAAkB,EAAGC,OAAgB,IAAK;QACxC,OAAO,CAAC;UAAEC,MAAM;UAAEC,QAAQ;UAAEC;QAAoB,CAAC,KAAc;UAC7D,IAAIF,MAAM,CAACG,QAAQ,CAAC,cAAc,CAAC,EAAE;YACnC,OAAOF,QAAQ,CAACG,YAAY,CAAC,CAAC;UAChC;UAEA,OAAOd,4BAA4B,CACjCU,MAAM,EACNE,KAAK,EACL,cAAc,EACd,cAAc,EACd;YAAEH;UAAQ,CACZ,CAAC;QACH,CAAC;MACH;IACF,CAAC;EACH,CAAC;EAEDM,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TaskList","applyWrappingListToSelection","withPreservedAlignment","EnrichedCheckboxList","extend","name","addOptions","itemTypeName","HTMLAttributes","addCommands","toggleCheckboxList","checked","editor","chain","isActive","c","clearNodes","setParagraph","addKeyboardShortcuts"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedCheckboxList.ts"],"mappings":";;AACA,SAASA,QAAQ,QAAQ,wBAAwB;AAEjD,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,sBAAsB,QAAQ,kBAAe;AAUtD,OAAO,MAAMC,oBAAoB,GAAGH,QAAQ,CAACI,MAAM,CAAC;EAClDC,IAAI,EAAE,cAAc;EAEpBC,UAAUA,CAAA,EAAG;IACX,OAAO;MACLC,YAAY,EAAE,cAAc;MAC5BC,cAAc,EAAE,CAAC;IACnB,CAAC;EACH,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,kBAAkB,EAAGC,OAAgB,IAAK;QACxC,OAAO,CAAC;UAAEC,MAAM;UAAEC;QAAoB,CAAC,KAAc;UACnD,IAAID,MAAM,CAACE,QAAQ,CAAC,cAAc,CAAC,EAAE;YACnC,OAAOZ,sBAAsB,CAACU,MAAM,EAAEC,KAAK,CAAC,CAAC,EAAGE,CAAC,IAC/CA,CAAC,CAACC,UAAU,CAAC,CAAC,CAACC,YAAY,CAAC,CAC9B,CAAC;UACH;UAEA,OAAOhB,4BAA4B,CACjCW,MAAM,EACNC,KAAK,EACL,cAAc,EACd,cAAc,EACd;YAAEF;UAAQ,CACZ,CAAC;QACH,CAAC;MACH;IACF,CAAC;EACH,CAAC;EAEDO,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -23,7 +23,7 @@ export const EnrichedCodeBlock = Blockquote.extend({
23
23
  editor,
24
24
  commands,
25
25
  chain
26
- }) => toggleParagraphFormat(() => editor.isActive('codeBlock'), () => commands.lift('codeBlock'), c => c.toggleWrap('codeBlock'), chain)
26
+ }) => toggleParagraphFormat(() => editor.isActive('codeBlock'), () => commands.lift('codeBlock'), c => c.toggleWrap('codeBlock'), chain, editor)
27
27
  };
28
28
  },
29
29
  addInputRules() {
@@ -1 +1 @@
1
- {"version":3,"names":["Blockquote","toggleParagraphFormat","wrappedBlockBackspace","wrappedBlockEnter","EnrichedCodeBlock","extend","name","content","parseHTML","tag","renderHTML","HTMLAttributes","addCommands","toggleCodeBlock","editor","commands","chain","isActive","lift","c","toggleWrap","addInputRules","addKeyboardShortcuts","Enter","Backspace"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedCodeBlock.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,8BAA8B;AACrD,SAASC,qBAAqB,QAAQ,kBAAe;AACrD,SACEC,qBAAqB,EACrBC,iBAAiB,QACZ,2BAAwB;AAU/B;AACA,OAAO,MAAMC,iBAAiB,GAAGJ,UAAU,CAACK,MAAM,CAAC;EACjDC,IAAI,EAAE,WAAW;EACjBC,OAAO,EAAE,cAAc;EAEvBC,SAASA,CAAA,EAAG;IACV,OAAO,CAAC;MAAEC,GAAG,EAAE;IAAY,CAAC,CAAC;EAC/B,CAAC;EAEDC,UAAUA,CAAC;IAAEC;EAAe,CAAC,EAAE;IAC7B,OAAO,CAAC,WAAW,EAAEA,cAAc,EAAE,CAAC,CAAC;EACzC,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,eAAe,EACbA,CAAA,KACA,CAAC;QAAEC,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,KAC1Bf,qBAAqB,CACnB,MAAMa,MAAM,CAACG,QAAQ,CAAC,WAAW,CAAC,EAClC,MAAMF,QAAQ,CAACG,IAAI,CAAC,WAAW,CAAC,EAC/BC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,WAAW,CAAC,EAChCJ,KACF;IACN,CAAC;EACH,CAAC;EAEDK,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO;MACLC,KAAK,EAAEA,CAAC;QAAET;MAAO,CAAC,KAAKX,iBAAiB,CAACW,MAAM,EAAE,WAAW,CAAC;MAC7DU,SAAS,EAAEA,CAAC;QAAEV;MAAO,CAAC,KAAKZ,qBAAqB,CAACY,MAAM,EAAE,WAAW;IACtE,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Blockquote","toggleParagraphFormat","wrappedBlockBackspace","wrappedBlockEnter","EnrichedCodeBlock","extend","name","content","parseHTML","tag","renderHTML","HTMLAttributes","addCommands","toggleCodeBlock","editor","commands","chain","isActive","lift","c","toggleWrap","addInputRules","addKeyboardShortcuts","Enter","Backspace"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedCodeBlock.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,8BAA8B;AACrD,SAASC,qBAAqB,QAAQ,kBAAe;AACrD,SACEC,qBAAqB,EACrBC,iBAAiB,QACZ,2BAAwB;AAU/B;AACA,OAAO,MAAMC,iBAAiB,GAAGJ,UAAU,CAACK,MAAM,CAAC;EACjDC,IAAI,EAAE,WAAW;EACjBC,OAAO,EAAE,cAAc;EAEvBC,SAASA,CAAA,EAAG;IACV,OAAO,CAAC;MAAEC,GAAG,EAAE;IAAY,CAAC,CAAC;EAC/B,CAAC;EAEDC,UAAUA,CAAC;IAAEC;EAAe,CAAC,EAAE;IAC7B,OAAO,CAAC,WAAW,EAAEA,cAAc,EAAE,CAAC,CAAC;EACzC,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,eAAe,EACbA,CAAA,KACA,CAAC;QAAEC,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,KAC1Bf,qBAAqB,CACnB,MAAMa,MAAM,CAACG,QAAQ,CAAC,WAAW,CAAC,EAClC,MAAMF,QAAQ,CAACG,IAAI,CAAC,WAAW,CAAC,EAC/BC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,WAAW,CAAC,EAChCJ,KAAK,EACLF,MACF;IACN,CAAC;EACH,CAAC;EAEDO,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO;MACLC,KAAK,EAAEA,CAAC;QAAET;MAAO,CAAC,KAAKX,iBAAiB,CAACW,MAAM,EAAE,WAAW,CAAC;MAC7DU,SAAS,EAAEA,CAAC;QAAEV;MAAO,CAAC,KAAKZ,qBAAqB,CAACY,MAAM,EAAE,WAAW;IACtE,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
@@ -20,7 +20,7 @@ export const EnrichedHeading = Heading.configure({
20
20
  editor,
21
21
  commands,
22
22
  chain
23
- }) => toggleParagraphFormat(() => editor.isActive('heading', attrs), () => commands.setParagraph(), c => c.setHeading(attrs), chain)
23
+ }) => toggleParagraphFormat(() => editor.isActive('heading', attrs), () => commands.setParagraph(), c => c.setHeading(attrs), chain, editor)
24
24
  };
25
25
  }
26
26
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Heading","toggleParagraphFormat","HEADING_LEVELS","HEADING_TAGS","map","n","EnrichedHeading","configure","levels","extend","addKeyboardShortcuts","addInputRules","addCommands","parent","toggleHeading","attrs","editor","commands","chain","isActive","setParagraph","c","setHeading"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedHeading.ts"],"mappings":";;AAAA,OAAOA,OAAO,MAAM,2BAA2B;AAC/C,SAASC,qBAAqB,QAAQ,kBAAe;AAErD,OAAO,MAAMC,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU;AAIzD,OAAO,MAAMC,YAAY,GAAGD,cAAc,CAACE,GAAG,CAC3CC,CAAC,IAAK,IAAIA,CAAC,EACd,CAA0B;AAE1B,OAAO,MAAMC,eAAe,GAAGN,OAAO,CAACO,SAAS,CAAC;EAC/CC,MAAM,EAAE,CAAC,GAAGN,cAAc;AAC5B,CAAC,CAAC,CAACO,MAAM,CAAC;EACRC,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACL,GAAG,IAAI,CAACC,MAAM,GAAG,CAAC;MAClBC,aAAa,EACVC,KAAK,IACN,CAAC;QAAEC,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,KAC1BjB,qBAAqB,CACnB,MAAMe,MAAM,CAACG,QAAQ,CAAC,SAAS,EAAEJ,KAAK,CAAC,EACvC,MAAME,QAAQ,CAACG,YAAY,CAAC,CAAC,EAC5BC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAACP,KAAK,CAAC,EAC1BG,KACF;IACN,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Heading","toggleParagraphFormat","HEADING_LEVELS","HEADING_TAGS","map","n","EnrichedHeading","configure","levels","extend","addKeyboardShortcuts","addInputRules","addCommands","parent","toggleHeading","attrs","editor","commands","chain","isActive","setParagraph","c","setHeading"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedHeading.ts"],"mappings":";;AAAA,OAAOA,OAAO,MAAM,2BAA2B;AAC/C,SAASC,qBAAqB,QAAQ,kBAAe;AAErD,OAAO,MAAMC,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU;AAIzD,OAAO,MAAMC,YAAY,GAAGD,cAAc,CAACE,GAAG,CAC3CC,CAAC,IAAK,IAAIA,CAAC,EACd,CAA0B;AAE1B,OAAO,MAAMC,eAAe,GAAGN,OAAO,CAACO,SAAS,CAAC;EAC/CC,MAAM,EAAE,CAAC,GAAGN,cAAc;AAC5B,CAAC,CAAC,CAACO,MAAM,CAAC;EACRC,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAO,EAAE;EACX,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACL,GAAG,IAAI,CAACC,MAAM,GAAG,CAAC;MAClBC,aAAa,EACVC,KAAK,IACN,CAAC;QAAEC,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,KAC1BjB,qBAAqB,CACnB,MAAMe,MAAM,CAACG,QAAQ,CAAC,SAAS,EAAEJ,KAAK,CAAC,EACvC,MAAME,QAAQ,CAACG,YAAY,CAAC,CAAC,EAC5BC,CAAC,IAAKA,CAAC,CAACC,UAAU,CAACP,KAAK,CAAC,EAC1BG,KAAK,EACLF,MACF;IACN,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
@@ -2,9 +2,9 @@
2
2
 
3
3
  import { NodeViewWrapper } from '@tiptap/react';
4
4
  import { useState } from 'react';
5
+ import { BROKEN_IMAGE_PATH_D } from "../constants/brokenImageGlyph.js";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
6
7
  const IMAGE_FALLBACK_SIZE = 80;
7
- const BROKEN_IMAGE_PATH_D = 'M200,840Q167,840 143.5,816.5Q120,793 120,760L120,200Q120,167 143.5,143.5Q167,120 200,120L760,120Q793,120 816.5,143.5Q840,167 840,200L840,760Q840,793 816.5,816.5Q793,840 760,840L200,840ZM240,503L400,343L560,503L720,343L760,383L760,200Q760,200 760,200Q760,200 760,200L200,200Q200,200 200,200Q200,200 200,200L200,463L240,503ZM200,760L760,760Q760,760 760,760Q760,760 760,760L760,496L720,456L560,616L400,456L240,616L200,576L200,760Q200,760 200,760Q200,760 200,760ZM200,760L200,760Q200,760 200,760Q200,760 200,760L200,496L200,576L200,463L200,383L200,200Q200,200 200,200Q200,200 200,200L200,200Q200,200 200,200Q200,200 200,200L200,463L200,463L200,576L200,576L200,760Q200,760 200,760Q200,760 200,760Z';
8
8
  function BrokenImageGlyph() {
9
9
  return /*#__PURE__*/_jsx("svg", {
10
10
  viewBox: "0 0 960 960",
@@ -1 +1 @@
1
- {"version":3,"names":["NodeViewWrapper","useState","jsx","_jsx","IMAGE_FALLBACK_SIZE","BROKEN_IMAGE_PATH_D","BrokenImageGlyph","viewBox","width","height","preserveAspectRatio","focusable","className","children","fill","d","dim","value","undefined","Number","isNaN","n","parseFloat","String","EnrichedImageNodeView","node","src","attrs","trim","rawW","rawH","errored","setErrored","showPlaceholder","length","placeholderW","placeholderH","sizeStyle","as","style","imgDims","imgStyle","alt","contentEditable","draggable","onError"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedImageNodeView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NodeViewWrapper","useState","BROKEN_IMAGE_PATH_D","jsx","_jsx","IMAGE_FALLBACK_SIZE","BrokenImageGlyph","viewBox","width","height","preserveAspectRatio","focusable","className","children","fill","d","dim","value","undefined","Number","isNaN","n","parseFloat","String","EnrichedImageNodeView","node","src","attrs","trim","rawW","rawH","errored","setErrored","showPlaceholder","length","placeholderW","placeholderH","sizeStyle","as","style","imgDims","imgStyle","alt","contentEditable","draggable","onError"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedImageNodeView.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,50 @@
1
1
  "use strict";
2
2
 
3
3
  import Link from '@tiptap/extension-link';
4
+ import { mergeAttributes } from '@tiptap/core';
4
5
  import { nativePosToTiptapPos } from "../positionMapping.js";
5
6
  import { isLinkBlocked } from "./formatRules.js";
7
+ import { findAutolinkRangesInWord } from "../pmPlugins/AutolinkPlugin/autolinkRegex.js";
8
+ function isFullLinkMatch(text, linkRegex) {
9
+ const ranges = findAutolinkRangesInWord(text, linkRegex);
10
+ return ranges.some(r => r.start === 0 && r.endExclusive === text.length);
11
+ }
6
12
  export const EnrichedLink = Link.extend({
7
13
  excludes: 'link code',
14
+ parseHTML() {
15
+ return [{
16
+ tag: 'a[href]',
17
+ getAttrs: node => {
18
+ if (typeof node === 'string') return null;
19
+ const href = node.getAttribute('href');
20
+ if (!href || /^javascript:/i.test(href)) return false;
21
+ return null;
22
+ }
23
+ }];
24
+ },
25
+ addAttributes() {
26
+ return {
27
+ ...this.parent?.(),
28
+ auto: {
29
+ default: false,
30
+ parseHTML: el => {
31
+ const href = el.getAttribute('href');
32
+ const textContent = el.textContent;
33
+ if (!href || href !== textContent) return false;
34
+ const linkRegex = this.options.getLinkRegex();
35
+ if (linkRegex === null) return false;
36
+ return isFullLinkMatch(href, linkRegex);
37
+ },
38
+ renderHTML: () => {
39
+ return {};
40
+ }
41
+ }
42
+ };
43
+ },
8
44
  renderHTML({
9
45
  HTMLAttributes
10
46
  }) {
11
- return ['a', {
12
- href: HTMLAttributes.href
13
- }, 0];
47
+ return ['a', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
14
48
  },
15
49
  addOptions() {
16
50
  const parent = this.parent?.();
@@ -23,6 +57,9 @@ export const EnrichedLink = Link.extend({
23
57
  ...parent.HTMLAttributes,
24
58
  target: null,
25
59
  rel: null
60
+ },
61
+ getLinkRegex: () => {
62
+ throw new Error('EnrichedLink.configure({ getLinkRegex }) is required');
26
63
  }
27
64
  };
28
65
  },
@@ -52,6 +89,9 @@ export const EnrichedLink = Link.extend({
52
89
  return parent?.unsetLink?.()(props) ?? false;
53
90
  }
54
91
  };
92
+ },
93
+ addPasteRules() {
94
+ return [];
55
95
  }
56
96
  });
57
97
  export function removeLink(editor, start, end) {
@@ -1 +1 @@
1
- {"version":3,"names":["Link","nativePosToTiptapPos","isLinkBlocked","EnrichedLink","extend","excludes","renderHTML","HTMLAttributes","href","addOptions","parent","openOnClick","autolink","linkOnPaste","target","rel","addKeyboardShortcuts","addCommands","setLink","attributes","props","editor","toggleLink","unsetLink","removeLink","start","end","doc","selection","selectionBefore","state","from","to","chain","focus","setTextSelection","command","tr","mapped","map","mapping","setSelection","run","text","url","length","isRangeLinkBlocked","linkType","schema","marks","link","linkMark","create","s","marksAtRangeStart","resolve","marksWithLink","addToSet","insert","currentText","textBetween","replaceWith","addMark","hasInlineCode","code","rangeHasMark","hasBlockedNode","blockedNodes","nodesBetween","node","includes","type","name"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedLink.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Link","mergeAttributes","nativePosToTiptapPos","isLinkBlocked","findAutolinkRangesInWord","isFullLinkMatch","text","linkRegex","ranges","some","r","start","endExclusive","length","EnrichedLink","extend","excludes","parseHTML","tag","getAttrs","node","href","getAttribute","test","addAttributes","parent","auto","default","el","textContent","options","getLinkRegex","renderHTML","HTMLAttributes","addOptions","openOnClick","autolink","linkOnPaste","target","rel","Error","addKeyboardShortcuts","addCommands","setLink","attributes","props","editor","toggleLink","unsetLink","addPasteRules","removeLink","end","doc","selection","selectionBefore","state","from","to","chain","focus","setTextSelection","command","tr","mapped","map","mapping","setSelection","run","url","isRangeLinkBlocked","linkType","schema","marks","link","linkMark","create","s","marksAtRangeStart","resolve","marksWithLink","addToSet","insert","currentText","textBetween","replaceWith","addMark","hasInlineCode","code","rangeHasMark","hasBlockedNode","blockedNodes","nodesBetween","includes","type","name"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedLink.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import { wrappingInputRule } from '@tiptap/core';
4
4
  import { OrderedList } from '@tiptap/extension-list';
5
5
  import { applyWrappingListToSelection } from "./applyWrappingListToSelection.js";
6
+ import { withPreservedAlignment } from "./formatRules.js";
6
7
  const ORDERED_LIST_INPUT_REGEX = /^1\.\s$/;
7
8
  export const EnrichedOrderedList = OrderedList.extend({
8
9
  addInputRules() {
@@ -18,11 +19,10 @@ export const EnrichedOrderedList = OrderedList.extend({
18
19
  return {
19
20
  toggleOrderedList: () => ({
20
21
  editor,
21
- commands,
22
22
  chain
23
23
  }) => {
24
24
  if (editor.isActive('orderedList')) {
25
- return commands.setParagraph();
25
+ return withPreservedAlignment(editor, chain(), c => c.clearNodes().setParagraph());
26
26
  }
27
27
  return applyWrappingListToSelection(editor, chain, 'orderedList', 'listItem');
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"names":["wrappingInputRule","OrderedList","applyWrappingListToSelection","ORDERED_LIST_INPUT_REGEX","EnrichedOrderedList","extend","addInputRules","find","type","addKeyboardShortcuts","addCommands","toggleOrderedList","editor","commands","chain","isActive","setParagraph"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedOrderedList.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,cAAc;AAChD,SAASC,WAAW,QAAQ,wBAAwB;AAEpD,SAASC,4BAA4B,QAAQ,mCAAgC;AAE7E,MAAMC,wBAAwB,GAAG,SAAS;AAE1C,OAAO,MAAMC,mBAAmB,GAAGH,WAAW,CAACI,MAAM,CAAC;EACpDC,aAAaA,CAAA,EAAG;IACd,OAAO,CACLN,iBAAiB,CAAC;MAChBO,IAAI,EAAEJ,wBAAwB;MAC9BK,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,CAAC,CACH;EACH,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,iBAAiB,EACfA,CAAA,KACA,CAAC;QAAEC,MAAM;QAAEC,QAAQ;QAAEC;MAAM,CAAC,KAAK;QAC/B,IAAIF,MAAM,CAACG,QAAQ,CAAC,aAAa,CAAC,EAAE;UAClC,OAAOF,QAAQ,CAACG,YAAY,CAAC,CAAC;QAChC;QAEA,OAAOd,4BAA4B,CACjCU,MAAM,EACNE,KAAK,EACL,aAAa,EACb,UACF,CAAC;MACH;IACJ,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["wrappingInputRule","OrderedList","applyWrappingListToSelection","withPreservedAlignment","ORDERED_LIST_INPUT_REGEX","EnrichedOrderedList","extend","addInputRules","find","type","addKeyboardShortcuts","addCommands","toggleOrderedList","editor","chain","isActive","c","clearNodes","setParagraph"],"sourceRoot":"../../../../src","sources":["web/formats/EnrichedOrderedList.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,cAAc;AAChD,SAASC,WAAW,QAAQ,wBAAwB;AAEpD,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,sBAAsB,QAAQ,kBAAe;AAEtD,MAAMC,wBAAwB,GAAG,SAAS;AAE1C,OAAO,MAAMC,mBAAmB,GAAGJ,WAAW,CAACK,MAAM,CAAC;EACpDC,aAAaA,CAAA,EAAG;IACd,OAAO,CACLP,iBAAiB,CAAC;MAChBQ,IAAI,EAAEJ,wBAAwB;MAC9BK,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,CAAC,CACH;EACH,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC;EACX,CAAC;EAEDC,WAAWA,CAAA,EAAG;IACZ,OAAO;MACLC,iBAAiB,EACfA,CAAA,KACA,CAAC;QAAEC,MAAM;QAAEC;MAAM,CAAC,KAAK;QACrB,IAAID,MAAM,CAACE,QAAQ,CAAC,aAAa,CAAC,EAAE;UAClC,OAAOZ,sBAAsB,CAACU,MAAM,EAAEC,KAAK,CAAC,CAAC,EAAGE,CAAC,IAC/CA,CAAC,CAACC,UAAU,CAAC,CAAC,CAACC,YAAY,CAAC,CAC9B,CAAC;QACH;QAEA,OAAOhB,4BAA4B,CACjCW,MAAM,EACNC,KAAK,EACL,aAAa,EACb,UACF,CAAC;MACH;IACJ,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}