@templatical/editor 0.26.3 → 0.27.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 (287) hide show
  1. package/README.md +3 -1
  2. package/dist/{AiChatSidebar-CMBz6Wix.js → AiChatSidebar-iVJDzqjr.js} +60 -60
  3. package/dist/AiFeatureMenu-DrLGc2H2.js +57 -0
  4. package/dist/{BlockIssueBadge-Buk3_6QF.js → BlockIssueBadge-BHysq7XQ.js} +11 -11
  5. package/dist/BlockPreviewCanvas-2WASf5A4.js +121 -0
  6. package/dist/CloudHeaderExtras-DWApyc4P.js +59 -0
  7. package/dist/CloudPanels-DvOhGdRj.js +232 -0
  8. package/dist/{CollaboratorBar-BGwbg9aN.js → CollaboratorBar-C6MC0UCk.js} +21 -21
  9. package/dist/ColorPicker-Di8L5TLQ.js +501 -0
  10. package/dist/CommentsPanel-D5wQB1Kf.js +18 -0
  11. package/dist/CommentsSidebar-BoTIxpLE.js +481 -0
  12. package/dist/{cdn/chunks/CountdownBlock-vLTkTI9e.js → CountdownBlock-BFX8iU90.js} +19 -21
  13. package/dist/{cdn/chunks/CountdownToolbar-DPjcgcVR.js → CountdownToolbar-d9QM4m5x.js} +52 -53
  14. package/dist/{DesignReferenceSidebar-Bx96XFmK.js → DesignReferenceSidebar-DKsx2TiL.js} +72 -71
  15. package/dist/{IssuesPanel-Do7RLXsP.js → IssuesPanel-flKKwKpM.js} +38 -38
  16. package/dist/{LoadingTrack-BexpNuTV.js → LoadingTrack-C2T8ixEL.js} +3 -3
  17. package/dist/{MergeTagModeToggle-P-UguQHc.js → MergeTagModeToggle-PKCoKAoF.js} +43 -43
  18. package/dist/{MergeTagSuggestion-BJ43ihWR.js → MergeTagSuggestion-DGha0WRp.js} +46 -46
  19. package/dist/{cdn/chunks/NumberWithSuffix-BXrRdfq1.js → NumberWithSuffix-D9mPtMJB.js} +42 -44
  20. package/dist/{ParagraphEditor-6WN5jmXr.js → ParagraphEditor-iwTjkjtx.js} +200 -198
  21. package/dist/RestoreVersionDialog-DyMPGfsr.js +86 -0
  22. package/dist/{RichTextEditorContent-fbYJXAio.js → RichTextEditorContent-BVXG9oF4.js} +44 -44
  23. package/dist/SaveBlockDialog-BMCAIfK9.js +266 -0
  24. package/dist/{SavedBlocksBrowserModal-GMrajvfV.js → SavedBlocksBrowserModal-p5ma1qay.js} +116 -115
  25. package/dist/{cdn/chunks/SavedBlocksPanels-CUtYoi5Z.js → SavedBlocksPanels-BsiSstsZ.js} +9 -11
  26. package/dist/{SavedBlocksPickBar-Dk_IaMO9.js → SavedBlocksPickBar-fU4Mjm-8.js} +17 -17
  27. package/dist/{TemplateScoringPanel-BZUsb3FD.js → TemplateScoringPanel-Bv_bBsJi.js} +87 -87
  28. package/dist/TestEmailModal-EFYcrmTk.js +206 -0
  29. package/dist/{cdn/chunks/TestEmailPanel-B8y7JabA.js → TestEmailPanel-ljriUqs1.js} +4 -6
  30. package/dist/TitleEditor-BqRW7HTz.js +198 -0
  31. package/dist/TplModal-CTC9-w6B.js +49 -0
  32. package/dist/VersionHistoryMenu-Cq4rH56t.js +155 -0
  33. package/dist/VersionHistoryPanels-GkxkBiSi.js +46 -0
  34. package/dist/VersionPreviewBanner-BdtTu9mI.js +38 -0
  35. package/dist/{blockTypeIcons-C7wRSaT3.js → blockTypeIcons-CIrMr1SJ.js} +6 -6
  36. package/dist/bundle-stats.json +8 -8
  37. package/dist/{ca-D1zgI9fQ.js → ca-CEuJ6IRr.js} +73 -106
  38. package/dist/cdn/chunks/{AiChatSidebar-CQ8KUmNB.js → AiChatSidebar-DTUoBH5a.js} +54 -54
  39. package/dist/cdn/chunks/AiChatSidebar-DTUoBH5a.js.map +1 -0
  40. package/dist/cdn/chunks/AiFeatureMenu-BQz9Kczt.js +57 -0
  41. package/dist/cdn/chunks/AiFeatureMenu-BQz9Kczt.js.map +1 -0
  42. package/dist/cdn/chunks/{BlockIssueBadge-BEEY9o2o.js → BlockIssueBadge-UzSSOM_2.js} +13 -13
  43. package/dist/cdn/chunks/{BlockIssueBadge-BEEY9o2o.js.map → BlockIssueBadge-UzSSOM_2.js.map} +1 -1
  44. package/dist/cdn/chunks/{BlockPreviewCanvas-msj619wT.js → BlockPreviewCanvas-40ocpXDD.js} +42 -42
  45. package/dist/cdn/chunks/{BlockPreviewCanvas-msj619wT.js.map → BlockPreviewCanvas-40ocpXDD.js.map} +1 -1
  46. package/dist/cdn/chunks/CloudHeaderExtras-F_ySlW1S.js +60 -0
  47. package/dist/cdn/chunks/CloudHeaderExtras-F_ySlW1S.js.map +1 -0
  48. package/dist/cdn/chunks/CloudPanels-C34bcHpc.js +232 -0
  49. package/dist/cdn/chunks/CloudPanels-C34bcHpc.js.map +1 -0
  50. package/dist/cdn/chunks/{CollaboratorBar-G_sZDZXw.js → CollaboratorBar-WBtrPPnM.js} +22 -22
  51. package/dist/cdn/chunks/CollaboratorBar-WBtrPPnM.js.map +1 -0
  52. package/dist/cdn/chunks/ColorPicker-CxKYd_8N.js +502 -0
  53. package/dist/cdn/chunks/ColorPicker-CxKYd_8N.js.map +1 -0
  54. package/dist/cdn/chunks/CommentsPanel-jzZ2X0P4.js +20 -0
  55. package/dist/cdn/chunks/CommentsPanel-jzZ2X0P4.js.map +1 -0
  56. package/dist/cdn/chunks/CommentsSidebar-Dxke-vUP.js +460 -0
  57. package/dist/cdn/chunks/CommentsSidebar-Dxke-vUP.js.map +1 -0
  58. package/dist/{CountdownBlock-DuyvGcr8.js → cdn/chunks/CountdownBlock-BYSrJWxg.js} +25 -23
  59. package/dist/cdn/chunks/{CountdownBlock-vLTkTI9e.js.map → CountdownBlock-BYSrJWxg.js.map} +1 -1
  60. package/dist/{CountdownToolbar-CBE9wRaV.js → cdn/chunks/CountdownToolbar-pVbkPNVo.js} +66 -63
  61. package/dist/cdn/chunks/{CountdownToolbar-DPjcgcVR.js.map → CountdownToolbar-pVbkPNVo.js.map} +1 -1
  62. package/dist/cdn/chunks/{DesignReferenceSidebar-B-HFXV0W.js → DesignReferenceSidebar-sZWciECR.js} +64 -64
  63. package/dist/cdn/chunks/DesignReferenceSidebar-sZWciECR.js.map +1 -0
  64. package/dist/cdn/chunks/{IssuesPanel-DKTS4QVb.js → IssuesPanel-CHtetM9i.js} +36 -36
  65. package/dist/cdn/chunks/IssuesPanel-CHtetM9i.js.map +1 -0
  66. package/dist/cdn/chunks/{LoadingTrack-C52ZGL5q.js → LoadingTrack-Dp_QZvAK.js} +3 -3
  67. package/dist/cdn/chunks/{LoadingTrack-C52ZGL5q.js.map → LoadingTrack-Dp_QZvAK.js.map} +1 -1
  68. package/dist/cdn/chunks/{MergeTagModeToggle-DQ79SqQc.js → MergeTagModeToggle-ZwW-5EeN.js} +39 -39
  69. package/dist/cdn/chunks/{MergeTagModeToggle-DQ79SqQc.js.map → MergeTagModeToggle-ZwW-5EeN.js.map} +1 -1
  70. package/dist/cdn/chunks/{MergeTagSuggestion-Dn8dExNa.js → MergeTagSuggestion-DhllqTA3.js} +47 -47
  71. package/dist/cdn/chunks/MergeTagSuggestion-DhllqTA3.js.map +1 -0
  72. package/dist/{NumberWithSuffix-D37ZWiZh.js → cdn/chunks/NumberWithSuffix-mm6AfIv4.js} +37 -35
  73. package/dist/cdn/chunks/NumberWithSuffix-mm6AfIv4.js.map +1 -0
  74. package/dist/cdn/chunks/{ParagraphEditor-CZ5Z6AgG.js → ParagraphEditor-BBcIQQK2.js} +234 -233
  75. package/dist/cdn/chunks/ParagraphEditor-BBcIQQK2.js.map +1 -0
  76. package/dist/cdn/chunks/RestoreVersionDialog-DNUZHFa_.js +87 -0
  77. package/dist/cdn/chunks/RestoreVersionDialog-DNUZHFa_.js.map +1 -0
  78. package/dist/cdn/chunks/{RichTextEditorContent-DtL49Jpo.js → RichTextEditorContent-Cl-acKAD.js} +44 -44
  79. package/dist/cdn/chunks/RichTextEditorContent-Cl-acKAD.js.map +1 -0
  80. package/dist/cdn/chunks/SaveBlockDialog-BXTZ729e.js +265 -0
  81. package/dist/cdn/chunks/SaveBlockDialog-BXTZ729e.js.map +1 -0
  82. package/dist/cdn/chunks/{SavedBlocksBrowserModal-BkQXEUE2.js → SavedBlocksBrowserModal-BqGNBpRR.js} +114 -113
  83. package/dist/cdn/chunks/SavedBlocksBrowserModal-BqGNBpRR.js.map +1 -0
  84. package/dist/{SavedBlocksPanels-DEPmNhi6.js → cdn/chunks/SavedBlocksPanels-nbK0UQTp.js} +11 -9
  85. package/dist/cdn/chunks/{SavedBlocksPanels-CUtYoi5Z.js.map → SavedBlocksPanels-nbK0UQTp.js.map} +1 -1
  86. package/dist/cdn/chunks/{SavedBlocksPickBar-C80qJykl.js → SavedBlocksPickBar-B9mbw3Gk.js} +17 -17
  87. package/dist/cdn/chunks/SavedBlocksPickBar-B9mbw3Gk.js.map +1 -0
  88. package/dist/cdn/chunks/{TemplateScoringPanel-NucRtAP0.js → TemplateScoringPanel-Xdkp2EMY.js} +81 -81
  89. package/dist/cdn/chunks/TemplateScoringPanel-Xdkp2EMY.js.map +1 -0
  90. package/dist/cdn/chunks/TestEmailModal-DE6fi3he.js +206 -0
  91. package/dist/cdn/chunks/TestEmailModal-DE6fi3he.js.map +1 -0
  92. package/dist/{TestEmailPanel-DubocPxf.js → cdn/chunks/TestEmailPanel-CAjQDXle.js} +6 -4
  93. package/dist/cdn/chunks/{TestEmailPanel-B8y7JabA.js.map → TestEmailPanel-CAjQDXle.js.map} +1 -1
  94. package/dist/cdn/chunks/{TitleEditor-C8WDXf4P.js → TitleEditor-BP0ewaWF.js} +83 -83
  95. package/dist/cdn/chunks/TitleEditor-BP0ewaWF.js.map +1 -0
  96. package/dist/cdn/chunks/TplModal-C4kJduTr.js +50 -0
  97. package/dist/cdn/chunks/TplModal-C4kJduTr.js.map +1 -0
  98. package/dist/cdn/chunks/VersionHistoryMenu-_MAj3qZj.js +148 -0
  99. package/dist/cdn/chunks/VersionHistoryMenu-_MAj3qZj.js.map +1 -0
  100. package/dist/cdn/chunks/VersionHistoryPanels-DMq2PRee.js +48 -0
  101. package/dist/cdn/chunks/VersionHistoryPanels-DMq2PRee.js.map +1 -0
  102. package/dist/cdn/chunks/VersionPreviewBanner-04CL1SGY.js +40 -0
  103. package/dist/cdn/chunks/VersionPreviewBanner-04CL1SGY.js.map +1 -0
  104. package/dist/cdn/chunks/{blockTypeIcons-FXlMM3PL.js → blockTypeIcons-hX_W4dqo.js} +2 -2
  105. package/dist/cdn/chunks/{blockTypeIcons-FXlMM3PL.js.map → blockTypeIcons-hX_W4dqo.js.map} +1 -1
  106. package/dist/cdn/chunks/{ca-D1zgI9fQ.js → ca-CEuJ6IRr.js} +74 -107
  107. package/dist/cdn/chunks/ca-CEuJ6IRr.js.map +1 -0
  108. package/dist/{cloud-qINCmQbn.js → cdn/chunks/cloud-BA0OpRh-.js} +400 -609
  109. package/dist/cdn/chunks/cloud-BA0OpRh-.js.map +1 -0
  110. package/dist/cdn/chunks/createCloudRuntime-gXA8_QRU.js +344 -0
  111. package/dist/cdn/chunks/createCloudRuntime-gXA8_QRU.js.map +1 -0
  112. package/dist/{de-uVoSP1xF.js → cdn/chunks/de-BytZwgn6.js} +4 -88
  113. package/dist/cdn/chunks/de-BytZwgn6.js.map +1 -0
  114. package/dist/{de-DHra3lvx.js → cdn/chunks/de-aRxhZF_K.js} +75 -106
  115. package/dist/cdn/chunks/de-aRxhZF_K.js.map +1 -0
  116. package/dist/cdn/chunks/{dist-B2HKGHnc.js → dist-CM8TB0VD.js} +136 -136
  117. package/dist/cdn/chunks/{dist-B2HKGHnc.js.map → dist-CM8TB0VD.js.map} +1 -1
  118. package/dist/cdn/chunks/{dist-C6z8AjBC.js → dist-CYLJiSiH.js} +63 -63
  119. package/dist/cdn/chunks/{dist-C6z8AjBC.js.map → dist-CYLJiSiH.js.map} +1 -1
  120. package/dist/cdn/chunks/{draggable-DCs9qL-b.js → draggable-BfpsXFg7.js} +916 -905
  121. package/dist/cdn/chunks/{draggable-DCs9qL-b.js.map → draggable-BfpsXFg7.js.map} +1 -1
  122. package/dist/cdn/chunks/{en-DE_y1YWU.js → en-BCgVx9zM.js} +4 -3
  123. package/dist/cdn/chunks/{en-DE_y1YWU.js.map → en-BCgVx9zM.js.map} +1 -1
  124. package/dist/{en-DlqX2YWZ.js → cdn/chunks/en-BX4V_7YO.js} +75 -106
  125. package/dist/cdn/chunks/en-BX4V_7YO.js.map +1 -0
  126. package/dist/{en-CjhsJxb-.js → cdn/chunks/en-DyOSV0lY.js} +4 -88
  127. package/dist/cdn/chunks/en-DyOSV0lY.js.map +1 -0
  128. package/dist/{es-Cuss2snv.js → cdn/chunks/es-CA9uQ-5x.js} +75 -106
  129. package/dist/cdn/chunks/es-CA9uQ-5x.js.map +1 -0
  130. package/dist/cdn/chunks/{extensions-qhcN3RMT.js → extensions-CMcVw2uu.js} +53 -53
  131. package/dist/cdn/chunks/{extensions-qhcN3RMT.js.map → extensions-CMcVw2uu.js.map} +1 -1
  132. package/dist/{fr-Cm85vB2g.js → cdn/chunks/fr-iBuE60Ap.js} +75 -106
  133. package/dist/cdn/chunks/fr-iBuE60Ap.js.map +1 -0
  134. package/dist/cdn/chunks/{icons-CvYN6zrM.js → icons-C36Ha5VU.js} +11 -11
  135. package/dist/cdn/chunks/{icons-CvYN6zrM.js.map → icons-C36Ha5VU.js.map} +1 -1
  136. package/dist/{keys-fwF3qZax.js → cdn/chunks/keys-CbQuRX85.js} +6 -4
  137. package/dist/cdn/chunks/keys-CbQuRX85.js.map +1 -0
  138. package/dist/cdn/chunks/logger-ByvdoAwq.js +23 -0
  139. package/dist/cdn/chunks/logger-ByvdoAwq.js.map +1 -0
  140. package/dist/{nl-dmiIX7oT.js → cdn/chunks/nl-Btw4ojNo.js} +75 -106
  141. package/dist/cdn/chunks/nl-Btw4ojNo.js.map +1 -0
  142. package/dist/cdn/chunks/preRenderCustomBlocks-CbA3RcAy.js +23 -0
  143. package/dist/cdn/chunks/preRenderCustomBlocks-CbA3RcAy.js.map +1 -0
  144. package/dist/{pt-BR-CTzHTqJD.js → cdn/chunks/pt-BR-C1WLSGDh.js} +4 -88
  145. package/dist/cdn/chunks/pt-BR-C1WLSGDh.js.map +1 -0
  146. package/dist/{pt-BR-CaIG-7EM.js → cdn/chunks/pt-BR-GjVsCqbN.js} +75 -106
  147. package/dist/cdn/chunks/pt-BR-GjVsCqbN.js.map +1 -0
  148. package/dist/cdn/chunks/src-B_QJduQD.js.map +1 -1
  149. package/dist/cdn/chunks/{src-xkGep9eN.js → src-CoHDh8Ua.js} +1485 -1483
  150. package/dist/cdn/chunks/src-CoHDh8Ua.js.map +1 -0
  151. package/dist/cdn/chunks/{src-BwbnXShT.js → src-Ct4Fsx3t.js} +148 -134
  152. package/dist/cdn/chunks/src-Ct4Fsx3t.js.map +1 -0
  153. package/dist/cdn/chunks/styleConstants-9oK5kn21.js +59 -0
  154. package/dist/cdn/chunks/styleConstants-9oK5kn21.js.map +1 -0
  155. package/dist/cdn/chunks/timeouts-DHPZQ0G3.js +6 -0
  156. package/dist/cdn/chunks/timeouts-DHPZQ0G3.js.map +1 -0
  157. package/dist/cdn/chunks/{tiptap-C44S1Cmh.js → tiptap-DmpGap5g.js} +40 -40
  158. package/dist/cdn/chunks/{tiptap-C44S1Cmh.js.map → tiptap-DmpGap5g.js.map} +1 -1
  159. package/dist/cdn/chunks/{useAliveFlag-Dxwgo6P4.js → useAliveFlag-Dtm174fG.js} +2 -2
  160. package/dist/cdn/chunks/{useAliveFlag-Dxwgo6P4.js.map → useAliveFlag-Dtm174fG.js.map} +1 -1
  161. package/dist/cdn/chunks/{useCloudI18n-8wkJtuJD.js → useCloudI18n-NVa1aeY8.js} +5 -5
  162. package/dist/cdn/chunks/{useCloudI18n-8wkJtuJD.js.map → useCloudI18n-NVa1aeY8.js.map} +1 -1
  163. package/dist/cdn/chunks/{useEditorCore-CcgxY-Gy.js → useEditorCore-DC8gmfs6.js} +1434 -1147
  164. package/dist/cdn/chunks/useEditorCore-DC8gmfs6.js.map +1 -0
  165. package/dist/cdn/chunks/{useI18n-UMs0F71x.js → useI18n-DVWCJJFH.js} +5 -5
  166. package/dist/cdn/chunks/{useI18n-UMs0F71x.js.map → useI18n-DVWCJJFH.js.map} +1 -1
  167. package/dist/cdn/chunks/{useMergeTag-JmXOtpln.js → useMergeTag-BfZBRPQp.js} +4 -4
  168. package/dist/cdn/chunks/{useMergeTag-JmXOtpln.js.map → useMergeTag-BfZBRPQp.js.map} +1 -1
  169. package/dist/cdn/chunks/{usePopoverPosition-cf8Y-ynK.js → usePopoverPosition-BC-HA7TK.js} +3 -3
  170. package/dist/cdn/chunks/{usePopoverPosition-cf8Y-ynK.js.map → usePopoverPosition-BC-HA7TK.js.map} +1 -1
  171. package/dist/cdn/editor.css +1 -1
  172. package/dist/cdn/editor.js +5119 -284
  173. package/dist/cdn/editor.js.map +1 -1
  174. package/dist/{check-On4TSac-.js → check-DZbmkMQe.js} +1 -1
  175. package/dist/{chevron-down-69EiBGoB.js → chevron-down-nYScOLeZ.js} +1 -1
  176. package/dist/{chevron-up-Dh3MG1Dw.js → chevron-up-CpYpDLnc.js} +1 -1
  177. package/dist/{circle-alert-cilwzafX.js → circle-alert-CuuK6thq.js} +1 -1
  178. package/dist/{clock-Dt0APH92.js → clock-DxkrtqOr.js} +1 -1
  179. package/dist/cloud-BAefVBb_.js +1444 -0
  180. package/dist/createCloudRuntime-Bt8W-ajI.js +342 -0
  181. package/dist/{createLucideIcon-C8WzBYCv.js → createLucideIcon-L-wQXW_R.js} +9 -9
  182. package/dist/{cdn/chunks/de-uVoSP1xF.js → de-BytZwgn6.js} +2 -90
  183. package/dist/{cdn/chunks/de-DHra3lvx.js → de-aRxhZF_K.js} +73 -108
  184. package/dist/dist-B5iReTtK.js +251 -0
  185. package/dist/{dist-Cl8J0IES.js → dist-Ck9roB6K.js} +42 -42
  186. package/dist/{dist-BpKxrUi2.js → dist-CqcGTIiX.js} +46 -46
  187. package/dist/{cdn/chunks/en-DlqX2YWZ.js → en-BX4V_7YO.js} +73 -108
  188. package/dist/{cdn/chunks/en-CjhsJxb-.js → en-DyOSV0lY.js} +2 -90
  189. package/dist/{cdn/chunks/es-Cuss2snv.js → es-CA9uQ-5x.js} +73 -108
  190. package/dist/{extensions-Cwg9S-0f.js → extensions-CX87G4aL.js} +42 -42
  191. package/dist/{cdn/chunks/fr-Cm85vB2g.js → fr-iBuE60Ap.js} +73 -108
  192. package/dist/{image-up-Ceggh_R3.js → image-up-DouZRGVt.js} +1 -1
  193. package/dist/index.d.ts +499 -23
  194. package/dist/{info-DO5odBcZ.js → info-puX5V6Iq.js} +1 -1
  195. package/dist/{cdn/chunks/keys-Cmc2Yl3D.js → keys-BxixS0TN.js} +4 -6
  196. package/dist/{list-checks-BSkPKbuI.js → list-checks-jw-ZlvWY.js} +1 -1
  197. package/dist/{loader-circle-bO7o7_HD.js → loader-circle-DqTxB7Kr.js} +1 -1
  198. package/dist/logger-BBlvSn6q.js +21 -0
  199. package/dist/{message-circle-BEkAk65X.js → message-circle-BZ7YpB22.js} +1 -1
  200. package/dist/{cdn/chunks/nl-dmiIX7oT.js → nl-Btw4ojNo.js} +73 -108
  201. package/dist/{pencil-t6m0EtKL.js → pencil-DmbRhTJu.js} +1 -1
  202. package/dist/preRenderCustomBlocks-BebjKtmw.js +21 -0
  203. package/dist/{cdn/chunks/pt-BR-CTzHTqJD.js → pt-BR-C1WLSGDh.js} +2 -90
  204. package/dist/{cdn/chunks/pt-BR-CaIG-7EM.js → pt-BR-GjVsCqbN.js} +73 -108
  205. package/dist/{refresh-cw-CkOYVzK5.js → refresh-cw-OK_O-cL0.js} +1 -1
  206. package/dist/{runtime-dom.esm-bundler-CepEmvwF.js → runtime-dom.esm-bundler-BgKXIPLV.js} +144 -144
  207. package/dist/{scan-line-DwSVj25O.js → scan-line-DyaSTsJ5.js} +1 -1
  208. package/dist/{send-CWsWN8PQ.js → send-B-wasJJC.js} +1 -1
  209. package/dist/{shield-check-qje8Kufw.js → shield-check-DUIyRrTo.js} +1 -1
  210. package/dist/{sparkles-DumaWRW-.js → sparkles-DYEMATWC.js} +1 -1
  211. package/dist/style.css +1 -1
  212. package/dist/styleConstants-9oK5kn21.js +57 -0
  213. package/dist/templatical-editor.js +5319 -289
  214. package/dist/{text-align-start-Ir8Ah4mT.js → text-align-start-CzjLeBLe.js} +1 -1
  215. package/dist/timeouts-DHPZQ0G3.js +4 -0
  216. package/dist/{trash-2-CklAFCmO.js → trash-2-C0shEPry.js} +1 -1
  217. package/dist/{triangle-alert-BBi4n93g.js → triangle-alert-Fw0ce8oQ.js} +1 -1
  218. package/dist/{upload-sVqqppuv.js → upload-D69C2CBx.js} +3 -4
  219. package/dist/{useAliveFlag-cvyBxHp7.js → useAliveFlag-BGIAZii_.js} +1 -1
  220. package/dist/{useCloudI18n-DKVm6PCa.js → useCloudI18n-CAZTZ9_a.js} +2 -2
  221. package/dist/{useEditorCore-P4UkhcyS.js → useEditorCore-CFLzobo_.js} +1604 -1320
  222. package/dist/{useI18n-DoVKdCTH.js → useI18n-BfXff_Sy.js} +2 -2
  223. package/dist/{useMergeTag-CYZk7dZD.js → useMergeTag-Dd4I7kge.js} +3 -3
  224. package/dist/usePopoverPosition-CxhCX3SQ.js +59 -0
  225. package/dist/{vue.runtime.esm-bundler-D1diBMsm.js → vue.runtime.esm-bundler-DzEsDRtY.js} +447 -436
  226. package/dist/{x-Mby7KlhS.js → x-BjTlFqRv.js} +1 -1
  227. package/package.json +8 -8
  228. package/dist/AiFeatureMenu-Cy-PVrNT.js +0 -63
  229. package/dist/BlockPreviewCanvas-BZKslwGI.js +0 -121
  230. package/dist/CloudEditor-CPRkQCRa.js +0 -1188
  231. package/dist/ColorPicker-ClETsjA3.js +0 -550
  232. package/dist/CommentsSidebar-CdRCCSDD.js +0 -435
  233. package/dist/SaveBlockDialog-21vDlEBS.js +0 -265
  234. package/dist/SnapshotHistory-Cb4WW2gf.js +0 -128
  235. package/dist/TestEmailModal-BHDKmd6B.js +0 -205
  236. package/dist/TitleEditor-Cy4B3UNe.js +0 -198
  237. package/dist/TplModal-Dv9zgSWI.js +0 -49
  238. package/dist/cdn/chunks/AiChatSidebar-CQ8KUmNB.js.map +0 -1
  239. package/dist/cdn/chunks/AiFeatureMenu-Cb9gaRBn.js +0 -63
  240. package/dist/cdn/chunks/AiFeatureMenu-Cb9gaRBn.js.map +0 -1
  241. package/dist/cdn/chunks/CloudEditor-DbyEsIxu.js +0 -1166
  242. package/dist/cdn/chunks/CloudEditor-DbyEsIxu.js.map +0 -1
  243. package/dist/cdn/chunks/CollaboratorBar-G_sZDZXw.js.map +0 -1
  244. package/dist/cdn/chunks/ColorPicker-W_UyiVGc.js +0 -552
  245. package/dist/cdn/chunks/ColorPicker-W_UyiVGc.js.map +0 -1
  246. package/dist/cdn/chunks/CommentsSidebar-BLRZRSSC.js +0 -412
  247. package/dist/cdn/chunks/CommentsSidebar-BLRZRSSC.js.map +0 -1
  248. package/dist/cdn/chunks/DesignReferenceSidebar-B-HFXV0W.js.map +0 -1
  249. package/dist/cdn/chunks/IssuesPanel-DKTS4QVb.js.map +0 -1
  250. package/dist/cdn/chunks/MergeTagSuggestion-Dn8dExNa.js.map +0 -1
  251. package/dist/cdn/chunks/NumberWithSuffix-BXrRdfq1.js.map +0 -1
  252. package/dist/cdn/chunks/ParagraphEditor-CZ5Z6AgG.js.map +0 -1
  253. package/dist/cdn/chunks/RichTextEditorContent-DtL49Jpo.js.map +0 -1
  254. package/dist/cdn/chunks/SaveBlockDialog-CVIVZEuy.js +0 -264
  255. package/dist/cdn/chunks/SaveBlockDialog-CVIVZEuy.js.map +0 -1
  256. package/dist/cdn/chunks/SavedBlocksBrowserModal-BkQXEUE2.js.map +0 -1
  257. package/dist/cdn/chunks/SavedBlocksPickBar-C80qJykl.js.map +0 -1
  258. package/dist/cdn/chunks/SnapshotHistory-DFinMrg_.js +0 -121
  259. package/dist/cdn/chunks/SnapshotHistory-DFinMrg_.js.map +0 -1
  260. package/dist/cdn/chunks/TemplateScoringPanel-NucRtAP0.js.map +0 -1
  261. package/dist/cdn/chunks/TestEmailModal-IxS-QjeH.js +0 -205
  262. package/dist/cdn/chunks/TestEmailModal-IxS-QjeH.js.map +0 -1
  263. package/dist/cdn/chunks/TitleEditor-C8WDXf4P.js.map +0 -1
  264. package/dist/cdn/chunks/TplModal-Ce0QuHyo.js +0 -50
  265. package/dist/cdn/chunks/TplModal-Ce0QuHyo.js.map +0 -1
  266. package/dist/cdn/chunks/ca-D1zgI9fQ.js.map +0 -1
  267. package/dist/cdn/chunks/cloud-DcC8bPwn.js +0 -1787
  268. package/dist/cdn/chunks/cloud-DcC8bPwn.js.map +0 -1
  269. package/dist/cdn/chunks/de-DHra3lvx.js.map +0 -1
  270. package/dist/cdn/chunks/de-uVoSP1xF.js.map +0 -1
  271. package/dist/cdn/chunks/en-CjhsJxb-.js.map +0 -1
  272. package/dist/cdn/chunks/en-DlqX2YWZ.js.map +0 -1
  273. package/dist/cdn/chunks/es-Cuss2snv.js.map +0 -1
  274. package/dist/cdn/chunks/fr-Cm85vB2g.js.map +0 -1
  275. package/dist/cdn/chunks/keys-Cmc2Yl3D.js.map +0 -1
  276. package/dist/cdn/chunks/nl-dmiIX7oT.js.map +0 -1
  277. package/dist/cdn/chunks/pt-BR-CTzHTqJD.js.map +0 -1
  278. package/dist/cdn/chunks/pt-BR-CaIG-7EM.js.map +0 -1
  279. package/dist/cdn/chunks/src-BwbnXShT.js.map +0 -1
  280. package/dist/cdn/chunks/src-xkGep9eN.js.map +0 -1
  281. package/dist/cdn/chunks/styles-DLAfU4Uf.js +0 -4140
  282. package/dist/cdn/chunks/styles-DLAfU4Uf.js.map +0 -1
  283. package/dist/cdn/chunks/timeouts-SsLMC4a3.js +0 -6
  284. package/dist/cdn/chunks/timeouts-SsLMC4a3.js.map +0 -1
  285. package/dist/cdn/chunks/useEditorCore-CcgxY-Gy.js.map +0 -1
  286. package/dist/styles-Dx__pP9O.js +0 -4318
  287. package/dist/usePopoverPosition-C0dPEF4X.js +0 -308
