@templatical/editor 0.38.0 → 0.39.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 (289) hide show
  1. package/README.md +2 -4
  2. package/dist/{AiChatSidebar-tu4eLcf_.js → AiChatSidebar-pOxCZWz9.js} +67 -67
  3. package/dist/{AiFeatureMenu-BF0i0vA4.js → AiFeatureMenu-Bljk6Qjv.js} +7 -7
  4. package/dist/{BlockIssueBadge-DT-FqKeC.js → BlockIssueBadge-D5oGxOQP.js} +5 -5
  5. package/dist/{BlockPreviewCanvas-DDCmMram.js → BlockPreviewCanvas-DXGjUECG.js} +27 -27
  6. package/dist/{CloudHeaderExtras-NPhudovT.js → CloudHeaderExtras-DaocwNmy.js} +5 -5
  7. package/dist/{CloudPanels-Iwnky0iA.js → CloudPanels-CyZAnSJY.js} +7 -7
  8. package/dist/{CollaboratorBar-DAITu0hz.js → CollaboratorBar-C7Zca3g1.js} +4 -4
  9. package/dist/{CommentsPanel-CDvgmWP1.js → CommentsPanel-CNOb7YCm.js} +2 -2
  10. package/dist/{CommentsSidebar-X_xqM3dR.js → CommentsSidebar-VmwjU9va.js} +14 -14
  11. package/dist/{CountdownBlock-ZFJIdbP6.js → CountdownBlock-DSvbf3qU.js} +3 -3
  12. package/dist/{CountdownToolbar-DBFoG3a6.js → CountdownToolbar-C2kfS6Oy.js} +31 -30
  13. package/dist/{DesignReferenceSidebar--QtXjLrw.js → DesignReferenceSidebar-QC4gEUWp.js} +11 -11
  14. package/dist/{IssuesPanel-BLbNFMSX.js → IssuesPanel-DL2Xr14_.js} +8 -8
  15. package/dist/{LoadingTrack-BlTL4zFv.js → LoadingTrack-C2jKCU2d.js} +1 -1
  16. package/dist/LogicTagInsertButton-D8IwH-9Z.js +1071 -0
  17. package/dist/{MediaPanels-CMTAhDXB.js → MediaPanels-Cc4UkfG1.js} +2 -2
  18. package/dist/MergeTagInput-QI-5KG2R.js +81 -0
  19. package/dist/{MergeTagModeToggle-DKN6ihI5.js → MergeTagModeToggle-D793Bj_E.js} +32 -73
  20. package/dist/{ParagraphEditor-1E9yzOfk.js → ParagraphEditor-DkkPSexG.js} +50 -51
  21. package/dist/{RestoreVersionDialog-BMGUkcd8.js → RestoreVersionDialog-BgueZnZr.js} +5 -5
  22. package/dist/{RichTextEditorContent-BnxbQUV9.js → RichTextEditorContent-BC5UTVnb.js} +12 -12
  23. package/dist/{SaveBlockDialog-WKASpCCT.js → SaveBlockDialog-BuTuVlLr.js} +12 -11
  24. package/dist/{SavedBlocksBrowserModal-AYEXTMtQ.js → SavedBlocksBrowserModal-Srhix8BB.js} +17 -16
  25. package/dist/{SavedBlocksPanels-D_CpacTl.js → SavedBlocksPanels-B2iScCS-.js} +2 -2
  26. package/dist/{SavedBlocksPickBar-BHMwg-1G.js → SavedBlocksPickBar-cI7bDQQi.js} +4 -4
  27. package/dist/{TemplateScoringPanel-CSin43YM.js → TemplateScoringPanel-C2Rdlyn6.js} +104 -104
  28. package/dist/TemplateSettings-C_5leDdF.js +245 -0
  29. package/dist/{TestEmailModal-BxizsRCd.js → TestEmailModal-DJ5q_u4N.js} +55 -55
  30. package/dist/{TestEmailPanel-vd2e5HzT.js → TestEmailPanel-CP24UGst.js} +2 -2
  31. package/dist/{TitleEditor-CLJ68Ty4.js → TitleEditor-QBBOXtxx.js} +18 -18
  32. package/dist/ToggleSwitch-JvQ_CmI1.js +102 -0
  33. package/dist/Toolbar-COD2TW20.js +2426 -0
  34. package/dist/{TplModal-Q9fDgS1M.js → TplModal-C8xGjC1l.js} +5 -5
  35. package/dist/{VersionHistoryMenu-eGYVhM4H.js → VersionHistoryMenu-BVQityes.js} +10 -10
  36. package/dist/{VersionHistoryPanels-C7Ntrrfq.js → VersionHistoryPanels-BrK6na4A.js} +2 -2
  37. package/dist/{VersionPreviewBanner-BbQXnR0M.js → VersionPreviewBanner-BaMSgA1O.js} +3 -3
  38. package/dist/{blockTypeIcons-5qD4bB76.js → blockTypeIcons-CdXugKyV.js} +16 -37
  39. package/dist/bundle-stats.json +8 -8
  40. package/dist/{cdn/chunks/ca-D9S-UCfZ.js → ca-YlPDhElv.js} +5 -3
  41. package/dist/cdn/chunks/{AiChatSidebar-dyqqHAcI.js → AiChatSidebar-CjSEoK4x.js} +54 -54
  42. package/dist/cdn/chunks/AiChatSidebar-CjSEoK4x.js.map +1 -0
  43. package/dist/cdn/chunks/{AiFeatureMenu-BjVMwhW8.js → AiFeatureMenu-l0K5TOSn.js} +6 -6
  44. package/dist/cdn/chunks/{AiFeatureMenu-BjVMwhW8.js.map → AiFeatureMenu-l0K5TOSn.js.map} +1 -1
  45. package/dist/cdn/chunks/{BlockIssueBadge-BJ__oEtm.js → BlockIssueBadge-9hHpaXb9.js} +5 -5
  46. package/dist/cdn/chunks/{BlockIssueBadge-BJ__oEtm.js.map → BlockIssueBadge-9hHpaXb9.js.map} +1 -1
  47. package/dist/cdn/chunks/{BlockPreviewCanvas-B5f26eLE.js → BlockPreviewCanvas-lQrAdgG3.js} +30 -30
  48. package/dist/cdn/chunks/{BlockPreviewCanvas-B5f26eLE.js.map → BlockPreviewCanvas-lQrAdgG3.js.map} +1 -1
  49. package/dist/cdn/chunks/{CloudHeaderExtras-D5P5IEKA.js → CloudHeaderExtras-CXNe7Q-4.js} +5 -5
  50. package/dist/cdn/chunks/{CloudHeaderExtras-D5P5IEKA.js.map → CloudHeaderExtras-CXNe7Q-4.js.map} +1 -1
  51. package/dist/cdn/chunks/{CloudPanels-DkmR05nB.js → CloudPanels-bHhh9AUA.js} +6 -6
  52. package/dist/cdn/chunks/{CloudPanels-DkmR05nB.js.map → CloudPanels-bHhh9AUA.js.map} +1 -1
  53. package/dist/cdn/chunks/{CollaboratorBar-Yn7KSpt4.js → CollaboratorBar-DgqcaGGI.js} +5 -5
  54. package/dist/cdn/chunks/{CollaboratorBar-Yn7KSpt4.js.map → CollaboratorBar-DgqcaGGI.js.map} +1 -1
  55. package/dist/cdn/chunks/{CommentsPanel-CntwwocI.js → CommentsPanel-Cy4TlTHC.js} +3 -3
  56. package/dist/cdn/chunks/{CommentsPanel-CntwwocI.js.map → CommentsPanel-Cy4TlTHC.js.map} +1 -1
  57. package/dist/cdn/chunks/{CommentsSidebar-BLDKnKy7.js → CommentsSidebar-C7oAP3Mx.js} +5 -5
  58. package/dist/cdn/chunks/{CommentsSidebar-BLDKnKy7.js.map → CommentsSidebar-C7oAP3Mx.js.map} +1 -1
  59. package/dist/cdn/chunks/{CountdownBlock-B4AfqJwb.js → CountdownBlock-DdC8Lg5F.js} +4 -4
  60. package/dist/cdn/chunks/{CountdownBlock-B4AfqJwb.js.map → CountdownBlock-DdC8Lg5F.js.map} +1 -1
  61. package/dist/cdn/chunks/{CountdownToolbar-CA1dpuOI.js → CountdownToolbar-CN9h4nlC.js} +22 -21
  62. package/dist/cdn/chunks/{CountdownToolbar-CA1dpuOI.js.map → CountdownToolbar-CN9h4nlC.js.map} +1 -1
  63. package/dist/cdn/chunks/{DesignReferenceSidebar-D1Y9Hswe.js → DesignReferenceSidebar-Bjo0M-AY.js} +7 -7
  64. package/dist/cdn/chunks/{DesignReferenceSidebar-D1Y9Hswe.js.map → DesignReferenceSidebar-Bjo0M-AY.js.map} +1 -1
  65. package/dist/cdn/chunks/{IssuesPanel-Q62LTqvd.js → IssuesPanel-DdFk-Blf.js} +6 -6
  66. package/dist/cdn/chunks/{IssuesPanel-Q62LTqvd.js.map → IssuesPanel-DdFk-Blf.js.map} +1 -1
  67. package/dist/cdn/chunks/{LoadingTrack-Cm3TDKb3.js → LoadingTrack-Ba5xh5HD.js} +2 -2
  68. package/dist/cdn/chunks/{LoadingTrack-Cm3TDKb3.js.map → LoadingTrack-Ba5xh5HD.js.map} +1 -1
  69. package/dist/cdn/chunks/LogicTagInsertButton-DpyPozop.js +1035 -0
  70. package/dist/cdn/chunks/LogicTagInsertButton-DpyPozop.js.map +1 -0
  71. package/dist/cdn/chunks/{MediaPanels-D21M6shx.js → MediaPanels-kX9AZQ7K.js} +3 -3
  72. package/dist/cdn/chunks/{MediaPanels-D21M6shx.js.map → MediaPanels-kX9AZQ7K.js.map} +1 -1
  73. package/dist/cdn/chunks/MergeTagInput-ERJr7bP_.js +83 -0
  74. package/dist/cdn/chunks/MergeTagInput-ERJr7bP_.js.map +1 -0
  75. package/dist/cdn/chunks/{MergeTagModeToggle-DYxkAGtA.js → MergeTagModeToggle-n3nvSNeQ.js} +33 -33
  76. package/dist/cdn/chunks/{MergeTagModeToggle-DYxkAGtA.js.map → MergeTagModeToggle-n3nvSNeQ.js.map} +1 -1
  77. package/dist/cdn/chunks/{ParagraphEditor-Bd-GQXee.js → ParagraphEditor-DO4RzP8l.js} +43 -43
  78. package/dist/cdn/chunks/{ParagraphEditor-Bd-GQXee.js.map → ParagraphEditor-DO4RzP8l.js.map} +1 -1
  79. package/dist/cdn/chunks/{RestoreVersionDialog-2X9RpM9A.js → RestoreVersionDialog-CzZ_sFnz.js} +5 -5
  80. package/dist/cdn/chunks/{RestoreVersionDialog-2X9RpM9A.js.map → RestoreVersionDialog-CzZ_sFnz.js.map} +1 -1
  81. package/dist/cdn/chunks/{RichTextEditorContent-D_rb0rmU.js → RichTextEditorContent-Ch5zeyZ7.js} +9 -9
  82. package/dist/cdn/chunks/{RichTextEditorContent-D_rb0rmU.js.map → RichTextEditorContent-Ch5zeyZ7.js.map} +1 -1
  83. package/dist/cdn/chunks/{SaveBlockDialog-CufdTomT.js → SaveBlockDialog-LgxYrXyx.js} +10 -9
  84. package/dist/cdn/chunks/{SaveBlockDialog-CufdTomT.js.map → SaveBlockDialog-LgxYrXyx.js.map} +1 -1
  85. package/dist/cdn/chunks/{SavedBlocksBrowserModal-CqpaNsk7.js → SavedBlocksBrowserModal-CdeSsTpb.js} +9 -9
  86. package/dist/cdn/chunks/{SavedBlocksBrowserModal-CqpaNsk7.js.map → SavedBlocksBrowserModal-CdeSsTpb.js.map} +1 -1
  87. package/dist/cdn/chunks/{SavedBlocksPanels-DpxYxddo.js → SavedBlocksPanels-B5hakNJj.js} +3 -3
  88. package/dist/cdn/chunks/{SavedBlocksPanels-DpxYxddo.js.map → SavedBlocksPanels-B5hakNJj.js.map} +1 -1
  89. package/dist/cdn/chunks/{SavedBlocksPickBar-Drpoav1B.js → SavedBlocksPickBar-Cl6PLwwV.js} +5 -5
  90. package/dist/cdn/chunks/{SavedBlocksPickBar-Drpoav1B.js.map → SavedBlocksPickBar-Cl6PLwwV.js.map} +1 -1
  91. package/dist/cdn/chunks/{TemplateScoringPanel-DBjUNULq.js → TemplateScoringPanel--JxR6CsQ.js} +86 -86
  92. package/dist/cdn/chunks/TemplateScoringPanel--JxR6CsQ.js.map +1 -0
  93. package/dist/cdn/chunks/TemplateSettings-DjXiiiNr.js +207 -0
  94. package/dist/cdn/chunks/TemplateSettings-DjXiiiNr.js.map +1 -0
  95. package/dist/cdn/chunks/{TestEmailModal-BTNlSW6f.js → TestEmailModal-BAuDxJtD.js} +53 -53
  96. package/dist/cdn/chunks/TestEmailModal-BAuDxJtD.js.map +1 -0
  97. package/dist/cdn/chunks/{TestEmailPanel-D0A9Zgxr.js → TestEmailPanel-GUGZisLp.js} +3 -3
  98. package/dist/cdn/chunks/{TestEmailPanel-D0A9Zgxr.js.map → TestEmailPanel-GUGZisLp.js.map} +1 -1
  99. package/dist/cdn/chunks/{TitleEditor-CrnuIq62.js → TitleEditor-uKu33Nwr.js} +16 -16
  100. package/dist/cdn/chunks/TitleEditor-uKu33Nwr.js.map +1 -0
  101. package/dist/cdn/chunks/ToggleSwitch-CDy8OfcB.js +104 -0
  102. package/dist/cdn/chunks/ToggleSwitch-CDy8OfcB.js.map +1 -0
  103. package/dist/cdn/chunks/Toolbar-dxDYwN5E.js +2385 -0
  104. package/dist/cdn/chunks/Toolbar-dxDYwN5E.js.map +1 -0
  105. package/dist/cdn/chunks/{TplModal-DYXrTz42.js → TplModal-DuwS2ifK.js} +5 -5
  106. package/dist/cdn/chunks/{TplModal-DYXrTz42.js.map → TplModal-DuwS2ifK.js.map} +1 -1
  107. package/dist/cdn/chunks/{VersionHistoryMenu-bDGnE4hb.js → VersionHistoryMenu-Dij1pTEb.js} +6 -6
  108. package/dist/cdn/chunks/{VersionHistoryMenu-bDGnE4hb.js.map → VersionHistoryMenu-Dij1pTEb.js.map} +1 -1
  109. package/dist/cdn/chunks/{VersionHistoryPanels-82P0Q0HM.js → VersionHistoryPanels-GeR6MStB.js} +3 -3
  110. package/dist/cdn/chunks/{VersionHistoryPanels-82P0Q0HM.js.map → VersionHistoryPanels-GeR6MStB.js.map} +1 -1
  111. package/dist/cdn/chunks/{VersionPreviewBanner-BJiwKkVC.js → VersionPreviewBanner-Df3FVlig.js} +4 -4
  112. package/dist/cdn/chunks/{VersionPreviewBanner-BJiwKkVC.js.map → VersionPreviewBanner-Df3FVlig.js.map} +1 -1
  113. package/dist/cdn/chunks/{blockTypeIcons-CNjJSFun.js → blockTypeIcons-raBjStuv.js} +2 -2
  114. package/dist/cdn/chunks/{blockTypeIcons-CNjJSFun.js.map → blockTypeIcons-raBjStuv.js.map} +1 -1
  115. package/dist/{ca-D9S-UCfZ.js → cdn/chunks/ca-YlPDhElv.js} +7 -1
  116. package/dist/cdn/chunks/{ca-D9S-UCfZ.js.map → ca-YlPDhElv.js.map} +1 -1
  117. package/dist/cdn/chunks/{cloud-BLgCKP7Z.js → cloud-eaXyxZ8l.js} +2 -2
  118. package/dist/cdn/chunks/{cloud-BLgCKP7Z.js.map → cloud-eaXyxZ8l.js.map} +1 -1
  119. package/dist/cdn/chunks/{createCloudRuntime-U-qCH-dq.js → createCloudRuntime-D5bXzcTe.js} +6 -6
  120. package/dist/cdn/chunks/{createCloudRuntime-U-qCH-dq.js.map → createCloudRuntime-D5bXzcTe.js.map} +1 -1
  121. package/dist/cdn/chunks/{de-BUPszLpi.js → de-CONjnzrF.js} +6 -2
  122. package/dist/cdn/chunks/{de-BUPszLpi.js.map → de-CONjnzrF.js.map} +1 -1
  123. package/dist/cdn/chunks/{dist-BW6Y49zE.js → dist-BRZhN8qJ.js} +4 -4
  124. package/dist/cdn/chunks/dist-BRZhN8qJ.js.map +1 -0
  125. package/dist/cdn/chunks/{dist-CAFTQ6Y2.js → dist-CXB2_kBa.js} +27 -22
  126. package/dist/cdn/chunks/dist-CXB2_kBa.js.map +1 -0
  127. package/dist/cdn/chunks/{draggable-kbOhCgnk.js → draggable-IB4x6w2O.js} +1477 -1470
  128. package/dist/cdn/chunks/draggable-IB4x6w2O.js.map +1 -0
  129. package/dist/cdn/chunks/{editor-modal-MXgtarMl.js → editor-modal-C_xYN_66.js} +7 -7
  130. package/dist/cdn/chunks/{editor-modal-MXgtarMl.js.map → editor-modal-C_xYN_66.js.map} +1 -1
  131. package/dist/cdn/chunks/{en-BbOC5x3w.js → en-BAMooiOF.js} +6 -2
  132. package/dist/cdn/chunks/{en-BbOC5x3w.js.map → en-BAMooiOF.js.map} +1 -1
  133. package/dist/cdn/chunks/en-BwfjKb4M.js +2 -0
  134. package/dist/{es-0bCDcT9p.js → cdn/chunks/es-I47lHs2m.js} +7 -1
  135. package/dist/cdn/chunks/{es-0bCDcT9p.js.map → es-I47lHs2m.js.map} +1 -1
  136. package/dist/cdn/chunks/{extensions-B8_jnIkD.js → extensions-Bhu8UEE5.js} +185 -100
  137. package/dist/cdn/chunks/extensions-Bhu8UEE5.js.map +1 -0
  138. package/dist/cdn/chunks/{fr-Brr8mJ9e.js → fr-B8MIKjT4.js} +6 -2
  139. package/dist/cdn/chunks/{fr-Brr8mJ9e.js.map → fr-B8MIKjT4.js.map} +1 -1
  140. package/dist/cdn/chunks/htmlparser-ClUZ6waR.js +1113 -0
  141. package/dist/cdn/chunks/htmlparser-ClUZ6waR.js.map +1 -0
  142. package/dist/cdn/chunks/{icons-BUlqGSgd.js → icons-BKkJ-5xF.js} +36 -36
  143. package/dist/cdn/chunks/{icons-BUlqGSgd.js.map → icons-BKkJ-5xF.js.map} +1 -1
  144. package/dist/cdn/chunks/keys-dJbD1QPs.js +12 -0
  145. package/dist/cdn/chunks/keys-dJbD1QPs.js.map +1 -0
  146. package/dist/{nl-Co3_RL0M.js → cdn/chunks/nl-CBLxcb-0.js} +7 -1
  147. package/dist/cdn/chunks/{nl-Co3_RL0M.js.map → nl-CBLxcb-0.js.map} +1 -1
  148. package/dist/{pt-BR-BECez5b0.js → cdn/chunks/pt-BR-CMSRfX7t.js} +7 -1
  149. package/dist/cdn/chunks/{pt-BR-BECez5b0.js.map → pt-BR-CMSRfX7t.js.map} +1 -1
  150. package/dist/cdn/chunks/socialIcons-9VrG8X3m.js +1054 -0
  151. package/dist/cdn/chunks/socialIcons-9VrG8X3m.js.map +1 -0
  152. package/dist/cdn/chunks/{src-IGLRmUar.js → src-CZ-W8YBa.js} +4 -4
  153. package/dist/cdn/chunks/{src-IGLRmUar.js.map → src-CZ-W8YBa.js.map} +1 -1
  154. package/dist/cdn/chunks/{src-CUvZWL6Y.js → src-CaNsA_WX.js} +2 -2
  155. package/dist/cdn/chunks/{src-CUvZWL6Y.js.map → src-CaNsA_WX.js.map} +1 -1
  156. package/dist/cdn/chunks/src-Dwgq7hf4.js.map +1 -1
  157. package/dist/cdn/chunks/templateSettingsFields-YCFVBVYh.js +36 -0
  158. package/dist/cdn/chunks/templateSettingsFields-YCFVBVYh.js.map +1 -0
  159. package/dist/cdn/chunks/{tiptap-Epe8m3Vo.js → tiptap-DhLuKyDc.js} +2776 -2773
  160. package/dist/cdn/chunks/tiptap-DhLuKyDc.js.map +1 -0
  161. package/dist/cdn/chunks/{useAliveFlag-CT9gjvO_.js → useAliveFlag-DAlQLbM2.js} +2 -2
  162. package/dist/cdn/chunks/{useAliveFlag-CT9gjvO_.js.map → useAliveFlag-DAlQLbM2.js.map} +1 -1
  163. package/dist/cdn/chunks/{useCloudI18n-DSWSGj-A.js → useCloudI18n-C09JcFS0.js} +3 -3
  164. package/dist/cdn/chunks/{useCloudI18n-DSWSGj-A.js.map → useCloudI18n-C09JcFS0.js.map} +1 -1
  165. package/dist/cdn/chunks/useEditorCore-BHmIp1hW.js +2592 -0
  166. package/dist/cdn/chunks/useEditorCore-BHmIp1hW.js.map +1 -0
  167. package/dist/cdn/chunks/useEditorRoot-DFx2fXJP.js +10 -0
  168. package/dist/cdn/chunks/{useEditorRoot-B0zW2nT4.js.map → useEditorRoot-DFx2fXJP.js.map} +1 -1
  169. package/dist/cdn/chunks/{useI18n-Dlo7R9RA.js → useI18n-DTZ9sIcv.js} +3 -3
  170. package/dist/cdn/chunks/{useI18n-Dlo7R9RA.js.map → useI18n-DTZ9sIcv.js.map} +1 -1
  171. package/dist/cdn/chunks/useLogicTag-E2V0Xdcb.js +38 -0
  172. package/dist/cdn/chunks/useLogicTag-E2V0Xdcb.js.map +1 -0
  173. package/dist/cdn/chunks/useMergeTag-BE8oDoha.js +60 -0
  174. package/dist/cdn/chunks/useMergeTag-BE8oDoha.js.map +1 -0
  175. package/dist/cdn/chunks/{usePopoverPosition-ElP3ABaV.js → usePopoverPosition-gB9q-ql7.js} +3 -3
  176. package/dist/cdn/chunks/{usePopoverPosition-ElP3ABaV.js.map → usePopoverPosition-gB9q-ql7.js.map} +1 -1
  177. package/dist/cdn/chunks/{useScrollToBlock-nTbWkgaU.js → useScrollToBlock-CtTXwmiU.js} +3 -3
  178. package/dist/cdn/chunks/{useScrollToBlock-nTbWkgaU.js.map → useScrollToBlock-CtTXwmiU.js.map} +1 -1
  179. package/dist/cdn/editor.css +1 -1
  180. package/dist/cdn/editor.js +856 -3347
  181. package/dist/cdn/editor.js.map +1 -1
  182. package/dist/{check-DWtkBzBU.js → check-eqb2JhqU.js} +1 -1
  183. package/dist/{chevron-down-C-Fjxcqj.js → chevron-down-Dkr-7Ywl.js} +1 -1
  184. package/dist/{chevron-right-SOkn2d4P.js → chevron-right-Bge4XF_B.js} +1 -1
  185. package/dist/{chevron-up-lntU1ypp.js → chevron-up-CQAyl0kC.js} +1 -1
  186. package/dist/{circle-alert-CjzUTwy3.js → circle-alert-CYgTHKWr.js} +1 -1
  187. package/dist/{clock-pB2QKPsJ.js → clock-BgSJZJP5.js} +1 -1
  188. package/dist/{cloud-DdidMW6f.js → cloud-C9xWZXhg.js} +1 -1
  189. package/dist/{copy-CId1E038.js → copy-mw6PVnOJ.js} +1 -1
  190. package/dist/{createCloudRuntime-x5WZm3p8.js → createCloudRuntime-BGd5--Bq.js} +5 -5
  191. package/dist/{createLucideIcon-Cwf_nTzE.js → createLucideIcon-BxY5yz5u.js} +6 -6
  192. package/dist/{de-BUPszLpi.js → de-CONjnzrF.js} +5 -1
  193. package/dist/{dist-D8i1ixHK.js → dist-8VFzbeu9.js} +3 -3
  194. package/dist/{dist-DBirAJIs.js → dist-BDuPwOyn.js} +26 -21
  195. package/dist/{dist-CtF9STPS.js → dist-BJM3eFyT.js} +1 -1
  196. package/dist/{dist-DkcA6epL.js → dist-BdHF7nyq.js} +3 -3
  197. package/dist/{dist-ByT5fgKq.js → dist-Bl4rxpX9.js} +1 -1
  198. package/dist/{dist-BVqAYoRB.js → dist-BmsLcnrO.js} +4 -4
  199. package/dist/{dist-CtMXAH7a.js → dist-BxVnMgXZ.js} +1 -1
  200. package/dist/{dist-DC-3T0ED.js → dist-CQSVro7b.js} +1 -1
  201. package/dist/{dist-f7HXo6j6.js → dist-DQbOebGW.js} +1 -1
  202. package/dist/{dist-DL9334yz.js → dist-DerFNpDY.js} +3 -3
  203. package/dist/{dist-D08oVYhr.js → dist-Djmzp6wi.js} +1 -1
  204. package/dist/{dist-D7WY8VPq.js → dist-DyrEOKEJ.js} +1 -1
  205. package/dist/{dist-DzdeVn-W.js → dist-EDkj3Ub1.js} +1 -1
  206. package/dist/{dist-C1tsW_99.js → dist-wyXxj3R1.js} +1 -1
  207. package/dist/{editor-modal-B_LaQf0s.js → editor-modal-OPhP71YO.js} +20 -20
  208. package/dist/{en-BbOC5x3w.js → en-BAMooiOF.js} +5 -1
  209. package/dist/en-CjNopehs.js +2 -0
  210. package/dist/{cdn/chunks/es-0bCDcT9p.js → es-I47lHs2m.js} +5 -3
  211. package/dist/extensions-DRN-elXT.js +1645 -0
  212. package/dist/{eye-BuGtFUoJ.js → eye-DphkRtAD.js} +1 -1
  213. package/dist/{fr-Brr8mJ9e.js → fr-B8MIKjT4.js} +5 -1
  214. package/dist/{image-up-gH4JEpU5.js → image-up-Qi2BXD7T.js} +1 -1
  215. package/dist/index.d.ts +15 -0
  216. package/dist/{info-BQ60P82u.js → info-VSyAs02q.js} +1 -1
  217. package/dist/keys-BdoSgsz9.js +10 -0
  218. package/dist/{link-3R8it3J7.js → link-CNuozGqD.js} +1 -1
  219. package/dist/{list-Ccdgj46T.js → list-BA0I5Wmu.js} +1 -1
  220. package/dist/{loader-circle-B_tAD4k6.js → loader-circle-z5eeqasv.js} +1 -1
  221. package/dist/{message-circle-P-KSc6V0.js → message-circle-BsQ9hEup.js} +1 -1
  222. package/dist/{cdn/chunks/nl-Co3_RL0M.js → nl-CBLxcb-0.js} +5 -3
  223. package/dist/package-OkXfuRoO.js +25 -0
  224. package/dist/{pencil-9ZiwqS4r.js → pencil-DFVFA7Dj.js} +1 -1
  225. package/dist/{plus-BwJEzCaO.js → plus-D8bkVjZ7.js} +1 -1
  226. package/dist/{cdn/chunks/pt-BR-BECez5b0.js → pt-BR-CMSRfX7t.js} +5 -3
  227. package/dist/{refresh-cw-DEgfb2FK.js → refresh-cw-DPB7YFuz.js} +1 -1
  228. package/dist/{runtime-dom.esm-bundler-PnoZU512.js → runtime-dom.esm-bundler-BGbPz4-g.js} +2 -2
  229. package/dist/{search-DqQ8Li5E.js → search-C-dCgqIa.js} +1 -1
  230. package/dist/{send-CE6uvqop.js → send-Cm2fy2zm.js} +1 -1
  231. package/dist/{shield-check-DhD1Z3rd.js → shield-check-COgBYFDF.js} +1 -1
  232. package/dist/smartphone-v0u_MOEV.js +46 -0
  233. package/dist/socialIcons-DkGcpEwC.js +1130 -0
  234. package/dist/{sparkles-R0ZQHa6F.js → sparkles-Ds0RF8Iu.js} +1 -1
  235. package/dist/style.css +1 -1
  236. package/dist/templateSettingsFields-YCFVBVYh.js +34 -0
  237. package/dist/templatical-editor.js +945 -3511
  238. package/dist/{text-align-start-DSux2UNn.js → text-align-start-DiavaIm6.js} +1 -1
  239. package/dist/{trash-Cf_SqsER.js → trash-DnOkfu2V.js} +1 -1
  240. package/dist/{triangle-alert-C6tGa6jw.js → triangle-alert-DGLAyXnh.js} +1 -1
  241. package/dist/{upload-DusKjpVr.js → upload-BBDme2cy.js} +1 -1
  242. package/dist/{useAliveFlag-oyByIcjy.js → useAliveFlag-BkKyhkwZ.js} +1 -1
  243. package/dist/{useCloudI18n-BLyh_e2T.js → useCloudI18n-D1iedlP3.js} +2 -2
  244. package/dist/useEditorCore-C5APBjjV.js +4097 -0
  245. package/dist/{useEditorRoot-ds57-l6F.js → useEditorRoot-BOxn5EfP.js} +2 -2
  246. package/dist/{useI18n-BbdxxpOE.js → useI18n-Ds_-druD.js} +2 -2
  247. package/dist/useLogicTag-DoHfc08B.js +36 -0
  248. package/dist/useMergeTag-DXyum3kG.js +58 -0
  249. package/dist/{usePopoverPosition-CprM5p-c.js → usePopoverPosition-Du-Ah8E9.js} +2 -2
  250. package/dist/{useScrollToBlock-BTFw0b9O.js → useScrollToBlock-DXQYPCnJ.js} +3 -3
  251. package/dist/{vue.runtime.esm-bundler-DShF3P6k.js → vue.runtime.esm-bundler-CyqhBwpY.js} +1133 -1126
  252. package/dist/{x-D_-42Ukq.js → x-3BHV3Q6K.js} +1 -1
  253. package/package.json +16 -16
  254. package/dist/ColorPicker-BqlZ_TqG.js +0 -501
  255. package/dist/FieldRow-C8nOknr_.js +0 -128
  256. package/dist/MergeTagInput-BEjzj4Iu.js +0 -457
  257. package/dist/MergeTagSuggestion-DKoLEeoj.js +0 -1329
  258. package/dist/cdn/chunks/AiChatSidebar-dyqqHAcI.js.map +0 -1
  259. package/dist/cdn/chunks/ColorPicker-LcrzgMoW.js +0 -502
  260. package/dist/cdn/chunks/ColorPicker-LcrzgMoW.js.map +0 -1
  261. package/dist/cdn/chunks/FieldRow-D9OJhYeb.js +0 -130
  262. package/dist/cdn/chunks/FieldRow-D9OJhYeb.js.map +0 -1
  263. package/dist/cdn/chunks/MergeTagInput-l7paaAml.js +0 -419
  264. package/dist/cdn/chunks/MergeTagInput-l7paaAml.js.map +0 -1
  265. package/dist/cdn/chunks/MergeTagSuggestion-t8Uj00Er.js +0 -215
  266. package/dist/cdn/chunks/MergeTagSuggestion-t8Uj00Er.js.map +0 -1
  267. package/dist/cdn/chunks/TemplateScoringPanel-DBjUNULq.js.map +0 -1
  268. package/dist/cdn/chunks/TestEmailModal-BTNlSW6f.js.map +0 -1
  269. package/dist/cdn/chunks/TitleEditor-CrnuIq62.js.map +0 -1
  270. package/dist/cdn/chunks/dist-BW6Y49zE.js.map +0 -1
  271. package/dist/cdn/chunks/dist-CAFTQ6Y2.js.map +0 -1
  272. package/dist/cdn/chunks/draggable-kbOhCgnk.js.map +0 -1
  273. package/dist/cdn/chunks/en-C9U7N77n.js +0 -2
  274. package/dist/cdn/chunks/extensions-B8_jnIkD.js.map +0 -1
  275. package/dist/cdn/chunks/htmlparser-DTML8Gvz.js +0 -1007
  276. package/dist/cdn/chunks/htmlparser-DTML8Gvz.js.map +0 -1
  277. package/dist/cdn/chunks/keys-DBFhDFng.js +0 -12
  278. package/dist/cdn/chunks/keys-DBFhDFng.js.map +0 -1
  279. package/dist/cdn/chunks/tiptap-Epe8m3Vo.js.map +0 -1
  280. package/dist/cdn/chunks/useEditorCore-Cs7rYVBo.js +0 -3689
  281. package/dist/cdn/chunks/useEditorCore-Cs7rYVBo.js.map +0 -1
  282. package/dist/cdn/chunks/useEditorRoot-B0zW2nT4.js +0 -10
  283. package/dist/cdn/chunks/useMergeTag-BYAifvh8.js +0 -46
  284. package/dist/cdn/chunks/useMergeTag-BYAifvh8.js.map +0 -1
  285. package/dist/en-DcmpWV53.js +0 -2
  286. package/dist/extensions-CHOBZRab.js +0 -445
  287. package/dist/keys-DQA2i1k1.js +0 -10
  288. package/dist/useEditorCore-DhlKOYwe.js +0 -5273
  289. package/dist/useMergeTag-DlvOBW_B.js +0 -44
