@templatical/editor 0.35.0 → 0.36.0

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 (223) hide show
  1. package/dist/{AiChatSidebar-DPHbCGu4.js → AiChatSidebar-tu4eLcf_.js} +57 -57
  2. package/dist/{AiFeatureMenu--8z7qvg1.js → AiFeatureMenu-BF0i0vA4.js} +17 -17
  3. package/dist/{BlockIssueBadge-BGCsJqqM.js → BlockIssueBadge-DT-FqKeC.js} +9 -9
  4. package/dist/{BlockPreviewCanvas-DKspIy8V.js → BlockPreviewCanvas-DDCmMram.js} +28 -28
  5. package/dist/CloudHeaderExtras-NPhudovT.js +59 -0
  6. package/dist/{CloudPanels-Bp5gFtaL.js → CloudPanels-Iwnky0iA.js} +78 -108
  7. package/dist/{CollaboratorBar-DvwZm5u7.js → CollaboratorBar-DAITu0hz.js} +17 -17
  8. package/dist/{ColorPicker-DtozuN75.js → ColorPicker-BqlZ_TqG.js} +193 -193
  9. package/dist/{CommentsPanel-3C-DsEjy.js → CommentsPanel-CDvgmWP1.js} +3 -3
  10. package/dist/{CommentsSidebar-go1FnjDW.js → CommentsSidebar-X_xqM3dR.js} +158 -158
  11. package/dist/{CountdownBlock-D1fsNsyS.js → CountdownBlock-ZFJIdbP6.js} +12 -12
  12. package/dist/{CountdownToolbar-SLBuij7Q.js → CountdownToolbar-DBFoG3a6.js} +67 -67
  13. package/dist/{DesignReferenceSidebar-rcE_BvUd.js → DesignReferenceSidebar--QtXjLrw.js} +57 -57
  14. package/dist/{FieldRow-BWt7ECqo.js → FieldRow-C8nOknr_.js} +39 -39
  15. package/dist/{IssuesPanel-Cig46N1i.js → IssuesPanel-BLbNFMSX.js} +38 -38
  16. package/dist/{LoadingTrack-SQXoZVf2.js → LoadingTrack-BlTL4zFv.js} +2 -2
  17. package/dist/MediaPanels-CMTAhDXB.js +43 -0
  18. package/dist/{MergeTagInput-D1hzsn2b.js → MergeTagInput-BEjzj4Iu.js} +115 -115
  19. package/dist/{MergeTagModeToggle-CH9wR5YF.js → MergeTagModeToggle-DKN6ihI5.js} +40 -40
  20. package/dist/{MergeTagSuggestion-CoCuzEmW.js → MergeTagSuggestion-DKoLEeoj.js} +21 -21
  21. package/dist/{ParagraphEditor-CT2AdMdZ.js → ParagraphEditor-1E9yzOfk.js} +231 -258
  22. package/dist/{RestoreVersionDialog-mdqgQxFR.js → RestoreVersionDialog-BMGUkcd8.js} +28 -28
  23. package/dist/{RichTextEditorContent-riOB-rKD.js → RichTextEditorContent-BnxbQUV9.js} +49 -59
  24. package/dist/{SaveBlockDialog-Cn2v4Lpj.js → SaveBlockDialog-WKASpCCT.js} +78 -78
  25. package/dist/SavedBlocksBrowserModal-AYEXTMtQ.js +323 -0
  26. package/dist/{SavedBlocksPanels-ffBnWuVU.js → SavedBlocksPanels-D_CpacTl.js} +6 -6
  27. package/dist/{SavedBlocksPickBar-BmQC2tWN.js → SavedBlocksPickBar-BHMwg-1G.js} +11 -11
  28. package/dist/{TemplateScoringPanel-CxAtdreR.js → TemplateScoringPanel-CSin43YM.js} +99 -98
  29. package/dist/{TestEmailModal-Cjn1padY.js → TestEmailModal-BxizsRCd.js} +59 -59
  30. package/dist/{TestEmailPanel-Bf3XZ1jn.js → TestEmailPanel-vd2e5HzT.js} +3 -3
  31. package/dist/TitleEditor-CLJ68Ty4.js +199 -0
  32. package/dist/TplModal-Q9fDgS1M.js +51 -0
  33. package/dist/{VersionHistoryMenu-CrNrGsaa.js → VersionHistoryMenu-eGYVhM4H.js} +41 -47
  34. package/dist/{VersionHistoryPanels-CsuQk6W3.js → VersionHistoryPanels-C7Ntrrfq.js} +4 -4
  35. package/dist/{VersionPreviewBanner-BqbO0Zss.js → VersionPreviewBanner-BbQXnR0M.js} +9 -9
  36. package/dist/{blockTypeIcons-D_4HdaY9.js → blockTypeIcons-5qD4bB76.js} +5 -17
  37. package/dist/bundle-stats.json +8 -8
  38. package/dist/ca-Jx2CDwtn.js +83 -0
  39. package/dist/cdn/chunks/{AiChatSidebar-D0f74_nS.js → AiChatSidebar-dyqqHAcI.js} +4 -4
  40. package/dist/cdn/chunks/{AiChatSidebar-D0f74_nS.js.map → AiChatSidebar-dyqqHAcI.js.map} +1 -1
  41. package/dist/cdn/chunks/{AiFeatureMenu-DwGb3eF9.js → AiFeatureMenu-BjVMwhW8.js} +5 -5
  42. package/dist/cdn/chunks/{AiFeatureMenu-DwGb3eF9.js.map → AiFeatureMenu-BjVMwhW8.js.map} +1 -1
  43. package/dist/cdn/chunks/{BlockIssueBadge-CosQgeJ-.js → BlockIssueBadge-BJ__oEtm.js} +4 -4
  44. package/dist/cdn/chunks/{BlockIssueBadge-CosQgeJ-.js.map → BlockIssueBadge-BJ__oEtm.js.map} +1 -1
  45. package/dist/cdn/chunks/{BlockPreviewCanvas-CIpZ2a6g.js → BlockPreviewCanvas-B5f26eLE.js} +5 -5
  46. package/dist/cdn/chunks/{BlockPreviewCanvas-CIpZ2a6g.js.map → BlockPreviewCanvas-B5f26eLE.js.map} +1 -1
  47. package/dist/cdn/chunks/{CloudHeaderExtras-CQzQwKFB.js → CloudHeaderExtras-D5P5IEKA.js} +4 -4
  48. package/dist/cdn/chunks/{CloudHeaderExtras-CQzQwKFB.js.map → CloudHeaderExtras-D5P5IEKA.js.map} +1 -1
  49. package/dist/cdn/chunks/{CloudPanels-BmexuLOU.js → CloudPanels-DkmR05nB.js} +15 -45
  50. package/dist/cdn/chunks/{CloudPanels-BmexuLOU.js.map → CloudPanels-DkmR05nB.js.map} +1 -1
  51. package/dist/cdn/chunks/{CollaboratorBar-DEICobpp.js → CollaboratorBar-Yn7KSpt4.js} +4 -4
  52. package/dist/cdn/chunks/{CollaboratorBar-DEICobpp.js.map → CollaboratorBar-Yn7KSpt4.js.map} +1 -1
  53. package/dist/cdn/chunks/{ColorPicker-C7yC58FK.js → ColorPicker-LcrzgMoW.js} +7 -7
  54. package/dist/cdn/chunks/{ColorPicker-C7yC58FK.js.map → ColorPicker-LcrzgMoW.js.map} +1 -1
  55. package/dist/cdn/chunks/{CommentsPanel-OjmKxLL7.js → CommentsPanel-CntwwocI.js} +2 -2
  56. package/dist/cdn/chunks/{CommentsPanel-OjmKxLL7.js.map → CommentsPanel-CntwwocI.js.map} +1 -1
  57. package/dist/cdn/chunks/{CommentsSidebar-C4pWZGpy.js → CommentsSidebar-BLDKnKy7.js} +4 -4
  58. package/dist/cdn/chunks/{CommentsSidebar-C4pWZGpy.js.map → CommentsSidebar-BLDKnKy7.js.map} +1 -1
  59. package/dist/cdn/chunks/{CountdownBlock-rK055jpy.js → CountdownBlock-B4AfqJwb.js} +2 -2
  60. package/dist/cdn/chunks/{CountdownBlock-rK055jpy.js.map → CountdownBlock-B4AfqJwb.js.map} +1 -1
  61. package/dist/cdn/chunks/{CountdownToolbar-wlJOxyAl.js → CountdownToolbar-CA1dpuOI.js} +3 -3
  62. package/dist/cdn/chunks/{CountdownToolbar-wlJOxyAl.js.map → CountdownToolbar-CA1dpuOI.js.map} +1 -1
  63. package/dist/cdn/chunks/{DesignReferenceSidebar-DELhnh8h.js → DesignReferenceSidebar-D1Y9Hswe.js} +5 -5
  64. package/dist/cdn/chunks/{DesignReferenceSidebar-DELhnh8h.js.map → DesignReferenceSidebar-D1Y9Hswe.js.map} +1 -1
  65. package/dist/cdn/chunks/{IssuesPanel-C9i3o8aE.js → IssuesPanel-Q62LTqvd.js} +5 -5
  66. package/dist/cdn/chunks/{IssuesPanel-C9i3o8aE.js.map → IssuesPanel-Q62LTqvd.js.map} +1 -1
  67. package/dist/cdn/chunks/MediaPanels-D21M6shx.js +45 -0
  68. package/dist/cdn/chunks/MediaPanels-D21M6shx.js.map +1 -0
  69. package/dist/cdn/chunks/{MergeTagInput-D76Kyvgu.js → MergeTagInput-l7paaAml.js} +7 -7
  70. package/dist/cdn/chunks/{MergeTagInput-D76Kyvgu.js.map → MergeTagInput-l7paaAml.js.map} +1 -1
  71. package/dist/cdn/chunks/{MergeTagModeToggle-Dz3gxN2y.js → MergeTagModeToggle-DYxkAGtA.js} +4 -4
  72. package/dist/cdn/chunks/{MergeTagModeToggle-Dz3gxN2y.js.map → MergeTagModeToggle-DYxkAGtA.js.map} +1 -1
  73. package/dist/cdn/chunks/{ParagraphEditor-DQn0HMfV.js → ParagraphEditor-Bd-GQXee.js} +15 -15
  74. package/dist/cdn/chunks/{ParagraphEditor-DQn0HMfV.js.map → ParagraphEditor-Bd-GQXee.js.map} +1 -1
  75. package/dist/cdn/chunks/{RestoreVersionDialog-BdjOL8Oy.js → RestoreVersionDialog-2X9RpM9A.js} +4 -4
  76. package/dist/cdn/chunks/{RestoreVersionDialog-BdjOL8Oy.js.map → RestoreVersionDialog-2X9RpM9A.js.map} +1 -1
  77. package/dist/cdn/chunks/{RichTextEditorContent-Drzwgh0J.js → RichTextEditorContent-D_rb0rmU.js} +8 -8
  78. package/dist/cdn/chunks/{RichTextEditorContent-Drzwgh0J.js.map → RichTextEditorContent-D_rb0rmU.js.map} +1 -1
  79. package/dist/cdn/chunks/{SaveBlockDialog-B3rbmXSM.js → SaveBlockDialog-CufdTomT.js} +15 -15
  80. package/dist/cdn/chunks/{SaveBlockDialog-B3rbmXSM.js.map → SaveBlockDialog-CufdTomT.js.map} +1 -1
  81. package/dist/cdn/chunks/{SavedBlocksBrowserModal-CkUXlnd2.js → SavedBlocksBrowserModal-CqpaNsk7.js} +8 -8
  82. package/dist/cdn/chunks/{SavedBlocksBrowserModal-CkUXlnd2.js.map → SavedBlocksBrowserModal-CqpaNsk7.js.map} +1 -1
  83. package/dist/cdn/chunks/{SavedBlocksPanels-BPi3PZKP.js → SavedBlocksPanels-DpxYxddo.js} +2 -2
  84. package/dist/cdn/chunks/{SavedBlocksPanels-BPi3PZKP.js.map → SavedBlocksPanels-DpxYxddo.js.map} +1 -1
  85. package/dist/cdn/chunks/{SavedBlocksPickBar-BvB9A5W2.js → SavedBlocksPickBar-Drpoav1B.js} +4 -4
  86. package/dist/cdn/chunks/{SavedBlocksPickBar-BvB9A5W2.js.map → SavedBlocksPickBar-Drpoav1B.js.map} +1 -1
  87. package/dist/cdn/chunks/{TemplateScoringPanel-BBCyLnOi.js → TemplateScoringPanel-DBjUNULq.js} +5 -5
  88. package/dist/cdn/chunks/{TemplateScoringPanel-BBCyLnOi.js.map → TemplateScoringPanel-DBjUNULq.js.map} +1 -1
  89. package/dist/cdn/chunks/{TestEmailModal-DAGTsBqi.js → TestEmailModal-BTNlSW6f.js} +10 -10
  90. package/dist/cdn/chunks/{TestEmailModal-DAGTsBqi.js.map → TestEmailModal-BTNlSW6f.js.map} +1 -1
  91. package/dist/cdn/chunks/{TestEmailPanel-BfenVvfx.js → TestEmailPanel-D0A9Zgxr.js} +2 -2
  92. package/dist/cdn/chunks/{TestEmailPanel-BfenVvfx.js.map → TestEmailPanel-D0A9Zgxr.js.map} +1 -1
  93. package/dist/cdn/chunks/{TitleEditor-oQ4gr6wS.js → TitleEditor-CrnuIq62.js} +9 -9
  94. package/dist/cdn/chunks/{TitleEditor-oQ4gr6wS.js.map → TitleEditor-CrnuIq62.js.map} +1 -1
  95. package/dist/cdn/chunks/{TplModal-DxOMcVwp.js → TplModal-DYXrTz42.js} +5 -5
  96. package/dist/cdn/chunks/{TplModal-DxOMcVwp.js.map → TplModal-DYXrTz42.js.map} +1 -1
  97. package/dist/cdn/chunks/{VersionHistoryMenu-BfVUvWHT.js → VersionHistoryMenu-bDGnE4hb.js} +4 -4
  98. package/dist/cdn/chunks/VersionHistoryMenu-bDGnE4hb.js.map +1 -0
  99. package/dist/cdn/chunks/{VersionHistoryPanels-NpDb641L.js → VersionHistoryPanels-82P0Q0HM.js} +2 -2
  100. package/dist/cdn/chunks/{VersionHistoryPanels-NpDb641L.js.map → VersionHistoryPanels-82P0Q0HM.js.map} +1 -1
  101. package/dist/cdn/chunks/{VersionPreviewBanner-Cpgt4xHc.js → VersionPreviewBanner-BJiwKkVC.js} +3 -3
  102. package/dist/cdn/chunks/{VersionPreviewBanner-Cpgt4xHc.js.map → VersionPreviewBanner-BJiwKkVC.js.map} +1 -1
  103. package/dist/cdn/chunks/{blockTypeIcons-t9vvaiuH.js → blockTypeIcons-CNjJSFun.js} +2 -2
  104. package/dist/cdn/chunks/{blockTypeIcons-t9vvaiuH.js.map → blockTypeIcons-CNjJSFun.js.map} +1 -1
  105. package/dist/cdn/chunks/{ca-CNRWAMHI.js → ca-Jx2CDwtn.js} +2 -6
  106. package/dist/cdn/chunks/ca-Jx2CDwtn.js.map +1 -0
  107. package/dist/cdn/chunks/{cloud-CullB76F.js → cloud-BLgCKP7Z.js} +452 -227
  108. package/dist/cdn/chunks/cloud-BLgCKP7Z.js.map +1 -0
  109. package/dist/cdn/chunks/createCloudRuntime-U-qCH-dq.js +385 -0
  110. package/dist/cdn/chunks/createCloudRuntime-U-qCH-dq.js.map +1 -0
  111. package/dist/cdn/chunks/{de-DFYCT4QU.js → de-Ck0pBGHu.js} +2 -6
  112. package/dist/cdn/chunks/de-Ck0pBGHu.js.map +1 -0
  113. package/dist/cdn/chunks/{src-CaXeO-gG.js → editor-modal-MXgtarMl.js} +1474 -1935
  114. package/dist/cdn/chunks/editor-modal-MXgtarMl.js.map +1 -0
  115. package/dist/cdn/chunks/en-C9U7N77n.js +2 -0
  116. package/dist/cdn/chunks/{es-OgkdMZGX.js → es-lagTvUfX.js} +2 -6
  117. package/dist/cdn/chunks/es-lagTvUfX.js.map +1 -0
  118. package/dist/cdn/chunks/{extensions-BpXY7jO5.js → extensions-B8_jnIkD.js} +3 -3
  119. package/dist/cdn/chunks/{extensions-BpXY7jO5.js.map → extensions-B8_jnIkD.js.map} +1 -1
  120. package/dist/cdn/chunks/{fr-Dswns199.js → fr-C4hVl5Lk.js} +2 -6
  121. package/dist/cdn/chunks/fr-C4hVl5Lk.js.map +1 -0
  122. package/dist/cdn/chunks/{icons-BLxcQUck.js → icons-BUlqGSgd.js} +24 -24
  123. package/dist/cdn/chunks/{icons-BLxcQUck.js.map → icons-BUlqGSgd.js.map} +1 -1
  124. package/dist/cdn/chunks/{keys-DQp8x7Nx.js → keys-DBFhDFng.js} +4 -4
  125. package/dist/cdn/chunks/{keys-DQp8x7Nx.js.map → keys-DBFhDFng.js.map} +1 -1
  126. package/dist/cdn/chunks/{nl-CbcPJlrL.js → nl-CReD7Apd.js} +2 -6
  127. package/dist/cdn/chunks/nl-CReD7Apd.js.map +1 -0
  128. package/dist/cdn/chunks/{pt-BR-BibOQm-o.js → pt-BR-BRA0-vGP.js} +2 -6
  129. package/dist/cdn/chunks/pt-BR-BRA0-vGP.js.map +1 -0
  130. package/dist/cdn/chunks/{src-BC-eolWY.js → src-DZ0C9mH7.js} +2 -2
  131. package/dist/cdn/chunks/{src-BC-eolWY.js.map → src-DZ0C9mH7.js.map} +1 -1
  132. package/dist/cdn/chunks/{useCloudI18n-MxgHWrV6.js → useCloudI18n-DSWSGj-A.js} +2 -2
  133. package/dist/cdn/chunks/{useCloudI18n-MxgHWrV6.js.map → useCloudI18n-DSWSGj-A.js.map} +1 -1
  134. package/dist/cdn/chunks/{useEditorCore-D4MytYB9.js → useEditorCore-Cs7rYVBo.js} +488 -406
  135. package/dist/cdn/chunks/useEditorCore-Cs7rYVBo.js.map +1 -0
  136. package/dist/cdn/chunks/{useEditorRoot-CteADR3y.js → useEditorRoot-B0zW2nT4.js} +2 -2
  137. package/dist/cdn/chunks/{useEditorRoot-CteADR3y.js.map → useEditorRoot-B0zW2nT4.js.map} +1 -1
  138. package/dist/cdn/chunks/{useI18n-Ct1VIFcf.js → useI18n-Dlo7R9RA.js} +2 -2
  139. package/dist/cdn/chunks/{useI18n-Ct1VIFcf.js.map → useI18n-Dlo7R9RA.js.map} +1 -1
  140. package/dist/cdn/chunks/{useMergeTag-CSocWpxV.js → useMergeTag-BYAifvh8.js} +3 -3
  141. package/dist/cdn/chunks/{useMergeTag-CSocWpxV.js.map → useMergeTag-BYAifvh8.js.map} +1 -1
  142. package/dist/cdn/chunks/{usePopoverPosition-BxVWE5_0.js → usePopoverPosition-ElP3ABaV.js} +2 -2
  143. package/dist/cdn/chunks/{usePopoverPosition-BxVWE5_0.js.map → usePopoverPosition-ElP3ABaV.js.map} +1 -1
  144. package/dist/cdn/chunks/{useScrollToBlock-Cz3fpgTK.js → useScrollToBlock-nTbWkgaU.js} +2 -2
  145. package/dist/cdn/chunks/{useScrollToBlock-Cz3fpgTK.js.map → useScrollToBlock-nTbWkgaU.js.map} +1 -1
  146. package/dist/cdn/editor.css +1 -1
  147. package/dist/cdn/editor.js +1091 -1004
  148. package/dist/cdn/editor.js.map +1 -1
  149. package/dist/{check-CY-Ec6FV.js → check-DWtkBzBU.js} +1 -1
  150. package/dist/{chevron-down-BghbWA9p.js → chevron-down-C-Fjxcqj.js} +1 -1
  151. package/dist/chevron-right-SOkn2d4P.js +11 -0
  152. package/dist/{chevron-up-n3qFAPS3.js → chevron-up-lntU1ypp.js} +1 -1
  153. package/dist/{circle-alert-L5uGGFRP.js → circle-alert-CjzUTwy3.js} +1 -1
  154. package/dist/{clock-Dgnwp18n.js → clock-pB2QKPsJ.js} +1 -1
  155. package/dist/{cloud-B1c4XIsn.js → cloud-DdidMW6f.js} +445 -200
  156. package/dist/copy-CId1E038.js +19 -0
  157. package/dist/createCloudRuntime-x5WZm3p8.js +383 -0
  158. package/dist/{createLucideIcon-05lB8iWe.js → createLucideIcon-Cwf_nTzE.js} +6 -6
  159. package/dist/de-Ck0pBGHu.js +83 -0
  160. package/dist/{dist-BxFbxpgW.js → dist-BVqAYoRB.js} +125 -125
  161. package/dist/dist-D8i1ixHK.js +177 -0
  162. package/dist/dist-DBirAJIs.js +410 -0
  163. package/dist/editor-modal-B_LaQf0s.js +5998 -0
  164. package/dist/en-DcmpWV53.js +2 -0
  165. package/dist/es-lagTvUfX.js +83 -0
  166. package/dist/{extensions-Bawm4BOM.js → extensions-CHOBZRab.js} +42 -42
  167. package/dist/eye-BuGtFUoJ.js +16 -0
  168. package/dist/fr-C4hVl5Lk.js +83 -0
  169. package/dist/{image-up-ovhjl9u9.js → image-up-gH4JEpU5.js} +1 -1
  170. package/dist/index.d.ts +77 -11
  171. package/dist/{info-c3KI927I.js → info-BQ60P82u.js} +1 -1
  172. package/dist/{keys-C3P1yxnr.js → keys-DQA2i1k1.js} +4 -4
  173. package/dist/link-3R8it3J7.js +14 -0
  174. package/dist/list-Ccdgj46T.js +33 -0
  175. package/dist/{loader-circle-B2Y8xZQb.js → loader-circle-B_tAD4k6.js} +1 -1
  176. package/dist/{message-circle-B7K-naUa.js → message-circle-P-KSc6V0.js} +1 -1
  177. package/dist/nl-CReD7Apd.js +83 -0
  178. package/dist/{pencil-BhWTFcp4.js → pencil-9ZiwqS4r.js} +1 -1
  179. package/dist/plus-BwJEzCaO.js +14 -0
  180. package/dist/pt-BR-BRA0-vGP.js +83 -0
  181. package/dist/{refresh-cw-BqUR5vgO.js → refresh-cw-DEgfb2FK.js} +2 -14
  182. package/dist/{runtime-dom.esm-bundler-BuG03jBM.js → runtime-dom.esm-bundler-PnoZU512.js} +106 -106
  183. package/dist/search-DqQ8Li5E.js +16 -0
  184. package/dist/{send-D1vvuW79.js → send-CE6uvqop.js} +1 -1
  185. package/dist/{shield-check-DjK54PnW.js → shield-check-DhD1Z3rd.js} +1 -1
  186. package/dist/{sparkles-DNdS9V_3.js → sparkles-R0ZQHa6F.js} +1 -1
  187. package/dist/style.css +1 -1
  188. package/dist/templatical-editor.js +2488 -2407
  189. package/dist/{text-align-start-Bcmo_VUY.js → text-align-start-DSux2UNn.js} +1 -1
  190. package/dist/{trash-C9bMXvw4.js → trash-Cf_SqsER.js} +1 -1
  191. package/dist/{triangle-alert-Bn8Bd2Yv.js → triangle-alert-C6tGa6jw.js} +1 -1
  192. package/dist/{upload-DKgg1gno.js → upload-DusKjpVr.js} +1 -1
  193. package/dist/{useAliveFlag-PVmp95MT.js → useAliveFlag-oyByIcjy.js} +1 -1
  194. package/dist/{useCloudI18n-BKoiYsWZ.js → useCloudI18n-BLyh_e2T.js} +2 -2
  195. package/dist/{useEditorCore-CYGvurZa.js → useEditorCore-DhlKOYwe.js} +1552 -1486
  196. package/dist/{useEditorRoot-DkRGTQRs.js → useEditorRoot-ds57-l6F.js} +2 -2
  197. package/dist/{useI18n-CL6RfPzK.js → useI18n-BbdxxpOE.js} +2 -2
  198. package/dist/{useMergeTag-C9GEpljB.js → useMergeTag-DlvOBW_B.js} +3 -3
  199. package/dist/{usePopoverPosition-CWxaIWd3.js → usePopoverPosition-CprM5p-c.js} +2 -2
  200. package/dist/{useScrollToBlock-oUx1HIZ2.js → useScrollToBlock-BTFw0b9O.js} +3 -3
  201. package/dist/{vue.runtime.esm-bundler-D9JUcKrV.js → vue.runtime.esm-bundler-DShF3P6k.js} +1192 -1181
  202. package/dist/{x-BPKoRPTG.js → x-D_-42Ukq.js} +1 -1
  203. package/package.json +9 -12
  204. package/dist/CloudHeaderExtras-CRUQvgSV.js +0 -59
  205. package/dist/SavedBlocksBrowserModal-BORqqASb.js +0 -322
  206. package/dist/TitleEditor-pYEUX6lR.js +0 -198
  207. package/dist/TplModal-DRx4ytx8.js +0 -51
  208. package/dist/cdn/chunks/VersionHistoryMenu-BfVUvWHT.js.map +0 -1
  209. package/dist/cdn/chunks/ca-CNRWAMHI.js.map +0 -1
  210. package/dist/cdn/chunks/cloud-CullB76F.js.map +0 -1
  211. package/dist/cdn/chunks/createCloudRuntime-Cx2JpUYU.js +0 -443
  212. package/dist/cdn/chunks/createCloudRuntime-Cx2JpUYU.js.map +0 -1
  213. package/dist/cdn/chunks/de-DFYCT4QU.js.map +0 -1
  214. package/dist/cdn/chunks/en-rGHphLWo.js +0 -2
  215. package/dist/cdn/chunks/es-OgkdMZGX.js.map +0 -1
  216. package/dist/cdn/chunks/fr-Dswns199.js.map +0 -1
  217. package/dist/cdn/chunks/nl-CbcPJlrL.js.map +0 -1
  218. package/dist/cdn/chunks/pt-BR-BibOQm-o.js.map +0 -1
  219. package/dist/cdn/chunks/src-CaXeO-gG.js.map +0 -1
  220. package/dist/cdn/chunks/useEditorCore-D4MytYB9.js.map +0 -1
  221. package/dist/createCloudRuntime-PevFSH74.js +0 -441
  222. package/dist/dist-dNiknO7j.js +0 -251
  223. package/dist/dist-heatwAdo.js +0 -150
