@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.
- package/README.md +3 -1
- package/dist/{AiChatSidebar-CMBz6Wix.js → AiChatSidebar-iVJDzqjr.js} +60 -60
- package/dist/AiFeatureMenu-DrLGc2H2.js +57 -0
- package/dist/{BlockIssueBadge-Buk3_6QF.js → BlockIssueBadge-BHysq7XQ.js} +11 -11
- package/dist/BlockPreviewCanvas-2WASf5A4.js +121 -0
- package/dist/CloudHeaderExtras-DWApyc4P.js +59 -0
- package/dist/CloudPanels-DvOhGdRj.js +232 -0
- package/dist/{CollaboratorBar-BGwbg9aN.js → CollaboratorBar-C6MC0UCk.js} +21 -21
- package/dist/ColorPicker-Di8L5TLQ.js +501 -0
- package/dist/CommentsPanel-D5wQB1Kf.js +18 -0
- package/dist/CommentsSidebar-BoTIxpLE.js +481 -0
- package/dist/{cdn/chunks/CountdownBlock-vLTkTI9e.js → CountdownBlock-BFX8iU90.js} +19 -21
- package/dist/{cdn/chunks/CountdownToolbar-DPjcgcVR.js → CountdownToolbar-d9QM4m5x.js} +52 -53
- package/dist/{DesignReferenceSidebar-Bx96XFmK.js → DesignReferenceSidebar-DKsx2TiL.js} +72 -71
- package/dist/{IssuesPanel-Do7RLXsP.js → IssuesPanel-flKKwKpM.js} +38 -38
- package/dist/{LoadingTrack-BexpNuTV.js → LoadingTrack-C2T8ixEL.js} +3 -3
- package/dist/{MergeTagModeToggle-P-UguQHc.js → MergeTagModeToggle-PKCoKAoF.js} +43 -43
- package/dist/{MergeTagSuggestion-BJ43ihWR.js → MergeTagSuggestion-DGha0WRp.js} +46 -46
- package/dist/{cdn/chunks/NumberWithSuffix-BXrRdfq1.js → NumberWithSuffix-D9mPtMJB.js} +42 -44
- package/dist/{ParagraphEditor-6WN5jmXr.js → ParagraphEditor-iwTjkjtx.js} +200 -198
- package/dist/RestoreVersionDialog-DyMPGfsr.js +86 -0
- package/dist/{RichTextEditorContent-fbYJXAio.js → RichTextEditorContent-BVXG9oF4.js} +44 -44
- package/dist/SaveBlockDialog-BMCAIfK9.js +266 -0
- package/dist/{SavedBlocksBrowserModal-GMrajvfV.js → SavedBlocksBrowserModal-p5ma1qay.js} +116 -115
- package/dist/{cdn/chunks/SavedBlocksPanels-CUtYoi5Z.js → SavedBlocksPanels-BsiSstsZ.js} +9 -11
- package/dist/{SavedBlocksPickBar-Dk_IaMO9.js → SavedBlocksPickBar-fU4Mjm-8.js} +17 -17
- package/dist/{TemplateScoringPanel-BZUsb3FD.js → TemplateScoringPanel-Bv_bBsJi.js} +87 -87
- package/dist/TestEmailModal-EFYcrmTk.js +206 -0
- package/dist/{cdn/chunks/TestEmailPanel-B8y7JabA.js → TestEmailPanel-ljriUqs1.js} +4 -6
- package/dist/TitleEditor-BqRW7HTz.js +198 -0
- package/dist/TplModal-CTC9-w6B.js +49 -0
- package/dist/VersionHistoryMenu-Cq4rH56t.js +155 -0
- package/dist/VersionHistoryPanels-GkxkBiSi.js +46 -0
- package/dist/VersionPreviewBanner-BdtTu9mI.js +38 -0
- package/dist/{blockTypeIcons-C7wRSaT3.js → blockTypeIcons-CIrMr1SJ.js} +6 -6
- package/dist/bundle-stats.json +8 -8
- package/dist/{ca-D1zgI9fQ.js → ca-CEuJ6IRr.js} +73 -106
- package/dist/cdn/chunks/{AiChatSidebar-CQ8KUmNB.js → AiChatSidebar-DTUoBH5a.js} +54 -54
- package/dist/cdn/chunks/AiChatSidebar-DTUoBH5a.js.map +1 -0
- package/dist/cdn/chunks/AiFeatureMenu-BQz9Kczt.js +57 -0
- package/dist/cdn/chunks/AiFeatureMenu-BQz9Kczt.js.map +1 -0
- package/dist/cdn/chunks/{BlockIssueBadge-BEEY9o2o.js → BlockIssueBadge-UzSSOM_2.js} +13 -13
- package/dist/cdn/chunks/{BlockIssueBadge-BEEY9o2o.js.map → BlockIssueBadge-UzSSOM_2.js.map} +1 -1
- package/dist/cdn/chunks/{BlockPreviewCanvas-msj619wT.js → BlockPreviewCanvas-40ocpXDD.js} +42 -42
- package/dist/cdn/chunks/{BlockPreviewCanvas-msj619wT.js.map → BlockPreviewCanvas-40ocpXDD.js.map} +1 -1
- package/dist/cdn/chunks/CloudHeaderExtras-F_ySlW1S.js +60 -0
- package/dist/cdn/chunks/CloudHeaderExtras-F_ySlW1S.js.map +1 -0
- package/dist/cdn/chunks/CloudPanels-C34bcHpc.js +232 -0
- package/dist/cdn/chunks/CloudPanels-C34bcHpc.js.map +1 -0
- package/dist/cdn/chunks/{CollaboratorBar-G_sZDZXw.js → CollaboratorBar-WBtrPPnM.js} +22 -22
- package/dist/cdn/chunks/CollaboratorBar-WBtrPPnM.js.map +1 -0
- package/dist/cdn/chunks/ColorPicker-CxKYd_8N.js +502 -0
- package/dist/cdn/chunks/ColorPicker-CxKYd_8N.js.map +1 -0
- package/dist/cdn/chunks/CommentsPanel-jzZ2X0P4.js +20 -0
- package/dist/cdn/chunks/CommentsPanel-jzZ2X0P4.js.map +1 -0
- package/dist/cdn/chunks/CommentsSidebar-Dxke-vUP.js +460 -0
- package/dist/cdn/chunks/CommentsSidebar-Dxke-vUP.js.map +1 -0
- package/dist/{CountdownBlock-DuyvGcr8.js → cdn/chunks/CountdownBlock-BYSrJWxg.js} +25 -23
- package/dist/cdn/chunks/{CountdownBlock-vLTkTI9e.js.map → CountdownBlock-BYSrJWxg.js.map} +1 -1
- package/dist/{CountdownToolbar-CBE9wRaV.js → cdn/chunks/CountdownToolbar-pVbkPNVo.js} +66 -63
- package/dist/cdn/chunks/{CountdownToolbar-DPjcgcVR.js.map → CountdownToolbar-pVbkPNVo.js.map} +1 -1
- package/dist/cdn/chunks/{DesignReferenceSidebar-B-HFXV0W.js → DesignReferenceSidebar-sZWciECR.js} +64 -64
- package/dist/cdn/chunks/DesignReferenceSidebar-sZWciECR.js.map +1 -0
- package/dist/cdn/chunks/{IssuesPanel-DKTS4QVb.js → IssuesPanel-CHtetM9i.js} +36 -36
- package/dist/cdn/chunks/IssuesPanel-CHtetM9i.js.map +1 -0
- package/dist/cdn/chunks/{LoadingTrack-C52ZGL5q.js → LoadingTrack-Dp_QZvAK.js} +3 -3
- package/dist/cdn/chunks/{LoadingTrack-C52ZGL5q.js.map → LoadingTrack-Dp_QZvAK.js.map} +1 -1
- package/dist/cdn/chunks/{MergeTagModeToggle-DQ79SqQc.js → MergeTagModeToggle-ZwW-5EeN.js} +39 -39
- package/dist/cdn/chunks/{MergeTagModeToggle-DQ79SqQc.js.map → MergeTagModeToggle-ZwW-5EeN.js.map} +1 -1
- package/dist/cdn/chunks/{MergeTagSuggestion-Dn8dExNa.js → MergeTagSuggestion-DhllqTA3.js} +47 -47
- package/dist/cdn/chunks/MergeTagSuggestion-DhllqTA3.js.map +1 -0
- package/dist/{NumberWithSuffix-D37ZWiZh.js → cdn/chunks/NumberWithSuffix-mm6AfIv4.js} +37 -35
- package/dist/cdn/chunks/NumberWithSuffix-mm6AfIv4.js.map +1 -0
- package/dist/cdn/chunks/{ParagraphEditor-CZ5Z6AgG.js → ParagraphEditor-BBcIQQK2.js} +234 -233
- package/dist/cdn/chunks/ParagraphEditor-BBcIQQK2.js.map +1 -0
- package/dist/cdn/chunks/RestoreVersionDialog-DNUZHFa_.js +87 -0
- package/dist/cdn/chunks/RestoreVersionDialog-DNUZHFa_.js.map +1 -0
- package/dist/cdn/chunks/{RichTextEditorContent-DtL49Jpo.js → RichTextEditorContent-Cl-acKAD.js} +44 -44
- package/dist/cdn/chunks/RichTextEditorContent-Cl-acKAD.js.map +1 -0
- package/dist/cdn/chunks/SaveBlockDialog-BXTZ729e.js +265 -0
- package/dist/cdn/chunks/SaveBlockDialog-BXTZ729e.js.map +1 -0
- package/dist/cdn/chunks/{SavedBlocksBrowserModal-BkQXEUE2.js → SavedBlocksBrowserModal-BqGNBpRR.js} +114 -113
- package/dist/cdn/chunks/SavedBlocksBrowserModal-BqGNBpRR.js.map +1 -0
- package/dist/{SavedBlocksPanels-DEPmNhi6.js → cdn/chunks/SavedBlocksPanels-nbK0UQTp.js} +11 -9
- package/dist/cdn/chunks/{SavedBlocksPanels-CUtYoi5Z.js.map → SavedBlocksPanels-nbK0UQTp.js.map} +1 -1
- package/dist/cdn/chunks/{SavedBlocksPickBar-C80qJykl.js → SavedBlocksPickBar-B9mbw3Gk.js} +17 -17
- package/dist/cdn/chunks/SavedBlocksPickBar-B9mbw3Gk.js.map +1 -0
- package/dist/cdn/chunks/{TemplateScoringPanel-NucRtAP0.js → TemplateScoringPanel-Xdkp2EMY.js} +81 -81
- package/dist/cdn/chunks/TemplateScoringPanel-Xdkp2EMY.js.map +1 -0
- package/dist/cdn/chunks/TestEmailModal-DE6fi3he.js +206 -0
- package/dist/cdn/chunks/TestEmailModal-DE6fi3he.js.map +1 -0
- package/dist/{TestEmailPanel-DubocPxf.js → cdn/chunks/TestEmailPanel-CAjQDXle.js} +6 -4
- package/dist/cdn/chunks/{TestEmailPanel-B8y7JabA.js.map → TestEmailPanel-CAjQDXle.js.map} +1 -1
- package/dist/cdn/chunks/{TitleEditor-C8WDXf4P.js → TitleEditor-BP0ewaWF.js} +83 -83
- package/dist/cdn/chunks/TitleEditor-BP0ewaWF.js.map +1 -0
- package/dist/cdn/chunks/TplModal-C4kJduTr.js +50 -0
- package/dist/cdn/chunks/TplModal-C4kJduTr.js.map +1 -0
- package/dist/cdn/chunks/VersionHistoryMenu-_MAj3qZj.js +148 -0
- package/dist/cdn/chunks/VersionHistoryMenu-_MAj3qZj.js.map +1 -0
- package/dist/cdn/chunks/VersionHistoryPanels-DMq2PRee.js +48 -0
- package/dist/cdn/chunks/VersionHistoryPanels-DMq2PRee.js.map +1 -0
- package/dist/cdn/chunks/VersionPreviewBanner-04CL1SGY.js +40 -0
- package/dist/cdn/chunks/VersionPreviewBanner-04CL1SGY.js.map +1 -0
- package/dist/cdn/chunks/{blockTypeIcons-FXlMM3PL.js → blockTypeIcons-hX_W4dqo.js} +2 -2
- package/dist/cdn/chunks/{blockTypeIcons-FXlMM3PL.js.map → blockTypeIcons-hX_W4dqo.js.map} +1 -1
- package/dist/cdn/chunks/{ca-D1zgI9fQ.js → ca-CEuJ6IRr.js} +74 -107
- package/dist/cdn/chunks/ca-CEuJ6IRr.js.map +1 -0
- package/dist/{cloud-qINCmQbn.js → cdn/chunks/cloud-BA0OpRh-.js} +400 -609
- package/dist/cdn/chunks/cloud-BA0OpRh-.js.map +1 -0
- package/dist/cdn/chunks/createCloudRuntime-gXA8_QRU.js +344 -0
- package/dist/cdn/chunks/createCloudRuntime-gXA8_QRU.js.map +1 -0
- package/dist/{de-uVoSP1xF.js → cdn/chunks/de-BytZwgn6.js} +4 -88
- package/dist/cdn/chunks/de-BytZwgn6.js.map +1 -0
- package/dist/{de-DHra3lvx.js → cdn/chunks/de-aRxhZF_K.js} +75 -106
- package/dist/cdn/chunks/de-aRxhZF_K.js.map +1 -0
- package/dist/cdn/chunks/{dist-B2HKGHnc.js → dist-CM8TB0VD.js} +136 -136
- package/dist/cdn/chunks/{dist-B2HKGHnc.js.map → dist-CM8TB0VD.js.map} +1 -1
- package/dist/cdn/chunks/{dist-C6z8AjBC.js → dist-CYLJiSiH.js} +63 -63
- package/dist/cdn/chunks/{dist-C6z8AjBC.js.map → dist-CYLJiSiH.js.map} +1 -1
- package/dist/cdn/chunks/{draggable-DCs9qL-b.js → draggable-BfpsXFg7.js} +916 -905
- package/dist/cdn/chunks/{draggable-DCs9qL-b.js.map → draggable-BfpsXFg7.js.map} +1 -1
- package/dist/cdn/chunks/{en-DE_y1YWU.js → en-BCgVx9zM.js} +4 -3
- package/dist/cdn/chunks/{en-DE_y1YWU.js.map → en-BCgVx9zM.js.map} +1 -1
- package/dist/{en-DlqX2YWZ.js → cdn/chunks/en-BX4V_7YO.js} +75 -106
- package/dist/cdn/chunks/en-BX4V_7YO.js.map +1 -0
- package/dist/{en-CjhsJxb-.js → cdn/chunks/en-DyOSV0lY.js} +4 -88
- package/dist/cdn/chunks/en-DyOSV0lY.js.map +1 -0
- package/dist/{es-Cuss2snv.js → cdn/chunks/es-CA9uQ-5x.js} +75 -106
- package/dist/cdn/chunks/es-CA9uQ-5x.js.map +1 -0
- package/dist/cdn/chunks/{extensions-qhcN3RMT.js → extensions-CMcVw2uu.js} +53 -53
- package/dist/cdn/chunks/{extensions-qhcN3RMT.js.map → extensions-CMcVw2uu.js.map} +1 -1
- package/dist/{fr-Cm85vB2g.js → cdn/chunks/fr-iBuE60Ap.js} +75 -106
- package/dist/cdn/chunks/fr-iBuE60Ap.js.map +1 -0
- package/dist/cdn/chunks/{icons-CvYN6zrM.js → icons-C36Ha5VU.js} +11 -11
- package/dist/cdn/chunks/{icons-CvYN6zrM.js.map → icons-C36Ha5VU.js.map} +1 -1
- package/dist/{keys-fwF3qZax.js → cdn/chunks/keys-CbQuRX85.js} +6 -4
- package/dist/cdn/chunks/keys-CbQuRX85.js.map +1 -0
- package/dist/cdn/chunks/logger-ByvdoAwq.js +23 -0
- package/dist/cdn/chunks/logger-ByvdoAwq.js.map +1 -0
- package/dist/{nl-dmiIX7oT.js → cdn/chunks/nl-Btw4ojNo.js} +75 -106
- package/dist/cdn/chunks/nl-Btw4ojNo.js.map +1 -0
- package/dist/cdn/chunks/preRenderCustomBlocks-CbA3RcAy.js +23 -0
- package/dist/cdn/chunks/preRenderCustomBlocks-CbA3RcAy.js.map +1 -0
- package/dist/{pt-BR-CTzHTqJD.js → cdn/chunks/pt-BR-C1WLSGDh.js} +4 -88
- package/dist/cdn/chunks/pt-BR-C1WLSGDh.js.map +1 -0
- package/dist/{pt-BR-CaIG-7EM.js → cdn/chunks/pt-BR-GjVsCqbN.js} +75 -106
- package/dist/cdn/chunks/pt-BR-GjVsCqbN.js.map +1 -0
- package/dist/cdn/chunks/src-B_QJduQD.js.map +1 -1
- package/dist/cdn/chunks/{src-xkGep9eN.js → src-CoHDh8Ua.js} +1485 -1483
- package/dist/cdn/chunks/src-CoHDh8Ua.js.map +1 -0
- package/dist/cdn/chunks/{src-BwbnXShT.js → src-Ct4Fsx3t.js} +148 -134
- package/dist/cdn/chunks/src-Ct4Fsx3t.js.map +1 -0
- package/dist/cdn/chunks/styleConstants-9oK5kn21.js +59 -0
- package/dist/cdn/chunks/styleConstants-9oK5kn21.js.map +1 -0
- package/dist/cdn/chunks/timeouts-DHPZQ0G3.js +6 -0
- package/dist/cdn/chunks/timeouts-DHPZQ0G3.js.map +1 -0
- package/dist/cdn/chunks/{tiptap-C44S1Cmh.js → tiptap-DmpGap5g.js} +40 -40
- package/dist/cdn/chunks/{tiptap-C44S1Cmh.js.map → tiptap-DmpGap5g.js.map} +1 -1
- package/dist/cdn/chunks/{useAliveFlag-Dxwgo6P4.js → useAliveFlag-Dtm174fG.js} +2 -2
- package/dist/cdn/chunks/{useAliveFlag-Dxwgo6P4.js.map → useAliveFlag-Dtm174fG.js.map} +1 -1
- package/dist/cdn/chunks/{useCloudI18n-8wkJtuJD.js → useCloudI18n-NVa1aeY8.js} +5 -5
- package/dist/cdn/chunks/{useCloudI18n-8wkJtuJD.js.map → useCloudI18n-NVa1aeY8.js.map} +1 -1
- package/dist/cdn/chunks/{useEditorCore-CcgxY-Gy.js → useEditorCore-DC8gmfs6.js} +1434 -1147
- package/dist/cdn/chunks/useEditorCore-DC8gmfs6.js.map +1 -0
- package/dist/cdn/chunks/{useI18n-UMs0F71x.js → useI18n-DVWCJJFH.js} +5 -5
- package/dist/cdn/chunks/{useI18n-UMs0F71x.js.map → useI18n-DVWCJJFH.js.map} +1 -1
- package/dist/cdn/chunks/{useMergeTag-JmXOtpln.js → useMergeTag-BfZBRPQp.js} +4 -4
- package/dist/cdn/chunks/{useMergeTag-JmXOtpln.js.map → useMergeTag-BfZBRPQp.js.map} +1 -1
- package/dist/cdn/chunks/{usePopoverPosition-cf8Y-ynK.js → usePopoverPosition-BC-HA7TK.js} +3 -3
- package/dist/cdn/chunks/{usePopoverPosition-cf8Y-ynK.js.map → usePopoverPosition-BC-HA7TK.js.map} +1 -1
- package/dist/cdn/editor.css +1 -1
- package/dist/cdn/editor.js +5119 -284
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{check-On4TSac-.js → check-DZbmkMQe.js} +1 -1
- package/dist/{chevron-down-69EiBGoB.js → chevron-down-nYScOLeZ.js} +1 -1
- package/dist/{chevron-up-Dh3MG1Dw.js → chevron-up-CpYpDLnc.js} +1 -1
- package/dist/{circle-alert-cilwzafX.js → circle-alert-CuuK6thq.js} +1 -1
- package/dist/{clock-Dt0APH92.js → clock-DxkrtqOr.js} +1 -1
- package/dist/cloud-BAefVBb_.js +1444 -0
- package/dist/createCloudRuntime-Bt8W-ajI.js +342 -0
- package/dist/{createLucideIcon-C8WzBYCv.js → createLucideIcon-L-wQXW_R.js} +9 -9
- package/dist/{cdn/chunks/de-uVoSP1xF.js → de-BytZwgn6.js} +2 -90
- package/dist/{cdn/chunks/de-DHra3lvx.js → de-aRxhZF_K.js} +73 -108
- package/dist/dist-B5iReTtK.js +251 -0
- package/dist/{dist-Cl8J0IES.js → dist-Ck9roB6K.js} +42 -42
- package/dist/{dist-BpKxrUi2.js → dist-CqcGTIiX.js} +46 -46
- package/dist/{cdn/chunks/en-DlqX2YWZ.js → en-BX4V_7YO.js} +73 -108
- package/dist/{cdn/chunks/en-CjhsJxb-.js → en-DyOSV0lY.js} +2 -90
- package/dist/{cdn/chunks/es-Cuss2snv.js → es-CA9uQ-5x.js} +73 -108
- package/dist/{extensions-Cwg9S-0f.js → extensions-CX87G4aL.js} +42 -42
- package/dist/{cdn/chunks/fr-Cm85vB2g.js → fr-iBuE60Ap.js} +73 -108
- package/dist/{image-up-Ceggh_R3.js → image-up-DouZRGVt.js} +1 -1
- package/dist/index.d.ts +499 -23
- package/dist/{info-DO5odBcZ.js → info-puX5V6Iq.js} +1 -1
- package/dist/{cdn/chunks/keys-Cmc2Yl3D.js → keys-BxixS0TN.js} +4 -6
- package/dist/{list-checks-BSkPKbuI.js → list-checks-jw-ZlvWY.js} +1 -1
- package/dist/{loader-circle-bO7o7_HD.js → loader-circle-DqTxB7Kr.js} +1 -1
- package/dist/logger-BBlvSn6q.js +21 -0
- package/dist/{message-circle-BEkAk65X.js → message-circle-BZ7YpB22.js} +1 -1
- package/dist/{cdn/chunks/nl-dmiIX7oT.js → nl-Btw4ojNo.js} +73 -108
- package/dist/{pencil-t6m0EtKL.js → pencil-DmbRhTJu.js} +1 -1
- package/dist/preRenderCustomBlocks-BebjKtmw.js +21 -0
- package/dist/{cdn/chunks/pt-BR-CTzHTqJD.js → pt-BR-C1WLSGDh.js} +2 -90
- package/dist/{cdn/chunks/pt-BR-CaIG-7EM.js → pt-BR-GjVsCqbN.js} +73 -108
- package/dist/{refresh-cw-CkOYVzK5.js → refresh-cw-OK_O-cL0.js} +1 -1
- package/dist/{runtime-dom.esm-bundler-CepEmvwF.js → runtime-dom.esm-bundler-BgKXIPLV.js} +144 -144
- package/dist/{scan-line-DwSVj25O.js → scan-line-DyaSTsJ5.js} +1 -1
- package/dist/{send-CWsWN8PQ.js → send-B-wasJJC.js} +1 -1
- package/dist/{shield-check-qje8Kufw.js → shield-check-DUIyRrTo.js} +1 -1
- package/dist/{sparkles-DumaWRW-.js → sparkles-DYEMATWC.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/styleConstants-9oK5kn21.js +57 -0
- package/dist/templatical-editor.js +5319 -289
- package/dist/{text-align-start-Ir8Ah4mT.js → text-align-start-CzjLeBLe.js} +1 -1
- package/dist/timeouts-DHPZQ0G3.js +4 -0
- package/dist/{trash-2-CklAFCmO.js → trash-2-C0shEPry.js} +1 -1
- package/dist/{triangle-alert-BBi4n93g.js → triangle-alert-Fw0ce8oQ.js} +1 -1
- package/dist/{upload-sVqqppuv.js → upload-D69C2CBx.js} +3 -4
- package/dist/{useAliveFlag-cvyBxHp7.js → useAliveFlag-BGIAZii_.js} +1 -1
- package/dist/{useCloudI18n-DKVm6PCa.js → useCloudI18n-CAZTZ9_a.js} +2 -2
- package/dist/{useEditorCore-P4UkhcyS.js → useEditorCore-CFLzobo_.js} +1604 -1320
- package/dist/{useI18n-DoVKdCTH.js → useI18n-BfXff_Sy.js} +2 -2
- package/dist/{useMergeTag-CYZk7dZD.js → useMergeTag-Dd4I7kge.js} +3 -3
- package/dist/usePopoverPosition-CxhCX3SQ.js +59 -0
- package/dist/{vue.runtime.esm-bundler-D1diBMsm.js → vue.runtime.esm-bundler-DzEsDRtY.js} +447 -436
- package/dist/{x-Mby7KlhS.js → x-BjTlFqRv.js} +1 -1
- package/package.json +8 -8
- package/dist/AiFeatureMenu-Cy-PVrNT.js +0 -63
- package/dist/BlockPreviewCanvas-BZKslwGI.js +0 -121
- package/dist/CloudEditor-CPRkQCRa.js +0 -1188
- package/dist/ColorPicker-ClETsjA3.js +0 -550
- package/dist/CommentsSidebar-CdRCCSDD.js +0 -435
- package/dist/SaveBlockDialog-21vDlEBS.js +0 -265
- package/dist/SnapshotHistory-Cb4WW2gf.js +0 -128
- package/dist/TestEmailModal-BHDKmd6B.js +0 -205
- package/dist/TitleEditor-Cy4B3UNe.js +0 -198
- package/dist/TplModal-Dv9zgSWI.js +0 -49
- package/dist/cdn/chunks/AiChatSidebar-CQ8KUmNB.js.map +0 -1
- package/dist/cdn/chunks/AiFeatureMenu-Cb9gaRBn.js +0 -63
- package/dist/cdn/chunks/AiFeatureMenu-Cb9gaRBn.js.map +0 -1
- package/dist/cdn/chunks/CloudEditor-DbyEsIxu.js +0 -1166
- package/dist/cdn/chunks/CloudEditor-DbyEsIxu.js.map +0 -1
- package/dist/cdn/chunks/CollaboratorBar-G_sZDZXw.js.map +0 -1
- package/dist/cdn/chunks/ColorPicker-W_UyiVGc.js +0 -552
- package/dist/cdn/chunks/ColorPicker-W_UyiVGc.js.map +0 -1
- package/dist/cdn/chunks/CommentsSidebar-BLRZRSSC.js +0 -412
- package/dist/cdn/chunks/CommentsSidebar-BLRZRSSC.js.map +0 -1
- package/dist/cdn/chunks/DesignReferenceSidebar-B-HFXV0W.js.map +0 -1
- package/dist/cdn/chunks/IssuesPanel-DKTS4QVb.js.map +0 -1
- package/dist/cdn/chunks/MergeTagSuggestion-Dn8dExNa.js.map +0 -1
- package/dist/cdn/chunks/NumberWithSuffix-BXrRdfq1.js.map +0 -1
- package/dist/cdn/chunks/ParagraphEditor-CZ5Z6AgG.js.map +0 -1
- package/dist/cdn/chunks/RichTextEditorContent-DtL49Jpo.js.map +0 -1
- package/dist/cdn/chunks/SaveBlockDialog-CVIVZEuy.js +0 -264
- package/dist/cdn/chunks/SaveBlockDialog-CVIVZEuy.js.map +0 -1
- package/dist/cdn/chunks/SavedBlocksBrowserModal-BkQXEUE2.js.map +0 -1
- package/dist/cdn/chunks/SavedBlocksPickBar-C80qJykl.js.map +0 -1
- package/dist/cdn/chunks/SnapshotHistory-DFinMrg_.js +0 -121
- package/dist/cdn/chunks/SnapshotHistory-DFinMrg_.js.map +0 -1
- package/dist/cdn/chunks/TemplateScoringPanel-NucRtAP0.js.map +0 -1
- package/dist/cdn/chunks/TestEmailModal-IxS-QjeH.js +0 -205
- package/dist/cdn/chunks/TestEmailModal-IxS-QjeH.js.map +0 -1
- package/dist/cdn/chunks/TitleEditor-C8WDXf4P.js.map +0 -1
- package/dist/cdn/chunks/TplModal-Ce0QuHyo.js +0 -50
- package/dist/cdn/chunks/TplModal-Ce0QuHyo.js.map +0 -1
- package/dist/cdn/chunks/ca-D1zgI9fQ.js.map +0 -1
- package/dist/cdn/chunks/cloud-DcC8bPwn.js +0 -1787
- package/dist/cdn/chunks/cloud-DcC8bPwn.js.map +0 -1
- package/dist/cdn/chunks/de-DHra3lvx.js.map +0 -1
- package/dist/cdn/chunks/de-uVoSP1xF.js.map +0 -1
- package/dist/cdn/chunks/en-CjhsJxb-.js.map +0 -1
- package/dist/cdn/chunks/en-DlqX2YWZ.js.map +0 -1
- package/dist/cdn/chunks/es-Cuss2snv.js.map +0 -1
- package/dist/cdn/chunks/fr-Cm85vB2g.js.map +0 -1
- package/dist/cdn/chunks/keys-Cmc2Yl3D.js.map +0 -1
- package/dist/cdn/chunks/nl-dmiIX7oT.js.map +0 -1
- package/dist/cdn/chunks/pt-BR-CTzHTqJD.js.map +0 -1
- package/dist/cdn/chunks/pt-BR-CaIG-7EM.js.map +0 -1
- package/dist/cdn/chunks/src-BwbnXShT.js.map +0 -1
- package/dist/cdn/chunks/src-xkGep9eN.js.map +0 -1
- package/dist/cdn/chunks/styles-DLAfU4Uf.js +0 -4140
- package/dist/cdn/chunks/styles-DLAfU4Uf.js.map +0 -1
- package/dist/cdn/chunks/timeouts-SsLMC4a3.js +0 -6
- package/dist/cdn/chunks/timeouts-SsLMC4a3.js.map +0 -1
- package/dist/cdn/chunks/useEditorCore-CcgxY-Gy.js.map +0 -1
- package/dist/styles-Dx__pP9O.js +0 -4318
- package/dist/usePopoverPosition-C0dPEF4X.js +0 -308
|
@@ -1,265 +0,0 @@
|
|
|
1
|
-
import { A as e, Dt as t, E as n, Et as r, I as i, N as a, O as o, Ot as s, R as c, T as l, Y as u, _ as d, c as f, d as p, h as m, l as h, m as g, nt as _, r as v, s as y, u as b, x, z as S } from "./vue.runtime.esm-bundler-D1diBMsm.js";
|
|
2
|
-
import { a as C, c as w, s as T } from "./runtime-dom.esm-bundler-CepEmvwF.js";
|
|
3
|
-
import { H as E, P as D, c as O } from "./useEditorCore-P4UkhcyS.js";
|
|
4
|
-
import { G as k, R as A, g as j, p as M } from "./keys-fwF3qZax.js";
|
|
5
|
-
import { t as ee } from "./useI18n-DoVKdCTH.js";
|
|
6
|
-
import { t as te } from "./chevron-down-69EiBGoB.js";
|
|
7
|
-
import { t as N } from "./chevron-up-Dh3MG1Dw.js";
|
|
8
|
-
import { t as P } from "./loader-circle-bO7o7_HD.js";
|
|
9
|
-
import { n as F } from "./emailFrameWidth-BmFCN2dp.js";
|
|
10
|
-
import { t as I } from "./TplModal-Dv9zgSWI.js";
|
|
11
|
-
import { t as L } from "./BlockPreviewCanvas-BZKslwGI.js";
|
|
12
|
-
//#region src/components/SavedBlockPreviewRow.vue?vue&type=script&setup=true&lang.ts
|
|
13
|
-
var R = ["data-block-id"], z = ["aria-label", "title"], B = { class: "tpl:relative tpl:min-w-0 tpl:flex-1" }, V = {
|
|
14
|
-
key: 0,
|
|
15
|
-
"data-testid": "saved-blocks-preview-fade",
|
|
16
|
-
"aria-hidden": "true",
|
|
17
|
-
class: "tpl:pointer-events-none tpl:absolute tpl:inset-x-0 tpl:bottom-0 tpl:h-10",
|
|
18
|
-
style: { background: "linear-gradient(\n to bottom,\n transparent,\n var(--tpl-bg) 90%\n )" }
|
|
19
|
-
}, H = ["aria-label", "aria-expanded"], U = 240, W = /* @__PURE__ */ d({
|
|
20
|
-
__name: "SavedBlockPreviewRow",
|
|
21
|
-
props: {
|
|
22
|
-
block: {},
|
|
23
|
-
position: {},
|
|
24
|
-
total: {}
|
|
25
|
-
},
|
|
26
|
-
emits: ["move"],
|
|
27
|
-
setup(e, { emit: r }) {
|
|
28
|
-
let i = e, c = r, { t: d, format: v } = ee(), S = x(M, []), C = x(j, null), O = y(() => F(C?.content.value.settings)), k = u(null), A = u(null), P = u(1), I = u(null), W = u(!1), G = null, K = y(() => I.value !== null && I.value > U), q = y(() => I.value === null ? null : W.value || !K.value ? I.value : U);
|
|
29
|
-
function J() {
|
|
30
|
-
let e = k.value, t = A.value;
|
|
31
|
-
if (!e || !t) return;
|
|
32
|
-
let n = e.clientWidth;
|
|
33
|
-
if (n <= 0) return;
|
|
34
|
-
let r = Math.min(1, n / O.value);
|
|
35
|
-
P.value = r, I.value = t.offsetHeight * r;
|
|
36
|
-
}
|
|
37
|
-
n(() => {
|
|
38
|
-
J(), !(typeof ResizeObserver > "u") && (G = new ResizeObserver(() => J()), k.value && G.observe(k.value), A.value && G.observe(A.value));
|
|
39
|
-
}), l(() => {
|
|
40
|
-
G?.disconnect(), G = null;
|
|
41
|
-
});
|
|
42
|
-
let Y = y(() => E(i.block, d, S)), X = y(() => v(d.savedBlocks.reorderHandle, {
|
|
43
|
-
block: Y.value,
|
|
44
|
-
position: i.position,
|
|
45
|
-
total: i.total
|
|
46
|
-
})), Z = y(() => v(W.value ? d.savedBlocks.collapsePreview : d.savedBlocks.expandPreview, { block: Y.value }));
|
|
47
|
-
return (n, r) => (o(), p("div", {
|
|
48
|
-
"data-testid": "saved-blocks-reorder-row",
|
|
49
|
-
"data-block-id": e.block.id,
|
|
50
|
-
class: "tpl:flex tpl:items-start tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-md)] tpl:border tpl:p-1.5 tpl:border-[var(--tpl-border)]",
|
|
51
|
-
style: { "background-color": "var(--tpl-bg)" }
|
|
52
|
-
}, [f("button", {
|
|
53
|
-
type: "button",
|
|
54
|
-
"data-testid": "saved-blocks-reorder-handle",
|
|
55
|
-
class: "tpl-saved-block-reorder-handle tpl:mt-0.5 tpl:shrink-0 tpl:cursor-grab tpl:rounded tpl:border-none tpl:bg-transparent tpl:p-0.5 tpl:text-[var(--tpl-text-dim)]",
|
|
56
|
-
"aria-label": X.value,
|
|
57
|
-
title: _(d).savedBlocks.reorderHint,
|
|
58
|
-
onKeydown: [r[0] ||= T(w((e) => c("move", -1), ["prevent"]), ["up"]), r[1] ||= T(w((e) => c("move", 1), ["prevent"]), ["down"])]
|
|
59
|
-
}, [m(_(D), {
|
|
60
|
-
size: 14,
|
|
61
|
-
"stroke-width": 1.5
|
|
62
|
-
})], 40, z), f("div", B, [
|
|
63
|
-
f("div", {
|
|
64
|
-
ref_key: "frameEl",
|
|
65
|
-
ref: k,
|
|
66
|
-
class: "tpl:overflow-hidden",
|
|
67
|
-
style: t({ height: q.value === null ? void 0 : `${q.value}px` })
|
|
68
|
-
}, [f("div", {
|
|
69
|
-
ref_key: "contentEl",
|
|
70
|
-
ref: A,
|
|
71
|
-
style: t({
|
|
72
|
-
width: `${O.value}px`,
|
|
73
|
-
transform: `scale(${P.value})`,
|
|
74
|
-
transformOrigin: "top left"
|
|
75
|
-
})
|
|
76
|
-
}, [m(L, { blocks: [e.block] }, null, 8, ["blocks"])], 4)], 4),
|
|
77
|
-
K.value && !W.value ? (o(), p("div", V)) : b("", !0),
|
|
78
|
-
K.value ? (o(), p("button", {
|
|
79
|
-
key: 1,
|
|
80
|
-
type: "button",
|
|
81
|
-
"data-testid": "saved-blocks-preview-toggle",
|
|
82
|
-
class: "tpl:absolute tpl:bottom-1 tpl:right-1 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-0.5 tpl:rounded tpl:border tpl:px-1.5 tpl:py-0.5 tpl:text-[10px] tpl:font-medium tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-text-muted)]",
|
|
83
|
-
"aria-label": Z.value,
|
|
84
|
-
"aria-expanded": W.value,
|
|
85
|
-
onClick: r[2] ||= (e) => W.value = !W.value
|
|
86
|
-
}, [(o(), h(a(W.value ? _(N) : _(te)), {
|
|
87
|
-
size: 11,
|
|
88
|
-
"stroke-width": 2
|
|
89
|
-
})), g(" " + s(W.value ? _(d).savedBlocks.collapse : _(d).savedBlocks.expand), 1)], 8, H)) : b("", !0)
|
|
90
|
-
])], 8, R));
|
|
91
|
-
}
|
|
92
|
-
}), G = ["aria-busy"], K = {
|
|
93
|
-
id: "tpl-save-block-title",
|
|
94
|
-
class: "tpl:mb-4 tpl:shrink-0 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
|
|
95
|
-
}, q = { class: "tpl:mb-3 tpl:shrink-0" }, J = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Y = ["placeholder", "disabled"], X = { class: "tpl:mb-3 tpl:shrink-0" }, Z = {
|
|
96
|
-
for: "tpl-save-block-category",
|
|
97
|
-
class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]"
|
|
98
|
-
}, ne = ["placeholder", "disabled"], re = { id: "tpl-saved-block-categories" }, ie = ["value"], ae = {
|
|
99
|
-
"data-testid": "saved-blocks-save-summary",
|
|
100
|
-
class: "tpl:mb-1.5 tpl:shrink-0 tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
|
|
101
|
-
}, oe = { class: "tpl:text-[var(--tpl-text-dim)]" }, se = {
|
|
102
|
-
key: 0,
|
|
103
|
-
class: "tpl:mb-1.5 tpl:shrink-0 tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]"
|
|
104
|
-
}, ce = {
|
|
105
|
-
class: "tpl-sr-only",
|
|
106
|
-
role: "status",
|
|
107
|
-
"aria-live": "polite",
|
|
108
|
-
"aria-atomic": "true"
|
|
109
|
-
}, le = {
|
|
110
|
-
key: 1,
|
|
111
|
-
role: "alert",
|
|
112
|
-
class: "tpl:mb-3 tpl:shrink-0 tpl:text-xs tpl:text-[var(--tpl-danger)]"
|
|
113
|
-
}, ue = { class: "tpl:flex tpl:shrink-0 tpl:justify-end tpl:gap-2" }, de = ["disabled"], fe = ["disabled"], pe = {
|
|
114
|
-
key: 0,
|
|
115
|
-
class: "tpl:flex tpl:items-center tpl:gap-1.5"
|
|
116
|
-
}, me = { key: 1 }, Q = /* @__PURE__ */ d({
|
|
117
|
-
__name: "SaveBlockDialog",
|
|
118
|
-
props: {
|
|
119
|
-
visible: { type: Boolean },
|
|
120
|
-
pickedIds: {}
|
|
121
|
-
},
|
|
122
|
-
emits: ["close", "saved"],
|
|
123
|
-
setup(t, { emit: n }) {
|
|
124
|
-
let a = t, l = n, { t: d, format: w } = ee(), T = k(j, "SaveBlockDialog"), D = k(A, "SaveBlockDialog"), te = x(M, []), N = u(""), F = u(""), L = u(!1), R = u(null), z = u(""), B = u([]), V = y(() => {
|
|
125
|
-
let e = new Map(T.content.value.blocks.map((e) => [e.id, e]));
|
|
126
|
-
return B.value.map((t) => e.get(t)).filter((e) => e !== void 0);
|
|
127
|
-
}), H = y({
|
|
128
|
-
get: () => V.value,
|
|
129
|
-
set: (e) => {
|
|
130
|
-
B.value = e.map((e) => e.id);
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
function U(e, t) {
|
|
134
|
-
let n = V.value.map((e) => e.id), r = n.indexOf(e), i = r + t;
|
|
135
|
-
if (r === -1 || i < 0 || i >= n.length) return;
|
|
136
|
-
[n[r], n[i]] = [n[i], n[r]], B.value = n;
|
|
137
|
-
let a = V.value[i];
|
|
138
|
-
z.value = a ? w(d.savedBlocks.reorderAnnouncement, {
|
|
139
|
-
block: Q(a),
|
|
140
|
-
position: i + 1,
|
|
141
|
-
total: n.length
|
|
142
|
-
}) : "";
|
|
143
|
-
}
|
|
144
|
-
function Q(e) {
|
|
145
|
-
return E(e, d, te);
|
|
146
|
-
}
|
|
147
|
-
let he = y(() => V.value.map(Q).join(", "));
|
|
148
|
-
i(() => a.visible, (e) => {
|
|
149
|
-
e && (N.value = "", F.value = "", R.value = null, z.value = "", B.value = [...a.pickedIds]);
|
|
150
|
-
}, { immediate: !0 });
|
|
151
|
-
let ge = y(() => N.value.trim().length > 0 && V.value.length > 0 && !L.value);
|
|
152
|
-
async function _e() {
|
|
153
|
-
if (!ge.value) return;
|
|
154
|
-
let e = V.value;
|
|
155
|
-
if (e.length !== 0) {
|
|
156
|
-
L.value = !0, R.value = null;
|
|
157
|
-
try {
|
|
158
|
-
await D.create(N.value.trim(), e, F.value.trim() || void 0), l("saved"), l("close");
|
|
159
|
-
} catch (e) {
|
|
160
|
-
R.value = e.message;
|
|
161
|
-
} finally {
|
|
162
|
-
L.value = !1;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
function $() {
|
|
167
|
-
L.value || l("close");
|
|
168
|
-
}
|
|
169
|
-
function ve(e) {
|
|
170
|
-
e.key === "Enter" && !e.shiftKey && (e.preventDefault(), _e()), e.key === "Escape" && $();
|
|
171
|
-
}
|
|
172
|
-
return (n, i) => (o(), h(I, {
|
|
173
|
-
visible: t.visible,
|
|
174
|
-
onClose: $,
|
|
175
|
-
onKeydown: ve
|
|
176
|
-
}, {
|
|
177
|
-
default: c(() => [f("div", {
|
|
178
|
-
role: "dialog",
|
|
179
|
-
"aria-modal": "true",
|
|
180
|
-
"aria-busy": L.value,
|
|
181
|
-
"aria-labelledby": "tpl-save-block-title",
|
|
182
|
-
class: "tpl-scale-in tpl:mx-4 tpl:flex tpl:w-full tpl:max-w-2xl tpl:flex-col tpl:rounded-[var(--tpl-radius-lg)] tpl:p-5",
|
|
183
|
-
style: {
|
|
184
|
-
"background-color": "var(--tpl-bg-elevated)",
|
|
185
|
-
"box-shadow": "var(--tpl-shadow-xl)",
|
|
186
|
-
"max-height": "90vh"
|
|
187
|
-
}
|
|
188
|
-
}, [
|
|
189
|
-
f("h3", K, s(_(d).savedBlocks.saveAsBlock), 1),
|
|
190
|
-
f("div", q, [f("label", J, s(_(d).savedBlocks.name), 1), S(f("input", {
|
|
191
|
-
"onUpdate:modelValue": i[0] ||= (e) => N.value = e,
|
|
192
|
-
type: "text",
|
|
193
|
-
"data-testid": "saved-blocks-name-input",
|
|
194
|
-
placeholder: _(d).savedBlocks.namePlaceholder,
|
|
195
|
-
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
196
|
-
disabled: L.value
|
|
197
|
-
}, null, 8, Y), [[C, N.value]])]),
|
|
198
|
-
f("div", X, [
|
|
199
|
-
f("label", Z, s(_(d).savedBlocks.category), 1),
|
|
200
|
-
S(f("input", {
|
|
201
|
-
id: "tpl-save-block-category",
|
|
202
|
-
"onUpdate:modelValue": i[1] ||= (e) => F.value = e,
|
|
203
|
-
type: "text",
|
|
204
|
-
"data-testid": "saved-blocks-category-input",
|
|
205
|
-
list: "tpl-saved-block-categories",
|
|
206
|
-
placeholder: _(d).savedBlocks.categoryPlaceholder,
|
|
207
|
-
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
208
|
-
disabled: L.value
|
|
209
|
-
}, null, 8, ne), [[C, F.value]]),
|
|
210
|
-
f("datalist", re, [(o(!0), p(v, null, e(_(D).categories.value, (e) => (o(), p("option", {
|
|
211
|
-
key: e,
|
|
212
|
-
value: e
|
|
213
|
-
}, null, 8, ie))), 128))])
|
|
214
|
-
]),
|
|
215
|
-
f("p", ae, [g(s(_(w)(_(d).savedBlocks.savingCount, { count: V.value.length })) + " ", 1), f("span", oe, s(he.value), 1)]),
|
|
216
|
-
V.value.length > 1 ? (o(), p("p", se, s(_(d).savedBlocks.reorderHint), 1)) : b("", !0),
|
|
217
|
-
m(_(O), {
|
|
218
|
-
modelValue: H.value,
|
|
219
|
-
"onUpdate:modelValue": i[2] ||= (e) => H.value = e,
|
|
220
|
-
"data-testid": "saved-blocks-reorder-list",
|
|
221
|
-
animation: 150,
|
|
222
|
-
"ghost-class": "tpl-ghost",
|
|
223
|
-
"drag-class": "tpl-dragging",
|
|
224
|
-
handle: ".tpl-saved-block-reorder-handle",
|
|
225
|
-
"force-fallback": !0,
|
|
226
|
-
class: "tpl:mb-4 tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col tpl:gap-1.5 tpl:overflow-y-auto"
|
|
227
|
-
}, {
|
|
228
|
-
default: c(() => [(o(!0), p(v, null, e(H.value, (e, t) => (o(), h(W, {
|
|
229
|
-
key: e.id,
|
|
230
|
-
block: e,
|
|
231
|
-
position: t + 1,
|
|
232
|
-
total: H.value.length,
|
|
233
|
-
onMove: (t) => U(e.id, t)
|
|
234
|
-
}, null, 8, [
|
|
235
|
-
"block",
|
|
236
|
-
"position",
|
|
237
|
-
"total",
|
|
238
|
-
"onMove"
|
|
239
|
-
]))), 128))]),
|
|
240
|
-
_: 1
|
|
241
|
-
}, 8, ["modelValue"]),
|
|
242
|
-
f("div", ce, s(z.value), 1),
|
|
243
|
-
R.value ? (o(), p("p", le, s(R.value), 1)) : b("", !0),
|
|
244
|
-
f("div", ue, [f("button", {
|
|
245
|
-
type: "button",
|
|
246
|
-
class: r(["tpl:cursor-pointer tpl:rounded-md tpl:border tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)]", { "tpl:cursor-not-allowed tpl:opacity-50": L.value }]),
|
|
247
|
-
disabled: L.value,
|
|
248
|
-
onClick: $
|
|
249
|
-
}, s(_(d).savedBlocks.cancel), 11, de), f("button", {
|
|
250
|
-
type: "button",
|
|
251
|
-
class: "tpl:cursor-pointer tpl:rounded-md tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:disabled:cursor-not-allowed tpl:disabled:opacity-50 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
252
|
-
disabled: !ge.value,
|
|
253
|
-
onClick: _e
|
|
254
|
-
}, [L.value ? (o(), p("span", pe, [m(_(P), {
|
|
255
|
-
class: "tpl:animate-spin",
|
|
256
|
-
size: 12,
|
|
257
|
-
"stroke-width": 2
|
|
258
|
-
}), g(" " + s(_(d).savedBlocks.saving), 1)])) : (o(), p("span", me, s(_(d).savedBlocks.save), 1))], 8, fe)])
|
|
259
|
-
], 8, G)]),
|
|
260
|
-
_: 1
|
|
261
|
-
}, 8, ["visible"]));
|
|
262
|
-
}
|
|
263
|
-
});
|
|
264
|
-
//#endregion
|
|
265
|
-
export { Q as default };
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { A as e, Et as t, I as n, O as r, Ot as i, R as a, Y as o, _ as s, c, d as l, h as u, nt as d, r as f, s as p, u as m } from "./vue.runtime.esm-bundler-D1diBMsm.js";
|
|
2
|
-
import { c as h, t as g } from "./runtime-dom.esm-bundler-CepEmvwF.js";
|
|
3
|
-
import "./useEditorCore-P4UkhcyS.js";
|
|
4
|
-
import { s as _ } from "./usePopoverPosition-C0dPEF4X.js";
|
|
5
|
-
import { t as v } from "./useI18n-DoVKdCTH.js";
|
|
6
|
-
import { t as y } from "./createLucideIcon-C8WzBYCv.js";
|
|
7
|
-
import { t as b } from "./chevron-down-69EiBGoB.js";
|
|
8
|
-
import { t as x } from "./clock-Dt0APH92.js";
|
|
9
|
-
import { t as S } from "./loader-circle-bO7o7_HD.js";
|
|
10
|
-
import { n as C } from "./useCloudI18n-DKVm6PCa.js";
|
|
11
|
-
import { t as w } from "./formatRelativeTime-CtUU-QZ8.js";
|
|
12
|
-
var T = y("chevron-left", [["path", {
|
|
13
|
-
d: "m15 18-6-6 6-6",
|
|
14
|
-
key: "1wnfg3"
|
|
15
|
-
}]]), E = y("chevron-right", [["path", {
|
|
16
|
-
d: "m9 18 6-6-6-6",
|
|
17
|
-
key: "mthhwq"
|
|
18
|
-
}]]), D = ["disabled", "title"], O = ["title"], k = {
|
|
19
|
-
key: 0,
|
|
20
|
-
class: "tpl-scale-in tpl:absolute tpl:top-full tpl:left-1/2 tpl:z-50 tpl:mt-2 tpl:w-72 tpl:-translate-x-1/2 tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:bg-[var(--tpl-bg-elevated)] tpl:border tpl:border-[var(--tpl-border)] tpl:shadow-[var(--tpl-shadow-lg)]",
|
|
21
|
-
style: {
|
|
22
|
-
"backdrop-filter": "blur(8px)",
|
|
23
|
-
"-webkit-backdrop-filter": "blur(8px)"
|
|
24
|
-
}
|
|
25
|
-
}, A = { class: "tpl:border-b tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)] tpl:border-[var(--tpl-border)]" }, j = {
|
|
26
|
-
key: 0,
|
|
27
|
-
class: "tpl:flex tpl:items-center tpl:justify-center tpl:py-8"
|
|
28
|
-
}, M = {
|
|
29
|
-
key: 1,
|
|
30
|
-
class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
|
|
31
|
-
}, N = {
|
|
32
|
-
key: 2,
|
|
33
|
-
class: "tpl:max-h-64 tpl:overflow-y-auto"
|
|
34
|
-
}, P = ["disabled", "onClick"], F = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, I = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, L = {
|
|
35
|
-
key: 0,
|
|
36
|
-
class: "tpl:rounded tpl:px-1 tpl:py-0.5 tpl:text-[10px] tpl:font-normal tpl:bg-[var(--tpl-bg-active)] tpl:text-[var(--tpl-text-muted)]"
|
|
37
|
-
}, R = ["disabled", "title"], z = /* @__PURE__ */ s({
|
|
38
|
-
__name: "SnapshotHistory",
|
|
39
|
-
props: {
|
|
40
|
-
snapshots: {},
|
|
41
|
-
isLoading: { type: Boolean },
|
|
42
|
-
isRestoring: { type: Boolean }
|
|
43
|
-
},
|
|
44
|
-
emits: ["load", "navigate"],
|
|
45
|
-
setup(s, { emit: y }) {
|
|
46
|
-
let z = s, B = y, { format: V } = v(), { t: H } = C(), U = o(!1), W = o(null), G = o(-1);
|
|
47
|
-
n(() => z.snapshots.length, () => {
|
|
48
|
-
G.value = -1;
|
|
49
|
-
});
|
|
50
|
-
let K = p(() => G.value > 0 && z.snapshots.length > 0 && !z.isRestoring), q = p(() => G.value < z.snapshots.length - 1 && z.snapshots.length > 0 && !z.isRestoring);
|
|
51
|
-
function J() {
|
|
52
|
-
K.value && (G.value--, B("navigate", z.snapshots[G.value]));
|
|
53
|
-
}
|
|
54
|
-
function Y() {
|
|
55
|
-
q.value && (G.value++, B("navigate", z.snapshots[G.value]));
|
|
56
|
-
}
|
|
57
|
-
function X() {
|
|
58
|
-
U.value = !U.value, U.value && z.snapshots.length === 0 && B("load");
|
|
59
|
-
}
|
|
60
|
-
function Z(e) {
|
|
61
|
-
let t = z.snapshots.findIndex((t) => t.id === e);
|
|
62
|
-
t !== -1 && (G.value = t, B("navigate", z.snapshots[t])), U.value = !1;
|
|
63
|
-
}
|
|
64
|
-
function Q(e) {
|
|
65
|
-
let t = w(e, H.snapshotHistory, V, 7);
|
|
66
|
-
return t === null ? new Date(e).toLocaleDateString(void 0, {
|
|
67
|
-
month: "short",
|
|
68
|
-
day: "numeric",
|
|
69
|
-
hour: "2-digit",
|
|
70
|
-
minute: "2-digit"
|
|
71
|
-
}) : t;
|
|
72
|
-
}
|
|
73
|
-
return _(W, () => {
|
|
74
|
-
U.value = !1;
|
|
75
|
-
}), (n, o) => (r(), l("div", {
|
|
76
|
-
ref_key: "dropdownRef",
|
|
77
|
-
ref: W,
|
|
78
|
-
class: "tpl:relative tpl:flex tpl:items-center tpl:gap-0.5"
|
|
79
|
-
}, [
|
|
80
|
-
c("button", {
|
|
81
|
-
class: "tpl:flex tpl:size-7 tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:transition-colors tpl:duration-150 hover:tpl:bg-[var(--tpl-bg-hover)] disabled:tpl:cursor-not-allowed disabled:tpl:opacity-30 disabled:hover:tpl:bg-transparent tpl:text-[var(--tpl-text-muted)]",
|
|
82
|
-
disabled: !q.value,
|
|
83
|
-
title: d(H).snapshotHistory.olderSnapshot,
|
|
84
|
-
onClick: h(Y, ["stop"])
|
|
85
|
-
}, [u(d(T), {
|
|
86
|
-
size: 14,
|
|
87
|
-
"stroke-width": 2
|
|
88
|
-
})], 8, D),
|
|
89
|
-
c("button", {
|
|
90
|
-
class: "tpl:flex tpl:h-7 tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:gap-0.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:px-1.5 tpl:transition-colors tpl:duration-150 hover:tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)]",
|
|
91
|
-
title: d(H).snapshotHistory.tooltip,
|
|
92
|
-
onClick: h(X, ["stop"])
|
|
93
|
-
}, [u(d(x), {
|
|
94
|
-
size: 16,
|
|
95
|
-
"stroke-width": 1.5
|
|
96
|
-
}), u(d(b), {
|
|
97
|
-
class: t(["tpl:transition-transform tpl:duration-150", { "tpl:rotate-180": U.value }]),
|
|
98
|
-
size: 10,
|
|
99
|
-
"stroke-width": 2
|
|
100
|
-
}, null, 8, ["class"])], 8, O),
|
|
101
|
-
u(g, { name: "tpl-dropdown" }, {
|
|
102
|
-
default: a(() => [U.value ? (r(), l("div", k, [c("div", A, i(d(H).snapshotHistory.dropdownTitle), 1), s.isLoading ? (r(), l("div", j, [u(d(S), {
|
|
103
|
-
class: "tpl:animate-spin tpl:text-[var(--tpl-primary)]",
|
|
104
|
-
size: 20,
|
|
105
|
-
"stroke-width": 2
|
|
106
|
-
})])) : s.snapshots.length === 0 ? (r(), l("div", M, i(d(H).snapshotHistory.noSnapshots), 1)) : (r(), l("div", N, [(r(!0), l(f, null, e(s.snapshots, (e) => (r(), l("button", {
|
|
107
|
-
key: e.id,
|
|
108
|
-
class: "tpl:flex tpl:w-full tpl:cursor-pointer tpl:items-center tpl:border-b tpl:border-b-[var(--tpl-border-light)] tpl:border-l-2 tpl:border-l-transparent tpl:px-3 tpl:py-2.5 tpl:text-left tpl:transition-all tpl:duration-150 last:tpl:border-b-0 hover:tpl:border-l-[var(--tpl-primary)] hover:tpl:bg-[var(--tpl-bg-hover)]",
|
|
109
|
-
style: { "background-color": "transparent" },
|
|
110
|
-
disabled: s.isRestoring,
|
|
111
|
-
onClick: (t) => Z(e.id)
|
|
112
|
-
}, [c("div", F, [c("div", I, [c("span", null, i(Q(e.created_at)), 1), e.is_autosave ? (r(), l("span", L, i(d(H).snapshotHistory.auto), 1)) : m("", !0)])])], 8, P))), 128))]))])) : m("", !0)]),
|
|
113
|
-
_: 1
|
|
114
|
-
}),
|
|
115
|
-
c("button", {
|
|
116
|
-
class: "tpl:flex tpl:size-7 tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:transition-colors tpl:duration-150 hover:tpl:bg-[var(--tpl-bg-hover)] disabled:tpl:cursor-not-allowed disabled:tpl:opacity-30 disabled:hover:tpl:bg-transparent tpl:text-[var(--tpl-text-muted)]",
|
|
117
|
-
disabled: !K.value,
|
|
118
|
-
title: d(H).snapshotHistory.newerSnapshot,
|
|
119
|
-
onClick: h(J, ["stop"])
|
|
120
|
-
}, [u(d(E), {
|
|
121
|
-
size: 14,
|
|
122
|
-
"stroke-width": 2
|
|
123
|
-
})], 8, R)
|
|
124
|
-
], 512));
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
//#endregion
|
|
128
|
-
export { z as default };
|
|
@@ -1,205 +0,0 @@
|
|
|
1
|
-
import { A as e, Et as t, I as n, O as r, Ot as i, R as a, Y as o, _ as s, c, d as l, h as u, l as d, m as f, nt as p, r as m, s as h, u as g, x as _, z as v } from "./vue.runtime.esm-bundler-D1diBMsm.js";
|
|
2
|
-
import { a as ee, i as te } from "./runtime-dom.esm-bundler-CepEmvwF.js";
|
|
3
|
-
import { j as ne } from "./dist-B1kLn1rs.js";
|
|
4
|
-
import { W as re } from "./useEditorCore-P4UkhcyS.js";
|
|
5
|
-
import { E as ie, L as ae, g as oe, k as se } from "./keys-fwF3qZax.js";
|
|
6
|
-
import { t as ce } from "./useI18n-DoVKdCTH.js";
|
|
7
|
-
import { t as le } from "./check-On4TSac-.js";
|
|
8
|
-
import { t as ue } from "./loader-circle-bO7o7_HD.js";
|
|
9
|
-
import { n as de, t as fe } from "./MergeTagModeToggle-P-UguQHc.js";
|
|
10
|
-
import { t as pe } from "./TplModal-Dv9zgSWI.js";
|
|
11
|
-
import { t as me } from "./BlockPreviewCanvas-BZKslwGI.js";
|
|
12
|
-
//#region src/utils/validateEmailShape.ts
|
|
13
|
-
var y = /[,;<>()[\]\\"'`|/?#@!$%^&*+=~{}]/;
|
|
14
|
-
function he(e) {
|
|
15
|
-
let t = e.trim();
|
|
16
|
-
if (t.length === 0 || /\s/.test(t)) return !1;
|
|
17
|
-
let n = t.split("@");
|
|
18
|
-
if (n.length !== 2) return !1;
|
|
19
|
-
let [r, i] = n;
|
|
20
|
-
if (r.length === 0 || y.test(i)) return !1;
|
|
21
|
-
let a = i.indexOf(".");
|
|
22
|
-
return a > 0 && a < i.length - 1;
|
|
23
|
-
}
|
|
24
|
-
//#endregion
|
|
25
|
-
//#region src/components/TestEmailModal.vue?vue&type=script&setup=true&lang.ts
|
|
26
|
-
var ge = ["aria-busy"], b = {
|
|
27
|
-
id: "tpl-test-email-title",
|
|
28
|
-
class: "tpl:mb-4 tpl:shrink-0 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
|
|
29
|
-
}, x = { class: "tpl:mb-3 tpl:shrink-0" }, S = {
|
|
30
|
-
for: "tpl-test-email-recipient",
|
|
31
|
-
class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]"
|
|
32
|
-
}, C = ["value"], w = ["disabled"], T = ["value"], E = ["placeholder", "disabled"], D = {
|
|
33
|
-
key: 3,
|
|
34
|
-
class: "tpl:mt-1.5 tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
|
|
35
|
-
}, O = { class: "tpl:mb-2 tpl:shrink-0" }, k = { class: "tpl:flex tpl:flex-wrap tpl:items-center tpl:justify-between tpl:gap-2" }, A = { class: "tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, j = { class: "tpl:flex tpl:items-center tpl:gap-2" }, M = {
|
|
36
|
-
"data-testid": "test-email-preview-hint",
|
|
37
|
-
class: "tpl:mt-1 tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
|
|
38
|
-
}, N = {
|
|
39
|
-
id: "tpl-test-email-preview",
|
|
40
|
-
"data-testid": "test-email-preview",
|
|
41
|
-
class: "tpl:mb-3 tpl:min-h-0 tpl:flex-1 tpl:overflow-y-auto tpl:rounded-[var(--tpl-radius-sm)] tpl:p-3 tpl:bg-[var(--tpl-canvas-bg)]"
|
|
42
|
-
}, P = {
|
|
43
|
-
key: 0,
|
|
44
|
-
role: "status",
|
|
45
|
-
"aria-busy": "true",
|
|
46
|
-
"data-testid": "preview-resolution-loading",
|
|
47
|
-
class: "tpl:flex tpl:flex-col tpl:gap-3"
|
|
48
|
-
}, F = { class: "tpl:sr-only" }, I = {
|
|
49
|
-
key: 1,
|
|
50
|
-
role: "status",
|
|
51
|
-
"data-testid": "preview-resolution-failed",
|
|
52
|
-
class: "tpl:mb-2 tpl:rounded-md tpl:px-3 tpl:py-2 tpl:text-xs tpl:text-[var(--tpl-text-muted)] tpl:bg-[var(--tpl-bg-hover)]"
|
|
53
|
-
}, L = {
|
|
54
|
-
key: 0,
|
|
55
|
-
role: "status",
|
|
56
|
-
"data-testid": "test-email-success",
|
|
57
|
-
class: "tpl:mb-3 tpl:flex tpl:shrink-0 tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-success,var(--tpl-primary))]"
|
|
58
|
-
}, _e = {
|
|
59
|
-
key: 1,
|
|
60
|
-
role: "alert",
|
|
61
|
-
"data-testid": "test-email-error",
|
|
62
|
-
class: "tpl:mb-3 tpl:shrink-0 tpl:text-xs tpl:text-[var(--tpl-danger)]"
|
|
63
|
-
}, ve = { class: "tpl:flex tpl:shrink-0 tpl:justify-end tpl:gap-2" }, ye = ["disabled"], be = ["disabled"], xe = {
|
|
64
|
-
key: 0,
|
|
65
|
-
class: "tpl:flex tpl:items-center tpl:gap-1.5"
|
|
66
|
-
}, Se = { key: 1 }, R = /* @__PURE__ */ s({
|
|
67
|
-
__name: "TestEmailModal",
|
|
68
|
-
props: {
|
|
69
|
-
visible: { type: Boolean },
|
|
70
|
-
allowedRecipients: {},
|
|
71
|
-
defaultRecipient: {},
|
|
72
|
-
isSending: { type: Boolean },
|
|
73
|
-
justSent: { type: Boolean },
|
|
74
|
-
error: {}
|
|
75
|
-
},
|
|
76
|
-
emits: ["send", "close"],
|
|
77
|
-
setup(s, { emit: y }) {
|
|
78
|
-
let R = s, z = y, { t: B } = ce(), Ce = _(oe, null), V = o(""), H = o("desktop"), we = _(ae, void 0), U = re({
|
|
79
|
-
resolvePreview: we ?? void 0,
|
|
80
|
-
getContent: () => Ce?.content.value ?? {
|
|
81
|
-
blocks: [],
|
|
82
|
-
settings: {}
|
|
83
|
-
},
|
|
84
|
-
isActive: () => R.visible,
|
|
85
|
-
getRecipient: () => V.value || void 0
|
|
86
|
-
}), W = _(se, null), G = o(ne(_(ie, []))), K = h({
|
|
87
|
-
get: () => U.isConfigured ? !1 : W?.value ?? G.value,
|
|
88
|
-
set: (e) => {
|
|
89
|
-
W ? W.value = e : G.value = e;
|
|
90
|
-
}
|
|
91
|
-
}), Te = h(() => U.content.value.blocks ?? []), q = h(() => R.allowedRecipients !== void 0 && R.allowedRecipients.length > 0), Ee = h(() => R.allowedRecipients?.length === 1);
|
|
92
|
-
n(() => R.visible, (e) => {
|
|
93
|
-
e && (V.value = R.defaultRecipient ?? R.allowedRecipients?.[0] ?? "");
|
|
94
|
-
}, { immediate: !0 });
|
|
95
|
-
let J = h(() => q.value ? V.value.length > 0 : he(V.value)), Y = h(() => J.value && !R.isSending && !R.justSent), X = h(() => !q.value && V.value.trim().length > 0 && !J.value), Z = h(() => R.error ? R.error.kind === "provider" ? R.error.message : B.testEmail.recipientNotAllowed : null);
|
|
96
|
-
function Q() {
|
|
97
|
-
Y.value && z("send", V.value.trim());
|
|
98
|
-
}
|
|
99
|
-
function $() {
|
|
100
|
-
R.isSending || z("close");
|
|
101
|
-
}
|
|
102
|
-
function De(e) {
|
|
103
|
-
e.key === "Enter" && !e.shiftKey && (e.preventDefault(), Q()), e.key === "Escape" && $();
|
|
104
|
-
}
|
|
105
|
-
return (n, o) => (r(), d(pe, {
|
|
106
|
-
visible: s.visible,
|
|
107
|
-
onClose: $,
|
|
108
|
-
onKeydown: De
|
|
109
|
-
}, {
|
|
110
|
-
default: a(() => [c("div", {
|
|
111
|
-
role: "dialog",
|
|
112
|
-
"aria-modal": "true",
|
|
113
|
-
"aria-busy": s.isSending,
|
|
114
|
-
"aria-labelledby": "tpl-test-email-title",
|
|
115
|
-
class: "tpl-scale-in tpl:mx-4 tpl:flex tpl:max-h-[90vh] tpl:w-full tpl:max-w-2xl tpl:flex-col tpl:rounded-[var(--tpl-radius-lg)] tpl:p-5",
|
|
116
|
-
style: {
|
|
117
|
-
"background-color": "var(--tpl-bg-elevated)",
|
|
118
|
-
"box-shadow": "var(--tpl-shadow-xl)"
|
|
119
|
-
}
|
|
120
|
-
}, [
|
|
121
|
-
c("h3", b, i(p(B).testEmail.title), 1),
|
|
122
|
-
c("div", x, [
|
|
123
|
-
c("label", S, i(p(B).testEmail.recipientLabel), 1),
|
|
124
|
-
Ee.value ? (r(), l("input", {
|
|
125
|
-
key: 0,
|
|
126
|
-
id: "tpl-test-email-recipient",
|
|
127
|
-
type: "text",
|
|
128
|
-
value: V.value,
|
|
129
|
-
disabled: "",
|
|
130
|
-
"data-testid": "test-email-recipient",
|
|
131
|
-
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:opacity-70 tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]"
|
|
132
|
-
}, null, 8, C)) : q.value ? v((r(), l("select", {
|
|
133
|
-
key: 1,
|
|
134
|
-
id: "tpl-test-email-recipient",
|
|
135
|
-
"onUpdate:modelValue": o[0] ||= (e) => V.value = e,
|
|
136
|
-
disabled: s.isSending || s.justSent,
|
|
137
|
-
"data-testid": "test-email-recipient",
|
|
138
|
-
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]"
|
|
139
|
-
}, [(r(!0), l(m, null, e(s.allowedRecipients, (e) => (r(), l("option", {
|
|
140
|
-
key: e,
|
|
141
|
-
value: e
|
|
142
|
-
}, i(e), 9, T))), 128))], 8, w)), [[te, V.value]]) : v((r(), l("input", {
|
|
143
|
-
key: 2,
|
|
144
|
-
id: "tpl-test-email-recipient",
|
|
145
|
-
"onUpdate:modelValue": o[1] ||= (e) => V.value = e,
|
|
146
|
-
type: "email",
|
|
147
|
-
autocomplete: "email",
|
|
148
|
-
spellcheck: "false",
|
|
149
|
-
placeholder: p(B).testEmail.recipientPlaceholder,
|
|
150
|
-
disabled: s.isSending || s.justSent,
|
|
151
|
-
"data-testid": "test-email-recipient",
|
|
152
|
-
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]"
|
|
153
|
-
}, null, 8, E)), [[ee, V.value]]),
|
|
154
|
-
X.value ? (r(), l("p", D, i(p(B).testEmail.invalidAddress), 1)) : g("", !0)
|
|
155
|
-
]),
|
|
156
|
-
c("div", O, [c("div", k, [c("span", A, i(p(B).testEmail.preview), 1), c("div", j, [p(U).supersedesSamples.value ? g("", !0) : (r(), d(fe, {
|
|
157
|
-
key: 0,
|
|
158
|
-
"sample-mode": K.value,
|
|
159
|
-
onChange: o[2] ||= (e) => K.value = e
|
|
160
|
-
}, null, 8, ["sample-mode"])), u(de, {
|
|
161
|
-
viewport: H.value,
|
|
162
|
-
onChange: o[3] ||= (e) => H.value = e
|
|
163
|
-
}, null, 8, ["viewport"])])]), c("p", M, i(p(U).supersedesSamples.value ? p(B).previewResolution.hint : K.value ? p(B).testEmail.previewHintSample : p(B).testEmail.previewHint), 1)]),
|
|
164
|
-
c("div", N, [p(U).isInitialResolve.value ? (r(), l("div", P, [c("span", F, i(p(B).previewResolution.resolving), 1), (r(), l(m, null, e(3, (e) => c("div", {
|
|
165
|
-
key: e,
|
|
166
|
-
"aria-hidden": "true",
|
|
167
|
-
class: "tpl-pulse tpl:h-16 tpl:rounded-md tpl:bg-[var(--tpl-bg-hover)]"
|
|
168
|
-
})), 64))])) : p(U).hasFailed.value ? (r(), l("p", I, i(p(B).previewResolution.failed), 1)) : g("", !0), p(U).isInitialResolve.value ? g("", !0) : (r(), d(me, {
|
|
169
|
-
key: 2,
|
|
170
|
-
blocks: Te.value,
|
|
171
|
-
viewport: H.value,
|
|
172
|
-
"apply-condition-filter": !p(U).isConfigured
|
|
173
|
-
}, null, 8, [
|
|
174
|
-
"blocks",
|
|
175
|
-
"viewport",
|
|
176
|
-
"apply-condition-filter"
|
|
177
|
-
]))]),
|
|
178
|
-
s.justSent ? (r(), l("p", L, [u(p(le), {
|
|
179
|
-
size: 13,
|
|
180
|
-
"stroke-width": 2.5
|
|
181
|
-
}), f(" " + i(p(B).testEmail.success), 1)])) : Z.value ? (r(), l("p", _e, i(Z.value), 1)) : g("", !0),
|
|
182
|
-
c("div", ve, [c("button", {
|
|
183
|
-
type: "button",
|
|
184
|
-
"data-testid": "test-email-cancel",
|
|
185
|
-
class: t(["tpl:cursor-pointer tpl:rounded-md tpl:border tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)]", { "tpl:cursor-not-allowed tpl:opacity-50": s.isSending }]),
|
|
186
|
-
disabled: s.isSending,
|
|
187
|
-
onClick: $
|
|
188
|
-
}, i(p(B).testEmail.cancel), 11, ye), c("button", {
|
|
189
|
-
type: "button",
|
|
190
|
-
"data-testid": "test-email-send",
|
|
191
|
-
class: "tpl:cursor-pointer tpl:rounded-md tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:disabled:cursor-not-allowed tpl:disabled:opacity-50 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
192
|
-
disabled: !Y.value,
|
|
193
|
-
onClick: Q
|
|
194
|
-
}, [s.isSending ? (r(), l("span", xe, [u(p(ue), {
|
|
195
|
-
class: "tpl:animate-spin",
|
|
196
|
-
size: 12,
|
|
197
|
-
"stroke-width": 2
|
|
198
|
-
}), f(" " + i(p(B).testEmail.sending), 1)])) : (r(), l("span", Se, i(p(B).testEmail.send), 1))], 8, be)])
|
|
199
|
-
], 8, ge)]),
|
|
200
|
-
_: 1
|
|
201
|
-
}, 8, ["visible"]));
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
//#endregion
|
|
205
|
-
export { R as default };
|