@@ -1,11 +1,11 @@
1
- import { H as e, N as t, Q as n, S as r, U as i, at as a, c as o, ct as s, f as c, g as l, h as u, k as d, l as f, lt as p, m, o as h, p as g, ut as _ } from "./draggable-kbOhCgnk.js";
2
- import { a as v, d as y, o as b, r as x } from "./src-Dwgq7hf4.js";
3
- import { t as S } from "./useI18n-Dlo7R9RA.js";
4
- import { t as C } from "./useMergeTag-BYAifvh8.js";
5
- import { _ as w, g as T, h as E, n as D, t as O, v as k, y as A } from "./tiptap-Epe8m3Vo.js";
6
- import { i as j, r as M, t as N } from "./MergeTagSuggestion-t8Uj00Er.js";
1
+ import { H as e, N as t, Q as n, S as r, U as i, Y as a, at as o, c as s, ct as c, f as l, g as u, h as d, k as f, l as p, lt as m, m as h, o as g, p as _, ut as v } from "./draggable-IB4x6w2O.js";
2
+ import { a as y, d as b, o as x, r as S } from "./src-Dwgq7hf4.js";
3
+ import { t as C } from "./useI18n-DTZ9sIcv.js";
4
+ import { t as w } from "./useMergeTag-BE8oDoha.js";
5
+ import { _ as T, g as E, h as D, n as O, r as k, t as A, v as j, y as M } from "./tiptap-DhLuKyDc.js";
6
+ import { a as N, o as P, s as F } from "./LogicTagInsertButton-DpyPozop.js";
7
7
  //#region src/extensions/FontSize.ts