@@ -0,0 +1,342 @@
1
+ import { A as e, L as t, X as n, q as r, s as i } from "./vue.runtime.esm-bundler-DzEsDRtY.js";
2
+ import { m as a } from "./dist-CqcGTIiX.js";
3
+ import { t as o } from "./dist-B5iReTtK.js";
4
+ import { R as s, i as c, l, t as u } from "./keys-BxixS0TN.js";
5
+ import { t as d } from "./timeouts-DHPZQ0G3.js";
6
+ import { t as f } from "./logger-BBlvSn6q.js";
7
+ import { t as p } from "./preRenderCustomBlocks-BebjKtmw.js";
8
+ import { S as m, _ as h, a as g, b as _, c as v, d as y, h as b, i as ee, l as x, m as te, n as ne, o as S, p as C, r as w, s as re, t as ie, u as ae, v as oe, x as T, y as se } from "./cloud-BAefVBb_.js";
9
+ //#region src/cloud/composables/useCloudFeatureFlags.ts
10
+ function ce(e) {
11
+ let { planConfigInstance: t, aiConfig: n, getTemplateId: r } = e;
12
+ return {
13
+ canUseAiGeneration: i(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value),
14
+ canSendTestEmail: i(() => t.hasFeature("test_email")),
15
+ hasTemplateSaved: i(() => r() !== null),
16
+ templateLimit: i(() => t.config.value?.limits.max_templates ?? null),
17
+ templateCount: i(() => t.config.value?.template_count ?? 0)
18
+ };
19
+ }
20
+ //#endregion
21
+ //#region src/cloud/composables/useCloudMediaLibrary.ts
22
+ function E(e) {
23
+ let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: i, authManager: a, getMediaConfig: o, onError: s } = e, c = null;
24
+ function l(e) {
25
+ return {
26
+ url: e.url,
27
+ alt: e.alt_text || void 0
28
+ };
29
+ }
30
+ async function u(e) {
31
+ let r = e?.accept ?? ["images"];
32
+ if (e?.files?.length) {
33
+ if (t) {
34
+ let n = await t({
35
+ accept: r,
36
+ files: e.files
37
+ });
38
+ return n ? l(n) : null;
39
+ }
40
+ return d(e.files[0]);
41
+ }
42
+ if (t) {
43
+ let e = await t({ accept: r });
44
+ return e ? l(e) : null;
45
+ }
46
+ return c &&= (c(null), null), i.value = r, n.value = !0, new Promise((e) => {
47
+ c = (t) => {
48
+ e(t);
49
+ };
50
+ });
51
+ }
52
+ async function d(e) {
53
+ let t = f(e);
54
+ if (t) return s?.(t), null;
55
+ try {
56
+ let { MediaApiClient: t } = await import("@templatical/media-library");
57
+ return l(await new t(a).uploadMedia(e));
58
+ } catch (e) {
59
+ return s?.(e), null;
60
+ }
61
+ }
62
+ function f(e) {
63
+ let t = o?.() ?? null;
64
+ if (!t) return null;
65
+ let n = t.categories?.images?.mime_types ?? [];
66
+ return n.length > 0 && !n.includes(e.type) ? /* @__PURE__ */ Error(`Unsupported image type: ${e.type || "unknown"}. Accepted: ${n.join(", ")}.`) : t.max_file_size > 0 && e.size > t.max_file_size ? /* @__PURE__ */ Error(`Image is too large (${e.size} bytes). Maximum allowed is ${t.max_file_size} bytes.`) : null;
67
+ }
68
+ function p(e) {
69
+ n.value = !1, c?.(l(e)), c = null;
70
+ }
71
+ function m() {
72
+ n.value = !1, c?.(null), c = null;
73
+ }
74
+ return r(() => {
75
+ c &&= (c(null), null);
76
+ }), {
77
+ handleRequestMedia: u,
78
+ handleMediaSelect: p,
79
+ handleMediaLibraryClose: m
80
+ };
81
+ }
82
+ //#endregion
83
+ //#region src/cloud/composables/useCloudPanelState.ts
84
+ function D() {
85
+ let e = n(null), t = i({
86
+ get: () => e.value === "ai-chat",
87
+ set: (t) => e.value = t ? "ai-chat" : null
88
+ }), r = i({
89
+ get: () => e.value === "scoring",
90
+ set: (t) => e.value = t ? "scoring" : null
91
+ }), a = i({
92
+ get: () => e.value === "design-reference",
93
+ set: (t) => e.value = t ? "design-reference" : null
94
+ }), s = i({
95
+ get: () => e.value === "comments",
96
+ set: (t) => e.value = t ? "comments" : null
97
+ }), c = n(!1), l = n(void 0), u = n(!1), d = n(null), f = i(() => e.value !== null), p = i(() => {
98
+ let t = e.value;
99
+ return t === "ai-chat" || t === "design-reference" || t === "scoring" ? t : null;
100
+ }), m = i(() => u.value || e.value === "ai-chat" || e.value === "design-reference" || e.value === "scoring");
101
+ function h() {
102
+ u.value = !u.value;
103
+ }
104
+ function g(t) {
105
+ u.value = !1, e.value = e.value === t ? null : t;
106
+ }
107
+ return o(d, () => {
108
+ u.value = !1;
109
+ }), {
110
+ activePanel: e,
111
+ aiChatOpen: t,
112
+ scoringPanelOpen: r,
113
+ designReferenceOpen: a,
114
+ commentsOpen: s,
115
+ mediaLibraryOpen: c,
116
+ mediaLibraryAccept: l,
117
+ aiMenuOpen: u,
118
+ aiMenuRef: d,
119
+ rightPanelOpen: f,
120
+ activeAiFeature: p,
121
+ aiButtonActive: m,
122
+ toggleAiMenu: h,
123
+ handleAiFeatureSelect: g
124
+ };
125
+ }
126
+ //#endregion
127
+ //#region src/cloud/composables/useCloudSaveGate.ts
128
+ function O(e) {
129
+ let t = n(!1), r = null, a = i(() => e.planConfig.value?.accessibility?.blockOnError === !0), o = i(() => a.value ? e.issues.value.filter((e) => e.severity === "error") : []), s = i(() => o.value.length > 0);
130
+ async function c(e) {
131
+ return s.value ? (r = e, t.value = !0, !1) : (await e(), !0);
132
+ }
133
+ async function l(e) {
134
+ return !s.value && (await e(), !0);
135
+ }
136
+ async function u() {
137
+ let e = r;
138
+ r = null, t.value = !1, e && await e();
139
+ }
140
+ function d() {
141
+ r = null, t.value = !1;
142
+ }
143
+ return {
144
+ shouldBlock: s,
145
+ blockingIssues: o,
146
+ modalOpen: t,
147
+ tryRunSave: c,
148
+ runUnlessBlocked: l,
149
+ confirmAndSave: u,
150
+ cancel: d
151
+ };
152
+ }
153
+ //#endregion
154
+ //#region src/cloud/composables/useCollabUndoWarning.ts
155
+ function le(e) {
156
+ let { isCollaborationEnabled: t, getCollaboratorCount: r, canUndo: i } = e, o = n(!1), s = n(!1), { start: c } = a(() => {
157
+ s.value = !1;
158
+ }, d, { immediate: !1 });
159
+ function l() {
160
+ o.value || !t.value || r() === 0 || !i.value || (o.value = !0, s.value = !0, c());
161
+ }
162
+ return {
163
+ collabUndoWarningVisible: s,
164
+ showCollabUndoWarning: l
165
+ };
166
+ }
167
+ //#endregion
168
+ //#region src/cloud/collectSavedBlockIds.ts
169
+ function ue(e) {
170
+ let t = /* @__PURE__ */ new Set(), n = e?.content?.blocks;
171
+ if (!n) return t;
172
+ for (let e of n) if (t.add(e.id), e.type === "section" && e.children) for (let n of e.children) for (let e of n) t.add(e.id);
173
+ return t;
174
+ }
175
+ //#endregion
176
+ //#region src/cloud/createCloudRuntime.ts
177
+ async function k(r) {
178
+ let { config: a, cloudTranslations: o } = r, d = null, k = null, A = null, j = null, M = null, N = null, P = null, F = n(null), I = n(/* @__PURE__ */ new Map()), L = n(null);
179
+ function R() {
180
+ if (!d) throw Error("[Templatical] The Cloud editor is not mounted yet.");
181
+ return d;
182
+ }
183
+ function z() {
184
+ return d?.state.template?.id ?? null;
185
+ }
186
+ let B = new ie({
187
+ ...a.auth,
188
+ onError: (e) => {
189
+ v(e) && (F.value = e), a.onError?.(e);
190
+ }
191
+ }), V = se({
192
+ authManager: B,
193
+ onError: a.onError
194
+ });
195
+ await B.initialize();
196
+ let H = await x({ authManager: B });
197
+ if (!H.api.ok) throw Error("Health check failed: API is not reachable");
198
+ if (!H.auth.ok) throw Error(`Health check failed: authentication error${H.auth.error ? ` - ${H.auth.error}` : ""}`);
199
+ H.websocket.ok || f.warn("WebSocket health check failed:", H.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await V.fetchConfig(), F.value = null, a.templates && f.warn("initCloud does not accept a `templates` provider — the template id is the join key for collaboration, version history, comments, AI rewrite, scoring and the server-side export, so an id Cloud never issued would degrade all six. The supplied provider is ignored. Use init() to bring your own."), a.versionHistory && f.warn("initCloud does not accept a `versionHistory` provider — a version is keyed to a template id Cloud issued, so Cloud owns its history. The supplied provider is ignored. Use init() to bring your own."), a.comments && f.warn("initCloud does not accept a `comments` provider — a comment is keyed to a template id Cloud issued, and its author is signed by the auth token, so Cloud owns the conversation. The supplied provider is ignored. Use init() to bring your own."), a.render && f.warn("initCloud does not accept a `render` provider — Cloud renders server-side for test email, sends and exports, so a supplied renderer would change only what you preview and export, never what Cloud delivers. The supplied provider is ignored. For your own MJML, call renderToMjml(editor.getContent()) from @templatical/renderer.");
200
+ function U(e) {
201
+ let t = V.config.value?.websocket;
202
+ !A || !t || A.connect(e.id, y(t));
203
+ }
204
+ let W = g(B), G = W.create, K = W.save, de = {
205
+ load: async (e) => {
206
+ let t = await W.load(e);
207
+ return U(t), a.onLoad?.(t), t;
208
+ },
209
+ create: typeof G == "function" ? async (e) => {
210
+ let t = await G(e);
211
+ return U(t), a.onCreate?.(t), t;
212
+ } : !1,
213
+ save: typeof K == "function" ? async (e, t) => (k && d && await p(d.content.value, k.registry), K(e, t)) : !1
214
+ }, fe = w({
215
+ authManager: B,
216
+ getTemplateId: z,
217
+ save: () => R().save()
218
+ }), pe = re(B), me = ne({
219
+ authManager: B,
220
+ channel: L,
221
+ getSocketId: () => A?.getSocketId() ?? null
222
+ }), he = B.userConfig ? {
223
+ id: B.userConfig.id,
224
+ name: B.userConfig.name
225
+ } : void 0, q = typeof a.savedBlocks == "object" && a.savedBlocks !== null ? a.savedBlocks : null, J = a.savedBlocks === !1 ? void 0 : q ?? ee(B), Y = T({
226
+ authManager: B,
227
+ isAuthReady: n(!0)
228
+ }), ge = h({ authManager: B }), X = a.testEmail ?? null, _e = X ?? S({
229
+ authManager: B,
230
+ getTemplateId: z,
231
+ save: () => R().save(),
232
+ exportHtml: (e) => ge.exportHtml(e, ae(a.fonts)),
233
+ allowedEmails: Y.allowedEmails,
234
+ getSignature: Y.getSignature,
235
+ onBeforeTestEmail: a.onBeforeTestEmail
236
+ }), Z = C(a.ai), ve = _({
237
+ authManager: B,
238
+ getTemplateId: z
239
+ }), Q = ce({
240
+ planConfigInstance: V,
241
+ aiConfig: Z,
242
+ getTemplateId: z
243
+ }), $ = i(() => !!a.collaboration?.enabled && V.hasFeature("collaboration"));
244
+ function ye(n) {
245
+ let r = n.editor;
246
+ d = r, e(l, o), e(c, B), e(u, Z), e(s, ve);
247
+ let i = m({
248
+ authManager: B,
249
+ onError: a.onError
250
+ });
251
+ A = i, t(i.channel, (e) => {
252
+ L.value = e;
253
+ }, { immediate: !0 }), a.mcp?.enabled && oe({
254
+ editor: r,
255
+ channel: i.channel,
256
+ onOperation: a.mcp.onOperation
257
+ }), a.collaboration?.enabled && (M = te({
258
+ authManager: B,
259
+ editor: r,
260
+ channel: i.channel,
261
+ onError: a.onError,
262
+ onCollaboratorJoined: a.collaboration.onCollaboratorJoined,
263
+ onCollaboratorLeft: a.collaboration.onCollaboratorLeft,
264
+ onBlockLocked: a.collaboration.onBlockLocked,
265
+ onBlockUnlocked: a.collaboration.onBlockUnlocked
266
+ }), t(() => M.lockedBlocks.value, (e) => {
267
+ I.value = e;
268
+ }, { immediate: !0 }), b(r, M));
269
+ let f = D(), p = E({
270
+ onRequestMedia: a.onRequestMedia,
271
+ mediaLibraryOpen: f.mediaLibraryOpen,
272
+ mediaLibraryAccept: f.mediaLibraryAccept,
273
+ authManager: B,
274
+ getMediaConfig: () => V.config.value?.media ?? null,
275
+ onError: a.onError
276
+ });
277
+ return j = p, {
278
+ websocket: i,
279
+ panelState: f,
280
+ mediaLib: p,
281
+ mediaBrowser: {
282
+ authManager: B,
283
+ projectId: B.projectId,
284
+ planConfig: V
285
+ },
286
+ featureFlags: Q,
287
+ collaboration: M,
288
+ isCollaborationEnabled: $
289
+ };
290
+ }
291
+ function be(e) {
292
+ let { core: t, capabilities: r } = e;
293
+ return k = t, P = O({
294
+ issues: t.templateLint ? t.templateLint.issues : n([]),
295
+ planConfig: V.config
296
+ }), N = le({
297
+ isCollaborationEnabled: $,
298
+ getCollaboratorCount: () => M?.collaborators.value.length ?? 0,
299
+ canUndo: t.history.canUndo
300
+ }), r.plan = V, r.ai = Z, a.customBlocks?.length && t.registerCustomBlocks(a.customBlocks), a.theme && (t.themeOverrides.value = a.theme), {
301
+ saveGate: P,
302
+ collabWarning: N,
303
+ sessionError: F,
304
+ retry: async () => {
305
+ try {
306
+ await B.initialize(), F.value = null;
307
+ } catch (e) {
308
+ F.value = e instanceof Error ? e : /* @__PURE__ */ Error("Authentication failed");
309
+ }
310
+ }
311
+ };
312
+ }
313
+ return {
314
+ runtime: {
315
+ lockedBlocks: I,
316
+ onRequestMedia: (e) => j ? j.handleRequestMedia(e) : Promise.resolve(null),
317
+ isSavedBlocksAvailable: q ? () => !0 : () => a.savedBlocks !== !1 && V.hasFeature("saved_modules"),
318
+ isTestEmailAvailable: X ? () => !0 : () => Y.isEnabled.value && Q.canSendTestEmail.value && Q.hasTemplateSaved.value,
319
+ isCommentsAvailable: () => a.commenting !== !1 && V.hasFeature("commenting") && Q.hasTemplateSaved.value,
320
+ isBlockSaved: (e) => ue(d?.state.template ?? null).has(e),
321
+ getSaveGate: () => P,
322
+ isRemoteOperation: () => M?._isProcessingRemoteOperation() ?? !1,
323
+ onBeforeUndo: () => N?.showCollabUndoWarning(),
324
+ attach: ye,
325
+ ready: be,
326
+ destroy() {
327
+ A?.disconnect(), a.onUnmount?.();
328
+ }
329
+ },
330
+ providers: {
331
+ templates: de,
332
+ render: fe,
333
+ versionHistory: pe,
334
+ ...J ? { savedBlocks: J } : {},
335
+ testEmail: _e,
336
+ comments: me
337
+ },
338
+ user: he
339
+ };
340
+ }
341
+ //#endregion
342
+ export { k as bootstrapCloud };
@@ -1,4 +1,4 @@
1
- import { s as e, x as t, y as n } from "./vue.runtime.esm-bundler-D1diBMsm.js";
1
+ import { S as e, b as t, s as n } from "./vue.runtime.esm-bundler-DzEsDRtY.js";
2
2
  //#region ../../node_modules/.pnpm/@lucide+vue@1.31.0_vue@3.5.41_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/shared/src/utils/isEmptyString.mjs
3
3
  var r = (e) => e === "", i = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), a = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), o = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), s = (e) => {
4
4
  let t = o(e);
@@ -15,28 +15,28 @@ var r = (e) => e === "", i = (...e) => e.filter((e, t, n) => !!e && e.trim() !==
15
15
  "stroke-linejoin": "round"
16
16
  }, l = /* @__PURE__ */ Symbol("lucide-icons");
17
17
  function u() {
18
- return t(l, {});
18
+ return e(l, {});
19
19
  }
20
20
  //#endregion
21
21
  //#region ../../node_modules/.pnpm/@lucide+vue@1.31.0_vue@3.5.41_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
22
- var d = ({ name: t, iconNode: o, "icon-node": l, absoluteStrokeWidth: d, "absolute-stroke-width": f, strokeWidth: p, "stroke-width": m, size: h, color: g, ..._ }, { slots: v }) => {
23
- let { size: y, color: b, strokeWidth: x = 2, absoluteStrokeWidth: S = !1, class: C = "" } = u(), w = e(() => {
22
+ var d = ({ name: e, iconNode: o, "icon-node": l, absoluteStrokeWidth: d, "absolute-stroke-width": f, strokeWidth: p, "stroke-width": m, size: h, color: g, ..._ }, { slots: v }) => {
23
+ let { size: y, color: b, strokeWidth: x = 2, absoluteStrokeWidth: S = !1, class: C = "" } = u(), w = n(() => {
24
24
  let e = r(d) || r(f) || d === !0 || f === !0 || S === !0, t = p || m || x || c["stroke-width"];
25
25
  return e ? Number(t) * 24 / Number(h ?? y ?? c.width) : t;
26
26
  });
27
- return n("svg", {
27
+ return t("svg", {
28
28
  ...c,
29
29
  ..._,
30
30
  width: h ?? y ?? c.width,
31
31
  height: h ?? y ?? c.height,
32
32
  stroke: g ?? b ?? c.stroke,
33
33
  "stroke-width": w.value,
34
- class: i("lucide", C, ...t ? [`lucide-${a(s(t))}-icon`, `lucide-${a(t)}`] : ["lucide-icon"])
35
- }, [...(o ?? l ?? []).map((e) => n(...e)), ...v.default ? [v.default()] : []]);
36
- }, f = (e, t) => (r, { slots: i, attrs: a }) => n(d, {
34
+ class: i("lucide", C, ...e ? [`lucide-${a(s(e))}-icon`, `lucide-${a(e)}`] : ["lucide-icon"])
35
+ }, [...(o ?? l ?? []).map((e) => t(...e)), ...v.default ? [v.default()] : []]);
36
+ }, f = (e, n) => (r, { slots: i, attrs: a }) => t(d, {
37
37
  ...a,
38
38
  ...r,
39
- iconNode: t,
39
+ iconNode: n,
40
40
  name: e
41
41
  }, i.default ? { default: i.default } : void 0);
42
42
  //#endregion
@@ -8,63 +8,11 @@ var e = {
8
8
  templateNotFound: "Die angeforderte Vorlage konnte nicht gefunden werden. Bitte überprüfen Sie die Vorlagen-ID.",
9
9
  retry: "Erneut versuchen"
10
10
  },
11
- header: {
12
- title: "Templatical",
13
- unsaved: "Nicht gespeichert",
14
- saving: "Speichern...",
15
- saved: "Gespeichert",
16
- saveFailed: "Speichern fehlgeschlagen",
17
- save: "Speichern",
18
- templatesUsed: "{used}/{max} Vorlagen verwendet"
19
- },
20
- snapshotPreview: {
21
- message: "Sie sehen einen früheren Snapshot dieser Vorlage.",
22
- cancel: "Abbrechen",
23
- restore: "Diesen Snapshot wiederherstellen"
24
- },
25
- snapshotHistory: {
26
- tooltip: "Versionsverlauf",
27
- dropdownTitle: "Versionsverlauf",
28
- noSnapshots: "Noch keine Versionen",
29
- auto: "auto",
30
- justNow: "Gerade eben",
31
- minutesAgo: "vor {minutes} Min.",
32
- hoursAgo: "vor {hours} Std.",
33
- daysAgo: "vor {days} Tagen",
34
- olderSnapshot: "Ältere Version",
35
- newerSnapshot: "Neuere Version"
36
- },
37
- aiRewrite: {
38
- title: "KI-Umschreibung",
39
- tone: "Tonalität",
40
- length: "Länge",
41
- clarity: "Klarheit",
42
- professional: "Professionell",
43
- casual: "Locker",
44
- friendly: "Freundlich",
45
- urgent: "Dringend",
46
- persuasive: "Überzeugend",
47
- shorter: "Kürzer",
48
- longer: "Länger",
49
- summarize: "Zusammenfassen",
50
- simplify: "Vereinfachen",
51
- fixGrammar: "Grammatik korrigieren",
52
- improveReadability: "Lesbarkeit verbessern",
53
- customInstruction: "Eigene Anweisung",
54
- customPlaceholder: "Beschreiben Sie die gewünschte Umschreibung...",
55
- rewrite: "Umschreiben",
56
- rewriting: "Wird umgeschrieben...",
57
- undo: "Rückgängig",
58
- redo: "Wiederholen",
59
- refine: "Weiter verfeinern",
60
- error: "Text konnte nicht umgeschrieben werden"
61
- },
11
+ header: { templatesUsed: "{used}/{max} Vorlagen verwendet" },
62
12
  aiChat: {
63
13
  title: "KI-Assistent",
64
14
  button: "KI",
65
15
  inputPlaceholder: "Beschreiben Sie Ihre E-Mail-Vorlage...",
66
- send: "Senden",
67
- generating: "Wird generiert...",
68
16
  applied: "Änderungen auf Vorlage angewendet.",
69
17
  applyFailed: "Änderungen konnten nicht auf die Vorlage angewendet werden. Bitte versuchen Sie es erneut.",
70
18
  revert: "Änderungen rückgängig",
@@ -75,7 +23,6 @@ var e = {
75
23
  loadingHistory: "Konversation wird geladen..."
76
24
  },
77
25
  scoring: {
78
- button: "Bewertung",
79
26
  title: "Vorlagenbewertung",
80
27
  rescore: "Neu bewerten",
81
28
  scoring: "Vorlage wird analysiert...",
@@ -93,7 +40,6 @@ var e = {
93
40
  },
94
41
  fix: "Mit KI beheben",
95
42
  fixing: "Wird behoben...",
96
- fixed: "Behoben",
97
43
  findings: "Ergebnisse",
98
44
  noFindings: "Keine Probleme gefunden",
99
45
  error: "Vorlage konnte nicht analysiert werden",
@@ -109,44 +55,12 @@ var e = {
109
55
  templateScoreDesc: "Qualität, Spam-Risiko und Barrierefreiheit analysieren",
110
56
  disclaimer: "KI kann Fehler machen. Bitte überprüfen Sie die Ergebnisse vor der Genehmigung."
111
57
  },
112
- comments: {
113
- title: "Kommentare",
114
- placeholder: "Kommentar schreiben...",
115
- replyPlaceholder: "Antwort schreiben...",
116
- reply: "Antworten",
117
- resolve: "Lösen",
118
- unresolve: "Wiedereröffnen",
119
- resolved: "Gelöst",
120
- delete: "Löschen",
121
- edit: "Bearbeiten",
122
- cancel: "Abbrechen",
123
- save: "Speichern",
124
- noComments: "Noch keine Kommentare",
125
- noCommentsHint: "Starten Sie eine Konversation, indem Sie einen Kommentar zur Vorlage oder einem bestimmten Block hinzufügen.",
126
- addComment: "Kommentar hinzufügen",
127
- deleteConfirm: "Diesen Kommentar löschen?",
128
- filterAll: "Alle",
129
- filterUnresolved: "Ungelöst",
130
- filterBlock: "Dieser Block",
131
- ownedByYou: "Sie",
132
- edited: "bearbeitet",
133
- resolvedBy: "Gelöst von {name}",
134
- replyOne: "{count} Antwort",
135
- replyMany: "{count} Antworten",
136
- missingBlock: "Fehlender Block",
137
- saveTemplateFirst: "Speichern Sie die Vorlage, bevor Sie diesen Block kommentieren.",
138
- button: "Kommentare"
139
- },
140
58
  collaboration: {
141
59
  connected: "Zusammenarbeit aktiv",
142
- disconnected: "Zusammenarbeit getrennt",
143
- reconnecting: "Verbindung wird wiederhergestellt...",
144
- blockLockedBy: "Wird bearbeitet von {name}",
145
- usersOnline: "{count} Benutzer online"
60
+ disconnected: "Zusammenarbeit getrennt"
146
61
  },
147
62
  designReference: {
148
63
  title: "Designvorlage",
149
- button: "Design",
150
64
  uploadImage: "Bild",
151
65
  uploadPdf: "PDF",
152
66
  dropHint: "Datei hierher ziehen oder klicken zum Durchsuchen",
@@ -172,5 +86,3 @@ var e = {
172
86
  };
173
87
  //#endregion
174
88
  export { e as default };
175
-
176
- //# sourceMappingURL=de-uVoSP1xF.js.map