@@ -1,18 +1,18 @@
1
- import { B as e, Dt as t, L as n, S as r, T as ee, X as i, c as a, d as o, g as s, h as c, j as l, k as u, kt as d, l as f, r as p, rt as m, u as h, v as g, z as te } from "./vue.runtime.esm-bundler-D9JUcKrV.js";
2
- import { a as ne, t as re } from "./runtime-dom.esm-bundler-BuG03jBM.js";
3
- import { m as ie, p as ae } from "./dist-heatwAdo.js";
4
- import { E as oe, J as _, h as se, i as v, l as ce } from "./keys-C3P1yxnr.js";
5
- import { t as y } from "./createLucideIcon-05lB8iWe.js";
6
- import { t as le } from "./circle-alert-L5uGGFRP.js";
7
- import { t as ue } from "./loader-circle-B2Y8xZQb.js";
8
- import { t as de } from "./send-D1vvuW79.js";
9
- import { t as b } from "./sparkles-DNdS9V_3.js";
10
- import { t as fe } from "./trash-C9bMXvw4.js";
11
- import { t as pe } from "./x-BPKoRPTG.js";
12
- import { t as me } from "./LoadingTrack-SQXoZVf2.js";
1
+ import { A as e, B as t, E as n, M as r, R as i, S as ee, V as te, Z as a, at as o, c as s, d as c, g as l, h as u, jt as d, kt as ne, l as f, r as p, u as m, v as h } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
+ import { a as g, t as re } from "./runtime-dom.esm-bundler-PnoZU512.js";
3
+ import { _ as ie, g as ae } from "./dist-D8i1ixHK.js";
4
+ import { D as oe, Y as _, g as se, i as v, u as ce } from "./keys-DQA2i1k1.js";
5
+ import { t as y } from "./createLucideIcon-Cwf_nTzE.js";
6
+ import { t as le } from "./circle-alert-CjzUTwy3.js";
7
+ import { t as ue } from "./loader-circle-B_tAD4k6.js";
8
+ import { t as de } from "./send-CE6uvqop.js";
9
+ import { t as b } from "./sparkles-R0ZQHa6F.js";
10
+ import { t as fe } from "./trash-Cf_SqsER.js";
11
+ import { t as pe } from "./x-D_-42Ukq.js";
12
+ import { t as me } from "./LoadingTrack-BlTL4zFv.js";
13
13
  import { t as x } from "./_plugin-vue_export-helper-B3ysoDQm.js";