8
- var P = E.create({
8
+ var I = D.create({
9
9
  name: "fontSize",
10
10
  addOptions() {
11
11
  return { types: ["textStyle"] };
@@ -26,7 +26,7 @@ var P = E.create({
26
26
  unsetFontSize: () => ({ chain: e }) => e().setMark("textStyle", { fontSize: null }).removeEmptyTextStyle().run()
27
27
  };
28
28
  }
29
- }), F = E.create({
29
+ }), L = D.create({
30
30
  name: "letterSpacing",
31
31
  addOptions() {
32
32
  return { types: ["textStyle"] };
@@ -47,7 +47,7 @@ var P = E.create({
47
47
  unsetLetterSpacing: () => ({ chain: e }) => e().setMark("textStyle", { letterSpacing: null }).removeEmptyTextStyle().run()
48
48
  };
49
49
  }
50
- }), I = E.create({
50
+ }), R = D.create({
51
51
  name: "lineBoundaryKeys",
52
52
  addKeyboardShortcuts() {
53
53
  let e = (e) => ({ editor: t }) => {
@@ -61,7 +61,7 @@ var P = E.create({
61
61
  Home: e("backward")
62
62
  };
63
63
  }
64
- }), L = E.create({
64
+ }), z = D.create({
65
65
  name: "lineHeight",
66
66
  addOptions() {
67
67
  return {
@@ -85,11 +85,11 @@ var P = E.create({
85
85
  unsetLineHeight: () => ({ commands: e }) => this.options.types.every((t) => e.resetAttributes(t, "lineHeight"))
86
86
  };
87
87
  }
88
- }), R = [
88
+ }), B = [
89
89
  "aria-label",
90
90
  "data-tooltip",
91
91
  "onKeydown"
92
- ], z = ["aria-label", "onKeydown"], B = ["aria-label"], V = /* @__PURE__ */ r({
92
+ ], V = ["aria-label", "onKeydown"], H = ["aria-label"], U = /* @__PURE__ */ r({
93
93
  __name: "LogicMergeTagNodeView",
94
94
  props: {
95
95
  node: {},
@@ -99,9 +99,9 @@ var P = E.create({
99
99
  updateAttributes: { type: Function }
100
100
  },
101
101
  setup(r) {
102
- let b = r, { syntax: x } = C(), { t: w } = S(), T = c(() => y(b.node.attrs.value, x)), E = c(() => v(b.node.attrs.value, x)), D = n(!1), k = n(""), A = n(null), j = !1;
102
+ let a = r, { syntax: x } = w(), { t: S } = C(), T = l(() => b(a.node.attrs.value, x)), E = l(() => y(a.node.attrs.value, x)), D = n(!1), k = n(""), A = n(null), j = !1;
103
103
  function M() {
104
- k.value = b.node.attrs.value, j = !1, D.value = !0, d(() => {
104
+ k.value = a.node.attrs.value, j = !1, D.value = !0, f(() => {
105
105
  A.value?.focus(), A.value?.select();
106
106
  });
107
107
  }
@@ -113,53 +113,53 @@ var P = E.create({
113
113
  D.value = !1;
114
114
  return;
115
115
  }
116
- e !== b.node.attrs.value && b.updateAttributes({
116
+ e !== a.node.attrs.value && a.updateAttributes({
117
117
  value: e,
118
- keyword: y(e, x) ? v(e, x) : ""
118
+ keyword: b(e, x) ? y(e, x) : ""
119
119
  }), D.value = !1;
120
120
  }
121
121
  function P(e) {
122
122
  e.key === "Enter" ? (e.preventDefault(), N()) : e.key === "Escape" && (D.value = !1);
123
123
  }
124
- return (n, c) => (t(), m(a(O), {
124
+ return (n, a) => (t(), h(o(O), {
125
125
  as: "span",
126
- class: s(T.value ? "tpl-logic-merge-tag-node tpl:group tpl:mx-0.5 tpl:inline-flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[0.8em] tpl:font-bold tpl:tracking-wide tpl:uppercase tpl:select-none" : ""),
127
- style: p(T.value ? "background-color: transparent; border: 1.5px solid color-mix(in srgb, var(--tpl-primary) 50%, transparent); color: var(--tpl-primary);" : ""),
126
+ class: c(T.value ? "tpl-logic-merge-tag-node tpl:group tpl:mx-0.5 tpl:inline-flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[0.8em] tpl:font-bold tpl:tracking-wide tpl:uppercase tpl:select-none" : ""),
127
+ style: m(T.value ? "background-color: transparent; border: 1.5px solid color-mix(in srgb, var(--tpl-primary) 50%, transparent); color: var(--tpl-primary);" : ""),
128
128
  contenteditable: "false"
129
129
  }, {
130
- default: e(() => [D.value ? i((t(), l("input", {
130
+ default: e(() => [D.value ? i((t(), u("input", {
131
131
  key: 0,
132
132
  ref_key: "inputRef",
133
133
  ref: A,
134
- "onUpdate:modelValue": c[0] ||= (e) => k.value = e,
134
+ "onUpdate:modelValue": a[0] ||= (e) => k.value = e,
135
135
  type: "text",
136
136
  class: "tpl:w-40 tpl:rounded tpl:border-none tpl:bg-transparent tpl:px-0.5 tpl:py-0 tpl:text-[1em] tpl:font-medium tpl:normal-case tpl:outline-none tpl:text-[var(--tpl-primary)]",
137
137
  onBlur: N,
138
138
  onKeydown: P
139
- }, null, 544)), [[h, k.value]]) : T.value ? (t(), l("span", {
139
+ }, null, 544)), [[g, k.value]]) : T.value ? (t(), u("span", {
140
140
  key: 1,
141
141
  role: "button",
142
142
  tabindex: "0",
143
- "aria-label": a(w).mergeTag.editValue,
143
+ "aria-label": o(S).mergeTag.editValue,
144
144
  class: "tpl-tooltip tpl:cursor-pointer",
145
145
  "data-tooltip": r.node.attrs.value,
146
- onClick: f(M, ["stop"]),
147
- onKeydown: [o(f(M, ["stop"]), ["enter"]), o(f(M, ["prevent", "stop"]), ["space"])]
148
- }, _(E.value), 41, R)) : (t(), l("span", {
146
+ onClick: p(M, ["stop"]),
147
+ onKeydown: [s(p(M, ["stop"]), ["enter"]), s(p(M, ["prevent", "stop"]), ["space"])]
148
+ }, v(E.value), 41, B)) : (t(), u("span", {
149
149
  key: 2,
150
150
  role: "button",
151
151
  tabindex: "0",
152
- "aria-label": a(w).mergeTag.editValue,
153
- onClick: f(M, ["stop"]),
154
- onKeydown: [o(f(M, ["stop"]), ["enter"]), o(f(M, ["prevent", "stop"]), ["space"])]
155
- }, _(r.node.attrs.value), 41, z)), T.value ? (t(), l("button", {
152
+ "aria-label": o(S).mergeTag.editValue,
153
+ onClick: p(M, ["stop"]),
154
+ onKeydown: [s(p(M, ["stop"]), ["enter"]), s(p(M, ["prevent", "stop"]), ["space"])]
155
+ }, v(r.node.attrs.value), 41, V)), T.value ? (t(), u("button", {
156
156
  key: 3,
157
157
  type: "button",
158
- "aria-label": a(w).mergeTag.deleteMergeTag,
158
+ "aria-label": o(S).mergeTag.deleteMergeTag,
159
159
  class: "tpl-merge-tag-delete tpl:flex tpl:size-5 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-full tpl:border-none tpl:bg-transparent tpl:p-0 tpl:opacity-60 tpl:transition-all tpl:hover:opacity-100 tpl:text-[var(--tpl-primary)]",
160
160
  contenteditable: "false",
161
- onClick: c[1] ||= f((...e) => r.deleteNode && r.deleteNode(...e), ["stop", "prevent"])
162
- }, [...c[2] ||= [g("svg", {
161
+ onClick: a[1] ||= p((...e) => r.deleteNode && r.deleteNode(...e), ["stop", "prevent"])
162
+ }, [...a[2] ||= [_("svg", {
163
163
  width: "10",
164
164
  height: "10",
165
165
  viewBox: "0 0 24 24",
@@ -167,41 +167,41 @@ var P = E.create({
167
167
  stroke: "currentColor",
168
168
  "stroke-width": "3",
169
169
  "aria-hidden": "true"
170
- }, [g("line", {
170
+ }, [_("line", {
171
171
  x1: "18",
172
172
  y1: "6",
173
173
  x2: "6",
174
174
  y2: "18"
175
- }), g("line", {
175
+ }), _("line", {
176
176
  x1: "6",
177
177
  y1: "6",
178
178
  x2: "18",
179
179
  y2: "18"
180
- })], -1)]], 8, B)) : u("", !0)]),
180
+ })], -1)]], 8, H)) : d("", !0)]),
181
181
  _: 1
182
182
  }, 8, ["class", "style"]));
183
183
  }
184
184
  });
185
185
  //#endregion
186
186
  //#region src/extensions/isNodeSelected.ts
187
- function H(e, t) {
187
+ function W(e, t) {
188
188
  let { $from: n, $to: r } = e.state.selection;
189
189
  return n.pos === r.pos ? n.pos > 0 && n.nodeBefore?.type.name === t || n.nodeAfter?.type.name === t : !1;
190
190
  }
191
191
  //#endregion
192
192
  //#region src/extensions/renderVueNodeView.ts
193
- function U(e) {
194
- return D(e);
193
+ function G(e) {
194
+ return k(e);
195
195
  }
196
196
  //#endregion
197
197
  //#region src/extensions/LogicMergeTagNode.ts
198
- var W = w.create({
198
+ var K = T.create({
199
199
  name: "logicMergeTagNode",
200
200
  group: "inline",
201
201
  inline: !0,
202
202
  atom: !0,
203
203
  addOptions() {
204
- return { syntax: x.liquid };
204
+ return { syntax: S.liquid };
205
205
  },
206
206
  addAttributes() {
207
207
  return {
@@ -221,15 +221,15 @@ var W = w.create({
221
221
  return [{ tag: "span[data-logic-merge-tag]" }];
222
222
  },
223
223
  renderHTML({ node: e, HTMLAttributes: t }) {
224
- if (!y(e.attrs.value, this.options.syntax)) return [
224
+ if (!b(e.attrs.value, this.options.syntax)) return [
225
225
  "span",
226
226
  {},
227
227
  e.attrs.value
228
228
  ];
229
- let n = v(e.attrs.value, this.options.syntax);
229
+ let n = y(e.attrs.value, this.options.syntax);
230
230
  return [
231
231
  "span",
232
- A(t, {
232
+ M(t, {
233
233
  "data-logic-merge-tag": e.attrs.value,
234
234
  "data-keyword": n
235
235
  }),
@@ -237,22 +237,22 @@ var W = w.create({
237
237
  ];
238
238
  },
239
239
  addNodeView() {
240
- return U(V);
240
+ return G(U);
241
241
  },
242
242
  addKeyboardShortcuts() {
243
243
  return {
244
- Backspace: () => H(this.editor, this.name),
245
- Delete: () => H(this.editor, this.name)
244
+ Backspace: () => W(this.editor, this.name),
245
+ Delete: () => W(this.editor, this.name)
246
246
  };
247
247
  },
248
248
  addInputRules() {
249
249
  let e = RegExp(this.options.syntax.logic.source + "$", "");
250
- return [new T({
250
+ return [new E({
251
251
  find: e,
252
252
  handler: ({ state: e, range: t, match: n }) => {
253
253
  let r = n[0];
254
- if (!y(r, this.options.syntax)) return;
255
- let i = v(r, this.options.syntax), a = this.type.create({
254
+ if (!b(r, this.options.syntax)) return;
255
+ let i = y(r, this.options.syntax), a = this.type.create({
256
256
  value: r,
257
257
  keyword: i
258
258
  });
@@ -262,12 +262,12 @@ var W = w.create({
262
262
  },
263
263
  addPasteRules() {
264
264
  let e = new RegExp(this.options.syntax.logic.source, "g");
265
- return [new k({
265
+ return [new j({
266
266
  find: e,
267
267
  handler: ({ state: e, range: t, match: n }) => {
268
268
  let r = n[0];
269
- if (!y(r, this.options.syntax)) return;
270
- let i = v(r, this.options.syntax), a = this.type.create({
269
+ if (!b(r, this.options.syntax)) return;
270
+ let i = y(r, this.options.syntax), a = this.type.create({
271
271
  value: r,
272
272
  keyword: i
273
273
  });
@@ -275,11 +275,11 @@ var W = w.create({
275
275
  }
276
276
  })];
277
277
  }
278
- }), G = [
278
+ }), q = ["aria-invalid"], J = [
279
279
  "aria-label",
280
280
  "data-tooltip",
281
281
  "onKeydown"
282
- ], K = ["aria-label"], q = /* @__PURE__ */ r({
282
+ ], Y = ["aria-label"], X = /* @__PURE__ */ r({
283
283
  __name: "MergeTagNodeView",
284
284
  props: {
285
285
  node: {},
@@ -287,53 +287,78 @@ var W = w.create({
287
287
  updateAttributes: { type: Function }
288
288
  },
289
289
  setup(r) {
290
- let s = r, { getMergeTagLabel: u } = C(), { t: p } = S(), v = c(() => u(s.node.attrs.value)), y = n(!1), b = n(""), x = n(null);
291
- function w() {
292
- b.value = s.node.attrs.value, y.value = !0, d(() => {
293
- x.value?.focus(), x.value?.select();
290
+ let d = r, { getMergeTagLabel: m, getMergeTagDisplayLabel: y, findMergeTag: b, canRepickMergeTag: x, showRawValue: S, isMergeTagValue: T, requestMergeTag: E } = w(), { t: D, format: k } = C(), A = l(() => y(d.node.attrs.value, d.node.attrs.label)), j = l(() => x(d.node.attrs.value)), M = n(!1), N = n(""), P = n(null), F = !1;
291
+ a(() => {
292
+ F = !0;
293
+ });
294
+ let I = l(() => N.value.trim() === "" || T(N.value.trim()));
295
+ async function L() {
296
+ let e = await E({
297
+ reason: "edit",
298
+ current: b(d.node.attrs.value)
299
+ });
300
+ !F && e && d.updateAttributes({
301
+ value: e.value,
302
+ label: e.label
303
+ });
304
+ }
305
+ function R() {
306
+ N.value = d.node.attrs.value, M.value = !0, f(() => {
307
+ P.value?.focus(), P.value?.select();
294
308
  });
295
309
  }
296
- function T() {
297
- let e = b.value.trim();
298
- e && e !== s.node.attrs.value && s.updateAttributes({
310
+ function z() {
311
+ if (j.value) {
312
+ L();
313
+ return;
314
+ }
315
+ R();
316
+ }
317
+ function B() {
318
+ let e = N.value.trim();
319
+ e && e !== d.node.attrs.value && T(e) && d.updateAttributes({
299
320
  value: e,
300
- label: u(e)
301
- }), y.value = !1;
321
+ label: m(e)
322
+ }), M.value = !1;
302
323
  }
303
- function E(e) {
304
- e.key === "Enter" ? (e.preventDefault(), T()) : e.key === "Escape" && (y.value = !1);
324
+ function V(e) {
325
+ if (e.key === "Enter") {
326
+ if (e.preventDefault(), !I.value) return;
327
+ B();
328
+ } else e.key === "Escape" && (M.value = !1);
305
329
  }
306
- return (n, s) => (t(), m(a(O), {
330
+ return (n, a) => (t(), h(o(O), {
307
331
  as: "span",
308
332
  class: "tpl-merge-tag-node tpl:group tpl:mx-0.5 tpl:inline-flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[0.9em] tpl:font-medium tpl:select-none tpl:text-[var(--tpl-primary)]",
309
333
  style: { "background-color": "color-mix(in srgb, var(--tpl-primary) 20%, transparent)" },
310
334
  contenteditable: "false"
311
335
  }, {
312
- default: e(() => [y.value ? i((t(), l("input", {
336
+ default: e(() => [M.value ? i((t(), u("input", {
313
337
  key: 0,
314
338
  ref_key: "inputRef",
315
- ref: x,
316
- "onUpdate:modelValue": s[0] ||= (e) => b.value = e,
339
+ ref: P,
340
+ "onUpdate:modelValue": a[0] ||= (e) => N.value = e,
317
341
  type: "text",
318
- class: "tpl:w-32 tpl:rounded tpl:border-none tpl:bg-transparent tpl:px-0.5 tpl:py-0 tpl:text-[1em] tpl:font-medium tpl:outline-none tpl:text-[var(--tpl-primary)]",
319
- onBlur: T,
320
- onKeydown: E
321
- }, null, 544)), [[h, b.value]]) : (t(), l("span", {
342
+ "aria-invalid": I.value ? void 0 : "true",
343
+ class: c(["tpl:w-32 tpl:rounded tpl:bg-transparent tpl:px-0.5 tpl:py-0 tpl:text-[1em] tpl:font-medium tpl:outline-none tpl:text-[var(--tpl-primary)]", I.value ? "tpl:border-none" : "tpl:border tpl:border-[var(--tpl-danger)]"]),
344
+ onBlur: B,
345
+ onKeydown: V
346
+ }, null, 42, q)), [[g, N.value]]) : (t(), u("span", {
322
347
  key: 1,
323
348
  role: "button",
324
349
  tabindex: "0",
325
- "aria-label": a(p).mergeTag.editValue,
326
- class: "tpl-tooltip tpl:cursor-pointer",
327
- "data-tooltip": r.node.attrs.value,
328
- onClick: f(w, ["stop"]),
329
- onKeydown: [o(f(w, ["stop"]), ["enter"]), o(f(w, ["prevent", "stop"]), ["space"])]
330
- }, _(v.value), 41, G)), g("button", {
350
+ "aria-label": j.value ? o(k)(o(D).mergeTag.changeTag, { label: A.value }) : o(D).mergeTag.editValue,
351
+ class: c(["tpl:cursor-pointer", o(S) ? "tpl-tooltip" : ""]),
352
+ "data-tooltip": o(S) ? r.node.attrs.value : void 0,
353
+ onClick: p(z, ["stop"]),
354
+ onKeydown: [s(p(z, ["stop"]), ["enter"]), s(p(z, ["prevent", "stop"]), ["space"])]
355
+ }, v(A.value), 43, J)), _("button", {
331
356
  type: "button",
332
- "aria-label": a(p).mergeTag.deleteMergeTag,
357
+ "aria-label": o(D).mergeTag.deleteMergeTag,
333
358
  class: "tpl-merge-tag-delete tpl:flex tpl:size-5 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-full tpl:border-none tpl:bg-transparent tpl:p-0 tpl:opacity-60 tpl:transition-all tpl:hover:opacity-100 tpl:text-[var(--tpl-primary)]",
334
359
  contenteditable: "false",
335
- onClick: s[1] ||= f((...e) => r.deleteNode && r.deleteNode(...e), ["stop", "prevent"])
336
- }, [...s[2] ||= [g("svg", {
360
+ onClick: a[1] ||= p((...e) => r.deleteNode && r.deleteNode(...e), ["stop", "prevent"])
361
+ }, [...a[2] ||= [_("svg", {
337
362
  width: "10",
338
363
  height: "10",
339
364
  viewBox: "0 0 24 24",
@@ -341,29 +366,29 @@ var W = w.create({
341
366
  stroke: "currentColor",
342
367
  "stroke-width": "3",
343
368
  "aria-hidden": "true"
344
- }, [g("line", {
369
+ }, [_("line", {
345
370
  x1: "18",
346
371
  y1: "6",
347
372
  x2: "6",
348
373
  y2: "18"
349
- }), g("line", {
374
+ }), _("line", {
350
375
  x1: "6",
351
376
  y1: "6",
352
377
  x2: "18",
353
378
  y2: "18"
354
- })], -1)]], 8, K)]),
379
+ })], -1)]], 8, Y)]),
355
380
  _: 1
356
381
  }));
357
382
  }
358
- }), J = w.create({
383
+ }), Z = T.create({
359
384
  name: "mergeTagNode",
360
385
  group: "inline",
361
386
  inline: !0,
362
387
  atom: !0,
363
388
  addOptions() {
364
389
  return {
365
- mergeTags: [],
366
- syntax: x.liquid
390
+ mergeTags: () => [],
391
+ syntax: S.liquid
367
392
  };
368
393
  },
369
394
  addAttributes() {
@@ -384,10 +409,10 @@ var W = w.create({
384
409
  return [{ tag: "span[data-merge-tag]" }];
385
410
  },
386
411
  renderHTML({ node: e, HTMLAttributes: t }) {
387
- let n = b(e.attrs.value, this.options.mergeTags);
412
+ let n = x(e.attrs.value, this.options.mergeTags());
388
413
  return [
389
414
  "span",
390
- A(t, {
415
+ M(t, {
391
416
  "data-merge-tag": e.attrs.value,
392
417
  "data-label": n
393
418
  }),
@@ -395,7 +420,7 @@ var W = w.create({
395
420
  ];
396
421
  },
397
422
  addNodeView() {
398
- return U(q);
423
+ return G(X);
399
424
  },
400
425
  addCommands() {
401
426
  return { insertMergeTag: (e) => ({ commands: t }) => t.insertContent({
@@ -408,16 +433,16 @@ var W = w.create({
408
433
  },
409
434
  addKeyboardShortcuts() {
410
435
  return {
411
- Backspace: () => H(this.editor, this.name),
412
- Delete: () => H(this.editor, this.name)
436
+ Backspace: () => W(this.editor, this.name),
437
+ Delete: () => W(this.editor, this.name)
413
438
  };
414
439
  },
415
440
  addInputRules() {
416
441
  let e = RegExp(this.options.syntax.value.source + "$", "");
417
- return [new T({
442
+ return [new E({
418
443
  find: e,
419
444
  handler: ({ state: e, range: t, match: n }) => {
420
- let r = n[0], i = b(r, this.options.mergeTags), a = this.type.create({
445
+ let r = n[0], i = x(r, this.options.mergeTags()), a = this.type.create({
421
446
  label: i,
422
447
  value: r
423
448
  });
@@ -427,10 +452,10 @@ var W = w.create({
427
452
  },
428
453
  addPasteRules() {
429
454
  let e = new RegExp(this.options.syntax.value.source, "g");
430
- return [new k({
455
+ return [new j({
431
456
  find: e,
432
457
  handler: ({ state: e, range: t, match: n }) => {
433
- let r = n[0], i = b(r, this.options.mergeTags), a = this.type.create({
458
+ let r = n[0], i = x(r, this.options.mergeTags()), a = this.type.create({
434
459
  label: i,
435
460
  value: r
436
461
  });
@@ -440,6 +465,66 @@ var W = w.create({
440
465
  }
441
466
  });
442
467
  //#endregion
443
- export { P as FontSize, F as LetterSpacing, I as LineBoundaryKeys, L as LineHeight, W as LogicMergeTagNode, J as MergeTagNode, N as MergeTagSuggestion, M as filterMergeTags, j as handleSuggestionKeyDown };
468
+ //#region src/extensions/MergeTagSuggestion.ts
469
+ function Q(e, t) {
470
+ return () => {
471
+ let n = N(e, t);
472
+ return {
473
+ onStart: (e) => {
474
+ n.open({
475
+ items: e.items,
476
+ getRect: e.clientRect ?? null,
477
+ anchorEl: e.editor.view?.dom ?? null,
478
+ onCommand: (t) => e.command(t)
479
+ });
480
+ },
481
+ onUpdate: (e) => {
482
+ n.update({
483
+ items: e.items,
484
+ getRect: e.clientRect ?? null,
485
+ onCommand: (t) => e.command(t)
486
+ });
487
+ },
488
+ onKeyDown: (e) => e.event.key === "Escape" || n.handleKeyDown(e.event),
489
+ onExit: () => n.close()
490
+ };
491
+ };
492
+ }
493
+ var $ = D.create({
494
+ name: "mergeTagSuggestion",
495
+ addOptions() {
496
+ return {
497
+ mergeTags: () => [],
498
+ char: "{{",
499
+ emptyText: "No matching merge tags",
500
+ popoverRoot: null
501
+ };
502
+ },
503
+ addProseMirrorPlugins() {
504
+ let e = this.options.mergeTags(), t = this.options.emptyText, n = this.options.popoverRoot, r = {
505
+ char: this.options.char,
506
+ allowSpaces: !1,
507
+ startOfLine: !1,
508
+ allowedPrefixes: null,
509
+ items: ({ query: t }) => P(e, t),
510
+ command: ({ editor: e, range: t, props: n }) => {
511
+ e.chain().focus().insertContentAt(t, {
512
+ type: "mergeTagNode",
513
+ attrs: {
514
+ label: n.label,
515
+ value: n.value
516
+ }
517
+ }).run();
518
+ },
519
+ render: Q(t, n)
520
+ };
521
+ return [A({
522
+ editor: this.editor,
523
+ ...r
524
+ })];
525
+ }
526
+ });
527
+ //#endregion
528
+ export { I as FontSize, L as LetterSpacing, R as LineBoundaryKeys, z as LineHeight, K as LogicMergeTagNode, Z as MergeTagNode, $ as MergeTagSuggestion, P as filterMergeTags, F as handleSuggestionKeyDown };
444
529
 
445
- //# sourceMappingURL=extensions-B8_jnIkD.js.map
530
+ //# sourceMappingURL=extensions-Bhu8UEE5.js.map