@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,10 +0,0 @@
1
- import { E as e } from "./draggable-kbOhCgnk.js";
2
- import { _ as t } from "./keys-DBFhDFng.js";
3
- //#region src/composables/useEditorRoot.ts
4
- function n() {
5
- return e(t, document) ?? document;
6
- }
7
- //#endregion
8
- export { n as t };
9
-
10
- //# sourceMappingURL=useEditorRoot-B0zW2nT4.js.map
@@ -1,46 +0,0 @@
1
- import { E as e, Q as t } from "./draggable-kbOhCgnk.js";
2
- import { f as n, o as r, r as i } from "./src-Dwgq7hf4.js";
3
- import { A as a, D as o, F as s, M as c, O as l, k as u } from "./keys-DBFhDFng.js";
4
- //#region src/composables/useMergeTag.ts
5
- function d() {
6
- let d = e(o, []), f = e(c, i.liquid), p = e(s, null), m = e(l, !0), h = e(u, null), g = e(a, null) ?? t(!1);
7
- function _(e) {
8
- return n(e, f);
9
- }
10
- function v(e) {
11
- return r(e, d);
12
- }
13
- async function y() {
14
- if (p) {
15
- g.value = !0;
16
- try {
17
- return await p();
18
- } finally {
19
- g.value = !1;
20
- }
21
- }
22
- if (d.length > 0 && h) {
23
- g.value = !0;
24
- try {
25
- return await h.open(d);
26
- } finally {
27
- g.value = !1;
28
- }
29
- }
30
- return null;
31
- }
32
- return {
33
- mergeTags: d,
34
- isRequesting: g,
35
- canRequestMergeTag: !!p || d.length > 0,
36
- autocomplete: m,
37
- syntax: f,
38
- isMergeTagValue: _,
39
- getMergeTagLabel: v,
40
- requestMergeTag: y
41
- };
42
- }
43
- //#endregion
44
- export { d as t };
45
-
46
- //# sourceMappingURL=useMergeTag-BYAifvh8.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMergeTag-BYAifvh8.js","names":[],"sources":["../../../src/composables/useMergeTag.ts"],"sourcesContent":["import type { MergeTag, SyntaxPreset } from \"@templatical/types\";\nimport {\n isMergeTagValue as checkIsMergeTagValue,\n getMergeTagLabel as resolveMergeTagLabel,\n SYNTAX_PRESETS,\n} from \"@templatical/types\";\nimport { inject, ref, type Ref } from \"vue\";\nimport {\n MERGE_TAGS_KEY,\n MERGE_TAG_SYNTAX_KEY,\n MERGE_TAG_AUTOCOMPLETE_KEY,\n MERGE_TAG_PICKER_KEY,\n MERGE_TAG_REQUESTING_KEY,\n ON_REQUEST_MERGE_TAG_KEY,\n} from \"../keys\";\n\nexport interface UseMergeTagReturn {\n /** Available merge tags from config */\n mergeTags: MergeTag[];\n /** Whether a merge tag request is in progress */\n isRequesting: Ref<boolean>;\n /**\n * Whether the \"Insert merge tag\" button should be shown. True when\n * either `onRequestMergeTag` is provided or `mergeTags.tags` is\n * non-empty (the built-in picker then handles the click).\n */\n canRequestMergeTag: boolean;\n /** Whether typing-based autocomplete is enabled by configuration */\n autocomplete: boolean;\n /** The resolved syntax preset for merge tags */\n syntax: SyntaxPreset;\n /** Check if a value matches the configured merge tag syntax */\n isMergeTagValue: (value: string) => boolean;\n /** Get the human-readable label for a merge tag value */\n getMergeTagLabel: (value: string) => string;\n /**\n * Request a merge tag from the user. Precedence: when\n * `onRequestMergeTag` is set it owns the UX; otherwise the built-in\n * picker opens with the configured `mergeTags.tags`; otherwise null.\n */\n requestMergeTag: () => Promise<MergeTag | null>;\n}\n\n/**\n * Composable for merge tag functionality.\n * Provides utilities for detecting, displaying, and requesting merge tags.\n */\nexport function useMergeTag(): UseMergeTagReturn {\n const mergeTags = inject(MERGE_TAGS_KEY, []);\n const syntax = inject(MERGE_TAG_SYNTAX_KEY, SYNTAX_PRESETS.liquid);\n const onRequestMergeTag = inject(ON_REQUEST_MERGE_TAG_KEY, null);\n const autocomplete = inject(MERGE_TAG_AUTOCOMPLETE_KEY, true);\n // Picker may be null in headless contexts (tests, non-editor consumers).\n // requestMergeTag() returns null in that case rather than throwing.\n const picker = inject(MERGE_TAG_PICKER_KEY, null);\n\n // Shared per editor so every host that can open the picker is visible to\n // useRichTextEditor's click-outside guard. See MERGE_TAG_REQUESTING_KEY.\n const isRequesting = inject(MERGE_TAG_REQUESTING_KEY, null) ?? ref(false);\n\n function isMergeTagValue(value: string): boolean {\n return checkIsMergeTagValue(value, syntax);\n }\n\n function getMergeTagLabel(value: string): string {\n return resolveMergeTagLabel(value, mergeTags);\n }\n\n /**\n * Request a merge tag from the user. Precedence:\n * 1. `onRequestMergeTag` callback (consumer-owned UX)\n * 2. Built-in picker over `mergeTags.tags`\n * 3. null (nothing configured)\n */\n async function requestMergeTag(): Promise<MergeTag | null> {\n if (onRequestMergeTag) {\n isRequesting.value = true;\n try {\n return await onRequestMergeTag();\n } finally {\n isRequesting.value = false;\n }\n }\n if (mergeTags.length > 0 && picker) {\n isRequesting.value = true;\n try {\n return await picker.open(mergeTags);\n } finally {\n isRequesting.value = false;\n }\n }\n return null;\n }\n\n const canRequestMergeTag = !!onRequestMergeTag || mergeTags.length > 0;\n\n return {\n mergeTags,\n isRequesting,\n canRequestMergeTag,\n autocomplete,\n syntax,\n isMergeTagValue,\n getMergeTagLabel,\n requestMergeTag,\n };\n}\n"],"mappings":";;;;AA+CA,SAAgB,IAAiC;CAC/C,IAAM,IAAY,EAAO,GAAgB,CAAC,CAAC,GACrC,IAAS,EAAO,GAAsB,EAAe,MAAM,GAC3D,IAAoB,EAAO,GAA0B,IAAI,GACzD,IAAe,EAAO,GAA4B,EAAI,GAGtD,IAAS,EAAO,GAAsB,IAAI,GAI1C,IAAe,EAAO,GAA0B,IAAI,KAAK,EAAI,EAAK;CAExE,SAAS,EAAgB,GAAwB;EAC/C,OAAO,EAAqB,GAAO,CAAM;CAC3C;CAEA,SAAS,EAAiB,GAAuB;EAC/C,OAAO,EAAqB,GAAO,CAAS;CAC9C;CAQA,eAAe,IAA4C;EACzD,IAAI,GAAmB;GACrB,EAAa,QAAQ;GACrB,IAAI;IACF,OAAO,MAAM,EAAkB;GACjC,UAAU;IACR,EAAa,QAAQ;GACvB;EACF;EACA,IAAI,EAAU,SAAS,KAAK,GAAQ;GAClC,EAAa,QAAQ;GACrB,IAAI;IACF,OAAO,MAAM,EAAO,KAAK,CAAS;GACpC,UAAU;IACR,EAAa,QAAQ;GACvB;EACF;EACA,OAAO;CACT;CAIA,OAAO;EACL;EACA;EACA,oBALyB,CAAC,CAAC,KAAqB,EAAU,SAAS;EAMnE;EACA;EACA,iBAAA;EACA,kBAAA;EACA;CACF;AACF"}
@@ -1,2 +0,0 @@
1
- import { t as e } from "./editor-modal-B_LaQf0s.js";
2
- export { e as default };
@@ -1,445 +0,0 @@
1
- import { A as e, At as t, B as n, E as r, V as i, Z as a, at as o, c as s, d as c, jt as l, kt as u, l as d, s as f, u as p, v as m } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
- import { a as h, c as g, s as _ } from "./runtime-dom.esm-bundler-PnoZU512.js";
3
- import { F as v, O as y, k as b, o as x } from "./dist-tGkjkX-v.js";
4
- import { t as S } from "./useI18n-BbdxxpOE.js";
5
- import { t as C } from "./useMergeTag-DlvOBW_B.js";
6
- import { gn as w, m as T, s as E, u as D, v as O } from "./dist-DL9334yz.js";
7
- import { i as k, r as A, t as j } from "./MergeTagSuggestion-DKoLEeoj.js";
8
- import { n as M, t as N } from "./dist-BVqAYoRB.js";
9
- //#region src/extensions/FontSize.ts
10
- var P = E.create({
11
- name: "fontSize",
12
- addOptions() {
13
- return { types: ["textStyle"] };
14
- },
15
- addGlobalAttributes() {
16
- return [{
17
- types: this.options.types,
18
- attributes: { fontSize: {
19
- default: null,
20
- parseHTML: (e) => e.style.fontSize?.replace(/['"]+/g, "") || null,
21
- renderHTML: (e) => e.fontSize ? { style: `font-size: ${e.fontSize}` } : {}
22
- } }
23
- }];
24
- },
25
- addCommands() {
26
- return {
27
- setFontSize: (e) => ({ chain: t }) => t().setMark("textStyle", { fontSize: e }).run(),
28
- unsetFontSize: () => ({ chain: e }) => e().setMark("textStyle", { fontSize: null }).removeEmptyTextStyle().run()
29
- };
30
- }
31
- }), F = E.create({
32
- name: "letterSpacing",
33
- addOptions() {
34
- return { types: ["textStyle"] };
35
- },
36
- addGlobalAttributes() {
37
- return [{
38
- types: this.options.types,
39
- attributes: { letterSpacing: {
40
- default: null,
41
- parseHTML: (e) => e.style.letterSpacing?.replace(/['"]+/g, "") || null,
42
- renderHTML: (e) => e.letterSpacing ? { style: `letter-spacing: ${e.letterSpacing}` } : {}
43
- } }
44
- }];
45
- },
46
- addCommands() {
47
- return {
48
- setLetterSpacing: (e) => ({ chain: t }) => t().setMark("textStyle", { letterSpacing: e }).run(),
49
- unsetLetterSpacing: () => ({ chain: e }) => e().setMark("textStyle", { letterSpacing: null }).removeEmptyTextStyle().run()
50
- };
51
- }
52
- }), I = E.create({
53
- name: "lineBoundaryKeys",
54
- addKeyboardShortcuts() {
55
- let e = (e) => ({ editor: t }) => {
56
- let n = t.view;
57
- if (!n || n.composing) return !1;
58
- let r = typeof n.root?.getSelection == "function" ? n.root.getSelection() : n.dom?.ownerDocument?.getSelection?.() ?? null;
59
- return !r || typeof r.modify != "function" || !r.anchorNode || !n.dom.contains(r.anchorNode) ? !1 : (r.modify("move", e, "lineboundary"), !0);
60
- };
61
- return {
62
- End: e("forward"),
63
- Home: e("backward")
64
- };
65
- }
66
- }), L = E.create({
67
- name: "lineHeight",
68
- addOptions() {
69
- return {
70
- types: ["paragraph"],
71
- defaultLineHeight: "1.5"
72
- };
73
- },
74
- addGlobalAttributes() {
75
- return [{
76
- types: this.options.types,
77
- attributes: { lineHeight: {
78
- default: null,
79
- parseHTML: (e) => e.style.lineHeight || null,
80
- renderHTML: (e) => e.lineHeight ? { style: `line-height: ${e.lineHeight}` } : {}
81
- } }
82
- }];
83
- },
84
- addCommands() {
85
- return {
86
- setLineHeight: (e) => ({ commands: t }) => this.options.types.every((n) => t.updateAttributes(n, { lineHeight: e })),
87
- unsetLineHeight: () => ({ commands: e }) => this.options.types.every((t) => e.resetAttributes(t, "lineHeight"))
88
- };
89
- }
90
- }), R = [
91
- "aria-label",
92
- "data-tooltip",
93
- "onKeydown"
94
- ], z = ["aria-label", "onKeydown"], B = ["aria-label"], V = /* @__PURE__ */ m({
95
- __name: "LogicMergeTagNodeView",
96
- props: {
97
- node: {},
98
- editor: {},
99
- getPos: { type: Function },
100
- deleteNode: { type: Function },
101
- updateAttributes: { type: Function }
102
- },
103
- setup(m) {
104
- let b = m, { syntax: x } = C(), { t: w } = S(), T = f(() => v(b.node.attrs.value, x)), E = f(() => y(b.node.attrs.value, x)), D = a(!1), O = a(""), k = a(null), A = !1;
105
- function j() {
106
- O.value = b.node.attrs.value, A = !1, D.value = !0, r(() => {
107
- k.value?.focus(), k.value?.select();
108
- });
109
- }
110
- function M() {
111
- if (A) return;
112
- A = !0;
113
- let e = O.value.trim();
114
- if (!e) {
115
- D.value = !1;
116
- return;
117
- }
118
- e !== b.node.attrs.value && b.updateAttributes({
119
- value: e,
120
- keyword: v(e, x) ? y(e, x) : ""
121
- }), D.value = !1;
122
- }
123
- function P(e) {
124
- e.key === "Enter" ? (e.preventDefault(), M()) : e.key === "Escape" && (D.value = !1);
125
- }
126
- return (r, a) => (e(), d(o(N), {
127
- as: "span",
128
- class: u(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" : ""),
129
- style: t(T.value ? "background-color: transparent; border: 1.5px solid color-mix(in srgb, var(--tpl-primary) 50%, transparent); color: var(--tpl-primary);" : ""),
130
- contenteditable: "false"
131
- }, {
132
- default: n(() => [D.value ? i((e(), c("input", {
133
- key: 0,
134
- ref_key: "inputRef",
135
- ref: k,
136
- "onUpdate:modelValue": a[0] ||= (e) => O.value = e,
137
- type: "text",
138
- 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)]",
139
- onBlur: M,
140
- onKeydown: P
141
- }, null, 544)), [[h, O.value]]) : T.value ? (e(), c("span", {
142
- key: 1,
143
- role: "button",
144
- tabindex: "0",
145
- "aria-label": o(w).mergeTag.editValue,
146
- class: "tpl-tooltip tpl:cursor-pointer",
147
- "data-tooltip": m.node.attrs.value,
148
- onClick: g(j, ["stop"]),
149
- onKeydown: [_(g(j, ["stop"]), ["enter"]), _(g(j, ["prevent", "stop"]), ["space"])]
150
- }, l(E.value), 41, R)) : (e(), c("span", {
151
- key: 2,
152
- role: "button",
153
- tabindex: "0",
154
- "aria-label": o(w).mergeTag.editValue,
155
- onClick: g(j, ["stop"]),
156
- onKeydown: [_(g(j, ["stop"]), ["enter"]), _(g(j, ["prevent", "stop"]), ["space"])]
157
- }, l(m.node.attrs.value), 41, z)), T.value ? (e(), c("button", {
158
- key: 3,
159
- type: "button",
160
- "aria-label": o(w).mergeTag.deleteMergeTag,
161
- 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)]",
162
- contenteditable: "false",
163
- onClick: a[1] ||= g((...e) => m.deleteNode && m.deleteNode(...e), ["stop", "prevent"])
164
- }, [...a[2] ||= [s("svg", {
165
- width: "10",
166
- height: "10",
167
- viewBox: "0 0 24 24",
168
- fill: "none",
169
- stroke: "currentColor",
170
- "stroke-width": "3",
171
- "aria-hidden": "true"
172
- }, [s("line", {
173
- x1: "18",
174
- y1: "6",
175
- x2: "6",
176
- y2: "18"
177
- }), s("line", {
178
- x1: "6",
179
- y1: "6",
180
- x2: "18",
181
- y2: "18"
182
- })], -1)]], 8, B)) : p("", !0)]),
183
- _: 1
184
- }, 8, ["class", "style"]));
185
- }
186
- });
187
- //#endregion
188
- //#region src/extensions/isNodeSelected.ts
189
- function H(e, t) {
190
- let { $from: n, $to: r } = e.state.selection;
191
- return n.pos === r.pos ? n.pos > 0 && n.nodeBefore?.type.name === t || n.nodeAfter?.type.name === t : !1;
192
- }
193
- //#endregion
194
- //#region src/extensions/renderVueNodeView.ts
195
- function U(e) {
196
- return M(e);
197
- }
198
- //#endregion
199
- //#region src/extensions/LogicMergeTagNode.ts
200
- var W = T.create({
201
- name: "logicMergeTagNode",
202
- group: "inline",
203
- inline: !0,
204
- atom: !0,
205
- addOptions() {
206
- return { syntax: x.liquid };
207
- },
208
- addAttributes() {
209
- return {
210
- value: {
211
- default: "",
212
- rendered: !1,
213
- parseHTML: (e) => e.getAttribute("data-logic-merge-tag") || ""
214
- },
215
- keyword: {
216
- default: "",
217
- rendered: !1,
218
- parseHTML: (e) => e.getAttribute("data-keyword") || e.textContent || ""
219
- }
220
- };
221
- },
222
- parseHTML() {
223
- return [{ tag: "span[data-logic-merge-tag]" }];
224
- },
225
- renderHTML({ node: e, HTMLAttributes: t }) {
226
- if (!v(e.attrs.value, this.options.syntax)) return [
227
- "span",
228
- {},
229
- e.attrs.value
230
- ];
231
- let n = y(e.attrs.value, this.options.syntax);
232
- return [
233
- "span",
234
- w(t, {
235
- "data-logic-merge-tag": e.attrs.value,
236
- "data-keyword": n
237
- }),
238
- n
239
- ];
240
- },
241
- addNodeView() {
242
- return U(V);
243
- },
244
- addKeyboardShortcuts() {
245
- return {
246
- Backspace: () => H(this.editor, this.name),
247
- Delete: () => H(this.editor, this.name)
248
- };
249
- },
250
- addInputRules() {
251
- let e = RegExp(this.options.syntax.logic.source + "$", "");
252
- return [new D({
253
- find: e,
254
- handler: ({ state: e, range: t, match: n }) => {
255
- let r = n[0];
256
- if (!v(r, this.options.syntax)) return;
257
- let i = y(r, this.options.syntax), a = this.type.create({
258
- value: r,
259
- keyword: i
260
- });
261
- e.tr.replaceWith(t.from, t.to, a);
262
- }
263
- })];
264
- },
265
- addPasteRules() {
266
- let e = new RegExp(this.options.syntax.logic.source, "g");
267
- return [new O({
268
- find: e,
269
- handler: ({ state: e, range: t, match: n }) => {
270
- let r = n[0];
271
- if (!v(r, this.options.syntax)) return;
272
- let i = y(r, this.options.syntax), a = this.type.create({
273
- value: r,
274
- keyword: i
275
- });
276
- e.tr.replaceWith(t.from, t.to, a);
277
- }
278
- })];
279
- }
280
- }), G = [
281
- "aria-label",
282
- "data-tooltip",
283
- "onKeydown"
284
- ], K = ["aria-label"], q = /* @__PURE__ */ m({
285
- __name: "MergeTagNodeView",
286
- props: {
287
- node: {},
288
- deleteNode: { type: Function },
289
- updateAttributes: { type: Function }
290
- },
291
- setup(t) {
292
- let u = t, { getMergeTagLabel: p } = C(), { t: m } = S(), v = f(() => p(u.node.attrs.value)), y = a(!1), b = a(""), x = a(null);
293
- function w() {
294
- b.value = u.node.attrs.value, y.value = !0, r(() => {
295
- x.value?.focus(), x.value?.select();
296
- });
297
- }
298
- function T() {
299
- let e = b.value.trim();
300
- e && e !== u.node.attrs.value && u.updateAttributes({
301
- value: e,
302
- label: p(e)
303
- }), y.value = !1;
304
- }
305
- function E(e) {
306
- e.key === "Enter" ? (e.preventDefault(), T()) : e.key === "Escape" && (y.value = !1);
307
- }
308
- return (r, a) => (e(), d(o(N), {
309
- as: "span",
310
- 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)]",
311
- style: { "background-color": "color-mix(in srgb, var(--tpl-primary) 20%, transparent)" },
312
- contenteditable: "false"
313
- }, {
314
- default: n(() => [y.value ? i((e(), c("input", {
315
- key: 0,
316
- ref_key: "inputRef",
317
- ref: x,
318
- "onUpdate:modelValue": a[0] ||= (e) => b.value = e,
319
- type: "text",
320
- 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)]",
321
- onBlur: T,
322
- onKeydown: E
323
- }, null, 544)), [[h, b.value]]) : (e(), c("span", {
324
- key: 1,
325
- role: "button",
326
- tabindex: "0",
327
- "aria-label": o(m).mergeTag.editValue,
328
- class: "tpl-tooltip tpl:cursor-pointer",
329
- "data-tooltip": t.node.attrs.value,
330
- onClick: g(w, ["stop"]),
331
- onKeydown: [_(g(w, ["stop"]), ["enter"]), _(g(w, ["prevent", "stop"]), ["space"])]
332
- }, l(v.value), 41, G)), s("button", {
333
- type: "button",
334
- "aria-label": o(m).mergeTag.deleteMergeTag,
335
- 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)]",
336
- contenteditable: "false",
337
- onClick: a[1] ||= g((...e) => t.deleteNode && t.deleteNode(...e), ["stop", "prevent"])
338
- }, [...a[2] ||= [s("svg", {
339
- width: "10",
340
- height: "10",
341
- viewBox: "0 0 24 24",
342
- fill: "none",
343
- stroke: "currentColor",
344
- "stroke-width": "3",
345
- "aria-hidden": "true"
346
- }, [s("line", {
347
- x1: "18",
348
- y1: "6",
349
- x2: "6",
350
- y2: "18"
351
- }), s("line", {
352
- x1: "6",
353
- y1: "6",
354
- x2: "18",
355
- y2: "18"
356
- })], -1)]], 8, K)]),
357
- _: 1
358
- }));
359
- }
360
- }), J = T.create({
361
- name: "mergeTagNode",
362
- group: "inline",
363
- inline: !0,
364
- atom: !0,
365
- addOptions() {
366
- return {
367
- mergeTags: [],
368
- syntax: x.liquid
369
- };
370
- },
371
- addAttributes() {
372
- return {
373
- label: {
374
- default: "",
375
- rendered: !1,
376
- parseHTML: (e) => e.getAttribute("data-label") || e.textContent || ""
377
- },
378
- value: {
379
- default: "",
380
- rendered: !1,
381
- parseHTML: (e) => e.getAttribute("data-merge-tag") || ""
382
- }
383
- };
384
- },
385
- parseHTML() {
386
- return [{ tag: "span[data-merge-tag]" }];
387
- },
388
- renderHTML({ node: e, HTMLAttributes: t }) {
389
- let n = b(e.attrs.value, this.options.mergeTags);
390
- return [
391
- "span",
392
- w(t, {
393
- "data-merge-tag": e.attrs.value,
394
- "data-label": n
395
- }),
396
- n
397
- ];
398
- },
399
- addNodeView() {
400
- return U(q);
401
- },
402
- addCommands() {
403
- return { insertMergeTag: (e) => ({ commands: t }) => t.insertContent({
404
- type: this.name,
405
- attrs: {
406
- label: e.label,
407
- value: e.value
408
- }
409
- }) };
410
- },
411
- addKeyboardShortcuts() {
412
- return {
413
- Backspace: () => H(this.editor, this.name),
414
- Delete: () => H(this.editor, this.name)
415
- };
416
- },
417
- addInputRules() {
418
- let e = RegExp(this.options.syntax.value.source + "$", "");
419
- return [new D({
420
- find: e,
421
- handler: ({ state: e, range: t, match: n }) => {
422
- let r = n[0], i = b(r, this.options.mergeTags), a = this.type.create({
423
- label: i,
424
- value: r
425
- });
426
- e.tr.replaceWith(t.from, t.to, a);
427
- }
428
- })];
429
- },
430
- addPasteRules() {
431
- let e = new RegExp(this.options.syntax.value.source, "g");
432
- return [new O({
433
- find: e,
434
- handler: ({ state: e, range: t, match: n }) => {
435
- let r = n[0], i = b(r, this.options.mergeTags), a = this.type.create({
436
- label: i,
437
- value: r
438
- });
439
- e.tr.replaceWith(t.from, t.to, a);
440
- }
441
- })];
442
- }
443
- });
444
- //#endregion
445
- export { P as FontSize, F as LetterSpacing, I as LineBoundaryKeys, L as LineHeight, W as LogicMergeTagNode, J as MergeTagNode, j as MergeTagSuggestion, A as filterMergeTags, k as handleSuggestionKeyDown };
@@ -1,10 +0,0 @@
1
- import { S as e } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
- //#region src/keys.ts
3
- var t = Symbol("translations"), n = Symbol("editor"), r = Symbol("history"), i = Symbol("blockActions"), a = Symbol("conditionPreview"), o = Symbol("appliesConditionFilter"), s = Symbol("fontsManager"), c = Symbol("themeStyles"), l = Symbol("tplUiTheme"), u = Symbol("tplUiLocale"), d = Symbol("blockDefaults"), f = Symbol("blockRegistry"), p = Symbol("customBlockDefinitions"), m = Symbol("paletteBlocks"), h = Symbol("htmlBlockPreview"), g = Symbol("colors"), _ = Symbol("templateSettingsFields"), v = Symbol("customBlockStylesheets"), y = Symbol("mergeTags"), b = Symbol("mergeTagSyntax"), x = Symbol("onRequestMergeTag"), S = Symbol("mergeTagAutocomplete"), C = Symbol("mergeTagSampleMode"), w = Symbol("useMergeTagSamples"), T = Symbol("resolvePreview"), E = Symbol("previewResolution"), D = Symbol("mergeTagPicker"), O = Symbol("mergeTagRequesting"), k = Symbol("logicTagRequesting"), A = Symbol("logicTags"), j = Symbol("logicPairs"), M = Symbol("logicPicker"), N = Symbol("onRequestLogic"), P = Symbol("onRequestMedia"), F = Symbol("canDropMedia"), I = Symbol("imageUrlResolver"), L = Symbol("displayConditions"), R = Symbol("allowCustomConditions"), z = Symbol("capabilities"), B = Symbol("keyboardReorder"), V = Symbol("templateLint"), H = Symbol("editorRoot"), U = Symbol("popoverRoot"), W = Symbol("savedBlocks"), G = Symbol("authManager"), K = Symbol("aiConfig"), q = Symbol("scoring"), J = Symbol("cloudTranslations");
4
- function Y(t, n) {
5
- let r = e(t, null);
6
- if (r == null) throw Error(`${n} requires a provider for ${t.description ?? "unknown key"}. Ensure it renders inside the editor, below Editor.vue.`);
7
- return r;
8
- }
9
- //#endregion
10
- export { O as A, W as B, j as C, y as D, k as E, x as F, t as G, V as H, m as I, w as J, u as K, U as L, b as M, N, S as O, P, E as R, B as S, M as T, _ as U, q as V, c as W, Y, H as _, i as a, h as b, F as c, g as d, a as f, n as g, L as h, G as i, C as j, D as k, z as l, v as m, R as n, d as o, p, l as q, o as r, f as s, K as t, J as u, s as v, A as w, I as x, r as y, T as z };