14
- import { t as S } from "./useAliveFlag-PVmp95MT.js";
15
- import { f as C } from "./cloud-B1c4XIsn.js";
14
+ import { t as S } from "./useAliveFlag-oyByIcjy.js";
15
+ import { p as C } from "./cloud-DdidMW6f.js";
16
16
  var w = y({
17
17
  name: "redo-2",
18
18
  size: 24,
@@ -80,24 +80,24 @@ var w = y({
80
80
  "background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 50%,\n transparent\n )",
81
81
  "backdrop-filter": "blur(2px)"
82
82
  }
83
- }, _e = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, ve = ["onClick"], ye = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, be = { class: "tpl-ai-input-wrapper tpl-focus-ring-host tpl:flex tpl:items-end tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:border tpl:px-3 tpl:py-2 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, xe = ["placeholder", "disabled"], Se = ["disabled"], Ce = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, B = /*#__PURE__*/ x(/* @__PURE__ */ g({
83
+ }, _e = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, ve = ["onClick"], ye = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, be = { class: "tpl-ai-input-wrapper tpl-focus-ring-host tpl:flex tpl:items-end tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:border tpl:px-3 tpl:py-2 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, xe = ["placeholder", "disabled"], Se = ["disabled"], Ce = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, B = /*#__PURE__*/ x(/* @__PURE__ */ h({
84
84
  __name: "AiChatSidebar",
85
85
  props: {
86
86
  visible: { type: Boolean },
87
87
  onApply: { type: Function }
88
88
  },
89
89
  emits: ["close"],
90
- setup(g, { emit: y }) {
91
- let x = g, B = y, V = _(ce, "AiChatSidebar"), H = _(se, "AiChatSidebar"), we = _(v, "AiChatSidebar"), U = r(oe, []), W = S(), G = C({
90
+ setup(h, { emit: y }) {
91
+ let x = h, B = y, V = _(ce, "AiChatSidebar"), H = _(se, "AiChatSidebar"), we = _(v, "AiChatSidebar"), U = ee(oe, []), W = S(), G = C({
92
92
  authManager: we,
93
93
  getTemplateId: () => H.state.template?.id ?? null,
94
94
  onApply: x.onApply,
95
95
  onError: void 0
96
- }), K = i(""), q = i(null), J = i(!1), Y = i(0), { pause: X, resume: Te } = ae(() => {
96
+ }), K = a(""), q = a(null), J = a(!1), Y = a(0), { pause: X, resume: Te } = ae(() => {
97
97
  let e = G.suggestions.value?.length ?? 0;
98
98
  Y.value < e ? Y.value++ : X();
99
99
  }, 150, { immediate: !1 }), { start: Ee } = ie(() => Te(), 100, { immediate: !1 });
100
- n(() => G.suggestions.value?.length ?? 0, (e) => {
100
+ i(() => G.suggestions.value?.length ?? 0, (e) => {
101
101
  if (X(), e === 0) {
102
102
  Y.value = 0;
103
103
  return;
@@ -105,11 +105,11 @@ var w = y({
105
105
  Y.value = 0, Ee();
106
106
  });
107
107
  function Z() {
108
- ee(() => {
108
+ n(() => {
109
109
  q.value && (q.value.scrollTop = q.value.scrollHeight);
110
110
  });
111
111
  }
112
- n(() => G.messages.value?.length ?? 0, () => Z()), n(() => x.visible, async (e) => {
112
+ i(() => G.messages.value?.length ?? 0, () => Z()), i(() => x.visible, async (e) => {
113
113
  if (e && !J.value) {
114
114
  if (J.value = !0, await G.loadConversation(), !W.alive) return;
115
115
  (G.messages.value?.length ?? 0) === 0 && H.content.value.blocks.length === 0 && G.loadSuggestions(H.content.value, U);
@@ -128,7 +128,7 @@ var w = y({
128
128
  function Oe(e) {
129
129
  e.key === "Enter" && !e.shiftKey && (e.preventDefault(), Q());
130
130
  }
131
- return (n, r) => (u(), f(re, {
131
+ return (n, i) => (e(), f(re, {
132
132
  "enter-active-class": "tpl-ai-slide-enter-active",
133
133
  "enter-from-class": "tpl:translate-x-full",
134
134
  "enter-to-class": "tpl:translate-x-0",
@@ -136,42 +136,42 @@ var w = y({
136
136
  "leave-from-class": "tpl:translate-x-0",
137
137
  "leave-to-class": "tpl:translate-x-full"
138
138
  }, {
139
- default: te(() => [g.visible ? (u(), o("div", E, [
140
- a("div", D, [a("div", O, [s(m(b), {
139
+ default: t(() => [h.visible ? (e(), c("div", E, [
140
+ s("div", D, [s("div", O, [l(o(b), {
141
141
  size: 13,
142
142
  "stroke-width": 2
143
- }), a("span", null, d(m(V).aiChat.title), 1)]), a("div", k, [(m(G).messages.value?.length ?? 0) > 0 ? (u(), o("button", {
143
+ }), s("span", null, d(o(V).aiChat.title), 1)]), s("div", k, [(o(G).messages.value?.length ?? 0) > 0 ? (e(), c("button", {
144
144
  key: 0,
145
145
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:text-[var(--tpl-text-muted)]",
146
- title: m(V).aiChat.clear,
147
- onClick: r[0] ||= (e) => m(G).clearChat()
148
- }, [s(m(fe), {
146
+ title: o(V).aiChat.clear,
147
+ onClick: i[0] ||= (e) => o(G).clearChat()
148
+ }, [l(o(fe), {
149
149
  size: 14,
150
150
  "stroke-width": 2
151
- })], 8, A)) : h("", !0), a("button", {
151
+ })], 8, A)) : m("", !0), s("button", {
152
152
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:text-[var(--tpl-text-muted)]",
153
- onClick: r[1] ||= (e) => B("close")
154
- }, [s(m(pe), {
153
+ onClick: i[1] ||= (e) => B("close")
154
+ }, [l(o(pe), {
155
155
  size: 14,
156
156
  "stroke-width": 2
157
157
  })])])]),
158
- a("div", j, [
159
- a("div", {
158
+ s("div", j, [
159
+ s("div", {
160
160
  ref_key: "messagesContainer",
161
161
  ref: q,
162
162
  class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4"
163
- }, [m(G).isLoadingHistory.value ? (u(), o("div", M, [s(m(ue), {
163
+ }, [o(G).isLoadingHistory.value ? (e(), c("div", M, [l(o(ue), {
164
164
  class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
165
165
  size: 24,
166
166
  "stroke-width": 2
167
- }), a("p", N, d(m(V).aiChat.loadingHistory), 1)])) : (m(G).messages.value?.length ?? 0) === 0 ? (u(), o("div", P, [s(m(b), {
167
+ }), s("p", N, d(o(V).aiChat.loadingHistory), 1)])) : (o(G).messages.value?.length ?? 0) === 0 ? (e(), c("div", P, [l(o(b), {
168
168
  size: 32,
169
169
  "stroke-width": 1.5,
170
170
  class: "tpl:text-[var(--tpl-text-dim)]"
171
- }), a("p", F, d(m(V).aiChat.placeholder), 1)])) : (u(), o("div", I, [(u(!0), o(p, null, l(m(G).messages.value, (e, t) => (u(), o("div", {
172
- key: e.id,
171
+ }), s("p", F, d(o(V).aiChat.placeholder), 1)])) : (e(), c("div", I, [(e(!0), c(p, null, r(o(G).messages.value, (t, n) => (e(), c("div", {
172
+ key: t.id,
173
173
  class: "tpl:flex tpl:flex-col tpl:gap-2"
174
- }, [e.role === "user" ? (u(), o("div", L, d(e.content), 1)) : (u(), o("div", R, [!$(e.content) && m(G).isGenerating.value && t === (m(G).messages.value?.length ?? 0) - 1 ? (u(), f(me, { key: 0 })) : (u(), o("div", z, d($(e.content) || m(V).aiChat.applied), 1)), e.id === m(G).lastApplyMessageId.value && !m(G).isGenerating.value ? (u(), o("button", {
174
+ }, [t.role === "user" ? (e(), c("div", L, d(t.content), 1)) : (e(), c("div", R, [!$(t.content) && o(G).isGenerating.value && n === (o(G).messages.value?.length ?? 0) - 1 ? (e(), f(me, { key: 0 })) : (e(), c("div", z, d($(t.content) || o(V).aiChat.applied), 1)), t.id === o(G).lastApplyMessageId.value && !o(G).isGenerating.value ? (e(), c("button", {
175
175
  key: 2,
176
176
  class: "tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:self-start tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all",
177
177
  style: {
@@ -179,47 +179,47 @@ var w = y({
179
179
  color: "var(--tpl-text-muted)",
180
180
  "background-color": "transparent"
181
181
  },
182
- onClick: r[2] ||= (e) => m(G).toggleLastRevert()
183
- }, [m(G).isLastChangeReverted.value ? (u(), o(p, { key: 0 }, [s(m(w), {
182
+ onClick: i[2] ||= (e) => o(G).toggleLastRevert()
183
+ }, [o(G).isLastChangeReverted.value ? (e(), c(p, { key: 0 }, [l(o(w), {
184
184
  size: 12,
185
185
  "stroke-width": 2
186
- }), c(" " + d(m(V).aiChat.reapply), 1)], 64)) : (u(), o(p, { key: 1 }, [s(m(T), {
186
+ }), u(" " + d(o(V).aiChat.reapply), 1)], 64)) : (e(), c(p, { key: 1 }, [l(o(T), {
187
187
  size: 12,
188
188
  "stroke-width": 2
189
- }), c(" " + d(m(V).aiChat.revert), 1)], 64))])) : h("", !0)]))]))), 128))]))], 512),
190
- m(G).error.value ? (u(), o("div", he, [s(m(le), {
189
+ }), u(" " + d(o(V).aiChat.revert), 1)], 64))])) : m("", !0)]))]))), 128))]))], 512),
190
+ o(G).error.value ? (e(), c("div", he, [l(o(le), {
191
191
  size: 14,
192
192
  "stroke-width": 2,
193
193
  class: "tpl:mt-0.5 tpl:shrink-0"
194
- }), a("span", null, d(m(G).error.value === "ai_apply_failed" ? m(V).aiChat.applyFailed : m(V).aiChat.error), 1)])) : h("", !0),
195
- (m(G).suggestions.value?.length ?? 0) > 0 ? (u(), o("div", ge, [a("div", _e, [(u(!0), o(p, null, l(m(G).suggestions.value ?? [], (e, n) => (u(), o("button", {
194
+ }), s("span", null, d(o(G).error.value === "ai_apply_failed" ? o(V).aiChat.applyFailed : o(V).aiChat.error), 1)])) : m("", !0),
195
+ (o(G).suggestions.value?.length ?? 0) > 0 ? (e(), c("div", ge, [s("div", _e, [(e(!0), c(p, null, r(o(G).suggestions.value ?? [], (t, n) => (e(), c("button", {
196
196
  key: n,
197
- class: t(["tpl-suggestion-btn tpl:cursor-pointer tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:px-3 tpl:py-2 tpl:text-left tpl:text-xs tpl:leading-snug tpl:transition-all tpl:duration-300 tpl:ease-out", (m(G).suggestions.value?.length ?? 0) - 1 - n < Y.value ? "tpl:translate-y-0 tpl:opacity-100" : "tpl:pointer-events-none tpl:-translate-y-2 tpl:opacity-0"]),
197
+ class: ne(["tpl-suggestion-btn tpl:cursor-pointer tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:px-3 tpl:py-2 tpl:text-left tpl:text-xs tpl:leading-snug tpl:transition-all tpl:duration-300 tpl:ease-out", (o(G).suggestions.value?.length ?? 0) - 1 - n < Y.value ? "tpl:translate-y-0 tpl:opacity-100" : "tpl:pointer-events-none tpl:-translate-y-2 tpl:opacity-0"]),
198
198
  style: {
199
199
  "border-color": "var(--tpl-border)",
200
200
  color: "var(--tpl-primary)",
201
201
  "background-color": "var(--tpl-bg)",
202
202
  "box-shadow": "var(--tpl-shadow)"
203
203
  },
204
- onClick: (t) => De(e)
205
- }, d(e), 11, ve))), 128))])])) : h("", !0)
204
+ onClick: (e) => De(t)
205
+ }, d(t), 11, ve))), 128))])])) : m("", !0)
206
206
  ]),
207
- a("div", ye, [a("div", be, [e(a("textarea", {
208
- "onUpdate:modelValue": r[3] ||= (e) => K.value = e,
207
+ s("div", ye, [s("div", be, [te(s("textarea", {
208
+ "onUpdate:modelValue": i[3] ||= (e) => K.value = e,
209
209
  class: "tpl:max-h-32 tpl:min-h-[64px] tpl:flex-1 tpl:resize-none tpl:border-none tpl:bg-transparent tpl:font-sans tpl:text-sm tpl:outline-none tpl:text-[var(--tpl-text)]",
210
- placeholder: m(V).aiChat.inputPlaceholder,
211
- disabled: m(G).isGenerating.value,
210
+ placeholder: o(V).aiChat.inputPlaceholder,
211
+ disabled: o(G).isGenerating.value,
212
212
  rows: "3",
213
213
  onKeydown: Oe
214
- }, null, 40, xe), [[ne, K.value]]), a("button", {
214
+ }, null, 40, xe), [[g, K.value]]), s("button", {
215
215
  class: "tpl-ai-send-btn tpl:flex tpl:shrink-0 tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1.5 tpl:transition-all tpl:disabled:opacity-40 tpl:text-[var(--tpl-primary)]",
216
- disabled: !K.value.trim() || m(G).isGenerating.value,
216
+ disabled: !K.value.trim() || o(G).isGenerating.value,
217
217
  onClick: Q
218
- }, [s(m(de), {
218
+ }, [l(o(de), {
219
219
  size: 16,
220
220
  "stroke-width": 2
221
- })], 8, Se)]), a("p", Ce, d(m(V).aiMenu.disclaimer), 1)])
222
- ])) : h("", !0)]),
221
+ })], 8, Se)]), s("p", Ce, d(o(V).aiMenu.disclaimer), 1)])
222
+ ])) : m("", !0)]),
223
223
  _: 1
224
224
  }));
225
225
  }
@@ -1,11 +1,11 @@
1
- import { Ot as e, P as t, c as n, d as r, j as i, k as a, kt as o, l as s, r as c, s as l, v as u } from "./vue.runtime.esm-bundler-D9JUcKrV.js";
2
- import "./useEditorCore-CYGvurZa.js";
3
- import { J as d, t as f } from "./keys-C3P1yxnr.js";
4
- import { t as p } from "./image-up-ovhjl9u9.js";
5
- import { t as m } from "./shield-check-DjK54PnW.js";
6
- import { t as h } from "./sparkles-DNdS9V_3.js";
1
+ import { A as e, At as t, F as n, M as r, c as i, d as a, jt as o, l as s, r as c, s as l, v as u } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
+ import "./useEditorCore-DhlKOYwe.js";
3
+ import { Y as d, t as f } from "./keys-DQA2i1k1.js";
4
+ import { t as p } from "./image-up-gH4JEpU5.js";
5
+ import { t as m } from "./shield-check-DhD1Z3rd.js";
6
+ import { t as h } from "./sparkles-R0ZQHa6F.js";
7
7
  import { t as g } from "./_plugin-vue_export-helper-B3ysoDQm.js";
8
- import { n as _ } from "./useCloudI18n-BKoiYsWZ.js";
8
+ import { n as _ } from "./useCloudI18n-BLyh_e2T.js";
9
9
  //#region src/cloud/components/AiFeatureMenu.vue?vue&type=script&setup=true&lang.ts
10
10
  var v = { class: "tpl-ai-feature-menu tpl:w-[280px] tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:py-1 tpl:bg-[var(--tpl-bg)] tpl:border tpl:border-[var(--tpl-border)] tpl:shadow-[var(--tpl-shadow-lg)]" }, y = ["onClick"], b = { class: "tpl:flex tpl:min-w-0 tpl:flex-col tpl:gap-0.5" }, x = { class: "tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text)]" }, S = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text-muted)]" }, C = /*#__PURE__*/ g(/* @__PURE__ */ u({
11
11
  __name: "AiFeatureMenu",
@@ -36,21 +36,21 @@ var v = { class: "tpl-ai-feature-menu tpl:w-[280px] tpl:overflow-hidden tpl:roun
36
36
  function A(e) {
37
37
  return e === "ai-chat" ? w.aiMenu.aiAssistantDesc : e === "design-reference" ? w.aiMenu.designToTemplateDesc : w.aiMenu.templateScoreDesc;
38
38
  }
39
- return (l, d) => (a(), r("div", v, [(a(!0), r(c, null, i(O.value, (i) => (a(), r("button", {
40
- key: i.key,
39
+ return (l, d) => (e(), a("div", v, [(e(!0), a(c, null, r(O.value, (r) => (e(), a("button", {
40
+ key: r.key,
41
41
  class: "tpl-ai-feature-menu-item tpl:flex tpl:w-full tpl:cursor-pointer tpl:items-start tpl:gap-3 tpl:border-none tpl:px-3 tpl:py-2.5 tpl:text-left tpl:transition-colors",
42
- style: e({ backgroundColor: u.activeFeature === i.key ? "var(--tpl-primary-light)" : "transparent" }),
43
- onClick: (e) => C("select", i.key)
44
- }, [n("div", {
42
+ style: t({ backgroundColor: u.activeFeature === r.key ? "var(--tpl-primary-light)" : "transparent" }),
43
+ onClick: (e) => C("select", r.key)
44
+ }, [i("div", {
45
45
  class: "tpl:mt-0.5 tpl:flex tpl:size-7 tpl:shrink-0 tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)]",
46
- style: e({
47
- backgroundColor: u.activeFeature === i.key ? "var(--tpl-primary)" : "var(--tpl-bg-active)",
48
- color: u.activeFeature === i.key ? "var(--tpl-bg)" : "var(--tpl-text-muted)"
46
+ style: t({
47
+ backgroundColor: u.activeFeature === r.key ? "var(--tpl-primary)" : "var(--tpl-bg-active)",
48
+ color: u.activeFeature === r.key ? "var(--tpl-bg)" : "var(--tpl-text-muted)"
49
49
  })
50
- }, [(a(), s(t(i.icon), {
50
+ }, [(e(), s(n(r.icon), {
51
51
  size: 15,
52
52
  "stroke-width": 2
53
- }))], 4), n("div", b, [n("span", x, o(k(i.key)), 1), n("span", S, o(A(i.key)), 1)])], 12, y))), 128))]));
53
+ }))], 4), i("div", b, [i("span", x, o(k(r.key)), 1), i("span", S, o(A(r.key)), 1)])], 12, y))), 128))]));
54
54
  }
55
55
  }), [["__scopeId", "data-v-bf59b787"]]);
56
56
  //#endregion
@@ -1,27 +1,27 @@
1
- import { Dt as e, S as t, d as n, k as r, l as i, rt as a, s as o, u as s, v as c } from "./vue.runtime.esm-bundler-D9JUcKrV.js";
2
- import { V as l } from "./keys-C3P1yxnr.js";
3
- import { t as u } from "./useI18n-CL6RfPzK.js";
4
- import { t as d } from "./circle-alert-L5uGGFRP.js";
5
- import { t as f } from "./triangle-alert-Bn8Bd2Yv.js";
1
+ import { A as e, S as t, at as n, d as r, kt as i, l as a, s as o, u as s, v as c } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
+ import { H as l } from "./keys-DQA2i1k1.js";
3
+ import { t as u } from "./useI18n-BbdxxpOE.js";
4
+ import { t as d } from "./circle-alert-CjzUTwy3.js";
5
+ import { t as f } from "./triangle-alert-C6tGa6jw.js";
6
6
  //#region src/components/canvas/BlockIssueBadge.vue?vue&type=script&setup=true&lang.ts
7
7
  var p = ["title", "aria-label"], m = /* @__PURE__ */ c({
8
8
  __name: "BlockIssueBadge",
9
9
  props: { blockId: {} },
10
10
  setup(c) {
11
11
  let m = c, { t: h } = u(), g = t(l, null), _ = o(() => (g?.issues.value ?? []).filter((e) => e.blockId === m.blockId)), v = o(() => _.value.some((e) => e.severity === "error") ? "error" : _.value.some((e) => e.severity === "warning") ? "warning" : null), y = o(() => v.value === "error" ? h.issues.badgeError : h.issues.badgeWarning);
12
- return (t, o) => v.value ? (r(), n("span", {
12
+ return (t, o) => v.value ? (e(), r("span", {
13
13
  key: 0,
14
- class: e(["tpl:absolute tpl:top-1 tpl:right-1 tpl:z-10 tpl:flex tpl:size-5 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-bg)] tpl:shadow-[var(--tpl-shadow-sm)] tpl:ring-1 tpl:ring-[var(--tpl-border)]", v.value === "error" ? "tpl:text-[var(--tpl-danger)]" : "tpl:text-[var(--tpl-warning)]"]),
14
+ class: i(["tpl:absolute tpl:top-1 tpl:right-1 tpl:z-10 tpl:flex tpl:size-5 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-bg)] tpl:shadow-[var(--tpl-shadow-sm)] tpl:ring-1 tpl:ring-[var(--tpl-border)]", v.value === "error" ? "tpl:text-[var(--tpl-danger)]" : "tpl:text-[var(--tpl-warning)]"]),
15
15
  title: y.value,
16
16
  "aria-label": y.value,
17
17
  role: "img"
18
- }, [v.value === "error" ? (r(), i(a(d), {
18
+ }, [v.value === "error" ? (e(), a(n(d), {
19
19
  key: 0,
20
20
  size: 14,
21
21
  "stroke-width": 2.25,
22
22
  fill: "currentColor",
23
23
  stroke: "var(--tpl-bg)"
24
- })) : (r(), i(a(f), {
24
+ })) : (e(), a(n(f), {
25
25
  key: 1,
26
26
  size: 14,
27
27
  "stroke-width": 2.25,
@@ -1,8 +1,8 @@
1
1
  import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { A as t, N as n, Ot as r, P as i, S as a, c as o, d as s, j as c, k as l, l as u, r as d, rt as f, s as p, v as m } from "./vue.runtime.esm-bundler-D9JUcKrV.js";
2
+ import { A as t, At as n, F as r, M as i, P as a, S as o, at as s, c, d as l, j as u, l as d, r as f, s as p, v as m } from "./vue.runtime.esm-bundler-DShF3P6k.js";
3
3
  import { R as h } from "./dist-tGkjkX-v.js";
4
- import { R as g, a as _, b as v, d as y, f as b, g as x, h as S, i as C, l as w, m as T, n as E, p as D, r as O, v as k, y as A } from "./useEditorCore-CYGvurZa.js";
5
- import { A as j, d as M, h as N, q as P, s as F } from "./keys-C3P1yxnr.js";
4
+ import { L as g, a as _, b as v, d as y, f as b, g as x, h as S, i as C, l as w, m as T, n as E, p as D, r as O, v as k, y as A } from "./useEditorCore-DhlKOYwe.js";
5
+ import { J as j, f as M, g as N, j as P, s as F } from "./keys-DQA2i1k1.js";
6
6
  import { n as I, t as L } from "./emailFrameWidth-BmFCN2dp.js";
7
7
  //#region src/components/blocks/PreviewSectionBlock.vue?vue&type=script&setup=true&lang.ts
8
8
  var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__PURE__ */ m({
@@ -13,7 +13,7 @@ var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__
13
13
  viewport: {}
14
14
  },
15
15
  setup(e) {
16
- let t = {
16
+ let u = {
17
17
  title: w,
18
18
  paragraph: T,
19
19
  image: x,
@@ -26,7 +26,7 @@ var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__
26
26
  spacer: C,
27
27
  html: k,
28
28
  custom: v
29
- }, m = e, h = a(F, null), b = p(() => {
29
+ }, m = e, h = o(F, null), b = p(() => {
30
30
  switch (m.block.columns) {
31
31
  case "2": return ["50%", "50%"];
32
32
  case "3": return [
@@ -47,21 +47,21 @@ var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__
47
47
  return j.value[e] || [];
48
48
  }
49
49
  function N(e) {
50
- return D(e, h, t);
50
+ return D(e, h, u);
51
51
  }
52
- return (e, t) => {
53
- let a = n("PreviewSectionBlock", !0);
54
- return l(), s("div", R, [o("div", z, [(l(!0), s(d, null, c(j.value, (e, t) => (l(), s("div", {
55
- key: t,
56
- style: r({ width: b.value[t] })
57
- }, [(l(!0), s(d, null, c(M(t), (e) => (l(), s("div", {
52
+ return (e, o) => {
53
+ let u = a("PreviewSectionBlock", !0);
54
+ return t(), l("div", R, [c("div", z, [(t(!0), l(f, null, i(j.value, (e, a) => (t(), l("div", {
55
+ key: a,
56
+ style: n({ width: b.value[a] })
57
+ }, [(t(!0), l(f, null, i(M(a), (e) => (t(), l("div", {
58
58
  key: e.id,
59
- style: r(f(y)(e))
60
- }, [e.type === "section" ? (l(), u(a, {
59
+ style: n(s(y)(e))
60
+ }, [e.type === "section" ? (t(), d(u, {
61
61
  key: 0,
62
62
  block: e,
63
63
  viewport: "desktop"
64
- }, null, 8, ["block"])) : (l(), u(i(N(e)), {
64
+ }, null, 8, ["block"])) : (t(), d(r(N(e)), {
65
65
  key: 1,
66
66
  block: e,
67
67
  viewport: "desktop"
@@ -79,9 +79,9 @@ var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__
79
79
  }
80
80
  },
81
81
  setup(e) {
82
- let n = e, m = a(F), R = a(N, null), z = a(M, null), H = a(j, null);
83
- t(P, p(() => H?.value ?? !1));
84
- let U = p(() => n.applyConditionFilter ? n.blocks.filter((e) => !z?.isHidden(e.id)) : n.blocks), W = p(() => I(R?.content.value.settings, n.viewport)), G = p(() => R ? b(R.content.value.settings) : {}), K = p(() => R?.content.value.settings?.locale?.trim() || void 0), q = p(() => h(R?.content.value.settings ?? { locale: "en" })), J = p(() => R?.content.value.settings.backgroundColor || "var(--tpl-canvas-bg)"), Y = p(() => W.value + 192), X = {
82
+ let a = e, m = o(F), R = o(N, null), z = o(M, null), H = o(P, null);
83
+ u(j, p(() => H?.value ?? !1));
84
+ let U = p(() => a.applyConditionFilter ? a.blocks.filter((e) => !z?.isHidden(e.id)) : a.blocks), W = p(() => I(R?.content.value.settings, a.viewport)), G = p(() => R ? b(R.content.value.settings) : {}), K = p(() => R?.content.value.settings?.locale?.trim() || void 0), q = p(() => h(R?.content.value.settings ?? { locale: "en" })), J = p(() => R?.content.value.settings.backgroundColor || "var(--tpl-canvas-bg)"), Y = p(() => W.value + 192), X = {
85
85
  section: B,
86
86
  title: w,
87
87
  paragraph: T,
@@ -99,30 +99,30 @@ var R = { class: "tpl:w-full" }, z = { class: "tpl:flex tpl:gap-0" }, B = /* @__
99
99
  function Z(e) {
100
100
  return D(e, m, X);
101
101
  }
102
- return (t, n) => (l(), s("div", {
102
+ return (a, o) => (t(), l("div", {
103
103
  "data-testid": "block-preview-stage",
104
104
  class: "tpl:pointer-events-none tpl:mx-auto tpl:flex tpl:select-none tpl:justify-center tpl:rounded-lg",
105
- style: r({
105
+ style: n({
106
106
  width: `${Y.value}px`,
107
107
  minWidth: `${W.value}px`,
108
108
  maxWidth: "100%",
109
109
  backgroundColor: J.value,
110
110
  boxShadow: "var(--tpl-shadow-sm)"
111
111
  })
112
- }, [o("div", {
112
+ }, [c("div", {
113
113
  "data-testid": "block-preview-canvas",
114
114
  lang: K.value,
115
115
  dir: q.value,
116
- style: r({
116
+ style: n({
117
117
  width: `${W.value}px`,
118
- transition: f(L),
118
+ transition: s(L),
119
119
  ...G.value
120
120
  })
121
- }, [(l(!0), s(d, null, c(U.value, (t) => (l(), s("div", {
122
- key: t.id,
123
- style: r(f(y)(t))
124
- }, [(l(), u(i(Z(t)), {
125
- block: t,
121
+ }, [(t(!0), l(f, null, i(U.value, (i) => (t(), l("div", {
122
+ key: i.id,
123
+ style: n(s(y)(i))
124
+ }, [(t(), d(r(Z(i)), {
125
+ block: i,
126
126
  viewport: e.viewport
127
127
  }, null, 8, ["block", "viewport"]))], 4))), 128))], 12, V)], 4));
128
128
  }
@@ -0,0 +1,59 @@
1
+ import { A as e, B as t, _ as n, at as r, c as i, d as a, g as o, h as s, jt as c, kt as l, l as u, r as d, u as f, v as p } from "./vue.runtime.esm-bundler-DShF3P6k.js";
2
+ import { c as m, t as h } from "./runtime-dom.esm-bundler-PnoZU512.js";
3
+ import { t as g } from "./sparkles-R0ZQHa6F.js";
4
+ import { n as _ } from "./useCloudI18n-BLyh_e2T.js";
5
+ //#region src/cloud/components/CloudHeaderExtras.vue?vue&type=script&setup=true&lang.ts
6
+ var v = {
7
+ key: 0,
8
+ "data-testid": "cloud-template-usage",
9
+ class: "tpl:text-xs tpl:opacity-60 tpl:text-[var(--tpl-text-muted)]"
10
+ }, y = ["aria-expanded"], b = {
11
+ key: 0,
12
+ class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
13
+ }, x = /* @__PURE__ */ p({
14
+ __name: "CloudHeaderExtras",
15
+ props: {
16
+ part: {},
17
+ cloud: {}
18
+ },
19
+ setup(p) {
20
+ let x = n(() => import("./CollaboratorBar-DAITu0hz.js")), S = n(() => import("./AiFeatureMenu-BF0i0vA4.js")), { t: C, format: w } = _();
21
+ return (n, _) => p.part === "left" ? (e(), a(d, { key: 0 }, [p.cloud.featureFlags.templateLimit.value === null ? f("", !0) : (e(), a("span", v, c(r(w)(r(C).header.templatesUsed, {
22
+ used: p.cloud.featureFlags.templateCount.value,
23
+ max: p.cloud.featureFlags.templateLimit.value
24
+ })), 1)), p.cloud.collaboration && p.cloud.isCollaborationEnabled.value ? (e(), u(r(x), {
25
+ key: 1,
26
+ collaborators: p.cloud.collaboration.collaborators.value,
27
+ "is-connected": p.cloud.websocket.isConnected.value
28
+ }, null, 8, ["collaborators", "is-connected"])) : f("", !0)], 64)) : p.part === "right" ? (e(), a(d, { key: 1 }, [p.cloud.featureFlags.canUseAiGeneration.value && p.cloud.featureFlags.hasTemplateSaved.value ? (e(), a("div", {
29
+ key: 0,
30
+ ref: (e) => p.cloud.panelState.aiMenuRef.value = e,
31
+ class: "tpl:relative"
32
+ }, [i("button", {
33
+ type: "button",
34
+ "data-testid": "ai-menu-trigger",
35
+ "aria-expanded": p.cloud.panelState.aiMenuOpen.value,
36
+ class: l(["tpl-ai-btn tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-4 tpl:py-2 tpl:text-sm tpl:font-semibold tpl:whitespace-nowrap tpl:transition-all tpl:duration-200", p.cloud.panelState.aiButtonActive.value ? "tpl-ai-btn--active" : "tpl-ai-btn--idle"]),
37
+ onClick: _[0] ||= m((...e) => p.cloud.panelState.toggleAiMenu && p.cloud.panelState.toggleAiMenu(...e), ["stop"])
38
+ }, [o(r(g), {
39
+ size: 16,
40
+ "stroke-width": 2,
41
+ class: "tpl-ai-btn-icon"
42
+ }), s(" " + c(r(C).aiChat.button), 1)], 10, y), o(h, {
43
+ "enter-active-class": "tpl:transition-all tpl:ease-out",
44
+ "enter-from-class": "tpl:scale-95 tpl:opacity-0",
45
+ "enter-to-class": "tpl:scale-100 tpl:opacity-100",
46
+ "leave-active-class": "tpl:transition-all tpl:duration-100 tpl:ease-in",
47
+ "leave-from-class": "tpl:scale-100 tpl:opacity-100",
48
+ "leave-to-class": "tpl:scale-95 tpl:opacity-0"
49
+ }, {
50
+ default: t(() => [p.cloud.panelState.aiMenuOpen.value ? (e(), a("div", b, [o(r(S), {
51
+ "active-feature": p.cloud.panelState.activeAiFeature.value,
52
+ onSelect: p.cloud.panelState.handleAiFeatureSelect
53
+ }, null, 8, ["active-feature", "onSelect"])])) : f("", !0)]),
54
+ _: 1
55
+ })], 512)) : f("", !0)], 64)) : f("", !0);
56
+ }
57
+ });
58
+ //#endregion
59
+ export { x as default };