@jackuait/blok 0.10.12 → 0.11.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 +36 -0
- package/dist/blok.cjs +1 -0
- package/dist/blok.iife.js +526 -0
- package/dist/blok.mjs +2 -2
- package/dist/chunks/{_basePickBy--UeZi0iS.mjs → _basePickBy-6gOwWeg0.mjs} +2 -2
- package/dist/chunks/_basePickBy-mUHvTE6c.cjs +1 -0
- package/dist/chunks/_baseUniq-BP5sM8qF.cjs +1 -0
- package/dist/chunks/{_baseUniq-C977U_l-.mjs → _baseUniq-BcOWmEX6.mjs} +2 -2
- package/dist/chunks/am-CyXvGFRE.cjs +1 -0
- package/dist/chunks/ar-BbusVfTp.cjs +1 -0
- package/dist/chunks/{arc-Woh6y3jm.mjs → arc-kVpio4JL.mjs} +2 -2
- package/dist/chunks/arc-lSzOinJz.cjs +1 -0
- package/dist/chunks/architecture-YZFGNWBL-BFcrDSEW.mjs +3 -0
- package/dist/chunks/architecture-YZFGNWBL-D91d5pcl.cjs +1 -0
- package/dist/chunks/{architectureDiagram-Q4EWVU46-GTqLmLqg.mjs → architectureDiagram-Q4EWVU46-CN6p4Aji.mjs} +19 -19
- package/dist/chunks/architectureDiagram-Q4EWVU46-CyW5N5Ic.cjs +36 -0
- package/dist/chunks/array-BMXfsgb2.cjs +1 -0
- package/dist/chunks/az-D7MMnw6r.cjs +1 -0
- package/dist/chunks/bg-C3H2Qh_2.cjs +1 -0
- package/dist/chunks/{blockDiagram-DXYQGD6D-CML01I1L.mjs → blockDiagram-DXYQGD6D-BvZWa5Rv.mjs} +12 -12
- package/dist/chunks/blockDiagram-DXYQGD6D-DmhBCLgd.cjs +132 -0
- package/dist/chunks/blok-CNEP3LpI.cjs +16 -0
- package/dist/chunks/{blok-Cb7w54t6.mjs → blok-DNvzyOYn.mjs} +1668 -1652
- package/dist/chunks/bn-BGOycYTM.cjs +1 -0
- package/dist/chunks/bs-C7amuK1D.cjs +1 -0
- package/dist/chunks/c-DNJHkQXQ.cjs +1 -0
- package/dist/chunks/{c4Diagram-AHTNJAMY-C29OuYjO.mjs → c4Diagram-AHTNJAMY-Cmc2PsEs.mjs} +5 -5
- package/dist/chunks/c4Diagram-AHTNJAMY-DU2IYTXY.cjs +10 -0
- package/dist/chunks/ccount-DtzbJUOh.cjs +1 -0
- package/dist/chunks/{channel-Zp_OyvEW.mjs → channel-BTWFNzkv.mjs} +1 -1
- package/dist/chunks/channel-BqhnS5zl.cjs +1 -0
- package/dist/chunks/chunk-2KRD3SAO-COfwt0om.cjs +1 -0
- package/dist/chunks/{chunk-2KRD3SAO-mVfUZfox.mjs → chunk-2KRD3SAO-DWLzBIZw.mjs} +1 -1
- package/dist/chunks/chunk-336JU56O-CqWDeAp1.cjs +1 -0
- package/dist/chunks/{chunk-336JU56O-mJNxs0cr.mjs → chunk-336JU56O-DbaX7hyp.mjs} +7 -7
- package/dist/chunks/chunk-426QAEUC-MjtXwzdI.cjs +1 -0
- package/dist/chunks/{chunk-426QAEUC-TajZlyP-.mjs → chunk-426QAEUC-pmH9mm_X.mjs} +2 -2
- package/dist/chunks/{chunk-4BX2VUAB-CsopMMb6.mjs → chunk-4BX2VUAB-B1LZI9QZ.mjs} +1 -1
- package/dist/chunks/chunk-4BX2VUAB-Zs4zJRk9.cjs +1 -0
- package/dist/chunks/{chunk-4TB4RGXK-DC963IrJ.mjs → chunk-4TB4RGXK-BC8qRYSD.mjs} +8 -8
- package/dist/chunks/chunk-4TB4RGXK-Bq0teBqe.cjs +206 -0
- package/dist/chunks/{chunk-55IACEB6-yyL3mncJ.mjs → chunk-55IACEB6-CaLO8kWA.mjs} +1 -1
- package/dist/chunks/chunk-55IACEB6-DyTTYuc2.cjs +1 -0
- package/dist/chunks/chunk-5FUZZQ4R-6rlcIGG-.cjs +62 -0
- package/dist/chunks/{chunk-5FUZZQ4R-Dr4NE8rh.mjs → chunk-5FUZZQ4R-DAWdfx4J.mjs} +7 -7
- package/dist/chunks/{chunk-5PVQY5BW-BP7ENjg7.mjs → chunk-5PVQY5BW-7Voh8aPS.mjs} +4 -4
- package/dist/chunks/chunk-5PVQY5BW-DmATt7Fz.cjs +2 -0
- package/dist/chunks/{chunk-67CJDMHE-Dbl-PjEf.mjs → chunk-67CJDMHE-DSEGOn_f.mjs} +1 -1
- package/dist/chunks/chunk-67CJDMHE-zWcmgvwZ.cjs +1 -0
- package/dist/chunks/chunk-7N4EOEYR-CAuNhdG9.cjs +1 -0
- package/dist/chunks/{chunk-7N4EOEYR-p-g3cKuX.mjs → chunk-7N4EOEYR-CnSg1Hfu.mjs} +1 -1
- package/dist/chunks/{chunk-AA7GKIK3-Dt0Kr5Va.mjs → chunk-AA7GKIK3-BmatWFnp.mjs} +1 -1
- package/dist/chunks/chunk-AA7GKIK3-YMbh5HEs.cjs +1 -0
- package/dist/chunks/{chunk-BSJP7CBP-DGU2WHwh.mjs → chunk-BSJP7CBP-BtFfqv7R.mjs} +1 -1
- package/dist/chunks/chunk-BSJP7CBP-CjkEoJDh.cjs +1 -0
- package/dist/chunks/chunk-CIAEETIT-BP9BiKe5.cjs +1 -0
- package/dist/chunks/{chunk-CIAEETIT-BQ4crY5r.mjs → chunk-CIAEETIT-nVgPUEW1.mjs} +1 -1
- package/dist/chunks/chunk-EDXVE4YY-Bw1v2mUF.cjs +1 -0
- package/dist/chunks/{chunk-EDXVE4YY-B9_aGwkV.mjs → chunk-EDXVE4YY-e7599cf4.mjs} +2 -2
- package/dist/chunks/chunk-ENJZ2VHE-9fAN50L-.cjs +10 -0
- package/dist/chunks/{chunk-ENJZ2VHE-23pY8ft5.mjs → chunk-ENJZ2VHE-DaMNdqfV.mjs} +10 -10
- package/dist/chunks/chunk-FMBD7UC4-CH_SSwhS.cjs +15 -0
- package/dist/chunks/{chunk-FMBD7UC4-D_RQlBGX.mjs → chunk-FMBD7UC4-xT5c0WSd.mjs} +1 -1
- package/dist/chunks/{chunk-FOC6F5B3-CJfr-iwx.mjs → chunk-FOC6F5B3-AxSG6qaj.mjs} +1 -1
- package/dist/chunks/chunk-FOC6F5B3-ScFIigAO.cjs +1 -0
- package/dist/chunks/chunk-ICPOFSXX-DQ4NxQTM.cjs +122 -0
- package/dist/chunks/{chunk-ICPOFSXX-BOvOTlG6.mjs → chunk-ICPOFSXX-DbL0YBQf.mjs} +2 -2
- package/dist/chunks/chunk-K5T4RW27-BdGvq1o8.cjs +94 -0
- package/dist/chunks/{chunk-K5T4RW27-CHSI0vpp.mjs → chunk-K5T4RW27-CYdwJMQV.mjs} +5 -5
- package/dist/chunks/{chunk-KGLVRYIC-ngXT4XVA.mjs → chunk-KGLVRYIC-BwOmLwqF.mjs} +1 -1
- package/dist/chunks/chunk-KGLVRYIC-uzPiXgAg.cjs +1 -0
- package/dist/chunks/chunk-Kud-AIAt.cjs +1 -0
- package/dist/chunks/chunk-LIHQZDEY-ChgbfPTz.cjs +1 -0
- package/dist/chunks/{chunk-LIHQZDEY-CnP7bym1.mjs → chunk-LIHQZDEY-Csx8-523.mjs} +1 -1
- package/dist/chunks/{chunk-ORNJ4GCN-BPaghT45.mjs → chunk-ORNJ4GCN-CCDHRflI.mjs} +1 -1
- package/dist/chunks/chunk-ORNJ4GCN-HF28XIop.cjs +1 -0
- package/dist/chunks/{chunk-OYMX7WX6-CKjTvqTg.mjs → chunk-OYMX7WX6-BAoDgMPF.mjs} +6 -6
- package/dist/chunks/chunk-OYMX7WX6-CGUpemDb.cjs +231 -0
- package/dist/chunks/{chunk-QZHKN3VN-uW1N2UWF.mjs → chunk-QZHKN3VN-D1myzhE_.mjs} +1 -1
- package/dist/chunks/chunk-QZHKN3VN-d_ESXyai.cjs +1 -0
- package/dist/chunks/{chunk-U2HBQHQK-DiQOEtQH.mjs → chunk-U2HBQHQK-BXyrI_xP.mjs} +3 -3
- package/dist/chunks/chunk-U2HBQHQK-D62A_XCV.cjs +70 -0
- package/dist/chunks/chunk-X2U36JSP-BEHpYlmW.cjs +1 -0
- package/dist/chunks/{chunk-X2U36JSP-Cznp5Jm-.mjs → chunk-X2U36JSP-CXhWYelJ.mjs} +2 -2
- package/dist/chunks/chunk-XPW4576I-BidQL50C.cjs +32 -0
- package/dist/chunks/{chunk-XPW4576I-W5t_agZI.mjs → chunk-XPW4576I-DOztVf6t.mjs} +1 -1
- package/dist/chunks/{chunk-YZCP3GAM-BV02tG_z.mjs → chunk-YZCP3GAM-DrkjtME-.mjs} +3 -3
- package/dist/chunks/chunk-YZCP3GAM-DuLQPyT4.cjs +1 -0
- package/dist/chunks/{chunk-ZZ45TVLE-D28EyJ6R.mjs → chunk-ZZ45TVLE-CSFFLvxb.mjs} +3 -3
- package/dist/chunks/chunk-ZZ45TVLE-CZOUDLGO.cjs +1 -0
- package/dist/chunks/classDiagram-6PBFFD2Q-Ci3S9iu3.mjs +30 -0
- package/dist/chunks/classDiagram-6PBFFD2Q-GDkPRBlp.cjs +1 -0
- package/dist/chunks/classDiagram-v2-HSJHXN6E-B4vt694Q.cjs +1 -0
- package/dist/chunks/classDiagram-v2-HSJHXN6E-BkaFKbgJ.mjs +30 -0
- package/dist/chunks/{clone-CUNvBGto.mjs → clone-WSLD7bVs.mjs} +1 -1
- package/dist/chunks/clone-_XTzxdN3.cjs +1 -0
- package/dist/chunks/constants-DJjFgioo.cjs +451 -0
- package/dist/chunks/{constants-C0aZXxoO.mjs → constants-DMsOCPcF.mjs} +14 -12
- package/dist/chunks/core-C8BHLAAO.cjs +12 -0
- package/dist/chunks/{core-B7mxBIHA.mjs → core-D2KrVz4a.mjs} +1 -1
- package/dist/chunks/{cose-bilkent-S5V4N54A-D-Xgf_Xn.mjs → cose-bilkent-S5V4N54A-BXBidSxC.mjs} +2 -2
- package/dist/chunks/cose-bilkent-S5V4N54A-RkR02HV4.cjs +1 -0
- package/dist/chunks/cpp-DVBevX-J.cjs +1 -0
- package/dist/chunks/{cpp-DaTV1RSp.mjs → cpp-DnMQuZPn.mjs} +2 -2
- package/dist/chunks/cs-BUD3Muxp.cjs +1 -0
- package/dist/chunks/csharp-CHUT4JOq.cjs +1 -0
- package/dist/chunks/css-QEheyxtB.cjs +1 -0
- package/dist/chunks/cytoscape.esm-CjWrb5SM.cjs +321 -0
- package/dist/chunks/da-CO2FYbLa.cjs +1 -0
- package/dist/chunks/{dagre-dysBn-m8.mjs → dagre-C7z2UZ4M.mjs} +6 -6
- package/dist/chunks/dagre-KV5264BT-B5pZgbkN.cjs +4 -0
- package/dist/chunks/{dagre-KV5264BT-BB3SAlfA.mjs → dagre-KV5264BT-Ct6qUqKI.mjs} +15 -15
- package/dist/chunks/dagre-VHP8Ngkv.cjs +1 -0
- package/dist/chunks/dart-jPH5d8ma.cjs +1 -0
- package/dist/chunks/de-B8nkOjfD.cjs +1 -0
- package/dist/chunks/default-DP8dtTxC.cjs +1 -0
- package/dist/chunks/defaultLocale-BxWls4I1.cjs +1 -0
- package/dist/chunks/{diagram-5BDNPKRD-B1410bPG.mjs → diagram-5BDNPKRD-B9hNG7ht.mjs} +18 -18
- package/dist/chunks/diagram-5BDNPKRD-C1llOHQP.cjs +10 -0
- package/dist/chunks/{diagram-G4DWMVQ6-CdhBBETB.mjs → diagram-G4DWMVQ6-9_YOaVXe.mjs} +21 -21
- package/dist/chunks/diagram-G4DWMVQ6-CLdEGHkn.cjs +24 -0
- package/dist/chunks/diagram-MMDJMWI5-CnbiCUM3.cjs +43 -0
- package/dist/chunks/{diagram-MMDJMWI5-B3HWfHe1.mjs → diagram-MMDJMWI5-DmStUoNk.mjs} +17 -17
- package/dist/chunks/diagram-TYMM5635-BtMB4AKf.cjs +24 -0
- package/dist/chunks/{diagram-TYMM5635-D0JzRYCN.mjs → diagram-TYMM5635-DmrkkW85.mjs} +17 -17
- package/dist/chunks/dist-CxdzFxpy.cjs +1 -0
- package/dist/chunks/dockerfile-B2jMQOes.cjs +1 -0
- package/dist/chunks/el-D2ILhp1-.cjs +1 -0
- package/dist/chunks/engine-javascript-HHRWd9yA.cjs +141 -0
- package/dist/chunks/{erDiagram-SMLLAGMA-DfIG0QBk.mjs → erDiagram-SMLLAGMA-5vkZ5DwJ.mjs} +14 -14
- package/dist/chunks/erDiagram-SMLLAGMA-luvZB3lF.cjs +85 -0
- package/dist/chunks/es-DXxnOS9P.cjs +1 -0
- package/dist/chunks/et-mT4xnDc7.cjs +1 -0
- package/dist/chunks/fa-D9CUFSHX.cjs +1 -0
- package/dist/chunks/fi-DpCqdl_1.cjs +1 -0
- package/dist/chunks/fil-BjeZREJI.cjs +1 -0
- package/dist/chunks/flowDiagram-DWJPFMVM-BpYbAeYP.cjs +162 -0
- package/dist/chunks/{flowDiagram-DWJPFMVM-BOL8JsQX.mjs → flowDiagram-DWJPFMVM-CGTiQBd7.mjs} +17 -17
- package/dist/chunks/fr-DYmwW1y1.cjs +1 -0
- package/dist/chunks/{ganttDiagram-T4ZO3ILL-CiUr_YRw.mjs → ganttDiagram-T4ZO3ILL-BNtXyM0I.mjs} +7 -7
- package/dist/chunks/ganttDiagram-T4ZO3ILL-BaWZufgI.cjs +292 -0
- package/dist/chunks/gitGraph-7Q5UKJZL-Ds_Z9h4o.cjs +1 -0
- package/dist/chunks/gitGraph-7Q5UKJZL-DxMmuJIv.mjs +3 -0
- package/dist/chunks/{gitGraphDiagram-UUTBAWPF-CtNkTTWO.mjs → gitGraphDiagram-UUTBAWPF-CmQR-xZp.mjs} +17 -17
- package/dist/chunks/gitGraphDiagram-UUTBAWPF-DjMU1Vyg.cjs +106 -0
- package/dist/chunks/go-BX-cNLGO.cjs +1 -0
- package/dist/chunks/{graphlib-BXNPwKuI.mjs → graphlib-BfwqhpXp.mjs} +3 -3
- package/dist/chunks/graphlib-CYv_-0LK.cjs +1 -0
- package/dist/chunks/{graphql-DNumR9m-.mjs → graphql-4Htarzhp.mjs} +2 -2
- package/dist/chunks/graphql-BnxAS09v.cjs +1 -0
- package/dist/chunks/gu-4g6NA9h8.cjs +1 -0
- package/dist/chunks/he-2H5DcbO0.cjs +1 -0
- package/dist/chunks/hi-Dvb4O5oj.cjs +1 -0
- package/dist/chunks/hr-B4Y5vULZ.cjs +1 -0
- package/dist/chunks/html-CAN0GHkJ.cjs +1 -0
- package/dist/chunks/{html-CanPsi1Y.mjs → html-DW39yhuS.mjs} +2 -2
- package/dist/chunks/hu-D3Pi7CJx.cjs +1 -0
- package/dist/chunks/hy-DZ74SDlC.cjs +1 -0
- package/dist/chunks/i18next-CkovSPO7.cjs +1 -0
- package/dist/chunks/{i18next-loader-453gJdot.mjs → i18next-loader-CyDs2NKf.mjs} +2 -2
- package/dist/chunks/i18next-loader-cGwOOjK3.cjs +1 -0
- package/dist/chunks/id-WfjZeYKN.cjs +1 -0
- package/dist/chunks/info-OMHHGYJF-ChWZqC0a.mjs +3 -0
- package/dist/chunks/info-OMHHGYJF-u0RRQ9Uo.cjs +1 -0
- package/dist/chunks/{infoDiagram-42DDH7IO-CD7nVBvi.mjs → infoDiagram-42DDH7IO-BbV_tozh.mjs} +14 -14
- package/dist/chunks/infoDiagram-42DDH7IO-DOYkYMWg.cjs +2 -0
- package/dist/chunks/init-BvlcnoG2.cjs +1 -0
- package/dist/chunks/isArrayLikeObject-CnaR8YJm.cjs +1 -0
- package/dist/chunks/isEmpty-BHdznGlG.cjs +1 -0
- package/dist/chunks/{isEmpty-D8B0aRsG.mjs → isEmpty-jlCmuYeg.mjs} +1 -1
- package/dist/chunks/ishikawaDiagram-UXIWVN3A-CbqoivFu.cjs +70 -0
- package/dist/chunks/{ishikawaDiagram-UXIWVN3A-BOaC9qJs.mjs → ishikawaDiagram-UXIWVN3A-DJBG3b-A.mjs} +6 -6
- package/dist/chunks/it-hqsqt6f7.cjs +1 -0
- package/dist/chunks/ja-BwLgKsdH.cjs +1 -0
- package/dist/chunks/java-O-rzZ2Bn.cjs +1 -0
- package/dist/chunks/javascript-z9G2vOAZ.cjs +1 -0
- package/dist/chunks/journeyDiagram-VCZTEJTY-B5Peb7wS.cjs +139 -0
- package/dist/chunks/{journeyDiagram-VCZTEJTY-DKf55ZdJ.mjs → journeyDiagram-VCZTEJTY-BdMsFn3r.mjs} +6 -6
- package/dist/chunks/json-C_epQRuA.cjs +1 -0
- package/dist/chunks/ka-xoKako16.cjs +1 -0
- package/dist/chunks/kanban-definition-6JOO6SKY-CwmSo6Ve.cjs +89 -0
- package/dist/chunks/{kanban-definition-6JOO6SKY-D2CrAXqB.mjs → kanban-definition-6JOO6SKY-ncNaxcxH.mjs} +11 -11
- package/dist/chunks/katex-_C7fvrbX.cjs +265 -0
- package/dist/chunks/km-D7Fl8wAA.cjs +1 -0
- package/dist/chunks/kn-Ckju1oeq.cjs +1 -0
- package/dist/chunks/ko-Dt1tQEjC.cjs +1 -0
- package/dist/chunks/kotlin-Dj7KFgV1.cjs +1 -0
- package/dist/chunks/ku-_i2C5XD5.cjs +1 -0
- package/dist/chunks/{latex-DY1HNB4U.mjs → latex-BeVX0E4Z.mjs} +1 -1
- package/dist/chunks/latex-u7qVP95p.cjs +1 -0
- package/dist/chunks/lightweight-i18n-CGBjC2TJ.cjs +1 -0
- package/dist/chunks/line-B7XG48Uf.cjs +1 -0
- package/dist/chunks/{line-CuvDsrkE.mjs → line-CWJNfvdn.mjs} +3 -3
- package/dist/chunks/{linear-JRIqMpGQ.mjs → linear-BU4OjSPS.mjs} +3 -3
- package/dist/chunks/linear-D5j5Vgij.cjs +1 -0
- package/dist/chunks/lo-DfEpgG9m.cjs +1 -0
- package/dist/chunks/lt-BwLILIED.cjs +1 -0
- package/dist/chunks/lua-6ceNckPi.cjs +1 -0
- package/dist/chunks/{lua-COOfzihE.mjs → lua-CPnWrc7C.mjs} +1 -1
- package/dist/chunks/lv-DdrYab3x.cjs +1 -0
- package/dist/chunks/markdown-Vce1p-mO.cjs +1 -0
- package/dist/chunks/mdast-util-math-B9OHoBuN.cjs +5 -0
- package/dist/chunks/{mdast-util-math-D56mMxhB.mjs → mdast-util-math-D42zbZda.mjs} +1 -1
- package/dist/chunks/mermaid-Cu5vPKfS.cjs +1 -0
- package/dist/chunks/mermaid-parser.core-BrZQFEht.cjs +3 -0
- package/dist/chunks/{mermaid-parser.core-BhpZC2lA.mjs → mermaid-parser.core-DBhkcRo7.mjs} +10 -10
- package/dist/chunks/mermaid.core-GiTRPJLF.cjs +10 -0
- package/dist/chunks/{mermaid.core-C40gcVfv.mjs → mermaid.core-uSzF9nF1.mjs} +45 -45
- package/dist/chunks/messages--CbdZY2w.cjs +1 -0
- package/dist/chunks/messages-1hpCmcb5.cjs +1 -0
- package/dist/chunks/messages-4_3WFJMy2.cjs +1 -0
- package/dist/chunks/messages-ADxG1iWK2.cjs +1 -0
- package/dist/chunks/messages-B3MONaxw2.cjs +1 -0
- package/dist/chunks/messages-B3tNgyxG2.cjs +1 -0
- package/dist/chunks/messages-B91FdwB0.cjs +1 -0
- package/dist/chunks/messages-B9igXgiw.cjs +1 -0
- package/dist/chunks/messages-BB1xM_oB.cjs +1 -0
- package/dist/chunks/messages-BGZLiYrQ.cjs +1 -0
- package/dist/chunks/messages-BK6gK3wu.cjs +1 -0
- package/dist/chunks/messages-BKmAFG9Z.cjs +1 -0
- package/dist/chunks/messages-BMVJq-1T.cjs +1 -0
- package/dist/chunks/messages-BMsqJNz0.cjs +1 -0
- package/dist/chunks/messages-BSVhckNg.cjs +1 -0
- package/dist/chunks/messages-BUaHDggs.cjs +1 -0
- package/dist/chunks/messages-BUaJv5qS.cjs +1 -0
- package/dist/chunks/messages-BXcSH14N.cjs +1 -0
- package/dist/chunks/messages-BYOYrUOu.cjs +1 -0
- package/dist/chunks/messages-BYSE1Iq2.cjs +1 -0
- package/dist/chunks/messages-Bb225KE6.cjs +1 -0
- package/dist/chunks/messages-BiDR95AW.cjs +1 -0
- package/dist/chunks/messages-BkAoxm6t.cjs +1 -0
- package/dist/chunks/messages-BpUasRQ3.cjs +1 -0
- package/dist/chunks/messages-BxV8K7y42.cjs +1 -0
- package/dist/chunks/messages-Bxhns4Ui.cjs +1 -0
- package/dist/chunks/messages-C0sxGmLV2.cjs +1 -0
- package/dist/chunks/messages-C5nqE8O42.cjs +1 -0
- package/dist/chunks/messages-C7il6l-S.cjs +1 -0
- package/dist/chunks/messages-CFyGEGXM2.cjs +1 -0
- package/dist/chunks/messages-CN2yjHzW.cjs +1 -0
- package/dist/chunks/messages-CTy_3-mw2.cjs +1 -0
- package/dist/chunks/messages-C_ogasse2.cjs +1 -0
- package/dist/chunks/messages-CbFuceEb.cjs +1 -0
- package/dist/chunks/messages-CbbYb7cc.cjs +1 -0
- package/dist/chunks/messages-CfO5kKI72.cjs +1 -0
- package/dist/chunks/messages-Cgv5DuNV.cjs +1 -0
- package/dist/chunks/messages-CkBrRFY02.cjs +1 -0
- package/dist/chunks/messages-CpppvIiu.cjs +1 -0
- package/dist/chunks/messages-D8-vyZ2V.cjs +1 -0
- package/dist/chunks/messages-DIpVfyX-2.cjs +1 -0
- package/dist/chunks/messages-DJBeEI7G.cjs +1 -0
- package/dist/chunks/messages-DR8nFHdw2.cjs +1 -0
- package/dist/chunks/messages-DT5Ux3el.cjs +1 -0
- package/dist/chunks/messages-Da2SYMf52.cjs +1 -0
- package/dist/chunks/messages-DaaqkvOz2.cjs +1 -0
- package/dist/chunks/messages-DdiqfVCc.cjs +1 -0
- package/dist/chunks/messages-DfZe7SKZ.cjs +1 -0
- package/dist/chunks/messages-DkJ0bcqu.cjs +1 -0
- package/dist/chunks/messages-DkmG49t8.cjs +1 -0
- package/dist/chunks/messages-Do4o9ckW.cjs +1 -0
- package/dist/chunks/messages-DrbTe09r.cjs +1 -0
- package/dist/chunks/messages-DtgIZDlN.cjs +1 -0
- package/dist/chunks/messages-DxCaGN-Q2.cjs +1 -0
- package/dist/chunks/messages-DxpBJ5ZY.cjs +1 -0
- package/dist/chunks/messages-DyWu9_0D.cjs +1 -0
- package/dist/chunks/messages-Hg0BECWK.cjs +1 -0
- package/dist/chunks/messages-JlduXweH2.cjs +1 -0
- package/dist/chunks/messages-Km2PU_o7.cjs +1 -0
- package/dist/chunks/messages-MgJnGL9X2.cjs +1 -0
- package/dist/chunks/messages-PIoKW4js2.cjs +1 -0
- package/dist/chunks/messages-VEm9mp5H.cjs +1 -0
- package/dist/chunks/messages-WgwkG5PL2.cjs +1 -0
- package/dist/chunks/messages-X46KAUoI.cjs +1 -0
- package/dist/chunks/messages-ZZd1ckSO2.cjs +1 -0
- package/dist/chunks/messages-vRqPeNM_.cjs +1 -0
- package/dist/chunks/messages-vhq442qv.cjs +1 -0
- package/dist/chunks/micromark-extension-math-BXJknrtf.cjs +1 -0
- package/dist/chunks/{micromark-extension-math-D-s54WWf.mjs → micromark-extension-math-x3wvkKaN.mjs} +2 -2
- package/dist/chunks/micromark-factory-space-BnsBDplI.cjs +1 -0
- package/dist/chunks/mindmap-definition-QFDTVHPH-6O8s-b35.cjs +96 -0
- package/dist/chunks/{mindmap-definition-QFDTVHPH-C-0fwUUS.mjs → mindmap-definition-QFDTVHPH-BfOyKFtC.mjs} +13 -13
- package/dist/chunks/mk-CsPHE4cO.cjs +1 -0
- package/dist/chunks/ml-CAsiw8BP.cjs +1 -0
- package/dist/chunks/mn-Db6DwHPv.cjs +1 -0
- package/dist/chunks/mr-BBAuoEIQ.cjs +1 -0
- package/dist/chunks/ms-Cfv7BOEG.cjs +1 -0
- package/dist/chunks/my-DOLHceI8.cjs +1 -0
- package/dist/chunks/native-DbFHGXp1.cjs +1 -0
- package/dist/chunks/ne-B2gHspK_.cjs +1 -0
- package/dist/chunks/nl-C5ezxTkA.cjs +1 -0
- package/dist/chunks/no-D4hjenPs.cjs +1 -0
- package/dist/chunks/notifier-B-wErJJB.mjs +73 -0
- package/dist/chunks/notifier-CwnFVNdD.cjs +1 -0
- package/dist/chunks/objectSpread2-iNkE6aJh.cjs +1 -0
- package/dist/chunks/objectWithoutProperties-BbzyiphF.cjs +1 -0
- package/dist/chunks/one-light-D2mpnHEP.cjs +1 -0
- package/dist/chunks/{ordinal-fyJMP-lj.mjs → ordinal-CN3SDQau.mjs} +1 -1
- package/dist/chunks/ordinal-DFFZs5-y.cjs +1 -0
- package/dist/chunks/pa-CemLebw7.cjs +1 -0
- package/dist/chunks/packet-4T2RLAQJ-7DW35MGl.mjs +3 -0
- package/dist/chunks/packet-4T2RLAQJ-B5XvZd2W.cjs +1 -0
- package/dist/chunks/path-CLcQoP7n.cjs +1 -0
- package/dist/chunks/php-BMavm1CR.cjs +1 -0
- package/dist/chunks/{php-DA-SOiqC.mjs → php-Dejkjxb5.mjs} +6 -6
- package/dist/chunks/pie-ZZUOXDRM-Dtuq0w2k.mjs +3 -0
- package/dist/chunks/pie-ZZUOXDRM-SOG0aDPa.cjs +1 -0
- package/dist/chunks/{pieDiagram-DEJITSTG-BPyqheXv.mjs → pieDiagram-DEJITSTG-B1sjciNi.mjs} +21 -21
- package/dist/chunks/pieDiagram-DEJITSTG-BkEwYBz9.cjs +30 -0
- package/dist/chunks/pl-D_sFAkCs.cjs +1 -0
- package/dist/chunks/ps-ygHHO68A.cjs +1 -0
- package/dist/chunks/pt-x_mmaTtD.cjs +1 -0
- package/dist/chunks/python-Dcoit5Q5.cjs +1 -0
- package/dist/chunks/{quadrantDiagram-34T5L4WZ-kOZ1zIXB.mjs → quadrantDiagram-34T5L4WZ-CV838wf-.mjs} +4 -4
- package/dist/chunks/quadrantDiagram-34T5L4WZ-RJme4lkz.cjs +7 -0
- package/dist/chunks/r-BdDCwgEs.cjs +1 -0
- package/dist/chunks/radar-PYXPWWZC-Bz4lwSbg.mjs +3 -0
- package/dist/chunks/radar-PYXPWWZC-Doch8Lt3.cjs +1 -0
- package/dist/chunks/{requirementDiagram-MS252O5E-C8Zkq6Lq.mjs → requirementDiagram-MS252O5E-CA3LUAVZ.mjs} +13 -13
- package/dist/chunks/requirementDiagram-MS252O5E-CMqFsK_K.cjs +84 -0
- package/dist/chunks/ro-CLGSgHzJ.cjs +1 -0
- package/dist/chunks/rough.esm-BaIXPgTh.cjs +1 -0
- package/dist/chunks/ru-LpaLXWmO.cjs +1 -0
- package/dist/chunks/ruby-DHm8_lqY.cjs +1 -0
- package/dist/chunks/{ruby-HDUjp8gK.mjs → ruby-Z7wCYjey.mjs} +11 -11
- package/dist/chunks/rust-Cdm0j4IC.cjs +1 -0
- package/dist/chunks/sankeyDiagram-XADWPNL6-BPaUkDQv.cjs +10 -0
- package/dist/chunks/{sankeyDiagram-XADWPNL6-B0FhkAL9.mjs → sankeyDiagram-XADWPNL6-Cw8wB2YO.mjs} +3 -3
- package/dist/chunks/scala-Tb1u_9W3.cjs +1 -0
- package/dist/chunks/sd-B5PS8K1I.cjs +1 -0
- package/dist/chunks/sequenceDiagram-FGHM5R23-DbM-gyMR.cjs +157 -0
- package/dist/chunks/{sequenceDiagram-FGHM5R23-Dv2H5Lbc.mjs → sequenceDiagram-FGHM5R23-pm0MaeXC.mjs} +7 -7
- package/dist/chunks/shellscript-D6KsENaG.cjs +1 -0
- package/dist/chunks/si-BjMoO5xu.cjs +1 -0
- package/dist/chunks/sk-pQPYnDDU.cjs +1 -0
- package/dist/chunks/sl-B_yalM3h.cjs +1 -0
- package/dist/chunks/sq-gzZkHXFJ.cjs +1 -0
- package/dist/chunks/sql-BlpbD7FB.cjs +1 -0
- package/dist/chunks/sr-O4v1KJY1.cjs +1 -0
- package/dist/chunks/src-d9yswOqA.cjs +1 -0
- package/dist/chunks/stateDiagram-FHFEXIEX-CEcLtV9Z.cjs +1 -0
- package/dist/chunks/{stateDiagram-FHFEXIEX-D1vcO7H_.mjs → stateDiagram-FHFEXIEX-CMcsvm0M.mjs} +17 -17
- package/dist/chunks/stateDiagram-v2-QKLJ7IA2-C4nZGNBm.mjs +28 -0
- package/dist/chunks/stateDiagram-v2-QKLJ7IA2-aa692V81.cjs +1 -0
- package/dist/chunks/sv-D0tEFwN7.cjs +1 -0
- package/dist/chunks/sw-DE8oPVEt.cjs +1 -0
- package/dist/chunks/swift-DubrdZus.cjs +1 -0
- package/dist/chunks/ta-BCVLtFMU.cjs +1 -0
- package/dist/chunks/te-BISdOeGS.cjs +1 -0
- package/dist/chunks/th-CJXhSA-L.cjs +1 -0
- package/dist/chunks/{timeline-definition-GMOUNBTQ-DJmJ0TPa.mjs → timeline-definition-GMOUNBTQ-DwHKPj3j.mjs} +6 -6
- package/dist/chunks/timeline-definition-GMOUNBTQ-ceXDJGg_.cjs +120 -0
- package/dist/chunks/{tools-vS7102lG.mjs → tools-DPov06L-.mjs} +116 -110
- package/dist/chunks/tools-NAqHj-Cy.cjs +9 -0
- package/dist/chunks/tr-BjTvmhJt.cjs +1 -0
- package/dist/chunks/treeView-SZITEDCU-BUuSm_Hn.cjs +1 -0
- package/dist/chunks/treeView-SZITEDCU-DPG9FJ6Q.mjs +3 -0
- package/dist/chunks/treemap-W4RFUUIX-BerKlw0i.cjs +1 -0
- package/dist/chunks/treemap-W4RFUUIX-N4tZJR1-.mjs +3 -0
- package/dist/chunks/tw-CjHZc17C.cjs +1 -0
- package/dist/chunks/types-BNvlbr9u.mjs +4 -0
- package/dist/chunks/types-BQX8SD8Q.cjs +1 -0
- package/dist/chunks/typescript-BKtlqLze.cjs +1 -0
- package/dist/chunks/ug-DsQjxbOa.cjs +1 -0
- package/dist/chunks/uk-BPzbNIjw.cjs +1 -0
- package/dist/chunks/ur-Do8k1hR-.cjs +1 -0
- package/dist/chunks/vennDiagram-DHZGUBPP-BzOeMJe8.cjs +34 -0
- package/dist/chunks/{vennDiagram-DHZGUBPP-Dx1rMP24.mjs → vennDiagram-DHZGUBPP-Gfy0QWtB.mjs} +6 -6
- package/dist/chunks/vi-CCTEx9XR.cjs +1 -0
- package/dist/chunks/vitesse-dark-BSL-cCXL.cjs +1 -0
- package/dist/chunks/wardley-RL74JXVD-BzKtPJ3g.cjs +1 -0
- package/dist/chunks/wardley-RL74JXVD-C7Hzc5y2.mjs +3 -0
- package/dist/chunks/{wardleyDiagram-NUSXRM2D-Dnm6lvMn.mjs → wardleyDiagram-NUSXRM2D-ChZiL3a0.mjs} +15 -15
- package/dist/chunks/wardleyDiagram-NUSXRM2D-qo6LFohO.cjs +20 -0
- package/dist/chunks/{xml-Dq1lpp8G.mjs → xml-C1PUeKuL.mjs} +1 -1
- package/dist/chunks/xml-CwiH0x4E.cjs +1 -0
- package/dist/chunks/xychartDiagram-5P7HB3ND-CH1Z2Cbf.cjs +7 -0
- package/dist/chunks/{xychartDiagram-5P7HB3ND-C9wFc2e9.mjs → xychartDiagram-5P7HB3ND-t_dhLiOA.mjs} +11 -11
- package/dist/chunks/yaml-CkVxfQ4c.cjs +1 -0
- package/dist/chunks/zh-Ive4on8E.cjs +1 -0
- package/dist/full.cjs +1 -0
- package/dist/full.mjs +3 -3
- package/dist/markdown.cjs +3 -0
- package/dist/markdown.mjs +4 -4
- package/dist/react.cjs +1 -0
- package/dist/react.mjs +2 -2
- package/dist/tools.cjs +1 -0
- package/dist/tools.mjs +2 -2
- package/package.json +17 -8
- package/src/blok.ts +5 -0
- package/src/components/modules/api/blocks.ts +34 -0
- package/src/components/modules/api/notifier.ts +24 -11
- package/src/components/modules/renderer.ts +7 -0
- package/src/components/ui/toolbox.ts +30 -25
- package/src/components/utils/notifier/draw.ts +43 -143
- package/src/components/utils/notifier/index.ts +76 -37
- package/src/components/utils/notifier/types.ts +3 -0
- package/src/components/utils/notifier.ts +17 -4
- package/src/components/utils/popover/popover-desktop.ts +23 -2
- package/src/styles/main.css +19 -0
- package/src/tools/callout/index.ts +8 -1
- package/src/tools/callout/types.ts +8 -1
- package/types/configs/blok-config.d.ts +15 -0
- package/types/configs/notifier.d.ts +11 -0
- package/dist/chunks/architecture-YZFGNWBL-aVO23UKm.mjs +0 -3
- package/dist/chunks/classDiagram-6PBFFD2Q-DXsClapu.mjs +0 -30
- package/dist/chunks/classDiagram-v2-HSJHXN6E-B6TlQ_PM.mjs +0 -30
- package/dist/chunks/gitGraph-7Q5UKJZL-B3aq166w.mjs +0 -3
- package/dist/chunks/info-OMHHGYJF-SX91-Wub.mjs +0 -3
- package/dist/chunks/notifier-PpnFhM0m.mjs +0 -96
- package/dist/chunks/packet-4T2RLAQJ-suhU85JN.mjs +0 -3
- package/dist/chunks/pie-ZZUOXDRM-DF5e16CP.mjs +0 -3
- package/dist/chunks/radar-PYXPWWZC-DgzodpRv.mjs +0 -3
- package/dist/chunks/stateDiagram-v2-QKLJ7IA2-AoHzFiaI.mjs +0 -28
- package/dist/chunks/treeView-SZITEDCU-C1mc9PWf.mjs +0 -3
- package/dist/chunks/treemap-W4RFUUIX-ClV9Slyp.mjs +0 -3
- package/dist/chunks/wardley-RL74JXVD-Dj7t7jHR.mjs +0 -3
- /package/dist/chunks/{am-Bbd7cTHS.mjs → am-JTszxMum.mjs} +0 -0
- /package/dist/chunks/{ar-Bo71sCQE.mjs → ar-CME8m7Ug.mjs} +0 -0
- /package/dist/chunks/{array-DbiMs_0t.mjs → array-B4E6ednJ.mjs} +0 -0
- /package/dist/chunks/{az-BnNrO_xK.mjs → az-CU1BXEnK.mjs} +0 -0
- /package/dist/chunks/{bg-CMd2n-OG.mjs → bg-C1QKbOOv.mjs} +0 -0
- /package/dist/chunks/{bn-B3lorfXA.mjs → bn-DbDE4DPn.mjs} +0 -0
- /package/dist/chunks/{bs-_zM8QBsA.mjs → bs-5jPxlF97.mjs} +0 -0
- /package/dist/chunks/{c-DmKJe6GM.mjs → c-CQrSye6K.mjs} +0 -0
- /package/dist/chunks/{ccount-C9Y7nqDe.mjs → ccount-B7is2MU0.mjs} +0 -0
- /package/dist/chunks/{cs-nodpmLBf.mjs → cs-BEZB2qcc.mjs} +0 -0
- /package/dist/chunks/{csharp-Drv96dbi.mjs → csharp-ByiKf6DR.mjs} +0 -0
- /package/dist/chunks/{css-82tNAoU6.mjs → css-BqsWMbBt.mjs} +0 -0
- /package/dist/chunks/{cytoscape.esm-DSb9a7HE.mjs → cytoscape.esm-CWkCAUzT.mjs} +0 -0
- /package/dist/chunks/{da-DwzgQcXQ.mjs → da-DXZ2uOgL.mjs} +0 -0
- /package/dist/chunks/{dart-DE9j8McI.mjs → dart-aYsezAEv.mjs} +0 -0
- /package/dist/chunks/{de-BvWPiNt6.mjs → de-D4FxC1Yq.mjs} +0 -0
- /package/dist/chunks/{default-qigT1Xpq.mjs → default-DPWNu2LM.mjs} +0 -0
- /package/dist/chunks/{defaultLocale-yTyMJ3IT.mjs → defaultLocale-BYV2aVaI.mjs} +0 -0
- /package/dist/chunks/{dist-X14EnMrO.mjs → dist-CKM-fjTE.mjs} +0 -0
- /package/dist/chunks/{dockerfile-D9DFksUy.mjs → dockerfile-1GBIWF66.mjs} +0 -0
- /package/dist/chunks/{el-B_D7wUrZ.mjs → el-DwIVDdku.mjs} +0 -0
- /package/dist/chunks/{engine-javascript-Bmmg8uL9.mjs → engine-javascript-CYa8VRAu.mjs} +0 -0
- /package/dist/chunks/{es-Bn_ZFyW9.mjs → es-DlO4MePt.mjs} +0 -0
- /package/dist/chunks/{et-CUcULjoh.mjs → et-BBSbb8pL.mjs} +0 -0
- /package/dist/chunks/{fa-BRhCTsOy.mjs → fa-DsJou-pw.mjs} +0 -0
- /package/dist/chunks/{fi-BEvyU9n6.mjs → fi-CsMgo7Wk.mjs} +0 -0
- /package/dist/chunks/{fil-Dlp1_W2B.mjs → fil-Dlw8sEta.mjs} +0 -0
- /package/dist/chunks/{fr-DJBeOAx1.mjs → fr-DeapG5NH.mjs} +0 -0
- /package/dist/chunks/{go-jyWjtO8q.mjs → go-4mRqLTld.mjs} +0 -0
- /package/dist/chunks/{gu-0hWvx16l.mjs → gu-klAnA_ns.mjs} +0 -0
- /package/dist/chunks/{he-CYe88qXp.mjs → he-9TdyXc1J.mjs} +0 -0
- /package/dist/chunks/{hi-DuLkkPWn.mjs → hi-DVOss_Zp.mjs} +0 -0
- /package/dist/chunks/{hr-BwCB1IMW.mjs → hr-CXo-QFLf.mjs} +0 -0
- /package/dist/chunks/{hu-C2dLyTeX.mjs → hu-B6uKq-NU.mjs} +0 -0
- /package/dist/chunks/{hy-DXKoDpv9.mjs → hy-B7CWqbUW.mjs} +0 -0
- /package/dist/chunks/{i18next-CLUkHqmV.mjs → i18next-BFvS_Rnh.mjs} +0 -0
- /package/dist/chunks/{id-D4chLuW_.mjs → id-C5d2QGEQ.mjs} +0 -0
- /package/dist/chunks/{init-BlLeEogJ.mjs → init-C3Dyaaly.mjs} +0 -0
- /package/dist/chunks/{isArrayLikeObject-DzUNFfIK.mjs → isArrayLikeObject-B-1mfvNK.mjs} +0 -0
- /package/dist/chunks/{it-Hto3G26t.mjs → it-BgPXC2_F.mjs} +0 -0
- /package/dist/chunks/{ja-UxHm_PPZ.mjs → ja-CQ7ujOz3.mjs} +0 -0
- /package/dist/chunks/{java-Dhv78FEb.mjs → java-DD_iwrM-.mjs} +0 -0
- /package/dist/chunks/{javascript-DilE9EuZ.mjs → javascript-CJBlE5PB.mjs} +0 -0
- /package/dist/chunks/{json-LUtHrtDA.mjs → json-yRGZVu2_.mjs} +0 -0
- /package/dist/chunks/{ka-BnjXwPUq.mjs → ka-DAPmSm_-.mjs} +0 -0
- /package/dist/chunks/{katex-B8jUB5Cv.mjs → katex-Bbz34ZLq.mjs} +0 -0
- /package/dist/chunks/{km-exgzZBIE.mjs → km-BJ9H-RbD.mjs} +0 -0
- /package/dist/chunks/{kn-DjjUg8aO.mjs → kn-CthdB8vH.mjs} +0 -0
- /package/dist/chunks/{ko-Cu0YUSV6.mjs → ko-DbEA41LU.mjs} +0 -0
- /package/dist/chunks/{kotlin-DFLPXbOQ.mjs → kotlin-BmkhKZGf.mjs} +0 -0
- /package/dist/chunks/{ku-D-IxJ0fx.mjs → ku-B_j9qSrv.mjs} +0 -0
- /package/dist/chunks/{lightweight-i18n-DSjG0iTr.mjs → lightweight-i18n-Bb_VS9v5.mjs} +0 -0
- /package/dist/chunks/{lo-BcwjJBcv.mjs → lo-DSklR1Zs.mjs} +0 -0
- /package/dist/chunks/{lt-Bt05MFPC.mjs → lt-C9aVbfRt.mjs} +0 -0
- /package/dist/chunks/{lv-B01TmEFW.mjs → lv-DLwMSEc0.mjs} +0 -0
- /package/dist/chunks/{markdown-C6pnqcPd.mjs → markdown-DSiOSAsn.mjs} +0 -0
- /package/dist/chunks/{mermaid-BKA834jS.mjs → mermaid-C2y_3PIg.mjs} +0 -0
- /package/dist/chunks/{messages-Bq7fo8X0.mjs → messages--c74ihtM.mjs} +0 -0
- /package/dist/chunks/{messages-zcqQ8x232.mjs → messages-041mNyU42.mjs} +0 -0
- /package/dist/chunks/{messages-v26RM5PC.mjs → messages-44SP7ajI.mjs} +0 -0
- /package/dist/chunks/{messages-x_eMclsl2.mjs → messages-7NvouWKA2.mjs} +0 -0
- /package/dist/chunks/{messages-9Nx7kteY2.mjs → messages-AnuHiDPc2.mjs} +0 -0
- /package/dist/chunks/{messages-CIre8L_r.mjs → messages-B1V7UT9I.mjs} +0 -0
- /package/dist/chunks/{messages-B9mzGzZ_.mjs → messages-B2Q9NH4D.mjs} +0 -0
- /package/dist/chunks/{messages-CWm_2RvD2.mjs → messages-B6j77WNV2.mjs} +0 -0
- /package/dist/chunks/{messages-DtssWM8x2.mjs → messages-BEV0lzGv2.mjs} +0 -0
- /package/dist/chunks/{messages-CRH0RWBs.mjs → messages-BG749_88.mjs} +0 -0
- /package/dist/chunks/{messages-x6y6csd52.mjs → messages-BGpGj8nJ2.mjs} +0 -0
- /package/dist/chunks/{messages-D3fu2FHB2.mjs → messages-BNYDShPm2.mjs} +0 -0
- /package/dist/chunks/{messages-CF0SW1zy.mjs → messages-BW--wNis.mjs} +0 -0
- /package/dist/chunks/{messages-Dobxrshu2.mjs → messages-B_Mqw9Dl2.mjs} +0 -0
- /package/dist/chunks/{messages-BmC2yhsC2.mjs → messages-BbYwT3FH2.mjs} +0 -0
- /package/dist/chunks/{messages-BkaUIuz-2.mjs → messages-Bda8jwos2.mjs} +0 -0
- /package/dist/chunks/{messages-C7E8C3-S.mjs → messages-BdpFAZGZ.mjs} +0 -0
- /package/dist/chunks/{messages-rNLuCrAb.mjs → messages-BmNLNUz_.mjs} +0 -0
- /package/dist/chunks/{messages-DPcc6xp-.mjs → messages-BnGtg6t4.mjs} +0 -0
- /package/dist/chunks/{messages-C9UIaF6N.mjs → messages-BnXkEkD_.mjs} +0 -0
- /package/dist/chunks/{messages-Bi629xgG.mjs → messages-BwtU06Ax.mjs} +0 -0
- /package/dist/chunks/{messages-D6_I0L06.mjs → messages-ByRcwLIO.mjs} +0 -0
- /package/dist/chunks/{messages-C9QhLDA2.mjs → messages-CHBH3EQG.mjs} +0 -0
- /package/dist/chunks/{messages-BJTwY1tq.mjs → messages-CIYU5iEj.mjs} +0 -0
- /package/dist/chunks/{messages-BSXBVdsp.mjs → messages-CJGOmFxi.mjs} +0 -0
- /package/dist/chunks/{messages-DmvWmURo.mjs → messages-CP7Ncgaf.mjs} +0 -0
- /package/dist/chunks/{messages-BK6AwU6C.mjs → messages-CP8YKa4F.mjs} +0 -0
- /package/dist/chunks/{messages-BUQTXTew2.mjs → messages-CUxaqK8t2.mjs} +0 -0
- /package/dist/chunks/{messages-CY76MvbX2.mjs → messages-CXDk_Rlr2.mjs} +0 -0
- /package/dist/chunks/{messages-CMMq-u7e.mjs → messages-CYZxR91M.mjs} +0 -0
- /package/dist/chunks/{messages-BSyO1EWC.mjs → messages-Cjm7Nj1C.mjs} +0 -0
- /package/dist/chunks/{messages-CAX3qQi0.mjs → messages-CjzZ6nxv.mjs} +0 -0
- /package/dist/chunks/{messages-x0kzc2oy.mjs → messages-CpVtcYqo.mjs} +0 -0
- /package/dist/chunks/{messages-mo5OrbVj2.mjs → messages-CumomgDd2.mjs} +0 -0
- /package/dist/chunks/{messages-E1tsNNG5.mjs → messages-CvCb4dCy.mjs} +0 -0
- /package/dist/chunks/{messages-Bo7Cbk_O.mjs → messages-D3DNj1jh.mjs} +0 -0
- /package/dist/chunks/{messages-PFfYbqlm.mjs → messages-D7d2U-tx.mjs} +0 -0
- /package/dist/chunks/{messages-DIVQmVS92.mjs → messages-DFWhnXF12.mjs} +0 -0
- /package/dist/chunks/{messages-nAdoEqRi.mjs → messages-DJr1x1i2.mjs} +0 -0
- /package/dist/chunks/{messages-DsMIxm6I2.mjs → messages-DN7PU5Un2.mjs} +0 -0
- /package/dist/chunks/{messages-DhoZXmg_.mjs → messages-DVh_Bwwq.mjs} +0 -0
- /package/dist/chunks/{messages-BsqBho4T.mjs → messages-DVwHxslb.mjs} +0 -0
- /package/dist/chunks/{messages-BPxMr5HC.mjs → messages-DZ1Pfnl0.mjs} +0 -0
- /package/dist/chunks/{messages--G2XLc8E.mjs → messages-Do3QV7QW.mjs} +0 -0
- /package/dist/chunks/{messages-Bhn5V9FQ2.mjs → messages-Drxwphbg2.mjs} +0 -0
- /package/dist/chunks/{messages-bIzBNzdr2.mjs → messages-DtloGH1v2.mjs} +0 -0
- /package/dist/chunks/{messages-DHzT8CZv.mjs → messages-Du0zg7UM.mjs} +0 -0
- /package/dist/chunks/{messages-z5pham9o.mjs → messages-DuA_D23n.mjs} +0 -0
- /package/dist/chunks/{messages-BS9zk4mI2.mjs → messages-DwKRw3jP2.mjs} +0 -0
- /package/dist/chunks/{messages-dGYum7sj2.mjs → messages-DzAYvMm72.mjs} +0 -0
- /package/dist/chunks/{messages-kKXlI5xZ.mjs → messages-Dzmge-lj.mjs} +0 -0
- /package/dist/chunks/{messages-CpLq4ZZg.mjs → messages-ETNAE7WV.mjs} +0 -0
- /package/dist/chunks/{messages-CrpOkt8c2.mjs → messages-F4r6ruTX2.mjs} +0 -0
- /package/dist/chunks/{messages-BCfsOOlp.mjs → messages-FNQdT9Da.mjs} +0 -0
- /package/dist/chunks/{messages-DiQkvwE32.mjs → messages-FYGyC6zk2.mjs} +0 -0
- /package/dist/chunks/{messages-B29Wm2zT.mjs → messages-ZS1Ro8ZB.mjs} +0 -0
- /package/dist/chunks/{messages-CJ8IkF1P.mjs → messages-dyhHlgE9.mjs} +0 -0
- /package/dist/chunks/{messages-DfLcy0CY.mjs → messages-fAEKtYXO.mjs} +0 -0
- /package/dist/chunks/{messages-DJYT0upW.mjs → messages-hhptyJO3.mjs} +0 -0
- /package/dist/chunks/{messages-3kHDtQLN.mjs → messages-hk4dinYI.mjs} +0 -0
- /package/dist/chunks/{messages-BimpUMRx.mjs → messages-knSLxvI6.mjs} +0 -0
- /package/dist/chunks/{messages-4Y8dL_1j2.mjs → messages-lORohDgW2.mjs} +0 -0
- /package/dist/chunks/{messages-Dass0QsQ.mjs → messages-mvnz8DvU.mjs} +0 -0
- /package/dist/chunks/{messages-DcUYfD6m.mjs → messages-pHWKsrcZ.mjs} +0 -0
- /package/dist/chunks/{messages-CR5irc8q.mjs → messages-q2McAyOz.mjs} +0 -0
- /package/dist/chunks/{messages-CEJtxBxU.mjs → messages-r62SI44r.mjs} +0 -0
- /package/dist/chunks/{messages-CKP6aUXN2.mjs → messages-uFdMhLbJ.mjs} +0 -0
- /package/dist/chunks/{micromark-factory-space-y4SDWQKm.mjs → micromark-factory-space-C6wz33de.mjs} +0 -0
- /package/dist/chunks/{mk-DlZNyDhn.mjs → mk-D96bSjMK.mjs} +0 -0
- /package/dist/chunks/{ml-CizMIOxl.mjs → ml-D1Ek94RG.mjs} +0 -0
- /package/dist/chunks/{mn-B_pDvxok.mjs → mn-CyNCFOYP.mjs} +0 -0
- /package/dist/chunks/{mr-D8D_7YmW.mjs → mr-CaA3xXVf.mjs} +0 -0
- /package/dist/chunks/{ms-CM93I8ec.mjs → ms-IZU-A3Qk.mjs} +0 -0
- /package/dist/chunks/{my-BGnGdDAV.mjs → my-C-AQLGIp.mjs} +0 -0
- /package/dist/chunks/{native-D0cfLXsM.mjs → native-CarRLbbJ.mjs} +0 -0
- /package/dist/chunks/{ne-C6ZmmqhH.mjs → ne-LaymXAjm.mjs} +0 -0
- /package/dist/chunks/{nl-UGFOU80W.mjs → nl-Dm1eVwTA.mjs} +0 -0
- /package/dist/chunks/{no-as-DKhC4.mjs → no-B2WicGhz.mjs} +0 -0
- /package/dist/chunks/{one-light-Di_o5Kb7.mjs → one-light-bqnXiA0I.mjs} +0 -0
- /package/dist/chunks/{pa-DiOAveAI.mjs → pa-ry61xHq9.mjs} +0 -0
- /package/dist/chunks/{path-7pA19U_d.mjs → path-Crax6eds.mjs} +0 -0
- /package/dist/chunks/{pl-DXk8ye3B.mjs → pl-DzCnx7eR.mjs} +0 -0
- /package/dist/chunks/{ps-CuxilZ3F.mjs → ps-DKXG6JHY.mjs} +0 -0
- /package/dist/chunks/{pt-DsT6E77q.mjs → pt-e09B0rEd.mjs} +0 -0
- /package/dist/chunks/{python-DYiHKGPV.mjs → python-tdu-oDWx.mjs} +0 -0
- /package/dist/chunks/{r-BZ4pC-Uz.mjs → r-D8fCyoTl.mjs} +0 -0
- /package/dist/chunks/{ro-CcAQOL-B.mjs → ro-HNnYR5pB.mjs} +0 -0
- /package/dist/chunks/{rough.esm-BPA_YwbP.mjs → rough.esm-CChKUjNP.mjs} +0 -0
- /package/dist/chunks/{ru-hD41D0Fd.mjs → ru-D_jTWgK8.mjs} +0 -0
- /package/dist/chunks/{rust-Db_HEGL5.mjs → rust-D5IQAarB.mjs} +0 -0
- /package/dist/chunks/{scala-B1kK21mu.mjs → scala-CbcMYkuq.mjs} +0 -0
- /package/dist/chunks/{sd-Biu7f00A.mjs → sd-B7bgXBin.mjs} +0 -0
- /package/dist/chunks/{shellscript-BBh7AxMC.mjs → shellscript-CZefq5l_.mjs} +0 -0
- /package/dist/chunks/{si-Bhto6prC.mjs → si-aQCsTBIp.mjs} +0 -0
- /package/dist/chunks/{sk-Ce7J4sHX.mjs → sk-Bjrct9rr.mjs} +0 -0
- /package/dist/chunks/{sl-Fz7idR9w.mjs → sl-DvS57kCB.mjs} +0 -0
- /package/dist/chunks/{sq-CnLb3bAQ.mjs → sq-BexoWiW2.mjs} +0 -0
- /package/dist/chunks/{sql-DHkazX4B.mjs → sql-C4ibVEDs.mjs} +0 -0
- /package/dist/chunks/{sr-Bc5JbF-b.mjs → sr-CXir4bLq.mjs} +0 -0
- /package/dist/chunks/{src-B3rrEIze.mjs → src-yreeH1hr.mjs} +0 -0
- /package/dist/chunks/{sv-B86P2LyK.mjs → sv-B_Owhjrs.mjs} +0 -0
- /package/dist/chunks/{sw-CnQXriTg.mjs → sw-B4p84FCO.mjs} +0 -0
- /package/dist/chunks/{swift-DZdprfb-.mjs → swift-Drpgj9J0.mjs} +0 -0
- /package/dist/chunks/{ta-CG4BbxjE.mjs → ta-BU_-jQ33.mjs} +0 -0
- /package/dist/chunks/{te-CkE35V1X.mjs → te-5FGke4TK.mjs} +0 -0
- /package/dist/chunks/{th-BCtkHu3E.mjs → th-DFyekAQ3.mjs} +0 -0
- /package/dist/chunks/{tr-D5Cexvko.mjs → tr-C7Zj3lX4.mjs} +0 -0
- /package/dist/chunks/{typescript-DhtGMhWX.mjs → typescript-Bnpf4OG6.mjs} +0 -0
- /package/dist/chunks/{ug-Bt9xMT4p.mjs → ug-DJwD0iui.mjs} +0 -0
- /package/dist/chunks/{uk-D1g7UV0v.mjs → uk-hkOj8kWN.mjs} +0 -0
- /package/dist/chunks/{ur-B69faQh_.mjs → ur-Cy5A8nFG.mjs} +0 -0
- /package/dist/chunks/{vi--gW42cZG.mjs → vi-CEt0cTzQ.mjs} +0 -0
- /package/dist/chunks/{vitesse-dark-B5oAIYZ5.mjs → vitesse-dark-dflHsflb.mjs} +0 -0
- /package/dist/chunks/{yaml-T4MCc8o4.mjs → yaml-CecI9urB.mjs} +0 -0
- /package/dist/chunks/{zh-DgQ6P8Lu.mjs → zh-BwQjLCGO.mjs} +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const e=require(`./chunk-Kud-AIAt.cjs`),t=require(`./constants-DJjFgioo.cjs`),n=require(`./objectSpread2-iNkE6aJh.cjs`),r=require(`./tw-CjHZc17C.cjs`),i=require(`./objectWithoutProperties-BbzyiphF.cjs`),a=require(`./types-BQX8SD8Q.cjs`),o=require(`./lightweight-i18n-CGBjC2TJ.cjs`);var s=e.t(((e,t)=>{function n(){}t.exports=Object.assign(n,{default:n,register:n,revert:function(){},__esModule:!0})})),c=class extends Error{},l=class e{get isDestroyed(){return this._isDestroyed}markDestroyed(){this._isDestroyed=!0}constructor({config:n,eventsDispatcher:r}){if(this.nodes={},this._isDestroyed=!1,this.listeners=new t.kn,this.readOnlyMutableListeners={on:(e,t,n,r=!1)=>{let i=this.listeners.on(e,t,n,r);i&&this.mutableListenerIds.push(i)},clearAll:()=>{for(let e of this.mutableListenerIds)this.listeners.offById(e);this.mutableListenerIds=[]}},this.mutableListenerIds=[],new.target===e)throw TypeError(`Constructors for abstract class Module are not allowed.`);this.config=n,this.eventsDispatcher=r,this.Blok={}}set state(e){this.Blok=e}removeAllNodes(){for(let e in this.nodes){let t=this.nodes[e];t instanceof HTMLElement&&t.remove()}}get isRtl(){var e;return((e=this.config.i18n)==null?void 0:e.direction)===`rtl`}},u=function(e){return Object.setPrototypeOf(this,{get id(){return e.id},get name(){return e.name},get config(){return e.config},get holder(){return e.holder},get parentId(){return e.parentId},get isEmpty(){return e.isEmpty},get selected(){return e.selected},get preservedData(){return e.preservedData},get preservedTunes(){return e.preservedTunes},set stretched(t){e.setStretchState(t)},get stretched(){return e.stretched},get focusable(){return e.focusable},call(t,n){return e.call(t,n)},save(){return e.save()},validate(t){return e.validate(t)},dispatchChange(){e.dispatchChange()},getActiveToolboxEntry(){return e.getActiveToolboxEntry()}}),Object.defineProperties(this,{id:{get(){return e.id},enumerable:!0,configurable:!0},name:{get(){return e.name},enumerable:!0,configurable:!0}}),this},d=class{constructor(e,t,n,r,i,a,o,s,c,l){this.toolInstance=e,this.getToolRenderedElement=t,this.tunesManager=n,this.name=r,this.getIsEmpty=i,this.inputManager=a,this.callToolUpdated=o,this.toggleEmptyMark=s,this.lastSavedDataInternal=c,this.lastSavedTunesInternal=l}async save(){var e=this;let t=await e.extractToolData();if(t===void 0)return;let r=window.performance.now(),i=e.tunesManager.extractTunesData();e.lastSavedDataInternal=t,e.lastSavedTunesInternal=n.t({},i);let a=window.performance.now();return{id:e.name,tool:e.name,data:t,tunes:i,time:a-r}}async setData(e){var n=this;let r=n.toolInstance.setData;if(typeof r==`function`)try{return await r.call(n.toolInstance,e),n.lastSavedDataInternal=e,!0}catch(e){return t.ir(`Tool ${n.name} setData failed: ${e instanceof Error?e.message:String(e)}`,`warn`),!1}let i=n.getToolRenderedElement();if(!i)return!1;let a=i.getAttribute(`contenteditable`)===`true`,o=e.text,s=typeof o==`string`,c=Object.keys(e).length===0&&n.name===`paragraph`;return a&&(s||c)?(i.innerHTML=s?o:``,n.lastSavedDataInternal=e,n.inputManager.dropCache(),n.toggleEmptyMark(),n.callToolUpdated(),!0):!1}async validate(e){var t=this;return t.toolInstance.validate instanceof Function?await t.toolInstance.validate(e):!0}async exportDataAsString(e){return t.xn(await this.data,e)}get data(){return this.save().then(e=>e&&!t.Qn(e.data)?e.data:{})}get lastSavedData(){return this.lastSavedDataInternal}get lastSavedTunes(){return this.lastSavedTunesInternal}get preservedData(){return this.lastSavedDataInternal}get preservedTunes(){return this.lastSavedTunesInternal}async extractToolData(){var e=this;try{let t=e.getToolRenderedElement();if(t===null)return;let r=await e.toolInstance.save(t);if(!e.getIsEmpty())return r;if(r==null)return;if(typeof r!=`object`)return r;let i=n.t({},r);return e.sanitizeEmptyFields(i),i}catch(n){let r=n instanceof Error?n:Error(String(n));t.ir(`Saving process for ${e.name} tool failed due to the ${r}`,`log`,r);return}}sanitizeEmptyFields(e){let n=n=>{let r=e[n];if(typeof r!=`string`)return;let i=document.createElement(`div`);i.innerHTML=r,t.Pn.isEmpty(i)&&(e[n]=``)};n(`text`),n(`html`)}},f=class{constructor(e,t){this.holder=e,this.onInputEvent=t,this.cachedInputs=[],this.inputIndex=0,this.handleFocus=()=>{this.dropCache(),this.updateCurrentInput()}}get inputs(){if(this.cachedInputs.length!==0)return this.cachedInputs;let e=t.Pn.findAllInputs(this.holder);return e.length>0&&this.inputIndex>e.length-1&&(this.inputIndex=e.length-1),this.cachedInputs=e,e}get currentInput(){return this.inputs[this.inputIndex]}set currentInput(e){if(e===void 0)return;let t=this.inputs.findIndex(t=>t===e||t.contains(e));t!==-1&&(this.inputIndex=t)}get currentInputIndex(){return this.inputIndex}get firstInput(){return this.inputs[0]}get lastInput(){let e=this.inputs;return e[e.length-1]}get nextInput(){return this.inputs[this.inputIndex+1]}get previousInput(){return this.inputs[this.inputIndex-1]}updateCurrentInput(){var e;let n=t.mn.anchorNode,r=document.activeElement,i=e=>{if(!e)return;let n=e instanceof HTMLElement?e:e.parentElement;if(n===null)return;let r=this.inputs.find(e=>e===n||e.contains(n));if(r!==void 0)return r;let i=n.closest(t.Pn.allInputsSelector);if(i instanceof HTMLElement)return this.inputs.find(e=>e===i)};if(t.Pn.isNativeInput(r)){this.currentInput=r;return}let a=(e=i(n))==null?r instanceof HTMLElement?i(r):void 0:e;if(a!==void 0){this.currentInput=a;return}r instanceof HTMLElement&&this.inputs.includes(r)&&(this.currentInput=r)}dropCache(){this.cachedInputs=[]}addInputEvents(){this.inputs.forEach(e=>{e.addEventListener(`focus`,this.handleFocus),t.Pn.isNativeInput(e)&&e.addEventListener(`input`,this.onInputEvent)})}removeInputEvents(){this.inputs.forEach(e=>{e.removeEventListener(`focus`,this.handleFocus),t.Pn.isNativeInput(e)&&e.removeEventListener(`input`,this.onInputEvent)})}destroy(){this.removeInputEvents(),this.cachedInputs=[]}},p=`block changed`,m=`block-settings-closed`,h=`block-settings-opened`,g=`blok mobile layout toggled`,_=`fake cursor is about to be toggled`,v=`fake cursor have been set`,y=`redactor dom changed`,b=(e,t)=>{let{type:n,target:r,addedNodes:i,removedNodes:a}=e;return e.type===`attributes`&&(e.attributeName===`data-blok-empty`||e.attributeName===`data-blok-toggle-open`)?!1:t.contains(r)?!0:n===`childList`?Array.from(i).some(e=>e===t)?!0:Array.from(a).some(e=>e===t):!1},x=class{constructor(e,t,n){this.getToolElement=e,this.blokEventBus=t,this.onMutation=n,this.redactorDomChangedCallback=null}watch(){var e;this.redactorDomChangedCallback=e=>{let{mutations:t}=e,n=this.getToolElement();if(n===null)return;let r=t.filter(e=>b(e,n));r.length>0&&this.onMutation(r)},(e=this.blokEventBus)==null||e.on(`redactor dom changed`,this.redactorDomChangedCallback)}unwatch(){if(this.redactorDomChangedCallback){var e;(e=this.blokEventBus)==null||e.off(`redactor dom changed`,this.redactorDomChangedCallback),this.redactorDomChangedCallback=null}}handleMutation(e){let t=e===void 0,n=e instanceof InputEvent,r=!t&&!n?this.detectToolRootChange(e):null;return{shouldFireUpdate:this.shouldFireUpdate(e),newToolRoot:r}}detectToolRootChange(e){let t=this.getToolElement();if(t===null)return null;for(let n of e){if(!Array.from(n.removedNodes).includes(t))continue;let e=n.addedNodes[n.addedNodes.length-1];if(e instanceof HTMLElement)return e}return null}destroy(){this.unwatch()}shouldFireUpdate(e){let n=e===void 0,r=e instanceof InputEvent;if(n||r)return!0;let i=this.getToolElement();return!(e.length>0&&e.every(e=>{let{addedNodes:n,removedNodes:r,target:a}=e,o=[...Array.from(n),...Array.from(r),a],s=e=>{if(!t.Pn.isElement(e)){var n;return(n=e.parentElement)==null?t.Pn.isElement(a)?a:null:n}return e.isConnected?e:t.Pn.isElement(a)?a:null};return o.every(e=>{let t=s(e);if(t===null)return!1;let n=t.closest(`[data-blok-mutation-free="true"]`);return n!==null&&i!==null&&i.contains(n)})}))}},S=class{constructor(e,t,n,r,i){this.holder=e,this.getContentElement=t,this.getStretched=n,this.blokEventBus=r,this.styleManager=i}set selected(e){var n,r;e?this.holder.setAttribute(t.ur.selected,`true`):this.holder.removeAttribute(t.ur.selected),this.handleFakeCursor(e);let i=e&&t.mn.isRangeInsideContainer(this.holder),a=!e&&t.mn.isFakeCursorInsideContainer(this.holder);!i&&!a||((n=this.blokEventBus)==null||n.emit(`fake cursor is about to be toggled`,{state:e}),i&&t.mn.addFakeCursor(),a&&t.mn.removeFakeCursor(this.holder),(r=this.blokEventBus)==null||r.emit(`fake cursor have been set`,{state:e}))}get selected(){return this.holder.getAttribute(t.ur.selected)===`true`}handleFakeCursor(e){let t=this.getContentElement(),n=this.getStretched();t&&this.styleManager.updateContentState(e,n)}},ee,te=class e{constructor(e,t){this.holder=e,this.contentElement=t}static get wrapperStyles(){return e.styles.wrapper}static get contentStyles(){return e.styles.content}setStretchState(e,n=!1){e?this.holder.setAttribute(t.ur.stretched,`true`):this.holder.removeAttribute(t.ur.stretched),this.contentElement&&!n&&this.updateContentState(!1,e)}get stretched(){return this.holder.getAttribute(t.ur.stretched)===`true`}updateContentState(e,t){this.contentElement&&(this.contentElement.className=this.getContentClasses(e,t))}getContentClasses(t,n){return t&&n?r.n(e.styles.content,e.styles.contentSelected,e.styles.contentStretched):t?r.n(e.styles.content,e.styles.contentSelected):n?r.n(e.styles.content,e.styles.contentStretched):e.styles.content}};ee=te,ee.styles={wrapper:`relative opacity-100 first:mt-0 last:pb-0 last:mb-0 [&_a]:cursor-pointer [&_a]:underline [&_a]:text-link [&_b]:font-bold [&_i]:italic`,content:`relative mx-auto transition-colors duration-150 ease-out max-w-blok-content`,contentSelected:`bg-selection rounded-[4px] **:[[contenteditable]]:select-none [&_img]:opacity-55 **:data-[blok-tool=stub]:opacity-55`,contentStretched:`max-w-none`};var C=class{constructor(e,t,n,r,i){this.toolInstance=e,this.name=t,this.id=n,this.tunesManager=r,this.config=i,this.toolRenderedElementInternal=null,this.contentElementInternal=null,this.readyResolver=null,this.ready=new Promise(e=>{this.readyResolver=e})}get toolRenderedElement(){return this.toolRenderedElementInternal}set toolRenderedElement(e){this.toolRenderedElementInternal=e}get contentElement(){return this.contentElementInternal}get pluginsContent(){if(this.toolRenderedElementInternal===null)throw Error(`Block pluginsContent is not yet initialized`);return this.toolRenderedElementInternal}compose(){let e=t.Pn.make(`div`,this.getWrapperStyles()),n=t.Pn.make(`div`,this.getContentStyles());this.contentElementInternal=n,e.setAttribute(t.ur.element,``),n.setAttribute(t.ur.elementContent,``),n.setAttribute(`data-blok-testid`,`block-content`),e.setAttribute(`data-blok-testid`,`block-wrapper`),this.name&&!e.hasAttribute(`data-blok-component`)&&e.setAttribute(`data-blok-component`,this.name),e.setAttribute(`data-blok-id`,this.id);let r=this.toolInstance.render();r instanceof Promise?this.handleAsyncRender(r,n,e):this.handleSyncRender(r,n,e);let i=this.tunesManager.wrapContent(n);return e.appendChild(i),e}refreshToolRootElement(e){let n=e.querySelector(`[${t.ur.elementContent}]`);if(!n)return;let r=n.firstElementChild;r&&r!==this.toolRenderedElementInternal&&(this.toolRenderedElementInternal=r)}handleSyncRender(e,t,n){this.toolRenderedElementInternal=e,this.addToolDataAttributes(e,n),t.appendChild(e),this.invokeRenderedLifecycle()}handleAsyncRender(e,n,r){e.then(e=>{this.toolRenderedElementInternal=e,this.addToolDataAttributes(e,r),n.appendChild(e),this.invokeRenderedLifecycle()}).catch(e=>{var n;t.ir(`Tool render promise rejected: %o`,`error`,e),(n=this.readyResolver)==null||n.call(this)})}invokeRenderedLifecycle(){let e=this.toolInstance.rendered;if(typeof e==`function`){let n=this.readyResolver,r=this.toolInstance,i=this.name;requestAnimationFrame(()=>{try{e.call(r)}catch(e){t.ir(`${i}: rendered() threw: ${e instanceof Error?e.message:String(e)}`,`warn`)}finally{n==null||n()}})}else{var n;(n=this.readyResolver)==null||n.call(this)}}addToolDataAttributes(e,t){this.name&&!t.hasAttribute(`data-blok-component`)&&t.setAttribute(`data-blok-component`,this.name);let n=`data-blok-placeholder`,r=this.config.placeholder,i=typeof r==`string`?r.trim():``;if(this.name===`paragraph`)return;let a=[`empty:before:pointer-events-none`,`empty:before:text-gray-text`,`empty:before:cursor-text`,`empty:before:content-[attr(data-blok-placeholder)]`,`data-[blok-empty=true]:before:pointer-events-none`,`data-[blok-empty=true]:before:text-gray-text`,`data-[blok-empty=true]:before:cursor-text`,`data-[blok-empty=true]:before:content-[attr(data-blok-placeholder)]`];if(i.length>0){e.setAttribute(n,i),e.classList.add(...a);return}r===!1&&e.hasAttribute(n)&&e.removeAttribute(n)}getWrapperStyles(){return te.wrapperStyles}getContentStyles(){return te.contentStyles}},ne=class{constructor(e,t,n){this.tunes=e,this.blockAPI=n,this.tunesInstances=new Map,this.defaultTunesInstances=new Map,this.unavailableTunesData={},this.composeTunes(t)}getMenuConfig(e){let n=[],r=[],i=(e,n)=>{if(e){if(t.Pn.isElement(e)){n.push({type:t.pn.Html,element:e});return}if(Array.isArray(e)){n.push(...e);return}n.push(e)}};return i(e,n),[...this.tunesInstances.values(),...this.defaultTunesInstances.values()].map(e=>e.render()).forEach(e=>{i(e,r)}),{toolTunes:n,commonTunes:r}}wrapContent(e){return[...this.tunesInstances.values(),...this.defaultTunesInstances.values()].reduce((e,n)=>{if(t.$n(n.wrap))try{return n.wrap(e)}catch(r){return t.ir(`Tune ${n.constructor.name} wrap method throws an Error %o`,`warn`,r),e}return e},e)}extractTunesData(){let e=n.t({},this.unavailableTunesData);return[...this.tunesInstances.entries(),...this.defaultTunesInstances.entries()].forEach(([n,r])=>{if(t.$n(r.save))try{e[n]=r.save()}catch(e){t.ir(`Tune ${r.constructor.name} save method throws an Error %o`,`warn`,e)}}),e}get userTunes(){return this.tunesInstances}get defaultTunes(){return this.defaultTunesInstances}composeTunes(e){Array.from(this.tunes.values()).forEach(t=>{(t.isInternal?this.defaultTunesInstances:this.tunesInstances).set(t.name,t.create(e[t.name],this.blockAPI))}),Object.entries(e).forEach(([e,t])=>{this.tunesInstances.has(e)||(this.unavailableTunesData[e]=t)})}},w=function(e){return e.RENDERED=`rendered`,e.MOVED=`moved`,e.UPDATED=`updated`,e.REMOVED=`removed`,e.ON_PASTE=`onPaste`,e}({}),re=class extends t.yn{constructor({id:e=t.Ln(),data:n,tool:r,readOnly:i,tunesData:a,parentId:o,contentIds:s,bindMutationWatchersImmediately:c=!1,lastEditedAt:l,lastEditedBy:p},m){super(),this.blokEventBus=null,this.draggableCleanup=null,this.destroyCallbacks=new Set,this.didMutated=(e=void 0)=>{let t=this.mutationHandler.handleMutation(e);t.newToolRoot&&(this.toolRenderer.toolRenderedElement=t.newToolRoot),t.shouldFireUpdate&&(this.inputManager.dropCache(),this.inputManager.updateCurrentInput(),this.toggleInputsEmptyMark(),this.call(w.UPDATED),this.emit(`didMutated`,this))};let h=e===``?t.Ln():e;if(this.name=r.name,this.id=h,this.parentId=o==null?null:o,this.contentIds=s==null?[]:s,this.lastEditedAt=l==null?Date.now():l,this.lastEditedBy=p==null?null:p,this.settings=r.settings,this.config=this.settings,this.blokEventBus=m||null,this.blockAPI=new u(this),this.readOnly=i,this.tool=r,this.toolInstance=r.create(n,this.blockAPI,i),this.tunes=r.tunes,this.tunesManager=new ne(this.tunes,a,this.blockAPI),this.toolRenderer=new C(this.toolInstance,this.name,this.id,this.tunesManager,this.config),this.holder=this.toolRenderer.compose(),this.ready=this.toolRenderer.ready,this.styleManager=new te(this.holder,this.toolRenderer.contentElement),this.selectionManager=new S(this.holder,()=>this.toolRenderer.contentElement,()=>this.styleManager.stretched,this.blokEventBus,this.styleManager),this.inputManager=new f(this.holder,()=>this.didMutated()),this.mutationHandler=new x(()=>this.toolRenderer.toolRenderedElement,this.blokEventBus,e=>this.didMutated(e)),this.dataPersistenceManager=new d(this.toolInstance,()=>this.toolRenderer.toolRenderedElement,this.tunesManager,this.name,()=>this.isEmpty,this.inputManager,()=>this.call(w.UPDATED),()=>this.toggleInputsEmptyMark(),n,a),!i){let e=()=>{this.mutationHandler.watch(),this.inputManager.addInputEvents(),this.toggleInputsEmptyMark()};c?e():window.requestIdleCallback(e)}}setupDraggable(e,t){this.cleanupDraggable(),this.draggableCleanup=t.setupDragHandle(e,this)}cleanupDraggable(){this.draggableCleanup&&(this.draggableCleanup(),this.draggableCleanup=null)}call(e,n){let r=this.toolInstance[e];if(t.$n(r))try{r.call(this.toolInstance,n)}catch(n){t.ir(`Error during '${e}' call: ${n instanceof Error?n.message:String(n)}`,`error`)}}async mergeWith(e){var n=this;if(!t.$n(n.toolInstance.merge))throw Error(`Block tool "${n.name}" does not support merging`);await n.toolInstance.merge(e)}getContentOffset(e){if(typeof this.toolInstance.getContentOffset==`function`)return this.toolInstance.getContentOffset(e)}getToolbarAnchorElement(){if(typeof this.toolInstance.getToolbarAnchorElement==`function`)return this.toolInstance.getToolbarAnchorElement()}async save(){var e=this;let t=await e.dataPersistenceManager.save();if(t!==void 0)return t.id=e.id,t}async validate(e){return this.dataPersistenceManager.validate(e)}getTunes(){let e=typeof this.toolInstance.renderSettings==`function`?this.toolInstance.renderSettings():[];return this.tunesManager.getMenuConfig(e)}updateCurrentInput(){this.inputManager.updateCurrentInput()}dispatchChange(){this.didMutated()}async setData(e){return this.dataPersistenceManager.setData(e)}addDestroyCallback(e){return this.destroyCallbacks.add(e),()=>{this.destroyCallbacks.delete(e)}}destroy(){let e=Array.from(this.destroyCallbacks);this.destroyCallbacks.clear(),e.forEach(e=>e()),this.mutationHandler.destroy(),this.inputManager.destroy(),this.draggableCleanup&&(this.draggableCleanup(),this.draggableCleanup=null),super.destroy(),t.$n(this.toolInstance.destroy)&&this.toolInstance.destroy()}setReadOnly(e){this.readOnly!==e&&(this.readOnly=e,e?(this.inputManager.removeInputEvents(),this.mutationHandler.unwatch()):(this.inputManager.addInputEvents(),this.mutationHandler.watch()),typeof this.toolInstance.setReadOnly==`function`&&this.toolInstance.setReadOnly(e))}async getActiveToolboxEntry(){var e=this;let n=e.tool.toolbox;if(!n)return;if(n.length===1)return Promise.resolve(n[0]);let r=await e.data;return n.find(e=>e.data!==void 0&&t.En(e.data,r))}async exportDataAsString(){var e=this,t;return e.dataPersistenceManager.exportDataAsString((t=e.tool.conversionConfig)==null?{}:t)}get inputs(){return this.inputManager.inputs}get currentInput(){return this.inputManager.currentInput}get currentInputIndex(){return this.inputManager.currentInputIndex}set currentInput(e){this.inputManager.currentInput=e}get firstInput(){return this.inputManager.firstInput}get lastInput(){return this.inputManager.lastInput}get nextInput(){return this.inputManager.nextInput}get previousInput(){return this.inputManager.previousInput}get data(){return this.dataPersistenceManager.data}get preservedData(){return this.dataPersistenceManager.preservedData}get preservedTunes(){return this.dataPersistenceManager.preservedTunes}get sanitize(){return this.tool.sanitizeConfig}get mergeable(){return t.$n(this.toolInstance.merge)}get focusable(){return this.inputs.length!==0}get isEmpty(){let e=t.Pn.isEmpty(this.pluginsContent,`/`),n=!this.hasMedia;return e&&n}get hasMedia(){return!!this.holder.querySelector([`img`,`iframe`,`video`,`audio`,`source`,`input`,`textarea`,`twitterwidget`].join(`,`))}set selected(e){this.selectionManager.selected=e}get selected(){return this.selectionManager.selected}setStretchState(e){this.styleManager.setStretchState(e,this.selected)}set stretched(e){this.setStretchState(e)}get stretched(){return this.styleManager.stretched}get pluginsContent(){return this.toolRenderer.pluginsContent}unwatchBlockMutations(){this.mutationHandler.unwatch()}refreshToolRootElement(){this.toolRenderer.refreshToolRootElement(this.holder),this.inputManager.dropCache()}toggleInputsEmptyMark(){this.inputs.forEach(t.In)}},ie=[`parent`,`content`],ae={general:null,note:`blue`,important:`purple`,warning:`orange`,additional:`yellow`,recommendation:`green`,caution:`red`},oe={blue:`note`,purple:`important`,orange:`warning`,yellow:`additional`,green:`recommendation`,red:`caution`},se=`💡`,ce=e=>typeof e==`object`&&`text`in e&&!(`content`in e),le=e=>typeof e==`string`?{content:e}:ce(e)?{content:e.text,checked:e.checked}:e,ue=e=>e.some(e=>{let t=le(e);return t.items!==void 0&&t.items.length>0}),de=e=>typeof e==`object`&&!!e&&`text`in e&&typeof e.text==`string`,fe=e=>typeof e==`object`&&!!e&&`checked`in e&&typeof e.checked==`boolean`,pe=e=>typeof e==`object`&&!!e&&`style`in e&&typeof e.style==`string`,me=e=>typeof e==`object`&&!!e&&`start`in e&&typeof e.start==`number`,he=e=>typeof e==`object`&&!!e&&`items`in e,ge=e=>typeof e==`object`&&!!e&&`style`in e&&`items`in e&&Array.isArray(e.items),_e=e=>e.type===`list`&&ge(e.data),ve=e=>{if(e.type!==`toggleList`)return!1;let t=e.data;return typeof t==`object`&&!!t&&`title`in t},ye=e=>{if(e.type!==`callout`)return!1;let t=e.data;return typeof t==`object`&&!!t&&`body`in t},be=e=>{if(!_e(e))return!1;let t=e.data.items;return ue(t)},xe=e=>e.parent!==void 0||e.content!==void 0&&e.content.length>0,Se=e=>{let t=e.some(xe),n=e.some(_e),r=e.some(ve),i=e.some(ye),a=n||r||i;return t&&!a?{format:`hierarchical`,hasHierarchy:!0}:a?{format:`legacy`,hasHierarchy:t||e.some(be)||e.some(e=>{var t;return ve(e)&&((t=e.data.body)==null?void 0:t.blocks)!==void 0&&e.data.body.blocks.length>0})||e.some(e=>{var t;return ye(e)&&((t=e.data.body)==null?void 0:t.blocks)!==void 0&&e.data.body.blocks.length>0})}:{format:`flat`,hasHierarchy:!1}},Ce=(e,r,i,a,o,s,c)=>{let l=[];return e.forEach((e,u)=>{let d=le(e),f=t.Ln();l.push(f);let p=a===`ordered`&&i===0&&u===0&&o!==void 0&&o!==1,m=d.items&&d.items.length>0,h=n.t(n.t({id:f,type:`list`,data:n.t(n.t({text:d.content,checked:d.checked,style:a},i>0?{depth:i}:{}),p?{start:o}:{})},s===void 0?{}:{tunes:s}),r===void 0?{}:{parent:r});if(c.push(h),!m||!d.items)return;let g=Ce(d.items,f,i+1,a,void 0,s,c);g.length>0&&(h.content=g)}),l},we=(e,t)=>{let n=[],r=e.style,i=e.start;return Ce(e.items,void 0,0,r,i,t,n),n},Te=(e,r,i,a)=>{var o;if(e.parent!==void 0){a.push(e);return}let s=(o=e.id)==null?t.Ln():o;i.push(s),a.push(n.t(n.t({},e),{},{id:s,parent:r}))},Ee=(e,t)=>{let n=[],r=[];for(let i of e){let e=ke([i]);for(let i of e)Te(i,t,n,r)}for(let e of r){let r=e.parent!==void 0,a=e.id!==void 0&&n.includes(e.id);if(!r&&!a){var i;throw Error(`expandLegacyBodyBlocks: orphaned block emitted (type=${e.type}, id=${(i=e.id)==null?`<none>`:i}). Every root-level expansion must be re-parented to ${t}.`)}}return{childIds:n,childBlocks:r}},De=e=>{var r,i,a;let o=[],s=(r=e.id)==null?t.Ln():r,{childIds:c,childBlocks:l}=Ee((i=(a=e.data.body)==null?void 0:a.blocks)==null?[]:i,s),u=n.t(n.t({id:s},e.tunes===void 0?{}:{tunes:e.tunes}),c.length>0?{content:c}:{}),d=typeof e.data.isExpanded==`boolean`?{isOpen:e.data.isExpanded}:{};return typeof e.data.titleVariant==`number`?o.push(n.t(n.t({},u),{},{type:`header`,data:n.t({text:e.data.title,level:e.data.titleVariant,isToggleable:!0},d)})):o.push(n.t(n.t({},u),{},{type:`toggle`,data:n.t({text:e.data.title},d)})),o.push(...l),o},Oe=e=>{var r,i,a,o,s;let c=[],l=(r=e.id)==null?t.Ln():r,{childIds:u,childBlocks:d}=Ee((i=(a=e.data.body)==null?void 0:a.blocks)==null?[]:i,l),f=(o=e.data.variant)==null?`general`:o,p=f in ae?ae[f]:null,m=e.data.isEmojiVisible===!1?``:(s=e.data.emoji)==null?se:s;return c.push(n.t(n.t({id:l,type:`callout`,data:{emoji:m,textColor:null,backgroundColor:p}},e.tunes===void 0?{}:{tunes:e.tunes}),u.length>0?{content:u}:{})),c.push(...d),c},ke=e=>{let r=[];for(let a of e)if(_e(a)){let e=we(a.data,a.tunes);r.push(...e)}else if(ve(a)){let e=De(a);r.push(...e)}else if(ye(a)){let e=Oe(a);r.push(...e)}else{var i;r.push(n.t(n.t({},a),{},{id:(i=a.id)==null?t.Ln():i}))}return r},Ae=(e,t)=>{e&&t.add(e)},je=e=>{let{parent:t,content:n}=e;return i.t(e,ie)},Me=(e,t,n)=>{let r=[];for(let i of e){let e=t.get(i);if(e&&e.type===`list`){let i=Ne(e,t,n);r.push(...i)}}return r},Ne=(e,t,n)=>{let r=[];e.id&&n.add(e.id);let i=e.data,a={content:de(i)?i.text:``,checked:fe(i)?i.checked:void 0},o=e.content;return o!==void 0&&o.length>0&&(a.items=Me(o,t,n)),a.items!==void 0&&a.items.length===0&&delete a.items,r.push(a),r},Pe=(e,t,r)=>{let i=Ne(e,t,r),a=e.data,o=pe(a)?a.style:`unordered`,s=me(a)?a.start:void 0;return n.t({id:e.id,type:`list`,data:n.t({style:o,items:i},o===`ordered`&&s!==void 0&&s!==1?{start:s}:{})},e.tunes===void 0?{}:{tunes:e.tunes})};function Fe(e,t,n){let r=[];for(let i of e){if(n.has(i))continue;let e=t.get(i);if(e!==void 0){if(Be(e)){r.push(Pe(e,t,n));continue}if(Le(e)){r.push(Ie(e,t,n));continue}if(Re(e)){r.push(ze(e,t,n));continue}if(Ve(e)){r.push(He(e,t,n));continue}Ae(e.id,n),r.push(je(e))}}return r}var Ie=(e,t,r)=>{var i;Ae(e.id,r);let a=e.data,o=de(a)?a.text:``,s=typeof(a==null?void 0:a.isOpen)==`boolean`?a.isOpen:void 0,c=Fe((i=e.content)==null?[]:i,t,r);return n.t({id:e.id,type:`toggleList`,data:n.t(n.t({title:o},s===void 0?{}:{isExpanded:s}),c.length>0?{body:{blocks:c}}:{})},e.tunes===void 0?{}:{tunes:e.tunes})},Le=e=>e.type===`toggle`,Re=e=>{if(e.type!==`header`)return!1;let t=e.data;return typeof t==`object`&&!!t&&t.isToggleable===!0},ze=(e,t,r)=>{var i;Ae(e.id,r);let a=e.data,o=de(a)?a.text:``,s=typeof(a==null?void 0:a.level)==`number`?a.level:void 0,c=typeof(a==null?void 0:a.isOpen)==`boolean`?a.isOpen:void 0,l=Fe((i=e.content)==null?[]:i,t,r);return n.t({id:e.id,type:`toggleList`,data:n.t(n.t(n.t({title:o},s===void 0?{}:{titleVariant:s}),c===void 0?{}:{isExpanded:c}),l.length>0?{body:{blocks:l}}:{})},e.tunes===void 0?{}:{tunes:e.tunes})},Be=e=>{if(e.type!==`list`)return!1;let t=e.data,n=de(t),r=he(t);return n&&!r},Ve=e=>{if(e.type!==`callout`)return!1;let t=e.data;return typeof t==`object`&&!!t&&!(`body`in t)},He=(e,t,r)=>{var i,a;Ae(e.id,r);let o=e.data,s=o.backgroundColor,c=s==null||(i=oe[s])==null?`general`:i,l=o.emoji,u=typeof l==`string`&&l.length>0,d=u?l:null,f=Fe((a=e.content)==null?[]:a,t,r);return n.t({id:e.id,type:`callout`,data:n.t({title:``,variant:c,emoji:d,isEmojiVisible:u},f.length>0?{body:{blocks:f}}:{})},e.tunes===void 0?{}:{tunes:e.tunes})},Ue=(e,t,n)=>{if(!e.id||!e.parent||!t.has(e.parent))return;let r=n.get(e.parent);if(r===void 0){n.set(e.parent,[e.id]);return}r.push(e.id)},We=(e,t,n)=>{let r=(Array.isArray(e)?e:[]).filter(e=>n.has(e));for(let e of t)r.includes(e)||r.push(e);return r},Ge=e=>{let t=e.map(e=>n.t({},e)),r=new Map;for(let e of t)e.id&&r.set(e.id,e);let i=new Map;for(let e of t)Ue(e,r,i);for(let[e,t]of i){let n=r.get(e);n!==void 0&&(n.content=We(n.content,t,r))}let a=new Map;for(let e of t)e.id&&a.set(e.id,e);let o=t.some(Be),s=t.some(Le),c=t.some(e=>Re(e)&&!e.parent),l=t.some(Ve);if(!o&&!s&&!c&&!l)return t.map(je);let u=[],d=new Set;for(let e of t){if(e.id&&d.has(e.id))continue;let t=Be(e),n=t&&!e.parent,r=Le(e),i=r&&!e.parent,o=Re(e),s=o&&!e.parent,c=Ve(e),l=c&&!e.parent,f=!t&&!r&&!o&&!c;if(n){let t=Pe(e,a,d);u.push(t)}if(i){let t=Ie(e,a,d);u.push(t)}if(s){let t=ze(e,a,d);u.push(t)}if(l){let t=He(e,a,d);u.push(t)}f&&(u.push(je(e)),Ae(e.id,d))}return u},Ke=e=>typeof e==`object`&&!!e&&Array.isArray(e.blocks),qe=e=>{if(typeof e!=`object`||!e)return null;let t=e.content;return Array.isArray(t)?t:null},Je=(e,t,n)=>{if(Ke(e))for(let r of e.blocks)typeof r!=`string`||n.has(r)||n.set(r,t)},Ye=(e,t,n)=>{Array.isArray(e)&&e.forEach(e=>Je(e,t,n))},Xe=(e,t)=>{if(e.id===void 0||e.id===null)return;let n=qe(e.data);if(n===null)return;let r=e.id;n.forEach(e=>Ye(e,r,t))},Ze=e=>{let t=new Map;return e.filter(e=>e.type===`table`).forEach(e=>Xe(e,t)),t.size===0?e:e.map(e=>{if(e.id===void 0||e.id===null)return e;let r=t.get(e.id);return r===void 0||e.parent!==void 0&&e.parent!==null?e:n.t(n.t({},e),{},{parent:r})})},Qe=(e,t)=>t===`legacy`?e!==`legacy`:!1,$e=(e,t)=>e===`legacy`||e===`auto`&&t===`legacy`,et=class extends l{constructor(...e){var n;super(...e),n=this,this.insert=(e,n={},r={},i,a,o,s)=>{let c=e==null?this.config.defaultBlock:e,l=(()=>{if(!c)return c;let e=i==null?this.Blok.BlockManager.currentBlockIndex:i,n=this.Blok.BlockManager.getBlockByIndex(e);return n!==void 0&&t.jn(n)&&t.Mn(c)?`paragraph`:c})();return new u(this.Blok.BlockManager.insert({id:s,tool:l,data:n,index:i,needToFocus:a,replace:o}))},this.composeBlockData=async e=>{let t=n.Blok.Tools.blockTools.get(e);if(t===void 0)throw Error(`Block Tool with type "${e}" not found`);return new re({tool:t,api:n.Blok.API,readOnly:!0,data:{},tunesData:{}}).data},this.update=async(e,t,r)=>{let{BlockManager:i}=n.Blok,a=i.getBlockById(e);if(a===void 0)throw Error(`Block with id "${e}" not found`);return new u(await i.update(a,t,r))},this.convert=async(e,r,i)=>{var a,o;let{BlockManager:s,Tools:c}=n.Blok,l=s.getBlockById(e);if(!l)throw Error(`Block with id "${e}" not found`);let d=c.blockTools.get(l.name),f=c.blockTools.get(r);if(!f)throw Error(`Block Tool with type "${r}" not found`);let p=(d==null||(a=d.conversionConfig)==null?void 0:a.export)!==void 0,m=((o=f.conversionConfig)==null?void 0:o.import)!==void 0;if(p&&m)return new u(await s.convert(l,r,i));{let e=[p?!1:t.Hn(l.name),m?!1:t.Hn(r)].filter(Boolean).join(` and `);throw Error(`Conversion from "${l.name}" to "${r}" is not possible. ${e} tool(s) should provide a "conversionConfig"`)}},this.insertMany=(e,t=this.Blok.BlockManager.blocks.length-1)=>{this.validateIndex(t);let n=Ze(e).map(({id:e,type:t,data:n,tunes:r,parent:i,content:a,lastEditedAt:o,lastEditedBy:s})=>this.Blok.BlockManager.composeBlock({id:e,tool:t||this.config.defaultBlock,data:n,tunes:r,parentId:i,contentIds:a,lastEditedAt:o,lastEditedBy:s}));return this.Blok.BlockManager.insertMany(n,t),n.map(e=>new u(e))},this.insertInsideParent=(e,t,n)=>(this.Blok.BlockManager.suppressStopCapturing||this.Blok.YjsManager.stopCapturing(),new u(this.Blok.BlockManager.insertInsideParent(e,t,n))),this.splitBlock=(e,t,n,r,i)=>{this.Blok.YjsManager.stopCapturing();let a=this.Blok.BlockManager.splitBlockWithData(e,t,n,r,i);return queueMicrotask(()=>{this.Blok.YjsManager.stopCapturing()}),new u(a)}}get methods(){let e=this;return{get isSyncingFromYjs(){return e.Blok.BlockManager.isSyncingFromYjs},clear:()=>this.clear(),render:e=>this.render(e),renderFromHTML:e=>this.renderFromHTML(e),delete:e=>this.delete(e),move:(e,t)=>this.move(e,t),getBlockByIndex:e=>this.getBlockByIndex(e),getById:e=>this.getById(e),getCurrentBlockIndex:()=>this.getCurrentBlockIndex(),getBlockIndex:e=>this.getBlockIndex(e),getBlocksCount:()=>this.getBlocksCount(),getBlockByElement:e=>this.getBlockByElement(e),getChildren:e=>this.getChildren(e),insert:this.insert,insertMany:this.insertMany,update:this.update,composeBlockData:this.composeBlockData,convert:this.convert,setBlockParent:(e,t)=>this.setBlockParent(e,t),stopBlockMutationWatching:e=>this.stopBlockMutationWatching(e),splitBlock:this.splitBlock,insertInsideParent:this.insertInsideParent,transact:e=>this.transact(e),transactWithoutCapture:e=>this.transactWithoutCapture(e),setPointerDragActive:e=>this.setPointerDragActive(e)}}getBlocksCount(){return this.Blok.BlockManager.blocks.length}getCurrentBlockIndex(){return this.Blok.BlockManager.currentBlockIndex}getBlockIndex(e){let n=this.Blok.BlockManager.getBlockById(e);if(!n){t.ar("There is no block with id `"+e+"`",`warn`);return}return this.Blok.BlockManager.getBlockIndex(n)}getBlockByIndex(e){let n=this.Blok.BlockManager.getBlockByIndex(e);if(n===void 0){t.ar("There is no block at index `"+e+"`",`warn`);return}return new u(n)}getById(e){let n=this.Blok.BlockManager.getBlockById(e);return n===void 0?(t.ar("There is no block with id `"+e+"`",`warn`),null):new u(n)}getBlockByElement(e){let n=this.Blok.BlockManager.getBlock(e);if(n===void 0){var r,i;t.ar(`There is no block corresponding to element <${(r=(i=e.tagName)==null?void 0:i.toLowerCase())==null?`unknown`:r}>`,`warn`);return}return new u(n)}getChildren(e){return this.Blok.BlockManager.blocks.filter(t=>t.parentId===e).map(e=>new u(e))}move(e,t){this.Blok.BlockManager.move(e,t)}async delete(e=this.Blok.BlockManager.currentBlockIndex){var n=this;let r=n.Blok.BlockManager.getBlockByIndex(e);if(r===void 0){t.ar(`There is no block at index \`${e}\``,`warn`);return}try{await n.Blok.BlockManager.removeBlock(r)}catch(e){t.ar(e,`warn`);return}n.Blok.BlockManager.currentBlock&&n.Blok.Caret.setToBlock(n.Blok.BlockManager.currentBlock,n.Blok.Caret.positions.END),n.Blok.Toolbar.close()}async clear(){var e=this;await e.Blok.BlockManager.clear(!0),e.Blok.InlineToolbar.close()}async render(e){var t=this;if(e===void 0||e.blocks===void 0)throw Error(`Incorrect data passed to the render() method`);t.Blok.ModificationsObserver.disable(),t.Blok.Renderer.markRenderStart();try{await t.Blok.BlockManager.clear(),await t.Blok.Renderer.render(e.blocks)}finally{t.Blok.Renderer.markRenderEnd()}t.Blok.ModificationsObserver.enable(),t.processPendingHashScroll()}async renderFromHTML(e){var t=this;t.Blok.Renderer.markRenderStart();try{return await t.Blok.BlockManager.clear(),t.Blok.Paste.processText(e,!0)}finally{t.Blok.Renderer.markRenderEnd()}}async importMarkdown(e,t){var n=this;let{markdownToBlocks:r}=await Promise.resolve().then(()=>require(`../markdown.cjs`)),i={blocks:await r(e,t)};return await n.render(i),i}setBlockParent(e,n){let r=this.Blok.BlockManager.getBlockById(e);if(r===void 0){t.ar("There is no block with id `"+e+"`",`warn`);return}this.Blok.BlockManager.setBlockParent(r,n)}stopBlockMutationWatching(e){let t=this.Blok.BlockManager.getBlockByIndex(e);t!==void 0&&t.unwatchBlockMutations()}transact(e){this.Blok.BlockManager.transactForTool(e)}transactWithoutCapture(e){this.Blok.YjsManager.transactWithoutCapture(e)}setPointerDragActive(e){this.Blok.BlockManager.setPointerDragActive(e)}validateIndex(e){if(typeof e!=`number`)throw Error(`Index should be a number`);if(e<0)throw Error(`Index should be greater than or equal to 0`)}processPendingHashScroll(){var e,t;let n=this.Blok.Renderer.pendingHashScroll;if(n===null)return;this.Blok.Renderer.pendingHashScroll=null;let r=document.querySelector(`[data-blok-id="${CSS.escape(n)}"]`);if(r===null)return;let i=(e=(t=this.config.scrollToBlock)==null?void 0:t.topOffset)==null?0:e,a=r.getBoundingClientRect().top+window.scrollY-i;window.scrollTo({top:a,behavior:`smooth`});let o=this.Blok.BlockManager.getBlockById(n);o!==void 0&&this.Blok.BlockSelection.selectBlock(o)}},tt=(e,t)=>typeof e==`number`?t.BlockManager.getBlockByIndex(e):typeof e==`string`?t.BlockManager.getBlockById(e):t.BlockManager.getBlockById(e.id),nt=class extends l{constructor(...e){super(...e),this.setToFirstBlock=(e=this.Blok.Caret.positions.DEFAULT,t=0)=>this.Blok.BlockManager.firstBlock?(this.Blok.Caret.setToBlock(this.Blok.BlockManager.firstBlock,e,t),!0):!1,this.setToLastBlock=(e=this.Blok.Caret.positions.DEFAULT,t=0)=>this.Blok.BlockManager.lastBlock?(this.Blok.Caret.setToBlock(this.Blok.BlockManager.lastBlock,e,t),!0):!1,this.setToPreviousBlock=(e=this.Blok.Caret.positions.DEFAULT,t=0)=>this.Blok.BlockManager.previousBlock?(this.Blok.Caret.setToBlock(this.Blok.BlockManager.previousBlock,e,t),!0):!1,this.setToNextBlock=(e=this.Blok.Caret.positions.DEFAULT,t=0)=>this.Blok.BlockManager.nextBlock?(this.Blok.Caret.setToBlock(this.Blok.BlockManager.nextBlock,e,t),!0):!1,this.setToBlock=(e,t=this.Blok.Caret.positions.DEFAULT,n=0)=>{let r=tt(e,this.Blok);return r===void 0?!1:(this.Blok.Caret.setToBlock(r,t,n),!0)},this.focus=(e=!1)=>e?this.setToLastBlock(this.Blok.Caret.positions.END):this.setToFirstBlock(this.Blok.Caret.positions.START),this.updateLastCaretAfterPosition=()=>{this.Blok.YjsManager.updateLastCaretAfterPosition()}}get methods(){return{setToFirstBlock:this.setToFirstBlock,setToLastBlock:this.setToLastBlock,setToPreviousBlock:this.setToPreviousBlock,setToNextBlock:this.setToNextBlock,setToBlock:this.setToBlock,focus:this.focus,updateLastCaretAfterPosition:this.updateLastCaretAfterPosition}}},rt=class extends l{get methods(){return{emit:(e,t)=>this.emit(e,t),off:(e,t)=>this.off(e,t),on:(e,t)=>this.on(e,t)}}on(e,t){this.eventsDispatcher.on(e,t)}emit(e,t){this.eventsDispatcher.emit(e,t)}off(e,t){this.eventsDispatcher.off(e,t)}},it=class extends l{get methods(){return{undo:()=>this.undo(),redo:()=>this.redo(),canUndo:()=>this.canUndo(),canRedo:()=>this.canRedo(),clear:()=>this.clear()}}undo(){this.Blok.YjsManager.undo()}redo(){this.Blok.YjsManager.redo()}canUndo(){return this.Blok.YjsManager.canUndo()}canRedo(){return this.Blok.YjsManager.canRedo()}clear(){this.Blok.YjsManager.clear()}},at=class extends l{constructor(...e){super(...e),this.cachedMethods=null}get methods(){return this.cachedMethods===null&&(this.cachedMethods={t:e=>this.Blok.I18n.t(e),has:e=>this.Blok.I18n.has(e),getEnglishTranslation:e=>this.Blok.I18n.getEnglishTranslation(e),getLocale:()=>this.Blok.I18n.getLocale()}),this.cachedMethods}},ot=class extends l{get methods(){return{blocks:this.Blok.BlocksAPI.methods,caret:this.Blok.CaretAPI.methods,tools:this.Blok.ToolsAPI.methods,events:this.Blok.EventsAPI.methods,history:this.Blok.HistoryAPI.methods,listeners:this.Blok.ListenersAPI.methods,notifier:this.Blok.NotifierAPI.methods,sanitizer:this.Blok.SanitizerAPI.methods,saver:this.Blok.SaverAPI.methods,selection:this.Blok.SelectionAPI.methods,styles:this.Blok.StylesAPI.classes,toolbar:this.Blok.ToolbarAPI.methods,inlineToolbar:this.Blok.InlineToolbarAPI.methods,tooltip:this.Blok.TooltipAPI.methods,i18n:this.Blok.I18nAPI.methods,readOnly:this.Blok.ReadOnlyAPI.methods,ui:this.Blok.UiAPI.methods,theme:this.Blok.ThemeAPI.methods,rectangleSelection:this.Blok.RectangleSelection}}},st=class extends l{get methods(){return{close:()=>this.close(),open:()=>this.open()}}open(){this.Blok.InlineToolbar.tryToShow()}close(){this.Blok.InlineToolbar.close()}},ct=class extends l{get methods(){return{on:(e,t,n,r)=>this.on(e,t,n,r),off:(e,t,n,r)=>this.off(e,t,n,r),offById:e=>this.offById(e)}}on(e,t,n,r){return this.listeners.on(e,t,n,r)}off(e,t,n,r){this.listeners.off(e,t,n,r)}offById(e){this.listeners.offById(e)}},lt=class{constructor(e=a.t){this.notifierModule=null,this.loadingPromise=null,this.position=e}loadNotifierModule(){return this.notifierModule===null?(this.loadingPromise===null&&(this.loadingPromise=Promise.resolve().then(()=>require(`./notifier-CwnFVNdD.cjs`)).then(e=>{let t=e;if(!this.isNotifierModule(t))throw Error(`notifier module does not expose a "show" method.`);return this.notifierModule=t,t}).catch(e=>{throw this.loadingPromise=null,e})),this.loadingPromise):Promise.resolve(this.notifierModule)}show(e){this.loadNotifierModule().then(t=>{t.show(e,this.position)}).catch(e=>{console.error(`[Blok] Failed to display notification. Reason:`,e)})}isNotifierModule(e){return typeof e==`object`&&!!e&&`show`in e&&typeof e.show==`function`}},ut=class extends l{constructor({config:e,eventsDispatcher:t}){var n;super({config:e,eventsDispatcher:t}),this.builtInNotifier=new lt((n=e.notifierPosition)==null?a.t:n),this.customNotifier=e.notifier}get methods(){return{show:e=>this.show(e)}}show(e){if(this.customNotifier!==void 0){this.customNotifier(e);return}this.builtInNotifier.show(e)}},dt=class extends l{get methods(){let e=()=>this.isEnabled;return{toggle:e=>this.toggle(e),set:e=>this.set(e),get isEnabled(){return e()}}}toggle(e){return this.Blok.ReadOnly.toggle(e)}set(e){return this.Blok.ReadOnly.set(e)}get isEnabled(){return this.Blok.ReadOnly.isEnabled}},ft=class extends l{get methods(){return{clean:(e,t)=>this.clean(e,t)}}clean(e,n){return t.un(e,n)}},pt=class extends l{get methods(){return{save:()=>this.save()}}async save(){var e=this,n,r;let i=`Blok's content can not be saved in read-only mode`;if(e.Blok.ReadOnly.isEnabled)throw t.ar(i,`warn`),Error(i);let a=await e.Blok.Saver.save();if(a!==void 0)return a;let o=(n=(r=e.Blok.Saver).getLastSaveError)==null?void 0:n.call(r);if(o instanceof Error)throw o;let s=o===void 0?`Blok's content can not be saved because collecting data failed`:String(o);throw Error(s)}},mt=class extends l{constructor(...e){super(...e),this.selectionUtils=new t.mn}get methods(){return{findParentTag:(e,t)=>this.findParentTag(e,t),expandToTag:e=>this.expandToTag(e),save:()=>this.selectionUtils.save(),restore:()=>this.selectionUtils.restore(),setFakeBackground:()=>this.selectionUtils.setFakeBackground(),removeFakeBackground:()=>this.selectionUtils.removeFakeBackground(),clearFakeBackground:()=>this.selectionUtils.clearFakeBackground()}}findParentTag(e,t){return this.selectionUtils.findParentTag(e,t)}expandToTag(e){this.selectionUtils.expandToTag(e)}},ht=class extends l{get classes(){return{block:`blok-block`,inlineToolButton:`blok-inline-tool-button`,inlineToolButtonActive:`blok-inline-tool-button--active`,input:`blok-input`,loader:`blok-loader`,button:`blok-button`,settingsButton:`blok-settings-button`,settingsButtonActive:`blok-settings-button--active`,settingsButtonFocused:`blok-settings-button--focused`,settingsButtonFocusedAnimated:`blok-settings-button--focused-animated`}}},gt=class extends l{get methods(){return{close:e=>this.close(e),open:()=>this.open(),toggleBlockSettings:e=>this.toggleBlockSettings(e),toggleToolbox:e=>this.toggleToolbox(e)}}open(){this.Blok.Toolbar.moveAndOpen()}close(e){this.Blok.Toolbar.close(e)}toggleBlockSettings(e){if(this.Blok.BlockManager.currentBlockIndex===-1){t.ar(`Could't toggle the Toolbar because there is no block selected `,`warn`);return}(e==null?!this.Blok.BlockSettings.opened:e)?(this.Blok.Toolbar.moveAndOpen(),this.Blok.BlockSettings.open()):this.Blok.BlockSettings.close()}toggleToolbox(e){if(this.Blok.BlockManager.currentBlockIndex===-1){t.ar(`Could't toggle the Toolbox because there is no block selected `,`warn`);return}(e==null?!this.Blok.Toolbar.toolbox.opened:e)?(this.Blok.Toolbar.moveAndOpen(),this.Blok.Toolbar.toolbox.open()):this.Blok.Toolbar.toolbox.close()}},_t=class extends l{get methods(){return{getBlockTools:()=>Array.from(this.Blok.Tools.blockTools.values()),getToolsConfig:()=>{let e={tools:this.config.tools};return this.config.inlineToolbar!==void 0&&(e.inlineToolbar=this.config.inlineToolbar),this.config.tunes!==void 0&&(e.tunes=this.config.tunes),this.config.theme!==void 0&&(e.theme=this.config.theme),e}}}},vt=class extends l{constructor({config:e,eventsDispatcher:t}){super({config:e,eventsDispatcher:t})}get methods(){return{show:(e,t,n)=>this.show(e,t,n),hide:()=>this.hide(),onHover:(e,t,n)=>this.onHover(e,t,n)}}show(e,n,r){t.ln(e,n,r)}hide(){t.sn()}onHover(e,n,r){t.cn(e,n,r)}},yt=class extends l{get methods(){let e=this.Blok.UI;return{nodes:this.blokNodes,get isMobile(){return e.isMobile}}}get blokNodes(){return{wrapper:this.Blok.UI.nodes.wrapper,redactor:this.Blok.UI.nodes.redactor}}},bt=class extends l{get methods(){let e=this.Blok.ThemeManager;return{get:()=>e.getMode(),set:t=>e.setMode(t),getResolved:()=>e.getResolved()}}},T=()=>new Map,xt=e=>{let t=T();return e.forEach((e,n)=>{t.set(n,e)}),t},St=(e,t,n)=>{let r=e.get(t);return r===void 0&&e.set(t,r=n()),r},Ct=(e,t)=>{let n=[];for(let[r,i]of e)n.push(t(i,r));return n},wt=(e,t)=>{for(let[n,r]of e)if(t(r,n))return!0;return!1},Tt=()=>new Set,Et=e=>e[e.length-1],Dt=(e,t)=>{for(let n=0;n<t.length;n++)e.push(t[n])},Ot=Array.from,kt=(e,t)=>{for(let n=0;n<e.length;n++)if(!t(e[n],n,e))return!1;return!0},At=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n],n,e))return!0;return!1},jt=(e,t)=>{let n=Array(e);for(let r=0;r<e;r++)n[r]=t(r,n);return n},Mt=Array.isArray,Nt=class{constructor(){this._observers=T()}on(e,t){return St(this._observers,e,Tt).add(t),t}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};this.on(e,n)}off(e,t){let n=this._observers.get(e);n!==void 0&&(n.delete(t),n.size===0&&this._observers.delete(e))}emit(e,t){return Ot((this._observers.get(e)||T()).values()).forEach(e=>e(...t))}destroy(){this._observers=T()}},E=Math.floor,Pt=Math.abs,Ft=(e,t)=>e<t?e:t,It=(e,t)=>e>t?e:t;Number.isNaN;var Lt=e=>e===0?1/e<0:e<0,Rt=2**53-1,zt=-(2**53-1),Bt=Number.isInteger||(e=>typeof e==`number`&&isFinite(e)&&E(e)===e);Number.isNaN,Number.parseInt;var Vt=String.fromCharCode;String.fromCodePoint,Vt(65535);var Ht=e=>e.toLowerCase(),Ut=/^\s*/g,Wt=e=>e.replace(Ut,``),Gt=/([A-Z])/g,Kt=(e,t)=>Wt(e.replace(Gt,e=>`${t}${Ht(e)}`)),qt=e=>{let t=unescape(encodeURIComponent(e)),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.codePointAt(e);return r},Jt=typeof TextEncoder<`u`?new TextEncoder:null,Yt=Jt?e=>Jt.encode(e):qt,Xt=typeof TextDecoder>`u`?null:new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0});Xt&&Xt.decode(new Uint8Array).length===1&&(Xt=null);var Zt=(e,t)=>jt(t,()=>e).join(``),Qt=class{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}},$t=()=>new Qt,en=e=>{let t=e.cpos;for(let n=0;n<e.bufs.length;n++)t+=e.bufs[n].length;return t},D=e=>{let t=new Uint8Array(en(e)),n=0;for(let r=0;r<e.bufs.length;r++){let i=e.bufs[r];t.set(i,n),n+=i.length}return t.set(new Uint8Array(e.cbuf.buffer,0,e.cpos),n),t},tn=(e,t)=>{let n=e.cbuf.length;n-e.cpos<t&&(e.bufs.push(new Uint8Array(e.cbuf.buffer,0,e.cpos)),e.cbuf=new Uint8Array(It(n,t)*2),e.cpos=0)},O=(e,t)=>{let n=e.cbuf.length;e.cpos===n&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(n*2),e.cpos=0),e.cbuf[e.cpos++]=t},nn=O,k=(e,t)=>{for(;t>127;)O(e,128|127&t),t=E(t/128);O(e,127&t)},rn=(e,t)=>{let n=Lt(t);for(n&&(t=-t),O(e,(t>63?128:0)|(n?64:0)|63&t),t=E(t/64);t>0;)O(e,(t>127?128:0)|127&t),t=E(t/128)},an=new Uint8Array(3e4),on=an.length/3,sn=Jt&&Jt.encodeInto?(e,t)=>{if(t.length<on){let n=Jt.encodeInto(t,an).written||0;k(e,n);for(let t=0;t<n;t++)O(e,an[t])}else A(e,Yt(t))}:(e,t)=>{let n=unescape(encodeURIComponent(t)),r=n.length;k(e,r);for(let t=0;t<r;t++)O(e,n.codePointAt(t))},cn=(e,t)=>{let n=e.cbuf.length,r=e.cpos,i=Ft(n-r,t.length),a=t.length-i;e.cbuf.set(t.subarray(0,i),r),e.cpos+=i,a>0&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(It(n*2,a)),e.cbuf.set(t.subarray(i)),e.cpos=a)},A=(e,t)=>{k(e,t.byteLength),cn(e,t)},ln=(e,t)=>{tn(e,t);let n=new DataView(e.cbuf.buffer,e.cpos,t);return e.cpos+=t,n},un=(e,t)=>ln(e,4).setFloat32(0,t,!1),dn=(e,t)=>ln(e,8).setFloat64(0,t,!1),fn=(e,t)=>ln(e,8).setBigInt64(0,t,!1),pn=new DataView(new ArrayBuffer(4)),mn=e=>(pn.setFloat32(0,e),pn.getFloat32(0)===e),hn=(e,t)=>{switch(typeof t){case`string`:O(e,119),sn(e,t);break;case`number`:Bt(t)&&Pt(t)<=2147483647?(O(e,125),rn(e,t)):mn(t)?(O(e,124),un(e,t)):(O(e,123),dn(e,t));break;case`bigint`:O(e,122),fn(e,t);break;case`object`:if(t===null)O(e,126);else if(Mt(t)){O(e,117),k(e,t.length);for(let n=0;n<t.length;n++)hn(e,t[n])}else if(t instanceof Uint8Array)O(e,116),A(e,t);else{O(e,118);let n=Object.keys(t);k(e,n.length);for(let r=0;r<n.length;r++){let i=n[r];sn(e,i),hn(e,t[i])}}break;case`boolean`:O(e,t?120:121);break;default:O(e,127)}},gn=class extends Qt{constructor(e){super(),this.w=e,this.s=null,this.count=0}write(e){this.s===e?this.count++:(this.count>0&&k(this,this.count-1),this.count=1,this.w(this,e),this.s=e)}},_n=e=>{e.count>0&&(rn(e.encoder,e.count===1?e.s:-e.s),e.count>1&&k(e.encoder,e.count-2))},vn=class{constructor(){this.encoder=new Qt,this.s=0,this.count=0}write(e){this.s===e?this.count++:(_n(this),this.count=1,this.s=e)}toUint8Array(){return _n(this),D(this.encoder)}},yn=e=>{if(e.count>0){let t=e.diff*2+(e.count===1?0:1);rn(e.encoder,t),e.count>1&&k(e.encoder,e.count-2)}},bn=class{constructor(){this.encoder=new Qt,this.s=0,this.count=0,this.diff=0}write(e){this.diff===e-this.s?(this.s=e,this.count++):(yn(this),this.count=1,this.diff=e-this.s,this.s=e)}toUint8Array(){return yn(this),D(this.encoder)}},xn=class{constructor(){this.sarr=[],this.s=``,this.lensE=new vn}write(e){this.s+=e,this.s.length>19&&(this.sarr.push(this.s),this.s=``),this.lensE.write(e.length)}toUint8Array(){let e=new Qt;return this.sarr.push(this.s),this.s=``,sn(e,this.sarr.join(``)),cn(e,this.lensE.toUint8Array()),D(e)}},j=e=>Error(e),M=()=>{throw j(`Method unimplemented`)},N=()=>{throw j(`Unexpected case`)};crypto.subtle;var Sn=crypto.getRandomValues.bind(crypto),Cn=()=>Sn(new Uint32Array(1))[0],wn=`10000000-1000-4000-8000-100000000000`,Tn=()=>wn.replace(/[018]/g,e=>(e^Cn()&15>>e/4).toString(16)),En=Date.now,Dn=e=>new Promise(e);Promise.all.bind(Promise);var On=e=>e===void 0?null:e,kn=new class{constructor(){this.map=new Map}setItem(e,t){this.map.set(e,t)}getItem(e){return this.map.get(e)}};try{typeof localStorage<`u`&&localStorage&&(kn=localStorage)}catch(e){}var An=kn,jn=Symbol(`Equality`),Mn=(e,t)=>{var n;return e===t||!!(!(e==null||(n=e[jn])==null)&&n.call(e,t))||!1},Nn=e=>typeof e==`object`,Pn=Object.assign,Fn=Object.keys,In=(e,t)=>{for(let n in e)t(e[n],n)},Ln=e=>Fn(e).length,Rn=e=>{for(let t in e)return!1;return!0},zn=(e,t)=>{for(let n in e)if(!t(e[n],n))return!1;return!0},Bn=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Vn=(e,t)=>e===t||Ln(e)===Ln(t)&&zn(e,(e,n)=>(e!==void 0||Bn(t,n))&&Mn(t[n],e)),Hn=Object.freeze,Un=e=>{for(let t in e){let n=e[t];(typeof n==`object`||typeof n==`function`)&&Un(e[t])}return Hn(e)},Wn=(e,t,n=0)=>{try{for(;n<e.length;n++)e[n](...t)}finally{n<e.length&&Wn(e,t,n+1)}},Gn=(e,t)=>{if(e===t)return!0;if(e==null||t==null||e.constructor!==t.constructor&&(e.constructor||Object)!==(t.constructor||Object))return!1;if(e[jn]!=null)return e[jn](t);switch(e.constructor){case ArrayBuffer:e=new Uint8Array(e),t=new Uint8Array(t);case Uint8Array:if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;break;case Set:if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;break;case Map:if(e.size!==t.size)return!1;for(let n of e.keys())if(!t.has(n)||!Gn(e.get(n),t.get(n)))return!1;break;case void 0:case Object:if(Ln(e)!==Ln(t))return!1;for(let n in e)if(!Bn(e,n)||!Gn(e[n],t[n]))return!1;break;case Array:if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Gn(e[n],t[n]))return!1;break;default:return!1}return!0},Kn=(e,t)=>t.includes(e),qn=typeof process<`u`&&process.release&&/node|io\.js/.test(process.release.name)&&Object.prototype.toString.call(typeof process<`u`?process:0)===`[object process]`;typeof navigator<`u`&&/Mac/.test(navigator.platform);var P,Jn=[],Yn=()=>{if(P===void 0)if(qn){P=T();let e=process.argv,t=null;for(let n=0;n<e.length;n++){let r=e[n];r[0]===`-`?(t!==null&&P.set(t,``),t=r):t===null?Jn.push(r):(P.set(t,r),t=null)}t!==null&&P.set(t,``)}else typeof location==`object`?(P=T(),(location.search||`?`).slice(1).split(`&`).forEach(e=>{if(e.length!==0){let[t,n]=e.split(`=`);P.set(`--${Kt(t,`-`)}`,n),P.set(`-${Kt(t,`-`)}`,n)}})):P=T();return P},Xn=e=>Yn().has(e),Zn=e=>On(qn?process.env[e.toUpperCase().replaceAll(`-`,`_`)]:An.getItem(e)),Qn=e=>Xn(`--`+e)||Zn(e)!==null,$n=Qn(`production`),er=qn&&Kn(process.env.FORCE_COLOR,[`true`,`1`,`2`])||!Xn(`--no-colors`)&&!Qn(`no-color`)&&(!qn||process.stdout.isTTY)&&(!qn||Xn(`--color`)||Zn(`COLORTERM`)!==null||(Zn(`TERM`)||``).includes(`color`)),tr=class{constructor(e,t){this.left=e,this.right=t}},F=(e,t)=>new tr(e,t),nr=e=>e.next()>=.5,rr=(e,t,n)=>E(e.next()*(n+1-t)+t),ir=(e,t,n)=>E(e.next()*(n+1-t)+t),ar=(e,t,n)=>ir(e,t,n),or=e=>Vt(ar(e,97,122)),sr=(e,t=0,n=20)=>{let r=ar(e,t,n),i=``;for(let t=0;t<r;t++)i+=or(e);return i},cr=(e,t)=>t[ar(e,0,t.length-1)],lr,ur=Symbol(`0schema`),dr=class{constructor(){this._rerrs=[]}extend(e,t,n,r=null){this._rerrs.push({path:e,expected:t,has:n,message:r})}toString(){let e=[];for(let t=this._rerrs.length-1;t>0;t--){let n=this._rerrs[t];e.push(Zt(` `,(this._rerrs.length-t)*2)+`${n.path==null?``:`[${n.path}] `}${n.has} doesn't match ${n.expected}. ${n.message}`)}return e.join(`
|
|
2
|
+
`)}},fr=(e,t)=>e===t?!0:e==null||t==null||e.constructor!==t.constructor?!1:e[jn]?Mn(e,t):Mt(e)?kt(e,e=>At(t,t=>fr(e,t))):Nn(e)?zn(e,(e,n)=>fr(e,t[n])):!1;lr=jn;var I=class{extends(e){let[t,n]=[this.shape,e.shape];return this.constructor._dilutes&&([n,t]=[t,n]),fr(t,n)}equals(e){return this.constructor===e.constructor&&Gn(this.shape,e.shape)}[ur](){return!0}[lr](e){return this.equals(e)}validate(e){return this.check(e)}check(e,t){M()}get nullable(){return Ur(this,ii)}get optional(){return new xr(this)}cast(e){return ci(e,this),e}expect(e){return ci(e,this),e}};n.n(I,`_dilutes`,!1);var pr=class extends I{constructor(e,t){super(),this.shape=e,this._c=t}check(e,t=void 0){let n=(e==null?void 0:e.constructor)===this.shape&&(this._c==null||this._c(e));return!n&&(t==null||t.extend(null,this.shape.name,e==null?void 0:e.constructor.name,(e==null?void 0:e.constructor)===this.shape?`Check failed`:`Constructor match failed`)),n}},L=(e,t=null)=>new pr(e,t);L(pr);var mr=class extends I{constructor(e){super(),this.shape=e}check(e,t){let n=this.shape(e);return!n&&(t==null||t.extend(null,`custom prop`,e==null?void 0:e.constructor.name,`failed to check custom prop`)),n}},R=e=>new mr(e);L(mr);var hr=class extends I{constructor(e){super(),this.shape=e}check(e,t){let n=this.shape.some(t=>t===e);return!n&&(t==null||t.extend(null,this.shape.join(` | `),e.toString())),n}},gr=(...e)=>new hr(e),_r=L(hr),vr=RegExp.escape||(e=>e.replace(/[().|&,$^[\]]/g,e=>`\\`+e)),yr=e=>{if($r.check(e))return[vr(e)];if(_r.check(e))return e.shape.map(e=>e+``);if(Qr.check(e))return[`[+-]?\\d+.?\\d*`];if(ei.check(e))return[`.*`];if(Wr.check(e))return e.shape.map(yr).flat(1);N()};L(class extends I{constructor(e){super(),this.shape=e,this._r=RegExp(`^`+e.map(yr).map(e=>`(${e.join(`|`)})`).join(``)+`$`)}check(e,t){let n=this._r.exec(e)!=null;return!n&&(t==null||t.extend(null,this._r.toString(),e.toString(),`String doesn't match string template.`)),n}});var br=Symbol(`optional`),xr=class extends I{constructor(e){super(),this.shape=e}check(e,t){let n=e===void 0||this.shape.check(e);return!n&&(t==null||t.extend(null,`undefined (optional)`,`()`)),n}get[br](){return!0}},Sr=L(xr),Cr=class extends I{check(e,t){return t==null||t.extend(null,`never`,typeof e),!1}};new Cr,L(Cr);var wr=class e extends I{constructor(e,t=!1){super(),this.shape=e,this._isPartial=t}get partial(){return new e(this.shape,!0)}check(e,t){return e==null?(t==null||t.extend(null,`object`,`null`),!1):zn(this.shape,(n,r)=>{let i=this._isPartial&&!Bn(e,r)||n.check(e[r],t);return!i&&(t==null||t.extend(r.toString(),n.toString(),typeof e[r],`Object property does not match`)),i})}};n.n(wr,`_dilutes`,!0);var Tr=e=>new wr(e),Er=L(wr),Dr=R(e=>e!=null&&(e.constructor===Object||e.constructor==null)),Or=class extends I{constructor(e,t){super(),this.shape={keys:e,values:t}}check(e,t){return e!=null&&zn(e,(n,r)=>{let i=this.shape.keys.check(r,t);return!i&&(t==null||t.extend(r+``,`Record`,typeof e,i?`Key doesn't match schema`:`Value doesn't match value`)),i&&this.shape.values.check(n,t)})}},kr=(e,t)=>new Or(e,t),Ar=L(Or),jr=class extends I{constructor(e){super(),this.shape=e}check(e,t){return e!=null&&zn(this.shape,(n,r)=>{let i=n.check(e[r],t);return!i&&(t==null||t.extend(r.toString(),`Tuple`,typeof n)),i})}},Mr=(...e)=>new jr(e);L(jr);var Nr=class extends I{constructor(e){super(),this.shape=e.length===1?e[0]:new Hr(e)}check(e,t){let n=Mt(e)&&kt(e,e=>this.shape.check(e));return!n&&(t==null||t.extend(null,`Array`,``)),n}},Pr=(...e)=>new Nr(e),Fr=L(Nr),Ir=R(e=>Mt(e)),Lr=class extends I{constructor(e,t){super(),this.shape=e,this._c=t}check(e,t){let n=e instanceof this.shape&&(this._c==null||this._c(e));return!n&&(t==null||t.extend(null,this.shape.name,e==null?void 0:e.constructor.name)),n}},Rr=(e,t=null)=>new Lr(e,t);L(Lr);var zr=Rr(I),Br=L(class extends I{constructor(e){super(),this.len=e.length-1,this.args=Mr(...e.slice(-1)),this.res=e[this.len]}check(e,t){let n=e.constructor===Function&&e.length<=this.len;return!n&&(t==null||t.extend(null,`function`,typeof e)),n}}),Vr=R(e=>typeof e==`function`);L(class extends I{constructor(e){super(),this.shape=e}check(e,t){let n=kt(this.shape,n=>n.check(e,t));return!n&&(t==null||t.extend(null,`Intersectinon`,typeof e)),n}},e=>e.shape.length>0);var Hr=class extends I{constructor(e){super(),this.shape=e}check(e,t){let n=At(this.shape,n=>n.check(e,t));return t==null||t.extend(null,`Union`,typeof e),n}};n.n(Hr,`_dilutes`,!0);var Ur=(...e)=>e.findIndex(e=>Wr.check(e))>=0?Ur(...e.map(e=>si(e)).map(e=>Wr.check(e)?e.shape:[e]).flat(1)):e.length===1?e[0]:new Hr(e),Wr=L(Hr),Gr=()=>!0,Kr=R(Gr),qr=L(mr,e=>e.shape===Gr),Jr=R(e=>typeof e==`bigint`),Yr=R(e=>e===Jr),Xr=R(e=>typeof e==`symbol`);R(e=>e===Xr);var Zr=R(e=>typeof e==`number`),Qr=R(e=>e===Zr),$r=R(e=>typeof e==`string`),ei=R(e=>e===$r),ti=R(e=>typeof e==`boolean`),ni=R(e=>e===ti),ri=gr(void 0);L(hr,e=>e.shape.length===1&&e.shape[0]===void 0),gr(void 0);var ii=gr(null),ai=L(hr,e=>e.shape.length===1&&e.shape[0]===null);L(Uint8Array),L(pr,e=>e.shape===Uint8Array);var oi=Ur(Zr,$r,ii,ri,Jr,ti,Xr);(()=>{let e=Pr(Kr),t=kr($r,Kr),n=Ur(Zr,$r,ii,ti,e,t);return e.shape=n,t.shape.values=n,n})();var si=e=>{if(zr.check(e))return e;if(Dr.check(e)){let t={};for(let n in e)t[n]=si(e[n]);return Tr(t)}else if(Ir.check(e))return Ur(...e.map(si));else if(oi.check(e))return gr(e);else if(Vr.check(e))return L(e);N()},ci=$n?()=>{}:(e,t)=>{let n=new dr;if(!t.check(e,n))throw j(`Expected value to be of type ${t.constructor.name}.\n${n.toString()}`)},li=class{constructor(e){this.patterns=[],this.$state=e}if(e,t){return this.patterns.push({if:si(e),h:t}),this}else(e){return this.if(Kr,e)}done(){return(e,t)=>{for(let n=0;n<this.patterns.length;n++){let r=this.patterns[n];if(r.if.check(e))return r.h(e,t)}throw j(`Unhandled pattern`)}}},ui=(e=>new li(e))(Kr).if(Qr,(e,t)=>rr(t,zt,Rt)).if(ei,(e,t)=>sr(t)).if(ni,(e,t)=>nr(t)).if(Yr,(e,t)=>BigInt(rr(t,zt,Rt))).if(Wr,(e,t)=>di(t,cr(t,e.shape))).if(Er,(e,t)=>{let n={};for(let r in e.shape){let i=e.shape[r];if(Sr.check(i)){if(nr(t))continue;i=i.shape}n[r]=ui(i,t)}return n}).if(Fr,(e,t)=>{let n=[],r=ir(t,0,42);for(let i=0;i<r;i++)n.push(di(t,e.shape));return n}).if(_r,(e,t)=>cr(t,e.shape)).if(ai,(e,t)=>null).if(Br,(e,t)=>{let n=di(t,e.res);return()=>n}).if(qr,(e,t)=>di(t,cr(t,[Zr,$r,ii,ri,Jr,ti,Pr(Zr),kr(Ur(`a`,`b`,`c`),Zr)]))).if(Ar,(e,t)=>{let n={},r=rr(t,0,3);for(let i=0;i<r;i++){let r=di(t,e.shape.keys);n[r]=di(t,e.shape.values)}return n}).done(),di=(e,t)=>ui(si(t),e),fi=typeof document<`u`?document:{};R(e=>e.nodeType===_i),typeof DOMParser<`u`&&new DOMParser,R(e=>e.nodeType===mi),R(e=>e.nodeType===hi);var pi=e=>Ct(e,(e,t)=>`${t}:${e};`).join(``),mi=fi.ELEMENT_NODE,hi=fi.TEXT_NODE;fi.CDATA_SECTION_NODE,fi.COMMENT_NODE;var gi=fi.DOCUMENT_NODE;fi.DOCUMENT_TYPE_NODE;var _i=fi.DOCUMENT_FRAGMENT_NODE;R(e=>e.nodeType===gi);var z=Symbol,vi=z(),yi=z(),bi=z(),xi=z(),Si=z(),Ci=z(),wi=z(),Ti=z(),Ei=z(),Di=e=>{var t;e.length===1&&((t=e[0])==null?void 0:t.constructor)===Function&&(e=e[0]());let n=[],r=[],i=0;for(;i<e.length;i++){let t=e[i];if(t===void 0)break;if(t.constructor===String||t.constructor===Number)n.push(t);else if(t.constructor===Object)break}for(i>0&&r.push(n.join(``));i<e.length;i++){let t=e[i];t instanceof Symbol||r.push(t)}return r};En();var Oi={[vi]:F(`font-weight`,`bold`),[yi]:F(`font-weight`,`normal`),[bi]:F(`color`,`blue`),[Si]:F(`color`,`green`),[xi]:F(`color`,`grey`),[Ci]:F(`color`,`red`),[wi]:F(`color`,`purple`),[Ti]:F(`color`,`orange`),[Ei]:F(`color`,`black`)},ki=er?e=>{var t;e.length===1&&((t=e[0])==null?void 0:t.constructor)===Function&&(e=e[0]());let n=[],r=[],i=T(),a=[],o=0;for(;o<e.length;o++){let t=e[o],a=Oi[t];if(a!==void 0)i.set(a.left,a.right);else{if(t===void 0)break;if(t.constructor===String||t.constructor===Number){let e=pi(i);o>0||e.length>0?(n.push(`%c`+t),r.push(e)):n.push(t)}else break}}for(o>0&&(a=r,a.unshift(n.join(``)));o<e.length;o++){let t=e[o];t instanceof Symbol||a.push(t)}return a}:Di,Ai=(...e)=>{console.log(...ki(e)),Mi.forEach(t=>t.print(e))},ji=(...e)=>{console.warn(...ki(e)),e.unshift(Ti),Mi.forEach(t=>t.print(e))},Mi=Tt(),Ni=e=>({[Symbol.iterator](){return this},next:e}),Pi=(e,t)=>Ni(()=>{let n;do n=e.next();while(!n.done&&!t(n.value));return n}),Fi=(e,t)=>Ni(()=>{let{done:n,value:r}=e.next();return{done:n,value:n?void 0:t(r)}}),Ii=class{constructor(e,t){this.clock=e,this.len=t}},Li=class{constructor(){this.clients=new Map}},Ri=(e,t,n)=>t.clients.forEach((t,r)=>{let i=e.doc.store.clients.get(r);if(i!=null){let r=i[i.length-1],a=r.id.clock+r.length;for(let r=0,o=t[r];r<t.length&&o.clock<a;o=t[++r])ba(e,i,o.clock,o.len,n)}}),zi=(e,t)=>{let n=0,r=e.length-1;for(;n<=r;){let i=E((n+r)/2),a=e[i],o=a.clock;if(o<=t){if(t<o+a.len)return i;n=i+1}else r=i-1}return null},Bi=(e,t)=>{let n=e.clients.get(t.client);return n!==void 0&&zi(n,t.clock)!==null},Vi=e=>{e.clients.forEach(e=>{e.sort((e,t)=>e.clock-t.clock);let t,n;for(t=1,n=1;t<e.length;t++){let r=e[n-1],i=e[t];r.clock+r.len>=i.clock?e[n-1]=new Ii(r.clock,It(r.len,i.clock+i.len-r.clock)):(n<t&&(e[n]=i),n++)}e.length=n})},Hi=e=>{let t=new Li;for(let n=0;n<e.length;n++)e[n].clients.forEach((r,i)=>{if(!t.clients.has(i)){let a=r.slice();for(let t=n+1;t<e.length;t++)Dt(a,e[t].clients.get(i)||[]);t.clients.set(i,a)}});return Vi(t),t},Ui=(e,t,n,r)=>{St(e.clients,t,()=>[]).push(new Ii(n,r))},Wi=()=>new Li,Gi=(e,t)=>{k(e.restEncoder,t.clients.size),Ot(t.clients.entries()).sort((e,t)=>t[0]-e[0]).forEach(([t,n])=>{e.resetDsCurVal(),k(e.restEncoder,t);let r=n.length;k(e.restEncoder,r);for(let t=0;t<r;t++){let r=n[t];e.writeDsClock(r.clock),e.writeDsLen(r.len)}})},Ki=Cn,qi=class e extends Nt{constructor({guid:e=Tn(),collectionid:t=null,gc:n=!0,gcFilter:r=()=>!0,meta:i=null,autoLoad:a=!1,shouldLoad:o=!0}={}){super(),this.gc=n,this.gcFilter=r,this.clientID=Ki(),this.guid=e,this.collectionid=t,this.share=new Map,this.store=new pa,this._transaction=null,this._transactionCleanups=[],this.subdocs=new Set,this._item=null,this.shouldLoad=o,this.autoLoad=a,this.meta=i,this.isLoaded=!1,this.isSynced=!1,this.isDestroyed=!1,this.whenLoaded=Dn(e=>{this.on(`load`,()=>{this.isLoaded=!0,e(this)})});let s=()=>Dn(e=>{let t=n=>{(n===void 0||n===!0)&&(this.off(`sync`,t),e())};this.on(`sync`,t)});this.on(`sync`,e=>{e===!1&&this.isSynced&&(this.whenSynced=s()),this.isSynced=e===void 0||e===!0,this.isSynced&&!this.isLoaded&&this.emit(`load`,[this])}),this.whenSynced=s()}load(){let e=this._item;e!==null&&!this.shouldLoad&&W(e.parent.doc,e=>{e.subdocsLoaded.add(this)},null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(Ot(this.subdocs).map(e=>e.guid))}transact(e,t=null){return W(this,e,t)}get(e,t=K){let n=St(this.share,e,()=>{let e=new t;return e._integrate(this,null),e}),r=n.constructor;if(t!==K&&r!==t)if(r===K){let r=new t;r._map=n._map,n._map.forEach(e=>{for(;e!==null;e=e.left)e.parent=r}),r._start=n._start;for(let e=r._start;e!==null;e=e.right)e.parent=r;return r._length=n._length,this.share.set(e,r),r._integrate(this,null),r}else throw Error(`Type with the name ${e} has already been defined with a different constructor`);return n}getArray(e=``){return this.get(e,lo)}getText(e=``){return this.get(e,Do)}getMap(e=``){return this.get(e,q)}getXmlElement(e=``){return this.get(e,Ao)}getXmlFragment(e=``){return this.get(e,ko)}toJSON(){let e={};return this.share.forEach((t,n)=>{e[n]=t.toJSON()}),e}destroy(){this.isDestroyed=!0,Ot(this.subdocs).forEach(e=>e.destroy());let t=this._item;if(t!==null){this._item=null;let r=t.content;r.doc=new e(n.t(n.t({guid:this.guid},r.opts),{},{shouldLoad:!1})),r.doc._item=t,W(t.parent.doc,e=>{let n=r.doc;t.deleted||e.subdocsAdded.add(n),e.subdocsRemoved.add(this)},null,!0)}this.emit(`destroyed`,[!0]),this.emit(`destroy`,[this]),super.destroy()}},Ji=class{constructor(){this.restEncoder=$t()}toUint8Array(){return D(this.restEncoder)}resetDsCurVal(){}writeDsClock(e){k(this.restEncoder,e)}writeDsLen(e){k(this.restEncoder,e)}},Yi=class extends Ji{writeLeftID(e){k(this.restEncoder,e.client),k(this.restEncoder,e.clock)}writeRightID(e){k(this.restEncoder,e.client),k(this.restEncoder,e.clock)}writeClient(e){k(this.restEncoder,e)}writeInfo(e){nn(this.restEncoder,e)}writeString(e){sn(this.restEncoder,e)}writeParentInfo(e){k(this.restEncoder,e?1:0)}writeTypeRef(e){k(this.restEncoder,e)}writeLen(e){k(this.restEncoder,e)}writeAny(e){hn(this.restEncoder,e)}writeBuf(e){A(this.restEncoder,e)}writeJSON(e){sn(this.restEncoder,JSON.stringify(e))}writeKey(e){sn(this.restEncoder,e)}},Xi=class{constructor(){this.restEncoder=$t(),this.dsCurrVal=0}toUint8Array(){return D(this.restEncoder)}resetDsCurVal(){this.dsCurrVal=0}writeDsClock(e){let t=e-this.dsCurrVal;this.dsCurrVal=e,k(this.restEncoder,t)}writeDsLen(e){e===0&&N(),k(this.restEncoder,e-1),this.dsCurrVal+=e}},Zi=class extends Xi{constructor(){super(),this.keyMap=new Map,this.keyClock=0,this.keyClockEncoder=new bn,this.clientEncoder=new vn,this.leftClockEncoder=new bn,this.rightClockEncoder=new bn,this.infoEncoder=new gn(nn),this.stringEncoder=new xn,this.parentInfoEncoder=new gn(nn),this.typeRefEncoder=new vn,this.lenEncoder=new vn}toUint8Array(){let e=$t();return k(e,0),A(e,this.keyClockEncoder.toUint8Array()),A(e,this.clientEncoder.toUint8Array()),A(e,this.leftClockEncoder.toUint8Array()),A(e,this.rightClockEncoder.toUint8Array()),A(e,D(this.infoEncoder)),A(e,this.stringEncoder.toUint8Array()),A(e,D(this.parentInfoEncoder)),A(e,this.typeRefEncoder.toUint8Array()),A(e,this.lenEncoder.toUint8Array()),cn(e,D(this.restEncoder)),D(e)}writeLeftID(e){this.clientEncoder.write(e.client),this.leftClockEncoder.write(e.clock)}writeRightID(e){this.clientEncoder.write(e.client),this.rightClockEncoder.write(e.clock)}writeClient(e){this.clientEncoder.write(e)}writeInfo(e){this.infoEncoder.write(e)}writeString(e){this.stringEncoder.write(e)}writeParentInfo(e){this.parentInfoEncoder.write(e?1:0)}writeTypeRef(e){this.typeRefEncoder.write(e)}writeLen(e){this.lenEncoder.write(e)}writeAny(e){hn(this.restEncoder,e)}writeBuf(e){A(this.restEncoder,e)}writeJSON(e){hn(this.restEncoder,e)}writeKey(e){let t=this.keyMap.get(e);t===void 0?(this.keyClockEncoder.write(this.keyClock++),this.stringEncoder.write(e)):this.keyClockEncoder.write(t)}},Qi=(e,t,n,r)=>{r=It(r,t[0].id.clock);let i=H(t,r);k(e.restEncoder,t.length-i),e.writeClient(n),k(e.restEncoder,r);let a=t[i];a.write(e,r-a.id.clock);for(let n=i+1;n<t.length;n++)t[n].write(e,0)},$i=(e,t,n)=>{let r=new Map;n.forEach((e,n)=>{V(t,n)>e&&r.set(n,e)}),ma(t).forEach((e,t)=>{n.has(t)||r.set(t,0)}),k(e.restEncoder,r.size),Ot(r.entries()).sort((e,t)=>t[0]-e[0]).forEach(([n,r])=>{Qi(e,t.clients.get(n),n,r)})},ea=(e,t)=>$i(e,t.doc.store,t.beforeState),ta=class{constructor(){this.l=[]}},na=()=>new ta,ra=(e,t)=>e.l.push(t),ia=(e,t)=>{let n=e.l,r=n.length;e.l=n.filter(e=>t!==e),r===e.l.length&&console.error(`[yjs] Tried to remove event handler that doesn't exist.`)},aa=(e,t,n)=>Wn(e.l,[t,n]),oa=class{constructor(e,t){this.client=e,this.clock=t}},sa=(e,t)=>e===t||e!==null&&t!==null&&e.client===t.client&&e.clock===t.clock,B=(e,t)=>new oa(e,t),ca=e=>{for(let[t,n]of e.doc.share.entries())if(n===e)return t;throw N()},la=(e,t)=>{for(;t!==null;){if(t.parent===e)return!0;t=t.parent._item}return!1},ua=class{constructor(e,t){this.ds=e,this.sv=t}};((e,t)=>new ua(e,t))(Wi(),new Map);var da=(e,t)=>t===void 0?!e.deleted:t.sv.has(e.id.client)&&(t.sv.get(e.id.client)||0)>e.id.clock&&!Bi(t.ds,e.id),fa=(e,t)=>{let n=St(e.meta,fa,Tt),r=e.doc.store;n.has(t)||(t.sv.forEach((t,n)=>{t<V(r,n)&&U(e,B(n,t))}),Ri(e,t.ds,e=>{}),n.add(t))},pa=class{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}},ma=e=>{let t=new Map;return e.clients.forEach((e,n)=>{let r=e[e.length-1];t.set(n,r.id.clock+r.length)}),t},V=(e,t)=>{let n=e.clients.get(t);if(n===void 0)return 0;let r=n[n.length-1];return r.id.clock+r.length},ha=(e,t)=>{let n=e.clients.get(t.id.client);if(n===void 0)n=[],e.clients.set(t.id.client,n);else{let e=n[n.length-1];if(e.id.clock+e.length!==t.id.clock)throw N()}n.push(t)},H=(e,t)=>{let n=0,r=e.length-1,i=e[r],a=i.id.clock;if(a===t)return r;let o=E(t/(a+i.length-1)*r);for(;n<=r;){if(i=e[o],a=i.id.clock,a<=t){if(t<a+i.length)return o;n=o+1}else r=o-1;o=E((n+r)/2)}throw N()},ga=(e,t)=>{let n=e.clients.get(t.client);return n[H(n,t.clock)]},_a=(e,t,n)=>{let r=H(t,n),i=t[r];return i.id.clock<n&&i instanceof X?(t.splice(r+1,0,Zo(e,i,n-i.id.clock)),r+1):r},U=(e,t)=>{let n=e.doc.store.clients.get(t.client);return n[_a(e,n,t.clock)]},va=(e,t,n)=>{let r=t.clients.get(n.client),i=H(r,n.clock),a=r[i];return n.clock!==a.id.clock+a.length-1&&a.constructor!==Po&&r.splice(i+1,0,Zo(e,a,n.clock-a.id.clock+1)),a},ya=(e,t,n)=>{let r=e.clients.get(t.id.client);r[H(r,t.id.clock)]=n},ba=(e,t,n,r,i)=>{if(r===0)return;let a=n+r,o=_a(e,t,n),s;do s=t[o++],a<s.id.clock+s.length&&_a(e,t,a),i(s);while(o<t.length&&t[o].id.clock<a)},xa=class{constructor(e,t,n){this.doc=e,this.deleteSet=new Li,this.beforeState=ma(e.store),this.afterState=new Map,this.changed=new Map,this.changedParentTypes=new Map,this._mergeStructs=[],this.origin=t,this.meta=new Map,this.local=n,this.subdocsAdded=new Set,this.subdocsRemoved=new Set,this.subdocsLoaded=new Set,this._needFormattingCleanup=!1}},Sa=(e,t)=>t.deleteSet.clients.size===0&&!wt(t.afterState,(e,n)=>t.beforeState.get(n)!==e)?!1:(Vi(t.deleteSet),ea(e,t),Gi(e,t.deleteSet),!0),Ca=(e,t,n)=>{let r=t._item;(r===null||r.id.clock<(e.beforeState.get(r.id.client)||0)&&!r.deleted)&&St(e.changed,t,Tt).add(n)},wa=(e,t)=>{let n=e[t],r=e[t-1],i=t;for(;i>0;n=r,r=e[--i-1]){if(r.deleted===n.deleted&&r.constructor===n.constructor&&r.mergeWith(n)){n instanceof X&&n.parentSub!==null&&n.parent._map.get(n.parentSub)===n&&n.parent._map.set(n.parentSub,r);continue}break}let a=t-i;return a&&e.splice(t+1-a,a),a},Ta=(e,t,n)=>{for(let[r,i]of e.clients.entries()){let e=t.clients.get(r);for(let r=i.length-1;r>=0;r--){let a=i[r],o=a.clock+a.len;for(let r=H(e,a.clock),i=e[r];r<e.length&&i.id.clock<o;i=e[++r]){let i=e[r];if(a.clock+a.len<=i.id.clock)break;i instanceof X&&i.deleted&&!i.keep&&n(i)&&i.gc(t,!1)}}}},Ea=(e,t)=>{e.clients.forEach((e,n)=>{let r=t.clients.get(n);for(let t=e.length-1;t>=0;t--){let n=e[t],i=Ft(r.length-1,1+H(r,n.clock+n.len-1));for(let e=i,t=r[e];e>0&&t.id.clock>=n.clock;t=r[e])e-=1+wa(r,e)}})},Da=(e,t)=>{if(t<e.length){let n=e[t],r=n.doc,i=r.store,a=n.deleteSet,o=n._mergeStructs;try{Vi(a),n.afterState=ma(n.doc.store),r.emit(`beforeObserverCalls`,[n,r]);let e=[];n.changed.forEach((t,r)=>e.push(()=>{(r._item===null||!r._item.deleted)&&r._callObserver(n,t)})),e.push(()=>{n.changedParentTypes.forEach((t,r)=>{r._dEH.l.length>0&&(r._item===null||!r._item.deleted)&&(t=t.filter(e=>e.target._item===null||!e.target._item.deleted),t.forEach(e=>{e.currentTarget=r,e._path=null}),t.sort((e,t)=>e.path.length-t.path.length),e.push(()=>{aa(r._dEH,t,n)}))}),e.push(()=>r.emit(`afterTransaction`,[n,r])),e.push(()=>{n._needFormattingCleanup&&wo(n)})}),Wn(e,[])}finally{r.gc&&Ta(a,i,r.gcFilter),Ea(a,i),n.afterState.forEach((e,t)=>{let r=n.beforeState.get(t)||0;if(r!==e){let e=i.clients.get(t),n=It(H(e,r),1);for(let t=e.length-1;t>=n;)t-=1+wa(e,t)}});for(let e=o.length-1;e>=0;e--){let{client:t,clock:n}=o[e].id,r=i.clients.get(t),a=H(r,n);a+1<r.length&&wa(r,a+1)>1||a>0&&wa(r,a)}if(!n.local&&n.afterState.get(r.clientID)!==n.beforeState.get(r.clientID)&&(Ai(Ti,vi,`[yjs] `,yi,Ci,`Changed the client-id because another client seems to be using it.`),r.clientID=Ki()),r.emit(`afterTransactionCleanup`,[n,r]),r._observers.has(`update`)){let e=new Yi;Sa(e,n)&&r.emit(`update`,[e.toUint8Array(),n.origin,r,n])}if(r._observers.has(`updateV2`)){let e=new Zi;Sa(e,n)&&r.emit(`updateV2`,[e.toUint8Array(),n.origin,r,n])}let{subdocsAdded:s,subdocsLoaded:c,subdocsRemoved:l}=n;(s.size>0||l.size>0||c.size>0)&&(s.forEach(e=>{e.clientID=r.clientID,e.collectionid==null&&(e.collectionid=r.collectionid),r.subdocs.add(e)}),l.forEach(e=>r.subdocs.delete(e)),r.emit(`subdocs`,[{loaded:c,added:s,removed:l},r,n]),l.forEach(e=>e.destroy())),e.length<=t+1?(r._transactionCleanups=[],r.emit(`afterAllTransactions`,[r,e])):Da(e,t+1)}}},W=(e,t,n=null,r=!0)=>{let i=e._transactionCleanups,a=!1,o=null;e._transaction===null&&(a=!0,e._transaction=new xa(e,n,r),i.push(e._transaction),i.length===1&&e.emit(`beforeAllTransactions`,[e]),e.emit(`beforeTransaction`,[e._transaction,e]));try{o=t(e._transaction)}finally{if(a){let t=e._transaction===i[0];e._transaction=null,t&&Da(i,0)}}return o},Oa=class{constructor(e,t){this.insertions=t,this.deletions=e,this.meta=new Map}},ka=(e,t,n)=>{Ri(e,n.deletions,n=>{n instanceof X&&t.scope.some(t=>t===e.doc||la(t,n))&&Xo(n,!1)})},Aa=(e,t,n)=>{let r=null,i=e.doc,a=e.scope;W(i,n=>{for(;t.length>0&&e.currStackItem===null;){let r=i.store,o=t.pop(),s=new Set,c=[],l=!1;Ri(n,o.insertions,e=>{if(e instanceof X){if(e.redone!==null){let{item:t,diff:i}=Yo(r,e.id);i>0&&(t=U(n,B(t.id.client,t.id.clock+i))),e=t}!e.deleted&&a.some(t=>t===n.doc||la(t,e))&&c.push(e)}}),Ri(n,o.deletions,e=>{e instanceof X&&a.some(t=>t===n.doc||la(t,e))&&!Bi(o.insertions,e.id)&&s.add(e)}),s.forEach(t=>{l=$o(n,t,s,o.insertions,e.ignoreRemoteMapChanges,e)!==null||l});for(let t=c.length-1;t>=0;t--){let r=c[t];e.deleteFilter(r)&&(r.delete(n),l=!0)}e.currStackItem=l?o:null}n.changed.forEach((e,t)=>{e.has(null)&&t._searchMarker&&(t._searchMarker.length=0)}),r=n},e);let o=e.currStackItem;if(o!=null){let t=r.changedParentTypes;e.emit(`stack-item-popped`,[{stackItem:o,type:n,changedParentTypes:t,origin:e},e]),e.currStackItem=null}return o},ja=class extends Nt{constructor(e,{captureTimeout:t=500,captureTransaction:n=e=>!0,deleteFilter:r=()=>!0,trackedOrigins:i=new Set([null]),ignoreRemoteMapChanges:a=!1,doc:o=Mt(e)?e[0].doc:e instanceof qi?e:e.doc}={}){super(),this.scope=[],this.doc=o,this.addToScope(e),this.deleteFilter=r,i.add(this),this.trackedOrigins=i,this.captureTransaction=n,this.undoStack=[],this.redoStack=[],this.undoing=!1,this.redoing=!1,this.currStackItem=null,this.lastChange=0,this.ignoreRemoteMapChanges=a,this.captureTimeout=t,this.afterTransactionHandler=e=>{if(!this.captureTransaction(e)||!this.scope.some(t=>e.changedParentTypes.has(t)||t===this.doc)||!this.trackedOrigins.has(e.origin)&&(!e.origin||!this.trackedOrigins.has(e.origin.constructor)))return;let t=this.undoing,n=this.redoing,r=t?this.redoStack:this.undoStack;t?this.stopCapturing():n||this.clear(!1,!0);let i=new Li;e.afterState.forEach((t,n)=>{let r=e.beforeState.get(n)||0,a=t-r;a>0&&Ui(i,n,r,a)});let a=En(),o=!1;if(this.lastChange>0&&a-this.lastChange<this.captureTimeout&&r.length>0&&!t&&!n){let t=r[r.length-1];t.deletions=Hi([t.deletions,e.deleteSet]),t.insertions=Hi([t.insertions,i])}else r.push(new Oa(e.deleteSet,i)),o=!0;!t&&!n&&(this.lastChange=a),Ri(e,e.deleteSet,t=>{t instanceof X&&this.scope.some(n=>n===e.doc||la(n,t))&&Xo(t,!0)});let s=[{stackItem:r[r.length-1],origin:e.origin,type:t?`redo`:`undo`,changedParentTypes:e.changedParentTypes},this];o?this.emit(`stack-item-added`,s):this.emit(`stack-item-updated`,s)},this.doc.on(`afterTransaction`,this.afterTransactionHandler),this.doc.on(`destroy`,()=>{this.destroy()})}addToScope(e){let t=new Set(this.scope);e=Mt(e)?e:[e],e.forEach(e=>{t.has(e)||(t.add(e),(e instanceof K?e.doc!==this.doc:e!==this.doc)&&ji(`[yjs#509] Not same Y.Doc`),this.scope.push(e))})}addTrackedOrigin(e){this.trackedOrigins.add(e)}removeTrackedOrigin(e){this.trackedOrigins.delete(e)}clear(e=!0,t=!0){(e&&this.canUndo()||t&&this.canRedo())&&this.doc.transact(n=>{e&&(this.undoStack.forEach(e=>ka(n,this,e)),this.undoStack=[]),t&&(this.redoStack.forEach(e=>ka(n,this,e)),this.redoStack=[]),this.emit(`stack-cleared`,[{undoStackCleared:e,redoStackCleared:t}])})}stopCapturing(){this.lastChange=0}undo(){this.undoing=!0;let e;try{e=Aa(this,this.undoStack,`undo`)}finally{this.undoing=!1}return e}redo(){this.redoing=!0;let e;try{e=Aa(this,this.redoStack,`redo`)}finally{this.redoing=!1}return e}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}destroy(){this.trackedOrigins.delete(this),this.doc.off(`afterTransaction`,this.afterTransactionHandler),super.destroy()}},Ma=`You must not compute changes after the event-handler fired.`,Na=class{constructor(e,t){this.target=e,this.currentTarget=e,this.transaction=t,this._changes=null,this._keys=null,this._delta=null,this._path=null}get path(){return this._path||(this._path=Pa(this.currentTarget,this.target))}deletes(e){return Bi(this.transaction.deleteSet,e.id)}get keys(){if(this._keys===null){if(this.transaction.doc._transactionCleanups.length===0)throw j(Ma);let e=new Map,t=this.target;this.transaction.changed.get(t).forEach(n=>{if(n!==null){let r=t._map.get(n),i,a;if(this.adds(r)){let e=r.left;for(;e!==null&&this.adds(e);)e=e.left;if(this.deletes(r))if(e!==null&&this.deletes(e))i=`delete`,a=Et(e.content.getContent());else return;else e!==null&&this.deletes(e)?(i=`update`,a=Et(e.content.getContent())):(i=`add`,a=void 0)}else if(this.deletes(r))i=`delete`,a=Et(r.content.getContent());else return;e.set(n,{action:i,oldValue:a})}}),this._keys=e}return this._keys}get delta(){return this.changes.delta}adds(e){return e.id.clock>=(this.transaction.beforeState.get(e.id.client)||0)}get changes(){let e=this._changes;if(e===null){if(this.transaction.doc._transactionCleanups.length===0)throw j(Ma);let t=this.target,n=Tt(),r=Tt(),i=[];if(e={added:n,deleted:r,delta:i,keys:this.keys},this.transaction.changed.get(t).has(null)){let e=null,a=()=>{e&&i.push(e)};for(let i=t._start;i!==null;i=i.right)i.deleted?this.deletes(i)&&!this.adds(i)&&((e===null||e.delete===void 0)&&(a(),e={delete:0}),e.delete+=i.length,r.add(i)):this.adds(i)?((e===null||e.insert===void 0)&&(a(),e={insert:[]}),e.insert=e.insert.concat(i.content.getContent()),n.add(i)):((e===null||e.retain===void 0)&&(a(),e={retain:0}),e.retain+=i.length);e!==null&&e.retain===void 0&&a()}this._changes=e}return e}},Pa=(e,t)=>{let n=[];for(;t._item!==null&&t!==e;){if(t._item.parentSub!==null)n.unshift(t._item.parentSub);else{let e=0,r=t._item.parent._start;for(;r!==t._item&&r!==null;)!r.deleted&&r.countable&&(e+=r.length),r=r.right;n.unshift(e)}t=t._item.parent}return n},G=()=>{ji(`Invalid access: Add Yjs type to a document before reading data.`)},Fa=80,Ia=0,La=class{constructor(e,t){e.marker=!0,this.p=e,this.index=t,this.timestamp=Ia++}},Ra=e=>{e.timestamp=Ia++},za=(e,t,n)=>{e.p.marker=!1,e.p=t,t.marker=!0,e.index=n,e.timestamp=Ia++},Ba=(e,t,n)=>{if(e.length>=Fa){let r=e.reduce((e,t)=>e.timestamp<t.timestamp?e:t);return za(r,t,n),r}else{let r=new La(t,n);return e.push(r),r}},Va=(e,t)=>{if(e._start===null||t===0||e._searchMarker===null)return null;let n=e._searchMarker.length===0?null:e._searchMarker.reduce((e,n)=>Pt(t-e.index)<Pt(t-n.index)?e:n),r=e._start,i=0;for(n!==null&&(r=n.p,i=n.index,Ra(n));r.right!==null&&i<t;){if(!r.deleted&&r.countable){if(t<i+r.length)break;i+=r.length}r=r.right}for(;r.left!==null&&i>t;)r=r.left,!r.deleted&&r.countable&&(i-=r.length);for(;r.left!==null&&r.left.id.client===r.id.client&&r.left.id.clock+r.left.length===r.id.clock;)r=r.left,!r.deleted&&r.countable&&(i-=r.length);return n!==null&&Pt(n.index-i)<r.parent.length/Fa?(za(n,r,i),n):Ba(e._searchMarker,r,i)},Ha=(e,t,n)=>{for(let r=e.length-1;r>=0;r--){let i=e[r];if(n>0){let t=i.p;for(t.marker=!1;t&&(t.deleted||!t.countable);)t=t.left,t&&!t.deleted&&t.countable&&(i.index-=t.length);if(t===null||t.marker===!0){e.splice(r,1);continue}i.p=t,t.marker=!0}(t<i.index||n>0&&t===i.index)&&(i.index=It(t,i.index+n))}},Ua=(e,t,n)=>{let r=e,i=t.changedParentTypes;for(;St(i,e,()=>[]).push(n),e._item!==null;)e=e._item.parent;aa(r._eH,n,t)},K=class{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=na(),this._dEH=na(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(e,t){this.doc=e,this._item=t}_copy(){throw M()}clone(){throw M()}_write(e){}get _first(){let e=this._start;for(;e!==null&&e.deleted;)e=e.right;return e}_callObserver(e,t){!e.local&&this._searchMarker&&(this._searchMarker.length=0)}observe(e){ra(this._eH,e)}observeDeep(e){ra(this._dEH,e)}unobserve(e){ia(this._eH,e)}unobserveDeep(e){ia(this._dEH,e)}toJSON(){}},Wa=(e,t,n)=>{e.doc!=null||G(),t<0&&(t=e._length+t),n<0&&(n=e._length+n);let r=n-t,i=[],a=e._start;for(;a!==null&&r>0;){if(a.countable&&!a.deleted){let e=a.content.getContent();if(e.length<=t)t-=e.length;else{for(let n=t;n<e.length&&r>0;n++)i.push(e[n]),r--;t=0}}a=a.right}return i},Ga=e=>{e.doc!=null||G();let t=[],n=e._start;for(;n!==null;){if(n.countable&&!n.deleted){let e=n.content.getContent();for(let n=0;n<e.length;n++)t.push(e[n])}n=n.right}return t},Ka=(e,t)=>{let n=0,r=e._start;for(e.doc!=null||G();r!==null;){if(r.countable&&!r.deleted){let i=r.content.getContent();for(let r=0;r<i.length;r++)t(i[r],n++,e)}r=r.right}},qa=(e,t)=>{let n=[];return Ka(e,(r,i)=>{n.push(t(r,i,e))}),n},Ja=e=>{let t=e._start,n=null,r=0;return{[Symbol.iterator](){return this},next:()=>{if(n===null){for(;t!==null&&t.deleted;)t=t.right;if(t===null)return{done:!0,value:void 0};n=t.content.getContent(),r=0,t=t.right}let e=n[r++];return n.length<=r&&(n=null),{done:!1,value:e}}}},Ya=(e,t)=>{e.doc!=null||G();let n=Va(e,t),r=e._start;for(n!==null&&(r=n.p,t-=n.index);r!==null;r=r.right)if(!r.deleted&&r.countable){if(t<r.length)return r.content.getContent()[t];t-=r.length}},Xa=(e,t,n,r)=>{let i=n,a=e.doc,o=a.clientID,s=a.store,c=n===null?t._start:n.right,l=[],u=()=>{l.length>0&&(i=new X(B(o,V(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Vo(l)),i.integrate(e,0),l=[])};r.forEach(n=>{if(n===null)l.push(n);else switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:l.push(n);break;default:switch(u(),n.constructor){case Uint8Array:case ArrayBuffer:i=new X(B(o,V(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Fo(new Uint8Array(n))),i.integrate(e,0);break;case qi:i=new X(B(o,V(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Ro(n)),i.integrate(e,0);break;default:if(n instanceof K)i=new X(B(o,V(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Jo(n)),i.integrate(e,0);else throw Error(`Unexpected content type in insert operation`)}}}),u()},Za=()=>j(`Length exceeded!`),Qa=(e,t,n,r)=>{if(n>t._length)throw Za();if(n===0)return t._searchMarker&&Ha(t._searchMarker,n,r.length),Xa(e,t,null,r);let i=n,a=Va(t,n),o=t._start;for(a!==null&&(o=a.p,n-=a.index,n===0&&(o=o.prev,n+=o&&o.countable&&!o.deleted?o.length:0));o!==null;o=o.right)if(!o.deleted&&o.countable){if(n<=o.length){n<o.length&&U(e,B(o.id.client,o.id.clock+n));break}n-=o.length}return t._searchMarker&&Ha(t._searchMarker,i,r.length),Xa(e,t,o,r)},$a=(e,t,n)=>{let r=(t._searchMarker||[]).reduce((e,t)=>t.index>e.index?t:e,{index:0,p:t._start}).p;if(r)for(;r.right;)r=r.right;return Xa(e,t,r,n)},eo=(e,t,n,r)=>{if(r===0)return;let i=n,a=r,o=Va(t,n),s=t._start;for(o!==null&&(s=o.p,n-=o.index);s!==null&&n>0;s=s.right)!s.deleted&&s.countable&&(n<s.length&&U(e,B(s.id.client,s.id.clock+n)),n-=s.length);for(;r>0&&s!==null;)s.deleted||(r<s.length&&U(e,B(s.id.client,s.id.clock+r)),s.delete(e),r-=s.length),s=s.right;if(r>0)throw Za();t._searchMarker&&Ha(t._searchMarker,i,-a+r)},to=(e,t,n)=>{let r=t._map.get(n);r!==void 0&&r.delete(e)},no=(e,t,n,r)=>{let i=t._map.get(n)||null,a=e.doc,o=a.clientID,s;if(r==null)s=new Vo([r]);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:case Date:case BigInt:s=new Vo([r]);break;case Uint8Array:s=new Fo(r);break;case qi:s=new Ro(r);break;default:if(r instanceof K)s=new Jo(r);else throw Error(`Unexpected content type`)}new X(B(o,V(a.store,o)),i,i&&i.lastId,null,null,t,n,s).integrate(e,0)},ro=(e,t)=>{e.doc!=null||G();let n=e._map.get(t);return n!==void 0&&!n.deleted?n.content.getContent()[n.length-1]:void 0},io=e=>{let t={};return e.doc!=null||G(),e._map.forEach((e,n)=>{e.deleted||(t[n]=e.content.getContent()[e.length-1])}),t},ao=(e,t)=>{e.doc!=null||G();let n=e._map.get(t);return n!==void 0&&!n.deleted},oo=(e,t)=>{let n={};return e._map.forEach((e,r)=>{let i=e;for(;i!==null&&(!t.sv.has(i.id.client)||i.id.clock>=(t.sv.get(i.id.client)||0));)i=i.left;i!==null&&da(i,t)&&(n[r]=i.content.getContent()[i.length-1])}),n},so=e=>(e.doc!=null||G(),Pi(e._map.entries(),e=>!e[1].deleted)),co=class extends Na{},lo=class e extends K{constructor(){super(),this._prelimContent=[],this._searchMarker=[]}static from(t){let n=new e;return n.push(t),n}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return t.insert(0,this.toArray().map(e=>e instanceof K?e.clone():e)),t}get length(){return this.doc!=null||G(),this._length}_callObserver(e,t){super._callObserver(e,t),Ua(this,e,new co(this,e))}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):W(this.doc,n=>{Qa(n,this,e,t)})}push(e){this.doc===null?this._prelimContent.push(...e):W(this.doc,t=>{$a(t,this,e)})}unshift(e){this.insert(0,e)}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):W(this.doc,n=>{eo(n,this,e,t)})}get(e){return Ya(this,e)}toArray(){return Ga(this)}slice(e=0,t=this.length){return Wa(this,e,t)}toJSON(){return this.map(e=>e instanceof K?e.toJSON():e)}map(e){return qa(this,e)}forEach(e){Ka(this,e)}[Symbol.iterator](){return Ja(this)}_write(e){e.writeTypeRef(Uo)}},uo=class extends Na{constructor(e,t,n){super(e,t),this.keysChanged=n}},q=class e extends K{constructor(e){super(),this._prelimContent=null,e===void 0?this._prelimContent=new Map:this._prelimContent=new Map(e)}_integrate(e,t){super._integrate(e,t),this._prelimContent.forEach((e,t)=>{this.set(t,e)}),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return this.forEach((e,n)=>{t.set(n,e instanceof K?e.clone():e)}),t}_callObserver(e,t){Ua(this,e,new uo(this,e,t))}toJSON(){this.doc!=null||G();let e={};return this._map.forEach((t,n)=>{if(!t.deleted){let r=t.content.getContent()[t.length-1];e[n]=r instanceof K?r.toJSON():r}}),e}get size(){return[...so(this)].length}keys(){return Fi(so(this),e=>e[0])}values(){return Fi(so(this),e=>e[1].content.getContent()[e[1].length-1])}entries(){return Fi(so(this),e=>[e[0],e[1].content.getContent()[e[1].length-1]])}forEach(e){this.doc!=null||G(),this._map.forEach((t,n)=>{t.deleted||e(t.content.getContent()[t.length-1],n,this)})}[Symbol.iterator](){return this.entries()}delete(e){this.doc===null?this._prelimContent.delete(e):W(this.doc,t=>{to(t,this,e)})}set(e,t){return this.doc===null?this._prelimContent.set(e,t):W(this.doc,n=>{no(n,this,e,t)}),t}get(e){return ro(this,e)}has(e){return ao(this,e)}clear(){this.doc===null?this._prelimContent.clear():W(this.doc,e=>{this.forEach(function(t,n,r){to(e,r,n)})})}_write(e){e.writeTypeRef(Wo)}},J=(e,t)=>e===t||typeof e==`object`&&typeof t==`object`&&e&&t&&Vn(e,t),fo=class{constructor(e,t,n,r){this.left=e,this.right=t,this.index=n,this.currentAttributes=r}forward(){switch(this.right===null&&N(),this.right.content.constructor){case Y:this.right.deleted||go(this.currentAttributes,this.right.content);break;default:this.right.deleted||(this.index+=this.right.length);break}this.left=this.right,this.right=this.right.right}},po=(e,t,n)=>{for(;t.right!==null&&n>0;){switch(t.right.content.constructor){case Y:t.right.deleted||go(t.currentAttributes,t.right.content);break;default:t.right.deleted||(n<t.right.length&&U(e,B(t.right.id.client,t.right.id.clock+n)),t.index+=t.right.length,n-=t.right.length);break}t.left=t.right,t.right=t.right.right}return t},mo=(e,t,n,r)=>{let i=new Map,a=r?Va(t,n):null;return a?po(e,new fo(a.p.left,a.p,a.index,i),n-a.index):po(e,new fo(null,t._start,0,i),n)},ho=(e,t,n,r)=>{for(;n.right!==null&&(n.right.deleted===!0||n.right.content.constructor===Y&&J(r.get(n.right.content.key),n.right.content.value));)n.right.deleted||r.delete(n.right.content.key),n.forward();let i=e.doc,a=i.clientID;r.forEach((r,o)=>{let s=n.left,c=n.right,l=new X(B(a,V(i.store,a)),s,s&&s.lastId,c,c&&c.id,t,null,new Y(o,r));l.integrate(e,0),n.right=l,n.forward()})},go=(e,t)=>{let{key:n,value:r}=t;r===null?e.delete(n):e.set(n,r)},_o=(e,t)=>{for(;;){var n;if(e.right===null||!(e.right.deleted||e.right.content.constructor===Y&&J((n=t[e.right.content.key])==null?null:n,e.right.content.value)))break;e.forward()}},vo=(e,t,n,r)=>{let i=e.doc,a=i.clientID,o=new Map;for(let c in r){var s;let l=r[c],u=(s=n.currentAttributes.get(c))==null?null:s;if(!J(u,l)){o.set(c,u);let{left:r,right:s}=n;n.right=new X(B(a,V(i.store,a)),r,r&&r.lastId,s,s&&s.id,t,null,new Y(c,l)),n.right.integrate(e,0),n.forward()}}return o},yo=(e,t,n,r,i)=>{n.currentAttributes.forEach((e,t)=>{i[t]===void 0&&(i[t]=null)});let a=e.doc,o=a.clientID;_o(n,i);let s=vo(e,t,n,i),c=r.constructor===String?new Ho(r):r instanceof K?new Jo(r):new zo(r),{left:l,right:u,index:d}=n;t._searchMarker&&Ha(t._searchMarker,n.index,c.getLength()),u=new X(B(o,V(a.store,o)),l,l&&l.lastId,u,u&&u.id,t,null,c),u.integrate(e,0),n.right=u,n.index=d,n.forward(),ho(e,t,n,s)},bo=(e,t,n,r,i)=>{let a=e.doc,o=a.clientID;_o(n,i);let s=vo(e,t,n,i);iterationLoop:for(;n.right!==null&&(r>0||s.size>0&&(n.right.deleted||n.right.content.constructor===Y));){if(!n.right.deleted)switch(n.right.content.constructor){case Y:{let{key:t,value:a}=n.right.content,o=i[t];if(o!==void 0){if(J(o,a))s.delete(t);else{if(r===0)break iterationLoop;s.set(t,a)}n.right.delete(e)}else n.currentAttributes.set(t,a);break}default:r<n.right.length&&U(e,B(n.right.id.client,n.right.id.clock+r)),r-=n.right.length;break}n.forward()}if(r>0){let i=``;for(;r>0;r--)i+=`
|
|
3
|
+
`;n.right=new X(B(o,V(a.store,o)),n.left,n.left&&n.left.lastId,n.right,n.right&&n.right.id,t,null,new Ho(i)),n.right.integrate(e,0),n.forward()}ho(e,t,n,s)},xo=(e,t,n,r,i)=>{let a=t,o=T();for(;a&&(!a.countable||a.deleted);){if(!a.deleted&&a.content.constructor===Y){let e=a.content;o.set(e.key,e)}a=a.right}let s=0,c=!1;for(;t!==a;){if(n===t&&(c=!0),!t.deleted){let n=t.content;switch(n.constructor){case Y:{var l;let{key:a,value:d}=n,f=(l=r.get(a))==null?null:l;if(o.get(a)!==n||f===d){var u;t.delete(e),s++,!c&&((u=i.get(a))==null?null:u)===d&&f!==d&&(f===null?i.delete(a):i.set(a,f))}!c&&!t.deleted&&go(i,n);break}}}t=t.right}return s},So=(e,t)=>{for(;t&&t.right&&(t.right.deleted||!t.right.countable);)t=t.right;let n=new Set;for(;t&&(t.deleted||!t.countable);){if(!t.deleted&&t.content.constructor===Y){let r=t.content.key;n.has(r)?t.delete(e):n.add(r)}t=t.left}},Co=e=>{let t=0;return W(e.doc,n=>{let r=e._start,i=e._start,a=T(),o=xt(a);for(;i;){if(i.deleted===!1)switch(i.content.constructor){case Y:go(o,i.content);break;default:t+=xo(n,r,i,a,o),a=xt(o),r=i;break}i=i.right}}),t},wo=e=>{let t=new Set,n=e.doc;for(let[r,i]of e.afterState.entries()){let a=e.beforeState.get(r)||0;i!==a&&ba(e,n.store.clients.get(r),a,i,e=>{!e.deleted&&e.content.constructor===Y&&e.constructor!==Po&&t.add(e.parent)})}W(n,n=>{Ri(e,e.deleteSet,e=>{if(e instanceof Po||!e.parent._hasFormatting||t.has(e.parent))return;let r=e.parent;e.content.constructor===Y?t.add(r):So(n,e)});for(let e of t)Co(e)})},To=(e,t,n)=>{let r=n,i=xt(t.currentAttributes),a=t.right;for(;n>0&&t.right!==null;){if(t.right.deleted===!1)switch(t.right.content.constructor){case Jo:case zo:case Ho:n<t.right.length&&U(e,B(t.right.id.client,t.right.id.clock+n)),n-=t.right.length,t.right.delete(e);break}t.forward()}a&&xo(e,a,t.right,i,t.currentAttributes);let o=(t.left||t.right).parent;return o._searchMarker&&Ha(o._searchMarker,t.index,-r+n),t},Eo=class extends Na{constructor(e,t,n){super(e,t),this.childListChanged=!1,this.keysChanged=new Set,n.forEach(e=>{e===null?this.childListChanged=!0:this.keysChanged.add(e)})}get changes(){return this._changes===null&&(this._changes={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set}),this._changes}get delta(){if(this._delta===null){let e=this.target.doc,t=[];W(e,e=>{let n=new Map,r=new Map,i=this.target._start,a=null,o={},s=``,c=0,l=0,u=()=>{if(a!==null){let e=null;switch(a){case`delete`:l>0&&(e={delete:l}),l=0;break;case`insert`:(typeof s==`object`||s.length>0)&&(e={insert:s},n.size>0&&(e.attributes={},n.forEach((t,n)=>{t!==null&&(e.attributes[n]=t)}))),s=``;break;case`retain`:c>0&&(e={retain:c},Rn(o)||(e.attributes=Pn({},o))),c=0;break}e&&t.push(e),a=null}};for(;i!==null;){switch(i.content.constructor){case Jo:case zo:this.adds(i)?this.deletes(i)||(u(),a=`insert`,s=i.content.getContent()[0],u()):this.deletes(i)?(a!==`delete`&&(u(),a=`delete`),l+=1):i.deleted||(a!==`retain`&&(u(),a=`retain`),c+=1);break;case Ho:this.adds(i)?this.deletes(i)||(a!==`insert`&&(u(),a=`insert`),s+=i.content.str):this.deletes(i)?(a!==`delete`&&(u(),a=`delete`),l+=i.length):i.deleted||(a!==`retain`&&(u(),a=`retain`),c+=i.length);break;case Y:{let{key:t,value:s}=i.content;if(this.adds(i)){if(!this.deletes(i)){var d;if(J((d=n.get(t))==null?null:d,s))s!==null&&i.delete(e);else{var f;a===`retain`&&u(),J(s,(f=r.get(t))==null?null:f)?delete o[t]:o[t]=s}}}else if(this.deletes(i)){var p;r.set(t,s);let e=(p=n.get(t))==null?null:p;J(e,s)||(a===`retain`&&u(),o[t]=e)}else if(!i.deleted){r.set(t,s);let n=o[t];n!==void 0&&(J(n,s)?n!==null&&i.delete(e):(a===`retain`&&u(),s===null?delete o[t]:o[t]=s))}i.deleted||(a===`insert`&&u(),go(n,i.content));break}}i=i.right}for(u();t.length>0;){let e=t[t.length-1];if(e.retain!==void 0&&e.attributes===void 0)t.pop();else break}}),this._delta=t}return this._delta}},Do=class e extends K{constructor(e){super(),this._pending=e===void 0?[]:[()=>this.insert(0,e)],this._searchMarker=[],this._hasFormatting=!1}get length(){return this.doc!=null||G(),this._length}_integrate(e,t){super._integrate(e,t);try{this._pending.forEach(e=>e())}catch(e){console.error(e)}this._pending=null}_copy(){return new e}clone(){let t=new e;return t.applyDelta(this.toDelta()),t}_callObserver(e,t){super._callObserver(e,t);let n=new Eo(this,e,t);Ua(this,e,n),!e.local&&this._hasFormatting&&(e._needFormattingCleanup=!0)}toString(){this.doc!=null||G();let e=``,t=this._start;for(;t!==null;)!t.deleted&&t.countable&&t.content.constructor===Ho&&(e+=t.content.str),t=t.right;return e}toJSON(){return this.toString()}applyDelta(e,{sanitize:t=!0}={}){this.doc===null?this._pending.push(()=>this.applyDelta(e)):W(this.doc,n=>{let r=new fo(null,this._start,0,new Map);for(let i=0;i<e.length;i++){let a=e[i];if(a.insert!==void 0){let o=!t&&typeof a.insert==`string`&&i===e.length-1&&r.right===null&&a.insert.slice(-1)===`
|
|
4
|
+
`?a.insert.slice(0,-1):a.insert;(typeof o!=`string`||o.length>0)&&yo(n,this,r,o,a.attributes||{})}else a.retain===void 0?a.delete!==void 0&&To(n,r,a.delete):bo(n,this,r,a.retain,a.attributes||{})}})}toDelta(e,t,n){this.doc!=null||G();let r=[],i=new Map,a=this.doc,o=``,s=this._start;function c(){if(o.length>0){let e={},t=!1;i.forEach((n,r)=>{t=!0,e[r]=n});let n={insert:o};t&&(n.attributes=e),r.push(n),o=``}}let l=()=>{for(;s!==null;){if(da(s,e)||t!==void 0&&da(s,t))switch(s.content.constructor){case Ho:{let r=i.get(`ychange`);e!==void 0&&!da(s,e)?(r===void 0||r.user!==s.id.client||r.type!==`removed`)&&(c(),i.set(`ychange`,n?n(`removed`,s.id):{type:`removed`})):t!==void 0&&!da(s,t)?(r===void 0||r.user!==s.id.client||r.type!==`added`)&&(c(),i.set(`ychange`,n?n(`added`,s.id):{type:`added`})):r!==void 0&&(c(),i.delete(`ychange`)),o+=s.content.str;break}case Jo:case zo:{c();let e={insert:s.content.getContent()[0]};if(i.size>0){let t={};e.attributes=t,i.forEach((e,n)=>{t[n]=e})}r.push(e);break}case Y:da(s,e)&&(c(),go(i,s.content));break}s=s.right}c()};return e||t?W(a,n=>{e&&fa(n,e),t&&fa(n,t),l()},`cleanup`):l(),r}insert(e,t,n){if(t.length<=0)return;let r=this.doc;r===null?this._pending.push(()=>this.insert(e,t,n)):W(r,r=>{let i=mo(r,this,e,!n);n||(n={},i.currentAttributes.forEach((e,t)=>{n[t]=e})),yo(r,this,i,t,n)})}insertEmbed(e,t,n){let r=this.doc;r===null?this._pending.push(()=>this.insertEmbed(e,t,n||{})):W(r,r=>{let i=mo(r,this,e,!n);yo(r,this,i,t,n||{})})}delete(e,t){if(t===0)return;let n=this.doc;n===null?this._pending.push(()=>this.delete(e,t)):W(n,n=>{To(n,mo(n,this,e,!0),t)})}format(e,t,n){if(t===0)return;let r=this.doc;r===null?this._pending.push(()=>this.format(e,t,n)):W(r,r=>{let i=mo(r,this,e,!1);i.right!==null&&bo(r,this,i,t,n)})}removeAttribute(e){this.doc===null?this._pending.push(()=>this.removeAttribute(e)):W(this.doc,t=>{to(t,this,e)})}setAttribute(e,t){this.doc===null?this._pending.push(()=>this.setAttribute(e,t)):W(this.doc,n=>{no(n,this,e,t)})}getAttribute(e){return ro(this,e)}getAttributes(){return io(this)}_write(e){e.writeTypeRef(Go)}},Oo=class{constructor(e,t=()=>!0){this._filter=t,this._root=e,this._currentNode=e._start,this._firstCall=!0,e.doc!=null||G()}[Symbol.iterator](){return this}next(){let e=this._currentNode,t=e&&e.content&&e.content.type;if(e!==null&&(!this._firstCall||e.deleted||!this._filter(t)))do if(t=e.content.type,!e.deleted&&(t.constructor===Ao||t.constructor===ko)&&t._start!==null)e=t._start;else for(;e!==null;){let t=e.next;if(t!==null){e=t;break}else e=e.parent===this._root?null:e.parent._item}while(e!==null&&(e.deleted||!this._filter(e.content.type)));return this._firstCall=!1,e===null?{value:void 0,done:!0}:(this._currentNode=e,{value:e.content.type,done:!1})}},ko=class e extends K{constructor(){super(),this._prelimContent=[]}get firstChild(){let e=this._first;return e?e.content.getContent()[0]:null}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return t.insert(0,this.toArray().map(e=>e instanceof K?e.clone():e)),t}get length(){return this.doc!=null||G(),this._prelimContent===null?this._length:this._prelimContent.length}createTreeWalker(e){return new Oo(this,e)}querySelector(e){e=e.toUpperCase();let t=new Oo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e).next();return t.done?null:t.value}querySelectorAll(e){return e=e.toUpperCase(),Ot(new Oo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e))}_callObserver(e,t){Ua(this,e,new jo(this,t,e))}toString(){return qa(this,e=>e.toString()).join(``)}toJSON(){return this.toString()}toDOM(e=document,t={},n){let r=e.createDocumentFragment();return n!==void 0&&n._createAssociation(r,this),Ka(this,i=>{r.insertBefore(i.toDOM(e,t,n),null)}),r}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):W(this.doc,n=>{Qa(n,this,e,t)})}insertAfter(e,t){if(this.doc!==null)W(this.doc,n=>{let r=e&&e instanceof K?e._item:e;Xa(n,this,r,t)});else{let n=this._prelimContent,r=e===null?0:n.findIndex(t=>t===e)+1;if(r===0&&e!==null)throw j(`Reference item not found`);n.splice(r,0,...t)}}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):W(this.doc,n=>{eo(n,this,e,t)})}toArray(){return Ga(this)}push(e){this.insert(this.length,e)}unshift(e){this.insert(0,e)}get(e){return Ya(this,e)}slice(e=0,t=this.length){return Wa(this,e,t)}forEach(e){Ka(this,e)}_write(e){e.writeTypeRef(qo)}},Ao=class e extends ko{constructor(e=`UNDEFINED`){super(),this.nodeName=e,this._prelimAttrs=new Map}get nextSibling(){let e=this._item?this._item.next:null;return e?e.content.type:null}get prevSibling(){let e=this._item?this._item.prev:null;return e?e.content.type:null}_integrate(e,t){super._integrate(e,t),this._prelimAttrs.forEach((e,t)=>{this.setAttribute(t,e)}),this._prelimAttrs=null}_copy(){return new e(this.nodeName)}clone(){let t=new e(this.nodeName);return In(this.getAttributes(),(e,n)=>{t.setAttribute(n,e)}),t.insert(0,this.toArray().map(e=>e instanceof K?e.clone():e)),t}toString(){let e=this.getAttributes(),t=[],n=[];for(let t in e)n.push(t);n.sort();let r=n.length;for(let i=0;i<r;i++){let r=n[i];t.push(r+`="`+e[r]+`"`)}let i=this.nodeName.toLocaleLowerCase();return`<${i}${t.length>0?` `+t.join(` `):``}>${super.toString()}</${i}>`}removeAttribute(e){this.doc===null?this._prelimAttrs.delete(e):W(this.doc,t=>{to(t,this,e)})}setAttribute(e,t){this.doc===null?this._prelimAttrs.set(e,t):W(this.doc,n=>{no(n,this,e,t)})}getAttribute(e){return ro(this,e)}hasAttribute(e){return ao(this,e)}getAttributes(e){return e?oo(this,e):io(this)}toDOM(e=document,t={},n){let r=e.createElement(this.nodeName),i=this.getAttributes();for(let e in i){let t=i[e];typeof t==`string`&&r.setAttribute(e,t)}return Ka(this,i=>{r.appendChild(i.toDOM(e,t,n))}),n!==void 0&&n._createAssociation(r,this),r}_write(e){e.writeTypeRef(Ko),e.writeKey(this.nodeName)}},jo=class extends Na{constructor(e,t,n){super(e,n),this.childListChanged=!1,this.attributesChanged=new Set,t.forEach(e=>{e===null?this.childListChanged=!0:this.attributesChanged.add(e)})}},Mo=class{constructor(e,t){this.id=e,this.length=t}get deleted(){throw M()}mergeWith(e){return!1}write(e,t,n){throw M()}integrate(e,t){throw M()}},No=0,Po=class extends Mo{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor?(this.length+=e.length,!0):!1}integrate(e,t){t>0&&(this.id.clock+=t,this.length-=t),ha(e.doc.store,this)}write(e,t){e.writeInfo(No),e.writeLen(this.length-t)}getMissing(e,t){return null}},Fo=class e{constructor(e){this.content=e}getLength(){return 1}getContent(){return[this.content]}isCountable(){return!0}copy(){return new e(this.content)}splice(e){throw M()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeBuf(this.content)}getRef(){return 3}},Io=class e{constructor(e){this.len=e}getLength(){return this.len}getContent(){return[]}isCountable(){return!1}copy(){return new e(this.len)}splice(t){let n=new e(this.len-t);return this.len=t,n}mergeWith(e){return this.len+=e.len,!0}integrate(e,t){Ui(e.deleteSet,t.id.client,t.id.clock,this.len),t.markDeleted()}delete(e){}gc(e){}write(e,t){e.writeLen(this.len-t)}getRef(){return 1}},Lo=(e,t)=>new qi(n.t(n.t({guid:e},t),{},{shouldLoad:t.shouldLoad||t.autoLoad||!1})),Ro=class e{constructor(e){e._item&&console.error(`This document was already integrated as a sub-document. You should create a second instance instead with the same guid.`),this.doc=e;let t={};this.opts=t,e.gc||(t.gc=!1),e.autoLoad&&(t.autoLoad=!0),e.meta!==null&&(t.meta=e.meta)}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return!0}copy(){return new e(Lo(this.doc.guid,this.opts))}splice(e){throw M()}mergeWith(e){return!1}integrate(e,t){this.doc._item=t,e.subdocsAdded.add(this.doc),this.doc.shouldLoad&&e.subdocsLoaded.add(this.doc)}delete(e){e.subdocsAdded.has(this.doc)?e.subdocsAdded.delete(this.doc):e.subdocsRemoved.add(this.doc)}gc(e){}write(e,t){e.writeString(this.doc.guid),e.writeAny(this.opts)}getRef(){return 9}},zo=class e{constructor(e){this.embed=e}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return!0}copy(){return new e(this.embed)}splice(e){throw M()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeJSON(this.embed)}getRef(){return 5}},Y=class e{constructor(e,t){this.key=e,this.value=t}getLength(){return 1}getContent(){return[]}isCountable(){return!1}copy(){return new e(this.key,this.value)}splice(e){throw M()}mergeWith(e){return!1}integrate(e,t){let n=t.parent;n._searchMarker=null,n._hasFormatting=!0}delete(e){}gc(e){}write(e,t){e.writeKey(this.key),e.writeJSON(this.value)}getRef(){return 6}},Bo=Zn(`node_env`)===`development`,Vo=class e{constructor(e){this.arr=e,Bo&&Un(e)}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new e(this.arr)}splice(t){let n=new e(this.arr.slice(t));return this.arr=this.arr.slice(0,t),n}mergeWith(e){return this.arr=this.arr.concat(e.arr),!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){let n=this.arr.length;e.writeLen(n-t);for(let r=t;r<n;r++){let t=this.arr[r];e.writeAny(t)}}getRef(){return 8}},Ho=class e{constructor(e){this.str=e}getLength(){return this.str.length}getContent(){return this.str.split(``)}isCountable(){return!0}copy(){return new e(this.str)}splice(t){let n=new e(this.str.slice(t));this.str=this.str.slice(0,t);let r=this.str.charCodeAt(t-1);return r>=55296&&r<=56319&&(this.str=this.str.slice(0,t-1)+`�`,n.str=`�`+n.str.slice(1)),n}mergeWith(e){return this.str+=e.str,!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeString(t===0?this.str:this.str.slice(t))}getRef(){return 4}},Uo=0,Wo=1,Go=2,Ko=3,qo=4,Jo=class e{constructor(e){this.type=e}getLength(){return 1}getContent(){return[this.type]}isCountable(){return!0}copy(){return new e(this.type._copy())}splice(e){throw M()}mergeWith(e){return!1}integrate(e,t){this.type._integrate(e.doc,t)}delete(e){let t=this.type._start;for(;t!==null;)t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e),t=t.right;this.type._map.forEach(t=>{t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e)}),e.changed.delete(this.type)}gc(e){let t=this.type._start;for(;t!==null;)t.gc(e,!0),t=t.right;this.type._start=null,this.type._map.forEach(t=>{for(;t!==null;)t.gc(e,!0),t=t.left}),this.type._map=new Map}write(e,t){this.type._write(e)}getRef(){return 7}},Yo=(e,t)=>{let n=t,r=0,i;do r>0&&(n=B(n.client,n.clock+r)),i=ga(e,n),r=n.clock-i.id.clock,n=i.redone;while(n!==null&&i instanceof X);return{item:i,diff:r}},Xo=(e,t)=>{for(;e!==null&&e.keep!==t;)e.keep=t,e=e.parent._item},Zo=(e,t,n)=>{let{client:r,clock:i}=t.id,a=new X(B(r,i+n),t,B(r,i+n-1),t.right,t.rightOrigin,t.parent,t.parentSub,t.content.splice(n));return t.deleted&&a.markDeleted(),t.keep&&(a.keep=!0),t.redone!==null&&(a.redone=B(t.redone.client,t.redone.clock+n)),t.right=a,a.right!==null&&(a.right.left=a),e._mergeStructs.push(a),a.parentSub!==null&&a.right===null&&a.parent._map.set(a.parentSub,a),t.length=n,a},Qo=(e,t)=>At(e,e=>Bi(e.deletions,t)),$o=(e,t,n,r,i,a)=>{let o=e.doc,s=o.store,c=o.clientID,l=t.redone;if(l!==null)return U(e,l);let u=t.parent._item,d=null,f;if(u!==null&&u.deleted===!0){if(u.redone===null&&(!n.has(u)||$o(e,u,n,r,i,a)===null))return null;for(;u.redone!==null;)u=U(e,u.redone)}let p=u===null?t.parent:u.content.type;if(t.parentSub===null){for(d=t.left,f=t;d!==null;){let t=d;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:U(e,t.redone);if(t!==null&&t.parent._item===u){d=t;break}d=d.left}for(;f!==null;){let t=f;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:U(e,t.redone);if(t!==null&&t.parent._item===u){f=t;break}f=f.right}}else if(f=null,t.right&&!i){for(d=t;d!==null&&d.right!==null&&(d.right.redone||Bi(r,d.right.id)||Qo(a.undoStack,d.right.id)||Qo(a.redoStack,d.right.id));)for(d=d.right;d.redone;)d=U(e,d.redone);if(d&&d.right!==null)return null}else d=p._map.get(t.parentSub)||null;let m=B(c,V(s,c)),h=new X(m,d,d&&d.lastId,f,f&&f.id,p,t.parentSub,t.content.copy());return t.redone=m,Xo(h,!0),h.integrate(e,0),h},X=class e extends Mo{constructor(e,t,n,r,i,a,o,s){super(e,s.getLength()),this.origin=n,this.left=t,this.right=r,this.rightOrigin=i,this.parent=a,this.parentSub=o,this.redone=null,this.content=s,this.info=this.content.isCountable()?2:0}set marker(e){(this.info&8)>0!==e&&(this.info^=8)}get marker(){return(this.info&8)>0}get keep(){return(this.info&1)>0}set keep(e){this.keep!==e&&(this.info^=1)}get countable(){return(this.info&2)>0}get deleted(){return(this.info&4)>0}set deleted(e){this.deleted!==e&&(this.info^=4)}markDeleted(){this.info|=4}getMissing(t,n){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=V(n,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=V(n,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===oa&&this.id.client!==this.parent.client&&this.parent.clock>=V(n,this.parent.client))return this.parent.client;if(this.origin&&(this.left=va(t,n,this.origin),this.origin=this.left.lastId),this.rightOrigin&&(this.right=U(t,this.rightOrigin),this.rightOrigin=this.right.id),this.left&&this.left.constructor===Po||this.right&&this.right.constructor===Po)this.parent=null;else if(!this.parent)this.left&&this.left.constructor===e?(this.parent=this.left.parent,this.parentSub=this.left.parentSub):this.right&&this.right.constructor===e&&(this.parent=this.right.parent,this.parentSub=this.right.parentSub);else if(this.parent.constructor===oa){let e=ga(n,this.parent);e.constructor===Po?this.parent=null:this.parent=e.content.type}return null}integrate(e,t){if(t>0&&(this.id.clock+=t,this.left=va(e,e.doc.store,B(this.id.client,this.id.clock-1)),this.origin=this.left.lastId,this.content=this.content.splice(t),this.length-=t),this.parent){if(!this.left&&(!this.right||this.right.left!==null)||this.left&&this.left.right!==this.right){let t=this.left,n;if(t!==null)n=t.right;else if(this.parentSub!==null)for(n=this.parent._map.get(this.parentSub)||null;n!==null&&n.left!==null;)n=n.left;else n=this.parent._start;let r=new Set,i=new Set;for(;n!==null&&n!==this.right;){if(i.add(n),r.add(n),sa(this.origin,n.origin)){if(n.id.client<this.id.client)t=n,r.clear();else if(sa(this.rightOrigin,n.rightOrigin))break}else if(n.origin!==null&&i.has(ga(e.doc.store,n.origin)))r.has(ga(e.doc.store,n.origin))||(t=n,r.clear());else break;n=n.right}this.left=t}if(this.left!==null)this.right=this.left.right,this.left.right=this;else{let e;if(this.parentSub!==null)for(e=this.parent._map.get(this.parentSub)||null;e!==null&&e.left!==null;)e=e.left;else e=this.parent._start,this.parent._start=this;this.right=e}this.right===null?this.parentSub!==null&&(this.parent._map.set(this.parentSub,this),this.left!==null&&this.left.delete(e)):this.right.left=this,this.parentSub===null&&this.countable&&!this.deleted&&(this.parent._length+=this.length),ha(e.doc.store,this),this.content.integrate(e,this),Ca(e,this.parent,this.parentSub),(this.parent._item!==null&&this.parent._item.deleted||this.parentSub!==null&&this.right!==null)&&this.delete(e)}else new Po(this.id,this.length).integrate(e,0)}get next(){let e=this.right;for(;e!==null&&e.deleted;)e=e.right;return e}get prev(){let e=this.left;for(;e!==null&&e.deleted;)e=e.left;return e}get lastId(){return this.length===1?this.id:B(this.id.client,this.id.clock+this.length-1)}mergeWith(e){if(this.constructor===e.constructor&&sa(e.origin,this.lastId)&&this.right===e&&sa(this.rightOrigin,e.rightOrigin)&&this.id.client===e.id.client&&this.id.clock+this.length===e.id.clock&&this.deleted===e.deleted&&this.redone===null&&e.redone===null&&this.content.constructor===e.content.constructor&&this.content.mergeWith(e.content)){let t=this.parent._searchMarker;return t&&t.forEach(t=>{t.p===e&&(t.p=this,!this.deleted&&this.countable&&(t.index-=this.length))}),e.keep&&(this.keep=!0),this.right=e.right,this.right!==null&&(this.right.left=this),this.length+=e.length,!0}return!1}delete(e){if(!this.deleted){let t=this.parent;this.countable&&this.parentSub===null&&(t._length-=this.length),this.markDeleted(),Ui(e.deleteSet,this.id.client,this.id.clock,this.length),Ca(e,t,this.parentSub),this.content.delete(e)}}gc(e,t){if(!this.deleted)throw N();this.content.gc(e),t?ya(e,this,new Po(this.id,this.length)):this.content=new Io(this.length)}write(e,t){let n=t>0?B(this.id.client,this.id.clock+t-1):this.origin,r=this.rightOrigin,i=this.parentSub,a=this.content.getRef()&31|(n===null?0:128)|(r===null?0:64)|(i===null?0:32);if(e.writeInfo(a),n!==null&&e.writeLeftID(n),r!==null&&e.writeRightID(r),n===null&&r===null){let t=this.parent;if(t._item!==void 0){let n=t._item;if(n===null){let n=ca(t);e.writeParentInfo(!0),e.writeString(n)}else e.writeParentInfo(!1),e.writeLeftID(n.id)}else t.constructor===String?(e.writeParentInfo(!0),e.writeString(t)):t.constructor===oa?(e.writeParentInfo(!1),e.writeLeftID(t)):N();i!==null&&e.writeString(i)}this.content.write(e,t)}},es=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{},ts=`__ $YJS$ __`;es[ts]===!0&&console.error(`Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438`),es[ts]=!0;var ns=[`local`,`load`,`no-capture`,`move`,`move-undo`,`move-redo`],rs=class{constructor(){this.changeCallbacks=[],this.yblocks=null,this.undoManager=null}observe(e,t){this.yblocks=e,this.undoManager=t,this.yblocks.observeDeep((e,t)=>{let n=this.mapTransactionOrigin(t.origin);for(let t of e)this.handleYjsEvent(t,n)})}onBlocksChanged(e){return this.changeCallbacks.push(e),()=>{let t=this.changeCallbacks.indexOf(e);t!==-1&&this.changeCallbacks.splice(t,1)}}mapTransactionOrigin(e){if(this.undoManager&&e===this.undoManager)return this.undoManager.undoing?`undo`:`redo`;if(!this.isLocalOriginTag(e))return`remote`;switch(e){case`local`:return`local`;case`load`:return`load`;case`no-capture`:return`local`;case`move`:return`local`;case`move-undo`:return`undo`;case`move-redo`:return`redo`;default:return e}}isLocalOriginTag(e){return typeof e==`string`&&ns.includes(e)}handleYjsEvent(e,t){if(this.yblocks!==null){if(e.target===this.yblocks){this.handleArrayEvent(e,t);return}e.target instanceof q&&this.handleMapEvent(e.target,t)}}handleArrayEvent(e,t){let n=[],r=[];e.changes.added.forEach(e=>{let t=e.content.getContent();for(let e of t){if(!(e instanceof q))continue;let t=e.get(`id`);typeof t==`string`&&n.push(t)}}),e.changes.deleted.forEach(e=>{let t=this.extractBlockIdFromDeletedItem(e);t!==void 0&&r.push(t)});let i=new Set(n),a=new Set(r),o=n.filter(e=>a.has(e)),s=n.filter(e=>!a.has(e)),c=r.filter(e=>!i.has(e));for(let e of o)this.emitChange({type:`move`,blockId:e,origin:t});s.length===1&&this.emitChange({type:`add`,blockId:s[0],origin:t}),s.length>1&&this.emitChange({type:`batch-add`,blockIds:s,origin:t});for(let e of c)this.emitChange({type:`remove`,blockId:e,origin:t})}extractBlockIdFromDeletedItem(e){var t;let n=e.content.getContent();if(n.length===0)return;let r=n[0];if(!(r instanceof q))return;let i=r._map.get(`id`),a=i instanceof X&&((t=i.content)==null?void 0:t.getContent()[0]);return typeof a==`string`?a:void 0}handleMapEvent(e,t){if(this.yblocks===null)return;if(this.isTopLevelYblock(e)){let n=e.get(`id`);typeof n==`string`&&this.emitChange({type:`update`,blockId:n,origin:t});return}let n=this.findParentBlock(e);n!==void 0&&this.emitChange({type:`update`,blockId:n.get(`id`),origin:t})}isTopLevelYblock(e){return this.yblocks===null?!1:this.yblocks.toArray().includes(e)}findParentBlock(e){if(this.yblocks!==null)return this.yblocks.toArray().find(t=>{let n=t.get(`data`),r=t.get(`tunes`);return n===e||r===e})}emitChange(e){for(let t of this.changeCallbacks)t(e)}destroy(){this.changeCallbacks=[],this.yblocks=null,this.undoManager=null}},is=class{constructor(e){this.ydoc=new qi,this.yblocks=this.ydoc.getArray(`blocks`),this.serializer=e}fromJSON(e){this.ydoc.transact(()=>{this.yblocks.delete(0,this.yblocks.length);for(let t of e){let e=this.serializer.outputDataToYBlock(t);this.yblocks.push([e])}},`load`)}toJSON(){return this.yblocks.toArray().map(e=>this.serializer.yBlockToOutputData(e))}addBlock(e,t){let n=this.serializer.outputDataToYBlock(e);return this.transact(()=>{let e=Math.max(0,Math.min(t==null?this.yblocks.length:t,this.yblocks.length));this.yblocks.insert(e,[n])},`local`),n}removeBlock(e){let t=this.findBlockIndex(e);t!==-1&&this.transact(()=>{this.yblocks.delete(t,1)},`local`)}moveBlock(e,t,n){let r=this.findBlockIndex(e);if(r===-1||r===t)return;let i=n===`local`?`move`:n;this.transact(()=>{let e=this.yblocks.get(r),n=this.serializer.yBlockToOutputData(e);this.yblocks.delete(r,1);let i=Math.max(0,Math.min(t,this.yblocks.length));this.yblocks.insert(i,[this.serializer.outputDataToYBlock(n)])},i)}getBlockById(e){let t=this.findBlockIndex(e);if(t!==-1)return this.yblocks.get(t)}updateBlockData(e,n,r){let i=this.getBlockById(e);if(i===void 0)return!1;let a=i.get(`data`);return t.Bn(a.get(n),r)?!1:(this.transact(()=>{a.set(n,r)},`local`),!0)}updateBlockTune(e,t,n){let r=this.getBlockById(e);r!==void 0&&this.transact(()=>{this.getOrCreateTunesMap(r).set(t,n)},`local`)}updateBlockMetadata(e,t,n){let r=this.getBlockById(e);if(r===void 0)return!1;let i=r.get(`lastEditedAt`),a=r.get(`lastEditedBy`);return i===t&&(n===null||a===n)?!1:(this.transact(()=>{r.set(`lastEditedAt`,t),n!==null&&r.set(`lastEditedBy`,n)},`local`),!0)}findBlockIndex(e){return this.yblocks.toArray().findIndex(t=>t.get(`id`)===e)}transact(e,t){this.ydoc.transact(e,t)}transactWithoutCapture(e){this.ydoc.transact(e,`no-capture`)}getOrCreateTunesMap(e){let t=e.get(`tunes`);if(t!==void 0)return t;let n=new q;return e.set(`tunes`,n),n}destroy(){this.ydoc.destroy()}},as=new Set([` `,` `,`.`,`?`,`!`,`,`,`;`,`:`]),os=e=>as.has(e),ss=class{outputDataToYBlock(e){let t=new q;t.set(`id`,e.id),t.set(`type`,e.type);let n=this.normalizeBlockData(e.type,e.data);return t.set(`data`,this.objectToYMap(n)),e.tunes!==void 0&&t.set(`tunes`,this.objectToYMap(e.tunes)),e.parent!==void 0&&t.set(`parentId`,e.parent),e.content!==void 0&&t.set(`contentIds`,lo.from(e.content)),e.lastEditedAt!==void 0&&t.set(`lastEditedAt`,e.lastEditedAt),e.lastEditedBy!==void 0&&t.set(`lastEditedBy`,e.lastEditedBy),t}yBlockToOutputData(e){let t=e.get(`id`),n=e.get(`type`),r=e.get(`data`);if(typeof t!=`string`)throw Error(`Block id must be a string`);if(typeof n!=`string`)throw Error(`Block type must be a string`);if(!(r instanceof q))throw Error(`Block data must be a Y.Map`);let i={id:t,type:n,data:this.yMapToObject(r)},a=e.get(`tunes`);a instanceof q&&a.size>0&&(i.tunes=this.yMapToObject(a));let o=e.get(`parentId`);typeof o==`string`&&(i.parent=o);let s=e.get(`contentIds`);s instanceof lo&&s.length>0&&(i.content=s.toArray());let c=e.get(`lastEditedAt`);typeof c==`number`&&(i.lastEditedAt=c);let l=e.get(`lastEditedBy`);return typeof l==`string`&&(i.lastEditedBy=l),i}objectToYMap(e){let t=new q;for(let[n,r]of Object.entries(e))typeof r==`object`&&r&&!Array.isArray(r)?t.set(n,this.objectToYMap(r)):t.set(n,r);return t}yMapToObject(e){let t={};return e.forEach((e,n)=>{e instanceof q?t[n]=this.yMapToObject(e):t[n]=e}),t}normalizeBlockData(e,t){return e===`paragraph`&&Object.keys(t).length===0?{text:``}:t}},cs=(e,t=!1)=>{let n=document.createTextNode(``);t?e.insertBefore(n,e.firstChild):e.appendChild(n);let r=document.createRange();r.setStart(n,0),r.setEnd(n,0);let i=window.getSelection();i&&(i.removeAllRanges(),i.addRange(r))},ls=(e,t)=>e===null?null:e.nodeType===Node.TEXT_NODE?e:ls(t?e.firstChild:e.lastChild,t),us=(e,n,r)=>{e.focus();let i=window.getSelection();if(!i)return;let a=r?t.Pn.getDeepestNode(e,!1):t.Pn.getDeepestNode(e,!0);if(!a)return;let o=document.createRange(),s=r?0:t.Pn.getContentLength(a);try{o.setStart(a,s),o.setEnd(a,s),i.removeAllRanges(),i.addRange(o)}catch(t){ds(e,r)}},ds=(e,n=!0)=>{var r,i,a,o;if(t.Pn.isNativeInput(e)){e.focus();let t=n?0:e.value.length;e.setSelectionRange(t,t);return}e.focus();let s=document.createRange(),c=window.getSelection();if(!c)return;let l=e.childNodes,u=n?(r=l[0])==null?null:r:(i=l[l.length-1])==null?null:i,d=ls(u,n);if(u===null){cs(e),c.removeAllRanges(),c.addRange(s);return}if(d===null||d.nodeType!==Node.TEXT_NODE){cs(e,n),c.removeAllRanges(),c.addRange(s);return}let f=(a=(o=d.textContent)==null?void 0:o.length)==null?0:a,p=n?0:f;s.setStart(d,p),s.setEnd(d,p),c.removeAllRanges(),c.addRange(s)},fs=(e,t)=>{let n=e.getBoundingClientRect();if(n.height!==0||n.top!==0)return n;let r=e.startContainer,i=r.nodeType===Node.ELEMENT_NODE?r:r.parentElement;if(!i)return t.getBoundingClientRect();let a=i.getBoundingClientRect();return a.height!==0||a.top!==0?a:t.getBoundingClientRect()},ps=e=>{if(t.Pn.isNativeInput(e)&&e.tagName===`INPUT`)return!0;if(t.Pn.isNativeInput(e)){var n;let t=e,r=(n=t.selectionStart)==null?0:n;return!t.value.substring(0,r).includes(`
|
|
5
|
+
`)}let r=window.getSelection();if(!r||r.rangeCount===0)return!0;let i=fs(r.getRangeAt(0),e),a=t.Pn.getDeepestNode(e,!1);if(!a)return!0;let o=document.createRange();try{o.setStart(a,0),o.setEnd(a,0)}catch(e){return!0}let s=o.getBoundingClientRect();if(s.height===0&&s.top===0){let t=e.getBoundingClientRect(),n=parseFloat(window.getComputedStyle(e).lineHeight)||20;return i.top<t.top+n}return Math.abs(i.top-s.top)<5},ms=e=>{if(t.Pn.isNativeInput(e)&&e.tagName===`INPUT`)return!0;if(t.Pn.isNativeInput(e)){var n;let t=e,r=(n=t.selectionEnd)==null?t.value.length:n;return!t.value.substring(r).includes(`
|
|
6
|
+
`)}let r=window.getSelection();if(!r||r.rangeCount===0)return!0;let i=fs(r.getRangeAt(0),e),a=t.Pn.getDeepestNode(e,!0);if(!a)return!0;let o=document.createRange(),s=t.Pn.getContentLength(a);try{o.setStart(a,s),o.setEnd(a,s)}catch(e){return!0}let c=o.getBoundingClientRect();if(c.height===0&&c.bottom===0){let t=e.getBoundingClientRect(),n=parseFloat(window.getComputedStyle(e).lineHeight)||20;return i.bottom>t.bottom-n}return Math.abs(i.bottom-c.bottom)<5},hs=(e,n,r)=>{let i=document.createRange();try{if(r)i.setStart(n,0),i.setEnd(n,0);else{let e=t.Pn.getContentLength(n);i.setStart(n,e),i.setEnd(n,e)}if(typeof i.getBoundingClientRect!=`function`){let t=e.getBoundingClientRect();return r?t.top+10:t.bottom-10}let a=i.getBoundingClientRect();if(a.height===0&&a.top===0){let t=e.getBoundingClientRect();return r?t.top+10:t.bottom-10}return a.top+a.height/2}catch(e){return null}},gs=(e,t)=>{if(typeof document.caretPositionFromPoint!=`function`)return null;let n=document.caretPositionFromPoint(e,t);return n===null?null:{node:n.offsetNode,offset:n.offset}},_s=(e,n,r)=>{let i=window.getSelection();if(!i)return;e.focus();let a=r?t.Pn.getDeepestNode(e,!1):t.Pn.getDeepestNode(e,!0);if(!a){us(e,i,r);return}let o=hs(e,a,r);if(o===null){us(e,i,r);return}let s=gs(n,o);if(s&&e.contains(s.node)){let e=document.createRange();try{e.setStart(s.node,s.offset),e.setEnd(s.node,s.offset),i.removeAllRanges(),i.addRange(e);return}catch(e){}}us(e,i,r)},vs=(e,t,n,r)=>{let i=e.getBoundingClientRect(),a=window.getComputedStyle(e),o=parseFloat(a.paddingLeft)||0,s=r-i.left-o;if(s<=0)return t;let c=e.value.substring(t,n),l=(parseFloat(a.fontSize)||16)*.6,u=Math.round(s/l);return t+Math.min(Math.max(u,0),c.length)},ys=(e,t,n)=>{e.focus();let r=e.value;if(r.length===0){e.setSelectionRange(0,0);return}if(e.tagName===`TEXTAREA`){let i=r.split(`
|
|
7
|
+
`),a=n?0:i.length-1,o=i.slice(0,a).reduce((e,t)=>e+t.length+1,0),s=vs(e,o,o+i[a].length,t);e.setSelectionRange(s,s);return}let i=vs(e,0,r.length,t);e.setSelectionRange(i,i)},bs=(e,n,r)=>{if(t.Pn.isNativeInput(e)){ys(e,n,r);return}_s(e,n,r)},xs=()=>{let e=window.getSelection();if(!e||e.rangeCount===0)return null;let t=e.getRangeAt(0),n=t.startContainer,r=n.nodeType===Node.ELEMENT_NODE?n:n.parentElement;if(!r)return null;if(typeof t.getBoundingClientRect!=`function`)return r.getBoundingClientRect().left;let i=t.getBoundingClientRect();return i.width!==0||i.height!==0||i.x!==0?i.left:r.getBoundingClientRect().left},Ss=`\xA0`,Cs=1,ws=3,Ts=4,Es=new WeakSet,Ds=typeof window<`u`&&window.MutationObserver!==void 0?new window.MutationObserver(e=>{for(let t of e){let e=t.nextSibling;t.removedNodes.forEach(t=>{var n,r,i;if(t.nodeType!==Cs||!js(t))return;let a=(e==null?void 0:e.nodeType)===ws?e:null;if(a===null)return;let o=a;if(!o.isConnected)return;let s=o.parentElement;if(!((n=s==null?void 0:s.isContentEditable)!=null&&n))return;let c=(r=(i=o.textContent)==null?void 0:i[0])==null?null:r;(c===Ss||c===` `)&&Es.add(o)})}}):null,Os=e=>`style`in e,ks=new WeakSet,As=e=>{if(Ds===null||ks.has(e))return;let t=()=>{e.body!==null&&(Ds.observe(e.body,{childList:!0,subtree:!0}),ks.add(e))};e.readyState===`loading`?e.addEventListener(`DOMContentLoaded`,t,{once:!0}):t()};typeof window<`u`&&window.document!==void 0&&As(window.document);var js=e=>{var n;if(!Os(e)||t.Pn.isSingleTag(e)||t.Pn.isNativeInput(e))return!1;if(e.childNodes.length===0)return!0;let r=(n=e.textContent)==null?``:n;return r.includes(Ss)||!t.Fn(r)?!1:Array.from(e.children).every(e=>js(e))},Ms=e=>{var n;As(e.ownerDocument);let[r,i]=t.in();if(r===null||!e.contains(r)||r.nodeType===ws&&i<((n=r.textContent)==null?``:n).length)return null;let a=document.createTreeWalker(e,Ts);for(a.currentNode=r;;){var o;let e=a.nextNode();if(e===null)return null;let n=(o=e.textContent)==null?``:o;if(n.length===0)continue;let s=n[0];if(!(s===Ss||s===` `)||e===r)return null;let c=document.createRange();try{c.setStart(r,i),c.setEnd(e,0)}catch(e){return null}let l=c.cloneContents(),u=document.createElement(`div`);u.appendChild(l);let d=Array.from(u.querySelectorAll(`*`)).some(e=>{var n;let r=(n=e.textContent)==null?``:n;return r.length===0||t.Fn(r)}),f=Es.has(e);if(!(!d&&!f))return f&&Es.delete(e),{node:e,offset:0}}},Ns,Ps=class{constructor(e,t){this.moveUndoStack=[],this.moveRedoStack=[],this.pendingMoveGroup=null,this.caretUndoStack=[],this.caretRedoStack=[],this.pendingCaretBefore=null,this.hasPendingCaret=!1,this.isPerformingUndoRedo=!1,this.pendingBoundary=!1,this.boundaryTimestamp=0,this.boundaryTimeoutId=null,this.yblocks=e,this.blok=t,this.undoManager=new ja(this.yblocks,{captureTimeout:500,trackedOrigins:new Set([`local`])}),this.setupCaretTracking(),this.moveCallback=()=>{},this.parentRestoreCallback=()=>{}}setMoveCallback(e){this.moveCallback=e}setParentRestoreCallback(e){this.parentRestoreCallback=e}setBlok(e){this.blok=e}setupCaretTracking(){this.undoManager.on(`stack-item-added`,e=>{this.isPerformingUndoRedo||(e.type===`undo`&&(this.caretUndoStack.push({before:this.pendingCaretBefore,after:this.captureCaretSnapshot()}),this.caretRedoStack=[]),this.resetPendingCaretState())}),this.undoManager.on(`stack-item-updated`,e=>{if(!this.isPerformingUndoRedo){if(e.type===`undo`&&this.caretUndoStack.length>0){let e=this.caretUndoStack[this.caretUndoStack.length-1];e.before===null&&this.pendingCaretBefore!==null&&(e.before=this.pendingCaretBefore),e.after=this.captureCaretSnapshot()}this.resetPendingCaretState()}})}resetPendingCaretState(){this.hasPendingCaret=!1,this.pendingCaretBefore=null}undo(){let e=window.scrollY,t=this.moveUndoStack.pop();if(t!==void 0&&t.length>0){this.moveRedoStack.push(t),[...t].reverse().forEach(e=>{this.replayMoveUndo(e)});let n=this.caretUndoStack.pop();this.pushCaretAndRestore(n,this.caretRedoStack,`before`),this.restoreScrollIfJumped(e);return}this.performYjsUndoRedo(()=>this.undoManager.undo());let n=this.caretUndoStack.pop();this.pushCaretAndRestore(n,this.caretRedoStack,`before`),this.restoreScrollIfJumped(e)}redo(){let e=window.scrollY,t=this.moveRedoStack.pop();if(t!==void 0&&t.length>0){this.moveUndoStack.push(t);for(let e of t)this.replayMoveRedo(e);let n=this.caretRedoStack.pop();this.pushCaretAndRestore(n,this.caretUndoStack,`after`),this.restoreScrollIfJumped(e);return}this.performYjsUndoRedo(()=>this.undoManager.redo());let n=this.caretRedoStack.pop();this.pushCaretAndRestore(n,this.caretUndoStack,`after`),this.restoreScrollIfJumped(e)}pushCaretAndRestore(e,t,n){var r,i;if(e===void 0)return;t.push(e);let a=n===`before`?(r=e.before)==null?e.after:r:(i=e.after)==null?e.before:i;this.restoreCaretSnapshot(a)}replayMoveUndo(e){e.fromParentId!==void 0&&this.parentRestoreCallback(e.blockId,e.fromParentId),e.fromIndex!==-1&&this.moveCallback(e.blockId,e.fromIndex,`move-undo`)}replayMoveRedo(e){e.toIndex!==-1&&this.moveCallback(e.blockId,e.toIndex,`move-redo`),e.toParentId!==void 0&&this.parentRestoreCallback(e.blockId,e.toParentId)}performYjsUndoRedo(e){this.isPerformingUndoRedo=!0;try{e()}finally{this.isPerformingUndoRedo=!1}}stopCapturing(){this.undoManager.stopCapturing()}canUndo(){return this.moveUndoStack.length>0||this.undoManager.canUndo()}canRedo(){return this.moveRedoStack.length>0||this.undoManager.canRedo()}recordMoveForUndo(e,t=!1){this.moveUndoStack.push(e),this.moveRedoStack=[],t||this.finalizeCaretEntry()}finalizeCaretEntry(){this.caretUndoStack.push({before:this.pendingCaretBefore,after:this.captureCaretSnapshot()}),this.caretRedoStack=[],this.resetPendingCaretState()}startMoveGroup(){this.markCaretBeforeChange(),this.pendingMoveGroup=[]}endMoveGroup(){this.pendingMoveGroup!==null&&this.pendingMoveGroup.length>0&&(this.recordMoveForUndo(this.pendingMoveGroup,!0),this.finalizeCaretEntry()),this.pendingMoveGroup=null}transactMoves(e){this.startMoveGroup();try{e()}finally{this.endMoveGroup()}}recordMove(e,t,n,r){let i={blockId:e,fromIndex:t,toIndex:n};r&&this.pendingMoveGroup!==null?this.pendingMoveGroup.push(i):(this.markCaretBeforeChange(),this.recordMoveForUndo([i]))}recordParentChangeForPendingMove(e,t,n){if(this.pendingMoveGroup===null)return;let r=this.pendingMoveGroup.find(t=>t.blockId===e);if(r!==void 0){r.fromParentId===void 0&&(r.fromParentId=t),r.toParentId=n;return}this.pendingMoveGroup.push({blockId:e,fromIndex:-1,toIndex:-1,fromParentId:t,toParentId:n})}captureCaretSnapshot(){var e;if(this.blok===void 0||this.blok.BlockManager===void 0)return null;let{BlockManager:n}=this.blok,r=(e=n.currentBlock)==null?(()=>{var e;let t=(e=window.getSelection())==null?void 0:e.anchorNode;if(t!=null)return n.setCurrentBlockByChildNode(t)})():e;if(r===void 0)return null;let i=r.currentInput,a=i===void 0?0:t.an(i);return{blockId:r.id,inputIndex:r.currentInputIndex,offset:a}}markCaretBeforeChange(){this.hasPendingCaret||(this.pendingCaretBefore=this.captureCaretSnapshot(),this.hasPendingCaret=!0)}updateLastCaretAfterPosition(){if(this.caretUndoStack.length===0)return;let e=this.caretUndoStack[this.caretUndoStack.length-1];e.after=this.captureCaretSnapshot()}restoreScrollIfJumped(e){Math.abs(window.scrollY-e)>window.innerHeight&&window.scrollTo(0,e)}restoreCaretSnapshot(e){if(e===null)return;let{BlockManager:t,Caret:n}=this.blok,r=t.getBlockById(e.blockId);if(r===void 0&&t.firstBlock!==void 0){n.setToBlock(t.firstBlock,n.positions.START);return}if(r===void 0)return;let i=r.inputs[e.inputIndex];if(i!==void 0&&i.isConnected){n.setToInput(i,n.positions.DEFAULT,e.offset);return}if(r.parentId!=null){let e=t.blocks.filter(e=>e.parentId===r.parentId&&e.id!==r.id&&e.inputs.length>0&&e.inputs[0].isConnected).at(-1);if(e!==void 0){n.setToBlock(e,n.positions.END);return}let i=t.getBlockById(r.parentId);if(i!==void 0){n.setToBlock(i,n.positions.START);return}}n.setToBlock(r,n.positions.START)}hasPendingBoundary(){return this.pendingBoundary}markBoundary(){this.pendingBoundary=!0,this.boundaryTimestamp=Date.now(),this.boundaryTimeoutId!==null&&clearTimeout(this.boundaryTimeoutId),this.boundaryTimeoutId=setTimeout(()=>{this.pendingBoundary&&(this.stopCapturing(),this.pendingBoundary=!1),this.boundaryTimeoutId=null},100)}clearBoundary(){this.pendingBoundary=!1,this.boundaryTimeoutId!==null&&(clearTimeout(this.boundaryTimeoutId),this.boundaryTimeoutId=null)}checkAndHandleBoundary(){this.pendingBoundary&&Date.now()-this.boundaryTimestamp>=100&&(this.stopCapturing(),this.clearBoundary())}clear(){this.moveUndoStack=[],this.moveRedoStack=[],this.pendingMoveGroup=null,this.caretUndoStack=[],this.caretRedoStack=[],this.pendingCaretBefore=null,this.hasPendingCaret=!1,this.isPerformingUndoRedo=!1,this.clearBoundary(),this.undoManager.clear()}destroy(){this.clear(),this.undoManager.destroy()}};Ns=Ps,Ns.isBoundaryCharacter=os;var Fs=class extends l{get isInMoveGroup(){return this.isMoveGroupActive}constructor(e){super(e),this.isMoveGroupActive=!1,this.serializer=new ss,this.documentStore=new is(this.serializer),this.blockObserver=new rs,this.undoHistory=new Ps(this.documentStore.yblocks,this.Blok),this.undoHistory.setMoveCallback((e,t,n)=>{this.documentStore.moveBlock(e,t,n)}),this.undoHistory.setParentRestoreCallback((e,t)=>{var n;let r=this.documentStore.getBlockById(e);if(r===void 0)return;this.documentStore.transactWithoutCapture(()=>{t===null?r.delete(`parentId`):r.set(`parentId`,t)});let i=(n=this.Blok)==null?void 0:n.BlockManager;if(i!==void 0){let n=i.getBlockById(e);n!==void 0&&i.reparentFromHistoryReplay(n,t)}}),this.blockObserver.observe(this.documentStore.yblocks,this.undoHistory.undoManager)}set state(e){super.state=e,this.undoHistory.setBlok(e)}fromJSON(e){this.undoHistory.clear(),this.documentStore.fromJSON(e)}toJSON(){return this.documentStore.toJSON()}addBlock(e,t){return this.undoHistory.markCaretBeforeChange(),this.documentStore.addBlock(e,t)}removeBlock(e){this.undoHistory.markCaretBeforeChange(),this.documentStore.removeBlock(e)}moveBlock(e,t){let n=this.documentStore.findBlockIndex(e);n!==-1&&(this.undoHistory.recordMove(e,n,t,this.isMoveGroupActive),this.documentStore.moveBlock(e,t,`local`))}updateBlockData(e,t,n){return this.undoHistory.markCaretBeforeChange(),this.documentStore.updateBlockData(e,t,n)}updateBlockTune(e,t,n){this.documentStore.updateBlockTune(e,t,n)}updateBlockMetadata(e,t,n){return this.documentStore.updateBlockMetadata(e,t,n)}getBlockById(e){return this.documentStore.getBlockById(e)}undo(){this.undoHistory.undo()}redo(){this.undoHistory.redo()}canUndo(){return this.undoHistory.canUndo()}canRedo(){return this.undoHistory.canRedo()}clear(){this.undoHistory.clear()}stopCapturing(){this.undoHistory.stopCapturing()}markCaretBeforeChange(){this.undoHistory.markCaretBeforeChange()}captureCaretSnapshot(){return this.undoHistory.captureCaretSnapshot()}updateLastCaretAfterPosition(){this.undoHistory.updateLastCaretAfterPosition()}transactMoves(e){this.isMoveGroupActive=!0;try{this.undoHistory.transactMoves(e)}finally{this.isMoveGroupActive=!1}}recordParentChangeForPendingMove(e,t,n){this.undoHistory.recordParentChangeForPendingMove(e,t,n)}transact(e){this.documentStore.transact(e,`local`)}transactWithoutCapture(e){this.documentStore.transactWithoutCapture(e)}hasPendingBoundary(){return this.undoHistory.hasPendingBoundary()}markBoundary(){this.undoHistory.markBoundary()}clearBoundary(){this.undoHistory.clearBoundary()}checkAndHandleBoundary(){this.undoHistory.checkAndHandleBoundary()}static isBoundaryCharacter(e){return os(e)}onBlocksChanged(e){return this.blockObserver.onBlocksChanged(e)}yMapToObject(e){return this.serializer.yMapToObject(e)}destroy(){this.blockObserver.destroy(),this.undoHistory.destroy(),this.documentStore.destroy()}},Is={Backspace:t.cr.BACKSPACE,Delete:t.cr.DELETE,Enter:t.cr.ENTER,Tab:t.cr.TAB,ArrowDown:t.cr.DOWN,ArrowRight:t.cr.RIGHT,ArrowUp:t.cr.UP,ArrowLeft:t.cr.LEFT},Ls=new Set([`Enter`,`Process`,`Spacebar`,`Space`,`Dead`]),Rs=`[contenteditable="true"], textarea, input`,zs=`list`,Bs=`header`,Vs=/^\[(x|X| )?\]\s([\s\S]*)$/,Hs=/^[-*]\s([\s\S]*)$/,Us=/^(\d+)[.)]\s([\s\S]*)$/,Ws=/^(#{1,6})\s([\s\S]*)$/,Gs=`toggle`,Ks=/^>(#{1,6})\s([\s\S]*)$/,qs=/^>\s([\s\S]*)$/,Js=`divider`,Ys=/^-{3}$/,Xs=`quote`,Zs=/^"\s([\s\S]*)$/,Qs=`code`,$s=/^```\s([\s\S]*)$/,ec=class{constructor(e){this.Blok=e}},tc=class extends ec{getListBlockDepth(e){var t;let n=(t=e.holder)==null||(t=t.querySelector(`[data-list-depth]`))==null?void 0:t.getAttribute(`data-list-depth`);return n?parseInt(n,10):0}canIndentSelectedListItems(){let{BlockSelection:e,BlockManager:t}=this.Blok,n=new Set(e.selectedBlocks);for(let r of e.selectedBlocks){let e=t.getBlockIndex(r);if(e===void 0)return!1;let i=e>0?t.getBlockByIndex(e-1):void 0,a=!i||i.name!==`list`;if(a&&this.getListBlockDepth(r)>=1||!a&&!n.has(i)&&this.getListBlockDepth(r)>this.getListBlockDepth(i))return!1}return!0}canOutdentSelectedListItems(){return this.Blok.BlockSelection.selectedBlocks.every(e=>this.getListBlockDepth(e)>0)}async updateSelectedListItemsDepth(e){var t=this;let{BlockSelection:r,BlockManager:i}=t.Blok,a=r.selectedBlocks.map(e=>i.getBlockIndex(e)).filter(e=>e>=0).sort((e,t)=>e-t);for(let r of a){let a=i.getBlockByIndex(r);if(!a)continue;let o=await a.save(),s=await i.update(a,n.t(n.t({},o),{},{depth:Math.max(0,t.getListBlockDepth(a)+e)}));s.selected=!0}r.clearCache()}handleIndent(e){let{BlockSelection:t}=this.Blok;if(!t.anyBlockSelected||!t.selectedBlocks.every(e=>e.name===`list`))return!1;e.preventDefault();let n=e.shiftKey;return n&&this.canOutdentSelectedListItems()?(this.updateSelectedListItemsDepth(-1),!0):(!n&&this.canIndentSelectedListItems()&&this.updateSelectedListItemsDepth(1),!0)}handleDeletion(e){let{BlockSelection:n,BlockManager:r,Caret:i,BlockSettings:a}=this.Blok;if(a.contains(e.target)||!(e.key===`Backspace`||e.key===`Delete`))return!1;let o=t.mn.isSelectionExists,s=t.mn.isCollapsed===!0;if(!(n.anyBlockSelected&&(!o||s)))return!1;let c=r.deleteSelectedBlocksAndInsertReplacement();return c&&i.setToBlock(c,i.positions.START),n.clearSelection(e),e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),!0}handleCopy(e){let{BlockSelection:t}=this.Blok;t.anyBlockSelected&&t.copySelectedBlocks(e)}handleCut(e){let{BlockSelection:t,BlockManager:n,Caret:r}=this.Blok;t.anyBlockSelected&&t.copySelectedBlocks(e).then(()=>{let i=n.deleteSelectedBlocksAndInsertReplacement();i&&r.setToBlock(i,r.positions.START),t.clearSelection(e)}).catch(()=>{})}},nc=e=>{let t=e.key&&Is[e.key];if(t!==void 0&&typeof t==`number`)return t;let n=e.code&&Is[e.code];return n!==void 0&&typeof n==`number`?n:null},rc=e=>e.key?e.key.length===1||Ls.has(e.key):!1,ic=(e,t)=>{let n=t===`up`?`ArrowUp`:`ArrowDown`;return e.key===n&&e.shiftKey&&(e.ctrlKey||e.metaKey)},ac=class extends ec{get isRtl(){var e;return(e=this.Blok.UI.isRtl)==null?!1:e}get isCurrentBlockInsideTableCell(){var e;let t=this.Blok.BlockManager.currentBlock;return!!(!(t==null||(e=t.holder)==null)&&e.closest(`[data-blok-table-cell-blocks]`))}getTableCellContainer(e){var t,n;return(t=e==null||(n=e.holder)==null?void 0:n.closest(`[data-blok-table-cell-blocks]`))==null?null:t}areBlocksInSameTableCell(e,t){let n=this.getTableCellContainer(e),r=this.getTableCellContainer(t);return n!==null&&n===r}closeToolbarIfNotInTableCell(){this.isCurrentBlockInsideTableCell||this.Blok.Toolbar.close()}handleTab(e){let{InlineToolbar:t,Caret:n}=this.Blok;t.opened||this.isCurrentBlockInsideTableCell||(e.shiftKey?n.navigatePrevious(!0):n.navigateNext(!0))&&e.preventDefault()}handleEnter(e){let{BlockManager:n,UI:r}=this.Blok,i=n.currentBlock;i!==void 0&&(i.tool.isLineBreaksEnabled||r.someToolbarOpened&&r.someFlipperButtonFocused||e.shiftKey&&!t.Gn||(this.Blok.YjsManager.markCaretBeforeChange(),this.Blok.BlockManager.transactForTool(()=>{let e=this.createBlockOnEnter(i);this.Blok.Caret.setToBlock(e),this.Blok.Toolbar.moveAndOpen(e)}),e.preventDefault()))}promoteLastEmptyToggleChild(e){if(!e.isEmpty||e.parentId==null||this.isCurrentBlockInsideTableCell)return null;let t=this.Blok.BlockManager.getBlockById(e.parentId);if(!(t!==void 0&&t.contentIds[t.contentIds.length-1]===e.id)||t===void 0||t.holder.querySelector(`[data-blok-toggle-open]`)!==null||t.contentIds.length!==1)return null;let n=this.Blok.BlockManager.getBlockIndex(t);return this.Blok.BlockManager.insertDefaultBlockAtIndex(n+1)}createBlockOnEnter(e){let n=e.parentId===null;if(e.currentInput!==void 0&&t.rn(e.currentInput)&&!e.hasMedia&&(e.parentId===null||!e.isEmpty)){let t=this.Blok.BlockManager.insertDefaultBlockAtIndex(this.Blok.BlockManager.currentBlockIndex,!1,!1,n);return e.parentId!==null&&this.Blok.BlockManager.setBlockParent(t,e.parentId),e}if(e.currentInput&&t.nn(e.currentInput)){let t=this.promoteLastEmptyToggleChild(e);if(t!==null)return t;let r=e.holder.querySelector(`[data-blok-toggle-open]`),i=(r==null?void 0:r.getAttribute(`data-blok-toggle-open`))===`true`,a=n&&!i,o=this.Blok.BlockManager.insertDefaultBlockAtIndex(this.Blok.BlockManager.currentBlockIndex+1,!1,!1,a);return i?this.Blok.BlockManager.setBlockParent(o,e.id):e.parentId!==null&&o.parentId!==e.parentId&&this.Blok.BlockManager.setBlockParent(o,e.parentId),o}return this.Blok.BlockManager.split()}handleBackspace(e){let{BlockManager:n,Caret:r}=this.Blok,{currentBlock:i,previousBlock:a}=n;if(i!==void 0&&t.mn.isCollapsed&&!(!i.currentInput||!t.rn(i.currentInput))){if(e.preventDefault(),this.closeToolbarIfNotInTableCell(),i.currentInput!==i.firstInput){r.navigatePrevious();return}if(i.parentId!=null&&!this.isCurrentBlockInsideTableCell&&(a===null||a.parentId!==i.parentId)){this.removeEmptyToggleChildAndFocusNext(i);return}if(!(this.isCurrentBlockInsideTableCell&&!this.areBlocksInSameTableCell(i,a))&&a!==null){if(a.isEmpty){n.removeBlock(a);return}if(i.isEmpty){n.removeBlock(i);let e=n.currentBlock;e&&r.setToBlock(e,r.positions.END);return}t.bn(a,i)?this.mergeBlocks(a,i):r.setToBlock(a,r.positions.END)}}}handleDelete(e){let{BlockManager:n,Caret:r}=this.Blok,{currentBlock:i,nextBlock:a}=n;if(i!==void 0&&t.mn.isCollapsed&&!(!i.currentInput||!t.nn(i.currentInput))){if(e.preventDefault(),this.closeToolbarIfNotInTableCell(),i.currentInput!==i.lastInput){r.navigateNext();return}if(a!==null&&a.parentId===i.parentId&&!(this.isCurrentBlockInsideTableCell&&!this.areBlocksInSameTableCell(i,a))){if(a.isEmpty){n.removeBlock(a);return}if(i.isEmpty){let e=n.previousBlock;if(i.parentId!==null&&(e===null||e.parentId!==i.parentId))return;n.removeBlock(i);let t=n.currentBlock;t&&r.setToBlock(t,r.positions.START),this.closeToolbarIfNotInTableCell();return}t.bn(i,a)?this.mergeBlocks(i,a):r.setToBlock(a,r.positions.START)}}}mergeBlocks(e,t){let{BlockManager:n}=this.Blok;e.lastInput!==void 0&&(ds(e.lastInput,!1),n.mergeBlocks(e,t).then(()=>{this.closeToolbarIfNotInTableCell()}).catch(()=>{}))}handleArrowRightAndDown(e){var n;let r=nc(e);if(r===null||ic(e,`down`))return;let i=t.tn.usedKeys.includes(r)&&(!e.shiftKey||r===t.cr.TAB);if(this.Blok.UI.someToolbarOpened&&i)return;!e.shiftKey&&!this.isCurrentBlockInsideTableCell&&this.Blok.InlineToolbar.close();let a=t.mn.get();a!=null&&a.anchorNode&&!this.Blok.BlockSelection.anyBlockSelected&&this.Blok.BlockManager.setCurrentBlockByChildNode(a.anchorNode);let{currentBlock:o}=this.Blok.BlockManager,s=e.target,c=document.activeElement instanceof HTMLElement?document.activeElement:null,l=[o==null?void 0:o.inputs.find(e=>s!==null&&e.contains(s)),o==null?void 0:o.inputs.find(e=>c!==null&&e.contains(c)),s==null?void 0:s.closest(Rs),c==null?void 0:c.closest(Rs)],u=(n=o==null?void 0:o.currentInput)==null?l.find(e=>e instanceof HTMLElement):n,d=(u===void 0?void 0:t.nn(u))||this.Blok.BlockSelection.anyBlockSelected,f=e.shiftKey&&r===t.cr.DOWN;if(f&&d){this.Blok.CrossBlockSelection.toggleBlockSelectedState();return}f&&this.Blok.InlineToolbar.tryToShow();let p=r===t.cr.RIGHT&&!e.shiftKey&&!this.isRtl&&u instanceof HTMLElement?Ms(u):null;if(p!==null){t.mn.setCursor(p.node,p.offset),e.preventDefault();return}let m=r===t.cr.DOWN,h=r===t.cr.RIGHT&&!this.isRtl;if(m?this.Blok.Caret.navigateVerticalNext():h&&this.Blok.Caret.navigateNext()){e.preventDefault(),this.Blok.Toolbar.moveAndOpen(this.Blok.BlockManager.currentBlock);return}t.Xn(()=>{this.Blok.BlockManager.currentBlock&&this.Blok.BlockManager.currentBlock.updateCurrentInput()},20)(),this.Blok.BlockSelection.clearSelection(e)}handleArrowLeftAndUp(e){var n;let r=this.Blok.UI.someToolbarOpened,i=nc(e);if(i===null||ic(e,`up`)||r&&t.tn.usedKeys.includes(i)&&(!e.shiftKey||i===t.cr.TAB))return;r&&!this.isCurrentBlockInsideTableCell&&this.Blok.UI.closeAllToolbars(),!e.shiftKey&&!this.isCurrentBlockInsideTableCell&&this.Blok.InlineToolbar.close();let a=window.getSelection();a!=null&&a.anchorNode&&!this.Blok.BlockSelection.anyBlockSelected&&this.Blok.BlockManager.setCurrentBlockByChildNode(a.anchorNode);let{currentBlock:o}=this.Blok.BlockManager,s=e.target,c=document.activeElement instanceof HTMLElement?document.activeElement:null,l=[o==null?void 0:o.inputs.find(e=>s!==null&&e.contains(s)),o==null?void 0:o.inputs.find(e=>c!==null&&e.contains(c)),s==null?void 0:s.closest(Rs),c==null?void 0:c.closest(Rs)],u=(n=o==null?void 0:o.currentInput)==null?l.find(e=>e instanceof HTMLElement):n,d=(u===void 0?void 0:t.rn(u))||this.Blok.BlockSelection.anyBlockSelected,f=e.shiftKey&&i===t.cr.UP;if(f&&d){this.Blok.CrossBlockSelection.toggleBlockSelectedState(!1);return}f&&this.Blok.InlineToolbar.tryToShow();let p=i===t.cr.UP,m=i===t.cr.LEFT&&!this.isRtl;if(p?this.Blok.Caret.navigateVerticalPrevious():m&&this.Blok.Caret.navigatePrevious()){e.preventDefault(),this.Blok.Toolbar.moveAndOpen(this.Blok.BlockManager.currentBlock);return}t.Xn(()=>{this.Blok.BlockManager.currentBlock&&this.Blok.BlockManager.currentBlock.updateCurrentInput()},20)(),this.Blok.BlockSelection.clearSelection(e)}removeEmptyToggleChildAndFocusNext(e){if(!e.isEmpty)return;let{BlockManager:t,Caret:n}=this.Blok,r=t.nextBlock;r!==null&&r.parentId===e.parentId&&(t.removeBlock(e),n.setToBlock(r,n.positions.START))}},oc=class extends ec{handleInput(e){if(e.inputType!==`insertText`)return!1;if(e.data===`-`)return this.handleDividerShortcut();if(e.data!==` `)return!1;let t=this.handleListShortcut(),n=this.handleHeaderShortcut(),r=this.handleToggleHeaderShortcut(),i=this.handleToggleShortcut(),a=this.handleQuoteShortcut(),o=this.handleCodeShortcut();return t||n||r||i||a||o}handleListShortcut(){let{BlockManager:e,Tools:t}=this.Blok,r=e.currentBlock;if(!r||!r.tool.isDefault||!t.blockTools.get(`list`))return!1;let i=r.currentInput;if(!i)return!1;let a=i.textContent||``,o=r.holder.getAttribute(`data-blok-depth`),s=o?parseInt(o,10):0,c=Vs.exec(a);if(c){var l;this.Blok.YjsManager.stopCapturing();let t=((l=c[1])==null?void 0:l.toLowerCase())===`x`,a=c[1]===void 0?3:4,o=this.extractRemainingHtml(i,a),u=this.getCaretOffset(i)-a,d=e.replace(r,zs,n.t({text:o,style:`checklist`,checked:t},s>0?{depth:s}:{}));return this.setCaretAfterConversion(d,u),this.Blok.YjsManager.stopCapturing(),!0}if(Hs.exec(a)){this.Blok.YjsManager.stopCapturing();let t=this.extractRemainingHtml(i,2),a=this.getCaretOffset(i)-2,o=e.replace(r,zs,n.t({text:t,style:`unordered`,checked:!1},s>0?{depth:s}:{}));return this.setCaretAfterConversion(o,a),this.Blok.YjsManager.stopCapturing(),!0}let u=Us.exec(a);if(!u)return!1;this.Blok.YjsManager.stopCapturing();let d=parseInt(u[1],10),f=u[1].length+2,p=this.extractRemainingHtml(i,f),m=this.getCaretOffset(i)-f,h={text:p,style:`ordered`,checked:!1};d!==1&&(h.start=d),s>0&&(h.depth=s);let g=e.replace(r,zs,h);return this.setCaretAfterConversion(g,m),this.Blok.YjsManager.stopCapturing(),!0}handleHeaderShortcut(){let{BlockManager:e,Tools:t}=this.Blok,n=e.currentBlock;if(!n||n.holder.closest(`[data-blok-table-cell-blocks]`)!==null||!n.tool.isDefault)return!1;let r=t.blockTools.get(Bs);if(!r)return!1;let i=n.currentInput;if(!i)return!1;let a=i.textContent||``,{levels:o,shortcuts:s}=r.settings,c=s===void 0?this.matchDefaultHeaderShortcut(a):this.matchCustomHeaderShortcut(a,s);if(!c||o&&!o.includes(c.level))return!1;this.Blok.YjsManager.stopCapturing();let l=this.extractRemainingHtml(i,c.shortcutLength),u=this.getCaretOffset(i)-c.shortcutLength,d=e.replace(n,Bs,{text:l,level:c.level});return this.setCaretAfterConversion(d,u),this.Blok.YjsManager.stopCapturing(),!0}handleToggleHeaderShortcut(){let{BlockManager:e,Tools:t}=this.Blok,n=e.currentBlock;if(!n||n.holder.closest(`[data-blok-table-cell-blocks]`)!==null||!n.tool.isDefault)return!1;let r=t.blockTools.get(Bs);if(!r)return!1;let i=n.currentInput;if(!i)return!1;let a=i.textContent||``,o=Ks.exec(a);if(!o)return!1;let s=o[1].length,{levels:c}=r.settings;if(c&&!c.includes(s))return!1;this.Blok.YjsManager.stopCapturing();let l=1+s+1,u=this.extractRemainingHtml(i,l),d=this.getCaretOffset(i)-l,f=e.replace(n,Bs,{text:u,level:s,isToggleable:!0});return d>0?this.setCaretAfterConversion(f,d):this.setCaretAfterToggleArrow(f),this.Blok.YjsManager.stopCapturing(),!0}handleToggleShortcut(){let{BlockManager:e,Tools:t}=this.Blok,n=e.currentBlock;if(!n||n.holder.closest(`[data-blok-table-cell-blocks]`)!==null||!n.tool.isDefault||!t.blockTools.get(`toggle`))return!1;let r=n.currentInput;if(!r)return!1;let i=r.textContent||``;if(!qs.exec(i))return!1;this.Blok.YjsManager.stopCapturing();let a=this.extractRemainingHtml(r,2),o=this.getCaretOffset(r)-2,s=e.replace(n,Gs,{text:a});return this.setCaretAfterConversion(s,o),this.Blok.YjsManager.stopCapturing(),!0}handleDividerShortcut(){let{BlockManager:e,Tools:t,Caret:n}=this.Blok,r=e.currentBlock;if(!r||!r.tool.isDefault||!t.blockTools.get(`divider`))return!1;let i=r.currentInput;if(!i)return!1;let a=i.textContent||``;if(!Ys.test(a))return!1;this.Blok.YjsManager.stopCapturing();let o=e.replace(r,Js,{}),s=e.getBlockIndex(o),c=e.insertDefaultBlockAtIndex(s+1);return n.setToBlock(c,n.positions.START),this.Blok.YjsManager.stopCapturing(),!0}handleQuoteShortcut(){let{BlockManager:e,Tools:t}=this.Blok,n=e.currentBlock;if(!n||!n.tool.isDefault||!t.blockTools.get(`quote`))return!1;let r=n.currentInput;if(!r)return!1;let i=r.textContent||``;if(!Zs.exec(i))return!1;this.Blok.YjsManager.stopCapturing();let a=this.extractRemainingHtml(r,2),o=this.getCaretOffset(r)-2,s=e.replace(n,Xs,{text:a});return this.setCaretAfterConversion(s,o),this.Blok.YjsManager.stopCapturing(),!0}handleCodeShortcut(){let{BlockManager:e,Tools:t}=this.Blok,n=e.currentBlock;if(!n||!n.tool.isDefault||!t.blockTools.get(`code`))return!1;let r=n.currentInput;if(!r)return!1;let i=r.textContent||``;if(!$s.exec(i))return!1;this.Blok.YjsManager.stopCapturing();let a=this.extractRemainingHtml(r,4),o=e.replace(n,Qs,{code:a});return this.setCaretAfterConversion(o,0),this.Blok.YjsManager.stopCapturing(),!0}matchDefaultHeaderShortcut(e){let t=Ws.exec(e);return t?{level:t[1].length,shortcutLength:t[1].length+1}:null}matchCustomHeaderShortcut(e,t){for(let[n,r]of Object.entries(t).sort((e,t)=>t[1].length-e[1].length)){if(e.length<=r.length||!e.startsWith(r))continue;let t=e.charCodeAt(r.length);if(t===32||t===160)return{level:parseInt(n,10),shortcutLength:r.length+1}}return null}setCaretAfterToggleArrow(e){let{Caret:t}=this.Blok,n=e.firstInput;if(!(n!=null&&n.firstChild)){t.setToBlock(e,t.positions.START);return}let r=document.createRange();r.setStartAfter(n.firstChild),r.collapse(!0);let i=window.getSelection();i==null||i.removeAllRanges(),i==null||i.addRange(r)}extractRemainingHtml(e,t){let n=e.innerHTML||``,r=document.createElement(`div`);r.innerHTML=n;let i=document.createTreeWalker(r,NodeFilter.SHOW_TEXT,null),a=this.collectNodesToModify(i,t);for(let{node:e,removeCount:t}of a){let n=e.textContent||``;t>=n.length?e.remove():e.textContent=n.slice(t)}return r.innerHTML}collectNodesToModify(e,t){var n;let r=[];if(t<=0||!e.nextNode())return r;let i=e.currentNode,a=((n=i.textContent)==null?void 0:n.length)||0;return a<=t?(r.push({node:i,removeCount:a}),r.concat(this.collectNodesToModify(e,t-a))):(r.push({node:i,removeCount:t}),r)}getCaretOffset(e){let t=window.getSelection();if(!t||t.rangeCount===0)return 0;let n=t.getRangeAt(0),r=document.createRange();return r.selectNodeContents(e),r.setEnd(n.startContainer,n.startOffset),r.toString().length}setCaretAfterConversion(e,t){let{Caret:n}=this.Blok;if(t<=0){n.setToBlock(e,n.positions.START);return}n.setToBlock(e,n.positions.DEFAULT,t)}},sc=class extends ec{handleEscape(e){if(e.key!==`Escape`)return!1;let{BlockSelection:t,BlockSettings:n,InlineToolbar:r,Toolbar:i}=this.Blok;return n.opened||r.opened||i.toolbox.opened||t.anyBlockSelected?!1:(e.preventDefault(),i.close(),t.enableNavigationMode(),!0)}handleKey(e){let{BlockSelection:t}=this.Blok;if(!t.navigationModeEnabled)return!1;switch(e.key){case`ArrowDown`:return e.preventDefault(),e.stopPropagation(),t.navigateNext(),!0;case`ArrowUp`:return e.preventDefault(),e.stopPropagation(),t.navigatePrevious(),!0;case`Enter`:return e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),t.disableNavigationMode(!0),!0;case`Escape`:return e.preventDefault(),e.stopPropagation(),t.disableNavigationMode(!1),!0;default:return rc(e)&&t.disableNavigationMode(!0),!1}}},cc=class extends l{get navigationMode(){return this._navigationMode||(this._navigationMode=new sc(this.Blok)),this._navigationMode}get markdownShortcuts(){return this._markdownShortcuts||(this._markdownShortcuts=new oc(this.Blok)),this._markdownShortcuts}get blockSelectionKeys(){return this._blockSelectionKeys||(this._blockSelectionKeys=new tc(this.Blok)),this._blockSelectionKeys}get keyboardNavigation(){return this._keyboardNavigation||(this._keyboardNavigation=new ac(this.Blok)),this._keyboardNavigation}keydown(e){if(!this.navigationMode.handleKey(e)&&!this.navigationMode.handleEscape(e)&&(this.beforeKeydownProcessing(e),!this.blockSelectionKeys.handleDeletion(e)&&!e.defaultPrevented)){switch(nc(e)){case t.cr.BACKSPACE:this.keyboardNavigation.handleBackspace(e);break;case t.cr.DELETE:this.keyboardNavigation.handleDelete(e);break;case t.cr.ENTER:this.keyboardNavigation.handleEnter(e);break;case t.cr.DOWN:case t.cr.RIGHT:this.keyboardNavigation.handleArrowRightAndDown(e);break;case t.cr.UP:case t.cr.LEFT:this.keyboardNavigation.handleArrowLeftAndUp(e);break;case t.cr.TAB:if(this.blockSelectionKeys.handleIndent(e))return;this.keyboardNavigation.handleTab(e);break;case null:break}e.key===`/`&&!e.ctrlKey&&!e.metaKey&&this.slashPressed(e),e.code===`Slash`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),this.commandSlashPressed())}}keyup(e){e.shiftKey||this.Blok.UI.checkEmptiness()}input(e){e.target instanceof Node&&this.Blok.BlockManager.setCurrentBlockByChildNode(e.target),this.handleSmartGrouping(e),this.markdownShortcuts.handleInput(e)}handleCommandC(e){this.blockSelectionKeys.handleCopy(e)}handleCommandX(e){this.blockSelectionKeys.handleCut(e)}beforeKeydownProcessing(e){this.needToolbarClosing(e)&&rc(e)&&(e.ctrlKey||e.metaKey||e.altKey||e.shiftKey||this.Blok.BlockSelection.clearSelection(e))}handleSmartGrouping(e){let{YjsManager:t}=this.Blok;if(e.inputType!==`insertText`||e.data===null)return;let n=e.data;if(t.checkAndHandleBoundary(),Fs.isBoundaryCharacter(n)){t.markBoundary();return}t.hasPendingBoundary()&&t.clearBoundary()}commandSlashPressed(){this.Blok.BlockSelection.selectedBlocks.length>1||this.activateBlockSettings()}slashPressed(e){if(!this.Blok.UI.nodes.wrapper.contains(e.target))return;e.target instanceof Node&&this.Blok.BlockManager.setCurrentBlockByChildNode(e.target);let t=this.Blok.BlockManager.currentBlock;t!=null&&t.isEmpty&&(e.preventDefault(),this.Blok.Caret.insertContentAtCaretPosition(`/`),this.activateToolbox())}activateToolbox(){this.Blok.Toolbar.moveAndOpen(),this.Blok.Toolbar.toolbox.open()}activateBlockSettings(){this.Blok.Toolbar.opened||this.Blok.Toolbar.moveAndOpen(),this.Blok.BlockSettings.opened||Promise.resolve(this.Blok.BlockSettings.open()).catch(()=>{})}needToolbarClosing(e){let n=nc(e),r=n===t.cr.ENTER,i=n===t.cr.TAB,a=r&&this.Blok.Toolbar.toolbox.opened,o=r&&this.Blok.BlockSettings.opened,s=r&&this.Blok.InlineToolbar.opened,c=i,l=this.Blok.Toolbar.toolbox.opened&&!r&&!i;return!(e.shiftKey||c||a||o||s||l)}},lc=`block-added`,uc=`block-changed`,dc=`block-removed`,fc=class{constructor(e){this.blocks=[],this.workingArea=e}get length(){return this.blocks.length}get array(){return this.blocks}get nodes(){return Array.from(this.workingArea.children)}static set(e,t,n){return isNaN(Number(t))?(Reflect.set(e,t,n),!0):(e.insert(+t,n),!0)}static get(e,t){return isNaN(Number(t))?Reflect.get(e,t):e.get(+t)}push(e){this.blocks.push(e),this.insertToDOM(e)}move(e,t,n=!1,r=!1){if(t<0||t>=this.blocks.length||e<0||e>=this.blocks.length)return;let i=this.blocks.splice(t,1)[0],a=i.holder.parentElement!==null&&i.holder.parentElement!==this.workingArea;!n&&!a&&this.moveHolderInDOM(i,e),this.blocks.splice(e,0,i),this.resortNestedBlocks(i,this.blocks.indexOf(i)),r||i.call(w.MOVED,{fromIndex:t,toIndex:e})}insert(e,t,n=!1,r=!1,i=!1){if(e<0)return;if(!this.length){this.push(t);return}let a=e>this.length?this.length:e;if(n){let e=this.blocks[a];e.call(w.REMOVED),e.destroy(),e.holder.replaceWith(t.holder),this.blocks.splice(a,1,t),t.call(w.RENDERED);return}if(this.blocks.splice(a,0,t),r){this.insertToDOM(t);return}if(a>0){let e=this.blocks[a-1],n=this.blocks[a+1];if(i){this.insertAtRootLevel(t,a);return}let r=e.holder.parentElement===this.workingArea,o=n!==void 0&&n.holder.parentElement===this.workingArea;if(!r&&o&&n!==void 0){this.insertToDOM(t,`beforebegin`,n);return}this.insertToDOM(t,`afterend`,e);return}if(i){this.insertAtRootLevel(t,a);return}let o=this.blocks[a+1];if(o){this.insertToDOM(t,`beforebegin`,o);return}this.insertToDOM(t)}replace(e,t){if(!(e in this.blocks))throw Error(`Incorrect index`);let n=this.blocks[e];n.call(w.REMOVED),n.destroy(),n.holder.replaceWith(t.holder),this.blocks[e]=t,t.call(w.RENDERED)}insertMany(e,t){if(t<0)return;let n=new DocumentFragment;for(let t of e)n.appendChild(t.holder);if(!this.length){this.blocks.push(...e),this.workingArea.appendChild(n),e.forEach(e=>e.call(w.RENDERED));return}if(t>0){let e=Math.min(t-1,this.length-1),r=this.blocks[e];r.holder.parentElement===this.workingArea?r.holder.after(n):this.insertAfterNestedBlock(n,t)}t===0&&this.workingArea.prepend(n),this.blocks.splice(t,0,...e),e.forEach(e=>e.call(w.RENDERED))}remove(e){let t=isNaN(e)?this.length-1:e;if(t<0||t>=this.blocks.length)return;let n=this.blocks[t];n.call(w.REMOVED),n.destroy(),n.holder.remove(),this.blocks.splice(t,1)}removeAll(){this.blocks.forEach(e=>{e.call(w.REMOVED),e.destroy()}),this.workingArea.innerHTML=``,this.blocks.length=0}insertAfter(e,t){let n=this.blocks.indexOf(e);n!==-1&&this.insert(n+1,t)}get(e){return this.blocks[e]}indexOf(e){return this.blocks.indexOf(e)}addToArray(e,t){if(e<0)return;let n=e>this.length?this.length:e;this.blocks.splice(n,0,t)}activateBlock(e){if(e.holder.parentElement!==null){e.call(w.RENDERED);return}let t=this.blocks.indexOf(e);if(t>0){let n=this.blocks[t-1];this.insertToDOM(e,`afterend`,n);return}let n=this.blocks.slice(t+1).find(e=>e.holder.parentElement!==null);if(n){this.insertToDOM(e,`beforebegin`,n);return}this.insertToDOM(e)}insertToDOM(e,t,n){if(!t||n===void 0){this.workingArea.appendChild(e.holder),e.call(w.RENDERED);return}n.holder.insertAdjacentElement(t,e.holder),e.call(w.RENDERED)}insertAtRootLevel(e,t){let n=this.blocks.slice(t+1).find(e=>e.holder.parentElement===this.workingArea);if(n===void 0?this.workingArea.appendChild(e.holder):n.holder.insertAdjacentElement(`beforebegin`,e.holder),e.holder.parentElement!==this.workingArea)throw Error(`[Blocks.insertAtRootLevel] invariant violated: block holder did not land at workingArea root. This indicates the Enter-after-callout regression guard is broken.`);e.call(w.RENDERED)}insertAfterNestedBlock(e,t){let n=this.blocks.slice(t).find(e=>e.holder.parentElement===this.workingArea);if(n!==void 0){n.holder.before(e);return}this.workingArea.appendChild(e)}moveHolderInDOM(e,t){let n=this.blocks[t];if(n===void 0)this.workingArea.appendChild(e.holder);else if(e.holder.contains(n.holder)){let t=e.holder.nextElementSibling;t!==null&&t.insertAdjacentElement(`beforebegin`,e.holder)}else n.holder.insertAdjacentElement(`beforebegin`,e.holder);e.call(w.RENDERED)}resortNestedBlocks(e,t){let n=[],r=[];if(this.blocks.forEach((i,a)=>{a!==t&&e.holder.contains(i.holder)&&(n.push(i),r.push(a))}),n.length===0)return;[...r].sort((e,t)=>t-e).forEach(e=>this.blocks.splice(e,1));let i=this.blocks.indexOf(e);this.blocks.splice(i+1,0,...n)}},pc=(e,t)=>{e.push(t)},mc=(e,t,n)=>{if(e.parent===void 0||e.parent===null)return;let r=t.get(e.parent);if(r===void 0){pc(n,{kind:`child-parent-missing`,blockId:e.id,parentId:e.parent,message:`Block ${String(e.id)} references missing parent ${String(e.parent)}`});return}(e.id===void 0||!Array.isArray(r.content)||!r.content.includes(e.id))&&pc(n,{kind:`child-not-in-parent-content`,blockId:e.id,parentId:e.parent,message:`Block ${String(e.id)} has parent=${String(e.parent)} but that parent's content[] does not include it`})},hc=(e,t,n)=>{if(!Array.isArray(e.content))return;let r=new Set;for(let i of e.content){if(r.has(i)){pc(n,{kind:`content-duplicate`,blockId:e.id,childId:i,message:`Block ${String(e.id)}.content[] contains duplicate id ${String(i)}`});continue}r.add(i);let a=t.get(i);if(a===void 0){pc(n,{kind:`content-id-dangling`,blockId:e.id,childId:i,message:`Block ${String(e.id)}.content[] references missing child ${String(i)}`});continue}a.parent!==e.id&&pc(n,{kind:`content-parent-mismatch`,blockId:e.id,childId:i,message:`Block ${String(e.id)}.content[] includes ${String(i)} but that child's parent is ${String(a.parent)}`})}},gc=e=>{let t=[],n=new Map;for(let t of e)t.id!==void 0&&n.set(t.id,t);for(let r of e)mc(r,n,t),hc(r,n,t);return t},_c=(e,t)=>{let n=gc(e);if(n.length===0)return;let r=n.map(e=>` - ${e.message}`).join(`
|
|
8
|
+
`);throw Error(`Hierarchy invariant violated at ${t}:\n${r}`)},vc=class{constructor(e){this.dependencies=e}bindBlockEvents(e){let{blockEvents:t,listeners:n,onBlockMutated:r,getBlockIndex:i,shouldHandleEvent:a}=this.dependencies;n.on(e.holder,`keydown`,e=>{if(e instanceof KeyboardEvent){if(a&&!a(e))return;t.keydown(e)}}),n.on(e.holder,`keyup`,e=>{if(e instanceof KeyboardEvent){if(a&&!a(e))return;t.keyup(e)}}),n.on(e.holder,`input`,e=>{if(e instanceof InputEvent){if(a&&!a(e))return;t.input(e)}}),e.on(`didMutated`,e=>r(uc,e,{index:i(e)}))}enableBindings(e){let{blockEvents:t,listeners:n}=this.dependencies;n.on(document,`cut`,e=>{t.handleCommandX(e)});for(let t of e)this.bindBlockEvents(t)}disableBindings(){this.dependencies.listeners.clearAll()}},yc=class{get readOnlyState(){return this.dependencies.moduleInstances.ReadOnly.isEnabled}constructor(e,t){this.dependencies=e,this.bindBlockEvents=t}composeBlock(e){let{tool:t,data:n={},id:r,tunes:i={},parentId:a,contentIds:o,bindEventsImmediately:s=!1,lastEditedAt:c,lastEditedBy:l}=e,u=this.dependencies.tools.get(t);if(u===void 0)throw Error(`Could not compose Block. Tool «${t}» not found.`);let d=new re({id:r,data:n,tool:u,api:this.dependencies.API,readOnly:this.readOnlyState,tunesData:i,parentId:a,contentIds:o,bindMutationWatchersImmediately:s,lastEditedAt:c,lastEditedBy:l},this.dependencies.eventsDispatcher);return this.readOnlyState||(s?this.bindBlockEvents(d):window.requestIdleCallback(()=>{this.bindBlockEvents(d)},{timeout:2e3})),d}hasTool(e){return this.dependencies.tools.has(e)}getTool(e){return this.dependencies.tools.get(e)}},bc=class{constructor(e,t,n){this.repository=e,this.onParentChanged=t,this.getIsSyncingFromYjs=n}getBlockDepth(e){let t=new Set;e.id!==void 0&&t.add(e.id);let n=(e,r)=>{if(e===null||t.has(e))return r;t.add(e);let i=this.repository.getBlockById(e);return i===void 0?r:n(i.parentId,r+1)};return n(e.parentId,0)}wouldFormCycle(e,t){let n=(t,r)=>{if(t===null)return!1;if(t===e||r.has(t))return!0;r.add(t);let i=this.repository.getBlockById(t);return i===void 0?!1:n(i.parentId,r)};return n(t,new Set)}setBlockParent(e,n){if(this.repository.getBlockIndex(e)===-1)return;if(n!==null&&this.wouldFormCycle(e.id,n))throw Error(`BlockHierarchy.setBlockParent: refusing to form cycle — assigning ${e.id} to parent ${n} would create a parent/child cycle.`);let r=n===null||this.repository.getBlockById(n)!==void 0;if(!r){var i;let r=typeof process<`u`?`production`:void 0,a=((i=this.getIsSyncingFromYjs)==null?void 0:i.call(this))===!0,o=`BlockHierarchy.setBlockParent: dangling parent id "${n}" for block "${e.id}" — parent block is not in the repository.`;if(!a&&(r===`test`||r===`development`))throw Error(o);t.ar(o,`error`)}let a=r?n:null,o=e.parentId,s=o===null?void 0:this.repository.getBlockById(o);s!==void 0&&(s.contentIds=s.contentIds.filter(t=>t!==e.id));let c=s===void 0?null:s.holder.querySelector(`[data-blok-toggle-children]`);if(c&&e.holder.parentElement===c){let t=this.repository.blocks,n=t.indexOf(e),r=t.slice(0,n).reverse().find(e=>e.holder.closest(`[data-blok-toggle-children]`)===null);r?r.holder.insertAdjacentElement(`afterend`,e.holder):s!==void 0&&s.holder.after(e.holder)}let l=a===null?void 0:this.repository.getBlockById(a);if(l!==void 0&&!l.contentIds.includes(e.id)&&l.contentIds.push(e.id),e.parentId=a,a!==null&&l!==void 0){let t=l.contentIds.filter(t=>t!==e.id).map(e=>this.repository.getBlockById(e)).filter(e=>e!==void 0),n=t.length>0&&t.every(e=>e.holder.classList.contains(`hidden`)),r=l.holder.querySelector(`[data-blok-toggle-open="false"]`)!==null;(n||r)&&e.holder.classList.add(`hidden`)}if(a!==null&&l!==void 0&&!e.holder.closest(`[${t.ur.nestedBlocks}]`)){let t=l.holder.querySelector(`[data-blok-toggle-children]`);if(t){var u,d;let n=this.repository.blocks,r=n.indexOf(e),i=(u=(d=n.slice(r+1).find(e=>e.holder.parentElement===t))==null?void 0:d.holder)==null?null:u;t.insertBefore(e.holder,i)}}this.updateBlockIndentation(e),a!==null&&this.onParentChanged!==void 0&&this.onParentChanged(a)}updateBlockIndentation(e){let{holder:t}=e;if(t.closest(`[data-blok-table-cell-blocks]`)){t.style.marginLeft=``,t.setAttribute(`data-blok-depth`,`0`);return}if(t.closest(`[data-blok-toggle-children]`)){t.style.marginLeft=``,t.setAttribute(`data-blok-depth`,String(this.getBlockDepth(e)));return}let n=this.getBlockDepth(e),r=n*24;t.style.marginLeft=r>0?`${r}px`:``,t.setAttribute(`data-blok-depth`,n.toString())}},xc=`block-moved`,Sc,Cc=`blok-announcer`,wc=[`absolute`,`w-px`,`h-px`,`p-0`,`-m-px`,`overflow-hidden`,`[clip:rect(0,0,0,0)]`,`whitespace-nowrap`,`border-0`].join(` `),Tc=class e{constructor(){this.liveRegion=null,this.clearTimeoutId=null,this.createLiveRegion()}static getInstance(){return e.instance||(e.instance=new e),e.instance}static addReference(){e.referenceCount++}createLiveRegion(){let e=document.getElementById(Cc);if(e){this.liveRegion=e;return}let t=document.createElement(`div`);t.id=Cc,t.className=wc,t.setAttribute(`role`,`status`),t.setAttribute(`aria-live`,`polite`),t.setAttribute(`aria-atomic`,`true`),t.setAttribute(`data-blok-announcer`,``),document.body.appendChild(t),this.liveRegion=t}announce(e,t={}){let{politeness:n=`polite`,clearAfter:r=1e3}=t;this.liveRegion||this.createLiveRegion(),this.liveRegion&&(this.clearTimeoutId!==null&&clearTimeout(this.clearTimeoutId),this.liveRegion.setAttribute(`aria-live`,n),this.liveRegion.textContent=``,requestAnimationFrame(()=>{this.liveRegion&&(this.liveRegion.textContent=e)}),this.clearTimeoutId=setTimeout(()=>{this.liveRegion&&(this.liveRegion.textContent=``)},r))}destroy(){e.referenceCount--,!(e.referenceCount>0)&&(this.clearTimeoutId!==null&&(clearTimeout(this.clearTimeoutId),this.clearTimeoutId=null),this.liveRegion&&(this.liveRegion.remove(),this.liveRegion=null),e.instance=null)}};Sc=Tc,Sc.instance=null,Sc.referenceCount=0;var Ec=(e,t)=>{Tc.getInstance().announce(e,t)},Dc=()=>{Tc.addReference(),Tc.getInstance()},Oc=()=>{Tc.getInstance().destroy()},kc=class{constructor(e,t,n,r,i,a=-1){this.suppressStopCapturing=!1,this.dependencies=e,this.repository=t,this.factory=n,this.hierarchy=r,this.blockDidMutated=i,this.currentBlockIndex=a}setYjsSync(e){this.yjsSync=e}get currentBlockIndexValue(){return this.currentBlockIndex}set currentBlockIndexValue(e){if(this.currentBlockIndex!==e&&!this.suppressStopCapturing){var t;(t=this.dependencies.YjsManager)==null||t.stopCapturing()}this.currentBlockIndex=e}get currentBlock(){if(this.currentBlockIndex!==-1)return this.repository.getBlockByIndex(this.currentBlockIndex)}get nextBlock(){if(this.currentBlockIndex===-1||this.currentBlockIndex===this.repository.length-1)return null;let e=this.repository.getBlockByIndex(this.currentBlockIndex+1);return e==null?null:e}get previousBlock(){if(this.currentBlockIndex===-1||this.currentBlockIndex===0)return null;let e=this.repository.getBlockByIndex(this.currentBlockIndex-1);return e==null?null:e}get nextVisibleBlock(){var e;return this.currentBlockIndex===-1||(e=this.repository.blocks.slice(this.currentBlockIndex+1).find(e=>!e.holder.classList.contains(`hidden`)))==null?null:e}get previousVisibleBlock(){var e;return this.currentBlockIndex===-1||(e=this.repository.blocks.slice(0,this.currentBlockIndex).reverse().find(e=>!e.holder.classList.contains(`hidden`)))==null?null:e}insert(e={},r){var i;let{id:a=void 0,tool:o,data:s,index:c,needToFocus:l=!0,replace:u=!1,tunes:d,skipYjsSync:f=!1,appendToWorkingArea:p=!1,forceTopLevel:m=!1}=e,h=c==null?this.currentBlockIndex+(u?0:1):c;if(u){var g;(g=this.repository.getBlockByIndex(h))==null||g.unwatchBlockMutations()}let _=(()=>{var e;let n=o==null?this.dependencies.config.defaultBlock:o;if(n===void 0)throw Error(`Could not insert Block. Tool name is not specified.`);let r=u||(e=this.repository.getBlockByIndex(h-1))==null?this.repository.getBlockByIndex(h):e;if(r!==void 0&&t.jn(r)&&t.Mn(n)){var i;return(i=this.dependencies.config.defaultBlock)==null?`paragraph`:i}return n})(),v=this.factory.composeBlock(n.t(n.t(n.t({tool:_,bindEventsImmediately:!0},a!==void 0&&{id:a}),s!==void 0&&{data:s}),d!==void 0&&{tunes:d})),y=u?this.repository.getBlockByIndex(h):void 0;if(u&&y===void 0)throw Error(`Could not replace Block at index ${h}. Block not found.`);let b=(i=y==null?void 0:y.parentId)==null?null:i,x=y==null?void 0:y.id;u&&y!==void 0&&this.blockDidMutated(dc,y,{index:h}),r.insert(h,v,u,p,m),u&&b!==null&&x!==void 0&&this.transferParentLinkToNewBlock(x,v,b);let S=this.currentBlockIndex;if(l?this.currentBlockIndex=h:h<=this.currentBlockIndex&&this.currentBlockIndex++,this.blockDidMutated(lc,v,{index:h}),!f&&(!this.yjsSync.isSyncingFromYjs||this.dependencies.YjsManager.getBlockById(v.id)===void 0)){var ee;this.dependencies.YjsManager.addBlock({id:v.id,type:v.name,data:v.preservedData,parent:(ee=v.parentId)==null?void 0:ee},h)}if(this.currentBlockIndex!==S&&!this.suppressStopCapturing){var te;(te=this.dependencies.YjsManager)==null||te.stopCapturing()}return this.assertHierarchyInvariantInDev(`insert`),v}insertDefaultBlockAtIndex(e,t=!1,n=!1,r,i=!1){let a=this.dependencies.config.defaultBlock;if(a===void 0)throw Error(`Could not insert default Block. Default block tool is not defined in the configuration.`);return this.insert({tool:a,index:e,needToFocus:t,skipYjsSync:n,forceTopLevel:i},r)}insertAtEnd(e){return this.currentBlockIndexValue=this.repository.length-1,this.insert({appendToWorkingArea:!0},e)}removeBlock(e,t=!0,n=!1,r){return new Promise(i=>{let a=this.repository.getBlockIndex(e);if(!this.repository.validateIndex(a))throw Error(`Can't find a Block to remove`);let o=e.parentId===null?void 0:this.repository.getBlockById(e.parentId);o!==void 0&&(o.contentIds=o.contentIds.filter(t=>t!==e.id));for(let t of e.contentIds){let e=this.repository.getBlockById(t);e!==void 0&&(e.parentId=null,e.holder.classList.remove(`hidden`))}r.remove(a),this.blockDidMutated(dc,e,{index:a}),n||this.dependencies.YjsManager.removeBlock(e.id);let s=this.repository.length===0;if(this.currentBlockIndex>=a&&this.currentBlockIndexValue--,s&&t){this.insert({},r),i();return}if(s){this.currentBlockIndexValue=-1,i();return}a===0&&this.currentBlockIndexValue<0&&(this.currentBlockIndexValue=0),this.assertHierarchyInvariantInDev(`removeBlock`),i()})}async update(e,t,n,r){var i=this,a;if(!n&&!r)return e;let o=await e.data,s=i.repository.getBlockIndex(e);if(s===-1)return e;let c=i.factory.composeBlock({id:e.id,tool:e.name,data:Object.assign({},o,n==null?{}:n),tunes:r==null?e.preservedTunes:r,parentId:(a=e.parentId)==null?void 0:a,contentIds:e.contentIds.length>0?[...e.contentIds]:void 0,bindEventsImmediately:!0});if(t.replace(s,c),i.blockDidMutated(uc,c,{index:s}),n!==void 0)for(let[t,r]of Object.entries(n))i.dependencies.YjsManager.updateBlockData(e.id,t,r);if(r!==void 0)for(let[t,n]of Object.entries(r))i.dependencies.YjsManager.updateBlockTune(e.id,t,n);return c}transferParentLinkToNewBlock(e,t,n){let r=this.repository.getBlockById(n);if(r===void 0){t.parentId=n;return}let i=r.contentIds.indexOf(e);if(this.hierarchy.setBlockParent(t,n),i<0)return;let a=r.contentIds.filter(n=>n!==e&&n!==t.id);a.splice(i,0,t.id),r.contentIds=a}reparentChildren(e,t){for(let n of e){let e=this.repository.getBlockById(n);e!==void 0&&this.hierarchy.setBlockParent(e,t)}}replace(e,n,r,i){let a=this.repository.getBlockIndex(e);if(a===-1)return e;let o=t.Ln(),s=e.parentId,c=[...e.contentIds];this.dependencies.YjsManager.transact(()=>{this.dependencies.YjsManager.removeBlock(e.id),this.dependencies.YjsManager.addBlock({id:o,type:n,data:r},a)});let l=this.insert({id:o,tool:n,data:r,index:a,replace:!0,skipYjsSync:!0},i);s!==null&&this.transferParentLinkToNewBlock(e.id,l,s);let u=n===`toggle`||n===`callout`||n===`header`&&r.isToggleable===!0;if(c.length>0&&!u){let e=this.repository.getBlockIndex(l);c.forEach((t,n)=>{let r=this.repository.getBlockById(t);r!==void 0&&(this.hierarchy.setBlockParent(r,null),i.insert(e+1+n,r,!1,!1))}),l.contentIds=[]}else l.contentIds=[],this.reparentChildren(c,l.id);return this.assertHierarchyInvariantInDev(`replace`),l}move(e,n,r,i,a=!1){if(isNaN(e)||isNaN(n)){t.ir(`Warning during 'move' call: incorrect indices provided.`,`warn`);return}if(!this.repository.validateIndex(e)||!this.repository.validateIndex(n)){t.ir(`Warning during 'move' call: indices cannot be lower than 0 or greater than the amount of blocks.`,`warn`);return}let o=this.repository.getBlockByIndex(n),s=this.repository.getBlockByIndex(e);if(o!==void 0&&s!==void 0&&t.jn(s)&&t.Mn(o.name)){t.ir(`Warning during 'move' call: '${o.name}' is restricted in table cells.`,`warn`);return}let c=s===void 0?null:s.parentId;this.suppressStopCapturing=!0;try{i.move(e,n,r,a);let t=o===void 0?-1:this.repository.getBlockIndex(o),s=t>=0?t:e;this.currentBlockIndexValue=s;let l=o==null?this.currentBlock:o;if(l===void 0)throw Error(`Could not move Block. Block at index ${e} is not available.`);l.parentId!==c&&this.hierarchy.setBlockParent(l,c),this.blockDidMutated(xc,l,{fromIndex:n,toIndex:s}),this.dependencies.YjsManager.moveBlock(l.id,s),this.assertHierarchyInvariantInDev(`move`)}finally{this.suppressStopCapturing=!1}}async mergeBlocks(e,r,i){var a=this;if(a.repository.getBlockIndex(e)===-1||a.repository.getBlockIndex(r)===-1||e.parentId!==r.parentId)return;let o=async t=>{if(a.repository.getBlockIndex(e)===-1||a.repository.getBlockIndex(r)===-1)return;let o=n.t(n.t({},await e.data),t);a.repository.getBlockIndex(e)===-1||a.repository.getBlockIndex(r)===-1||(a.dependencies.YjsManager.transact(()=>{for(let[t,n]of Object.entries(o))a.dependencies.YjsManager.updateBlockData(e.id,t,n);a.dependencies.YjsManager.removeBlock(r.id)}),a.yjsSync.withAtomicOperation(()=>{e.mergeWith(t).then(()=>a.removeBlock(r,!0,!0,i)),a.currentBlockIndexValue=a.repository.getBlockIndex(e)}))},s=e.name===r.name&&e.mergeable,c=s?await r.data:void 0;if(s&&t.Qn(c)){console.error(`Could not merge Block. Failed to extract original Block data.`);return}if(s&&c!==void 0){let[n]=t.fn([{data:c,tool:r.name}],e.tool.sanitizeConfig,a.dependencies.config.sanitizer);await o(n.data);return}if(e.mergeable&&t.Tn(r,`export`)&&t.Tn(e,`import`)){var l;let n=await r.exportDataAsString(),i=(l=e.tool.conversionConfig)==null?void 0:l.import;await o(t.Sn(t.un(n,t.tr(i)&&t.er(e.tool.sanitizeConfig[i])?e.tool.sanitizeConfig[i]:e.tool.sanitizeConfig),e.tool.conversionConfig))}}split(e){let n=this.currentBlock;if(n===void 0)throw Error(`Cannot split: no current block`);let r=t.Ln(),i=this.currentBlockIndex+1;return this.yjsSync.withAtomicOperation(()=>{var a,o;let s=this.dependencies.Caret.extractFragmentFromCaretPosition(),c=document.createElement(`div`);c.appendChild(s);let l=t.Pn.isEmpty(c)?``:c.innerHTML,u=(a=(o=n.holder.querySelector(`[contenteditable="true"]`))==null?void 0:o.innerHTML)==null?``:a;this.dependencies.YjsManager.transact(()=>{var e;this.dependencies.YjsManager.updateBlockData(n.id,`text`,u),this.dependencies.YjsManager.addBlock({id:r,type:n.name,data:{text:l},parent:(e=n.parentId)==null?void 0:e},i)});let d=this.insert({id:r,tool:n.name,data:{text:l},needToFocus:!1,skipYjsSync:!0},e);return this.currentBlockIndex=i,n.parentId!==null&&this.hierarchy.setBlockParent(d,n.parentId),d})}splitBlockWithData(e,n,r,i,a,o){let s=this.repository.getBlockById(e);if(s===void 0)throw Error(`Block with id "${e}" not found`);let c=t.Ln();return this.yjsSync.withAtomicOperation(()=>{this.dependencies.YjsManager.transact(()=>{var t;for(let[t,r]of Object.entries(n))this.dependencies.YjsManager.updateBlockData(e,t,r);this.dependencies.YjsManager.addBlock({id:c,type:r,data:i,parent:(t=s.parentId)==null?void 0:t},a)});let t=s.holder.querySelector(`[contenteditable="true"]`);t!==null&&typeof n.text==`string`&&(t.innerHTML=n.text);let l=this.insert({id:c,tool:r,data:i,index:a,needToFocus:!1,skipYjsSync:!0},o);return this.currentBlockIndex=a,s.parentId!==null&&this.hierarchy.setBlockParent(l,s.parentId),this.assertHierarchyInvariantInDev(`splitBlockWithData`),l})}insertInsideParent(e,n,r,i){var a;if(this.repository.getBlockById(e)===void 0)throw Error(`Parent block with id "${e}" not found`);let o=t.Ln(),s=(a=this.dependencies.config.defaultBlock)==null?`paragraph`:a,c=i==null?{text:``}:i;return this.yjsSync.withAtomicOperation(()=>{this.dependencies.YjsManager.transact(()=>{this.dependencies.YjsManager.addBlock({id:o,type:s,data:c,parent:e},n)});let t=this.insert({id:o,tool:s,data:c,index:n,needToFocus:!1,skipYjsSync:!0},r);return this.currentBlockIndex=n,this.hierarchy.setBlockParent(t,e),this.assertHierarchyInvariantInDev(`insertInsideParent`),t},{extendThroughRAF:!0})}async convert(e,n,r,i){var a=this,o;let s=await e.save();if(!s||s.data===void 0)throw Error(`Could not convert Block. Failed to extract original Block data.`);let c=a.factory.getTool(n);if(!c)throw Error(`Could not convert Block. Tool «${n}» not found.`);let l=await e.exportDataAsString(),u=(o=c.conversionConfig)==null?void 0:o.import,d=t.tr(u)&&t.er(c.sanitizeConfig[u])?c.sanitizeConfig[u]:c.sanitizeConfig,f=t.Sn(t.un(l,t.dn(a.dependencies.config.sanitizer,d)),c.conversionConfig,c.settings),p=i?Object.assign(f,i):f;a.dependencies.YjsManager.stopCapturing();let m=a.suppressStopCapturing;a.suppressStopCapturing=!0;try{return a.yjsSync.withAtomicOperation(()=>a.replace(e,c.name,p,r),{extendThroughRAF:!0})}finally{queueMicrotask(()=>{a.suppressStopCapturing=m,a.dependencies.YjsManager.stopCapturing()})}}async paste(e,t,n=!1,r){var i=this,a,o,s,c,l;let u=i.currentBlock,d=(a=u==null||(o=u.holder)==null?void 0:o.querySelector(`[data-blok-toggle-children]`))==null?null:a,f=d!==null&&!d.contains((s=u==null?void 0:u.currentInput)==null?null:s)?(c=u==null?void 0:u.id)==null?null:c:(l=u==null?void 0:u.parentId)==null?null:l,p=n?u==null?void 0:u.id:void 0,m=i.yjsSync.withAtomicOperation(()=>i.insert({tool:e,replace:n,needToFocus:!1,skipYjsSync:!0},r),{extendThroughRAF:!0});i.currentBlockIndex=i.repository.getBlockIndex(m),await m.ready,i.yjsSync.withAtomicOperation(()=>{m.call(w.ON_PASTE,t),m.refreshToolRootElement()},{extendThroughRAF:!0}),f!==null&&(n&&p!==void 0?i.transferParentLinkToNewBlock(p,m,f):i.hierarchy.setBlockParent(m,f));let h=await m.save();if(h!==void 0){var g;i.dependencies.YjsManager.addBlock({id:m.id,type:m.name,data:h.data,parent:(g=m.parentId)==null?void 0:g},i.repository.getBlockIndex(m))}return m}moveCurrentBlockUp(e){let t=this.currentBlockIndexValue;if(t<=0){Ec(this.dependencies.I18n.t(`a11y.atTop`),{politeness:`polite`});return}this.move(t-1,t,!1,e),this.refocusCurrentBlock();let n=this.currentBlockIndexValue+1,r=this.repository.length;Ec(this.dependencies.I18n.t(`a11y.movedUp`,{position:n,total:r}),{politeness:`assertive`})}moveCurrentBlockDown(e){let t=this.currentBlockIndexValue;if(t<0||t>=this.repository.length-1){Ec(this.dependencies.I18n.t(`a11y.atBottom`),{politeness:`polite`});return}this.move(t+1,t,!1,e),this.refocusCurrentBlock();let n=this.currentBlockIndexValue+1,r=this.repository.length;Ec(this.dependencies.I18n.t(`a11y.movedDown`,{position:n,total:r}),{politeness:`assertive`})}refocusCurrentBlock(){let e=this.currentBlock;e!==void 0&&this.dependencies.Caret.setToBlock(e,this.dependencies.Caret.positions.END)}assertHierarchyInvariantInDev(e){let t=typeof process<`u`?`production`:void 0;if(t!==`test`&&t!==`development`)return;let r=gc(this.repository.blocks.map(e=>n.t(n.t({id:e.id,type:e.name,data:{}},e.parentId!==null&&e.parentId!==void 0?{parent:e.parentId}:{}),Array.isArray(e.contentIds)&&e.contentIds.length>0?{content:[...e.contentIds]}:{}))).filter(e=>e.kind===`child-not-in-parent-content`||e.kind===`content-parent-mismatch`||e.kind===`content-duplicate`);if(r.length===0)return;let i=r.map(e=>` - ${e.message}`).join(`
|
|
9
|
+
`);throw Error(`Hierarchy invariant violated at BlockOperations.${e}:\n${i}`)}},Ac=class{constructor(){this._blocks=null}initialize(e){this._blocks=e}get blocksStore(){if(this._blocks===null)throw Error(`BlockRepository: blocks store is not initialized. Call initialize() before accessing blocks.`);return this._blocks}get blocks(){return this.blocksStore.array}get firstBlock(){return this.blocksStore[0]}get lastBlock(){return this.blocksStore[this.blocksStore.length-1]}get length(){return this.blocksStore.length}getBlockByIndex(e){let t=e===-1?this.blocksStore.length-1:e;return this.blocksStore[t]}getBlockIndex(e){return this.blocksStore.indexOf(e)}getBlockById(e){return this.blocksStore.array.find(t=>t.id===e)}getBlock(e){if(!e)return;let n=t.Pn.isElement(e)?e:e.parentNode;if(!n)return;let r=n.closest(t.dr(t.ur.element));if(r)return this.blocks.find(e=>e.holder===r)}getBlockByChildNode(e){if(!(e instanceof Node))return;let n=t.Pn.isElement(e)?e:e.parentNode;if(!n)return;let r=n.closest(t.dr(t.ur.element));if(r)return this.blocks.find(e=>e.holder===r)}validateIndex(e){return!(e<0||e>=this.blocksStore.length)}isBlokEmpty(){return this.blocks.every(e=>e.isEmpty)}getNextContentfulBlock(e){return this.blocks.slice(e+1).find(e=>!!e.inputs.length)}getPreviousContentfulBlock(e){return this.blocks.slice(0,e).reverse().find(e=>!!e.inputs.length)}resolveToRootBlock(e){if(e.parentId===null)return e;let t=this.getBlockById(e.parentId);return t===void 0?e:this.resolveToRootBlock(t)}getBlockAtNodeIndex(e){return this.blocksStore[e]}},jc={SHIFT:[`SHIFT`],CMD:[`CMD`,`CONTROL`,`COMMAND`,`WINDOWS`,`CTRL`],ALT:[`ALT`,`OPTION`]},Mc={0:`Digit0`,1:`Digit1`,2:`Digit2`,3:`Digit3`,4:`Digit4`,5:`Digit5`,6:`Digit6`,7:`Digit7`,8:`Digit8`,9:`Digit9`,A:`KeyA`,B:`KeyB`,C:`KeyC`,D:`KeyD`,E:`KeyE`,F:`KeyF`,G:`KeyG`,H:`KeyH`,I:`KeyI`,J:`KeyJ`,K:`KeyK`,L:`KeyL`,M:`KeyM`,N:`KeyN`,O:`KeyO`,P:`KeyP`,Q:`KeyQ`,R:`KeyR`,S:`KeyS`,T:`KeyT`,U:`KeyU`,V:`KeyV`,W:`KeyW`,X:`KeyX`,Y:`KeyY`,Z:`KeyZ`,BACKSPACE:`Backspace`,ENTER:`Enter`,ESCAPE:`Escape`,LEFT:`ArrowLeft`,UP:`ArrowUp`,RIGHT:`ArrowRight`,DOWN:`ArrowDown`,INSERT:`Insert`,DELETE:`Delete`,".":`Period`,"[":`BracketLeft`,"]":`BracketRight`},Nc=e=>Object.keys(jc).find(t=>jc[t].includes(e)),Pc=class{constructor(e){this.commands={SHIFT:!1,CMD:!1,ALT:!1},this.keys={},this.name=e.name,this.element=e.on,this.callback=e.callback,this.parseShortcutName(e.name),this.executeShortcut=e=>{this.execute(e)},this.element.addEventListener(`keydown`,this.executeShortcut,!1)}remove(){this.element.removeEventListener(`keydown`,this.executeShortcut)}parseShortcutName(e){let t=e.split(`+`);for(let e of t){let t=e.toUpperCase(),n=Nc(t);n===void 0?this.keys[t]=!0:this.commands[n]=!0}}checkModifiers(e){let t={CMD:e.ctrlKey||e.metaKey,SHIFT:e.shiftKey,ALT:e.altKey};return Object.keys(this.commands).every(e=>this.commands[e]===t[e])}checkKeys(e){return Object.keys(this.keys).every(t=>{let n=Mc[t];return e.code===n})}execute(e){let t=this.checkModifiers(e),n=this.checkKeys(e);t&&n&&this.callback(e)}},Fc=e=>e instanceof HTMLElement?e.tagName.toLowerCase()+(e.className?`.${e.className}`:``):e instanceof Document?`document`:String(e),Z=new class{constructor(){this.registeredShortcuts=new Map}add(e){if(this.findShortcut(e.on,e.name)){let t=Fc(e.on);throw Error(`Shortcut ${e.name} is already registered for ${t}. Please remove it before add a new handler.`)}let t=new Pc({name:e.name,on:e.on,callback:e.handler}),n=this.registeredShortcuts.get(e.on)||[];this.registeredShortcuts.set(e.on,[...n,t])}remove(e,t){let n=this.findShortcut(e,t);if(!n)return;n.remove();let r=this.registeredShortcuts.get(e);if(!r)return;let i=r.filter(e=>e!==n);if(i.length===0){this.registeredShortcuts.delete(e);return}this.registeredShortcuts.set(e,i)}findShortcut(e,t){return(this.registeredShortcuts.get(e)||[]).find(({name:e})=>e===t)}},Ic=class{constructor(e,t){this.registeredShortcutNames=[],this.wrapper=e,this.handlers=t}register(){setTimeout(()=>{let e=[`CMD+SHIFT+UP`,`CMD+SHIFT+DOWN`];for(let e of this.registeredShortcutNames)Z.remove(document,e);this.registeredShortcutNames.length=0;for(let t of e)Z.remove(document,t);Z.add({name:`CMD+SHIFT+UP`,on:document,handler:e=>{this.shouldHandleShortcut(e)&&(e.preventDefault(),this.handlers.onMoveUp())}}),this.registeredShortcutNames.push(`CMD+SHIFT+UP`),Z.add({name:`CMD+SHIFT+DOWN`,on:document,handler:e=>{this.shouldHandleShortcut(e)&&(e.preventDefault(),this.handlers.onMoveDown())}}),this.registeredShortcutNames.push(`CMD+SHIFT+DOWN`)},0)}unregister(){for(let e of this.registeredShortcutNames)Z.remove(document,e);this.registeredShortcutNames.length=0}shouldHandleShortcut(e){let t=e.target;return t instanceof HTMLElement&&this.wrapper.contains(t)}},Lc=class{get isSyncingFromYjs(){return this.yjsSyncCount>0}constructor(e,t,n,r,i){this.yjsSyncCount=0,this.moveSyncScheduled=!1,this.dependencies=e,this.repository=t,this.factory=n,this.handlers=r,this.blocksStore=i}beginAtomicOperation(){this.yjsSyncCount++;let e=this.dependencies.operations;return e&&(e.suppressStopCapturing=!0),()=>{this.yjsSyncCount--,e&&this.yjsSyncCount===0&&(e.suppressStopCapturing=!1)}}endAtomicOperation(e,t){t?requestAnimationFrame(e):e()}withAtomicOperation(e,t){let n=this.beginAtomicOperation();try{let r=e();return this.endAtomicOperation(n,(t==null?void 0:t.extendThroughRAF)===!0),r}catch(e){throw n(),e}}async withAtomicOperationAsync(e,t){var n=this;let r=n.beginAtomicOperation();try{await e(),n.endAtomicOperation(r,(t==null?void 0:t.extendThroughRAF)===!0)}catch(e){throw r(),e}}subscribe(){return this.dependencies.YjsManager.onBlocksChanged(e=>{(e.origin===`undo`||e.origin===`redo`||e.origin===`remote`)&&this.syncBlockFromYjs(e)})}syncBlockFromYjs(e){if(e.type===`update`){this.handleYjsUpdate(e.blockId);return}if(e.type===`move`){this.handleYjsMove();return}if(e.type===`add`){this.handleYjsAdd(e.blockId);return}if(e.type===`batch-add`){this.handleYjsBatchAdd(e.blockIds);return}e.type===`remove`&&this.handleYjsRemove(e.blockId)}handleYjsUpdate(e){var t=this,n;let r=this.repository.getBlockById(e),i=this.dependencies.YjsManager.getBlockById(e);if(r===void 0||i===void 0)return;let a=this.dependencies.YjsManager.yMapToObject(i.get(`data`)),o=i.get(`tunes`),s=o===void 0?{}:this.dependencies.YjsManager.yMapToObject(o),c=i.get(`lastEditedAt`),l=(n=i.get(`lastEditedBy`))==null?null:n;if(i.has(`parentId`)){let e=i.get(`parentId`),t=e===void 0?null:e;t!==r.parentId&&this.withAtomicOperation(()=>{this.handlers.setBlockParent(r,t)})}let u=r.preservedTunes,d=Object.keys(s),f=Object.keys(u);if(d.length!==f.length||d.some(e=>s[e]!==u[e])){var p;let t=this.handlers.getBlockIndex(r),n=this.factory.composeBlock({id:r.id,tool:r.name,data:a,tunes:s,contentIds:r.contentIds.length>0?[...r.contentIds]:void 0,parentId:(p=r.parentId)==null?void 0:p,bindEventsImmediately:!0,lastEditedAt:c,lastEditedBy:l});this.withAtomicOperation(()=>{this.handlers.replaceBlock(t,n),this.reconcileOrphanedChildren(e)&&n.call(w.RENDERED)},{extendThroughRAF:!0})}else this.withAtomicOperationAsync(async()=>{if(!await r.setData(a)){var n;let i=t.handlers.getBlockIndex(r),o=t.factory.composeBlock({id:r.id,tool:r.name,data:a,tunes:r.preservedTunes,contentIds:r.contentIds.length>0?[...r.contentIds]:void 0,parentId:(n=r.parentId)==null?void 0:n,bindEventsImmediately:!0,lastEditedAt:c,lastEditedBy:l});t.handlers.replaceBlock(i,o),t.reconcileOrphanedChildren(e)&&o.call(w.RENDERED)}},{extendThroughRAF:!0})}handleYjsAdd(e){var t;if(this.repository.getBlockById(e)!==void 0)return;let n=this.dependencies.YjsManager.getBlockById(e);if(n===void 0)return;let r=n.get(`type`),i=this.dependencies.YjsManager.yMapToObject(n.get(`data`)),a=n.get(`parentId`),o=n.get(`lastEditedAt`),s=(t=n.get(`lastEditedBy`))==null?null:t,c=this.dependencies.YjsManager.toJSON().findIndex(t=>t.id===e);c!==-1&&this.withAtomicOperation(()=>{let t=this.factory.composeBlock({id:e,tool:r,data:i,parentId:a==null?void 0:a,bindEventsImmediately:!0,lastEditedAt:o,lastEditedBy:s});this.blocksStore.insert(c,t),this.handlers.onBlockAdded(t,c),a!==void 0&&this.handlers.setBlockParent(t,a),this.reconcileOrphanedChildren(e)&&t.call(w.RENDERED)},{extendThroughRAF:!0})}reconcileOrphanedChildren(e){let t=Array.from(this.repository.blocks).filter(t=>{if(t.parentId===e)return!1;let n=this.dependencies.YjsManager.getBlockById(t.id);return n===void 0?!1:n.get(`parentId`)===e});for(let n of t)this.handlers.setBlockParent(n,e);return t.length>0}handleYjsBatchAdd(e){let t=this.dependencies.YjsManager.toJSON(),n=[];for(let i of e){var r;if(this.repository.getBlockById(i)!==void 0)continue;let e=this.dependencies.YjsManager.getBlockById(i);if(e===void 0)continue;let a=e.get(`type`),o=this.dependencies.YjsManager.yMapToObject(e.get(`data`)),s=e.get(`parentId`),c=e.get(`lastEditedAt`),l=(r=e.get(`lastEditedBy`))==null?null:r,u=t.findIndex(e=>e.id===i);u!==-1&&n.push({blockId:i,toolName:a,data:o,parentId:s==null?void 0:s,lastEditedAt:c,lastEditedBy:l,targetIndex:u})}n.length!==0&&this.withAtomicOperation(()=>{let e=[];for(let t of n){let n=this.factory.composeBlock({id:t.blockId,tool:t.toolName,data:t.data,parentId:t.parentId,bindEventsImmediately:!0,lastEditedAt:t.lastEditedAt,lastEditedBy:t.lastEditedBy});this.blocksStore.addToArray(t.targetIndex,n),e.push({block:n,targetIndex:t.targetIndex,parentId:t.parentId})}for(let{block:t,targetIndex:n,parentId:r}of e)this.blocksStore.activateBlock(t),this.handlers.onBlockAdded(t,n),r!==void 0&&this.handlers.setBlockParent(t,r)},{extendThroughRAF:!0})}handleYjsRemove(e){let t=this.repository.getBlockById(e);if(t===void 0)return;let n=this.handlers.getBlockIndex(t);n!==-1&&this.withAtomicOperation(()=>{if(this.handlers.onBlockRemoved(t,n),t.parentId!==null){let e=this.repository.getBlockById(t.parentId);e!==void 0&&(e.contentIds=e.contentIds.filter(e=>e!==t.id))}for(let e of t.contentIds){let t=this.repository.getBlockById(e);t!==void 0&&(t.parentId=null,t.holder.classList.remove(`hidden`))}this.blocksStore.remove(n),this.blocksStore.length===0&&this.handlers.insertDefaultBlock(!0)},{extendThroughRAF:!0})}handleYjsMove(){this.moveSyncScheduled||(this.moveSyncScheduled=!0,queueMicrotask(()=>{this.moveSyncScheduled=!1,this.syncBlockOrderFromYjs()}))}syncBlockOrderFromYjs(){let e=this.dependencies.YjsManager.toJSON(),t=new Map;for(let e of this.repository.blocks)t.set(e.id,e);e.forEach((e,n)=>{let r=e.id;if(r===void 0)return;let i=t.get(r);if(i===void 0)return;let a=this.handlers.getBlockIndex(i);a!==n&&this.blocksStore.move(n,a)})}updateBlocksStore(e){this.blocksStore=e}async syncBlockDataToYjs(e,t){var n=this;if(t!==void 0)for(let[r,i]of Object.entries(t.data))n.dependencies.YjsManager.updateBlockData(e.id,r,i)}isBlockDataChanged(e,t,n){let r=this.dependencies.YjsManager.getBlockById(e);return r===void 0?!0:r.get(`data`).get(t)!==n}},Rc=class extends l{constructor(...e){super(...e),this._isPointerDragActive=!1,this._currentBlockIndex=-1,this._blocks=null,this.parentsSyncScheduled=new Set,this.pendingParentSyncPromise=null}get currentBlockIndex(){return this._currentBlockIndex}set currentBlockIndex(e){this.operations&&(this.operations.currentBlockIndexValue=e),this._currentBlockIndex=e}get firstBlock(){return this.repository.firstBlock}get lastBlock(){return this.repository.lastBlock}get currentBlock(){var e;return(e=this.operations)==null?void 0:e.currentBlock}set currentBlock(e){if(e===void 0){this.unsetCurrentBlock();return}this.currentBlockIndex=this.repository.getBlockIndex(e)}get nextBlock(){var e,t;return(e=(t=this.operations)==null?void 0:t.nextBlock)==null?null:e}get nextContentfulBlock(){return this.repository.getNextContentfulBlock(this.currentBlockIndex)}get previousContentfulBlock(){return this.repository.getPreviousContentfulBlock(this.currentBlockIndex)}get previousBlock(){var e,t;return(e=(t=this.operations)==null?void 0:t.previousBlock)==null?null:e}get nextVisibleBlock(){var e,t;return(e=(t=this.operations)==null?void 0:t.nextVisibleBlock)==null?null:e}get previousVisibleBlock(){var e,t;return(e=(t=this.operations)==null?void 0:t.previousVisibleBlock)==null?null:e}get blocks(){return this.repository.blocks}get isBlokEmpty(){return this.repository.isBlokEmpty()}get isSyncingFromYjs(){return this.yjsSync.isSyncingFromYjs}setPointerDragActive(e){this._isPointerDragActive=e}prepare(){let e=new fc(this.Blok.UI.nodes.redactor);this._blocks=new Proxy(e,{set:fc.set,get:fc.get}),this.initializeServices(),this.listeners.on(document,`copy`,e=>{this.Blok.BlockEvents.handleCommandC(e)}),this.shortcuts.register(),this.yjsSync.subscribe()}initializeServices(){this.repository=new Ac,this.repository.initialize(this.blocksStore),this.eventBinder=new vc({blockEvents:this.Blok.BlockEvents,listeners:this.readOnlyMutableListeners,eventsDispatcher:this.eventsDispatcher,getBlockIndex:e=>this.repository.getBlockIndex(e),onBlockMutated:this.blockDidMutated.bind(this),shouldHandleEvent:e=>{let t=e.target;if(t instanceof Element){let e=t.closest(`[data-blok-testid="blok-editor"]`);return e===null||e===this.Blok.UI.nodes.wrapper}return!0}}),this.factory=new yc({API:this.Blok.API,eventsDispatcher:this.eventsDispatcher,tools:this.Blok.Tools.blockTools,moduleInstances:this.Blok},this.bindBlockEvents.bind(this)),this.hierarchy=new bc(this.repository,e=>{this.yjsSync.isSyncingFromYjs||this.scheduleParentSync(e)},()=>{var e;return!!((e=this.yjsSync)!=null&&e.isSyncingFromYjs)}),this.operations=new kc({config:this.config,YjsManager:this.Blok.YjsManager,Caret:this.Blok.Caret,I18n:this.Blok.I18n,eventsDispatcher:this.eventsDispatcher},this.repository,this.factory,this.hierarchy,this.blockDidMutated.bind(this),this._currentBlockIndex),this.yjsSync=new Lc({YjsManager:this.Blok.YjsManager,operations:this.operations},this.repository,this.factory,{addToDom:(e,t)=>{this.blocksStore.insert(t,e)},removeFromDom:e=>{this.blocksStore.remove(e)},moveInDom:(e,t)=>{this.blocksStore.move(e,t)},getBlockIndex:e=>this.repository.getBlockIndex(e),insertDefaultBlock:e=>this.insert({skipYjsSync:e}),updateIndentation:e=>{this.hierarchy.updateBlockIndentation(e)},setBlockParent:(e,t)=>{this.hierarchy.setBlockParent(e,t)},replaceBlock:(e,t)=>{this.blocksStore.replace(e,t)},onBlockRemoved:(e,t)=>{this.blockDidMutated(dc,e,{index:t})},onBlockAdded:(e,t)=>{this.blockDidMutated(lc,e,{index:t})}},this.blocksStore),this.operations.setYjsSync(this.yjsSync),this.shortcuts=new Ic(this.Blok.UI.nodes.wrapper,{onMoveUp:this.moveCurrentBlockUp.bind(this),onMoveDown:this.moveCurrentBlockDown.bind(this)})}get blocksStore(){if(this._blocks===null)throw Error(`BlockManager: blocks store is not initialized. Call prepare() before accessing blocks.`);return this._blocks}toggleReadOnly(e){e?this.eventBinder.disableBindings():this.eventBinder.enableBindings(this.blocks)}composeBlock(e){return this.factory.composeBlock(e)}insert(e={}){this._currentBlockIndex=this.operations.currentBlockIndexValue;let t=this.operations.insert(e,this.blocksStore);return this._currentBlockIndex=this.operations.currentBlockIndexValue,t}insertMany(e,t=0){let r=new Map;for(let t of e)r.set(t.id,t);this.reconcileChildrenToParents(e,r),this.reconcileParentsToChildren(e,r),this.assertInsertManyHierarchy(e);let i=e.map(e=>{let t=e.preservedTunes;return n.t(n.t(n.t({id:e.id,type:e.name,data:e.preservedData},Object.keys(t).length>0&&{tunes:t}),e.parentId!==null&&{parent:e.parentId}),e.contentIds.length>0&&{content:e.contentIds})});this.Blok.YjsManager.fromJSON(i),this.yjsSync.withAtomicOperation(()=>{this.blocksStore.insertMany(e,t)},{extendThroughRAF:!0}),e.forEach(e=>{e.parentId!==null&&this.updateBlockIndentation(e)})}async update(e,t,n){var r=this;return r.operations.update(e,r.blocksStore,t,n)}replace(e,t,n){return this.operations.replace(e,t,n,this.blocksStore)}async paste(e,t,n=!1){var r=this;return r.operations.paste(e,t,n,r.blocksStore)}insertDefaultBlockAtIndex(e,t=!1,n=!1,r=!1){this._currentBlockIndex=this.operations.currentBlockIndexValue;let i=this.operations.insertDefaultBlockAtIndex(e,t,n,this.blocksStore,r);return this._currentBlockIndex=this.operations.currentBlockIndexValue,i}insertAtEnd(){return this.operations.insertAtEnd(this.blocksStore)}async mergeBlocks(e,t){var n=this;return n.operations.mergeBlocks(e,t,n.blocksStore)}removeBlock(e,t=!0,n=!1){this._currentBlockIndex=this.operations.currentBlockIndexValue;let r=this.operations.removeBlock(e,t,n,this.blocksStore);return this._currentBlockIndex=this.operations.currentBlockIndexValue,r}deleteSelectedBlocksAndInsertReplacement(){let e=this.blocks.map((e,t)=>({block:e,index:t})).filter(({block:e})=>e.selected).sort((e,t)=>t.index-e.index);if(e.length===0)return;let n=e.length===this.blocks.length,r=e[e.length-1].index,i=e.map(({block:e})=>e.id),a=this.config.defaultBlock;if(a===void 0)throw Error(`Could not insert default Block. Default block tool is not defined in the configuration.`);let o=n?t.Ln():void 0;this.Blok.YjsManager.transact(()=>{for(let e of i)this.Blok.YjsManager.removeBlock(e);n&&o!==void 0&&this.Blok.YjsManager.addBlock({id:o,type:a,data:{}},r)});for(let{block:t}of e)this.removeBlock(t,!1,!0);if(n&&o!==void 0)return this.insert({id:o,tool:a,index:r,needToFocus:!0,skipYjsSync:!0})}removeAllBlocks(){let e=[...this.blocks].map(e=>e.id);for(this.Blok.YjsManager.transact(()=>{for(let t of e)this.Blok.YjsManager.removeBlock(t)});this.blocksStore.length>0;)this.blocksStore.remove(this.blocksStore.length-1);this.unsetCurrentBlock(),this.insert();let t=this.currentBlock,n=t==null?void 0:t.firstInput;n!==void 0&&n.focus()}split(){this._currentBlockIndex=this.operations.currentBlockIndexValue;let e=this.operations.split(this.blocksStore);return this._currentBlockIndex=this.operations.currentBlockIndexValue,e}transactForTool(e){this.Blok.YjsManager.stopCapturing();let t=this.operations.suppressStopCapturing;this.operations.suppressStopCapturing=!0;try{e()}finally{queueMicrotask(()=>{queueMicrotask(()=>{this.pendingParentSyncPromise===null?(this.Blok.YjsManager.stopCapturing(),this.operations.suppressStopCapturing=t):this.pendingParentSyncPromise.then(()=>{this.Blok.YjsManager.stopCapturing(),this.operations.suppressStopCapturing=t})})})}}insertInsideParent(e,t,n){this._currentBlockIndex=this.operations.currentBlockIndexValue;let r=this.operations.insertInsideParent(e,t,this.blocksStore,n);return this._currentBlockIndex=this.operations.currentBlockIndexValue,r}get suppressStopCapturing(){var e,t;return(e=(t=this.operations)==null?void 0:t.suppressStopCapturing)==null?!1:e}splitBlockWithData(e,t,n,r,i){return this.operations.splitBlockWithData(e,t,n,r,i,this.blocksStore)}getBlockByIndex(e){return this.repository.getBlockByIndex(e)}getBlockIndex(e){return this.repository.getBlockIndex(e)}getBlockById(e){return this.repository.getBlockById(e)}resolveToRootBlock(e){return this.repository.resolveToRootBlock(e)}getBlockDepth(e){return this.hierarchy.getBlockDepth(e)}setBlockParent(e,t){let n=e.parentId;if(this.hierarchy.setBlockParent(e,t),this.yjsSync.isSyncingFromYjs)return;let r=this.Blok.YjsManager.getBlockById(e.id);if(r!==void 0){if(this.Blok.YjsManager.isInMoveGroup){this.Blok.YjsManager.transactWithoutCapture(()=>{t===null?r.delete(`parentId`):r.set(`parentId`,t),this.syncParentContentIdsToYjs(e.id,n,t)}),this.Blok.YjsManager.recordParentChangeForPendingMove(e.id,n,t);return}this.Blok.YjsManager.transact(()=>{t===null?r.delete(`parentId`):r.set(`parentId`,t),this.syncParentContentIdsToYjs(e.id,n,t)})}}reparentFromHistoryReplay(e,t){this.yjsSync.withAtomicOperation(()=>{this.hierarchy.setBlockParent(e,t)})}syncParentContentIdsToYjs(e,t,n){t!==null&&t!==n&&this.removeChildFromParentYContent(t,e),n!==null&&this.appendChildToParentYContent(n,e)}removeChildFromParentYContent(e,t){let n=this.Blok.YjsManager.getBlockById(e);if(n===void 0)return;let r=n.get(`contentIds`);if(!(r instanceof lo))return;let i=r.toArray().indexOf(t);i!==-1&&r.delete(i,1)}appendChildToParentYContent(e,t){let n=this.Blok.YjsManager.getBlockById(e);if(n===void 0)return;let r=n.get(`contentIds`),i=r instanceof lo?r:new lo;if(r instanceof lo||n.set(`contentIds`,i),i.toArray().includes(t))return;let a=this.repository.getBlockById(e),o=a===void 0?-1:a.contentIds.indexOf(t),s=o===-1?i.length:Math.min(o,i.length);i.insert(s,[t])}updateBlockIndentation(e){return this.hierarchy.updateBlockIndentation(e)}getBlock(e){return this.repository.getBlock(e)}setCurrentBlockByChildNode(e){let n=this.repository.getBlockByChildNode(e);if(!n)return;let r=n.holder.closest(`[${t.ur.editor}]`),i=this.Blok.UI.nodes.wrapper;if(r!=null&&r.isEqualNode(i))return this.currentBlockIndex=this.repository.getBlockIndex(n),n.updateCurrentInput(),n}getBlockByChildNode(e){return this.repository.getBlockByChildNode(e)}move(e,t=this.currentBlockIndex,n=!1,r=!1){this._currentBlockIndex=this.operations.currentBlockIndexValue,this.operations.move(e,t,n,this.blocksStore,r),this._currentBlockIndex=this.operations.currentBlockIndexValue}async convert(e,t,n){var r=this;return r.operations.convert(e,t,r.blocksStore,n)}unsetCurrentBlock(){this.currentBlockIndex=-1}async clear(e=!1){var n=this;let r=[...n.blocks],i=r.map(e=>e.id),a=e?t.Ln():void 0,o=n.config.defaultBlock;n.Blok.YjsManager.transact(()=>{for(let e of i)n.Blok.YjsManager.removeBlock(e);e&&a!==void 0&&o!==void 0&&n.Blok.YjsManager.addBlock({id:a,type:o,data:{}},0)});for(let e of r){let t=n.getBlockIndex(e);t!==-1&&(n.blocksStore.remove(t),n.blockDidMutated(dc,e,{index:t}))}n.unsetCurrentBlock(),e&&a!==void 0&&n.insert({id:a,skipYjsSync:!0}),n.Blok.UI.checkEmptiness()}moveCurrentBlockUp(){var e;(e=this.Blok.DragManager)!=null&&e.isDragging||(this._currentBlockIndex=this.operations.currentBlockIndexValue,this.operations.moveCurrentBlockUp(this.blocksStore),this._currentBlockIndex=this.operations.currentBlockIndexValue)}moveCurrentBlockDown(){var e;(e=this.Blok.DragManager)!=null&&e.isDragging||(this._currentBlockIndex=this.operations.currentBlockIndexValue,this.operations.moveCurrentBlockDown(this.blocksStore),this._currentBlockIndex=this.operations.currentBlockIndexValue)}async destroy(){var e=this;e.shortcuts.unregister(),await Promise.all(e.blocks.map(e=>e.destroy()))}bindBlockEvents(e){this.eventBinder.bindBlockEvents(e)}blockDidMutated(e,t,r){let i=n.t({target:new u(t)},r),a=new CustomEvent(e,{detail:n.t({},i)});return Object.prototype.propertyIsEnumerable.call(a,`type`)||Object.defineProperty(a,`type`,{value:e,enumerable:!0,configurable:!0}),Object.prototype.propertyIsEnumerable.call(a,`detail`)||Object.defineProperty(a,`detail`,{value:i,enumerable:!0,configurable:!0}),this.eventsDispatcher.emit(p,{event:a}),e===`block-changed`&&!this.yjsSync.isSyncingFromYjs&&!this._isPointerDragActive&&this.syncBlockDataToYjs(t),t}reconcileChildrenToParents(e,t){for(let n of e){if(n.parentId===null)continue;let e=t.get(n.parentId);if(e===void 0){n.parentId=null;continue}e.contentIds.includes(n.id)||e.contentIds.push(n.id)}}reconcileParentsToChildren(e,t){for(let n of e)n.contentIds.length!==0&&(n.contentIds=n.contentIds.filter(e=>this.resolveChildForParent(n,e,t)))}resolveChildForParent(e,t,n){let r=n.get(t);return r===void 0?!1:r.parentId===null?(r.parentId=e.id,!0):r.parentId===e.id}assertInsertManyHierarchy(e){let r=e.map(e=>n.t(n.t({id:e.id,type:e.name,data:{}},e.parentId!==null&&{parent:e.parentId}),e.contentIds.length>0&&{content:e.contentIds})),i=typeof process<`u`?`production`:void 0;if(i===`test`||i===`development`){_c(r,`BlockManager.insertMany`);return}let a=gc(r);a.length!==0&&t.ar(`BlockManager.insertMany produced output with hierarchy drift: ${a.map(e=>e.message).join(`; `)}`,`error`)}scheduleParentSync(e){this.parentsSyncScheduled.size===0&&queueMicrotask(()=>this.flushParentSyncs()),this.parentsSyncScheduled.add(e)}flushParentSyncs(){let e=[];for(let t of this.parentsSyncScheduled){let n=this.repository.getBlockById(t);n!==void 0&&e.push(this.syncBlockDataToYjs(n))}this.parentsSyncScheduled.clear(),e.length>0&&(this.pendingParentSyncPromise=Promise.all(e).then(()=>{this.pendingParentSyncPromise=null}))}async syncBlockDataToYjs(e){var t=this;let n=await e.save();if(n===void 0)return;let r={value:!1};t.Blok.YjsManager.transact(()=>{var i,a;for(let[i,a]of Object.entries(n.data))t.Blok.YjsManager.updateBlockData(e.id,i,a)&&(r.value=!0);r.value&&(e.lastEditedAt=Date.now(),e.lastEditedBy=(i=(a=t.config.user)==null?void 0:a.id)==null?null:i,t.Blok.YjsManager.updateBlockMetadata(e.id,e.lastEditedAt,e.lastEditedBy))})}},zc=class extends l{constructor(...e){super(...e),this.anyBlockSelectedCache=null,this._navigationModeEnabled=!1,this.navigationFocusIndex=-1,this.needToSelectAll=!1,this.nativeInputSelected=!1,this.readyToBlockSelection=!1,this.selection=new t.mn}get sanitizerConfig(){return t.dn(this.config.sanitizer,{p:{},h1:{},h2:{},h3:{},h4:{},h5:{},h6:{},ol:{},ul:{},li:{},br:!0,img:{src:!0,width:!0,height:!0},a:{href:!0},b:{},i:{},u:{},mark:{style:!0}})}get allBlocksSelected(){let{BlockManager:e}=this.Blok;return e.blocks.every(e=>e.selected)}set allBlocksSelected(e){let{BlockManager:t}=this.Blok;for(let n of t.blocks)n.selected=e;this.clearCache()}get anyBlockSelected(){let{BlockManager:e}=this.Blok;return this.anyBlockSelectedCache===null&&(this.anyBlockSelectedCache=e.blocks.some(e=>e.selected)),this.anyBlockSelectedCache}get selectedBlocks(){return this.Blok.BlockManager.blocks.filter(e=>e.selected)}get navigationModeEnabled(){return this._navigationModeEnabled}get navigationFocusedBlock(){if(!(!this._navigationModeEnabled||this.navigationFocusIndex<0))return this.Blok.BlockManager.getBlockByIndex(this.navigationFocusIndex)}prepare(){this.selection=new t.mn,Z.add({name:`CMD+A`,handler:e=>{let{BlockManager:t,ReadOnly:n}=this.Blok;if(n.isEnabled){e.preventDefault(),this.selectAllBlocks();return}t.currentBlock&&this.handleCommandA(e)},on:this.Blok.UI.nodes.redactor})}toggleReadOnly(){let e=t.mn.get();e==null||e.removeAllRanges(),this.allBlocksSelected=!1}unSelectBlockByIndex(e){let{BlockManager:t}=this.Blok,n=typeof e==`number`?t.getBlockByIndex(e):t.currentBlock;n&&(n.selected=!1,this.clearCache())}clearSelection(e,n=!1){let{RectangleSelection:r}=this.Blok;this.needToSelectAll=!1,this.nativeInputSelected=!1,this.readyToBlockSelection=!1,this._navigationModeEnabled&&this.disableNavigationMode();let i=e&&e instanceof KeyboardEvent,a=e,o=i&&a.key&&a.key.length===1;this.anyBlockSelected&&i&&o&&!t.mn.isSelectionExists&&this.replaceSelectedBlocksWithPrintableKey(e),this.Blok.CrossBlockSelection.clear(e),n&&this.selection.restore(),r.isRectActivated()&&this.Blok.RectangleSelection.clearSelection(),this.anyBlockSelected&&(this.allBlocksSelected=!1)}async copySelectedBlocks(e){var n=this;e.preventDefault();let r=e.clipboardData;if(!r)return;let i=t.Pn.make(`div`),a=[],o=(e=>{let t=[],r=new Set,i=e=>{if(!r.has(e.id)){r.add(e.id),t.push(e);for(let t of e.contentIds){let e=n.Blok.BlockManager.getBlockById(t);e!==void 0&&!r.has(e.id)&&i(e)}}};for(let t of e)i(t);return t})(n.selectedBlocks).map(e=>({id:e.id,tool:e.name,data:e.preservedData,tunes:e.preservedTunes,parentId:e.parentId,contentIds:e.contentIds}));n.selectedBlocks.forEach(e=>{var r;let o=t.un(e.holder.innerHTML,n.sanitizerConfig),s=t.Pn.make(`div`);s.innerHTML=o;let c=(r=s.textContent)==null?``:r;if(a.push(c),!Array.from(s.childNodes).some(e=>e.nodeType===Node.ELEMENT_NODE)&&c.trim().length>0){let e=t.Pn.make(`p`);e.innerHTML=s.innerHTML,i.appendChild(e)}else for(;s.firstChild;)i.appendChild(s.firstChild)});let s=a.join(`
|
|
10
|
+
|
|
11
|
+
`),c=i.innerHTML;r.setData(`text/plain`,s),r.setData(`text/html`,c);try{r.setData(n.Blok.Paste.MIME_TYPE,JSON.stringify(o))}catch(e){e instanceof Error&&console.warn(`Failed to set custom clipboard data:`,e.message)}}selectBlockByIndex(e){let{BlockManager:t}=this.Blok,n=t.getBlockByIndex(e);n!==void 0&&this.selectBlock(n)}selectBlock(e){this.selection.save();let n=t.mn.get();n==null||n.removeAllRanges();let r=e;r.selected=!0,this.clearCache(),this.Blok.InlineToolbar.close()}unselectBlock(e){let t=e;t.selected=!1,this.clearCache()}clearCache(){this.anyBlockSelectedCache=null}enableNavigationMode(){let{BlockManager:e}=this.Blok;if(this._navigationModeEnabled)return;this._navigationModeEnabled=!0;let t=e.currentBlockIndex>=0?e.currentBlockIndex:0;this.setNavigationFocus(t)}disableNavigationMode(e=!1){if(!this._navigationModeEnabled)return;let t=this.navigationFocusedBlock;if(t&&t.holder.removeAttribute(`data-blok-navigation-focused`),this._navigationModeEnabled=!1,e&&t){let{Caret:e,BlockManager:n}=this.Blok;n.currentBlockIndex=this.navigationFocusIndex,e.setToBlock(t,e.positions.END)}this.navigationFocusIndex=-1}navigateNext(){if(!this._navigationModeEnabled)return!1;let{BlockManager:e}=this.Blok,t=this.navigationFocusIndex+1;return t>=e.blocks.length?!1:(this.setNavigationFocus(t),!0)}navigatePrevious(){if(!this._navigationModeEnabled)return!1;let e=this.navigationFocusIndex-1;return e<0?!1:(this.setNavigationFocus(e),!0)}setNavigationFocus(e){let{BlockManager:n}=this.Blok,r=n.getBlockByIndex(e);if(!r)return;let i=this.navigationFocusedBlock;i&&i.holder.removeAttribute(`data-blok-navigation-focused`),this.navigationFocusIndex=e,r.holder.setAttribute(`data-blok-navigation-focused`,`true`);let a=t.mn.get();a==null||a.removeAllRanges(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),r.holder.scrollIntoView({behavior:`smooth`,block:`nearest`})}destroy(){Z.remove(this.Blok.UI.nodes.redactor,`CMD+A`)}handleCommandA(e){if(this.Blok.RectangleSelection.clearSelection(),t.Pn.isNativeInput(e.target)&&!this.readyToBlockSelection){this.readyToBlockSelection=!0;return}let n=this.Blok.BlockManager.getBlock(e.target);if(!n)return;let r=n.inputs;if(r.length>1&&!this.readyToBlockSelection){this.readyToBlockSelection=!0;return}if(r.length===1&&!this.needToSelectAll){this.needToSelectAll=!0;return}if(this.needToSelectAll){e.preventDefault(),this.selectAllBlocks(),this.needToSelectAll=!1,this.readyToBlockSelection=!1;return}this.readyToBlockSelection&&(e.preventDefault(),this.selectBlock(n),this.needToSelectAll=!0)}selectAllBlocks(){this.selection.save();let e=t.mn.get();e==null||e.removeAllRanges(),this.allBlocksSelected=!0,this.Blok.InlineToolbar.close(),this.Blok.Toolbar.moveAndOpenForMultipleBlocks()}replaceSelectedBlocksWithPrintableKey(e){let{BlockManager:n,Caret:r}=this.Blok,i=n.deleteSelectedBlocksAndInsertReplacement();i&&r.setToBlock(i),t.Xn(()=>{let t=e.key;r.insertContentAtCaretPosition(t.length>1?``:t)},20)()}},Bc=127,Vc=e=>{for(let t of e){if(t.trim().length===0)continue;if(t>=`0`&&t<=`9`||t.toLowerCase()!==t.toUpperCase())return!1;let e=t.codePointAt(0);if(typeof e==`number`&&e>Bc)return!1}return!0},Hc=e=>{var t;return e.nodeType===Node.TEXT_NODE?[e]:(t=e.hasChildNodes)!=null&&t.call(e)?Array.from(e.childNodes).flatMap(e=>Hc(e)):[]},Uc=e=>{var t,n;let r=Hc(e);if(r.length===0)return null;let i=r[r.length-1],a=(t=[...r].reverse().find(e=>{var t;return!Vc((t=e.textContent)==null?``:t)}))==null?null:t;return a&&a!==i&&Vc((n=i.textContent)==null?``:n)&&a.parentNode!==e?a:i},Wc=class e extends l{get positions(){return{START:`start`,END:`end`,DEFAULT:`default`}}static get DATA_ATTR(){return{shadowCaret:`data-blok-shadow-caret`}}setToBlock(e,n=this.positions.DEFAULT,r=0){let{BlockManager:i,BlockSelection:a}=this.Blok;if(a.clearSelection(),!e.focusable){var o;(o=window.getSelection())==null||o.removeAllRanges(),a.selectBlock(e),i.currentBlock=e;return}let s=n===this.positions.START?e.firstInput:n===this.positions.END?e.lastInput:e.currentInput;if(!s)return;let{node:c,offset:l}=(e=>{if(n===this.positions.START)return{node:t.Pn.getDeepestNode(e,!1),offset:0};if(n===this.positions.END)return this.resolveEndPositionNode(e);let{node:i,offset:a}=t.Pn.getNodeByOffset(e,r);return i?{node:i,offset:a}:{node:t.Pn.getDeepestNode(e,!1),offset:0}})(s);if(!c)return;this.set(c,l),i.setCurrentBlockByChildNode(e.holder);let u=i.currentBlock;u&&(u.currentInput=s)}resolveEndPositionNode(e){let n=t.Pn.getDeepestNode(e,!0);if(n instanceof HTMLElement&&t.Pn.isNativeInput(n))return{node:n,offset:t.Pn.getContentLength(n)};let r=Uc(e);return r?{node:r,offset:t.Pn.getContentLength(r)}:n?{node:n,offset:t.Pn.getContentLength(n)}:{node:null,offset:0}}setToInput(e,t=this.positions.DEFAULT,n=0){let{currentBlock:r}=this.Blok.BlockManager;this.setCaretToInputPosition(e,t,n),r&&(r.currentInput=e)}setToBlockAtXPosition(e,t,n){let{BlockManager:r,BlockSelection:i}=this.Blok;if(i.clearSelection(),!e.focusable){var a;(a=window.getSelection())==null||a.removeAllRanges(),i.selectBlock(e),r.currentBlock=e;return}let o=n?e.firstInput:e.lastInput;if(!o)return;if(t!==null)bs(o,t,n);else{let e=n?this.positions.START:this.positions.END;this.setCaretToInputPosition(o,e,0)}r.setCurrentBlockByChildNode(e.holder);let s=r.currentBlock;s&&(s.currentInput=o)}setToInputAtXPosition(e,t,n){let{currentBlock:r}=this.Blok.BlockManager;if(t!==null)bs(e,t,n);else{let t=n?this.positions.START:this.positions.END;this.setCaretToInputPosition(e,t,0)}r&&(r.currentInput=e)}setCaretToInputPosition(e,t,n){if(t===this.positions.START){this.setCaretToStart(e);return}if(t===this.positions.END){this.setCaretToEnd(e);return}this.setCaretToOffset(e,n)}setCaretToStart(e){let n=t.Pn.getDeepestNode(e,!1);n&&this.set(n,0)}setCaretToEnd(e){let n=t.Pn.getDeepestNode(e,!0);n&&this.set(n,t.Pn.getContentLength(n))}setCaretToOffset(e,n){let{node:r,offset:i}=t.Pn.getNodeByOffset(e,n);if(r){this.set(r,i);return}this.setCaretToEnd(e)}set(e,n=0){let{top:r,bottom:i}=t.mn.setCursor(e,n),{innerHeight:a}=window;if(r<0){window.scrollBy(0,r-30);return}i>a&&window.scrollBy(0,i-a+30)}setToTheLastBlock(){let e=this.Blok.BlockManager.lastBlock;if(e)if(e.tool.isDefault&&e.isEmpty)this.setToBlock(e);else{let e=this.Blok.BlockManager.insertAtEnd();this.setToBlock(e)}}extractFragmentFromCaretPosition(){let e=t.mn.get();if(!e||!e.rangeCount)return;let n=e.getRangeAt(0),r=this.Blok.BlockManager.currentBlock;if(!r)return;let i=r.currentInput;if(n.deleteContents(),!i)return;if(t.Pn.isNativeInput(i)){var a;let e=i,t=document.createDocumentFragment(),n=(a=e.selectionStart)==null?0:a,r=e.value.substring(0,n);return t.textContent=e.value.substring(n),e.value=r,t}let o=n.cloneRange();return o.selectNodeContents(i),o.setStart(n.endContainer,n.endOffset),o.extractContents()}navigateNext(e=!1){let{BlockManager:n}=this.Blok,{currentBlock:r,nextVisibleBlock:i}=n;if(r===void 0)return!1;let{nextInput:a,currentInput:o}=r,s=o===void 0?void 0:t.nn(o),c=e||s||!r.focusable;if(a&&c)return this.setToInput(a,this.positions.START),!0;let l=i===null?r.tool.isDefault||!c?null:n.insertAtEnd():i;return l!==null&&c?(this.setToBlock(l,this.positions.START),!0):!1}navigatePrevious(e=!1){let{currentBlock:n,previousVisibleBlock:r}=this.Blok.BlockManager;if(!n)return!1;let{previousInput:i,currentInput:a}=n,o=a===void 0?void 0:t.rn(a),s=e||o||!n.focusable;return i&&s?(this.setToInput(i,this.positions.END),!0):r!==null&&s?(this.setToBlock(r,this.positions.END),!0):!1}navigateToBlock(e,t){if(e===null)return!1;let{BlockManager:n,BlockSelection:r}=this.Blok;return r.clearSelection(),e.focusable?this.setToBlockAtXPosition(e,null,t):(r.selectBlock(e),n.currentBlock=e),!0}navigateVerticalNext(){let{BlockManager:e}=this.Blok,{currentBlock:n,nextVisibleBlock:r}=e;if(n===void 0)return!1;if(!n.focusable||n.isEmpty)return this.navigateToBlock(r,!0);let{currentInput:i}=n;if(!(i===void 0||ms(i)))return!1;let a=xs(),{nextInput:o}=n;if(o)return this.setToInputAtXPosition(o,a,!0),!0;if(r!==null&&n.parentId!==null&&n.holder.parentElement!==null&&n.holder.parentElement===r.holder.parentElement)return this.setToBlockAtXPosition(r,a,!0),!0;if(n.parentId!==null&&(r===null||r.parentId===n.parentId||r.id===n.parentId)&&n.parentId!==null){let t=this.findFirstBlockAfterParent(n.parentId);if(t!==null)return this.setToBlockAtXPosition(t,a,!0),!0;let r=e.insertAtEnd();return this.setToBlock(r,this.positions.START),!0}if(r!==null)return this.setToBlockAtXPosition(r,a,!0),!0;let s=i===void 0?!0:t.nn(i);if(!n.tool.isDefault&&s){let t=e.insertAtEnd();return this.setToBlock(t,this.positions.START),!0}return!1}navigateVerticalPrevious(){let{BlockManager:e}=this.Blok,{currentBlock:t,previousVisibleBlock:n}=e;if(t===void 0)return!1;if(!t.focusable||t.isEmpty)return this.navigateToBlock(n,!1);let{currentInput:r}=t;if(!(r===void 0||ps(r)))return!1;let i=xs(),{previousInput:a}=t;if(a)return this.setToInputAtXPosition(a,i,!1),!0;if(n!==null&&t.parentId!==null&&t.holder.parentElement!==null&&t.holder.parentElement===n.holder.parentElement)return this.setToBlockAtXPosition(n,i,!1),!0;if(t.parentId!==null&&(n===null||n.parentId===t.parentId||n.id===t.parentId)&&t.parentId!==null){let e=this.findFirstBlockBeforeParent(t.parentId);return e===null?!1:(this.setToBlockAtXPosition(e,i,!1),!0)}return n===null?!1:(this.setToBlockAtXPosition(n,i,!1),!0)}findFirstBlockBeforeParent(e){let{BlockManager:t}=this.Blok,n=t.blocks,r=n.findIndex(t=>t.id===e);return r<=0?null:n[r-1]}findFirstBlockAfterParent(e){var t;let{BlockManager:n}=this.Blok,r=n.blocks,i=r.findIndex(t=>t.id===e);return i===-1||(t=r.slice(i+1).find(t=>t.parentId!==e))==null?null:t}createShadow(t){let n=document.createElement(`span`);n.setAttribute(e.DATA_ATTR.shadowCaret,``),n.setAttribute(`data-blok-testid`,`shadow-caret`),t.insertAdjacentElement(`beforeend`,n)}restoreCaret(e){let n=e.querySelector(`[data-blok-testid="shadow-caret"]`);if(!n)return;new t.mn().expandToTag(n);let r=document.createRange();r.selectNode(n),r.extractContents()}insertContentAtCaretPosition(e){let n=document.createDocumentFragment(),r=document.createElement(`div`),i=t.mn.get(),a=t.mn.range;if(!i||!a)return;r.innerHTML=e,Array.from(r.childNodes).forEach(e=>n.appendChild(e)),n.childNodes.length===0&&n.appendChild(new Text);let o=n.lastChild;a.deleteContents(),a.insertNode(n);let s=document.createRange(),c=o.nodeType===Node.TEXT_NODE?o:o.firstChild;c!==null&&c.textContent!==null&&s.setStart(c,c.textContent.length),i.removeAllRanges(),i.addRange(s)}},Gc=class extends l{constructor(...e){super(...e),this.firstSelectedBlock=null,this.lastSelectedBlock=null,this.onMouseUp=()=>{this.listeners.off(document,`mouseover`,this.onMouseOver),this.listeners.off(document,`mouseup`,this.onMouseUp),this.isCrossBlockSelectionStarted&&(this.Blok.UI.disableHoverForCooldown(),this.Blok.UI.resetBlockHoverState(),this.Blok.Toolbar.moveAndOpenForMultipleBlocks())},this.onMouseOver=e=>{let n=e,{BlockManager:r,BlockSelection:i,DragManager:a}=this.Blok;if(a.isDragging||this.Blok.UI.someToolbarOpened||this.Blok.RectangleSelection.isRectActivated()||n.relatedTarget===null&&n.target===null)return;let o=r.getBlockByChildNode(n.relatedTarget)||this.lastSelectedBlock,s=r.getBlockByChildNode(n.target);if(!o||!s)return;let c=r.resolveToRootBlock(o),l=r.resolveToRootBlock(s);if(l!==c){if(this.firstSelectedBlock&&c===this.firstSelectedBlock){var u;(u=t.mn.get())==null||u.removeAllRanges(),c.selected=!0,l.selected=!0,i.clearCache();return}if(this.firstSelectedBlock&&l===this.firstSelectedBlock){let e=r.blocks.indexOf(c),t=r.blocks.indexOf(l),n=Math.min(e,t),a=Math.max(e,t);for(let e of Array.from({length:a-n+1},(e,t)=>n+t))r.blocks[e].selected=!1;i.clearCache();return}this.Blok.InlineToolbar.close(),this.toggleBlocksSelectedState(c,l),this.lastSelectedBlock=l}}}async prepare(){var e=this;e.listeners.on(document,`mousedown`,t=>{e.enableCrossBlockSelection(t)})}watchSelection(e){if(e.button!==t.lr.LEFT)return;let{BlockManager:n}=this.Blok,r=n.getBlock(e.target);r&&(this.firstSelectedBlock=r,this.lastSelectedBlock=r,this.listeners.on(document,`mouseover`,this.onMouseOver),this.listeners.on(document,`mouseup`,this.onMouseUp))}get isCrossBlockSelectionStarted(){return!!this.firstSelectedBlock&&!!this.lastSelectedBlock&&this.firstSelectedBlock!==this.lastSelectedBlock}toggleBlockSelectedState(e=!0){let{BlockManager:n,BlockSelection:r}=this.Blok,i=n.currentBlock;if(!this.lastSelectedBlock&&!i)return;if(!this.lastSelectedBlock&&i&&(this.lastSelectedBlock=this.firstSelectedBlock=i),this.firstSelectedBlock===this.lastSelectedBlock&&this.firstSelectedBlock){var a;this.firstSelectedBlock.selected=!0,r.clearCache(),(a=t.mn.get())==null||a.removeAllRanges(),this.Blok.Toolbar.close()}if(!this.lastSelectedBlock)return;let o=n.blocks.indexOf(this.lastSelectedBlock)+(e?1:-1),s=n.blocks[o];s&&(this.lastSelectedBlock.selected===s.selected?(this.lastSelectedBlock.selected=!1,r.clearCache(),this.Blok.Toolbar.close()):(s.selected=!0,r.clearCache(),this.Blok.Toolbar.close()),this.lastSelectedBlock=s,this.Blok.InlineToolbar.close(),s.holder.scrollIntoView({block:`nearest`}),this.isCrossBlockSelectionStarted&&this.Blok.Toolbar.moveAndOpenForMultipleBlocks())}clear(e){let{BlockManager:t,BlockSelection:n,Caret:r}=this.Blok;if(!this.firstSelectedBlock||!this.lastSelectedBlock)return;let i=t.blocks.indexOf(this.firstSelectedBlock),a=t.blocks.indexOf(this.lastSelectedBlock);if(!n.anyBlockSelected||i===-1||a===-1){this.firstSelectedBlock=this.lastSelectedBlock=null;return}if(e&&e instanceof KeyboardEvent)switch(e.key){case`ArrowDown`:case`ArrowRight`:r.setToBlock(t.blocks[Math.max(i,a)],r.positions.END);break;case`ArrowUp`:case`ArrowLeft`:r.setToBlock(t.blocks[Math.min(i,a)],r.positions.START);break;default:r.setToBlock(t.blocks[Math.max(i,a)],r.positions.END)}this.firstSelectedBlock=this.lastSelectedBlock=null}enableCrossBlockSelection(e){let{UI:n,Toolbar:r}=this.Blok;if(!n.nodes.redactor||this.Blok.RectangleSelection.isRectActivated())return;let i=r.nodes.wrapper;i&&i.contains(e.target)||(t.mn.isCollapsed||this.Blok.BlockSelection.clearSelection(e),n.nodes.redactor.contains(e.target)?this.watchSelection(e):this.Blok.BlockSelection.clearSelection(e))}toggleBlocksSelectedState(e,t){let{BlockManager:n,BlockSelection:r}=this.Blok,i=n.blocks.indexOf(e),a=n.blocks.indexOf(t),o=e.selected!==t.selected,s=Math.min(i,a),c=Math.max(i,a);for(let i of Array.from({length:c-s+1},(e,t)=>s+t)){let a=n.blocks[i];a!==this.firstSelectedBlock&&a!==(o?e:t)&&(n.blocks[i].selected=!n.blocks[i].selected,r.clearCache())}this.Blok.Toolbar.close()}},Kc={previewOffsetX:10,previewOffsetY:0,dragThreshold:5,autoScrollZone:50,autoScrollSpeed:10,announcementThrottleMs:300,leftDropZone:50},qc={base:`fixed pointer-events-none z-10000 opacity-80 transition-none`,content:`relative mx-auto max-w-blok-content`},Jc=(e,t,n,r,i=Kc.dragThreshold)=>{let a=n-e,o=r-t;return Math.sqrt(a*a+o*o)>=i},Yc=class{constructor(e,t,n){this.lastAnnouncedDropIndex=null,this.pendingAnnouncementIndex=null,this.announcementTimeoutId=null,this.blockManager=e,this.i18n=t,this.announcer=n}announceDropPosition(e,t){let n=this.blockManager.getBlockIndex(e),r=t===`top`?n:n+1;this.lastAnnouncedDropIndex!==r&&(this.pendingAnnouncementIndex=r,this.announcementTimeoutId===null&&(this.announcementTimeoutId=setTimeout(()=>{if(this.pendingAnnouncementIndex===null)return;let e=this.pendingAnnouncementIndex;if(this.announcementTimeoutId=null,this.pendingAnnouncementIndex=null,this.lastAnnouncedDropIndex===e)return;this.lastAnnouncedDropIndex=e;let t=this.blockManager.blocks.length,n=this.i18n.t(`a11y.dropPosition`,{position:e+1,total:t});this.announcer.announce(n,{politeness:`polite`})},Kc.announcementThrottleMs)))}announceDropComplete(e,t,n){let r=this.blockManager.getBlockIndex(e),i=this.blockManager.blocks.length;if(n){let e=this.i18n.t(`a11y.blocksMoved`,{count:t.length,position:r+1});this.announcer.announce(e,{politeness:`assertive`})}else{let e=this.i18n.t(`a11y.blockMoved`,{position:r+1,total:i});this.announcer.announce(e,{politeness:`assertive`})}}announceDuplicateComplete(e){let t=e[0];if(!t)return;let n=this.blockManager.getBlockIndex(t),r=e.length;if(r>1){let e=this.i18n.t(`a11y.blocksDuplicated`,{count:r,position:n+1});this.announcer.announce(e,{politeness:`assertive`})}else{let e=this.i18n.t(`a11y.blockDuplicated`,{position:n+1});this.announcer.announce(e,{politeness:`assertive`})}}reset(){this.announcementTimeoutId!==null&&(clearTimeout(this.announcementTimeoutId),this.announcementTimeoutId=null),this.lastAnnouncedDropIndex=null,this.pendingAnnouncementIndex=null}getLastAnnouncedIndex(){return this.lastAnnouncedDropIndex}},Xc=class{constructor(e,t,n){this.blockManager=e,this.yjsManager=t,this.blockSelection=n}moveBlocks(e,t,n){return this.blockManager.getBlockIndex(t)===-1||e.some(e=>this.blockManager.getBlockIndex(e)===-1)?{movedBlocks:[],targetIndex:-1}:e.length===1?this.moveSingleBlock(e[0],t,n):this.moveMultipleBlocks(e,t,n)}async prepareDuplicates(e,t,n){var r=this;if(r.blockManager.getBlockIndex(t)===-1||e.some(e=>r.blockManager.getBlockIndex(e)===-1))return{sortedBlocks:[],sourceIds:new Set,validResults:[],baseInsertIndex:-1,aborted:!0};let i=[...e].sort((e,t)=>r.blockManager.getBlockIndex(e)-r.blockManager.getBlockIndex(t)),a=await Promise.all(i.map(async e=>{let t=await e.save();return t?{saved:t,toolName:e.name}:null})),o=r.blockManager.getBlockIndex(t);if(o===-1)return{sortedBlocks:[],sourceIds:new Set,validResults:[],baseInsertIndex:-1,aborted:!0};let s=n===`top`?o:o+1,c=a.filter(e=>e!==null);return{sortedBlocks:i,sourceIds:new Set(i.map(e=>e.id)),validResults:c,baseInsertIndex:s,aborted:!1}}applyDuplicates(e){if(e.aborted||e.validResults.length===0)return{duplicatedBlocks:[],targetIndex:e.baseInsertIndex};let t=e.validResults.map(({saved:t,toolName:n},r)=>this.blockManager.insert({tool:n,data:structuredClone(t.data),tunes:structuredClone(t.tunes),index:e.baseInsertIndex+r,needToFocus:!1}));if(this.blockManager.setBlockParent!==void 0){let n=new Map;e.sortedBlocks.forEach((e,r)=>{n.set(e.id,t[r].id)}),e.sortedBlocks.forEach((r,i)=>{let a=r.parentId;if(a!==null&&e.sourceIds.has(a)){let e=n.get(a);e!==void 0&&this.blockManager.setBlockParent!==void 0&&this.blockManager.setBlockParent(t[i],e)}})}let n=this.blockSelection;return n&&(n.clearSelection(),t.forEach(e=>{n.selectBlock(e)})),{duplicatedBlocks:t,targetIndex:e.baseInsertIndex}}async duplicateBlocks(e,t,n){var r=this;let i=await r.prepareDuplicates(e,t,n);return r.applyDuplicates(i)}moveSingleBlock(e,t,n){let r=this.blockManager.getBlockIndex(e),i=this.blockManager.getBlockIndex(t),a=n===`top`?i:i+1,o=r<a?a-1:a;if(r===o)return{movedBlocks:[e],targetIndex:r};this.blockManager.move(o,r,!1);let s=this.blockManager.getBlockIndex(e);return this.blockSelection&&this.blockSelection.selectBlock(e),{movedBlocks:[e],targetIndex:s}}moveMultipleBlocks(e,t,n){var r;let i=[...e].sort((e,t)=>this.blockManager.getBlockIndex(e)-this.blockManager.getBlockIndex(t)),a=this.blockManager.getBlockIndex(t),o=n===`top`?a:a+1,s=new Set(e.map(e=>e.id)),c=i.filter(e=>e.parentId===null||!s.has(e.parentId)),l=(r=c[0])==null?i[0]:r,u=o>this.blockManager.getBlockIndex(l),d=i.length>1,f=()=>{u?this.moveBlocksDown(c,o):this.moveBlocksUp(c,o)};d&&this.yjsManager?this.yjsManager.transactMoves(f):f();let p=this.blockSelection;return p&&(p.clearSelection(),i.forEach(e=>{p.selectBlock(e)})),{movedBlocks:i,targetIndex:o}}moveBlocksDown(e,t){let n=new Map;e.forEach(e=>{n.set(e,this.blockManager.getBlockIndex(e))}),[...e].reverse().forEach((e,n)=>{let r=this.blockManager.getBlockIndex(e),i=t-1-n;this.blockManager.move(i,r,!1,!0)}),e.forEach(e=>{var t;e.call(w.MOVED,{fromIndex:(t=n.get(e))==null?0:t,toIndex:this.blockManager.getBlockIndex(e),isGroupMove:!0})})}moveBlocksUp(e,t){let n=new Map;e.forEach(e=>{n.set(e,this.blockManager.getBlockIndex(e))}),e.forEach((e,n)=>{let r=this.blockManager.getBlockIndex(e),i=t+n;r!==i&&this.blockManager.move(i,r,!1,!0)}),e.forEach(e=>{var t;e.call(w.MOVED,{fromIndex:(t=n.get(e))==null?0:t,toIndex:this.blockManager.getBlockIndex(e),isGroupMove:!0})})}},Zc=class{constructor(){this.element=null}createSingle(e,n,i){var a,o,s;let c=t.Pn.make(`div`,qc.base),l=e.cloneNode(!0);(a=l.querySelector(`[data-blok-toggle-children]`))==null||a.remove(),l.className=r.n(qc.content,n?`max-w-none`:``);let u=e.getBoundingClientRect().width;u>0&&(l.style.width=`${u}px`);let d=l.firstElementChild;d&&(d.className=r.n(d.className,`m-0!`)),c.appendChild(l);let f=(o=i==null||(s=i.contentIds)==null?void 0:s.length)==null?0:o;if(f>0){let e=t.Pn.make(`span`,`absolute bottom-1 right-1 text-xs text-gray-400 bg-white/80 px-1 rounded`);e.setAttribute(`data-blok-children-badge`,``),e.textContent=`+${f}`,c.appendChild(e)}return this.element=c,c}createMulti(e){let n=t.Pn.make(`div`,qc.base),i=e.map(e=>{let t=e.holder.getBoundingClientRect(),n=e.holder.querySelector(`[data-blok-element-content]`);if(!n)return{width:0,height:0,element:null,holderHeight:0};let r=n.getBoundingClientRect();return{width:r.width,height:r.height,element:n,holderHeight:t.height}}),a=i.reduce((e,t,n)=>{if(n===0)e.push(0);else{let t=e[n-1],r=i[n-1].holderHeight;e.push(t+r)}return e},[]),o=Math.max(...i.map(e=>e.width),0),s=i.length-1,c=s>=0?a[s]+i[s].height:0;return e.forEach((t,o)=>{var s;let c=i[o];if(!c.element)return;let l=c.element.cloneNode(!0);(s=l.querySelector(`[data-blok-toggle-children]`))==null||s.remove(),l.className=r.n(qc.content,t.stretched?`max-w-none`:``);let u=l.firstElementChild;u&&(u.className=r.n(u.className,`m-0!`)),l.style.position=`absolute`,l.style.top=`${a[o]}px`,l.style.left=`0`,l.style.zIndex=`${e.length-o}`,n.appendChild(l)}),n.style.width=`${o}px`,n.style.height=`${c}px`,this.element=n,n}updatePosition(e,t){this.element&&(this.element.style.left=`${e+Kc.previewOffsetX}px`,this.element.style.top=`${t+Kc.previewOffsetY}px`)}show(){this.element&&(this.element.style.display=`block`)}hide(){this.element&&(this.element.style.display=`none`)}getElement(){return this.element}exists(){return this.element!==null}destroy(){this.element&&this.element.parentNode&&this.element.remove(),this.element=null}},Qc=e=>e.type===`tracking`||e.type===`dragging`,Q=e=>e.type===`dragging`||e.type===`dropped`,$c=class{constructor(){this.state={type:`idle`}}getState(){return this.state}startTracking(e,t,n,r){if(this.state.type!==`idle`)throw Error(`Cannot start tracking from state "${this.state.type}", must be idle`);return this.state={type:`tracking`,sourceBlock:e,sourceBlocks:t,isMultiBlockDrag:t.length>1,startX:n,startY:r},this.state}startDrag(){if(this.state.type!==`tracking`)throw Error(`Cannot start drag from state "${this.state.type}", must be tracking`);return this.state={type:`dragging`,sourceBlock:this.state.sourceBlock,sourceBlocks:this.state.sourceBlocks,isMultiBlockDrag:this.state.isMultiBlockDrag,targetBlock:null,targetEdge:null,targetParentId:null,startX:this.state.startX,startY:this.state.startY},this.state}updateTarget(e,t,r=null){if(this.state.type!==`dragging`)throw Error(`Cannot update target from state "${this.state.type}", must be dragging`);this.state=n.t(n.t({},this.state),{},{targetBlock:e,targetEdge:t,targetParentId:r})}drop(){if(this.state.type!==`dragging`)throw Error(`Cannot drop from state "${this.state.type}", must be dragging`);if(!this.state.targetBlock||!this.state.targetEdge)throw Error(`Cannot drop: no valid target`);return this.state={type:`dropped`,sourceBlock:this.state.sourceBlock,sourceBlocks:this.state.sourceBlocks,isMultiBlockDrag:this.state.isMultiBlockDrag,targetBlock:this.state.targetBlock,targetEdge:this.state.targetEdge,targetParentId:this.state.targetParentId},this.state}cancel(){if(this.state.type!==`tracking`&&this.state.type!==`dragging`)throw Error(`Cannot cancel from state "${this.state.type}", must be tracking or dragging`);return this.state={type:`cancelled`,sourceBlock:this.state.sourceBlock,sourceBlocks:this.state.sourceBlocks},this.state}reset(){return this.state={type:`idle`},this.state}getSourceBlocks(){switch(this.state.type){case`tracking`:case`dragging`:case`dropped`:case`cancelled`:return this.state.sourceBlocks;case`idle`:return null}}getSourceBlock(){switch(this.state.type){case`tracking`:case`dragging`:case`dropped`:case`cancelled`:return this.state.sourceBlock;case`idle`:return null}}isMultiBlockDrag(){switch(this.state.type){case`tracking`:case`dragging`:case`dropped`:return this.state.isMultiBlockDrag;case`cancelled`:case`idle`:return!1}}isSourceBlock(e){let t=this.getSourceBlocks();return t?t.includes(e):!1}},el=e=>{let t=e.holder.getAttribute(`data-list-depth`);if(t!==null&&t!==``){let e=parseInt(t,10);return isNaN(e)?null:e}let n=e.holder.querySelector(`[data-list-depth]`);if(!n)return null;let r=n.getAttribute(`data-list-depth`);if(r&&r!==``){let e=parseInt(r,10);return isNaN(e)?0:e}return 0},tl=class{constructor(e){this.blockManager=e}getDepth(e){return el(e)}calculateTargetDepth(e,t){var n,r;let i=this.blockManager.getBlockIndex(e),a=t===`top`?i:i+1;if(a===0)return 0;let o=this.blockManager.getBlockByIndex(a-1);if(!o)return 0;let s=(n=el(o))==null?0:n,c=this.blockManager.getBlockByIndex(a),l=c?(r=el(c))==null?0:r:0;return l>0&&l<=s+1?l:s>0?s:0}},nl=class{constructor(e,t){this.sourceBlocks=[],this.ui=e,this.blockManager=t,this.listItemDepth=new tl(t)}setSourceBlocks(e){this.sourceBlocks=e}findDropTargetBlock(e,n,r){let i=e.closest(`[data-blok-toggle-body-placeholder]`);if(i){let e=i.closest(t.dr(t.ur.element));if(!(e instanceof HTMLElement))return{block:void 0,holder:null};let n=this.blockManager.blocks.find(t=>t.holder===e);if(n)return{block:n,holder:e}}let a=e.closest(t.dr(t.ur.element));if(a instanceof HTMLElement)return{block:this.blockManager.blocks.find(e=>e.holder===a),holder:a};let o=this.findBlockInLeftDropZone(n,r);return o?{block:o,holder:o.holder}:{block:void 0,holder:null}}findBlockInLeftDropZone(e,t){let n=this.ui.contentRect.left-e;if(n<0||n>Kc.leftDropZone)return null;for(let e of this.blockManager.blocks){if(this.sourceBlocks.includes(e))continue;let n=e.holder.getBoundingClientRect();if(t>=n.top&&t<=n.bottom)return e}return null}determineDropTarget(e,t,n,r){let{block:i,holder:a}=this.findDropTargetBlock(e,t,n);if(!a||!i||i===r||this.sourceBlocks.length>1&&this.sourceBlocks.includes(i))return null;let o=i.holder.closest(`[data-blok-table-cell-blocks]`),s=r.holder.closest(`[data-blok-table-cell-blocks]`);if(o!==null&&s!==o)return this.redirectToTableBlock(o,n);let c=a.getBoundingClientRect(),l=n<c.top+c.height/2,u=this.blockManager.getBlockIndex(i),d=u>0?this.blockManager.getBlockByIndex(u-1):null,f=d&&!this.sourceBlocks.includes(d)&&d.parentId===i.parentId;if(l&&u>0&&f){let t=this.calculateTargetDepth(d,`bottom`,r);return this.resolveToggleNesting({block:d,edge:`bottom`,depth:t,parentId:null},e)}let p=l?`top`:`bottom`,m=this.calculateTargetDepth(i,p,r);return this.resolveToggleNesting({block:i,edge:p,depth:m,parentId:null},e)}calculateTargetDepth(e,t,n){let r=this.blockManager.getBlockIndex(e),i=t===`top`?r:r+1;if(i===0)return 0;let a=this.blockManager.getBlockByIndex(i-1);if(!a)return 0;let o=this.listItemDepth.getDepth(a),s=o!==null,c=o==null?0:o,l=this.blockManager.getBlockByIndex(i),u=l?this.listItemDepth.getDepth(l):null,d=u!==null,f=u==null?0:u,p=n?this.listItemDepth.getDepth(n):null;return p===null?f>0&&f<=c+1?f:c>0?c:0:this.predictListItemDepth(p,c,s,f,d)}predictListItemDepth(e,t,n,r,i){let a=n?t+1:0;return e>a?a:i&&r>e&&r<=a?r:n&&!i&&t>e&&t<=a?t:e}isOpenToggle(e){return e.holder.querySelector(`[data-blok-toggle-open="true"]`)!==null}getToggleChildIndicatorDepth(e){return 0}resolveToggleNesting(e,t){let{block:r,edge:i}=e;if(i===`bottom`&&this.isOpenToggle(r)&&!(this.sourceBlocks.length>0&&this.sourceBlocks.every(e=>e.parentId===r.id))){let t=this.getToggleChildIndicatorDepth(r);return n.t(n.t({},e),{},{parentId:r.id,depth:t})}if(r.parentId!==null){let t=this.blockManager.getBlockById(r.parentId);if(t!==void 0&&this.isOpenToggle(t)){let r=this.getToggleChildIndicatorDepth(t);return n.t(n.t({},e),{},{parentId:t.id,depth:r})}}return n.t(n.t({},e),{},{parentId:null})}redirectToTableBlock(e,n){let r=e.closest(t.dr(t.ur.element)),i=r?this.blockManager.blocks.find(e=>e.holder===r):void 0;if(!i)return null;let a=i.holder.getBoundingClientRect();return{block:i,edge:n<a.top+a.height/2?`top`:`bottom`,depth:0,parentId:null}}},rl=class{constructor(e){this.animationFrameId=null,this.scrollDirection=null,this.scrollContainer=e}start(e){let t=window.innerHeight,n=e<Kc.autoScrollZone,r=e>t-Kc.autoScrollZone;if(!n&&!r){this.stop();return}let i=n?`up`:`down`;this.scrollDirection!==i&&(this.stop(),this.scrollDirection=i),this.animationFrameId===null&&(this.animationFrameId=requestAnimationFrame(this.scroll.bind(this)))}stop(){this.animationFrameId!==null&&(cancelAnimationFrame(this.animationFrameId),this.animationFrameId=null),this.scrollDirection=null}scroll(){if(this.scrollDirection===null)return;let e=(this.scrollDirection===`up`?-1:1)*Kc.autoScrollSpeed;this.scrollContainer?this.scrollContainer.scrollTop+=e:window.scrollBy(0,e),this.animationFrameId=requestAnimationFrame(this.scroll.bind(this))}destroy(){this.stop()}},il=500,al=`data-blok-spring-loading`,ol=`data-blok-spring-loaded`,sl=700;function cl(e){return e.holder.querySelector(`[data-blok-toggle-open="false"]`)!==null}var ll=class{constructor(){this.timerId=null,this.currentBlock=null}update(e){if(e!==this.currentBlock){if(this.clearTimer(),e===null||!cl(e)){this.currentBlock=null;return}this.currentBlock=e,e.holder.setAttribute(al,``),this.timerId=setTimeout(()=>{if(this.timerId=null,this.currentBlock){this.currentBlock.holder.removeAttribute(al),this.currentBlock.call(`expand`),this.currentBlock.holder.setAttribute(ol,``);let e=this.currentBlock;setTimeout(()=>e.holder.removeAttribute(ol),sl),this.currentBlock=null}},il)}}cancel(){this.clearTimer(),this.currentBlock=null}clearTimer(){this.timerId!==null&&(clearTimeout(this.timerId),this.timerId=null),this.currentBlock&&(this.currentBlock.holder.removeAttribute(al),this.currentBlock=null)}},ul=e=>{if(!e||e===document.body)return null;let t=e.parentElement;if(!t||t===document.body)return null;let n=window.getComputedStyle(t).overflowY,r=n===`auto`||n===`scroll`,i=t.scrollHeight>t.clientHeight;return r&&i?t:ul(t)},dl=class{constructor(e){this.blockManager=e}getDescendants(e){let t=el(e);if(t===null)return[];let n=this.blockManager.getBlockIndex(e);return this.collectDescendants(n+1,t,[])}collectDescendants(e,t,n){if(e>=this.blockManager.blocks.length)return n;let r=this.blockManager.getBlockByIndex(e);if(!r)return n;let i=el(r);return i===null||i<=t?n:this.collectDescendants(e+1,t,[...n,r])}},fl=class extends l{constructor(...e){super(...e),this.stateMachine=new $c,this.preview=new Zc,this.targetDetector=null,this.operations=null,this.a11y=null,this.autoScroll=null,this.springLoader=new ll,this.listItemDescendants=null,this.boundHandlers=null,this.dragHandleCleanups=new WeakMap,this.sourceBlockDestroyUnsubs=[]}get isDragging(){return Q(this.stateMachine.getState())}async prepare(){}lazyInit(){this.targetDetector&&this.operations&&this.a11y&&this.listItemDescendants||(this.targetDetector=new nl({contentRect:this.Blok.UI.contentRect},this.Blok.BlockManager),this.operations=new Xc(this.Blok.BlockManager,this.Blok.YjsManager,this.Blok.BlockSelection),this.a11y=new Yc(this.Blok.BlockManager,this.Blok.I18n,{announce:Ec}),this.listItemDescendants=new dl(this.Blok.BlockManager))}cancelTracking(){Qc(this.stateMachine.getState())&&!Q(this.stateMachine.getState())&&this.cleanup(!1,!0)}onSourceBlockDestroyed(){Qc(this.stateMachine.getState())&&this.cleanup(!0,!0)}setupDragHandle(e,n){var r;(r=this.dragHandleCleanups.get(e))==null||r();let i=r=>{var i;if(r.button!==0||document.querySelector(`[${t.ur.popoverOpened}]`)!==null)return;let a=e.closest(`[${t.ur.id}]`),o=(i=a==null?void 0:a.getAttribute(t.ur.id))==null?null:i;if(o!==null){let e=this.Blok.BlockManager.getBlockById(o);if(e===void 0)return;this.startDragTracking(r,e);return}this.startDragTracking(r,n)};e.addEventListener(`mousedown`,i);let a=()=>{e.removeEventListener(`mousedown`,i),this.dragHandleCleanups.get(e)===a&&this.dragHandleCleanups.delete(e)};return this.dragHandleCleanups.set(e,a),a}startDragTracking(e,t){var n;this.lazyInit();let r=t.holder.querySelector(`[data-blok-element-content]`);if(!r||!(r instanceof HTMLElement))return;let i=t.selected,a=i?this.Blok.BlockSelection.selectedBlocks:[t],o=!i&&this.listItemDescendants?this.listItemDescendants.getDescendants(t):[],s=!i&&((n=t.contentIds)==null?void 0:n.length)>0,c=o.length===0&&s?this.getHierarchyDescendants(t):[],l=o.length>0?o:c,u=l.length>0?[t,...l]:a,d=new Set(u.map(e=>e.id)),f=u.filter(e=>e.parentId===null||!d.has(e.parentId));f.length>1&&c.length===0?this.preview.createMulti(f):this.preview.createSingle(r,t.stretched,t),this.preview.hide();let p=this.preview.getElement();p&&document.body.appendChild(p),this.stateMachine.startTracking(t,u,e.clientX,e.clientY),this.sourceBlockDestroyUnsubs=u.filter(e=>typeof e.addDestroyCallback==`function`).map(e=>e.addDestroyCallback(()=>this.onSourceBlockDestroyed())),this.autoScroll=new rl(ul(this.Blok.UI.nodes.wrapper)),this.targetDetector&&this.targetDetector.setSourceBlocks(u),this.boundHandlers={onMouseMove:this.onMouseMove.bind(this),onMouseUp:this.onMouseUp.bind(this),onKeyDown:this.onKeyDown.bind(this),onKeyUp:this.onKeyUp.bind(this)},document.addEventListener(`mousemove`,this.boundHandlers.onMouseMove),document.addEventListener(`mouseup`,this.boundHandlers.onMouseUp),document.addEventListener(`keydown`,this.boundHandlers.onKeyDown),document.addEventListener(`keyup`,this.boundHandlers.onKeyUp)}onMouseMove(e){let t=this.stateMachine.getState(),n=this.stateMachine.getSourceBlock(),r=this.stateMachine.getSourceBlocks();if(!n||!r)return;let{startX:i,startY:a}=t;!Q(t)&&Jc(i,a,e.clientX,e.clientY)&&this.startActualDrag(r.length),this.preview.updatePosition(e.clientX,e.clientY),this.updateDropTarget(e.clientX,e.clientY),this.autoScroll&&Q(t)&&this.autoScroll.start(e.clientY)}startActualDrag(e){this.stateMachine.startDrag(),this.Blok.Toolbar.skipNextSettingsToggle(),this.preview.show();let n=this.Blok.UI.nodes.wrapper;n.setAttribute(t.ur.dragging,`true`),e>1&&n.setAttribute(t.ur.draggingMulti,`true`),e===1&&this.Blok.BlockSelection.clearSelection(),t.sn(),this.Blok.Toolbar.close({setExplicitlyClosed:!1});let r=e>1?`a11y.dragStartedMultiple`:`a11y.dragStarted`,i=e>1?{count:e}:void 0;Ec(this.Blok.I18n.t(r,i),{politeness:`assertive`})}updateDropTarget(e,t){let n=this.stateMachine.getState(),r=this.stateMachine.getSourceBlock();if(!Q(n)||!r||!this.targetDetector)return;let i=this.stateMachine.getState();i.type===`dragging`&&i.targetBlock&&(i.targetBlock.holder.removeAttribute(`data-drop-indicator`),i.targetBlock.holder.style.removeProperty(`--drop-indicator-depth`)),this.preview.hide();let a=document.elementFromPoint(e,t);if(this.preview.show(),!a){this.stateMachine.updateTarget(null,null),this.springLoader.update(null);return}let o=this.targetDetector.determineDropTarget(a,e,t,r);if(!o){this.stateMachine.updateTarget(null,null),this.springLoader.update(null);return}this.stateMachine.updateTarget(o.block,o.edge),this.springLoader.update(o.block),o.block.holder.setAttribute(`data-drop-indicator`,o.edge),o.block.holder.style.setProperty(`--drop-indicator-depth`,String(o.depth)),this.a11y&&this.a11y.announceDropPosition(o.block,o.edge)}onMouseUp(e){let t=this.stateMachine.getState(),n=this.stateMachine.getSourceBlock(),r=this.stateMachine.getSourceBlocks();if(!n||!r||!Q(t)){this.cleanup();return}let{targetBlock:i,targetEdge:a}=t;if(!i||!a){this.cleanup();return}if(this.stateMachine.drop(),!this.operations){this.cleanup();return}e.altKey?this.handleDuplicate(r,i,a):this.handleDrop(n,r,i,a),this.cleanup(!1,e.altKey)}handleDrop(e,t,n,r){let i=this.Blok.YjsManager;if(i!==void 0&&typeof i.transactMoves==`function`){i.transactMoves(()=>{this.handleDropImpl(e,t,n,r)});return}this.handleDropImpl(e,t,n,r)}handleDropImpl(e,t,n,r){let i=t.length>1;if(!this.operations)return;let a=this.operations.moveBlocks(t,n,r);if(a.movedBlocks.length===0)return;let o=this.resolveParentForDrop(n,r,t),s=new Set(a.movedBlocks.map(e=>e.id)),c=[],l=new Set;for(let e of a.movedBlocks){if(e.parentId!==null&&s.has(e.parentId)){this.Blok.BlockManager.setBlockParent(e,e.parentId);continue}if(e.parentId===o&&o!==null){this.Blok.BlockManager.setBlockParent(e,o);continue}let t=e.parentId;t!==null&&l.add(t),o!==null&&l.add(o),this.Blok.BlockManager.setBlockParent(e,o),c.push(e)}for(let e of l){let t=this.Blok.BlockManager.getBlockById(e);t!==void 0&&t.call(`rendered`)}o!==null&&c.length>0&&this.hideBlocksIfParentCollapsed(o,c);let u=this.Blok.BlockManager.getBlockByIndex(a.targetIndex);this.a11y&&u&&this.a11y.announceDropComplete(u,t,i),this.Blok.Toolbar.moveAndOpen(e)}resolveParentForDrop(e,t,n){return t===`bottom`&&this.isToggleableBlock(e)&&this.isOpenToggle(e)&&!(n.length>0&&n.every(t=>t.parentId===e.id))?e.id:e.parentId===null?null:e.parentId}isToggleableBlock(e){return e.holder.querySelector(`[data-blok-toggle-open]`)!==null}isOpenToggle(e){return e.holder.querySelector(`[data-blok-toggle-open="true"]`)!==null}hideBlocksIfParentCollapsed(e,t){if(t.length===0)return;let n=this.Blok.BlockManager.getBlockById(e);if(n===void 0)return;let r=n.holder.querySelector(`[data-blok-toggle-open]`);if((r==null?void 0:r.getAttribute(`data-blok-toggle-open`))===`false`)for(let e of t)e.holder.classList.add(`hidden`)}async handleDuplicate(e,t,n){var r=this;if(!r.operations)return;let i=await r.operations.prepareDuplicates(e,t,n);if(i.aborted)return;let a={current:{duplicatedBlocks:[],targetIndex:i.baseInsertIndex}},o=()=>{if(!r.operations||(a.current=r.operations.applyDuplicates(i),a.current.duplicatedBlocks.length===0))return;let o=r.resolveParentForDrop(t,n,e);for(let e of a.current.duplicatedBlocks)e.parentId!==o&&r.Blok.BlockManager.setBlockParent(e,o)};typeof r.Blok.BlockManager.transactForTool==`function`?r.Blok.BlockManager.transactForTool(o):o();let s=a.current;if(s.duplicatedBlocks.length===0)return;let c=r.resolveParentForDrop(t,n,e),l=new Set;for(let e of s.duplicatedBlocks)e.parentId===c&&c!==null&&l.add(c);for(let e of l){let t=r.Blok.BlockManager.getBlockById(e);t!==void 0&&t.call(`rendered`)}if(c!==null){let e=s.duplicatedBlocks.filter(e=>e.parentId===c);r.hideBlocksIfParentCollapsed(c,e)}r.a11y&&r.a11y.announceDuplicateComplete(s.duplicatedBlocks),r.Blok.Toolbar.moveAndOpen(s.duplicatedBlocks[0])}onKeyDown(e){if(e.key===`Escape`){this.cleanup(!0);return}e.key===`Alt`&&Q(this.stateMachine.getState())&&this.setDuplicationMode(!0)}onKeyUp(e){e.key===`Alt`&&Q(this.stateMachine.getState())&&this.setDuplicationMode(!1)}setDuplicationMode(e){let n=this.Blok.UI.nodes.wrapper;e?n.setAttribute(t.ur.duplicating,`true`):n.removeAttribute(t.ur.duplicating)}cleanup(e=!1,n=!1){if(e&&Q(this.stateMachine.getState())&&Ec(this.Blok.I18n.t(`a11y.dropCancelled`),{politeness:`polite`}),e){var r,i,a,o;(r=(i=this.Blok.UI).resetBlockHoverState)==null||r.call(i),(a=(o=this.Blok.Toolbar).resetExplicitlyClosed)==null||a.call(o)}this.autoScroll&&(this.autoScroll.destroy(),this.autoScroll=null),this.a11y&&this.a11y.reset();let s=this.stateMachine.getState();(s.type===`dragging`||s.type===`dropped`)&&s.targetBlock&&(s.targetBlock.holder.removeAttribute(`data-drop-indicator`),s.targetBlock.holder.style.removeProperty(`--drop-indicator-depth`)),this.springLoader.cancel(),this.preview.destroy();let c=this.Blok.UI.nodes.wrapper;c.removeAttribute(t.ur.dragging),c.removeAttribute(t.ur.draggingMulti),c.removeAttribute(t.ur.duplicating),this.boundHandlers&&(document.removeEventListener(`mousemove`,this.boundHandlers.onMouseMove),document.removeEventListener(`mouseup`,this.boundHandlers.onMouseUp),document.removeEventListener(`keydown`,this.boundHandlers.onKeyDown),document.removeEventListener(`keyup`,this.boundHandlers.onKeyUp),this.boundHandlers=null),this.sourceBlockDestroyUnsubs.forEach(e=>e()),this.sourceBlockDestroyUnsubs=[];let l=this.stateMachine.getSourceBlock();if(this.stateMachine.reset(),this.targetDetector&&this.targetDetector.setSourceBlocks([]),e||n)return;let u=l==null?this.Blok.BlockManager.currentBlock:l;u&&this.Blok.Toolbar.moveAndOpen(u)}getHierarchyDescendants(e){let t=[],n=e=>{for(let r of e.contentIds){let e=this.Blok.BlockManager.getBlockById(r);e!==void 0&&(t.push(e),n(e))}};return n(e),t}destroy(){this.cleanup()}},pl=new Set([`ar`,`dv`,`fa`,`he`,`ku`,`ps`,`sd`,`ug`,`ur`,`yi`]),ml=e=>pl.has(e)?`rtl`:`ltr`,hl=(e,t)=>({dictionary:t,direction:ml(e)}),gl=`am.ar.az.bg.bn.bs.cs.da.de.dv.el.en.es.et.fa.fi.fil.fr.gu.he.hi.hr.hu.hy.id.it.ja.ka.km.kn.ko.ku.lo.lt.lv.mk.ml.mn.mr.ms.my.ne.nl.no.pa.pl.ps.pt.ro.ru.sd.si.sk.sl.sq.sr.sv.sw.ta.te.th.tr.ug.uk.ur.vi.yi.zh`.split(`.`),_l=hl(`en`,o.r),vl=new Map;vl.set(`en`,_l);var yl={am:()=>Promise.resolve().then(()=>require(`./messages-Bb225KE6.cjs`)),ar:()=>Promise.resolve().then(()=>require(`./messages-DfZe7SKZ.cjs`)),az:()=>Promise.resolve().then(()=>require(`./messages-vhq442qv.cjs`)),bg:()=>Promise.resolve().then(()=>require(`./messages-BGZLiYrQ.cjs`)),bn:()=>Promise.resolve().then(()=>require(`./messages-Cgv5DuNV.cjs`)),bs:()=>Promise.resolve().then(()=>require(`./messages-BB1xM_oB.cjs`)),cs:()=>Promise.resolve().then(()=>require(`./messages-X46KAUoI.cjs`)),da:()=>Promise.resolve().then(()=>require(`./messages-C7il6l-S.cjs`)),de:()=>Promise.resolve().then(()=>require(`./messages-BkAoxm6t.cjs`)),dv:()=>Promise.resolve().then(()=>require(`./messages-D8-vyZ2V.cjs`)),el:()=>Promise.resolve().then(()=>require(`./messages-CN2yjHzW.cjs`)),en:()=>Promise.resolve({default:o.r}),es:()=>Promise.resolve().then(()=>require(`./messages-DT5Ux3el.cjs`)),et:()=>Promise.resolve().then(()=>require(`./messages-BKmAFG9Z.cjs`)),fa:()=>Promise.resolve().then(()=>require(`./messages-DkmG49t8.cjs`)),fi:()=>Promise.resolve().then(()=>require(`./messages-DkJ0bcqu.cjs`)),fil:()=>Promise.resolve().then(()=>require(`./messages-BpUasRQ3.cjs`)),fr:()=>Promise.resolve().then(()=>require(`./messages-BUaJv5qS.cjs`)),gu:()=>Promise.resolve().then(()=>require(`./messages-1hpCmcb5.cjs`)),he:()=>Promise.resolve().then(()=>require(`./messages-B9igXgiw.cjs`)),hi:()=>Promise.resolve().then(()=>require(`./messages-Hg0BECWK.cjs`)),hr:()=>Promise.resolve().then(()=>require(`./messages-DxpBJ5ZY.cjs`)),hu:()=>Promise.resolve().then(()=>require(`./messages-DdiqfVCc.cjs`)),hy:()=>Promise.resolve().then(()=>require(`./messages-BSVhckNg.cjs`)),id:()=>Promise.resolve().then(()=>require(`./messages-DJBeEI7G.cjs`)),it:()=>Promise.resolve().then(()=>require(`./messages-BMVJq-1T.cjs`)),ja:()=>Promise.resolve().then(()=>require(`./messages-B91FdwB0.cjs`)),ka:()=>Promise.resolve().then(()=>require(`./messages-JlduXweH2.cjs`)),km:()=>Promise.resolve().then(()=>require(`./messages-DR8nFHdw2.cjs`)),kn:()=>Promise.resolve().then(()=>require(`./messages-DIpVfyX-2.cjs`)),ko:()=>Promise.resolve().then(()=>require(`./messages-B3MONaxw2.cjs`)),ku:()=>Promise.resolve().then(()=>require(`./messages-DaaqkvOz2.cjs`)),lo:()=>Promise.resolve().then(()=>require(`./messages-B3tNgyxG2.cjs`)),lt:()=>Promise.resolve().then(()=>require(`./messages-4_3WFJMy2.cjs`)),lv:()=>Promise.resolve().then(()=>require(`./messages-DxCaGN-Q2.cjs`)),mk:()=>Promise.resolve().then(()=>require(`./messages-ZZd1ckSO2.cjs`)),ml:()=>Promise.resolve().then(()=>require(`./messages-WgwkG5PL2.cjs`)),mn:()=>Promise.resolve().then(()=>require(`./messages-C0sxGmLV2.cjs`)),mr:()=>Promise.resolve().then(()=>require(`./messages-C5nqE8O42.cjs`)),ms:()=>Promise.resolve().then(()=>require(`./messages-CTy_3-mw2.cjs`)),my:()=>Promise.resolve().then(()=>require(`./messages-CFyGEGXM2.cjs`)),ne:()=>Promise.resolve().then(()=>require(`./messages-CkBrRFY02.cjs`)),nl:()=>Promise.resolve().then(()=>require(`./messages-BxV8K7y42.cjs`)),no:()=>Promise.resolve().then(()=>require(`./messages-Da2SYMf52.cjs`)),pa:()=>Promise.resolve().then(()=>require(`./messages-PIoKW4js2.cjs`)),pl:()=>Promise.resolve().then(()=>require(`./messages-C_ogasse2.cjs`)),ps:()=>Promise.resolve().then(()=>require(`./messages-CfO5kKI72.cjs`)),pt:()=>Promise.resolve().then(()=>require(`./messages-MgJnGL9X2.cjs`)),ro:()=>Promise.resolve().then(()=>require(`./messages-ADxG1iWK2.cjs`)),ru:()=>Promise.resolve().then(()=>require(`./messages-CbbYb7cc.cjs`)),sd:()=>Promise.resolve().then(()=>require(`./messages-DrbTe09r.cjs`)),si:()=>Promise.resolve().then(()=>require(`./messages-CbFuceEb.cjs`)),sk:()=>Promise.resolve().then(()=>require(`./messages--CbdZY2w.cjs`)),sl:()=>Promise.resolve().then(()=>require(`./messages-Km2PU_o7.cjs`)),sq:()=>Promise.resolve().then(()=>require(`./messages-BMsqJNz0.cjs`)),sr:()=>Promise.resolve().then(()=>require(`./messages-Bxhns4Ui.cjs`)),sv:()=>Promise.resolve().then(()=>require(`./messages-VEm9mp5H.cjs`)),sw:()=>Promise.resolve().then(()=>require(`./messages-BXcSH14N.cjs`)),ta:()=>Promise.resolve().then(()=>require(`./messages-BYSE1Iq2.cjs`)),te:()=>Promise.resolve().then(()=>require(`./messages-DtgIZDlN.cjs`)),th:()=>Promise.resolve().then(()=>require(`./messages-BK6gK3wu.cjs`)),tr:()=>Promise.resolve().then(()=>require(`./messages-BYOYrUOu.cjs`)),ug:()=>Promise.resolve().then(()=>require(`./messages-BiDR95AW.cjs`)),uk:()=>Promise.resolve().then(()=>require(`./messages-CpppvIiu.cjs`)),ur:()=>Promise.resolve().then(()=>require(`./messages-vRqPeNM_.cjs`)),vi:()=>Promise.resolve().then(()=>require(`./messages-BUaHDggs.cjs`)),yi:()=>Promise.resolve().then(()=>require(`./messages-Do4o9ckW.cjs`)),zh:()=>Promise.resolve().then(()=>require(`./messages-DyWu9_0D.cjs`))},bl=async e=>{let t=vl.get(e);if(t!==void 0)return t;let n=yl[e],r=hl(e,(await n()).default);return vl.set(e,r),r},xl=class extends l{constructor(...e){super(...e),this.i18nextWrapper=null,this.locale=`en`,this.defaultLocale=`en`,this.usingI18next=!1,this.lightweightI18n=new o.t}t(e,t){return this.usingI18next&&this.i18nextWrapper!==null?this.i18nextWrapper.t(e,t):this.lightweightI18n.t(e,t)}getEnglishTranslation(e){var t;return(t=o.r[e])==null?``:t}has(e){return this.usingI18next&&this.i18nextWrapper!==null?this.i18nextWrapper.has(e):this.lightweightI18n.has(e)}async setLocale(e){var t=this;try{if(e===`en`){t.locale=`en`,t.usingI18next=!1;return}let n=await bl(e);if(await t.ensureI18nextLoaded(e,n),t.i18nextWrapper===null)return;t.i18nextWrapper.instance.hasResourceBundle(e,`translation`)||t.i18nextWrapper.instance.addResourceBundle(e,`translation`,n.dictionary),await t.i18nextWrapper.changeLanguage(e),t.locale=e,t.usingI18next=!0}catch(n){console.warn(`Failed to load locale "${e}". Falling back to "${t.defaultLocale}".`,n),t.locale=t.defaultLocale,t.defaultLocale===`en`&&(t.usingI18next=!1)}}async detectAndSetLocale(){var e=this;let t=e.detectBrowserLocale();return await e.setLocale(t),e.locale}setDictionary(e){this.usingI18next&&this.i18nextWrapper!==null?this.i18nextWrapper.setDictionary(e):this.lightweightI18n.setDictionary(e)}getLocale(){return this.locale}getDirection(){return ml(this.locale)}getDirectionForLocale(e){return ml(e)}async prepare(){var e=this,t;let n=e.config.i18n;e.applyDefaultLocale(n==null?void 0:n.defaultLocale);let r=n==null?void 0:n.locale;r===void 0||r===`auto`?await e.detectAndSetLocale():await e.setLocale(r),(n==null?void 0:n.messages)!==void 0&&e.setDictionary(n.messages),e.updateConfigDirection((t=n==null?void 0:n.direction)==null?e.getDirection():t)}async ensureI18nextLoaded(e,t){var n=this;if(n.i18nextWrapper!==null)return;let{loadI18next:r}=await Promise.resolve().then(()=>require(`./i18next-loader-cGwOOjK3.cjs`));n.i18nextWrapper=await r(e,t)}updateConfigDirection(e){this.config.i18n===void 0&&(this.config.i18n={}),this.config.i18n.direction=e}applyDefaultLocale(e){e!==void 0&&(this.defaultLocale=e)}isLocaleSupported(e){return gl.includes(e)}detectBrowserLocale(){var e;if(typeof navigator>`u`)return this.defaultLocale;let t=(e=navigator.languages)==null?[navigator.language]:e;for(let e of t){if(!e)continue;let t=this.matchLanguageTag(e);if(t!==null)return t}return this.defaultLocale}matchLanguageTag(e){let t=e.toLowerCase();if(this.isLocaleSupported(t))return t;let n=t.split(`-`)[0];return n!==void 0&&this.isLocaleSupported(n)?n:null}},Sl=class extends l{constructor({config:e,eventsDispatcher:t}){super({config:e,eventsDispatcher:t}),this.disabled=!1,this.batchingTimeout=null,this.batchingOnChangeQueue=new Map,this.batchTime=400,this.mutationObserver=new MutationObserver(e=>{this.redactorChanged(e)}),this.eventsDispatcher.on(p,e=>{this.particularBlockChanged(e.event)}),this.eventsDispatcher.on(_,()=>{this.disable()}),this.eventsDispatcher.on(v,()=>{this.enable()})}enable(){this.mutationObserver.observe(this.Blok.UI.nodes.redactor,{childList:!0,subtree:!0,characterData:!0,attributes:!0}),this.disabled=!1}disable(){this.mutationObserver.disconnect(),this.disabled=!0}particularBlockChanged(e){this.disabled||!t.$n(this.config.onChange)||(this.batchingOnChangeQueue.set(`block:${e.detail.target.id}:event:${e.type}`,e),this.batchingTimeout&&clearTimeout(this.batchingTimeout),this.batchingTimeout=setTimeout(()=>{let e=Array.from(this.batchingOnChangeQueue.values());if(e.length===0)return;let t=e.length===1?e[0]:e;this.config.onChange&&this.config.onChange(this.Blok.API.methods,t),this.batchingOnChangeQueue.clear()},this.batchTime))}destroy(){this.disabled=!0,this.mutationObserver.disconnect(),this.batchingTimeout!==null&&(clearTimeout(this.batchingTimeout),this.batchingTimeout=null),this.batchingOnChangeQueue.clear()}redactorChanged(e){this.eventsDispatcher.emit(y,{mutations:e})}},Cl=new Set([`table`,`thead`,`tbody`,`tfoot`,`tr`,`th`,`td`,`caption`,`colgroup`,`col`,`ul`,`ol`,`li`,`dl`,`dt`,`dd`,`details`,`summary`]),wl=e=>typeof e==`string`?[e]:e&&typeof e==`object`?Object.keys(e):[];function Tl(e){let t=document.createElement(`div`);t.innerHTML=e;let n=El(t);return Fl(t,n),n&&Ll(t),t.innerHTML}function El(e){let t=e.querySelector(`b[id^="docs-internal-guid-"]`);if(!t)return!1;let n=document.createDocumentFragment();for(;t.firstChild;)n.appendChild(t.firstChild);return t.replaceWith(n),!0}function Dl(e,t,n){return e?`background-color: ${n}`:t?`background-color: transparent`:``}function Ol(e){let t=e.replace(/\s/g,``);return t===`rgb(0,0,0)`||t===`#000000`}function kl(e){let t=e.replace(/\s/g,``).toLowerCase(),n=/^rgba?\((\d+),(\d+),(\d+)(?:,[\d.]+)?\)$/.exec(t);if(n){let e=parseInt(n[1],10)/255,t=parseInt(n[2],10)/255,r=parseInt(n[3],10)/255;return .2126*e+.7152*t+.0722*r}let r=/^hsla?\(([\d.]+),([\d.]+)%,([\d.]+)%(?:,[\d.]+)?\)$/.exec(t);if(r){let e=parseFloat(r[1])/360,t=parseFloat(r[2])/100,n=parseFloat(r[3])/100;if(t===0)return .2126*n+.7152*n+.0722*n;let i=n<.5?n*(1+t):n+t-n*t,a=2*n-i,o=e=>{let t=e<0?e+1:e>1?e-1:e;return t<1/6?a+(i-a)*6*t:t<1/2?i:t<2/3?a+(i-a)*(2/3-t)*6:a},s=o(e+1/3),c=o(e),l=o(e-1/3);return .2126*s+.7152*c+.0722*l}let i=/^#([0-9a-f]{6}|[0-9a-f]{3})$/.exec(t);if(i){let e=i[1],t=e.length===3?[e[0]+e[0],e[1]+e[1],e[2]+e[2]]:[e.substring(0,2),e.substring(2,4),e.substring(4,6)],n=parseInt(t[0],16)/255,r=parseInt(t[1],16)/255,a=parseInt(t[2],16)/255;return .2126*n+.7152*r+.0722*a}return-1}function Al(e){let t=e.replace(/\s/g,``).toLowerCase();return t===`rgb(255,255,255)`||t===`#ffffff`||t===`white`}function jl(e){let t=kl(e);return t>=0&&t<.12}function Ml(e){let t=kl(e);return t>=0&&t>.75}function Nl(e,n,r,i,a){if(!n&&!r)return e;let o=n&&i!==void 0?t.Yt(i,`text`):``,s=r&&a!==void 0?t.Yt(a,`bg`):``,c=[n?`color: ${o}`:``,Dl(r,n,s)].filter(Boolean).join(`; `);return c?`<mark style="${c};">${e}</mark>`:e}function Pl(e,t){var n,r,i;let a=(n=e.getAttribute(`style`))==null?``:n,o=/font-weight\s*:\s*(700|bold)/i.test(a),s=/font-style\s*:\s*italic/i.test(a),c=RegExp(`(?<![a-z-])color\\s*:\\s*([^;]+)`,`i`).exec(a),l=/background-color\s*:\s*([^;]+)/i.exec(a),u=c==null||(r=c[1])==null?void 0:r.trim(),d=l==null||(i=l[1])==null?void 0:i.trim(),f=t?u!==void 0&&!Ol(u):u!==void 0&&!Ol(u)&&!Ml(u),p=t?d!==void 0&&d!==`transparent`:d!==void 0&&d!==`transparent`&&!Al(d)&&!jl(d);if(!o&&!s&&!f&&!p)return null;let m=Nl(e.innerHTML,f,p,u,d),h=s?`<i>${m}</i>`:m;return o?`<b>${h}</b>`:h}function Fl(e,t){for(let n of Array.from(e.querySelectorAll(`span[style]`))){let e=Pl(n,t);e!==null&&n.replaceWith(document.createRange().createContextualFragment(e))}t&&Il(e)}function Il(e){for(let a of Array.from(e.querySelectorAll(`a[style]`))){var n,r,i;let e=(n=a.getAttribute(`style`))==null?``:n,o=RegExp(`(?<![a-z-])color\\s*:\\s*([^;]+)`,`i`).exec(e),s=/background-color\s*:\s*([^;]+)/i.exec(e),c=o==null||(r=o[1])==null?void 0:r.trim(),l=s==null||(i=s[1])==null?void 0:i.trim(),u=c!==void 0&&!Ol(c)&&c!==`inherit`,d=l!==void 0&&l!==`transparent`&&l!==`inherit`;if(!u&&!d)continue;let f=u?t.Yt(c,`text`):``,p=d?t.Yt(l,`bg`):``,m=[u?`color: ${f}`:``,Dl(d,u,p)].filter(Boolean).join(`; `),h=a;h.innerHTML=`<mark style="${m};">${h.innerHTML}</mark>`,h.style.removeProperty(`color`),h.style.removeProperty(`background-color`)}}function Ll(e){for(let t of Array.from(e.querySelectorAll(`td, th`))){let e=t.querySelectorAll(`p`);if(e.length!==0){for(let t of Array.from(e)){let e=document.createRange().createContextualFragment(t.innerHTML+`<br>`);t.replaceWith(e)}t.innerHTML=t.innerHTML.replace(/(<br\s*\/?>|\s)+$/i,``)}}}var Rl=class{constructor(e,t,n){this.Blok=e,this.toolRegistry=t,this.sanitizerBuilder=n}composePasteEvent(e,t){return new CustomEvent(e,{detail:t})}shouldReplaceCurrentBlock(e){let{BlockManager:t}=this.Blok,n=t.currentBlock;return n?e&&n.name===e?!0:!!n.tool.isDefault&&n.isEmpty:!1}redirectToTableParentIfNeeded(e,n){var r,i;let a=n.currentBlock,o=a==null||(r=a.holder)==null?void 0:r.closest(`[data-blok-table-cell-blocks]`),s=new Set(t.An()),c=e.some(e=>s.has(e.tool));if(!o||!c||a===void 0)return;let l=(i=a.holder.closest(`[data-blok-tool="table"]`))==null?void 0:i.closest(`[data-blok-element]`);l&&n.setCurrentBlockByChildNode(l)}async insertPasteData(e,t){var n=this;let{BlockManager:r,Caret:i}=n.Blok;if(!e.length)return;if(e.length>1){var a,o,s,c,l;n.redirectToTableParentIfNeeded(e,r);let u=r.currentBlock,d=(a=u==null||(o=u.holder)==null?void 0:o.querySelector(`[data-blok-toggle-children]`))==null?null:a,f=d!==null&&!d.contains((s=u==null?void 0:u.currentInput)==null?null:s)?(c=u==null?void 0:u.id)==null?null:c:(l=u==null?void 0:u.parentId)==null?null:l,p=[],m=r.operations,h={current:Promise.resolve()},g=()=>{h.current=(async()=>{for(let[o,s]of e.entries()){var a;m!==void 0&&(m.suppressStopCapturing=!0);let e=o===0&&t&&((a=r.currentBlock)==null?void 0:a.isEmpty)===!0?await r.paste(s.tool,s.event,!0):await r.paste(s.tool,s.event);i.setToBlock(e,i.positions.END),p.push(e),n.applyPastedBlockParent(e,s,p,r,f)}})()};typeof r.transactForTool==`function`?r.transactForTool(g):g(),await h.current,r.currentBlock&&i.setToBlock(r.currentBlock,i.positions.END);return}let[u]=e;if(u.isBlock){await n.processSingleBlock(u,t);return}await n.processInlinePaste(u,t)}applyPastedBlockParent(e,t,n,r,i){if(t.parentPasteIndex!==void 0){let i=n[t.parentPasteIndex];i&&r.setBlockParent(e,i.id)}else i===null?e.parentId!=null&&r.setBlockParent(e,null):r.setBlockParent(e,i)}async insertBlock(e,t=!1){let{BlockManager:n,Caret:r}=this.Blok,{currentBlock:i}=n;if(t&&i&&i.isEmpty){let t=await n.paste(e.tool,e.event,!0);r.setToBlock(t,r.positions.END);return}let a=await n.paste(e.tool,e.event);r.setToBlock(a,r.positions.END)}async processSingleBlock(e,n){var r=this;let{Caret:i,BlockManager:a}=r.Blok,{currentBlock:o}=a,s=t.Pn;if(!o||e.tool!==o.name||!s.containsOnlyInlineElements(e.content.innerHTML)){await r.insertBlock(e,n);return}i.insertContentAtCaretPosition(e.content.innerHTML)}async processInlinePaste(e,n){var r=this;let{BlockManager:i,Caret:a}=r.Blok,{content:o}=e,s=i.currentBlock;if(!s||!s.currentInput){await r.insertBlock(e,n);return}let c=s.tool.baseSanitizeConfig;a.insertContentAtCaretPosition(t.un(o.innerHTML,c))}},zl,Bl=class e extends Rl{constructor(e,t,n){super(e,t,n)}canHandle(t){if(typeof t!=`string`)return 0;let n=t;return!n||n.length>e.PATTERN_PROCESSING_MAX_LENGTH?0:this.toolRegistry.findToolForPattern(n)?60:0}async handle(e,t){var n=this;if(typeof e!=`string`)return!1;let r=n.toolRegistry.findToolForPattern(e);if(!r)return!1;let i=n.composePasteEvent(`pattern`,{key:r.key,data:e}),a={key:r.key,data:e,tool:r.tool.name,event:i};return await n.insertPatternBlock(a,t.canReplaceCurrentBlock),!0}async insertPatternBlock(e,t){let{BlockManager:n,Caret:r}=this.Blok,i=await n.paste(e.tool,e.event,t);r.setToBlock(i,r.positions.END)}};zl=Bl,zl.PATTERN_PROCESSING_MAX_LENGTH=450;var Vl=class extends Rl{constructor(e,t,n,r){super(e,t,n),this.config=r}canHandle(e){if(typeof e!=`string`)return 0;try{return JSON.parse(e),100}catch(e){return 0}}async handle(e,t){var n=this;if(typeof e!=`string`)return!1;let r=JSON.parse(e),i=n.toolRegistry.toolsPatterns.length>0,a=t.plainData;if(!i||!a)return n.insertBlokBlocks(r,t.canReplaceCurrentBlock),!0;let o=await n.tryPatternMatch(a);return o?(await n.insertPatternMatch(o,t.canReplaceCurrentBlock),!0):(n.insertBlokBlocks(r,t.canReplaceCurrentBlock),!0)}async tryPatternMatch(e){var t=this;if(t.patternHandler||(t.patternHandler=new Bl(t.Blok,t.toolRegistry,t.sanitizerBuilder)),e.length>Bl.PATTERN_PROCESSING_MAX_LENGTH)return;let n=t.toolRegistry.findToolForPattern(e);if(!n)return;let r=t.composePasteEvent(`pattern`,{key:n.key,data:e});return{key:n.key,data:e,tool:n.tool.name,event:r}}async insertPatternMatch(e,t){let{BlockManager:n,Caret:r}=this.Blok,i=await n.paste(e.tool,e.event,t);r.setToBlock(i,r.positions.END)}insertBlokBlocks(e,n){var r,i,a,o,s,c,l;let{BlockManager:u,Caret:d,Tools:f}=this.Blok,p=Wl(e),m=t.fn(p,e=>{var t,n;return(t=(n=f.blockTools.get(e))==null?void 0:n.sanitizeConfig)==null?{}:t},this.config.sanitizer),h=n&&!!((r=u.currentBlock)!=null&&r.tool.isDefault)&&!!((i=u.currentBlock)!=null&&i.isEmpty),g=u.currentBlock,_=(a=g==null||(o=g.holder)==null?void 0:o.querySelector(`[data-blok-toggle-children]`))==null?null:a,v=_!==null&&!_.contains((s=g==null?void 0:g.currentInput)==null?null:s)?(c=g==null?void 0:g.id)==null?null:c:(l=g==null?void 0:g.parentId)==null?null:l,y=new Set(p.map(e=>e.id)),b=[],x=[];m.forEach((e,t)=>{let n=p[t];n!==void 0&&(n.parentId!==void 0&&n.parentId!==null&&y.has(n.parentId)?b:x).push({sanitized:e,original:n})});let S=new Map,ee=()=>{b.forEach(({sanitized:e,original:t})=>{let n=u.insert({tool:e.tool,data:e.data});S.set(t.id,{newBlock:n,original:t}),d.setToBlock(n,d.positions.END)});let e=new Map;for(let[t,{newBlock:n}]of S)e.set(t,n.id);x.forEach(({sanitized:t,original:n},r)=>{let i=e.size>0?Gl(t.data,e):t.data,a=u.insert({tool:t.tool,data:i,replace:r===0&&h&&b.length===0});v!==null&&(n.parentId===void 0||n.parentId===null)&&u.setBlockParent(a,v),S.set(n.id,{newBlock:a,original:n}),d.setToBlock(a,d.positions.END)});for(let[,{newBlock:e,original:t}]of S){if(t.parentId===void 0||t.parentId===null)continue;let n=S.get(t.parentId);n!==void 0&&u.setBlockParent(e,n.newBlock.id)}};typeof u.transactForTool==`function`?u.transactForTool(ee):ee()}};function Hl(e,t,n){typeof e!=`object`||!e||!Array.isArray(e.blocks)||e.blocks.forEach(e=>{typeof e==`string`&&!n.has(e)&&n.set(e,t)})}function Ul(e,t){if(e.tool!==`table`||e.id===void 0)return;let n=e.data,r=n==null?void 0:n.content;if(!Array.isArray(r))return;let i=e.id;r.forEach(e=>{Array.isArray(e)&&e.forEach(e=>Hl(e,i,t))})}function Wl(e){let t=new Map;return e.forEach(e=>Ul(e,t)),t.size===0?e:e.map(e=>{if(e.id===void 0)return e;let r=t.get(e.id);return r===void 0||e.parentId!==void 0&&e.parentId!==null?e:n.t(n.t({},e),{},{parentId:r})})}function Gl(e,t){if(typeof e==`string`){var n;return(n=t.get(e))==null?e:n}if(Array.isArray(e))return e.map(e=>Gl(e,t));if(typeof e==`object`&&e){let n={};for(let[r,i]of Object.entries(e))n[r]=Gl(i,t);return n}return e}var Kl=e=>typeof e==`object`&&!!e&&`files`in e&&`types`in e&&`getData`in e&&`setData`in e,ql=class extends Rl{constructor(e,t,n){super(e,t,n)}canHandle(e){return Kl(e)&&this.containsFiles(e)?80:0}async handle(e,t){var n=this;if(!Kl(e)||!n.containsFiles(e))return!1;let r=e.files;return!r||r.length===0?!1:(await n.processFiles(r),!0)}containsFiles(e){var t;if(Array.from(e.types).includes(`Files`)||(t=e.files)!=null&&t.length)return!0;try{let t=e.types;if(typeof(t==null?void 0:t.contains)==`function`&&t.contains(`Files`))return!0}catch(e){}return!1}async processFiles(e){var t=this,n;let{BlockManager:r}=t.Blok,i=(await Promise.all(Array.from(e).map(e=>t.processFile(e)))).filter(e=>e!=null);if(i.length===0)return;let a=t.shouldReplaceCurrentBlock((n=i[0])==null?void 0:n.type);for(let[e,t]of i.entries())await r.paste(t.type,t.event,e===0&&a)}async processFile(e){var t=this;let n=t.toolRegistry.findToolForFile(e);if(n)return{event:t.composePasteEvent(`file`,{file:e}),type:n}}},Jl=class extends Rl{constructor(e,t,n){super(e,t,n)}canHandle(e){return typeof e!=`string`||!e.trim()||!t.Pn.isHTMLString(e)?0:40}async handle(e,t){var n=this;if(typeof e!=`string`)return!1;let r=n.processHTML(e);return r.length?(await n.insertPasteData(r,t.canReplaceCurrentBlock),!0):!1}processHTML(e){let{Tools:r}=this.Blok,i=t.Pn.make(`DIV`);i.innerHTML=e;let a=this.getNodes(i),o=[];for(let e of a){let t=e.nodeType===Node.ELEMENT_NODE&&e.tagName===`DETAILS`,n=e.nodeType===Node.ELEMENT_NODE&&e.tagName===`ASIDE`;if(!t&&!n){o.push({node:e});continue}let r=o.length;o.push({node:e});let i=Array.from(e.children).filter(e=>n||e.tagName!==`SUMMARY`);for(let e of i)o.push({node:e,parentExpandedIndex:r})}let s=o.map(({node:e,parentExpandedIndex:i},a)=>{let o=(()=>{switch(e.nodeType){case Node.DOCUMENT_FRAGMENT_NODE:{let n=t.Pn.make(`div`);return n.appendChild(e),{content:n,tool:r.defaultTool,isBlock:!1}}case Node.ELEMENT_NODE:{var n,i;let t=e,a=(n=this.toolRegistry.findToolForTag(t.tagName))==null?void 0:n;return{content:t,tool:(i=a==null?void 0:a.tool)==null?r.defaultTool:i,isBlock:!0}}default:return null}})();if(!o)return null;let{content:s,tool:c,isBlock:l}=o,u=this.buildToolTags(c),d=n.t(n.t(n.t(n.t({},this.sanitizerBuilder.getStructuralTagsConfig(s)),u),c.baseSanitizeConfig),{},{br:{}}),f=this.sanitizeContent(s,d);if(!f)return null;let p=this.composePasteEvent(`tag`,{data:f});return{data:{content:f,isBlock:l,tool:c.name,event:p,parentPasteIndex:i},originalIndex:a}}),c=new Map,l=[];for(let e of s){if(!e)continue;let{data:n,originalIndex:r}=e,i=t.Pn.isEmpty(n.content),a=t.Pn.isSingleTag(n.content);(!i||a)&&(c.set(r,l.length),l.push(n))}for(let e of l)e.parentPasteIndex!==void 0&&(e.parentPasteIndex=c.get(e.parentPasteIndex));return l}buildToolTags(e){var r;return e.pasteConfig===!1?{}:(((r=e.pasteConfig)==null?void 0:r.tags)||[]).reduce((e,r)=>{let i=wl(r),a=n.t({},e);return i.forEach(e=>{let n=t.er(r)?r[e]:null;a[e.toLowerCase()]=n==null?{}:n}),a},{})}sanitizeContent(e,n){if(e.tagName.toLowerCase()!==`table`){let r=e.cloneNode(!0);return r.innerHTML=t.un(e.innerHTML,n),r}return this.sanitizerBuilder.sanitizeTable(e,n)}processElementNode(e,n,r){let i=Object.keys(this.toolRegistry.toolsTags),a=e,o=this.toolRegistry.findToolForTag(a.tagName),s=o==null?void 0:o.tool,c=s?this.toolRegistry.getToolTags(s.name):[],l=i.includes(a.tagName);if(l&&(a.tagName===`DETAILS`||a.tagName===`ASIDE`))return[...n,r,a];let u=t.Pn.blockElements.includes(a.tagName.toLowerCase()),d=Cl.has(a.tagName.toLowerCase()),f=Array.from(a.children).some(({tagName:e})=>i.includes(e)&&!c.includes(e)),p=Array.from(a.children).some(({tagName:e})=>t.Pn.blockElements.includes(e.toLowerCase()));if(!u&&!l&&!f)return r.appendChild(a),[...n,r];if(l&&!f||u&&!p&&!f||d&&!f)return[...n,r,a]}getNodes(e){let n=Array.from(e.childNodes),r=(e,n)=>{if(t.Pn.isEmpty(n)&&!t.Pn.isSingleTag(n))return e;let i=e[e.length-1],{destNode:a,remainingNodes:o}=i!==void 0&&t.Pn.isFragment(i)?{destNode:i,remainingNodes:e.slice(0,-1)}:{destNode:new DocumentFragment,remainingNodes:e};if(n.nodeType===Node.TEXT_NODE)return a.appendChild(n),[...o,a];if(n.nodeType!==Node.ELEMENT_NODE)return[...o,a];let s=this.processElementNode(n,o,a);if(s)return s;let c=Array.from(n.childNodes).reduce(r,[]);return[...o,...c]};return n.reduce(r,[])}},Yl=[/^#{1,6}\s/m,/^```/m,/\|\s*---/,/^- \[[ x]\]/m,/\[.+?\]\(.+?\)/,/\*\*.+?\*\*/,/!\[/,/\$\$[\s\S]+?\$\$/,RegExp(`(?<!\\$)\\$(?!\\$)(?=\\S)[^$]+(?<=\\S)\\$(?!\\$)`,``)];function Xl(e){return e?Yl.some(t=>t.test(e)):!1}var Zl=class extends Rl{constructor(e,t,n){super(e,t,n)}canHandle(e){return typeof e!=`string`||!e.trim()?0:Xl(e)?30:0}async handle(e,t){var n=this;if(typeof e!=`string`)return!1;let{markdownToBlocks:r}=await Promise.resolve().then(()=>require(`../markdown.cjs`)),i=await r(e);if(!i.length)return!1;let a=Ze(i),{BlockManager:o,Caret:s}=n.Blok,c=o.currentBlock,l=t.canReplaceCurrentBlock&&c!==void 0&&c.isEmpty,u=l?o.currentBlockIndex:o.currentBlockIndex+1,d=a.map(({id:e,type:t,data:n,parent:r})=>o.composeBlock({id:e,tool:t,data:n,parentId:r}));o.insertMany(d,u),l&&c!==void 0&&await o.removeBlock(c,!1);let f=d[d.length-1];return f instanceof re&&s.setToBlock(f,s.positions.END),!0}},Ql=class extends Rl{constructor(e,t,n){super(e,t,n)}canHandle(e){return typeof e==`string`?t.Kt(e)===null?0:90:0}async handle(e,n){var r=this,i,a;if(typeof e!=`string`)return!1;let o=t.Kt(e);if(!o)return!1;let s=document.activeElement;if(s!=null&&s.closest(`[data-blok-table-cell]`)||!((i=n.currentBlock)==null||(i=i.holder)==null)&&i.closest(`[data-blok-table-cell-blocks]`)||(a=n.pasteTarget)!=null&&a.closest(`[data-blok-table-cell]`))return!1;let{BlockManager:c,Caret:l}=r.Blok,u={withHeadings:!1,withHeadingColumn:!1,content:o.cells.map(e=>e.map(e=>{let t=e.blocks.length===0?``:e.blocks.map(e=>typeof e.data.text==`string`?e.data.text:``).join(` `),n=e.color!==void 0,r=e.textColor!==void 0;if(!n&&!r)return t;let i={blocks:[],text:t};return n&&(i.color=e.color),r&&(i.textColor=e.textColor),i}))},d=n.canReplaceCurrentBlock,f=c.insert({tool:`table`,data:u,replace:d});return l.setToBlock(f,l.positions.END),!0}},$l=class extends Rl{constructor(e,t,n,r){super(e,t,n),this.config=r}canHandle(e){return typeof e==`string`&&e.length>0?10:0}async handle(e,t){var n=this;if(typeof e!=`string`)return!1;let r=n.processPlain(e);return r.length?(await n.insertPasteData(r,t.canReplaceCurrentBlock),!0):!1}processPlain(e){let{defaultBlock:n}=this.config;return!e||!n?[]:e.split(/\r?\n/).filter(e=>e.trim()).map(e=>{let r=t.Pn.make(`div`);return r.textContent=e,{content:r,tool:n,isBlock:!1,event:this.composePasteEvent(`tag`,{data:r})}})}},eu=class{constructor(e,t){this.tools=e,this.config=t}buildToolsTagsConfig(e){return Object.fromEntries(Object.keys(e).map(t=>{var n;return[t.toLowerCase(),(n=e[t].sanitizationConfig)==null?{}:n]}))}getStructuralTagsConfig(e){let t={},n=[e];for(;n.length>0;){let e=n.pop();if(!e)continue;let i=e.tagName.toLowerCase();if(Cl.has(i)){var r;t[i]=(r=t[i])==null?{}:r}n.push(...Array.from(e.children))}return t}buildToolConfig(e){var n;if(e.pasteConfig===!1)return{};let r=((n=e.pasteConfig)==null?void 0:n.tags)||[],i={};return r.forEach(e=>{wl(e).forEach(n=>{let r=t.er(e)?e[n]:null;i[n.toLowerCase()]=r==null?{}:r})}),i}composeConfigs(...e){return t.dn({},...e)}sanitizeTable(e,n){let r=t.un(e.outerHTML,n),i=document.createElement(`div`);i.innerHTML=r;let a=i.firstChild;return!a||!(a instanceof HTMLElement)?null:a}isStructuralTag(e){return Cl.has(e.toLowerCase())}},tu=class{constructor(e,n){this.tools=e,this.config=n,this.toolsTags={},this.tagsByTool={},this.toolsPatterns=[],this.toolsFiles={},this.exceptionList=[],this.processTool=e=>{try{if(e.pasteConfig===!1){this.exceptionList.push(e.name);return}if(!e.hasOnPasteHandler)return;this.getTagsConfig(e),this.getFilesConfig(e),this.getPatternsConfig(e)}catch(n){t.ir(`Paste handling for «${e.name}» Tool hasn't been set up because of the error`,`warn`,n)}}}async processTools(){var e=this;let t=e.tools;await Array.from(t.values()).forEach(e.processTool)}getTagsConfig(e){if(e.pasteConfig===!1)return;let n=e.pasteConfig.tags||[],r=[];n.forEach(n=>{let i=wl(n);r.push(...i),i.forEach(r=>{if(Object.prototype.hasOwnProperty.call(this.toolsTags,r)){t.ir(`Paste handler for «${e.name}» Tool on «${r}» tag is skipped because it is already used by «${this.toolsTags[r].tool.name}» Tool.`,`warn`);return}let i=t.er(n)?n[r]:void 0;this.toolsTags[r.toUpperCase()]={tool:e,sanitizationConfig:i}})}),this.tagsByTool[e.name]=r.map(e=>e.toUpperCase())}getFilesConfig(e){if(e.pasteConfig===!1)return;let{files:n={}}=e.pasteConfig,{extensions:r,mimeTypes:i}=n;if(!r&&!i)return;let a=r==null?[]:Array.isArray(r)?r:(t.ir(`«extensions» property of the paste config for «${e.name}» Tool should be an array`),[]),o=i==null?[]:Array.isArray(i)?i.filter(n=>t.qn(n)?!0:(t.ir(`MIME type value «${n}» for the «${e.name}» Tool is not a valid MIME type`,`warn`),!1)):(t.ir(`«mimeTypes» property of the paste config for «${e.name}» Tool should be an array`),[]);this.toolsFiles[e.name]={extensions:a,mimeTypes:o}}getPatternsConfig(e){if(e.pasteConfig===!1||!e.pasteConfig.patterns)return;let n=e.pasteConfig.patterns;Object.keys(n).length!==0&&Object.entries(n).forEach(([n,r])=>{r instanceof RegExp||t.ir(`Pattern ${r} for «${e.name}» Tool is skipped because it should be a Regexp instance.`,`warn`),this.toolsPatterns.push({key:n,pattern:r,tool:e})})}findToolForTag(e){return this.toolsTags[e]}findToolForFile(e){var t,n;let r=(t=(n=e.name.split(`.`).pop())==null?void 0:n.toLowerCase())==null?``:t,i=Object.entries(this.toolsFiles).find(([,{mimeTypes:t,extensions:n}])=>{let[i,a]=e.type.split(`/`),o=n.find(e=>e.toLowerCase()===r),s=t.find(e=>{let[t,n]=e.split(`/`);return t===i&&(n===a||n===`*`)});return o!==void 0||s!==void 0});return i==null?void 0:i[0]}findToolForPattern(e){return this.toolsPatterns.find(t=>{let n=t.pattern.exec(e);return n?e===n.shift():!1})}getToolTags(e){var t;return(t=this.tagsByTool[e])==null?[]:t}isException(e){return this.exceptionList.includes(e)}},nu,ru=class extends l{constructor(...e){var t;super(...e),t=this,this.MIME_TYPE=`application/x-blok`,this.handlePasteEventWrapper=e=>{this.handlePasteEvent(e)},this.handlePasteEvent=async e=>{var n;if(e.defaultPrevented)return;if((n=t.Blok.DragManager)!=null&&n.isDragging){e.preventDefault();return}let{BlockManager:r,Toolbar:i}=t.Blok,a=r.setCurrentBlockByChildNode(e.target);if(!(!a||e.target&&t.isNativeBehaviour(e.target)&&e.clipboardData&&!e.clipboardData.types.includes(`Files`))&&!t.toolRegistry.isException(a.name)){if(e.preventDefault(),e.clipboardData){let n=e.target instanceof Element?e.target:void 0;await t.processDataTransfer(e.clipboardData,n)}i.moveAndOpen()}}}async prepare(){var e=this;let{Tools:t}=e.Blok;e.toolRegistry=new tu(t.blockTools,e.config),e.sanitizerBuilder=new eu(t.blockTools,e.config),await e.toolRegistry.processTools(),e.handlers=[new Vl(e.Blok,e.toolRegistry,e.sanitizerBuilder,e.config),new Ql(e.Blok,e.toolRegistry,e.sanitizerBuilder),new ql(e.Blok,e.toolRegistry,e.sanitizerBuilder),new Bl(e.Blok,e.toolRegistry,e.sanitizerBuilder),new Zl(e.Blok,e.toolRegistry,e.sanitizerBuilder),new Jl(e.Blok,e.toolRegistry,e.sanitizerBuilder),new $l(e.Blok,e.toolRegistry,e.sanitizerBuilder,e.config)]}async processText(e,t=!1){var n=this;let{BlockManager:r}=n.Blok,i=r.currentBlock,a=!!(i&&i.tool.isDefault&&i.isEmpty),o=t?n.handlers.find(e=>e instanceof Jl):n.handlers.find(e=>e instanceof $l);if(!o)return;let s={canReplaceCurrentBlock:a,currentBlock:i==null?void 0:i};await o.handle(e,s)}toggleReadOnly(e){e?this.unsetCallback():this.setCallback()}async processDataTransfer(e,t){var n=this;let r=e.getData(n.MIME_TYPE),i=e.getData(`text/plain`),a=e.getData(`text/html`);await n.routeToHandlers(e,i,a,r,t)||await n.processAsText(i)}async routeToHandlers(e,t,n,r,i){var a=this,o;let{BlockManager:s}=a.Blok,c=s.currentBlock,l={canReplaceCurrentBlock:!!(c&&c.tool.isDefault&&c.isEmpty&&!((o=c.holder)!=null&&o.closest(`[data-blok-table-cell-blocks]`))),currentBlock:c==null?void 0:c,plainData:t,pasteTarget:i};for(let i of a.handlers){let o=a.getDataForHandler(i,e,t,n,r);if(o!==void 0&&i.canHandle(o)!==0&&await i.handle(o,l))return!0}return!1}getDataForHandler(e,n,r,i,a){if(e instanceof Vl)return a;if(e instanceof Ql)return i;if(e instanceof ql)return n;if(e instanceof Bl||e instanceof Zl||e instanceof $l)return r;if(!(e instanceof Jl))return;let o=this.sanitizerBuilder.buildToolsTagsConfig(this.toolRegistry.toolsTags),s=this.Blok.Tools.getAllInlineToolsSanitizeConfig(),c=Object.fromEntries([...Cl].map(e=>[e,{}])),l=t.dn(this.config.sanitizer,c,o,s,{br:{}}),u=t.un(Tl(i),l),d=t.Pn.isHTMLString(u);return!u.trim()||u.trim()===r||!d?void 0:u}async processAsText(e){var t=this;let{BlockManager:n}=t.Blok;if(!e)return;let r=n.currentBlock,i=!!(r&&r.tool.isDefault&&r.isEmpty),a=t.handlers.find(e=>e instanceof $l);a&&await a.handle(e,{canReplaceCurrentBlock:i,currentBlock:r==null?void 0:r})}setCallback(){this.listeners.on(this.Blok.UI.nodes.holder,`paste`,this.handlePasteEventWrapper)}unsetCallback(){this.listeners.off(this.Blok.UI.nodes.holder,`paste`,this.handlePasteEventWrapper)}isNativeBehaviour(e){return t.Pn.isNativeInput(e)}};nu=ru,nu.PATTERN_PROCESSING_MAX_LENGTH=450;var iu=class extends l{constructor(...e){super(...e),this.toolsDontSupportReadOnly=[],this.toolsDontSupportInPlaceToggle=[],this.readOnlyEnabled=!1,this.inPlaceToggleChecked=!1}get isEnabled(){return this.readOnlyEnabled}get supportsInPlaceToggle(){return this.inPlaceToggleChecked&&this.toolsDontSupportInPlaceToggle.length===0}async prepare(){var e=this;let{Tools:t}=e.Blok,{blockTools:n}=t,r=[];Array.from(n.entries()).forEach(([t,n])=>{n.isReadOnlySupported||r.push(t),n.supportsInPlaceReadOnly||e.toolsDontSupportInPlaceToggle.push(t)}),e.toolsDontSupportReadOnly=r,e.inPlaceToggleChecked=!0,e.config.readOnly===!0&&r.length>0&&e.throwCriticalError(),await e.toggle(e.config.readOnly,!0)}async toggle(e=!this.readOnlyEnabled,t=!1){var n=this;e&&n.toolsDontSupportReadOnly.length>0&&n.throwCriticalError();let r=n.readOnlyEnabled;n.readOnlyEnabled=e;for(let t of Object.values(n.Blok))t!=null&&typeof t.toggleReadOnly==`function`&&t.toggleReadOnly(e);if(r===e||t)return n.readOnlyEnabled;if(n.supportsInPlaceToggle){var i;n.Blok.ModificationsObserver.disable();let t=(i=n.Blok.BlockManager.blocks)==null?[]:i;for(let n of t)n.setReadOnly(e);return n.Blok.ModificationsObserver.enable(),n.readOnlyEnabled}n.Blok.ModificationsObserver.disable();let a=await n.Blok.Saver.save();if(a===void 0)return n.Blok.ModificationsObserver.enable(),n.readOnlyEnabled;let o=window.scrollY;n.Blok.Renderer.markRenderStart();try{await n.Blok.BlockManager.clear(),await n.Blok.Renderer.render(a.blocks)}finally{n.Blok.Renderer.markRenderEnd()}return window.scrollY!==o&&window.scrollTo(0,o),n.Blok.ModificationsObserver.enable(),n.readOnlyEnabled}async set(e){return this.toggle(e)}throwCriticalError(){throw new c(`To enable read-only mode all connected tools should support it. Tools ${this.toolsDontSupportReadOnly.join(`, `)} don't support read-only mode.`)}},au=class extends l{constructor(...e){super(...e),this.isRectSelectionActivated=!1,this.SCROLL_SPEED=3,this.HEIGHT_OF_SCROLL_ZONE=40,this.BOTTOM_SCROLL_ZONE=1,this.TOP_SCROLL_ZONE=2,this.MAIN_MOUSE_BUTTON=0,this.mousedown=!1,this.mouseDownWithinBoundsFromContentEditable=!1,this.pendingToolbarClose=!1,this.isScrolling=!1,this.inScrollZone=null,this.startX=0,this.startY=0,this.mouseX=0,this.mouseY=0,this.stackOfSelected=[],this.rectCrossesBlocks=!1,this.anchorBlockIndex=null,this.overlayRectangle=null,this.listenerIds=[]}static get CSS(){return{overlay:``,overlayContainer:``,rect:``,topScrollZone:``,bottomScrollZone:``}}prepare(){this.enableModuleBindings()}startSelection(e,n,r=!1){let{UI:i}=this.Blok,a=i.nodes.redactor;if(!a)return;let o=a.getBoundingClientRect(),s=n-this.getScrollTop();if(!(s>=o.top&&s<=o.bottom))return;let c=this.getScrollLeft(),l=e-c,u=this.Blok.UI.contentRect,d=l>=u.left&&l<=u.right,f=document.elementFromPoint(e-c,s);f&&(!f.closest(t.dr(t.ur.toolbar))&&!r&&(this.Blok.BlockSelection.allBlocksSelected=!1,this.Blok.BlockSelection.disableNavigationMode(),this.clearSelection(),this.stackOfSelected=[],this.anchorBlockIndex=null),![t.dr(t.ur.elementContent),t.dr(t.ur.settingsToggler),t.dr(t.ur.popover),`[data-blok-interface=inline-toolbar]`].some(e=>!!f.closest(e))&&(d&&(this.pendingToolbarClose=!0),this.mousedown=!0,this.startX=e,this.startY=n))}endSelection(){this.mousedown=!1,this.mouseDownWithinBoundsFromContentEditable=!1,this.pendingToolbarClose=!1,this.startX=0,this.startY=0,this.anchorBlockIndex=null,this.stackOfSelected=[],this.overlayRectangle!==null&&(this.overlayRectangle.style.display=`none`)}isRectActivated(){return this.isRectSelectionActivated||this.mousedown}get isMouseDownWithinBounds(){return this.mouseDownWithinBoundsFromContentEditable}clearSelection(){this.isRectSelectionActivated=!1}cancelActiveSelection(){!this.mousedown&&!this.isRectSelectionActivated||(this.clearSelection(),this.endSelection())}enableModuleBindings(){this.genHTML(),this.listeners.on(document.body,`mousedown`,e=>{this.processMouseDown(e)},!1);let e=t.Zn(e=>{e instanceof MouseEvent&&this.processMouseMove(e)},10);this.listeners.on(document.body,`mousemove`,e,{passive:!0}),this.listeners.on(document.body,`mouseleave`,()=>{this.processMouseLeave()});let n=t.Zn(e=>{this.processScroll(e)},10);this.listeners.on(window,`scroll`,n,{passive:!0}),this.listeners.on(document,`mouseup`,()=>{this.processMouseUp()},!1)}processMouseDown(e){if(e.button!==this.MAIN_MOUSE_BUTTON)return;if(e.target.closest(t.Pn.allInputsSelector)===null){this.startSelection(e.pageX,e.pageY,e.shiftKey);return}let n=this.getScrollLeft(),r=e.pageX-n,i=this.Blok.UI.contentRect;r>=i.left&&r<=i.right&&(this.mouseDownWithinBoundsFromContentEditable=!0)}processMouseMove(e){this.mouseDownWithinBoundsFromContentEditable&&this.Blok.Toolbar.close(),this.pendingToolbarClose&&(this.pendingToolbarClose=!1,this.Blok.Toolbar.close()),this.changingRectangle(e),this.scrollByZones(e.clientY)}processMouseLeave(){this.clearSelection(),this.endSelection()}processScroll(e){this.changingRectangle(e)}processMouseUp(){this.Blok.BlockSelection.selectedBlocks.length>1&&this.Blok.Toolbar.moveAndOpenForMultipleBlocks(),this.clearSelection(),this.endSelection()}scrollByZones(e){if(this.inScrollZone=null,e<=this.HEIGHT_OF_SCROLL_ZONE&&(this.inScrollZone=this.TOP_SCROLL_ZONE),document.documentElement.clientHeight-e<=this.HEIGHT_OF_SCROLL_ZONE&&(this.inScrollZone=this.BOTTOM_SCROLL_ZONE),!this.inScrollZone){this.isScrolling=!1;return}this.isScrolling||(this.scrollVertical(this.inScrollZone===this.TOP_SCROLL_ZONE?-this.SCROLL_SPEED:this.SCROLL_SPEED),this.isScrolling=!0)}genHTML(){let{UI:e}=this.Blok,n=e.nodes.holder.querySelector(t.dr(t.ur.editor)),r=t.Pn.make(`div`,[`fixed`,`inset-0`,`z-overlay`,`pointer-events-none`,`overflow-hidden`],{}),i=t.Pn.make(`div`,[`relative`,`pointer-events-auto`,`z-0`],{}),a=t.Pn.make(`div`,[`absolute`,`pointer-events-none`,`bg-selection-highlight`,`border`,`border-transparent`],{});if(r.setAttribute(t.ur.overlay,``),i.setAttribute(t.ur.overlayContainer,``),a.setAttribute(t.ur.overlayRectangle,``),r.setAttribute(`data-blok-testid`,`overlay`),a.setAttribute(`data-blok-testid`,`overlay-rectangle`),!n)throw Error(`RectangleSelection: blok wrapper not found`);return i.appendChild(a),r.appendChild(i),n.appendChild(r),this.overlayRectangle=a,{container:n,overlay:r}}scrollVertical(e){if(!(this.inScrollZone&&this.mousedown))return;let t=this.getScrollTop();window.scrollBy(0,e),this.mouseY+=this.getScrollTop()-t,setTimeout(()=>{this.scrollVertical(e)},0)}changingRectangle(e){if(!this.mousedown)return;let n=this.overlayRectangle;if(n===null)return;e.pageY!==void 0&&(this.mouseX=e.pageX,this.mouseY=e.pageY),this.isRectSelectionActivated||(this.isRectSelectionActivated=!0,this.shrinkRectangleToPoint(),n.style.display=`block`);let{index:r}=this.genInfoForMouseSelection();this.rectCrossesBlocks=!1;let i=r===void 0?void 0:this.Blok.BlockManager.getBlockByIndex(r),a=i===void 0?void 0:this.Blok.BlockManager.resolveToRootBlock(i);if(a){let e=a.holder.getBoundingClientRect(),t=this.getScrollLeft(),n=Math.min(this.startX,this.mouseX),r=Math.max(this.startX,this.mouseX),i=e.left+t,o=e.right+t;this.rectCrossesBlocks=r>=i&&n<=o}if(this.updateRectangleSize(),this.Blok.Toolbar.close(),r===void 0)return;this.trySelectNextBlock(r),this.inverseSelection();let o=t.mn.get();o&&o.removeAllRanges()}shrinkRectangleToPoint(){if(this.overlayRectangle===null)return;let e=this.getScrollLeft(),t=this.getScrollTop();this.overlayRectangle.style.left=`${this.startX-e}px`,this.overlayRectangle.style.top=`${this.startY-t}px`,this.overlayRectangle.style.bottom=`calc(100% - ${this.startY-t}px)`,this.overlayRectangle.style.right=`calc(100% - ${this.startX-e}px)`}inverseSelection(){if(this.stackOfSelected.length===0)return;let e=this.Blok.BlockManager.getBlockByIndex(this.stackOfSelected[0]);if(!e)return;let t=e.selected;if(this.rectCrossesBlocks&&!t)for(let e of this.stackOfSelected)this.Blok.BlockSelection.selectBlockByIndex(e);if(!this.rectCrossesBlocks&&t)for(let e of this.stackOfSelected)this.Blok.BlockSelection.unSelectBlockByIndex(e)}updateRectangleSize(){if(this.overlayRectangle===null)return;let e=this.getScrollLeft(),t=this.getScrollTop();this.mouseY>=this.startY?(this.overlayRectangle.style.top=`${this.startY-t}px`,this.overlayRectangle.style.bottom=`calc(100% - ${this.mouseY-t}px)`):(this.overlayRectangle.style.bottom=`calc(100% - ${this.startY-t}px)`,this.overlayRectangle.style.top=`${this.mouseY-t}px`),this.mouseX>=this.startX?(this.overlayRectangle.style.left=`${this.startX-e}px`,this.overlayRectangle.style.right=`calc(100% - ${this.mouseX-e}px)`):(this.overlayRectangle.style.right=`calc(100% - ${this.startX-e}px)`,this.overlayRectangle.style.left=`${this.mouseX-e}px`)}genInfoForMouseSelection(){let{UI:e}=this.Blok,t=e.nodes.redactor.getBoundingClientRect(),n=t.left+t.width/2,r=this.getScrollTop(),i=this.mouseY-r,a=document.elementFromPoint(n,i);if(!a)return{index:void 0};let o=this.Blok.BlockManager.getBlockByChildNode(a);return{index:o===void 0?void 0:this.Blok.BlockManager.blocks.indexOf(o)}}getScrollTop(){var e,t,n,r;return typeof window.scrollY==`number`?window.scrollY:(e=(t=(n=document.documentElement)==null?void 0:n.scrollTop)==null?(r=document.body)==null?void 0:r.scrollTop:t)==null?0:e}getScrollLeft(){var e,t,n,r;return typeof window.scrollX==`number`?window.scrollX:(e=(t=(n=document.documentElement)==null?void 0:n.scrollLeft)==null?(r=document.body)==null?void 0:r.scrollLeft:t)==null?0:e}addBlockInSelection(e){this.rectCrossesBlocks&&this.Blok.BlockSelection.selectBlockByIndex(e),this.stackOfSelected.push(e)}trySelectNextBlock(e){this.anchorBlockIndex===null&&(this.anchorBlockIndex=e);let t=this.Blok.BlockManager.blocks,n=t[this.anchorBlockIndex],r=t[e];if(!n||!r)return;let i=n.holder.getBoundingClientRect(),a=r.holder.getBoundingClientRect(),o=this.getScrollTop(),s=Math.min(this.startY,this.mouseY)-o,c=Math.max(this.startY,this.mouseY)-o,l=Math.max(Math.min(i.top,a.top),s),u=Math.min(Math.max(i.bottom,a.bottom),c),d=this.getScrollLeft(),f=Math.min(this.startX,this.mouseX)-d,p=Math.max(this.startX,this.mouseX)-d,m=new Set;t.forEach((e,t)=>{let n=e.holder.getBoundingClientRect(),r=e.holder.querySelector(`[data-blok-element-content]`),i=(r==null?e.holder:r).getBoundingClientRect(),a=f===p||i.right>f&&i.left<p;n.height>0&&n.bottom>l&&n.top<u&&a&&m.add(t)});let h=new Set(this.stackOfSelected);for(let e of h)!m.has(e)&&this.rectCrossesBlocks&&this.Blok.BlockSelection.unSelectBlockByIndex(e);for(let e of m)!h.has(e)&&this.rectCrossesBlocks&&this.Blok.BlockSelection.selectBlockByIndex(e);this.stackOfSelected=Array.from(m).sort((e,t)=>e-t)}},ou=[`color`,`background-color`],su={color:`text`,"background-color":`bg`};function cu(e){e.querySelectorAll(`mark`).forEach(e=>{for(let n of ou){let r=e.style.getPropertyValue(n);if(!r||r===`transparent`||r.startsWith(`var(`))continue;let i=t.Xt(r,su[n]);i!==null&&e.style.setProperty(n,t.en(i,su[n]))}})}var lu={delimiter:`divider`},uu=class extends l{constructor(...e){super(...e),this.detectedInputFormat=`flat`,this.pendingRender=null,this.pendingHashScroll=null,this.resolvePendingRender=null}markRenderStart(){this.pendingRender=new Promise(e=>{this.resolvePendingRender=e})}markRenderEnd(){this.resolvePendingRender!==null&&(this.resolvePendingRender(),this.resolvePendingRender=null),this.pendingRender=null}getDetectedInputFormat(){return this.detectedInputFormat}render(e){return new Promise(n=>{let{Tools:r,BlockManager:i}=this.Blok;if(e.length===0)i.insert();else{let n=this.config.dataModel||`auto`,a=Se(e);this.detectedInputFormat=a.format;let o=Ze(Qe(n,a.format)?ke(e):e),s=new Set,c=o.map(e=>{let{tunes:n,parent:a,content:o,lastEditedAt:c,lastEditedBy:l}=e,u=e.id!==void 0&&s.has(e.id);u&&t.ar(`Duplicate block id «${e.id}» replaced with a generated id to ensure uniqueness`,`warn`);let d=u?t.Ln():e.id;d!==void 0&&s.add(d);let f=e.type,p=(e=>typeof e==`object`&&!!e)(e.data)?e.data:{},m=(()=>{if(r.available.has(f))return{tool:f,data:p};let e=lu[f];return e!==void 0&&r.available.has(e)?{tool:e,data:p}:(t.ar(`Tool «${f}» is not found. Check 'tools' property at the Blok config.`,`warn`),{tool:r.stubTool,data:this.composeStubDataForTool(f,p,d)})})();return((e,s)=>{try{return i.composeBlock({id:d,tool:e,data:s,tunes:n,parentId:a,contentIds:o,lastEditedAt:c,lastEditedBy:l})}catch(u){t.ir(`Block «${e}» skipped because of plugins error`,`error`,{data:s,error:u});let f=this.composeStubDataForTool(e,s,d);return i.composeBlock({id:d,tool:r.stubTool,data:f,tunes:n,parentId:a,contentIds:o,lastEditedAt:c,lastEditedBy:l})}})(m.tool,m.data)});i.insertMany(c),cu(this.Blok.UI.nodes.redactor)}window.requestIdleCallback(()=>{n()},{timeout:2e3})})}composeStubDataForTool(e,t,n){let{Tools:r}=this.Blok,i=(()=>{if(!r.unavailable.has(e))return e;let t=r.unavailable.get(e).toolbox;return t!==void 0&&t[0].title!==void 0?t[0].title:e})();return{savedData:{id:n,type:e,data:t},title:i}}},du=/<img\s+[^>]*src=["']([^"']+)["'][^>]*>/g,fu=e=>{let r=new Map;for(let t of e)t.id!==void 0&&r.set(t.id,t);if(!e.some(e=>e.tool===`table`))return e;let i=new Map;for(let t of e){var a;if(t.tool!==`paragraph`||t.parentId===void 0||t.parentId===null)continue;let e=r.get(t.parentId);if(e===void 0||e.tool!==`table`)continue;let n=(a=t.data)==null?void 0:a.text;if(typeof n!=`string`)continue;let o=Array.from(n.matchAll(du),e=>e[1]);if(o.length===0)continue;du.lastIndex=0;let s=n.replace(du,``);t.id!==void 0&&i.set(t.id,{parentTableId:t.parentId,imgSrcs:o,cleanedText:s})}if(i.size===0)return e;let o=new Map;for(let[e,n]of i){let r=[];for(let e of n.imgSrcs){let i={id:t.Ln(),tool:`image`,data:{url:e},isValid:!0,parentId:n.parentTableId};r.push(i)}o.set(e,r)}let s=new Set;for(let e of i.values())s.add(e.parentTableId);let c=new Map;for(let e of s){let t=r.get(e);if(t===void 0)continue;let i=n.t({},t),a=t.data;if((a==null?void 0:a.content)!==void 0){let e=a.content.map(e=>e.map(e=>n.t(n.t({},e),{},{blocks:[...e.blocks]})));i.data=n.t(n.t({},t.data),{},{content:e})}i.contentIds=t.contentIds===void 0?[]:[...t.contentIds],c.set(e,i)}for(let[e,t]of o){let n=i.get(e);if(n===void 0)continue;let r=c.get(n.parentTableId);if(r===void 0)continue;let a=r.data;if((a==null?void 0:a.content)===void 0)continue;let o=t.map(e=>{var t;return(t=e.id)==null?``:t});a.content.flat().forEach(t=>{let n=t.blocks.indexOf(e);n!==-1&&t.blocks.splice(n,0,...o)}),r.contentIds!==void 0&&r.contentIds.push(...o)}let l=[];for(let t of e){if(t.id!==void 0&&c.has(t.id)){l.push(c.get(t.id));continue}if(t.id!==void 0&&i.has(t.id)){var u,d;l.push(...(u=o.get(t.id))==null?[]:u);let e=i.get(t.id),r=n.t(n.t({},t),{},{data:n.t(n.t({},t.data),{},{text:(d=e==null?void 0:e.cleanedText)==null?``:d})});l.push(r);continue}l.push(t)}return l},pu=class extends l{constructor(...e){super(...e),this.pendingSave=null}async save(){var e=this;if(!e.isDestroyed){if(e.pendingSave!==null)return e.pendingSave;e.pendingSave=e.doSave();try{return await e.pendingSave}finally{e.pendingSave=null}}}async doSave(){var e=this,n;let r=(n=e.Blok.Renderer)==null?void 0:n.pendingRender;if(r!=null&&await r,e.isDestroyed)return;let{BlockManager:i,Tools:a}=e.Blok,o=i.blocks;if(o.length===1&&o[0].isEmpty&&o[0].tool.isDefault)return{time:+new Date,blocks:[],version:t.sr()};let s=new Set(o.map(e=>e.id));for(let e of o)e.parentId!==null&&!s.has(e.parentId)&&(t.ar(`Saver: cleared dangling parentId ${e.parentId} on block ${e.id}`,`warn`),e.parentId=null);let c=new Map;for(let e of o){if(e.parentId===null)continue;let t=c.get(e.parentId);t===void 0?c.set(e.parentId,[e.id]):t.push(e.id)}let l=o.map(t=>{var n;return e.getSavedData(t,(n=c.get(t.id))==null?[]:n)});e.lastSaveError=void 0;try{let t=await Promise.all(l),n=fu(e.sanitizeExtractedData(t,e=>{var t;return(t=a.blockTools.get(e))==null?void 0:t.sanitizeConfig},e.config.sanitizer));return e.isDestroyed?void 0:e.makeOutput(n)}catch(n){e.lastSaveError=n,t.ar(`Saving failed due to the Error %o`,`error`,n instanceof Error?n:Error(String(n)));return}}async getSavedData(e,t){var r=this;let i=await e.save(),a=e.name,o=(i==null?void 0:i.data)===void 0?r.getPreservedSavedData(e):i;if(o===void 0)return{tool:a,isValid:!1};let s=await e.validate(o.data);return n.t(n.t({},o),{},{isValid:s,parentId:e.parentId,contentIds:t,lastEditedAt:e.lastEditedAt,lastEditedBy:e.lastEditedBy})}makeOutput(e){var r,i,a;let o=[];e.forEach(({id:e,tool:r,data:i,tunes:a,isValid:s,parentId:c,contentIds:l,lastEditedAt:u,lastEditedBy:d})=>{let f=c!=null;if(!s&&!f){t.ir(`Block «${r}» skipped because saved data is invalid`);return}if(r===void 0||i===void 0){t.ir(`Block skipped because saved data is missing required fields`);return}if(r===this.Blok.Tools.stubTool&&this.isStubSavedData(i)){o.push(i);return}if(r===this.Blok.Tools.stubTool){t.ir(`Stub block data is malformed and was skipped`);return}let p=a===void 0||t.Qn(a),m=l!==void 0&&l.length>0,h=u!==void 0,g=d!=null,_=n.t(n.t(n.t(n.t(n.t({id:e,type:r,data:i},!p&&{tunes:a}),f&&{parent:c}),m&&{content:l}),h&&{lastEditedAt:u}),g&&{lastEditedBy:d});o.push(_)});let s=$e(this.config.dataModel||`auto`,(r=(i=this.Blok.Renderer)==null||(a=i.getDetectedInputFormat)==null?void 0:a.call(i))==null?`flat`:r)?Ge(o):o,c=gc(s);if(c.length>0){let e=`Saver produced output with hierarchy drift: ${c.map(e=>e.message).join(`; `)}`,n=typeof process<`u`?`production`:void 0;if(n===`test`||n===`development`)throw Error(e);t.ar(e,`error`)}return{time:+new Date,blocks:s,version:t.sr()}}sanitizeExtractedData(e,r,i){let a=[];if(e.forEach((e,t)=>{this.hasSanitizableData(e)&&a.push({index:t,data:e})}),a.length===0)return e;let o=t.fn(a.map(({data:e})=>e),r,i),s=e.map(e=>n.t({},e));return a.forEach(({index:e},t)=>{let r=o[t];s[e]=n.t(n.t({},s[e]),{},{data:r.data})}),s}hasSanitizableData(e){return e.data!==void 0&&typeof e.tool==`string`}isStubSavedData(e){if(!t.er(e))return!1;let n=e;return typeof n.type==`string`&&n.data!==void 0}getLastSaveError(){return this.lastSaveError}getPreservedSavedData(e){let r=e.preservedData;if(t.Qn(r))return;let i=e.preservedTunes;return n.t(n.t({id:e.id,tool:e.name,data:r},t.Qn(i)?{}:{tunes:i}),{},{time:0})}},mu=`38px`,hu=`46px`,gu=class extends t.g{get hasNestedPopoverOpen(){return this.nestedPopover!==null&&this.nestedPopover!==void 0}closeNestedPopover(){this.destroyNestedPopoverIfExists()}constructor(e){var i;let a=!t.Kn(),o=new t.tn({focusedItemClass:t.E.focused,allowedKeys:[t.cr.TAB,t.cr.UP,t.cr.DOWN,t.cr.ENTER]});super(n.t(n.t({},e),{},{flipper:o}),{[t.pn.Default]:{wrapperTag:`button`,hint:{position:`top`,alignment:`center`,enabled:a},iconWithGap:!1,isInline:!0},[t.pn.Html]:{hint:{position:`top`,alignment:`center`,enabled:a},isInline:!0},[t.pn.Separator]:{isInline:!0}}),this.hide=()=>{var e;this.setOpenTop(!1),this.setOpenLeft(!1),this.itemsDefault.forEach(e=>e.reset()),this.search!==void 0&&this.search.clear(),this.destroyNestedPopoverIfExists(),(e=this.flipper)==null||e.deactivate(),this.nodes.popover.className=r.n(t.x.popover),this.nodes.popoverContainer&&(this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.x.popoverContainer),this.nodes.popoverContainer.style.height=``),t.C.instance.unregister(this),this.emit(t.v.Closed)},this.nodes.popover.className=r.n(t.x.popover),this.nodes.popoverContainer&&(this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.x.popoverContainer)),this.nodes.items&&(this.nodes.items.className=r.n(t.b.items,`flex`)),this.nodes.popover.style.setProperty(`--height`,mu),this.nodes.popover.style.setProperty(`--height-mobile`,hu),this.nodes.popover.setAttribute(t.ur.popoverInline,``),(i=this.flipper)==null||i.setHandleContentEditableTargets(!0),this.items.forEach(e=>{!(e instanceof t.T)&&!(e instanceof t.w)||e.hasChildren&&e.isChildrenOpen&&this.showNestedItems(e)})}get offsetLeft(){return this.nodes.popoverContainer===null?0:this.nodes.popoverContainer.offsetLeft}show(){var e;if(super.show(),this.nodes.popover.className=r.n(t.x.popover,`inline-block`),this.nodes.popoverContainer){this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.b.popoverContainerOpened,t.x.popoverContainer);let e=t.Kn()?`var(--height-mobile)`:`var(--height)`;this.nodes.popoverContainer.style.height=e}let n=this.nestingLevel===0?(e=this.nodes.popoverContainer)==null?void 0:e.getBoundingClientRect():void 0;if(n!==void 0){let e=`${n.width}px`,r=`${n.height}px`;this.nodes.popover.style.setProperty(t.y.InlinePopoverWidth,e),this.nodes.popover.style.width=e,this.nodes.popover.style.height=r}queueMicrotask(()=>{var e,t;(e=this.flipper)==null||e.deactivate(),(t=this.flipper)==null||t.activate(this.flippableElements)})}handleHover(){}handleMouseLeave(){}setTriggerItemPosition(e,n){let r=n.getElement(),i=r?r.offsetLeft:0,a=this.offsetLeft+i;e.style.setProperty(t.y.TriggerItemLeft,a+`px`)}showNestedItems(e){if(this.nestedPopoverTriggerItem===e){this.destroyNestedPopoverIfExists(),this.nestedPopoverTriggerItem=null;return}super.showNestedItems(e)}showNestedPopoverForItem(e){var n;let i=super.showNestedPopoverForItem(e),a=i.getElement();(n=i.flipper)==null||n.setHandleContentEditableTargets(!0);let o=a.querySelector(`[${t.ur.popoverContainer}]`);o&&(o.className=r.n(o.className,`h-fit p-1.5 flex-col`));let s=a.querySelector(`[${t.ur.popoverItems}]`);if(s&&(s.className=r.n(s.className,`block w-full`)),a.setAttribute(t.ur.nestedLevel,t.S(i.nestingLevel)),i.nestingLevel===1&&o instanceof HTMLElement){let n=e.getElement(),r=n?n.offsetLeft+this.offsetLeft:0,a=i.size.width,s=this.nodes.popoverContainer.offsetWidth,c=Math.max(0,s-a),l=Math.max(0,Math.min(r,c));o.style.left=`${l}px`;let u=t.Kn()?`calc(var(--height-mobile) + 3px)`:`calc(var(--height) + 3px)`;o.style.top=u}return i}handleItemClick(e){if(e!==this.nestedPopoverTriggerItem){var t;(t=this.nestedPopoverTriggerItem)==null||t.handleClick(),super.destroyNestedPopoverIfExists()}super.handleItemClick(e)}},_u,vu=class e{constructor(){this.scrollPosition=null}lock(){t.Gn?this.lockHard():(document.body.classList.add(e.CSS.overflowHidden),document.body.setAttribute(e.DATA_ATTR.scrollLocked,`true`))}unlock(){t.Gn?this.unlockHard():(document.body.classList.remove(e.CSS.overflowHidden),document.body.removeAttribute(e.DATA_ATTR.scrollLocked))}lockHard(){this.scrollPosition=window.pageYOffset,document.documentElement.style.setProperty(`--window-scroll-offset`,`${this.scrollPosition}px`),document.body.classList.add(e.CSS.overflowHidden,e.CSS.fixed,e.CSS.wFull),document.body.style.top=`calc(-1 * var(--window-scroll-offset))`,document.body.setAttribute(e.DATA_ATTR.scrollLockedHard,`true`)}unlockHard(){document.body.classList.remove(e.CSS.overflowHidden,e.CSS.fixed,e.CSS.wFull),document.body.style.top=``,document.body.removeAttribute(e.DATA_ATTR.scrollLockedHard),this.scrollPosition!==null&&window.scrollTo(0,this.scrollPosition),this.scrollPosition=null}};_u=vu,_u.CSS={overflowHidden:`overflow-hidden`,fixed:`fixed`,wFull:`w-full`},_u.DATA_ATTR={scrollLocked:`data-blok-scroll-locked`,scrollLockedHard:`data-blok-scroll-locked-hard`};var yu={root:`flex items-center mb-2 mt-1`,text:`text-lg font-semibold text-text-primary`,backButton:`border-0 bg-transparent w-9 h-9 text-text-primary cursor-pointer outline-hidden [&_svg]:block [&_svg]:w-7 [&_svg]:h-7`},bu=class{constructor({text:e,onBackButtonClick:n}){this.listeners=new t.kn,this.text=e,this.onBackButtonClick=n,this.nodes={root:t.Pn.make(`div`,[yu.root],{"data-blok-testid":`popover-header`,[t.ur.popoverHeader]:``}),backButton:t.Pn.make(`button`,[yu.backButton],{"data-blok-testid":`popover-header-back-button`,[t.ur.popoverHeaderBackButton]:``}),text:t.Pn.make(`div`,[yu.text],{"data-blok-testid":`popover-header-text`,[t.ur.popoverHeaderText]:``})},this.nodes.backButton.innerHTML=t.N,this.nodes.root.appendChild(this.nodes.backButton),this.listeners.on(this.nodes.backButton,`click`,this.onBackButtonClick),this.nodes.text.innerText=this.text,this.nodes.root.appendChild(this.nodes.text)}getElement(){return this.nodes.root}destroy(){this.nodes.root.remove(),this.listeners.destroy()}},xu=class{constructor(){this.history=[]}push(e){this.history.push(e)}pop(){return this.history.pop()}get currentTitle(){return this.history.length===0?``:this.history[this.history.length-1].title}get currentItems(){return this.history.length===0?[]:this.history[this.history.length-1].items}reset(){for(;this.history.length>1;)this.pop()}},Su=class extends t._{constructor(e){super(e,{[t.pn.Default]:{hint:{enabled:!1}},[t.pn.Html]:{hint:{enabled:!1}}}),this.scrollLocker=new vu,this.history=new xu,this.isHidden=!0,this.nodes.overlay=t.Pn.make(`div`,[t.b.popoverOverlay],{[t.ur.popoverOverlay]:``,[t.ur.overlayHidden]:``,"data-blok-testid":`popover-overlay`}),this.nodes.popover.insertBefore(this.nodes.overlay,this.nodes.popover.firstChild),this.listeners.on(this.nodes.overlay,`click`,()=>{this.hide()}),this.history.push({items:e.items}),this.nodes.popoverContainer.style.setProperty(`--offset`,`5px`),this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.b.popoverContainerMobile)}show(){this.nodes.overlay.removeAttribute(t.ur.overlayHidden),this.nodes.overlay.className=r.n(t.b.popoverOverlay,`fixed inset-0 block visible z-3 opacity-50`),super.show(),this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.b.popoverContainerMobile,t.b.popoverContainerOpened,`max-h-none z-4`),this.scrollLocker.lock(),this.isHidden=!1}hide(){this.isHidden||(super.hide(),this.nodes.overlay.setAttribute(t.ur.overlayHidden,``),this.nodes.overlay.className=t.b.popoverOverlay,this.nodes.popoverContainer.className=r.n(t.b.popoverContainer,t.b.popoverContainerMobile),this.scrollLocker.unlock(),this.history.reset(),this.isHidden=!0)}destroy(){super.destroy(),this.scrollLocker.unlock()}showNestedItems(e){this.updateItemsAndHeader(e.children,e.title),this.history.push({title:e.title,items:e.children})}updateItemsAndHeader(e,t){var n,r;this.header!==null&&this.header!==void 0&&(this.header.destroy(),this.header=null);let i=t!==void 0;i&&(this.header=new bu({text:t,onBackButtonClick:()=>{this.history.pop(),this.updateItemsAndHeader(this.history.currentItems,this.history.currentTitle)}}));let a=(n=(r=this.header)==null?void 0:r.getElement())==null?null:n;i&&a!==null&&this.nodes.popoverContainer.insertBefore(a,this.nodes.popoverContainer.firstChild),this.items.forEach(e=>{var t;return(t=e.getMountElement)==null||(t=t.call(e))==null?void 0:t.remove()}),this.items=this.buildItems(e),this.items.forEach(e=>{var t,n,r;let i=(t=(n=e.getMountElement)==null?void 0:n.call(e))==null?e.getElement():t;i!==null&&((r=this.nodes.items)==null||r.appendChild(i))})}},Cu=class extends l{constructor(...e){super(...e),this.opened=!1,this.isOpening=!1,this.selection=new t.mn,this.popover=null,this.flipperInstance=new t.tn({focusedItemClass:t.E.focused,allowedKeys:[t.cr.TAB,t.cr.UP,t.cr.DOWN,t.cr.ENTER,t.cr.RIGHT,t.cr.LEFT]}),this.flipperKeydownHandler=null,this.flipperKeydownSource=null,this.deleteKeyHandler=null,this.close=()=>{this.opened&&(this.opened=!1,this.isOpening=!1,t.mn.isAtBlok||this.selection.restore(),this.selection.clearSaved(),this.detachDeleteKeyListener(),this.detachFlipperKeydownListener(),this.clearBlockSelectionOnClose(),this.eventsDispatcher.emit(this.events.closed),this.popover&&(this.popover.off(t.v.Closed,this.onPopoverClose),this.popover.destroy(),this.popover.getElement().remove(),this.popover=null))},this.onPopoverClose=()=>{this.close()}}get events(){return{opened:h,closed:m}}get CSS(){return{settings:``}}get flipper(){return this.flipperInstance}make(){this.nodes.wrapper=t.Pn.make(`div`),this.nodes.wrapper.setAttribute(`data-blok-testid`,`block-tunes-wrapper`),this.eventsDispatcher.on(g,this.close)}destroy(){this.detachFlipperKeydownListener(),this.removeAllNodes(),this.listeners.destroy(),this.eventsDispatcher.off(g,this.close)}async open(e,n){var r=this;let i=r.Blok.BlockSelection.selectedBlocks,a=i.length>1,o=a?i[0]:e==null?r.Blok.BlockManager.currentBlock:e;if(o!==void 0){r.isOpening=!0;try{r.selection.save(),a||(r.Blok.BlockSelection.selectBlock(o),r.Blok.BlockSelection.clearCache());let{toolTunes:e,commonTunes:i}=o.getTunes(),s=await r.getTunesItems(o,i,e),c=t.Kn()?Su:t.g,l={searchable:!0,trigger:n||r.nodes.wrapper,items:s,messages:{nothingFound:r.Blok.I18n.t(`popover.nothingFound`),search:r.Blok.I18n.t(`popover.search`)},autoFocusFirstItem:!1,minWidth:`250px`};c===t.g&&(l.flipper=r.flipperInstance),r.popover=new c(l),r.popover.getElement().setAttribute(`data-blok-testid`,`block-tunes-popover`),r.popover.on(t.v.Closed,r.onPopoverClose),r.attachDeleteKeyListener(s),r.opened=!0,r.isOpening=!1,r.eventsDispatcher.emit(r.events.opened),r.popover.show(),r.attachFlipperKeydownListener(o)}catch(e){r.isOpening=!1}}}getElement(){return this.nodes.wrapper}contains(e){var t,n;return!!((t=this.nodes.wrapper)!=null&&t.contains(e)||(n=this.popover)!=null&&n.hasNode(e))}async getTunesItems(e,n,r){var i=this;let a=[],o=i.Blok.BlockSelection.selectedBlocks,s=o.length>1,c=Array.from(i.Blok.Tools.blockTools.values());!s&&r!==void 0&&r.length>0&&(a.push(...r),a.push({type:t.pn.Separator}));let l=(s?await t.wn(o.map(e=>new u(e)),c):await t.Cn(e,c)).reduce((n,r)=>(r.toolbox===void 0||r.toolbox.forEach(a=>{var c;let l=a.titleKey,u=l!=null&&l.includes(`.`)?l:`toolNames.${l}`,d=l?u:void 0,f=d?i.Blok.I18n.getEnglishTranslation(d):a.title;n.push({icon:a.icon,title:t.On(i.Blok.I18n,a,r.name),name:(c=a.name)==null?r.name:c,englishTitle:f,searchTerms:a.searchTerms,closeOnActivate:!0,onActivate:async()=>{let{Caret:t,Toolbar:n}=i.Blok,c=e.contentIds.length;if(c>0){let e=i.Blok.I18n.t(`blockSettings.convertWithChildrenWarning`,{count:c}),t=`This block has ${c} nested block${c===1?``:`s`}. Converting it will promote them to the top level. Continue?`;if(!window.confirm(e===`blockSettings.convertWithChildrenWarning`?t:e))return}let l=await i.convertBlock(e,o,s,r,a.data);n.close(),l&&t.setToBlock(l,t.positions.END)}})}),n),[]);return l.length>0&&(a.push({icon:t.Dt,name:`convert-to`,title:i.Blok.I18n.t(`popover.convertTo`),children:{items:l,minWidth:`200px`}}),a.push({type:t.pn.Separator})),s?a.push({icon:t.Rt,title:i.Blok.I18n.t(`blockSettings.delete`),name:`delete`,isDestructive:!0,secondaryLabel:`Del`,closeOnActivate:!0,onActivate:()=>{let{BlockManager:e,Caret:t,Toolbar:n}=i.Blok,r=e.deleteSelectedBlocksAndInsertReplacement();r&&t.setToBlock(r,t.positions.END),n.close()}}):a.push(...n),e.lastEditedAt!==void 0&&(a.push({type:t.pn.Separator}),a.push({type:t.pn.Html,element:i.createEditMetadataFooter(e),name:`edit-metadata`})),a}createEditMetadataFooter(e){let t=document.createElement(`div`);t.classList.add(`px-3`,`py-2`,`text-xs`,`leading-snug`,`text-[color:var(--popover-text-secondary,_#888)]`,`select-none`);let n=document.createElement(`div`);if(n.setAttribute(`data-edit-meta-label`,``),n.textContent=this.Blok.I18n.t(`blockSettings.lastEdited`),e.lastEditedBy!=null&&this.config.resolveUser!=null&&Promise.resolve(this.config.resolveUser(e.lastEditedBy)).then(e=>{(e==null?void 0:e.name)!=null&&(n.textContent=this.Blok.I18n.t(`blockSettings.lastEditedBy`,{name:e.name}))}),t.appendChild(n),e.lastEditedAt!==void 0){let n=document.createElement(`div`);n.classList.add(`mt-1`);let r=this.Blok.I18n.getLocale(),i=new Date(e.lastEditedAt),a=new Intl.DateTimeFormat(r,{day:`numeric`,month:`long`,year:`numeric`}).formatToParts(i);for(;a.length>0&&a[a.length-1].type===`literal`&&a[a.length-1].value.includes(`.`);)a.pop();n.textContent=`${a.map(e=>e.value).join(``)}, ${new Intl.DateTimeFormat(r,{timeStyle:`short`}).format(i)}`,t.appendChild(n)}return t}clearBlockSelectionOnClose(){if(this.Blok.CrossBlockSelection.isCrossBlockSelectionStarted)return;if(this.Blok.BlockSelection.selectedBlocks.length>1){this.Blok.BlockSelection.allBlocksSelected=!1;return}let e=this.Blok.BlockManager.currentBlock;e&&this.Blok.BlockSelection.unselectBlock(e)}async convertBlock(e,t,n,r,i){var a=this;let{BlockManager:o}=a.Blok;if(n)return a.convertMultipleBlocks(t,r.name,i);let s=await a.getExplodableItems(e);return!a.canToolMergeMultipleItems(r)&&s!==null?a.convertMultiItemBlockToSeparateBlocks(e,r.name,i):o.convert(e,r.name,i)}async convertMultipleBlocks(e,t,n){var r=this;let{Tools:i}=r.Blok;if(e.length===0)return null;let a=i.blockTools.get(t);return a&&r.canToolMergeMultipleItems(a)?r.convertBlocksToSingleMergedBlock(e,t,n):r.convertBlocksIndividually(e,t,n)}canToolMergeMultipleItems(e){let t=e.conversionConfig;if(!(t!=null&&t.import))return!1;try{let n=typeof t.import==`function`?t.import(`line1
|
|
12
|
+
line2`,e.settings):{[t.import]:`line1
|
|
13
|
+
line2`};return Array.isArray(n==null?void 0:n.items)&&n.items.length>1}catch(e){return!1}}async convertBlocksToSingleMergedBlock(e,t,n){var r=this,i,a;let{BlockManager:o}=r.Blok,s=[];for(let t of e)try{let e=await t.exportDataAsString();s.push(e)}catch(e){}if(s.length===0)return null;let c=e[0],l=s.join(`
|
|
14
|
+
`),u=r.Blok.Tools.blockTools.get(t);if(!u)return null;let d=typeof((i=u.conversionConfig)==null?void 0:i.import)==`function`?u.conversionConfig.import(l,u.settings):{[(a=u.conversionConfig)==null?void 0:a.import]:l},f=n?Object.assign(d,n):d,p=o.replace(c,t,f),m=e.slice(1);for(let e of m)await o.removeBlock(e,!1);return p}async convertBlocksIndividually(e,t,n){var r=this;let{BlockManager:i}=r.Blok,a=[];for(let o of e){let e=await r.convertBlockSafely(i,o,t,n);e&&a.push(e)}return a.length>0?a[a.length-1]:null}async convertBlockSafely(e,t,n,r){try{return await e.convert(t,n,r)}catch(e){return console.warn(`Failed to convert block ${t.id}:`,e),null}}async getExplodableItems(e){try{let t=await e.data;if(!Array.isArray(t==null?void 0:t.items)||t.items.length<=1)return null;let n=e=>typeof e==`object`&&!!e,r=e=>{let t=[];for(let i of e)n(i)&&(i.content!==void 0&&i.content!==``&&t.push(i.content),Array.isArray(i.items)&&i.items.length>0&&t.push(...r(i.items)));return t};return r(t.items)}catch(e){return null}}async convertMultiItemBlockToSeparateBlocks(e,t,n){var r=this,i;let{BlockManager:a,Tools:o}=r.Blok,s=await r.getExplodableItems(e);if(!s||s.length===0)return null;let c=o.blockTools.get(t),l=c==null||(i=c.conversionConfig)==null?void 0:i.import;if(!l)return null;let u=a.getBlockIndex(e);await a.removeBlock(e,!1);let d=s.map((e,r)=>{let i=typeof l==`function`?l(e,c==null?void 0:c.settings):{[l]:e},o=n?Object.assign(i,n):i;return a.insert({tool:t,data:o,index:u+r,needToFocus:!1})});return d.length>0?d[d.length-1]:null}attachFlipperKeydownListener(e){this.detachFlipperKeydownListener();let t=e==null?void 0:e.pluginsContent;t instanceof HTMLElement&&(this.flipperInstance.setHandleContentEditableTargets(!0),this.flipperKeydownHandler=e=>{this.flipperInstance.handleExternalKeydown(e)},t.addEventListener(`keydown`,this.flipperKeydownHandler,!0),this.flipperKeydownSource=t)}detachFlipperKeydownListener(){this.flipperKeydownSource!==null&&this.flipperKeydownHandler!==null&&this.flipperKeydownSource.removeEventListener(`keydown`,this.flipperKeydownHandler,!0),this.flipperInstance.setHandleContentEditableTargets(!1),this.flipperKeydownSource=null,this.flipperKeydownHandler=null}attachDeleteKeyListener(e){if(this.detachDeleteKeyListener(),this.popover===null)return;let t=e.find(e=>`name`in e&&e.name===`delete`&&`onActivate`in e);t!==void 0&&(this.deleteKeyHandler=e=>{e.key===`Delete`&&(e.preventDefault(),t.onActivate(t),this.close())},this.popover.getElement().addEventListener(`keydown`,this.deleteKeyHandler))}detachDeleteKeyListener(){this.popover!==null&&this.deleteKeyHandler!==null&&this.popover.getElement().removeEventListener(`keydown`,this.deleteKeyHandler),this.deleteKeyHandler=null}},wu=`block hovered`,Tu=function(e){return e.Opened=`toolbox-opened`,e.Closed=`toolbox-closed`,e.BlockAdded=`toolbox-block-added`,e}({}),Eu=class extends t.yn{get isEmpty(){return this.toolsToBeDisplayed.length===0}static get CSS(){return{toolbox:``}}constructor({api:e,tools:n,i18nLabels:r,i18n:i,triggerElement:a,leftAlignElement:o}){super(),this.opened=!1,this.listeners=new t.kn,this.popover=null,this.currentBlockForSearch=null,this.currentContentEditable=null,this.isInsideTableCell=!1,this.openedWithSlash=!0,this.handleMobileLayoutToggle=()=>{this.destroyPopover(),this.initPopover()},this.onPopoverClose=()=>{this.opened&&(this.isInsideTableCell&&(this.toggleRestrictedToolsHidden(!1),this.isInsideTableCell=!1),this.stopListeningToBlockInput(),this.opened=!1,this.emit(Tu.Closed))},this.handleBlockInput=()=>{var e;if(this.currentContentEditable===null)return;let n=this.currentContentEditable.textContent||``;if(this.openedWithSlash&&n.lastIndexOf(`/`)===-1){this.close();return}let r=this.openedWithSlash?n.slice(n.lastIndexOf(`/`)+1):n;this.currentContentEditable instanceof HTMLElement&&this.currentContentEditable.setAttribute(t.ur.slashSearch,r.length===0?this.i18nLabels.slashSearchPlaceholder:``),(e=this.popover)==null||e.filterItems(r)},this.api=e,this.tools=n,this.i18nLabels=r,this.i18n=i,this.triggerElement=a,this.leftAlignElement=o,this.enableShortcuts(),this.nodes={toolbox:t.Pn.make(`div`)},this.nodes.toolbox.setAttribute(`data-blok-testid`,`toolbox`),this.initPopover(),this.api.events.on(g,this.handleMobileLayoutToggle)}updateLeftAlignElement(e){this.leftAlignElement=e,this.popover!==null&&`setLeftAlignElement`in this.popover&&this.popover.setLeftAlignElement(e)}setCalloutBackground(e){var t;let n=(t=this.popover)==null?void 0:t.getElement();n&&(e?n.style.setProperty(`--blok-search-input-bg`,`light-dark(color-mix(in srgb, ${e} 70%, white), color-mix(in srgb, ${e} 85%, white))`):(n.style.removeProperty(`--blok-search-input-bg`),n.style.removeProperty(`--blok-search-input-border`)))}getElement(){return this.nodes.toolbox}contains(e){var t;return!!(this.nodes.toolbox.contains(e)||(t=this.popover)!=null&&t.getElement().contains(e))}hasFocus(){if(this.popover!==null)return`hasFocus`in this.popover?this.popover.hasFocus():void 0}destroy(){var e;super.destroy(),this.nodes&&this.nodes.toolbox&&this.nodes.toolbox.remove(),this.removeAllShortcuts(),(e=this.popover)==null||e.off(t.v.Closed,this.onPopoverClose),this.listeners.destroy(),this.api.events.off(g,this.handleMobileLayoutToggle)}async toolButtonActivated(e,t){await this.insertNewBlock(e,t)}open(e=!0){var n;if(this.isEmpty)return;let r=this.api.blocks.getCurrentBlockIndex();this.api.blocks.stopBlockMutationWatching(r);let i=this.api.blocks.getBlockByIndex(r);if(this.isInsideTableCell=i!==void 0&&i.holder.closest(`[data-blok-table-cell-blocks]`)!==null,this.isInsideTableCell&&this.toggleRestrictedToolsHidden(!0),this.popover instanceof t.g){let n=i==null?void 0:i.holder.getBoundingClientRect(),r=e?t.mn.rect:void 0,a=r!==void 0&&r.width===0&&r.height===0&&r.x===0&&r.y===0,o=r!==void 0&&!a?r:n;o!==void 0&&this.popover.updatePosition(o)}(n=this.popover)==null||n.show(),this.openedWithSlash=e,this.opened=!0,this.emit(Tu.Opened),this.startListeningToBlockInput()}close(){var e;this.isInsideTableCell&&(this.toggleRestrictedToolsHidden(!1),this.isInsideTableCell=!1),this.stopListeningToBlockInput(),(e=this.popover)==null||e.hide(),this.opened&&(this.opened=!1,this.emit(Tu.Closed))}toggle(){this.opened?this.close():this.open()}initPopover(){this.popover=new(t.Kn()?Su:t.g)({trigger:this.triggerElement||this.nodes.toolbox,leftAlignElement:this.leftAlignElement,messages:{nothingFound:this.i18nLabels.nothingFound,search:this.i18nLabels.filter},items:this.toolboxItemsToBeDisplayed,handleContentEditableNavigation:!0,minWidth:`250px`}),this.popover.on(t.v.Closed,this.onPopoverClose),this.popover.getElement().setAttribute(`data-blok-testid`,`toolbox-popover`)}destroyPopover(){this.popover!==null&&(this.popover.hide(),this.popover.off(t.v.Closed,this.onPopoverClose),this.popover.destroy(),this.popover=null),this.nodes.toolbox!==null&&(this.nodes.toolbox.innerHTML=``)}toggleRestrictedToolsHidden(e){let n=t.An();for(let t of this.toolsToBeDisplayed){if(!n.includes(t.name))continue;let a=t.toolbox;if(!a)continue;let o=Array.isArray(a)?a:[a];for(let n of o){var r,i;let a=(r=n.name)==null?t.name:r;(i=this.popover)==null||i.toggleItemHiddenByName(a,e)}}}get toolsToBeDisplayed(){if(this._toolsToBeDisplayed)return this._toolsToBeDisplayed;let e=[];return this.tools.forEach(t=>{t.toolbox&&e.push(t)}),this._toolsToBeDisplayed=e,e}get toolboxItemsToBeDisplayed(){if(this._toolboxItemsToBeDisplayed)return this._toolboxItemsToBeDisplayed;let e=(e,n,r=!0)=>{var i,a,o,s,c;let l=e.titleKey,u=l!=null&&l.includes(`.`)?l:`toolNames.${l}`,d=l?u:void 0,f=d?this.api.i18n.getEnglishTranslation(d):e.title,p=(i=e.searchTerms)==null?[]:i,m=(a=n.searchTerms)==null?[]:a,h=[...new Set([...p,...m])];for(let t of(o=e.searchTermKeys)==null?[]:o){let e=`searchTerms.${t}`;this.i18n.has(e)&&h.push(this.i18n.t(e))}let g=(s=e.shortcut)==null?r?n.shortcut:void 0:s;return{icon:e.icon,title:t.On(this.i18n,e,t.Hn(n.name)),name:(c=e.name)==null?n.name:c,onActivate:()=>{this.toolButtonActivated(n.name,e.data)},secondaryLabel:g?t.Vn(g):``,englishTitle:f,searchTerms:h}},n=this.toolsToBeDisplayed.reduce((t,n)=>{let{toolbox:r}=n;return r===void 0||(Array.isArray(r)?r:[r]).forEach((r,i)=>{t.push(e(r,n,i===0))}),t},[]);return this._toolboxItemsToBeDisplayed=n,n}enableShortcuts(){this.toolsToBeDisplayed.forEach(e=>{let t=e.shortcut;t&&this.enableShortcutForTool(e.name,t)})}enableShortcutForTool(e,t){var n=this;Z.add({name:t,on:this.api.ui.nodes.redactor,handler:async t=>{t.preventDefault();let r=n.api.blocks.getCurrentBlockIndex(),i=n.api.blocks.getBlockByIndex(r);if(i)try{let t=await n.api.blocks.convert(i.id,e);n.api.caret.setToBlock(t,`end`);return}catch(e){}await n.insertNewBlock(e)}})}removeAllShortcuts(){this.toolsToBeDisplayed.forEach(e=>{let t=e.shortcut;t&&Z.remove(this.api.ui.nodes.redactor,t)})}async insertNewBlock(e,t){var n=this,r;let i=n.api.blocks.getCurrentBlockIndex(),a=n.api.blocks.getBlockByIndex(i);if(!a)return;let o=(r=a.parentId)==null?null:r,s=a.isEmpty||n.isBlockSlashSearchOnly(a.holder)||!n.openedWithSlash,c=s?i:i+1,l=t!==void 0&&Object.keys(t).length>0?Object.assign(await n.api.blocks.composeBlockData(e),t):void 0,u=n.insertWithTransaction(()=>{s&&o!==null&&n.api.blocks.setBlockParent(a.id,null);let t=n.api.blocks.insert(e,l,void 0,c,void 0,s);return o!==null&&n.api.blocks.setBlockParent(t.id,o),t},o);n.api.caret.setToBlock(c),n.emit(Tu.BlockAdded,{block:u}),n.api.toolbar.close({setExplicitlyClosed:!1})}insertWithTransaction(e,t){let n={block:void 0};return t!==null&&this.api.blocks.transact!==void 0?this.api.blocks.transact(()=>{n.block=e()}):n.block=e(),n.block}startListeningToBlockInput(){let e=this.api.blocks.getCurrentBlockIndex(),n=this.api.blocks.getBlockByIndex(e);if(!n)return;this.currentBlockForSearch=n.holder;let r=document.activeElement;this.currentContentEditable=r instanceof HTMLElement&&r.isContentEditable&&this.currentBlockForSearch.contains(r)?r:this.currentBlockForSearch.querySelector(`[contenteditable="true"]`),this.currentContentEditable instanceof HTMLElement&&this.currentContentEditable.setAttribute(t.ur.slashSearch,this.i18nLabels.slashSearchPlaceholder),this.listeners.on(this.currentBlockForSearch,`input`,this.handleBlockInput)}stopListeningToBlockInput(){var e;this.currentBlockForSearch!==null&&(this.listeners.off(this.currentBlockForSearch,`input`,this.handleBlockInput),this.currentContentEditable instanceof HTMLElement&&this.currentContentEditable.removeAttribute(t.ur.slashSearch),this.currentBlockForSearch=null,this.currentContentEditable=null),(e=this.popover)==null||e.filterItems(``)}isBlockSlashSearchOnly(e){var t;let n=e.querySelector(`[contenteditable="true"]`);return((n==null||(t=n.textContent)==null?void 0:t.trim())||``).startsWith(`/`)}},Du=class{constructor(){this.pendingMouseUpListeners=new Set}setup(e,t,n){let r={x:e.clientX,y:e.clientY},i=e=>{document.removeEventListener(`mouseup`,i,!0),this.pendingMouseUpListeners.delete(i),!(n!=null&&n.beforeCallback&&!n.beforeCallback())&&(Math.abs(e.clientX-r.x)>10||Math.abs(e.clientY-r.y)>10||t(e))};this.pendingMouseUpListeners.add(i),document.addEventListener(`mouseup`,i,!0)}cancelPending(){this.clearPendingListeners()}destroy(){this.clearPendingListeners()}clearPendingListeners(){for(let e of this.pendingMouseUpListeners)document.removeEventListener(`mouseup`,e,!0);this.pendingMouseUpListeners.clear()}},Ou=class{constructor(e,t){this.hoveredBlockInternal=null,this.getBlok=e,this.getToolboxOpened=t.getToolboxOpened,this.openToolbox=t.openToolbox,this.openToolboxWithoutSlash=t.openToolboxWithoutSlash,this.closeToolbox=t.closeToolbox,this.moveAndOpenToolbar=t.moveAndOpenToolbar,this.onFocusBlockCaptured=t.onFocusBlockCaptured}get hoveredBlock(){return this.hoveredBlockInternal}setHoveredBlock(e){this.hoveredBlockInternal=e}make(e){let n=this.getBlok(),i=t.Pn.make(`div`,[r.t(`text-text-secondary cursor-pointer w-6 h-6 rounded-[5px] inline-flex justify-center items-center select-none`,`shrink-0`,`[&_svg]:h-[22px] [&_svg]:w-[22px]`,`can-hover:hover:bg-bg-light`,`group-data-[blok-toolbox-opened=true]:bg-bg-light`,`mobile:bg-popover-bg mobile:border mobile:border-mobile-border mobile:shadow-overlay-pane mobile:rounded-[6px] mobile:z-2`,`mobile:w-toolbox-btn-mobile mobile:h-toolbox-btn-mobile`,`group-data-[blok-rtl=true]:right-[calc(-1*(var(--spacing-toolbox-btn)))] group-data-[blok-rtl=true]:left-auto`)],{innerHTML:t.wt});i.setAttribute(`data-blok-testid`,`plus-button`),e.plusButton=i;let a=t.Un(),o=n.I18n.t(a.win?`toolbox.ctrlAddAbove`:`toolbox.optionAddAbove`);return t.cn(i,t.h([n.I18n.t(`toolbox.addBelow`),o]),{delay:500}),i}handleClick(e=!1){var n,r,i,a,o;let{BlockManager:s,BlockSettings:c,BlockSelection:l,Caret:u}=this.getBlok();if(c.opened&&c.close(),l.anyBlockSelected&&l.clearSelection(),(n=t.mn.get())==null||n.removeAllRanges(),this.getToolboxOpened()){this.closeToolbox();return}let d=this.hoveredBlockInternal,f=(d==null?void 0:d.name)===`paragraph`&&((r=d.pluginsContent.textContent)==null?void 0:r.startsWith(`/`)),p=(i=s.currentBlock)==null?null:i,m=document.activeElement,h=m!==null&&m!==document.body?(a=s.getBlockByChildNode(m))==null?null:a:null,g=d!==null&&d.isEmpty,_=!g&&p!==null&&p!==d&&p.isEmpty&&d!==null&&d.holder.contains(p.holder),v=g&&d||_&&p||null,y=d===null?s.currentBlockIndex:s.getBlockIndex(d),b=e?y:y+1,x=s.blocks.slice(b),S=e=>{var t;return((t=e.holder.parentElement)==null?void 0:t.closest(`[data-blok-testid="block-wrapper"]`))!==null},ee=!e&&d&&x.length>0?x.findIndex(e=>!S(e)):0,te=b+(ee===-1?x.length:ee),C=f?d:v==null?s.insertDefaultBlockAtIndex(te,!0):v;C!==d&&v===null&&S(C)&&(d==null||d.holder.after(C.holder));let ne=!f&&v===null?C:null;(o=this.onFocusBlockCaptured)==null||o.call(this,h,ne),f?(u.setToBlock(C,u.positions.DEFAULT,1),this.moveAndOpenToolbar(C),this.openToolbox()):(u.setToBlock(C,u.positions.START),this.moveAndOpenToolbar(C),this.openToolboxWithoutSlash())}},ku=class{constructor(){this.lastToolbarY=null,this.hoveredTarget=null}get lastY(){return this.lastToolbarY}get target(){return this.hoveredTarget}setHoveredTarget(e){this.hoveredTarget=e}resetCachedPosition(){this.lastToolbarY=null}calculateToolbarY(e,t){var n,r,i,a;let{targetBlock:o,hoveredTarget:s,isMobile:c}=e;if(!o||!t)return null;let l=o.holder.getBoundingClientRect(),u=s==null?void 0:s.closest(`[role="listitem"]`),d=u==null?void 0:u.querySelector(`[contenteditable]`),f=o.pluginsContent,p=!d&&!u?o.getToolbarAnchorElement():void 0,m=!p&&!f.matches(`[contenteditable]`)?(n=f.querySelector(`[contenteditable]`))==null?null:n:null,h=(r=(i=(a=d==null?u:d)==null?p:a)==null?m:i)==null?f:r,g=h.getBoundingClientRect().top-l.top,_=window.getComputedStyle(h),v=parseInt(_.paddingTop,10)||0,y=parseFloat(_.lineHeight)||24,b=parseInt(window.getComputedStyle(t).height,10);return c?g-b:g+v+y/2-b/2}moveToY(e,t){let{wrapper:n}=e;if(!n)return null;let r=Math.floor(t);return this.lastToolbarY=r,n.style.top=`${r}px`,r}repositionToolbar(e,t,n){let{wrapper:r}=e;if(!r||!n)return!1;let i=this.calculateToolbarY(t,n);if(i===null)return!1;let a=this.lastToolbarY===null||Math.abs(i-this.lastToolbarY)>2;return a&&(this.lastToolbarY=i,r.style.top=`${i}px`),a}applyContentOffset(e,t){let{actions:n}=e;if(!n)return;if(!this.hoveredTarget){n.style.transform=``;return}let r=t.getContentOffset(this.hoveredTarget),i=r&&r.left>0;n.style.transform=i?`translateX(${r.left}px)`:``}},Au=class{constructor(e,t,n){this.ignoreNextSettingsMouseUp=!1,this.settingsTogglerElement=null,this.hoveredBlockInternal=null,this.getBlok=e,this.clickDragHandler=t,this.setHoveredBlockCallback=n.setHoveredBlock,this.getToolboxOpened=n.getToolboxOpened,this.closeToolbox=n.closeToolbox}get hoveredBlock(){return this.hoveredBlockInternal}setHoveredBlock(e){this.hoveredBlockInternal=e}skipNextToggle(){this.ignoreNextSettingsMouseUp=!0}make(e){let n=this.getBlok(),i=t.Pn.make(`span`,[r.t(`text-text-secondary cursor-pointer w-[22px] h-6 rounded-[5px] inline-flex justify-center items-center select-none`,`[&_svg]:h-[22px] [&_svg]:w-[22px]`,`active:cursor-grabbing`,`can-hover:hover:bg-bg-light can-hover:hover:cursor-grab`,`can-hover:hover:group-data-[blok-toolbox-opened=true]:cursor-pointer`,`group-data-[blok-block-settings-opened=true]:bg-bg-light`,`can-hover:hover:group-data-[blok-block-settings-opened=true]:cursor-pointer`,`mobile:bg-popover-bg mobile:border mobile:border-mobile-border mobile:shadow-overlay-pane mobile:rounded-[6px] mobile:z-2`,`mobile:w-toolbox-btn-mobile mobile:h-toolbox-btn-mobile`),`group-data-[blok-dragging=true]:cursor-grabbing`],{innerHTML:t.yt});return i.setAttribute(t.ur.settingsToggler,``),i.setAttribute(t.ur.dragHandle,``),i.setAttribute(`data-blok-testid`,`settings-toggler`),i.setAttribute(`role`,`button`),i.setAttribute(`tabindex`,`-1`),i.setAttribute(`aria-label`,n.I18n.t(`a11y.dragHandle`)),i.setAttribute(`aria-roledescription`,n.I18n.t(`a11y.dragHandleRole`)),e.settingsToggler=i,this.settingsTogglerElement=i,t.cn(i,t.h([n.I18n.t(`blockSettings.dragToMove`),n.I18n.t(`blockSettings.clickToOpenMenu`)]),{delay:500}),i}createMousedownHandler(){return e=>{e.preventDefault(),t.sn(),this.clickDragHandler.setup(e,()=>{this.handleClick(),this.getToolboxOpened()&&this.closeToolbox()},{beforeCallback:()=>this.ignoreNextSettingsMouseUp?(this.ignoreNextSettingsMouseUp=!1,!1):!0})}}handleClick(){var e;let t=this.getBlok();t.DragManager.cancelTracking();let n=(e=this.hoveredBlockInternal)==null?t.BlockManager.currentBlock:e;if(n)if(this.hoveredBlockInternal=n,t.BlockManager.currentBlock=n,t.BlockSettings.opened)t.BlockSettings.close();else{var r;t.BlockSettings.open(n,(r=this.settingsTogglerElement)==null?void 0:r)}}},ju=()=>({toolbar:r.t(`absolute left-0 right-0 top-0 h-toolbox-btn transition-opacity duration-100 ease-linear will-change-[opacity,top]`,`pointer-events-none`),toolbarOpened:`block`,toolbarClosed:`hidden`,content:r.t(`relative mx-auto max-w-blok-content`),actions:r.t(`absolute flex opacity-0 pr-[5px]`,`right-full`,`mobile:right-auto`,`group-data-[blok-rtl=true]:right-auto group-data-[blok-rtl=true]:left-[calc(-1*(var(--spacing-toolbox-btn)))]`,`mobile:group-data-[blok-rtl=true]:ml-0 mobile:group-data-[blok-rtl=true]:mr-auto mobile:group-data-[blok-rtl=true]:pr-0 mobile:group-data-[blok-rtl=true]:pl-[10px]`),actionsOpened:`opacity-100`,plusButton:r.t(`text-dark cursor-pointer w-toolbox-btn h-toolbox-btn rounded-[7px] inline-flex justify-center items-center select-none`,`shrink-0`,`[&_svg]:h-6 [&_svg]:w-6`,`can-hover:hover:bg-bg-light`,`group-data-[blok-toolbox-opened=true]:bg-bg-light`,`mobile:bg-popover-bg mobile:border mobile:border-mobile-border mobile:shadow-overlay-pane mobile:rounded-[6px] mobile:z-2`,`mobile:w-toolbox-btn-mobile mobile:h-toolbox-btn-mobile`,`group-data-[blok-rtl=true]:right-[calc(-1*(var(--spacing-toolbox-btn)))] group-data-[blok-rtl=true]:left-auto`),plusButtonShortcutKey:`text-white`,settingsToggler:r.t(`text-dark cursor-pointer w-toolbox-btn h-toolbox-btn rounded-[7px] inline-flex justify-center items-center select-none`,`cursor-pointer select-none`,`[&_svg]:h-6 [&_svg]:w-6`,`active:cursor-grabbing`,`can-hover:hover:bg-bg-light can-hover:hover:cursor-grab`,`can-hover:hover:group-data-[blok-toolbox-opened=true]:cursor-pointer`,`group-data-[blok-block-settings-opened=true]:bg-bg-light`,`can-hover:hover:group-data-[blok-block-settings-opened=true]:cursor-pointer`,`mobile:bg-popover-bg mobile:border mobile:border-mobile-border mobile:shadow-overlay-pane mobile:rounded-[6px] mobile:z-2`,`mobile:w-toolbox-btn-mobile mobile:h-toolbox-btn-mobile`,`not-mobile:w-6`),settingsTogglerHidden:`hidden`}),Mu=class extends l{constructor({config:e,eventsDispatcher:n}){super({config:e,eventsDispatcher:n}),this.hoveredBlock=null,this.explicitlyClosed=!1,this.hoveredBlockIsFromTableCell=!1,this.toolboxInstance=null,this.preToolboxBlock=null,this.plusInsertedBlock=null,this.onBlockSettingsOpen=()=>{this.Blok.UI.nodes.wrapper.setAttribute(t.ur.blockSettingsOpened,`true`)},this.onBlockSettingsClose=()=>{this.Blok.UI.nodes.wrapper.removeAttribute(t.ur.blockSettingsOpened)},this.onBlockChanged=e=>{var t;!this.opened||!this.hoveredBlock||this.Blok.BlockSettings.opened||this.Blok.BlockSettings.isOpening||(t=this.toolboxInstance)!=null&&t.opened||e.event.detail.target.id===this.hoveredBlock.id&&this.repositionToolbar()},this.positioner=new ku,this.clickDragHandler=new Du,this.plusButtonHandler=new Ou(()=>this.Blok,{getToolboxOpened:()=>{var e;return(e=this.toolbox.opened)==null?!1:e},openToolbox:()=>this.toolbox.open(),openToolboxWithoutSlash:()=>this.toolbox.openWithoutSlash(),closeToolbox:()=>this.toolbox.close(),moveAndOpenToolbar:(e,t)=>this.moveAndOpen(e,t),onFocusBlockCaptured:(e,t)=>{this.preToolboxBlock=e,this.plusInsertedBlock=t}}),this.settingsTogglerHandler=new Au(()=>this.Blok,this.clickDragHandler,{setHoveredBlock:e=>{this.hoveredBlock=e},getToolboxOpened:()=>{var e;return(e=this.toolbox.opened)==null?!1:e},closeToolbox:()=>this.toolbox.close()})}get CSS(){return ju()}get opened(){var e,t;return(e=(t=this.nodes.wrapper)==null?void 0:t.classList.contains(this.CSS.toolbarOpened))==null?!1:e}contains(e){var t,n;return!!((t=this.nodes.wrapper)!=null&&t.contains(e)||(n=this.toolboxInstance)!=null&&n.contains(e)||this.Blok.BlockSettings.contains(e))}get toolbox(){var e;return{opened:(e=this.toolboxInstance)==null?void 0:e.opened,close:()=>{var e;(e=this.toolboxInstance)==null||e.close()},openWithoutSlash:()=>{if(this.toolboxInstance===null){t.ir(`toolbox.openWithoutSlash() called before initialization is finished`,`warn`);return}if(this.hoveredBlock&&!this.hoveredBlockIsFromTableCell){let e=this.Blok.BlockManager.currentBlock;e!==void 0&&e.holder.closest(`[data-blok-table-cell-blocks]`)!==null||(this.Blok.BlockManager.currentBlock=this.hoveredBlock)}this.toolboxInstance.open(!1)},open:()=>{if(this.toolboxInstance===null){t.ir(`toolbox.open() called before initialization is finished`,`warn`);return}if(this.hoveredBlock&&!this.hoveredBlockIsFromTableCell){let e=this.Blok.BlockManager.currentBlock;e!==void 0&&e.holder.closest(`[data-blok-table-cell-blocks]`)!==null||(this.Blok.BlockManager.currentBlock=this.hoveredBlock)}this.toolboxInstance.open()},toggle:()=>{if(this.toolboxInstance===null){t.ir(`toolbox.toggle() called before initialization is finished`,`warn`);return}this.toolboxInstance.toggle()},hasFocus:()=>{var e;return(e=this.toolboxInstance)==null?void 0:e.hasFocus()}}}get blockActions(){return{hide:()=>{var e,t;(e=this.nodes.actions)==null||e.classList.remove(this.CSS.actionsOpened),(t=this.nodes.actions)==null||t.removeAttribute(`data-blok-opened`),this.nodes.actions&&(this.nodes.actions.style.pointerEvents=`none`)},show:()=>{var e,t;(e=this.nodes.actions)==null||e.classList.add(this.CSS.actionsOpened),(t=this.nodes.actions)==null||t.setAttribute(`data-blok-opened`,`true`),this.nodes.actions&&(this.nodes.actions.style.pointerEvents=`auto`)}}}get blockTunesToggler(){return{hide:()=>{var e;return(e=this.nodes.settingsToggler)==null?void 0:e.classList.add(this.CSS.settingsTogglerHidden)},show:()=>{var e;return(e=this.nodes.settingsToggler)==null?void 0:e.classList.remove(this.CSS.settingsTogglerHidden)}}}toggleReadOnly(e){var t=this;e?(this.destroy(),this.Blok.BlockSettings.destroy(),this.disableModuleBindings()):window.requestIdleCallback(async()=>{await t.drawUI(),t.enableModuleBindings()},{timeout:2e3})}moveAndOpen(e,n){if(this.toolboxInstance===null){t.ir(`Can't open Toolbar since Blok initialization is not finished yet`,`warn`);return}this.explicitlyClosed=!1,this.toolboxInstance.opened&&this.toolboxInstance.close(),this.Blok.BlockSettings.opened&&this.Blok.BlockSettings.close();let r=e==null?this.Blok.BlockManager.currentBlock:e;if(!r)return;let i=n instanceof Element&&n.closest(`[data-blok-table-cell-blocks]`)!==null,a=r.holder.closest(`[data-blok-table-cell-blocks]`)!==null;this.hoveredBlockIsFromTableCell=i||a;let o=this.resolveTableCellBlock(r);this.hoveredBlock&&this.hoveredBlock!==o&&this.hoveredBlock.cleanupDraggable(),this.hoveredBlock=o,this.plusButtonHandler.setHoveredBlock(o),this.settingsTogglerHandler.setHoveredBlock(o),this.positioner.setHoveredTarget(n==null?null:n),this.positioner.resetCachedPosition();let{wrapper:s,plusButton:c,settingsToggler:l}=this.nodes;if(!s||!c)return;let u=this.isFirstChildOfCallout(o);c.style.display=u?`none`:``,l&&(l.style.display=u?`none`:``);let d=o.name===`callout`,f=u||d?null:this.getCalloutBackgroundColor(o);f===null?s.style.removeProperty(`--blok-bg-light`):s.style.setProperty(`--blok-bg-light`,`light-dark(color-mix(in srgb, ${f} 70%, white), color-mix(in srgb, ${f} 85%, white))`);let p=o.holder,{isMobile:m}=this.Blok.UI,h=this.positioner.calculateToolbarY({targetBlock:o,hoveredTarget:n==null?null:n,isMobile:m},c);if(h===null)return;this.positioner.moveToY(this.nodes,h),p.appendChild(s),l&&!this.Blok.ReadOnly.isEnabled&&o.setupDraggable(l,this.Blok.DragManager);let g=p.querySelector(`[${t.ur.elementContent}]`);g&&this.toolboxInstance.updateLeftAlignElement(g),this.positioner.applyContentOffset(this.nodes,o);let _=o.getTunes(),v=_.toolTunes.length>0||_.commonTunes.length>0;this.Blok.BlockManager.blocks.length===1&&o.isEmpty&&!v?this.blockTunesToggler.hide():this.blockTunesToggler.show(),this.open();let y=o.name===`header`&&o.holder.querySelector(`[data-blok-toggle-arrow]`)!==null;if((o.name===`callout`||o.name===`toggle`||y)&&this.nodes.actions&&(this.nodes.actions.style.pointerEvents=`none`,this.restoreSettingsTogglerForLeftEdgeBlock(o)),g&&this.nodes.content){var b,x,S;let e=(b=this.nodes.wrapper)==null?void 0:b.getBoundingClientRect(),t=g.getBoundingClientRect(),n=e?Math.max(0,t.left-e.left):0,r=(x=(S=this.nodes.actions)==null?void 0:S.offsetWidth)==null?0:x,i=e?Math.max(0,e.left):0,a=Math.max(0,r-i);this.nodes.content.style.marginLeft=`${Math.max(n,a)}px`,this.nodes.content.style.maxWidth=`${t.width}px`}}moveAndOpenForMultipleBlocks(e){if(this.Blok.BlockSettings.opened||this.Blok.BlockSettings.isOpening)return;let n=this.Blok.BlockSelection.selectedBlocks;if(n.length<2)return;if(this.toolboxInstance===null){t.ir(`Can't open Toolbar since Blok initialization is not finished yet`,`warn`);return}this.toolboxInstance.opened&&this.toolboxInstance.close(),this.explicitlyClosed=!1;let r=e==null?n[0]:e;this.hoveredBlock&&this.hoveredBlock!==r&&this.hoveredBlock.cleanupDraggable(),this.hoveredBlock=r,this.plusButtonHandler.setHoveredBlock(r),this.settingsTogglerHandler.setHoveredBlock(r),this.positioner.setHoveredTarget(null),this.positioner.resetCachedPosition();let{wrapper:i,plusButton:a,settingsToggler:o}=this.nodes;if(!i||!a)return;a.style.display=``,a.style.color=``,o&&(o.style.display=``,o.style.color=``);let s=r.holder,c=this.positioner.calculateToolbarY({targetBlock:r,hoveredTarget:null,isMobile:!1},a);if(c===null)return;this.positioner.moveToY(this.nodes,c),s.appendChild(i),o&&!this.Blok.ReadOnly.isEnabled&&r.setupDraggable(o,this.Blok.DragManager);let l=s.querySelector(`[${t.ur.elementContent}]`);if(l&&this.toolboxInstance.updateLeftAlignElement(l),this.positioner.applyContentOffset(this.nodes,r),this.blockTunesToggler.show(),this.open(),l&&this.nodes.content){var u,d,f;let e=(u=this.nodes.wrapper)==null?void 0:u.getBoundingClientRect(),t=l.getBoundingClientRect(),n=e?Math.max(0,t.left-e.left):0,r=(d=(f=this.nodes.actions)==null?void 0:f.offsetWidth)==null?0:d,i=e?Math.max(0,e.left):0,a=Math.max(0,r-i);this.nodes.content.style.marginLeft=`${Math.max(n,a)}px`,this.nodes.content.style.maxWidth=`${t.width}px`}}close(e){var t,n,r,i;this.Blok.ReadOnly.isEnabled||((t=this.nodes.wrapper)==null||t.classList.remove(this.CSS.toolbarOpened),(n=this.nodes.wrapper)==null||n.classList.add(this.CSS.toolbarClosed),(r=this.nodes.wrapper)==null||r.removeAttribute(`data-blok-opened`),this.blockActions.hide(),(i=this.toolboxInstance)==null||i.close(),this.Blok.BlockSettings.close(),this.hoveredBlock=null,this.hoveredBlockIsFromTableCell=!1,(e==null?void 0:e.setExplicitlyClosed)!==!1&&(this.explicitlyClosed=!0,this.Blok.UI.resetBlockHoverState()),this.nodes.plusButton&&(this.nodes.plusButton.style.display=``,this.nodes.plusButton.style.color=``),this.nodes.settingsToggler&&(this.nodes.settingsToggler.style.display=``,this.nodes.settingsToggler.style.color=``),this.nodes.actions&&(this.nodes.actions.style.transform=``),this.nodes.content&&(this.nodes.content.style.marginLeft=``,this.nodes.content.style.maxWidth=``),this.positioner.setHoveredTarget(null),this.reset())}skipNextSettingsToggle(){this.settingsTogglerHandler.skipNextToggle()}hideBlockActions(){this.blockActions.hide()}resetExplicitlyClosed(){this.explicitlyClosed=!1}isFirstChildOfCallout(e){if(!e.parentId)return!1;let t=this.Blok.BlockManager.getBlockById(e.parentId);return!t||t.name!==`callout`?!1:t.contentIds[0]===e.id}getCalloutBackgroundColor(e){let t=this.resolveCalloutBlock(e);if(!t)return null;try{return t.pluginsContent.style.backgroundColor||null}catch(e){return null}}resolveCalloutBlock(e){if(e.name===`callout`)return e;if(!e.parentId)return null;let t=this.Blok.BlockManager.getBlockById(e.parentId);return!t||t.name!==`callout`?null:t}updateToolbarButtonsForCalloutFirstChild(){let{plusButton:e,settingsToggler:t}=this.nodes;if(!e)return;let n=this.hoveredBlock!==null&&this.isFirstChildOfCallout(this.hoveredBlock);e.style.display=n?`none`:``,t&&(t.style.display=n?`none`:``)}restoreSettingsTogglerForLeftEdgeBlock(e){this.nodes.settingsToggler&&(this.nodes.settingsToggler.style.pointerEvents=`auto`)}resolveTableCellBlock(e){var t;let n=e.holder.closest(`[data-blok-table-cell-blocks]`);if(!n)return e;let r=n.closest(`[data-blok-testid="block-wrapper"]`);return r?(t=this.Blok.BlockManager.getBlockByChildNode(r))==null?e:t:e}reset(){this.positioner.resetCachedPosition(),this.nodes.wrapper&&(this.nodes.wrapper.style.top=`unset`,this.Blok.UI.nodes.wrapper.appendChild(this.nodes.wrapper))}open(e=!0){var t,n,r;(t=this.nodes.wrapper)==null||t.classList.remove(this.CSS.toolbarClosed),(n=this.nodes.wrapper)==null||n.classList.add(this.CSS.toolbarOpened),(r=this.nodes.wrapper)==null||r.setAttribute(`data-blok-opened`,`true`),e?this.blockActions.show():this.blockActions.hide()}async make(){var e=this;let n=t.Pn.make(`div`,[e.CSS.toolbar,e.CSS.toolbarClosed,`group-data-[blok-dragging=true]:pointer-events-none`]);e.nodes.wrapper=n,n.setAttribute(t.ur.toolbar,``),n.setAttribute(`data-blok-testid`,`toolbar`);let r=t.Pn.make(`div`,e.CSS.content),i=t.Pn.make(`div`,[e.CSS.actions]);i.style.pointerEvents=`none`,e.nodes.content=r,e.nodes.actions=i,i.setAttribute(`data-blok-testid`,`toolbar-actions`),t.Pn.append(n,r),t.Pn.append(r,i);let a=e.plusButtonHandler.make(e.nodes);t.Pn.append(i,a);let o=e.settingsTogglerHandler.make(e.nodes);t.Pn.append(i,o),t.Pn.append(i,e.makeToolbox());let s=e.Blok.BlockSettings.getElement();if(!s)throw Error(`Block Settings element was not created`);t.Pn.append(i,s),t.Pn.append(e.Blok.UI.nodes.wrapper,n)}makeToolbox(){this.toolboxInstance=new Eu({api:this.Blok.API.methods,tools:this.Blok.Tools.blockTools,i18nLabels:{filter:this.Blok.I18n.t(`popover.search`),nothingFound:this.Blok.I18n.t(`popover.nothingFound`),slashSearchPlaceholder:this.Blok.I18n.t(`toolbox.typeToSearch`)},i18n:this.Blok.I18n,triggerElement:this.nodes.plusButton}),this.toolboxInstance.on(Tu.Opened,()=>{var e;this.Blok.UI.nodes.wrapper.classList.add(this.CSS.openedToolboxHolderModifier),this.Blok.UI.nodes.wrapper.setAttribute(t.ur.toolboxOpened,`true`);let n=this.hoveredBlock===null?null:this.getCalloutBackgroundColor(this.hoveredBlock);(e=this.toolboxInstance)==null||e.setCalloutBackground(n)}),this.toolboxInstance.on(Tu.Closed,()=>{if(this.Blok.UI.nodes.wrapper.classList.remove(this.CSS.openedToolboxHolderModifier),this.Blok.UI.nodes.wrapper.removeAttribute(t.ur.toolboxOpened),this.preToolboxBlock!==null){let e=this.preToolboxBlock;if(this.preToolboxBlock=null,this.plusInsertedBlock!==null){let t=this.plusInsertedBlock;this.plusInsertedBlock=null,this.Blok.BlockManager.removeBlock(t,!1).then(()=>{e.inputs.length>0&&this.Blok.Caret.setToBlock(e,this.Blok.Caret.positions.END)})}else e.inputs.length>0&&this.Blok.Caret.setToBlock(e,this.Blok.Caret.positions.END);return}let e=this.Blok.BlockManager.currentBlock;e&&e.inputs.length>0&&this.Blok.Caret.setToBlock(e,this.Blok.Caret.positions.END)}),this.toolboxInstance.on(Tu.BlockAdded,({block:e})=>{this.preToolboxBlock=null,this.plusInsertedBlock=null;let{BlockManager:t,Caret:n}=this.Blok,r=t.getBlockById(e.id);if(!r||r.inputs.length!==0)return;if(r===t.lastBlock){t.insertAtEnd(),n.setToBlock(t.lastBlock);return}let i=t.nextBlock;i&&n.setToBlock(i)});let e=this.toolboxInstance.getElement();if(e===null)throw Error(`Toolbox element was not created`);return e}enableModuleBindings(){let e=this.nodes.plusButton;e&&this.readOnlyMutableListeners.on(e,`mousedown`,e=>{e.preventDefault(),t.sn(),this.clickDragHandler.setup(e,e=>{let n=t.Un().win?e.ctrlKey:e.altKey;this.plusButtonHandler.handleClick(n)})},!0);let n=this.nodes.settingsToggler;n&&this.readOnlyMutableListeners.on(n,`mousedown`,this.settingsTogglerHandler.createMousedownHandler(),!0),this.readOnlyMutableListeners.on(this.Blok.UI.nodes.wrapper,`focusin`,()=>{this.updateToolbarButtonsForCalloutFirstChild()}),t.Kn()||this.eventsDispatcher.on(wu,e=>{var t;if(this.Blok.DragManager.isDragging||this.Blok.RectangleSelection.isRectActivated()||this.Blok.RectangleSelection.isMouseDownWithinBounds)return;let n=e.block,r=e.target;if(!(n instanceof re)||this.Blok.BlockSettings.opened||this.Blok.BlockSettings.isOpening||(t=this.toolboxInstance)!=null&&t.opened)return;if(this.explicitlyClosed){if(this.hoveredBlock!==null&&this.hoveredBlock===n)return;this.explicitlyClosed=!1}let i=this.Blok.BlockSelection.selectedBlocks,a=i.length>1,o=a&&i.some(e=>e===n);if(a&&o){this.moveAndOpenForMultipleBlocks(n);return}a||this.moveAndOpen(n,r)}),this.eventsDispatcher.on(h,this.onBlockSettingsOpen),this.eventsDispatcher.on(m,this.onBlockSettingsClose),this.eventsDispatcher.on(p,this.onBlockChanged)}disableModuleBindings(){this.readOnlyMutableListeners.clearAll(),this.eventsDispatcher.off(h,this.onBlockSettingsOpen),this.eventsDispatcher.off(m,this.onBlockSettingsClose),this.eventsDispatcher.off(p,this.onBlockChanged)}repositionToolbar(){!this.hoveredBlock||!this.nodes.plusButton||this.positioner.repositionToolbar(this.nodes,{targetBlock:this.hoveredBlock,hoveredTarget:this.positioner.target,isMobile:this.Blok.UI.isMobile},this.nodes.plusButton)}async drawUI(){var e=this;e.Blok.BlockSettings.make(),await e.make()}destroy(){this.removeAllNodes(),this.toolboxInstance&&this.toolboxInstance.destroy(),this.clickDragHandler.destroy()}},Nu=class{constructor(e,t){this.getPopover=e,this.closeToolbar=t}get hasFlipperFocus(){var e,t,n,r;let i=this.getPopover();if(i===null)return!1;let a=(e=(t=i.flipper)==null?void 0:t.hasFocus())==null?!1:e,o=i.nestedPopover,s=(n=o==null||(r=o.flipper)==null?void 0:r.hasFocus())==null?!1:n;return a||s}get hasNestedPopoverOpen(){let e=this.getPopover();return e===null?!1:e.hasNestedPopoverOpen}closeNestedPopover(){let e=this.getPopover();return e===null||!e.hasNestedPopoverOpen?!1:(e.closeNestedPopover(),!0)}handle(e,t){var n,r,i,a;let o=e.key===`ArrowDown`||e.key===`ArrowUp`,s=e.key===`ArrowLeft`||e.key===`ArrowRight`,c=this.getPopover(),l=(n=c==null||(r=c.flipper)==null?void 0:r.hasFocus())==null?!1:n,u=c===null?null:c.nestedPopover,d=u!=null,f=(i=u==null||(a=u.flipper)==null?void 0:a.hasFocus())==null?!1:i;if(o&&!e.shiftKey&&t&&!(l||d||f)){this.closeToolbar();return}if(s&&t&&l){e.preventDefault(),e.stopPropagation();return}}isShiftArrow(e){return e.shiftKey&&(e.key===`ArrowDown`||e.key===`ArrowUp`)}},Pu=class{constructor(e,t){this.initialized=!1,this.initializationScheduled=!1,this.getBlok=e,this.initialize=t}get isInitialized(){return this.initialized}markInitialized(){this.initialized=!0}get isScheduled(){return this.initializationScheduled}schedule(){if(this.initialized||this.initializationScheduled)return;this.initializationScheduled=!0;let e=()=>{this.initializationScheduled=!1,this.doInitialize()},t=()=>{typeof window<`u`?window.setTimeout(e,0):e()};typeof window<`u`&&`requestIdleCallback`in window?window.requestIdleCallback(()=>{t()},{timeout:2e3}):t()}doInitialize(){var e;if(this.initialized)return;let{UI:t}=this.getBlok();if((t==null||(e=t.nodes)==null?void 0:e.wrapper)===void 0){this.initializationScheduled=!1,this.schedule();return}this.initialize(),this.initialized=!0}},Fu=class{constructor(e,t){this.getBlok=e,this.getI18n=t}async build(e){var n=this;let r=[],i=Array.from(e.entries());for(let[e,[a,o]]of i.entries()){let i=await o.render(),{Tools:s}=n.getBlok(),c=s.inlineTools.get(a.name),l=c==null?void 0:c.shortcut,u=l===void 0?void 0:t.Vn(l),d=t.Dn(n.getI18n(),a.titleKey,a.title||t.Hn(a.name)),f=Array.isArray(i)?i:[i],p=e===0;for(let e of f){let t=n.processPopoverItem(e,a.name,d,u,p);r.push(...t)}}return r}processPopoverItem(e,r,i,a,o){let s=[],c={name:r,hint:{title:i,description:a}};if(e instanceof HTMLElement)return s;if(e.type===t.pn.Html)return s.push(n.t(n.t(n.t({},c),e),{},{type:t.pn.Html})),s;if(e.type===t.pn.Separator)return s.push({type:t.pn.Separator}),s;let l=n.t(n.t(n.t({},c),e),{},{type:t.pn.Default});return s.push(l),`children`in l&&o&&s.push({type:t.pn.Separator}),s}},Iu=class{constructor(e){this.toolbarVerticalMargin=e?20:6}apply(e){let{wrapper:t,selectionRect:n,wrapperOffset:r,contentRect:i,popoverWidth:a}=e,o={x:n.x-r.x,y:n.y+n.height-r.top+this.toolbarVerticalMargin};o.x+a+r.x>i.right&&(o.x=i.right-a-r.x),t.style.left=Math.floor(o.x)+`px`,t.style.top=Math.floor(o.y)+`px`}},Lu=class{constructor(e){this.getBlok=e}canShow(){let e=[`IMG`,`INPUT`],n=this.resolveSelection(),r=t.mn.text;if(!n||!n.anchorNode)return{allowed:!1,reason:`Selection is null or has no anchor node`};if(n.isCollapsed||r.length<1)return{allowed:!1,reason:`Selection is collapsed or empty`};let i=t.Pn.isElement(n.anchorNode)?n.anchorNode:n.anchorNode.parentElement;if(i===null)return{allowed:!1,reason:`Target element is null`};if(e.includes(i.tagName))return{allowed:!1,reason:`Target tag ${i.tagName} conflicts with selection`};let a=t.Pn.isElement(n.anchorNode)?n.anchorNode:n.anchorNode.parentElement,{BlockManager:o}=this.getBlok(),s=a?o.getBlock(a):null,c=s==null?o.currentBlock:s;if(c==null)return{allowed:!1,reason:`Current block is null or undefined`};if(!this.getTools().some(e=>c.tool.inlineTools.has(e.name)))return{allowed:!1,reason:`No inline tools available for current block`};let l=`[contenteditable]`;if(i.closest(l)!==null)return{allowed:!0};let u=c.holder;if(u&&(u.matches(l)?u:u.closest(l)))return{allowed:!0};let{ReadOnly:d}=this.getBlok();return d.isEnabled?t.mn.isSelectionAtBlok(n)?{allowed:!0}:{allowed:!1,reason:`Read-only mode and selection not at Blok`}:{allowed:!1,reason:`Target is not contenteditable`}}getTools(){var e;let{BlockManager:n,ReadOnly:r}=this.getBlok(),i=(e=n.currentBlock)==null?(()=>{let e=this.resolveSelection(),r=e==null?void 0:e.anchorNode;if(!r)return null;let i=t.Pn.isElement(r)?r:r.parentElement;return i?n.getBlock(i):null})():e;return i?Array.from(i.tool.inlineTools.values()).filter(e=>!(r.isEnabled&&!e.isReadOnlySupported)):[]}resolveSelection(){let e=t.mn.selection;if(e!==void 0)return e;let n=t.mn.instance;return n===void 0?t.mn.get():n}},Ru=function(e){return e[e.Block=0]=`Block`,e[e.Inline=1]=`Inline`,e[e.Tune=2]=`Tune`,e}({}),zu=new Set([`class`,`inlineToolbar`,`tunes`,`shortcut`,`toolbox`,`config`,`isInternal`]),Bu=function(e){return e.Shortcut=`shortcut`,e.Toolbox=`toolbox`,e.EnabledInlineTools=`inlineToolbar`,e.EnabledBlockTunes=`tunes`,e.Config=`config`,e}({}),Vu=function(e){return e.Shortcut=`shortcut`,e.SanitizeConfig=`sanitize`,e}({}),Hu=function(e){return e.IsEnabledLineBreaks=`enableLineBreaks`,e.Toolbox=`toolbox`,e.ConversionConfig=`conversionConfig`,e.IsReadOnlySupported=`isReadOnlySupported`,e.PasteConfig=`pasteConfig`,e}({}),Uu=function(e){return e.IsInline=`isInline`,e.Title=`title`,e.IsReadOnlySupported=`isReadOnlySupported`,e}({}),Wu=function(e){return e.IsTune=`isTune`,e}({}),Gu=class{constructor({name:e,constructable:t,config:n,api:r,isDefault:i,isInternal:a=!1,defaultPlaceholder:o}){this.api=r,this.name=e,this.constructable=t,this.config=n,this.isDefault=i,this.isInternal=a,this.defaultPlaceholder=o}get settings(){var e;let t=(e=this.config[Bu.Config])==null?{}:e,r={};for(let e of Object.keys(this.config))zu.has(e)||(r[e]=this.config[e]);let i=n.t(n.t({},t),r);return this.isDefault&&!(`placeholder`in i)&&this.defaultPlaceholder&&(i.placeholder=this.defaultPlaceholder),i}reset(){if(t.$n(this.constructable.reset))return this.constructable.reset()}prepare(){let e=this.constructable.prepare;if(!t.$n(e))return;let n={toolName:this.name,config:this.settings};return e.call(this.constructable,n)}get shortcut(){let e=this.constructable[Vu.Shortcut];return this.config[Bu.Shortcut]||e}get sanitizeConfig(){return this.constructable[Vu.SanitizeConfig]||{}}isInline(){return this.type===Ru.Inline}isBlock(){return this.type===Ru.Block}isTune(){return this.type===Ru.Tune}},Ku=class{constructor(e,t){this.registeredShortcuts=new Map,this.shortcutsRegistered=!1,this.shortcutRegistrationScheduled=!1,this.getBlok=e,this.onShortcutPressed=t}tryRegisterShortcuts(){if(this.shortcutsRegistered)return;let{Tools:e}=this.getBlok();if(e===void 0){this.scheduleShortcutRegistration();return}this.registerInitialShortcuts()&&(this.shortcutsRegistered=!0)}getShortcut(e){let{Tools:t}=this.getBlok(),n=t.inlineTools.get(e),r=t.internal.inlineTools;if(Array.from(r.keys()).includes(e)){var i;return(i=this.inlineTools[e])==null?void 0:i[Vu.Shortcut]}return n==null?void 0:n.shortcut}hasShortcut(e){return this.registeredShortcuts.has(e)}destroy(){for(let[,e]of this.registeredShortcuts.entries())Z.remove(document,e);this.registeredShortcuts.clear(),this.shortcutsRegistered=!1}registerInitialShortcuts(){let{Tools:e}=this.getBlok(),t=e==null?void 0:e.inlineTools;if(!t)return this.scheduleShortcutRegistration(),!1;let n=Array.from(t.keys());return n.length===0?(this.scheduleShortcutRegistration(),!1):(n.forEach(e=>{let t=this.getShortcut(e);this.tryEnableShortcut(e,t)}),!0)}tryEnableShortcut(e,t){if(t!==void 0)try{this.enableShortcuts(e,t)}catch(e){}}enableShortcuts(e,t){let n=this.registeredShortcuts.get(e);n!==t&&(this.isShortcutTakenByAnotherTool(e,t)||(n!==void 0&&(Z.remove(document,n),this.registeredShortcuts.delete(e)),Z.add({name:t,handler:t=>{var n,r;let{BlockManager:i}=this.getBlok(),a=(n=i.currentBlock)==null?i.getBlockByChildNode((r=window.getSelection())==null?void 0:r.anchorNode):n;a&&a.tool.enabledInlineTools!==!1&&(t.preventDefault(),this.onShortcutPressed(e))},on:document}),this.registeredShortcuts.set(e,t)))}isShortcutTakenByAnotherTool(e,t){return Array.from(this.registeredShortcuts.entries()).some(([n,r])=>n!==e&&r===t)}scheduleShortcutRegistration(){if(this.shortcutsRegistered||this.shortcutRegistrationScheduled)return;this.shortcutRegistrationScheduled=!0;let e=()=>{this.shortcutRegistrationScheduled=!1,this.tryRegisterShortcuts()};typeof window<`u`&&typeof window.setTimeout==`function`?window.setTimeout(e,0):e()}get inlineTools(){let{Tools:e}=this.getBlok(),t={};return Array.from(e.inlineTools.entries()).forEach(([e,n])=>{t[e]=n.create()}),t}},qu=class{constructor(e){this.getBlok=e}getAvailableTools(){let{ReadOnly:e}=this.getBlok(),t=this.getCurrentBlock();return t?Array.from(t.tool.inlineTools.values()).filter(t=>!(e.isEnabled&&!t.isReadOnlySupported)):[]}createInstances(e){let t=new Map;return e.forEach(e=>{let n=e.create();t.set(e,n)}),t}getToolShortcut(e){let{Tools:t}=this.getBlok(),n=t.inlineTools.get(e),r=t.internal.inlineTools;if(Array.from(r.keys()).includes(e)){var i;return(i=this.inlineTools[e])==null?void 0:i[Vu.Shortcut]}return n==null?void 0:n.shortcut}getCurrentBlock(){var e;let{BlockManager:n}=this.getBlok();return(e=n.currentBlock)==null?(()=>{let e=this.resolveSelection(),r=e==null?void 0:e.anchorNode;if(!r)return null;let i=t.Pn.isElement(r)?r:r.parentElement;return i?n.getBlock(i):null})():e}resolveSelection(){let e=t.mn.selection;if(e!==void 0)return e;let n=t.mn.instance;return n===void 0?t.mn.get():n}get inlineTools(){let{Tools:e}=this.getBlok(),t={};return Array.from(e.inlineTools.entries()).forEach(([e,n])=>{t[e]=n.create()}),t}},Ju=class extends l{get hasNestedPopoverOpen(){return this.keyboardHandler.hasNestedPopoverOpen}closeNestedPopover(){return this.keyboardHandler.closeNestedPopover()}get hasFlipperFocus(){return this.keyboardHandler.hasFlipperFocus}constructor({config:e,eventsDispatcher:n}){super({config:e,eventsDispatcher:n}),this.opened=!1,this.popover=null,this.openingPromise=null,this.selection=new t.mn,this.tools=new Map,this.positioner=new Iu(t.Kn());let r=()=>this.Blok;this.shortcutManager=new Ku(r,e=>this.activateToolByShortcut(e)),this.toolsManager=new qu(r),this.selectionValidator=new Lu(r),this.popoverBuilder=new Fu(r,()=>this.Blok.I18n),this.keyboardHandler=new Nu(()=>this.popover,()=>this.close()),this.lifecycleManager=new Pu(r,()=>this.initialize()),this.listeners.on(window,`keydown`,e=>{let t=e;this.keyboardHandler.handle(t,this.opened),this.keyboardHandler.isShiftArrow(t)&&this.tryToShow()},!0),this.lifecycleManager.schedule(),this.shortcutManager.tryRegisterShortcuts()}set state(e){super.state=e,this.shortcutManager.tryRegisterShortcuts()}initialize(){this.lifecycleManager.isInitialized||(this.make(),this.shortcutManager.tryRegisterShortcuts(),this.lifecycleManager.markInitialized())}async tryToShow(e=!1){var t=this;e&&t.close(),t.initialize();let{allowed:n}=t.selectionValidator.canShow();if(n){t.openingPromise=t.open();try{await t.openingPromise}catch(e){if(t.opened=!1,t.popover){var r,i,a,o;(r=(i=t.popover).hide)==null||r.call(i),(a=(o=t.popover).destroy)==null||a.call(o),t.popover=null}return}finally{t.openingPromise=null}t.Blok.Toolbar.hideBlockActions()}}close(){var e;if(!this.opened)return;if(this.tools=new Map,this.opened=!1,this.openingPromise=null,this.selection.clearFakeBackground(),this.popover){var t,n,r,i;(t=(n=this.popover).hide)==null||t.call(n),(r=(i=this.popover).destroy)==null||r.call(i),this.popover=null}this.nodes.wrapper&&(this.nodes.wrapper.innerHTML=``);let a=gu.mock,o=a==null||(e=a.results)==null||(e=e.at(-1))==null?void 0:e.value;if(o){var s,c;(s=o.hide)==null||s.call(o),(c=o.destroy)==null||c.call(o)}}containsNode(e){return this.nodes.wrapper===void 0?!1:!!(this.nodes.wrapper.contains(e)||this.popover!==null&&this.popover.hasNode(e))}destroy(){if(this.popover){var e,t,n,r;(e=(t=this.popover).hide)==null||e.call(t),(n=(r=this.popover).destroy)==null||n.call(r),this.popover=null}this.shortcutManager.destroy(),this.removeAllNodes()}make(){this.nodes.wrapper=t.Pn.make(`div`,r.n(`absolute top-0 left-0 z-3 opacity-100 visible`,`transition-opacity duration-250 ease-out`,`will-change-[opacity,left,top]`,`**:[[hidden]]:hidden!`)),this.nodes.wrapper.setAttribute(t.ur.interface,t._n),this.nodes.wrapper.setAttribute(`data-blok-testid`,`inline-toolbar`),t.Pn.append(this.Blok.UI.nodes.wrapper,this.nodes.wrapper)}async open(){var e=this,t,n,r,i,a,o,s,c,l,u,d,f;if(e.opened)return;if(e.initialize(),e.opened=!0,e.popover){var p,m,h,g;(p=(m=e.popover).hide)==null||p.call(m),(h=(g=e.popover).destroy)==null||h.call(g),e.popover=null}if(e.createToolsInstances(),!e.nodes.wrapper)return;e.nodes.wrapper.innerHTML=``,e.popover=new gu({items:await e.buildPopoverItems(),messages:{nothingFound:e.Blok.I18n.t(`popover.nothingFound`),search:e.Blok.I18n.t(`popover.search`)}});let _=(t=(n=(r=e.popover).getMountElement)==null?void 0:n.call(r))==null?(i=(a=e.popover).getElement)==null?void 0:i.call(a):t,v=(o=(s=e.popover).getElement)==null?void 0:o.call(s),y=(c=(l=(u=e.popover.size)==null?void 0:u.width)==null?v==null?void 0:v.getBoundingClientRect().width:l)==null?0:c;e.applyPosition(y),_&&e.nodes.wrapper&&e.nodes.wrapper.appendChild(_),(d=(f=e.popover).show)==null||d.call(f)}async buildPopoverItems(){var e=this;return e.popoverBuilder.build(e.tools)}applyPosition(e){if(!this.nodes.wrapper)return;let n=this.Blok.UI.nodes.wrapper,r=this.nodes.wrapper.offsetParent===n?n.getBoundingClientRect():new DOMRect(0,0,0,0),i=this.Blok.UI.contentRect,a=t.mn.rect;this.positioner.apply({wrapper:this.nodes.wrapper,selectionRect:a,wrapperOffset:r,contentRect:i,popoverWidth:e})}createToolsInstances(){let e=this.toolsManager.getAvailableTools();this.tools=this.toolsManager.createInstances(e)}async activateToolByShortcut(e){var t=this;if(t.opened||await t.tryToShow(),t.openingPromise!==null&&await t.openingPromise,t.popover){t.popover.activateItemByName(e);return}t.invokeToolActionDirectly(e)}invokeToolActionDirectly(e){let t=this.Blok.Tools.inlineTools.get(e);if(!t)return;let n=t.create().render(),r=Array.isArray(n)?n:[n];for(let e of r)if(`onActivate`in e&&typeof e.onActivate==`function`){e.onActivate(e);return}}},Yu,Xu=class{constructor({data:e,api:t}){this.api=t,this.title=e.title||this.api.i18n.t(`tools.stub.error`),this.subtitle=this.api.i18n.t(`tools.stub.blockCannotBeDisplayed`),this.savedData=e.savedData,this.wrapper=this.make()}render(){return this.wrapper}save(){return this.savedData}setReadOnly(e){}make(){let e=t.Pn.make(`div`,`flex items-center py-3 px-[18px] my-2.5 rounded-[10px] bg-bg-light border border-line-gray text-gray-text text-sm [&_svg]:size-icon`),n=t.Vt,r=t.Pn.make(`div`,`ml-3.5`),i=t.Pn.make(`div`,`font-medium capitalize`,{textContent:this.title}),a=t.Pn.make(`div`,``,{textContent:this.subtitle});return e.setAttribute(t.ur.tool,`stub`),e.setAttribute(t.ur.stub,``),r.setAttribute(t.ur.stubInfo,``),i.setAttribute(t.ur.stubTitle,``),a.setAttribute(t.ur.stubSubtitle,``),e.innerHTML=n,r.appendChild(i),r.appendChild(a),e.appendChild(r),e}};Yu=Xu,Yu.isReadOnlySupported=!0;var Zu,Qu=class{constructor({api:e,block:t}){this.api=e,this.block=t,this.onKeydown=e=>{e.metaKey&&e.ctrlKey&&e.code===`KeyL`&&this.block.selected&&this.handleClick()},document.addEventListener(`keydown`,this.onKeydown)}render(){return{icon:t.ft,title:this.api.i18n.t(`blockSettings.copyLink`),name:`copy-link`,secondaryLabel:`⌃⌘L`,onActivate:()=>this.handleClick()}}destroy(){document.removeEventListener(`keydown`,this.onKeydown)}async handleClick(){var e=this;let t=`${window.location.href.split(`#`)[0]}#${encodeURIComponent(e.block.id)}`;try{await navigator.clipboard.writeText(t),e.api.notifier.show({message:`Link copied to clipboard`,style:`success`,time:2e3})}catch(t){e.api.notifier.show({message:`Could not copy link to block`,style:`error`,time:3e3})}}};Zu=Qu,Zu.isTune=!0;var $u,ed=class{constructor({api:e}){this.api=e}render(){return{icon:t.Rt,title:this.api.i18n.t(`blockSettings.delete`),name:`delete`,isDestructive:!0,secondaryLabel:`Del`,onActivate:()=>this.handleClick()}}handleClick(){this.api.blocks.delete()}};$u=ed,$u.isTune=!0;var $=class e extends Map{get blockTools(){return new e(Array.from(this.entries()).filter(([,e])=>e.isBlock()))}get inlineTools(){return new e(Array.from(this.entries()).filter(([,e])=>e.isInline()))}get blockTunes(){return new e(Array.from(this.entries()).filter(([,e])=>e.isTune()))}get internalTools(){return new e(Array.from(this.entries()).filter(([,e])=>e.isInternal))}get externalTools(){return new e(Array.from(this.entries()).filter(([,e])=>!e.isInternal))}},td=class extends Gu{constructor(...e){super(...e),this.type=Ru.Block,this.inlineTools=new $,this.tunes=new $}create(e,t,n){return new this.constructable({data:e,block:t,readOnly:n,api:this.api,config:this.settings})}get isReadOnlySupported(){return this.constructable[Hu.IsReadOnlySupported]===!0}get supportsInPlaceReadOnly(){var e;let t=(e=this.constructable)==null?void 0:e.prototype;return typeof(t==null?void 0:t.setReadOnly)==`function`}get isLineBreaksEnabled(){var e;return(e=this.constructable[Hu.IsEnabledLineBreaks])==null?!1:e}get toolbox(){let e=this.constructable[Hu.Toolbox],n=this.config[Bu.Toolbox];if(!e||t.Qn(e)||n===!1)return;let r=this.mergeToolboxSettings(e,n),i=this.filterToolboxEntriesByStyles(r);return this.filterToolboxEntriesByLevels(i)}mergeToolboxSettings(e,t){return t==null?Array.isArray(e)?e:[e]:!Array.isArray(t)&&Array.isArray(e)?[t]:Array.isArray(t)?Array.isArray(e)?t.map((t,r)=>{let i=e[r];return i?n.t(n.t({},i),t):t}):t:[n.t(n.t({},e),t)]}filterToolboxEntriesByStyles(e){let t=this.settings.toolboxStyles;return!t||!Array.isArray(t)||t.length===0?e:e.filter(e=>{let n=e.data;return!n||!n.style?!0:t.includes(n.style)})}filterToolboxEntriesByLevels(e){let t=this.settings.levels;return!t||!Array.isArray(t)||t.length===0?e:e.filter(e=>{let n=e.data;return!n||n.level===void 0?!0:t.includes(n.level)})}get conversionConfig(){return this.constructable[Hu.ConversionConfig]}get enabledInlineTools(){let e=this.config[Bu.EnabledInlineTools];return e===void 0?!0:e}get enabledBlockTunes(){return this.config[Bu.EnabledBlockTunes]}get searchTerms(){return this.config.searchTerms}get pasteConfig(){var e;return(e=this.constructable[Hu.PasteConfig])==null?{}:e}get hasOnPasteHandler(){var e;let t=(e=this.constructable)==null?void 0:e.prototype;return typeof(t==null?void 0:t.onPaste)==`function`}get sanitizeConfig(){if(this._sanitizeConfig)return this._sanitizeConfig;let e=super.sanitizeConfig,n=this.baseSanitizeConfig;if(t.Qn(e))return this._sanitizeConfig=n,n;let r={};for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i))continue;let a=e[i];t.er(a)?r[i]=Object.assign({},n,a):r[i]=a}return this._sanitizeConfig=r,r}get baseSanitizeConfig(){if(this._baseSanitizeConfig)return this._baseSanitizeConfig;let e={};return Array.from(this.inlineTools.values()).forEach(t=>Object.assign(e,t.sanitizeConfig)),Array.from(this.tunes.values()).forEach(t=>Object.assign(e,t.sanitizeConfig)),this._baseSanitizeConfig=e,e}},nd=class extends Gu{constructor(...e){super(...e),this.type=Ru.Inline}getMissingMethods(e){let t=this.constructable,n=t==null?void 0:t.prototype;return n?e.filter(e=>typeof n[e]!=`function`):[...e]}create(){let e=this.constructable;return new e({api:this.api,config:this.settings})}get isReadOnlySupported(){var e;let t=this.constructable;return(e=t==null?void 0:t.isReadOnlySupported)==null?!1:e}get title(){return this.constructable.title||``}get titleKey(){return this.constructable.titleKey}},rd=class extends Gu{constructor(...e){super(...e),this.type=Ru.Tune}create(e,t){let n=this.constructable;return new n({api:this.api,config:this.settings,block:t,data:e})}},id=[`class`,`isInternal`],ad=class{constructor(e,t,n){this.api=n,this.config=e,this.blokConfig=t}get(e){let t=this.config[e],{class:n,isInternal:r=!1}=t,a=i.t(t,id),o=n;if(o===void 0)throw Error(`Tool "${e}" does not provide a class.`);return new(this.getConstructor(o))({name:e,constructable:o,config:a,api:this.createToolApi(e),isDefault:e===this.blokConfig.defaultBlock,defaultPlaceholder:this.blokConfig.placeholder,isInternal:r})}createToolApi(e){let t=this.api.methods,r=`tools.${e}`;return n.t(n.t({},t),{},{i18n:{t:e=>{let n=`${r}.${e}`;return t.i18n.has(n)?t.i18n.t(n):t.i18n.t(e)},has:e=>{let n=`${r}.${e}`;return t.i18n.has(n)||t.i18n.has(e)},getEnglishTranslation:e=>t.i18n.getEnglishTranslation(e),getLocale:()=>t.i18n.getLocale()}})}getConstructor(e){let t=!!Reflect.get(e,Uu.IsInline),n=!!Reflect.get(e,Wu.IsTune);return t?nd:n?rd:td}},od=class{constructor(){this.tail=Promise.resolve()}get completed(){return this.failure?Promise.reject(this.failure):this.tail}add(e){if(this.failure)return Promise.reject(this.failure);let t=this.tail.then(()=>e());return this.tail=t.catch(e=>{this.failure=e}),t}},sd,cd=e=>{if(!t.$n(e))throw Error(`Tool constructable must be a function`);return e},ld=class e extends l{constructor(...e){super(...e),this.stubTool=`stub`,this.factory=null,this.toolsAvailable=new $,this.toolsUnavailable=new $,this.inlineToolsSanitizeConfigCache=null}get available(){return this.toolsAvailable}get unavailable(){return this.toolsUnavailable}get inlineTools(){return this.available.inlineTools}get blockTools(){return this.available.blockTools}get blockTunes(){return this.available.blockTunes}get defaultTool(){let e=this.config.defaultBlock;if(!e)throw Error(`Default block tool name is not configured`);let t=this.blockTools.get(e);if(!t)throw Error(`Default block tool "${e}" not found in available block tools`);return t}get internal(){return this.available.internalTools}async prepare(){var e=this,n;let r=(n=e.config.tools)==null?{}:n;e.config.tools=t.zn({},e.internalTools,r),e.validateTools();let i=e.config.tools;if(!i||Object.keys(i).length===0)throw Error(`Can't start without tools`);let a=e.prepareConfig(i);e.factory=new ad(a,e.config,e.Blok.API);let o=e.getListOfPrepareFunctions(a);if(o.length===0)return Promise.resolve();let s=t=>{e.isToolPrepareData(t)&&e.toolPrepareMethodSuccess({toolName:t.toolName})},c=t=>{e.isToolPrepareData(t)&&e.toolPrepareMethodFallback({toolName:t.toolName})},l=new od;o.forEach(e=>{l.add(async()=>{let n=t.nr(e.data)?{}:e.data;try{await e.function(e.data),s(n)}catch(e){c(n)}})}),await l.completed,e.prepareBlockTools()}getAllInlineToolsSanitizeConfig(){if(this.inlineToolsSanitizeConfigCache)return this.inlineToolsSanitizeConfigCache;let e={};return Array.from(this.inlineTools.values()).forEach(t=>{Object.assign(e,t.sanitizeConfig)}),this.inlineToolsSanitizeConfigCache=e,e}destroy(){for(let e of this.available.values()){let n=(()=>{try{return e.reset()}catch(n){t.ir(`Tool "${e.name}" reset failed`,`warn`,n);return}})();n instanceof Promise&&n.catch(n=>{t.ir(`Tool "${e.name}" reset failed`,`warn`,n)})}}get internalTools(){return{stub:{class:cd(Xu),isInternal:!0},delete:{class:cd(ed),isInternal:!0},copyLink:{class:cd(Qu),isInternal:!0},convertTo:{class:cd(t.m),isInternal:!0}}}toolPrepareMethodSuccess(e){let n=this.getFactory().get(e.toolName);if(!n.isInline()){this.toolsAvailable.set(n.name,n);return}let r=n.getMissingMethods([`render`]);if(r.length){t.ir(`Incorrect Inline Tool: ${n.name}. Some of required methods is not implemented %o`,`warn`,r),this.toolsUnavailable.set(n.name,n);return}this.toolsAvailable.set(n.name,n)}toolPrepareMethodFallback(e){let t=this.getFactory();this.toolsUnavailable.set(e.toolName,t.get(e.toolName))}getListOfPrepareFunctions(e){return Object.entries(e).map(([e,n])=>{let r={toolName:e,config:this.extractToolConfig(n)};return{function:async e=>{let i=n.class;if(!i||!t.$n(i.prepare))return;let a=e==null?r:e;return i.prepare.call(i,a)},data:r}})}extractToolConfig(t){var r;let i=(r=t.config)==null?{}:r,a={};for(let n of Object.keys(t))e.BLOK_SETTINGS_KEYS.has(n)||(a[n]=t[n]);return n.t(n.t({},i),a)}prepareBlockTools(){Array.from(this.blockTools.values()).forEach(e=>{this.assignInlineToolsToBlockTool(e),this.assignBlockTunesToBlockTool(e)})}assignInlineToolsToBlockTool(e){let t=e;if(this.config.inlineToolbar!==!1){if(t.enabledInlineTools===!0){t.inlineTools=Array.isArray(this.config.inlineToolbar)?this.createInlineToolsCollection(this.config.inlineToolbar):this.createInlineToolsCollection([`convertTo`,...this.inlineTools.keys()]);return}Array.isArray(t.enabledInlineTools)&&(t.inlineTools=this.createInlineToolsCollection([`convertTo`,...t.enabledInlineTools]))}}assignBlockTunesToBlockTool(e){let t=e;if(t.enabledBlockTunes!==!1){if(Array.isArray(t.enabledBlockTunes)){let e=this.createBlockTunesCollection(t.enabledBlockTunes);t.tunes=new $([...Array.from(e.entries()),...Array.from(this.blockTunes.internalTools.entries())]);return}if(Array.isArray(this.config.tunes)){let e=this.createBlockTunesCollection(this.config.tunes);t.tunes=new $([...Array.from(e.entries()),...Array.from(this.blockTunes.internalTools.entries())]);return}t.tunes=new $(Array.from(this.blockTunes.internalTools.entries()))}}validateTools(){let e=this.config.tools;if(!e)return;let n=this.internalTools;for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r)||r in n)continue;let i=e[r],a=t.$n(i),o=t.$n(i.class);if(!a&&!o)throw new c(`Tool «${r}» must be a constructor function or an object with function in the «class» property`)}}prepareConfig(e){let n={};for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;let i=e[r];if(t.er(i)){n[r]=i;continue}n[r]={class:i}}return n}isToolPrepareData(e){let t=e;return typeof(t==null?void 0:t.toolName)==`string`}getFactory(){if(this.factory===null)throw Error(`Tools factory is not initialized`);return this.factory}createInlineToolsCollection(e){let n=[];for(let r of e){let e=this.inlineTools.get(r);if(!e){t.ir(`Inline tool "${r}" is not available and will be skipped`,`warn`);continue}n.push([r,e])}return new $(n)}createBlockTunesCollection(e){let n=[];for(let r of e){let e=this.blockTunes.get(r);if(!e){t.ir(`Block tune "${r}" is not available and will be skipped`,`warn`);continue}n.push([r,e])}return new $(n)}};sd=ld,sd.BLOK_SETTINGS_KEYS=new Set([`class`,`inlineToolbar`,`tunes`,`shortcut`,`toolbox`,`config`,`isInternal`]);var ud=`/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
|
|
15
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-border-style:solid;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-content:"";--tw-leading:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-gradient-position:initial;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}::-ms-backdrop{--tw-border-style:solid;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-content:"";--tw-leading:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-gradient-position:initial;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}::backdrop{--tw-border-style:solid;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-content:"";--tw-leading:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-gradient-position:initial;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}:root{--font-mono:"PT Mono", "Menlo", "Monaco", "Consolas", "Courier New", monospace;--color-red-500:#fb2c36;--color-blue-500:#3080ff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-mono-font-family:var(--font-mono);--z-index-overlay:999;--spacing-content-width:650px;--spacing-toolbox-btn:26px;--spacing-toolbox-btn-mobile:36px;--spacing-icon:20px;--spacing-icon-mobile:28px;--max-width-content:720px;--animate-button-clicked:buttonClicked .75s cubic-bezier(.215, .61, .355, 1) forwards;--animate-rotation:rotation 1.2s infinite linear;--animate-notify-slide-in:notifySlideIn .4s cubic-bezier(.16, 1, .3, 1) both;--animate-notify-slide-out:notifySlideOut .25s cubic-bezier(.4, 0, 1, 1) both;--animate-notify-slide-in-top:notifySlideInTop .4s cubic-bezier(.16, 1, .3, 1) both;--animate-notify-slide-out-top:notifySlideOutTop .25s cubic-bezier(.4, 0, 1, 1) both;--animate-notify-swap-out:notifySwapOut .14s cubic-bezier(.4, 0, 1, 1) both}@supports (color:color(display-p3 0 0 0)){:root{--color-red-500:color(display-p3 .903738 .262579 .253307);--color-blue-500:color(display-p3 .266422 .491219 .988624);--color-gray-50:color(display-p3 .977213 .98084 .985102);--color-gray-100:color(display-p3 .953567 .956796 .964321);--color-gray-200:color(display-p3 .899787 .906171 .92106);--color-gray-300:color(display-p3 .822033 .835264 .858521);--color-gray-400:color(display-p3 .605734 .630385 .680158);--color-gray-500:color(display-p3 .421287 .446085 .504784);--color-neutral-100:color(display-p3 .960587 .960587 .960587);--color-neutral-200:color(display-p3 .898161 .898161 .898161);--color-neutral-300:color(display-p3 .831444 .831444 .831444);--color-neutral-400:color(display-p3 .630163 .630163 .630163);--color-neutral-500:color(display-p3 .451519 .451519 .451519);--color-neutral-600:color(display-p3 .321993 .321993 .321993);--color-neutral-700:color(display-p3 .250471 .250471 .250471);--color-neutral-800:color(display-p3 .149382 .149382 .149382);--color-neutral-900:color(display-p3 .0905274 .0905274 .0905274)}}@supports (color:lab(0% 0 0)){:root{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-neutral-100:lab(96.52% -.0000298023 .0000119209);--color-neutral-200:lab(90.952% 0 -.0000119209);--color-neutral-300:lab(84.92% 0 -.0000119209);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-600:lab(34.924% 0 0);--color-neutral-700:lab(27.036% 0 0);--color-neutral-800:lab(15.204% 0 -.00000596046);--color-neutral-900:lab(7.78201% -.0000149012 0)}}:host{--font-mono:"PT Mono", "Menlo", "Monaco", "Consolas", "Courier New", monospace;--color-red-500:#fb2c36;--color-blue-500:#3080ff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-mono-font-family:var(--font-mono);--z-index-overlay:999;--spacing-content-width:650px;--spacing-toolbox-btn:26px;--spacing-toolbox-btn-mobile:36px;--spacing-icon:20px;--spacing-icon-mobile:28px;--max-width-content:720px;--animate-button-clicked:buttonClicked .75s cubic-bezier(.215, .61, .355, 1) forwards;--animate-rotation:rotation 1.2s infinite linear;--animate-notify-slide-in:notifySlideIn .4s cubic-bezier(.16, 1, .3, 1) both;--animate-notify-slide-out:notifySlideOut .25s cubic-bezier(.4, 0, 1, 1) both;--animate-notify-slide-in-top:notifySlideInTop .4s cubic-bezier(.16, 1, .3, 1) both;--animate-notify-slide-out-top:notifySlideOutTop .25s cubic-bezier(.4, 0, 1, 1) both;--animate-notify-swap-out:notifySwapOut .14s cubic-bezier(.4, 0, 1, 1) both}@supports (color:color(display-p3 0 0 0)){:host{--color-red-500:color(display-p3 .903738 .262579 .253307);--color-blue-500:color(display-p3 .266422 .491219 .988624);--color-gray-50:color(display-p3 .977213 .98084 .985102);--color-gray-100:color(display-p3 .953567 .956796 .964321);--color-gray-200:color(display-p3 .899787 .906171 .92106);--color-gray-300:color(display-p3 .822033 .835264 .858521);--color-gray-400:color(display-p3 .605734 .630385 .680158);--color-gray-500:color(display-p3 .421287 .446085 .504784);--color-neutral-100:color(display-p3 .960587 .960587 .960587);--color-neutral-200:color(display-p3 .898161 .898161 .898161);--color-neutral-300:color(display-p3 .831444 .831444 .831444);--color-neutral-400:color(display-p3 .630163 .630163 .630163);--color-neutral-500:color(display-p3 .451519 .451519 .451519);--color-neutral-600:color(display-p3 .321993 .321993 .321993);--color-neutral-700:color(display-p3 .250471 .250471 .250471);--color-neutral-800:color(display-p3 .149382 .149382 .149382);--color-neutral-900:color(display-p3 .0905274 .0905274 .0905274)}}@supports (color:lab(0% 0 0)){:host{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-neutral-100:lab(96.52% -.0000298023 .0000119209);--color-neutral-200:lab(90.952% 0 -.0000119209);--color-neutral-300:lab(84.92% 0 -.0000119209);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-600:lab(34.924% 0 0);--color-neutral-700:lab(27.036% 0 0);--color-neutral-800:lab(15.204% 0 -.00000596046);--color-neutral-900:lab(7.78201% -.0000149012 0)}}.blok-input{border-style:var(--tw-border-style);border-width:1px;border-color:var(--blok-line-gray);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);--tw-shadow:inset 0 1px 2px 0 var(--tw-shadow-color,rgba(35,44,72,.06));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;border-radius:3px;outline-style:none}@media (forced-colors:active){.blok-input{outline-offset:2px;outline:2px solid transparent}}.blok-input[data-blok-placeholder]:before{content:var(--tw-content);pointer-events:none;content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 0);content:var(--tw-content);white-space:nowrap;display:inline-block;position:static!important}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.blok-loader{border-style:var(--tw-border-style);border-width:1px;border-color:var(--blok-line-gray);position:relative}.blok-loader:before{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);width:18px;height:18px;animation:var(--animate-rotation);content:var(--tw-content);content:var(--tw-content);border-style:var(--tw-border-style);content:var(--tw-content);border-width:2px;border-color:var(--blok-line-gray);content:var(--tw-content);border-left-color:var(--blok-active-icon);--tw-content:"";content:var(--tw-content);border-radius:3.40282e38px;margin-top:-11px;margin-left:-11px;position:absolute;top:50%;left:50%}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-\\[auto_var\\(--offset\\)_calc\\(var\\(--offset\\)\\+env\\(safe-area-inset-bottom\\)\\)_var\\(--offset\\)\\]{inset:auto var(--offset) calc(var(--offset) + env(safe-area-inset-bottom)) var(--offset)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.end:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.top-\\(--popover-top\\){top:var(--popover-top)}.top-0{top:calc(var(--spacing) * 0)}.top-1\\/2{top:50%}.top-5{top:calc(var(--spacing) * 5)}.top-\\[2px\\]{top:2px}.top-auto{top:auto}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-5{right:calc(var(--spacing) * 5)}.right-full{right:100%}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-1{bottom:calc(var(--spacing) * 1)}.bottom-5{bottom:calc(var(--spacing) * 5)}.left-\\(--popover-left\\){left:var(--popover-left)}.left-0{left:calc(var(--spacing) * 0)}.left-1\\/2{left:50%}.left-2\\.5{left:calc(var(--spacing) * 2.5)}.left-5{left:calc(var(--spacing) * 5)}.left-auto{left:auto}.z-0{z-index:0}.z-1{z-index:1}.z-3{z-index:3}.z-4{z-index:4}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-10000{z-index:10000}.z-\\[9999\\]{z-index:9999}.z-overlay{z-index:var(--z-index-overlay)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.blok-settings-button{margin:calc(var(--spacing) * 0);min-height:var(--spacing-toolbox-btn);min-width:var(--spacing-toolbox-btn);cursor:pointer;border-style:var(--tw-border-style);vertical-align:bottom;color:inherit;--tw-outline-style:none;background-color:transparent;border-width:0;border-radius:3px;outline-style:none;justify-content:center;align-items:center;display:inline-flex}@media (forced-colors:active){.blok-settings-button{outline-offset:2px;outline:2px solid transparent}}@media (max-width:650px){.blok-settings-button{height:var(--spacing-toolbox-btn-mobile);width:var(--spacing-toolbox-btn-mobile);border-radius:var(--radius-lg)}}@media (hover:hover){@media (hover:hover){.blok-settings-button:hover{background-color:var(--blok-bg-light)}}}.blok-settings-button svg{width:auto;height:auto}@media (max-width:650px){.blok-settings-button svg{height:var(--spacing-icon-mobile);width:var(--spacing-icon-mobile)}}.-m-px{margin:-1px}.m-0{margin:calc(var(--spacing) * 0)}.m-0\\!{margin:calc(var(--spacing) * 0)!important}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-2\\.5{margin-block:calc(var(--spacing) * 2.5)}.my-4{margin-block:calc(var(--spacing) * 4)}.blok-button{cursor:pointer;border-style:var(--tw-border-style);border-width:1px;border-color:var(--blok-line-gray);background-color:var(--color-white);text-align:center;color:var(--blok-gray-text);--tw-shadow:0 2px 2px 0 var(--tw-shadow-color,rgba(18,30,57,.04));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-radius:3px;padding:13px;font-size:14.9px}@media (hover:hover){.blok-button:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(18,30,57,.08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#fbfcfe}}.blok-button svg{margin-top:calc(var(--spacing) * -.5);height:calc(var(--spacing) * 5);margin-right:.2em}.-mt-\\[5px\\]{margin-top:-5px}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-\\[-5px\\]{margin-top:-5px}.mt-\\[0\\.3em\\]{margin-top:.3em}.mt-\\[2px\\]{margin-top:2px}.mt-\\[3px\\]{margin-top:3px}.mt-\\[8px\\]{margin-top:8px}.mt-\\[26px\\]{margin-top:26px}.mt-\\[30px\\]{margin-top:30px}.mt-\\[50px\\]{margin-top:50px}.mt-px{margin-top:1px}.-mr-0\\.5{margin-right:calc(var(--spacing) * -.5)}.mr-0\\!{margin-right:calc(var(--spacing) * 0)!important}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\\!{margin-right:calc(var(--spacing) * 2)!important}.mr-3{margin-right:calc(var(--spacing) * 3)}.mr-6{margin-right:calc(var(--spacing) * 6)}.mr-auto{margin-right:auto}.mb-0\\!{margin-bottom:calc(var(--spacing) * 0)!important}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-\\[0\\.3em\\]{margin-bottom:.3em}.mb-px{margin-bottom:1px}.ml-0\\.5{margin-left:calc(var(--spacing) * .5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3\\.5{margin-left:calc(var(--spacing) * 3.5)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.blok-inline-tool-button{height:100%;width:calc(var(--spacing) * 7);cursor:pointer;border-style:var(--tw-border-style);padding:calc(var(--spacing) * 0);--tw-leading:var(--leading-normal);line-height:var(--leading-normal);color:var(--color-black);background-color:transparent;border-width:0;border-radius:.25rem;justify-content:center;align-items:center;display:flex}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.aspect-square{aspect-ratio:1}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-\\[14px\\]{height:14px}.h-\\[18px\\]{height:18px}.h-\\[26px\\]{height:26px}.h-\\[28px\\]{height:28px}.h-\\[32px\\]{height:32px}.h-\\[34px\\]{height:34px}.h-\\[36px\\]{height:36px}.h-\\[38px\\]{height:38px}.h-\\[50px\\]{height:50px}.h-auto{height:auto}.h-fit{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.h-full{height:100%}.h-px{height:1px}.h-toolbox-btn{height:var(--spacing-toolbox-btn)}.max-h-\\(--max-height\\){max-height:var(--max-height)}.max-h-0{max-height:calc(var(--spacing) * 0)}.max-h-0\\!{max-height:calc(var(--spacing) * 0)!important}.max-h-5{max-height:calc(var(--spacing) * 5)}.max-h-9{max-height:calc(var(--spacing) * 9)}.max-h-\\[260px\\]{max-height:260px}.max-h-none{max-height:none}.min-h-\\[1\\.5em\\]{min-height:1.5em}.min-h-\\[2em\\]{min-height:2em}.w-\\(--width\\){width:var(--width)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-9{width:calc(var(--spacing) * 9)}.w-12{width:calc(var(--spacing) * 12)}.w-\\[14px\\]{width:14px}.w-\\[22px\\]{width:22px}.w-\\[26px\\]{width:26px}.w-\\[28px\\]{width:28px}.w-\\[30px\\]{width:30px}.w-\\[32px\\]{width:32px}.w-\\[34px\\]{width:34px}.w-\\[200px\\]{width:200px}.w-\\[280px\\]{width:280px}.w-\\[400px\\]{width:400px}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-webkit-max-content;width:-moz-max-content;width:max-content}.w-px{width:1px}.w-toolbox-btn{width:var(--spacing-toolbox-btn)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\\[140px\\]{max-width:140px}.max-w-none{max-width:none}.min-w-\\(--width\\){min-width:var(--width)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[calc\\(100\\%-\\(--spacing\\(6\\)\\)-10px\\)\\]{min-width:calc(100% - (calc(var(--spacing) * 6)) - 10px)}.min-w-\\[calc\\(100\\%-var\\(--offset\\)\\*2\\)\\]{min-width:calc(100% - var(--offset) * 2)}.min-w-max{min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\\[blok-emoji-empty-in_300ms_ease-out_both\\]{animation:.3s ease-out both blok-emoji-empty-in}.animate-notify-slide-in{animation:var(--animate-notify-slide-in)}.animate-notify-slide-in-top{animation:var(--animate-notify-slide-in-top)}.animate-notify-slide-out{animation:var(--animate-notify-slide-out)}.animate-notify-slide-out-top{animation:var(--animate-notify-slide-out-top)}.animate-notify-swap-out{animation:var(--animate-notify-swap-out)}.blok-settings-button--focused-animated{animation:var(--animate-button-clicked)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.cursor-row-resize{cursor:row-resize}.cursor-text{cursor:text}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none}.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-cols-\\[auto_1fr\\]{grid-template-columns:auto 1fr}.grid-rows-\\[auto\\]{grid-template-rows:auto}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[7px\\]{border-radius:7px}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-lg\\!{border-radius:var(--radius-lg)!important}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-l-\\[3px\\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-none{--tw-border-style:none;border-style:none}.border-\\[\\#e8e8eb\\]{border-color:#e8e8eb}.border-\\[\\#f0f0f0\\]{border-color:#f0f0f0}.border-border-secondary{border-color:var(--blok-border-secondary)}.border-current{border-color:currentColor}.border-gray-300{border-color:var(--color-gray-300)}.border-line-gray{border-color:var(--blok-line-gray)}.border-link-input-border{border-color:var(--blok-link-input-border)}.border-neutral-100{border-color:var(--color-neutral-100)}.border-neutral-200\\/70{border-color:rgba(229,229,229,.7)}@supports (color:color-mix(in lab, red, red)){.border-neutral-200\\/70{border-color:color-mix(in oklab, var(--color-neutral-200) 70%, transparent)}}.border-search-input-border{border-color:var(--blok-search-input-border)}.border-transparent{border-color:transparent}.border-white\\/10{border-color:rgba(255,255,255,.1)}@supports (color:color-mix(in lab, red, red)){.border-white\\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-white\\/\\[0\\.08\\]{border-color:rgba(255,255,255,.08)}@supports (color:color-mix(in lab, red, red)){.border-white\\/\\[0\\.08\\]{border-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.blok-inline-tool-button--active{background-color:var(--blok-icon-active-bg);color:var(--blok-icon-active-text)}.blok-settings-button--focused{background-color:var(--blok-item-focus-bg);--tw-shadow:inset 0 0 0 1px var(--tw-shadow-color,rgba(7,161,227,.08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.bg-\\[\\#1c1c1e\\]{background-color:#1c1c1e}.bg-bg-light{background-color:var(--blok-bg-light)}.bg-bg-secondary{background-color:var(--blok-bg-secondary)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-dark{background-color:var(--blok-dark)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-item-confirm-bg\\!{background-color:var(--blok-item-confirm-bg)!important}.bg-item-focus-bg\\!{background-color:var(--blok-item-focus-bg)!important}.bg-item-hover-bg{background-color:var(--blok-item-hover-bg)}.bg-link-input-border{background-color:var(--blok-link-input-border)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-popover-bg{background-color:var(--blok-popover-bg)}.bg-popover-border\\/60{background-color:var(--blok-popover-border)}@supports (color:color-mix(in lab, red, red)){.bg-popover-border\\/60{background-color:color-mix(in oklab, var(--blok-popover-border) 60%, transparent)}}.bg-popover-icon-bg{background-color:var(--blok-popover-icon-bg)}.bg-search-input-bg{background-color:var(--blok-search-input-bg)}.bg-selection{background-color:var(--blok-selection)}.bg-selection-highlight{background-color:var(--blok-selection-highlight)}.bg-tooltip-bg{background-color:var(--blok-tooltip-bg)}.bg-transparent{background-color:transparent}.bg-white{background-color:var(--color-white)}.bg-white\\/8{background-color:rgba(255,255,255,.08)}@supports (color:color-mix(in lab, red, red)){.bg-white\\/8{background-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.bg-white\\/10{background-color:rgba(255,255,255,.1)}@supports (color:color-mix(in lab, red, red)){.bg-white\\/10{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-white\\/15{background-color:rgba(255,255,255,.15)}@supports (color:color-mix(in lab, red, red)){.bg-white\\/15{background-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.bg-white\\/80{background-color:rgba(255,255,255,.8)}@supports (color:color-mix(in lab, red, red)){.bg-white\\/80{background-color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.bg-linear-to-l{--tw-gradient-position:to left}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-l{--tw-gradient-position:to left in oklab}}.bg-linear-to-l{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-white\\/80{--tw-gradient-from:rgba(255,255,255,.8)}@supports (color:color-mix(in lab, red, red)){.from-white\\/80{--tw-gradient-from:color-mix(in oklab, var(--color-white) 80%, transparent)}}.from-white\\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-\\(--item-padding\\){padding:var(--item-padding)}.p-0{padding:calc(var(--spacing) * 0)}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-\\[3px\\]{padding:3px}.p-\\[6px\\]{padding:6px}.p-\\[8px\\]{padding:8px}.p-\\[16px\\]{padding:16px}.blok-block{padding-top:7px;padding-bottom:7px;padding-left:2px;padding-right:2px}.blok-block::-webkit-input-placeholder{--tw-leading:var(--leading-normal)!important;line-height:var(--leading-normal)!important}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-0\\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\\[2px\\]{padding-left:2px;padding-right:2px}.px-\\[3px\\]{padding-left:3px;padding-right:3px}.px-\\[5px\\]{padding-left:5px;padding-right:5px}.px-\\[18px\\]{padding-left:18px;padding-right:18px}.px-\\[30px\\]{padding-left:30px;padding-right:30px}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\\!{padding-block:calc(var(--spacing) * 0)!important}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-\\[0\\.2em\\]{padding-top:.2em;padding-bottom:.2em}.py-\\[5px\\]{padding-top:5px;padding-bottom:5px}.py-\\[7px\\]{padding-top:7px;padding-bottom:7px}.py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-\\[8px\\]{padding-top:8px}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pr-\\[0\\.9em\\]{padding-right:.9em}.pr-\\[5px\\]{padding-right:5px}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-\\[8px\\]{padding-bottom:8px}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-7{padding-left:calc(var(--spacing) * 7)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-20{padding-left:calc(var(--spacing) * 20)}.pl-\\[0\\.9em\\]{padding-left:.9em}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}.text-start:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}.text-start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}.text-start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}.text-start:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}.text-start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}.font-\\[inherit\\]{font-family:inherit}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[1\\.2em\\]{font-size:1.2em}.text-\\[1\\.2rem\\]{font-size:1.2rem}.text-\\[1\\.5rem\\]{font-size:1.5rem}.text-\\[1\\.25rem\\]{font-size:1.25rem}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[14px\\]{font-size:14px}.text-\\[15px\\]{font-size:15px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-\\[1\\.3\\]\\!{--tw-leading:1.3!important;line-height:1.3!important}.leading-\\[1\\.4\\]{--tw-leading:1.4;line-height:1.4}.leading-\\[1\\.5\\]{--tw-leading:1.5;line-height:1.5}.leading-\\[1\\]{--tw-leading:1;line-height:1}.leading-\\[1em\\]{--tw-leading:1em;line-height:1em}.leading-\\[1px\\]{--tw-leading:1px;line-height:1px}.leading-\\[22px\\]{--tw-leading:22px;line-height:22px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[-0\\.015em\\]{--tw-tracking:-.015em;letter-spacing:-.015em}.tracking-\\[0\\.02em\\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\\[0\\.12em\\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.wrap-break-word{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.blok-settings-button--active{color:var(--blok-active-icon)}.text-\\[\\#666\\]{color:#666}.text-\\[\\#999\\]{color:#999}.text-\\[\\#a1a1aa\\]{color:#a1a1aa}.text-\\[\\#bbb\\]{color:#bbb}.text-\\[\\#e4e4e7\\]{color:#e4e4e7}.text-\\[\\#f5f5f5\\]{color:#f5f5f5}.text-\\[color\\:var\\(--popover-text-secondary\\,_\\#888\\)\\]{color:var(--popover-text-secondary,#888)}.text-black{color:var(--color-black)}.text-blue-500{color:var(--color-blue-500)}.text-dark{color:var(--blok-dark)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-text,.text-gray-text\\/40{color:var(--blok-gray-text)}@supports (color:color-mix(in lab, red, red)){.text-gray-text\\/40{color:color-mix(in oklab, var(--blok-gray-text) 40%, transparent)}}.text-gray-text\\/50{color:var(--blok-gray-text)}@supports (color:color-mix(in lab, red, red)){.text-gray-text\\/50{color:color-mix(in oklab, var(--blok-gray-text) 50%, transparent)}}.text-inherit{color:inherit}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-400\\/80{color:rgba(161,161,161,.8)}@supports (color:color-mix(in lab, red, red)){.text-neutral-400\\/80{color:color-mix(in oklab, var(--color-neutral-400) 80%, transparent)}}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-800{color:var(--color-neutral-800)}.text-red-500{color:var(--color-red-500)}.text-text-primary,.text-text-primary\\/60{color:var(--blok-text-primary)}@supports (color:color-mix(in lab, red, red)){.text-text-primary\\/60{color:color-mix(in oklab, var(--blok-text-primary) 60%, transparent)}}.text-text-secondary,.text-text-secondary\\/60{color:var(--blok-text-secondary)}@supports (color:color-mix(in lab, red, red)){.text-text-secondary\\/60{color:color-mix(in oklab, var(--blok-text-secondary) 60%, transparent)}}.text-tooltip-font{color:var(--blok-tooltip-font)}.text-white{color:var(--color-white)}.text-white\\!{color:var(--color-white)!important}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{-webkit-text-decoration-line:line-through;text-decoration-line:line-through}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-current{accent-color:currentColor}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)), 0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,rgba(0,0,0,.25));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_8px_32px_rgba\\(0\\,0\\,0\\,0\\.4\\)\\,0_1px_4px_rgba\\(0\\,0\\,0\\,0\\.25\\)\\]{--tw-shadow:0 8px 32px var(--tw-shadow-color,rgba(0,0,0,.4)), 0 1px 4px var(--tw-shadow-color,rgba(0,0,0,.25));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,rgba(0,0,0,.1)), 0 4px 6px -4px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 transparent;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)), 0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-tooltip{--tw-shadow:0 8px 12px 0 var(--tw-shadow-color,rgba(29,32,43,.17)), 0 4px 5px -3px var(--tw-shadow-color,rgba(5,6,12,.49));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-neutral-300\\/60{--tw-ring-color:rgba(212,212,212,.6)}@supports (color:color-mix(in lab, red, red)){.ring-neutral-300\\/60{--tw-ring-color:color-mix(in oklab, var(--color-neutral-300) 60%, transparent)}}.ring-swatch-ring-hover{--tw-ring-color:var(--blok-swatch-ring-hover)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid transparent}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-sm{--tw-blur:blur(var(--blur-sm));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[box-shadow\\,transform\\]{transition-property:box-shadow,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[left\\]{transition-property:left;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[margin\\]{transition-property:margin;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,background-color\\,width\\,height\\]{transition-property:opacity,background-color,width,height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,background-color\\,width\\]{transition-property:opacity,background-color,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-250{--tw-duration:.25s;transition-duration:.25s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-\\[180ms\\]{--tw-duration:.18s;transition-duration:.18s}.duration-\\[220ms\\]{--tw-duration:.22s;transition-duration:.22s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\\[transition-timing-function\\:cubic-bezier\\(0\\.34\\,1\\.56\\,0\\.64\\,1\\)\\]{transition-timing-function:cubic-bezier(.34,1.56,.64,1)}.will-change-\\[opacity\\,left\\,top\\]{will-change:opacity,left,top}.will-change-\\[opacity\\,top\\]{will-change:opacity,top}.outline-none{--tw-outline-style:none;outline-style:none}.outline-solid{--tw-outline-style:solid;outline-style:solid}.select-all{-webkit-user-select:all;-moz-user-select:all;-ms-user-select:all;user-select:all}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.\\[clip\\:rect\\(0\\,0\\,0\\,0\\)\\]{clip:rect(0,0,0,0)}.\\[direction\\:rtl\\]{direction:rtl}.block-1{height:calc(var(--spacing) * 1)}.block-2{height:calc(var(--spacing) * 2)}.block-3{height:calc(var(--spacing) * 3)}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\\:text-\\[\\#666\\]:is(:where(.group):hover *){color:#666}.group-hover\\/add\\:bg-gray-50:is(:where(.group\\/add):hover *){background-color:var(--color-gray-50)}.group-hover\\/code\\:opacity-100:is(:where(.group\\/code):hover *){opacity:1}}.group-data-\\[blok-block-settings-opened\\=true\\]\\:bg-bg-light:is(:where(.group)[data-blok-block-settings-opened=true] *){background-color:var(--blok-bg-light)}.group-data-\\[blok-dragging\\=true\\]\\:pointer-events-none:is(:where(.group)[data-blok-dragging=true] *){pointer-events:none}.group-data-\\[blok-dragging\\=true\\]\\:cursor-grabbing:is(:where(.group)[data-blok-dragging=true] *){cursor:grabbing}.group-data-\\[blok-rtl\\=true\\]\\:right-\\[calc\\(-1\\*\\(var\\(--spacing-toolbox-btn\\)\\)\\)\\]:is(:where(.group)[data-blok-rtl=true] *){right:calc(-1 * (var(--spacing-toolbox-btn)))}.group-data-\\[blok-rtl\\=true\\]\\:right-auto:is(:where(.group)[data-blok-rtl=true] *){right:auto}.group-data-\\[blok-rtl\\=true\\]\\:left-\\[calc\\(-1\\*\\(var\\(--spacing-toolbox-btn\\)\\)\\)\\]:is(:where(.group)[data-blok-rtl=true] *){left:calc(-1 * (var(--spacing-toolbox-btn)))}.group-data-\\[blok-rtl\\=true\\]\\:left-auto:is(:where(.group)[data-blok-rtl=true] *){left:auto}.group-data-\\[blok-toolbox-opened\\=true\\]\\:bg-bg-light:is(:where(.group)[data-blok-toolbox-opened=true] *){background-color:var(--blok-bg-light)}.placeholder\\:font-normal::-ms-input-placeholder{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.placeholder\\:font-normal::placeholder{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.placeholder\\:text-gray-text::-ms-input-placeholder{color:var(--blok-gray-text)}.placeholder\\:text-gray-text::placeholder{color:var(--blok-gray-text)}.placeholder\\:text-gray-text\\/80::-ms-input-placeholder{color:var(--blok-gray-text)}.placeholder\\:text-gray-text\\/80::placeholder{color:var(--blok-gray-text)}@supports (color:color-mix(in lab, red, red)){.placeholder\\:text-gray-text\\/80::-ms-input-placeholder{color:color-mix(in oklab, var(--blok-gray-text) 80%, transparent)}.placeholder\\:text-gray-text\\/80::placeholder{color:color-mix(in oklab, var(--blok-gray-text) 80%, transparent)}}.placeholder\\:text-neutral-400::-ms-input-placeholder{color:var(--color-neutral-400)}.placeholder\\:text-neutral-400::placeholder{color:var(--color-neutral-400)}.placeholder\\:text-white\\/30::-ms-input-placeholder{color:rgba(255,255,255,.3)}.placeholder\\:text-white\\/30::placeholder{color:rgba(255,255,255,.3)}@supports (color:color-mix(in lab, red, red)){.placeholder\\:text-white\\/30::-ms-input-placeholder{color:color-mix(in oklab, var(--color-white) 30%, transparent)}.placeholder\\:text-white\\/30::placeholder{color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.before\\:-z-10:before{content:var(--tw-content);z-index:calc(10 * -1)}.before\\:rounded-lg:before{content:var(--tw-content);border-radius:var(--radius-lg)}.before\\:bg-tooltip-bg:before{content:var(--tw-content);background-color:var(--blok-tooltip-bg)}.before\\:content-\\[\\\\\\'\\\\\\'\\]:before{--tw-content:\\'\\';content:var(--tw-content)}.after\\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:right-0:after{content:var(--tw-content);right:calc(var(--spacing) * 0)}.after\\:-bottom-10:after{content:var(--tw-content);bottom:calc(var(--spacing) * -10)}.after\\:left-0:after{content:var(--tw-content);left:calc(var(--spacing) * 0)}.after\\:h-10:after{content:var(--tw-content);height:calc(var(--spacing) * 10)}.after\\:content-\\[\\"\\"\\]:after{--tw-content:"";content:var(--tw-content)}.first\\:mt-0:first-child{margin-top:calc(var(--spacing) * 0)}.last\\:mb-0:last-child{margin-bottom:calc(var(--spacing) * 0)}.last\\:pb-0:last-child{padding-bottom:calc(var(--spacing) * 0)}.empty\\:before\\:pointer-events-none:empty:before{content:var(--tw-content);pointer-events:none}.empty\\:before\\:cursor-text:empty:before{content:var(--tw-content);cursor:text}.empty\\:before\\:text-gray-text:empty:before{content:var(--tw-content);color:var(--blok-gray-text)}.empty\\:before\\:content-\\[attr\\(data-blok-placeholder\\)\\]:empty:before{--tw-content:attr(data-blok-placeholder);content:var(--tw-content)}.empty\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\]:empty:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}.empty\\:before\\:content-\\[attr\\(data-placeholder\\)\\]:empty:before{--tw-content:attr(data-placeholder);content:var(--tw-content)}.focus-within\\:border-search-input-focus-border:focus-within{border-color:var(--blok-search-input-focus-border)}.focus-within\\:shadow-\\[0_0_0_2px_rgba\\(35\\,131\\,226\\,0\\.15\\)\\]:focus-within{--tw-shadow:0 0 0 2px var(--tw-shadow-color,rgba(35,131,226,.15));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.hover\\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-\\[\\#ccc\\]:hover{border-color:#ccc}.hover\\:bg-\\[\\#f7f7f8\\]:hover{background-color:#f7f7f8}.hover\\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\\:bg-white\\/12:hover{background-color:rgba(255,255,255,.12)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-white\\/12:hover{background-color:color-mix(in oklab, var(--color-white) 12%, transparent)}}.hover\\:bg-white\\/25:hover{background-color:rgba(255,255,255,.25)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-white\\/25:hover{background-color:color-mix(in oklab, var(--color-white) 25%, transparent)}}.hover\\:text-\\[\\#333\\]:hover{color:#333}.hover\\:text-neutral-600:hover{color:var(--color-neutral-600)}.hover\\:opacity-100:hover{opacity:1}.hover\\:ring-2:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\\:ring-swatch-ring-hover:hover{--tw-ring-color:var(--blok-swatch-ring-hover)}}.focus\\:border-white\\/20:focus{border-color:rgba(255,255,255,.2)}@supports (color:color-mix(in lab, red, red)){.focus\\:border-white\\/20:focus{border-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\\:ring-neutral-300\\/60:focus{--tw-ring-color:rgba(212,212,212,.6)}@supports (color:color-mix(in lab, red, red)){.focus\\:ring-neutral-300\\/60:focus{--tw-ring-color:color-mix(in oklab, var(--color-neutral-300) 60%, transparent)}}.empty\\:focus\\:before\\:pointer-events-none:empty:focus:before{content:var(--tw-content);pointer-events:none}.empty\\:focus\\:before\\:cursor-text:empty:focus:before{content:var(--tw-content);cursor:text}.empty\\:focus\\:before\\:text-gray-text:empty:focus:before{content:var(--tw-content);color:var(--blok-gray-text)}.empty\\:focus\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\]:empty:focus:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\\:scale-90:active{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:cursor-grabbing:active{cursor:grabbing}:where([data-blok-empty=true]) .empty\\:in-data-\\[blok-empty\\=true\\]\\:before\\:pointer-events-none:empty:before{content:var(--tw-content);pointer-events:none}:where([data-blok-empty=true]) .empty\\:in-data-\\[blok-empty\\=true\\]\\:before\\:cursor-text:empty:before{content:var(--tw-content);cursor:text}:where([data-blok-empty=true]) .empty\\:in-data-\\[blok-empty\\=true\\]\\:before\\:text-gray-text:empty:before{content:var(--tw-content);color:var(--blok-gray-text)}:where([data-blok-empty=true]) .empty\\:in-data-\\[blok-empty\\=true\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\]:empty:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}:where([data-blok-toggle-empty=true]) .in-data-\\[blok-toggle-empty\\=true\\]\\:text-gray-text{color:var(--blok-gray-text)}.data-blok-force-hover\\:cursor-pointer[data-blok-force-hover]{cursor:pointer}.data-blok-force-hover\\:bg-item-hover-bg[data-blok-force-hover]{background-color:var(--blok-item-hover-bg)}.data-blok-popover-item-active\\:bg-icon-active-bg[data-blok-popover-item-active]{background-color:var(--blok-icon-active-bg)}.data-blok-popover-item-active\\:text-icon-active-text[data-blok-popover-item-active]{color:var(--blok-icon-active-text)}.data-blok-popover-item-no-hover\\:cursor-default[data-blok-popover-item-no-hover]{cursor:default}@media (hover:hover){.data-blok-popover-item-no-hover\\:hover\\:bg-transparent[data-blok-popover-item-no-hover]:hover{background-color:transparent}}.data-\\[blok-dragging\\=true\\]\\:cursor-grabbing[data-blok-dragging=true]{cursor:grabbing}.data-\\[blok-empty\\=true\\]\\:before\\:pointer-events-none[data-blok-empty=true]:before{content:var(--tw-content);pointer-events:none}.data-\\[blok-empty\\=true\\]\\:before\\:cursor-text[data-blok-empty=true]:before{content:var(--tw-content);cursor:text}.data-\\[blok-empty\\=true\\]\\:before\\:text-gray-text[data-blok-empty=true]:before{content:var(--tw-content);color:var(--blok-gray-text)}.data-\\[blok-empty\\=true\\]\\:before\\:content-\\[attr\\(data-blok-placeholder\\)\\][data-blok-empty=true]:before{--tw-content:attr(data-blok-placeholder);content:var(--tw-content)}.data-\\[blok-empty\\=true\\]\\:before\\:content-\\[attr\\(data-placeholder\\)\\][data-blok-empty=true]:before{--tw-content:attr(data-placeholder);content:var(--tw-content)}.data-\\[blok-focused\\=\\"true\\"\\]\\:bg-item-focus-bg[data-blok-focused=true]{background-color:var(--blok-item-focus-bg)}:is(.\\*\\*\\:data-\\[blok-tool\\=stub\\]\\:opacity-55 *)[data-blok-tool=stub]{opacity:.55}.data-\\[empty\\=true\\]\\:before\\:pointer-events-none[data-empty=true]:before{content:var(--tw-content);pointer-events:none}.data-\\[empty\\=true\\]\\:before\\:cursor-text[data-empty=true]:before{content:var(--tw-content);cursor:text}.data-\\[empty\\=true\\]\\:before\\:text-gray-text[data-empty=true]:before{content:var(--tw-content);color:var(--blok-gray-text)}.data-\\[empty\\=true\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\][data-empty=true]:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}@media not all and (min-width:48rem){.max-md\\:px-5{padding-inline:calc(var(--spacing) * 5)}}@media (max-width:650px){.mobile\\:absolute{position:absolute}.mobile\\:right-auto{right:auto}.mobile\\:z-2{z-index:2}.mobile\\:hidden{display:none}.mobile\\:h-toolbox-btn-mobile{height:var(--spacing-toolbox-btn-mobile)}.mobile\\:w-toolbox-btn-mobile{width:var(--spacing-toolbox-btn-mobile)}.mobile\\:rounded-\\[6px\\]{border-radius:6px}.mobile\\:border{border-style:var(--tw-border-style);border-width:1px}.mobile\\:border-mobile-border{border-color:var(--blok-mobile-border)}.mobile\\:bg-popover-bg{background-color:var(--blok-popover-bg)}.mobile\\:p-1{padding:calc(var(--spacing) * 1)}.mobile\\:text-\\[15px\\]{font-size:15px}.mobile\\:font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.mobile\\:shadow-overlay-pane{--tw-shadow:0 3px 15px -3px var(--tw-shadow-color,rgba(13,20,33,.13));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.mobile\\:group-data-\\[blok-rtl\\=true\\]\\:mr-auto:is(:where(.group)[data-blok-rtl=true] *){margin-right:auto}.mobile\\:group-data-\\[blok-rtl\\=true\\]\\:ml-0:is(:where(.group)[data-blok-rtl=true] *){margin-left:calc(var(--spacing) * 0)}.mobile\\:group-data-\\[blok-rtl\\=true\\]\\:pr-0:is(:where(.group)[data-blok-rtl=true] *){padding-right:calc(var(--spacing) * 0)}.mobile\\:group-data-\\[blok-rtl\\=true\\]\\:pl-\\[10px\\]:is(:where(.group)[data-blok-rtl=true] *){padding-left:10px}}@media (min-width:651px){.not-mobile\\:w-6{width:calc(var(--spacing) * 6)}}@media (hover:hover){@media (hover:hover){.can-hover\\:hover\\:cursor-grab:hover{cursor:grab}.can-hover\\:hover\\:cursor-pointer:hover{cursor:pointer}.can-hover\\:hover\\:bg-bg-light:hover{background-color:var(--blok-bg-light)}.can-hover\\:hover\\:bg-item-hover-bg:hover{background-color:var(--blok-item-hover-bg)}.can-hover\\:hover\\:group-data-\\[blok-block-settings-opened\\=true\\]\\:cursor-pointer:hover:is(:where(.group)[data-blok-block-settings-opened=true] *){cursor:pointer}.can-hover\\:hover\\:group-data-\\[blok-toolbox-opened\\=true\\]\\:cursor-pointer:hover:is(:where(.group)[data-blok-toolbox-opened=true] *){cursor:pointer}.can-hover\\:data-blok-popover-item-destructive\\:hover\\:bg-item-destructive-hover-bg[data-blok-popover-item-destructive]:hover{background-color:var(--blok-item-destructive-hover-bg)}.can-hover\\:data-blok-popover-item-destructive\\:hover\\:text-item-destructive-text[data-blok-popover-item-destructive]:hover{color:var(--blok-item-destructive-text)}}}.theme-dark\\:border-neutral-700\\/50:where([data-theme=dark],[data-theme=dark] *){border-color:rgba(64,64,64,.5)}@supports (color:color-mix(in lab, red, red)){.theme-dark\\:border-neutral-700\\/50:where([data-theme=dark],[data-theme=dark] *){border-color:color-mix(in oklab, var(--color-neutral-700) 50%, transparent)}}.theme-dark\\:border-neutral-800:where([data-theme=dark],[data-theme=dark] *){border-color:var(--color-neutral-800)}.theme-dark\\:bg-neutral-700:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-neutral-700)}.theme-dark\\:bg-neutral-800:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-neutral-800)}.theme-dark\\:bg-neutral-900:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-neutral-900)}.theme-dark\\:text-neutral-200:where([data-theme=dark],[data-theme=dark] *){color:var(--color-neutral-200)}.theme-dark\\:text-neutral-400:where([data-theme=dark],[data-theme=dark] *){color:var(--color-neutral-400)}.theme-dark\\:text-neutral-500:where([data-theme=dark],[data-theme=dark] *){color:var(--color-neutral-500)}.theme-dark\\:text-neutral-500\\/80:where([data-theme=dark],[data-theme=dark] *){color:rgba(115,115,115,.8)}@supports (color:color-mix(in lab, red, red)){.theme-dark\\:text-neutral-500\\/80:where([data-theme=dark],[data-theme=dark] *){color:color-mix(in oklab, var(--color-neutral-500) 80%, transparent)}}.theme-dark\\:ring-neutral-600\\/60:where([data-theme=dark],[data-theme=dark] *){--tw-ring-color:rgba(82,82,82,.6)}@supports (color:color-mix(in lab, red, red)){.theme-dark\\:ring-neutral-600\\/60:where([data-theme=dark],[data-theme=dark] *){--tw-ring-color:color-mix(in oklab, var(--color-neutral-600) 60%, transparent)}}.theme-dark\\:placeholder\\:text-neutral-500:where([data-theme=dark],[data-theme=dark] *)::-ms-input-placeholder{color:var(--color-neutral-500)}.theme-dark\\:placeholder\\:text-neutral-500:where([data-theme=dark],[data-theme=dark] *)::placeholder{color:var(--color-neutral-500)}@media (hover:hover){.theme-dark\\:hover\\:bg-neutral-700:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--color-neutral-700)}.theme-dark\\:hover\\:bg-neutral-800:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--color-neutral-800)}.theme-dark\\:hover\\:text-neutral-300:where([data-theme=dark],[data-theme=dark] *):hover{color:var(--color-neutral-300)}}.theme-dark\\:focus\\:ring-neutral-600\\/60:where([data-theme=dark],[data-theme=dark] *):focus{--tw-ring-color:rgba(82,82,82,.6)}@supports (color:color-mix(in lab, red, red)){.theme-dark\\:focus\\:ring-neutral-600\\/60:where([data-theme=dark],[data-theme=dark] *):focus{--tw-ring-color:color-mix(in oklab, var(--color-neutral-600) 60%, transparent)}}.\\[\\&_\\:\\:selection\\]\\:bg-selection-inline ::-moz-selection{background-color:var(--blok-selection-inline)}.\\[\\&_\\:\\:selection\\]\\:bg-selection-inline ::selection{background-color:var(--blok-selection-inline)}.\\[\\&_\\[contenteditable\\]\\:empty\\]\\:after\\:content-\\[\\"\\\\\\\\feff_\\"\\] [contenteditable]:empty:after{--tw-content:"\\\\feff ";content:var(--tw-content)}.\\[\\&_a\\]\\:cursor-pointer a{cursor:pointer}.\\[\\&_a\\]\\:text-link a{color:var(--blok-link)}.\\[\\&_a\\]\\:underline a{-webkit-text-decoration-line:underline;text-decoration-line:underline}.\\[\\&_b\\]\\:font-bold b{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.\\[\\&_div\\]\\:m-0\\! div{margin:calc(var(--spacing) * 0)!important}.\\[\\&_div\\]\\:p-0\\! div{padding:calc(var(--spacing) * 0)!important}.\\[\\&_i\\]\\:italic i{font-style:italic}.\\[\\&_img\\]\\:opacity-55 img{opacity:.55}.\\[\\&_p\\]\\:m-0\\! p{margin:calc(var(--spacing) * 0)!important}.\\[\\&_p\\]\\:p-0\\! p{padding:calc(var(--spacing) * 0)!important}.\\[\\&_path\\]\\:stroke-current path{stroke:currentColor}.\\[\\&_svg\\]\\:block svg{display:block}.\\[\\&_svg\\]\\:size-icon svg{width:var(--spacing-icon);height:var(--spacing-icon)}.\\[\\&_svg\\]\\:h-6 svg{height:calc(var(--spacing) * 6)}.\\[\\&_svg\\]\\:h-7 svg{height:calc(var(--spacing) * 7)}.\\[\\&_svg\\]\\:h-\\[22px\\] svg{height:22px}.\\[\\&_svg\\]\\:h-icon svg{height:var(--spacing-icon)}.\\[\\&_svg\\]\\:max-h-full svg{max-height:100%}.\\[\\&_svg\\]\\:w-6 svg{width:calc(var(--spacing) * 6)}.\\[\\&_svg\\]\\:w-7 svg{width:calc(var(--spacing) * 7)}.\\[\\&_svg\\]\\:w-\\[22px\\] svg{width:22px}.\\[\\&_svg\\]\\:w-icon svg{width:var(--spacing-icon)}.\\[\\&_svg\\]\\:text-gray-text svg{color:var(--blok-gray-text)}@media (max-width:650px){.mobile\\:\\[\\&_svg\\]\\:h-icon-mobile svg{height:var(--spacing-icon-mobile)}.mobile\\:\\[\\&_svg\\]\\:w-icon-mobile svg{width:var(--spacing-icon-mobile)}}:is(.\\*\\*\\:\\[\\[contenteditable\\]\\]\\:select-none *)[contenteditable]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:is(.\\*\\*\\:\\[\\[hidden\\]\\]\\:hidden\\! *)[hidden]{display:none!important}.\\[\\&\\>p\\:first-of-type\\]\\:mt-0>p:first-of-type{margin-top:calc(var(--spacing) * 0)}.\\[\\&\\>p\\:last-of-type\\]\\:mb-0>p:last-of-type{margin-bottom:calc(var(--spacing) * 0)}.\\[\\&\\>svg\\]\\:size-7>svg{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.\\[\\&\\>svg\\]\\:h-9>svg{height:calc(var(--spacing) * 9)}.\\[\\&\\>svg\\]\\:h-\\[16px\\]>svg{height:16px}.\\[\\&\\>svg\\]\\:h-\\[20px\\]>svg{height:20px}.\\[\\&\\>svg\\]\\:w-9>svg{width:calc(var(--spacing) * 9)}.\\[\\&\\>svg\\]\\:w-\\[16px\\]>svg{width:16px}.\\[\\&\\>svg\\]\\:w-\\[20px\\]>svg{width:20px}.\\[\\&\\[data-blok-popover-item-destructive\\]\\[data-blok-focused\\=\\"true\\"\\]\\]\\:bg-item-destructive-hover-bg[data-blok-popover-item-destructive][data-blok-focused=true]{background-color:var(--blok-item-destructive-hover-bg)}.\\[\\&\\[data-blok-popover-item-destructive\\]\\[data-blok-focused\\=\\"true\\"\\]\\]\\:text-item-destructive-text[data-blok-popover-item-destructive][data-blok-focused=true]{color:var(--blok-item-destructive-text)}.\\[\\&\\[data-blok-popover-item-destructive\\]\\[data-blok-force-hover\\]\\]\\:bg-item-destructive-hover-bg[data-blok-popover-item-destructive][data-blok-force-hover]{background-color:var(--blok-item-destructive-hover-bg)}.\\[\\&\\[data-blok-popover-item-destructive\\]\\[data-blok-force-hover\\]\\]\\:text-item-destructive-text[data-blok-popover-item-destructive][data-blok-force-hover]{color:var(--blok-item-destructive-text)}.\\[\\&\\[data-blok-toolbox-opened\\=true\\]_\\[contentEditable\\=true\\]\\[data-blok-placeholder\\]\\:focus\\]\\:before\\:opacity-0\\![data-blok-toolbox-opened=true] [contentEditable="true"][data-blok-placeholder]:focus:before{content:var(--tw-content);opacity:0!important}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:pointer-events-none[data-empty=true]:focus:before{content:var(--tw-content);pointer-events:none}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:cursor-text[data-empty=true]:focus:before{content:var(--tw-content);cursor:text}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:text-gray-text[data-empty=true]:focus:before{content:var(--tw-content);color:var(--blok-gray-text)}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\][data-empty=true]:focus:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}[data-blok-empty=true] .\\[\\[data-blok-empty\\=true\\]_\\&\\[data-empty\\=true\\]\\]\\:before\\:pointer-events-none[data-empty=true]:before{content:var(--tw-content);pointer-events:none}[data-blok-empty=true] .\\[\\[data-blok-empty\\=true\\]_\\&\\[data-empty\\=true\\]\\]\\:before\\:cursor-text[data-empty=true]:before{content:var(--tw-content);cursor:text}[data-blok-empty=true] .\\[\\[data-blok-empty\\=true\\]_\\&\\[data-empty\\=true\\]\\]\\:before\\:text-gray-text[data-empty=true]:before{content:var(--tw-content);color:var(--blok-gray-text)}[data-blok-empty=true] .\\[\\[data-blok-empty\\=true\\]_\\&\\[data-empty\\=true\\]\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\][data-empty=true]:before{--tw-content:attr(data-blok-placeholder-active);content:var(--tw-content)}[data-blok-interface=blok]{all:initial!important;box-sizing:border-box!important;z-index:1!important;display:block!important;position:relative!important}[data-blok-interface=blok][data-blok-rtl=true]{direction:rtl!important}[data-blok-interface=blok],[data-blok-interface=tooltip]{font-family:var(--blok-font-family,ui-sans-serif, system-ui, sans-serif)!important;color:var(--blok-text-primary)!important}[data-blok-interface=blok],[data-blok-interface=tooltip],[data-blok-popover]{--radius:.25rem;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem}[data-blok-popover]:not([data-blok-popover-inline]),[data-blok-interface=tooltip]{color:initial!important;font-family:var(--blok-font-family,ui-sans-serif, system-ui, sans-serif)!important;font-size:initial!important;font-weight:initial!important;font-style:initial!important;font-variant:initial!important;font-stretch:initial!important;line-height:initial!important;letter-spacing:initial!important;word-spacing:initial!important;text-align:initial!important;text-indent:initial!important;text-transform:initial!important;-webkit-text-decoration:initial!important;-webkit-text-decoration:initial!important;-webkit-text-decoration:initial!important;text-decoration:initial!important;text-shadow:initial!important;white-space:initial!important;word-break:initial!important;overflow-wrap:initial!important;cursor:initial!important;pointer-events:initial!important;user-select:initial!important;direction:initial!important;list-style:initial!important;quotes:initial!important;border-collapse:initial!important;border-spacing:initial!important;empty-cells:initial!important;caption-side:initial!important;scrollbar-width:initial!important;scrollbar-color:initial!important}:where([data-blok-interface],[data-blok-popover]) *{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) :after{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) :before{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) ::-ms-backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) ::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) ::-webkit-file-upload-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) ::-ms-browse{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) ::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-blok-interface],[data-blok-popover]) hr{height:0;color:inherit;border-top-width:1px}:where([data-blok-interface],[data-blok-popover]) abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}[data-blok-interface] :-webkit-any(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}[data-blok-interface] :-moz-any(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}[data-blok-interface] :is(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}[data-blok-popover] :-webkit-any(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}[data-blok-popover] :-moz-any(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}[data-blok-popover] :is(h1,h2,h3,h4,h5,h6){letter-spacing:inherit!important;font-family:inherit!important}:where([data-blok-interface],[data-blok-popover]) a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(b,strong){font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) :-moz-any(b,strong){font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) :is(b,strong){font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) mark{color:inherit}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(code,kbd,samp,pre){font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}:where([data-blok-interface],[data-blok-popover]) :-moz-any(code,kbd,samp,pre){font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}:where([data-blok-interface],[data-blok-popover]) :is(code,kbd,samp,pre){font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}:where([data-blok-interface],[data-blok-popover]) small{font-size:80%}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(sub,sup){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where([data-blok-interface],[data-blok-popover]) :-moz-any(sub,sup){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where([data-blok-interface],[data-blok-popover]) :is(sub,sup){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where([data-blok-interface],[data-blok-popover]) sub{bottom:-.25em}:where([data-blok-interface],[data-blok-popover]) sup{top:-.5em}:where([data-blok-interface],[data-blok-popover]) table{text-indent:0;border-color:inherit;border-collapse:collapse}:where([data-blok-interface],[data-blok-popover]) :-moz-focusring{outline:auto}:where([data-blok-interface],[data-blok-popover]) progress{vertical-align:baseline}:where([data-blok-interface],[data-blok-popover]) summary{display:list-item}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(ol,ul,menu){list-style:none}:where([data-blok-interface],[data-blok-popover]) :-moz-any(ol,ul,menu){list-style:none}:where([data-blok-interface],[data-blok-popover]) :is(ol,ul,menu){list-style:none}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(img,svg,video,canvas,audio,iframe,embed,object){vertical-align:middle;display:block}:where([data-blok-interface],[data-blok-popover]) :-moz-any(img,svg,video,canvas,audio,iframe,embed,object){vertical-align:middle;display:block}:where([data-blok-interface],[data-blok-popover]) :is(img,svg,video,canvas,audio,iframe,embed,object){vertical-align:middle;display:block}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(img,video){max-width:100%;height:auto}:where([data-blok-interface],[data-blok-popover]) :-moz-any(img,video){max-width:100%;height:auto}:where([data-blok-interface],[data-blok-popover]) :is(img,video){max-width:100%;height:auto}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(button,input,select,optgroup,textarea){font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent}:where([data-blok-interface],[data-blok-popover]) :-moz-any(button,input,select,optgroup,textarea){font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent}:where([data-blok-interface],[data-blok-popover]) :is(button,input,select,optgroup,textarea){font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent}:where([data-blok-interface],[data-blok-popover]) :where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) :where(select:-moz-any([multiple],[size])) optgroup{font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) :where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where([data-blok-interface],[data-blok-popover]) :where(select:-webkit-any([multiple],[size])) optgroup option:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where([data-blok-interface],[data-blok-popover]) :where(select:-moz-any([multiple],[size])) optgroup option:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where([data-blok-interface],[data-blok-popover]) :where(select:is([multiple],[size])) optgroup option:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where([data-blok-interface],[data-blok-popover]) :where(select:-webkit-any([multiple],[size])) optgroup option:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where([data-blok-interface],[data-blok-popover]) :where(select:-moz-any([multiple],[size])) optgroup option:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where([data-blok-interface],[data-blok-popover]) :where(select:is([multiple],[size])) optgroup option:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where([data-blok-interface],[data-blok-popover]) :dir(ltr)::file-selector-button{margin-right:4px}:where([data-blok-interface],[data-blok-popover]) :dir(rtl)::file-selector-button{margin-left:4px}:where([data-blok-interface],[data-blok-popover]) ::-ms-input-placeholder{opacity:1}:where([data-blok-interface],[data-blok-popover]) ::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){:where([data-blok-interface],[data-blok-popover]) ::-ms-input-placeholder{color:currentColor}:where([data-blok-interface],[data-blok-popover]) ::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){:where([data-blok-interface],[data-blok-popover]) ::-ms-input-placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}:where([data-blok-interface],[data-blok-popover]) ::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}:where([data-blok-interface],[data-blok-popover]) textarea{resize:vertical}:where([data-blok-interface],[data-blok-popover]) ::-webkit-search-decoration{-webkit-appearance:none}:where([data-blok-interface],[data-blok-popover]) ::-webkit-search-cancel-button{-webkit-appearance:none}:where([data-blok-interface],[data-blok-popover]) ::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}:where([data-blok-interface],[data-blok-popover]) ::-webkit-datetime-edit{display:inline-flex}:where([data-blok-interface],[data-blok-popover]) ::-webkit-datetime-edit-fields-wrapper{padding:0}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(){padding-top:0;padding-bottom:0}:where([data-blok-interface],[data-blok-popover]) :-moz-any(){padding-top:0;padding-bottom:0}:where([data-blok-interface],[data-blok-popover]) :is(){padding-top:0;padding-bottom:0}:where([data-blok-interface],[data-blok-popover]) ::-webkit-calendar-picker-indicator{line-height:1}:where([data-blok-interface],[data-blok-popover]) :-moz-ui-invalid{box-shadow:none}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(button,input:where([type=button],[type=reset],[type=submit])){-webkit-appearance:button;-moz-appearance:button;-ms-appearance:button;appearance:button}:where([data-blok-interface],[data-blok-popover]) :-moz-any(button,input:where([type=button],[type=reset],[type=submit])){-webkit-appearance:button;-moz-appearance:button;-ms-appearance:button;appearance:button}:where([data-blok-interface],[data-blok-popover]) :is(button,input:where([type=button],[type=reset],[type=submit])){-webkit-appearance:button;-moz-appearance:button;-ms-appearance:button;appearance:button}:where([data-blok-interface],[data-blok-popover]) :-webkit-any(){height:auto}:where([data-blok-interface],[data-blok-popover]) :-moz-any(){height:auto}:where([data-blok-interface],[data-blok-popover]) :is(){height:auto}:where([data-blok-interface],[data-blok-popover]) [hidden]:where(:not([hidden=until-found])){display:none!important}[data-blok-interface] :focus:not(:focus-visible){outline:none}[data-blok-popover] :focus:not(:focus-visible){outline:none}[data-blok-interface] :-webkit-any([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-interface] :-moz-any([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-interface] :is([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-popover] :-webkit-any([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-popover] :-moz-any([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-popover] :is([contenteditable],input,textarea):focus-visible{outline:none}[data-blok-interface] :focus-visible{outline:revert;outline-offset:revert;border-radius:revert}[data-blok-popover] :focus-visible{outline:revert;outline-offset:revert;border-radius:revert}[data-blok-interface] ::-moz-selection{background-color:revert;color:revert}[data-blok-interface] ::selection{background-color:revert;color:revert}[data-blok-popover] ::-moz-selection{background-color:revert;color:revert}[data-blok-popover] ::selection{background-color:revert;color:revert}[data-blok-interface] ::-webkit-scrollbar{width:revert;height:revert;background-color:revert}[data-blok-popover] ::-webkit-scrollbar{width:revert;height:revert;background-color:revert}@layer utilities{.max-w-blok-content{max-width:var(--max-width-content)}}[data-blok-interface],[data-blok-popover]{--blok-selection:#e1f2ff;--blok-selection-inline:#d4ecff;--blok-selection-highlight:rgba(46,170,220,.2);--blok-bg-light:#eff2f5;--blok-gray-text:#707684;--blok-dark:#1d202b;--blok-active-icon:#2383e2;--blok-link:#2383e2;--blok-line-gray:#eff0f1;--blok-tooltip-bg:#1d202b;--blok-tooltip-font:#cdd1e0;--blok-icon-active-bg:rgba(35,131,226,.14);--blok-icon-active-text:#2383e2;--blok-text-primary:black;--blok-text-secondary:#707684;--blok-popover-border:rgba(55,53,47,.09);--blok-popover-shadow:rgba(13,20,33,.1);--blok-popover-bg:#fff;--blok-popover-box-shadow:0 0 0 1px rgba(55,53,47,.09), 0 4px 16px rgba(0,0,0,.1), 0 16px 40px -8px rgba(0,0,0,.08);--blok-popover-border-icon:rgba(201,201,204,.48);--blok-popover-border-icon-disabled:#eff0f1;--blok-item-focus-bg:rgba(35,131,226,.14);--blok-item-focus-shadow:rgba(35,131,226,.14);--blok-item-hover-bg:rgba(55,53,47,.08);--blok-icon-bg:rgba(0,0,0,.04);--blok-item-confirm-bg:#e24a4a;--blok-item-confirm-hover-bg:#ce4343;--blok-item-destructive-text:#e24a4a;--blok-item-destructive-hover-bg:rgba(226,74,74,.08);--blok-notify-success-bg:#fafffe;--blok-notify-success-bar:#41ffb1;--blok-notify-error-bg:#fffbfb;--blok-notify-error-bar:#fb5d5d;--blok-notify-btn-cancel-bg:#f2f5f7;--blok-notify-btn-cancel-text:#656b7c;--blok-notify-btn-confirm-bg:#34c992;--blok-mobile-border:#e8e8eb;--blok-search-input-bg:#f8f8f8;--blok-search-input-border:rgba(226,226,229,.2);--blok-search-input-focus-border:rgba(35,131,226,.5);--blok-link-input-border:rgba(226,226,229,.2);--blok-popover-icon-bg:rgba(55,53,47,.06);--blok-popover-icon-active-bg:rgba(35,131,226,.1);--blok-table-border:#d1d5db;--blok-table-heading-bg:#f9fafb;--blok-table-grip-outline:transparent;--blok-table-drag-source-bg:#f3f4f6;--blok-database-card-bg:#fff;--blok-database-card-bg-hover:#f7f7f5;--blok-database-card-shadow:0 1px 3px rgba(0,0,0,.08);--blok-database-card-shadow-hover:0 4px 12px rgba(0,0,0,.12);--blok-database-card-border:rgba(0,0,0,.06);--blok-database-card-border-active:rgba(35,131,226,.57);--blok-database-card-placeholder:rgba(55,53,47,.4);--blok-database-card-colored-overlay:var(--blok-database-card-bg);--blok-database-card-colored-overlay-hover:var(--blok-database-card-bg-hover);--blok-database-card-colored-border:var(--blok-database-card-border);--blok-database-column-bg:rgba(0,0,0,.04);--blok-database-add-text:rgba(55,53,47,.5);--blok-database-add-border:rgba(55,53,47,.25);--blok-database-add-hover-bg:rgba(55,53,47,.06);--blok-database-delete-text:rgba(55,53,47,.35);--blok-database-delete-hover-text:rgba(55,53,47,.65);--blok-database-drawer-border:#e8e8eb;--blok-database-tab-bg:transparent;--blok-database-tab-bg-active:rgba(0,0,0,.06);--blok-database-tab-bg-hover:rgba(0,0,0,.04);--blok-database-tab-text:rgba(55,53,47,.5);--blok-database-tab-text-active:#37352f;--blok-database-popover-bg:#fff;--blok-database-popover-shadow:0 4px 24px rgba(0,0,0,.12), 0 0 0 1px rgba(0,0,0,.04);--blok-database-popover-hover:rgba(0,0,0,.04);--blok-toggle-off-bg:#d4d4d8;--blok-toggle-on-bg:#2383e2;--blok-toggle-thumb-on-bg:#fff;--blok-checklist-border:rgba(0,0,0,.28);--blok-checklist-shadow:rgba(0,0,0,.08);--blok-checklist-hover-ring:rgba(35,131,226,.14);--blok-checklist-readonly-fill:#94a3b8;--blok-swatch-neutral-bg:#f7f7f5;--blok-swatch-ring-hover:rgba(0,0,0,.1);--blok-swatch-ring-active:rgba(0,0,0,.3);--blok-bg-secondary:#f7f8fa;--blok-border-secondary:rgba(55,53,47,.09);--blok-color-gray-text:#787774;--blok-color-gray-bg:#f1f1ef;--blok-color-brown-text:#9f6b53;--blok-color-brown-bg:#f4eeee;--blok-color-orange-text:#d9730d;--blok-color-orange-bg:#fbecdd;--blok-color-yellow-text:#cb9b00;--blok-color-yellow-bg:#fbf3db;--blok-color-green-text:#448361;--blok-color-green-bg:#edf3ec;--blok-color-teal-text:#2b9a8f;--blok-color-teal-bg:#e4f5f3;--blok-color-blue-text:#337ea9;--blok-color-blue-bg:#e7f3f8;--blok-color-purple-text:#9065b0;--blok-color-purple-bg:#f6f3f9;--blok-color-pink-text:#c14c8a;--blok-color-pink-bg:#f9f0f5;--blok-color-red-text:#d44c47;--blok-color-red-bg:#fdebec}@media (prefers-color-scheme:dark){:root:not([data-blok-theme=light]) [data-blok-interface],:root:not([data-blok-theme=light]) [data-blok-popover]{--blok-selection:rgba(35,131,226,.2);--blok-selection-inline:rgba(35,131,226,.3);--blok-selection-highlight:rgba(35,131,226,.25);--blok-bg-light:rgba(255,255,255,.08);--blok-gray-text:#a39e98;--blok-dark:#191918;--blok-active-icon:#529cca;--blok-link:#529cca;--blok-line-gray:#37352f;--blok-tooltip-bg:#191918;--blok-tooltip-font:#e8e6e3;--blok-icon-active-bg:rgba(35,131,226,.2);--blok-icon-active-text:#529cca;--blok-text-primary:#e2e0dc;--blok-text-secondary:#a39e98;--blok-popover-border:rgba(255,255,255,.14);--blok-popover-shadow:rgba(0,0,0,.6);--blok-popover-bg:#252525;--blok-popover-box-shadow:0 0 0 1px rgba(255,255,255,.14), 0 4px 24px rgba(0,0,0,.5), 0 16px 40px -8px rgba(0,0,0,.4);--blok-popover-border-icon:#37352f;--blok-popover-border-icon-disabled:#2f2d29;--blok-item-focus-bg:rgba(35,131,226,.2);--blok-item-focus-shadow:rgba(35,131,226,.2);--blok-item-hover-bg:rgba(255,255,255,.055);--blok-icon-bg:rgba(255,255,255,.07);--blok-item-confirm-bg:#3d1f1f;--blok-item-confirm-hover-bg:#4a2020;--blok-item-destructive-text:#fb5d5d;--blok-item-destructive-hover-bg:rgba(251,93,93,.1);--blok-notify-success-bg:#1a2e22;--blok-notify-success-bar:#41ffb1;--blok-notify-error-bg:#2e1a1a;--blok-notify-error-bar:#fb5d5d;--blok-notify-btn-cancel-bg:#2f2d29;--blok-notify-btn-cancel-text:#a39e98;--blok-notify-btn-confirm-bg:#34c992;--blok-mobile-border:rgba(255,255,255,.07);--blok-search-input-bg:#363636;--blok-search-input-border:rgba(255,255,255,.2);--blok-search-input-focus-border:rgba(35,131,226,.5);--blok-link-input-border:#37352f;--blok-popover-icon-bg:rgba(255,255,255,.08);--blok-popover-icon-active-bg:rgba(35,131,226,.15);--blok-table-border:#3e3e3d;--blok-table-heading-bg:#272725;--blok-table-grip-outline:rgba(255,255,255,.12);--blok-table-drag-source-bg:rgba(255,255,255,.07);--blok-database-card-bg:#2d2d2c;--blok-database-card-bg-hover:#353534;--blok-database-card-shadow:0 1px 3px rgba(0,0,0,.25);--blok-database-card-shadow-hover:0 4px 12px rgba(0,0,0,.45);--blok-database-card-border:rgba(255,255,255,.06);--blok-database-card-border-active:rgba(35,131,226,.7);--blok-database-card-placeholder:rgba(255,255,255,.3);--blok-database-card-colored-overlay:rgba(255,255,255,.06);--blok-database-card-colored-overlay-hover:rgba(255,255,255,.11);--blok-database-card-colored-border:rgba(255,255,255,.07);--blok-database-column-bg:rgba(255,255,255,.05);--blok-database-add-text:rgba(255,255,255,.4);--blok-database-add-border:rgba(255,255,255,.2);--blok-database-add-hover-bg:rgba(255,255,255,.06);--blok-database-delete-text:rgba(255,255,255,.3);--blok-database-delete-hover-text:rgba(255,255,255,.55);--blok-database-drawer-border:rgba(255,255,255,.1);--blok-database-tab-bg:transparent;--blok-database-tab-bg-active:rgba(255,255,255,.08);--blok-database-tab-bg-hover:rgba(255,255,255,.04);--blok-database-tab-text:rgba(255,255,255,.45);--blok-database-tab-text-active:rgba(255,255,255,.9);--blok-database-popover-bg:#2d2d2c;--blok-database-popover-shadow:0 4px 24px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.08);--blok-database-popover-hover:rgba(255,255,255,.06);--blok-toggle-off-bg:#3f3f46;--blok-toggle-on-bg:#529cca;--blok-toggle-thumb-on-bg:#fff;--blok-checklist-border:rgba(255,255,255,.22);--blok-checklist-shadow:rgba(0,0,0,.3);--blok-checklist-hover-ring:rgba(82,156,202,.2);--blok-checklist-readonly-fill:#475569;--blok-swatch-neutral-bg:#3a3a38;--blok-swatch-ring-hover:rgba(255,255,255,.15);--blok-swatch-ring-active:rgba(255,255,255,.35);--blok-bg-secondary:rgba(255,255,255,.04);--blok-border-secondary:rgba(255,255,255,.08);--blok-color-gray-text:#9b9b9b;--blok-color-gray-bg:#2f2f2f;--blok-color-brown-text:#c59177;--blok-color-brown-bg:#452a1c;--blok-color-orange-text:#dc8c47;--blok-color-orange-bg:#4d2f14;--blok-color-yellow-text:#d4ab49;--blok-color-yellow-bg:#544012;--blok-color-green-text:#5db184;--blok-color-green-bg:#1e432f;--blok-color-teal-text:#5cbcb3;--blok-color-teal-bg:#1b4642;--blok-color-blue-text:#5c9fcc;--blok-color-blue-bg:#123a54;--blok-color-purple-text:#a67dca;--blok-color-purple-bg:#341d49;--blok-color-pink-text:#d45e99;--blok-color-pink-bg:#4b1b33;--blok-color-red-text:#dd5e5a;--blok-color-red-bg:#4e1a18}}[data-blok-theme=dark] [data-blok-interface],[data-blok-theme=dark] [data-blok-popover]{--blok-selection:rgba(35,131,226,.2);--blok-selection-inline:rgba(35,131,226,.3);--blok-selection-highlight:rgba(35,131,226,.25);--blok-bg-light:rgba(255,255,255,.08);--blok-gray-text:#a39e98;--blok-dark:#191918;--blok-active-icon:#529cca;--blok-link:#529cca;--blok-line-gray:#37352f;--blok-tooltip-bg:#191918;--blok-tooltip-font:#e8e6e3;--blok-icon-active-bg:rgba(35,131,226,.2);--blok-icon-active-text:#529cca;--blok-text-primary:#e2e0dc;--blok-text-secondary:#a39e98;--blok-popover-border:rgba(255,255,255,.14);--blok-popover-shadow:rgba(0,0,0,.6);--blok-popover-bg:#252525;--blok-popover-box-shadow:0 0 0 1px rgba(255,255,255,.14), 0 4px 24px rgba(0,0,0,.5), 0 16px 40px -8px rgba(0,0,0,.4);--blok-popover-border-icon:#37352f;--blok-popover-border-icon-disabled:#2f2d29;--blok-item-focus-bg:rgba(35,131,226,.2);--blok-item-focus-shadow:rgba(35,131,226,.2);--blok-item-hover-bg:rgba(255,255,255,.055);--blok-icon-bg:rgba(255,255,255,.07);--blok-item-confirm-bg:#3d1f1f;--blok-item-confirm-hover-bg:#4a2020;--blok-item-destructive-text:#fb5d5d;--blok-item-destructive-hover-bg:rgba(251,93,93,.1);--blok-notify-success-bg:#1a2e22;--blok-notify-success-bar:#41ffb1;--blok-notify-error-bg:#2e1a1a;--blok-notify-error-bar:#fb5d5d;--blok-notify-btn-cancel-bg:#2f2d29;--blok-notify-btn-cancel-text:#a39e98;--blok-notify-btn-confirm-bg:#34c992;--blok-mobile-border:rgba(255,255,255,.07);--blok-search-input-bg:#363636;--blok-search-input-border:rgba(255,255,255,.2);--blok-search-input-focus-border:rgba(35,131,226,.5);--blok-link-input-border:#37352f;--blok-popover-icon-bg:rgba(255,255,255,.08);--blok-popover-icon-active-bg:rgba(35,131,226,.15);--blok-table-border:#3e3e3d;--blok-table-heading-bg:#272725;--blok-table-grip-outline:rgba(255,255,255,.12);--blok-table-drag-source-bg:rgba(255,255,255,.07);--blok-database-card-bg:#2d2d2c;--blok-database-card-bg-hover:#353534;--blok-database-card-shadow:0 1px 2px rgba(0,0,0,.2);--blok-database-card-shadow-hover:0 4px 12px rgba(0,0,0,.45);--blok-database-card-border:rgba(255,255,255,.06);--blok-database-card-border-active:rgba(35,131,226,.7);--blok-database-card-placeholder:rgba(255,255,255,.3);--blok-database-card-colored-overlay:rgba(255,255,255,.06);--blok-database-card-colored-overlay-hover:rgba(255,255,255,.11);--blok-database-card-colored-border:rgba(255,255,255,.07);--blok-database-column-bg:rgba(255,255,255,.03);--blok-database-add-text:rgba(255,255,255,.4);--blok-database-add-border:rgba(255,255,255,.2);--blok-database-add-hover-bg:rgba(255,255,255,.06);--blok-database-delete-text:rgba(255,255,255,.3);--blok-database-delete-hover-text:rgba(255,255,255,.55);--blok-database-drawer-border:rgba(255,255,255,.1);--blok-database-tab-bg:transparent;--blok-database-tab-bg-active:rgba(255,255,255,.08);--blok-database-tab-bg-hover:rgba(255,255,255,.04);--blok-database-tab-text:rgba(255,255,255,.45);--blok-database-tab-text-active:rgba(255,255,255,.9);--blok-database-popover-bg:#2d2d2c;--blok-database-popover-shadow:0 4px 24px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.08);--blok-database-popover-hover:rgba(255,255,255,.06);--blok-toggle-off-bg:#3f3f46;--blok-toggle-on-bg:#e4e4e7;--blok-toggle-thumb-on-bg:#252525;--blok-checklist-border:rgba(255,255,255,.22);--blok-checklist-shadow:rgba(0,0,0,.3);--blok-checklist-hover-ring:rgba(82,156,202,.2);--blok-checklist-readonly-fill:#475569;--blok-swatch-neutral-bg:#3a3a38;--blok-swatch-ring-hover:rgba(255,255,255,.15);--blok-swatch-ring-active:rgba(255,255,255,.35);--blok-bg-secondary:rgba(255,255,255,.04);--blok-border-secondary:rgba(255,255,255,.08);--blok-color-gray-text:#9b9b9b;--blok-color-gray-bg:#2f2f2f;--blok-color-brown-text:#c59177;--blok-color-brown-bg:#452a1c;--blok-color-orange-text:#dc8c47;--blok-color-orange-bg:#4d2f14;--blok-color-yellow-text:#d4ab49;--blok-color-yellow-bg:#544012;--blok-color-green-text:#5db184;--blok-color-green-bg:#1e432f;--blok-color-teal-text:#5cbcb3;--blok-color-teal-bg:#1b4642;--blok-color-blue-text:#5c9fcc;--blok-color-blue-bg:#123a54;--blok-color-purple-text:#a67dca;--blok-color-purple-bg:#341d49;--blok-color-pink-text:#d45e99;--blok-color-pink-bg:#4b1b33;--blok-color-red-text:#dd5e5a;--blok-color-red-bg:#4e1a18}@keyframes blok-checkbox-pop{0%{transform:scale(1)}35%{transform:scale(1.18)}65%{transform:scale(.9)}82%{transform:scale(1.07)}to{transform:scale(1)}}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;border:2px solid var(--blok-checklist-border);box-shadow:inset 0 1px 2px var(--blok-checklist-shadow);background-color:transparent;border-radius:5px;flex-shrink:0;transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:checked{background-color:var(--blok-active-icon);border-color:var(--blok-active-icon);box-shadow:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 10 10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 5L4 7.5L8.5 2.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:10px 10px;animation:.28s linear blok-checkbox-pop}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:not(:disabled):not(:checked):hover{border-color:var(--blok-active-icon);box-shadow:0 0 0 3px var(--blok-checklist-hover-ring), inset 0 1px 2px var(--blok-checklist-shadow);transform:scale(1.06)}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:not(:disabled):checked:hover{box-shadow:0 0 0 3px var(--blok-checklist-hover-ring)}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:disabled:not(:checked){opacity:.5}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:disabled:checked{background-color:var(--blok-checklist-readonly-fill);border-color:var(--blok-checklist-readonly-fill);box-shadow:none;animation:none}[data-blok-interface] [data-list-style=checklist] input[type=checkbox]:focus-visible{outline:2px solid var(--blok-active-icon);outline-offset:2px}@media (prefers-color-scheme:dark){:root:not([data-blok-theme=light]) [data-blok-interface] [data-list-style=checklist] [data-checked=true]{opacity:.45}}[data-blok-theme=dark] [data-blok-interface] [data-list-style=checklist] [data-checked=true]{opacity:.45}:where([data-blok-interface],[data-blok-popover]) *{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) :after{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) :before{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) ::-ms-backdrop{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) ::backdrop{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) ::-webkit-file-upload-button{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) ::-ms-browse{border-color:var(--color-gray-200,currentcolor)}:where([data-blok-interface],[data-blok-popover]) ::file-selector-button{border-color:var(--color-gray-200,currentcolor)}[data-blok-navigation-focused=true]{width:var(--spacing-content-width);border-radius:var(--radius-md);background-color:var(--blok-item-focus-bg);max-width:100%;margin-left:auto;margin-right:auto}@media (hover:hover){[data-blok-item-name=delete]:hover{color:var(--blok-item-confirm-bg);transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}[data-drop-indicator]{position:relative}[data-drop-indicator]:before{pointer-events:none;z-index:10;height:calc(var(--spacing) * 1.5);width:100%;max-width:var(--max-width-content);border-radius:var(--radius-xs);--tw-content:"";content:var(--tw-content);margin-left:calc(var(--drop-indicator-depth,0) * 12px);max-width:calc(650px - var(--drop-indicator-depth,0) * 24px);background-color:#d4e3fc;position:absolute;left:50%}[data-drop-indicator=bottom]:before{bottom:calc(var(--spacing) * 0);transform:translate(-50%)translateY(50%)}[data-drop-indicator=top]:before{top:calc(var(--spacing) * 0);transform:translate(-50%)translateY(-50%)}@keyframes spring-loaded-flash{0%{background-color:var(--blok-selection)}to{background-color:transparent}}[data-blok-spring-loaded] [data-blok-element-content]{border-radius:4px;animation:.7s ease-out forwards spring-loaded-flash}[data-blok-content-align=left] [data-blok-element-content]{margin-left:0}[data-blok-content-align=center] [data-blok-element-content]{margin-left:auto;margin-right:auto}[data-blok-content-align=right] [data-blok-element-content]{margin-left:auto}[data-blok-dragging-multi=true] [data-blok-selected=true]{opacity:.4;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;transition-duration:.2s}[data-blok-selected=true] [data-blok-element-content]:has([data-list-style]){background-color:transparent}[data-blok-selected=true] [data-list-style] [role=listitem]{background-color:var(--blok-selection);border-radius:4px}[data-blok-selected=true] [data-list-style] [role=listitem] [contenteditable]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[data-blok-toggle-children] :-webkit-any(h1,h2,h3,h4,h5,h6){margin-top:1px}[data-blok-toggle-children] :-moz-any(h1,h2,h3,h4,h5,h6){margin-top:1px}[data-blok-toggle-children] :is(h1,h2,h3,h4,h5,h6){margin-top:1px}[data-blok-component=callout] button:has(+[data-blok-toggle-children]>:first-child h1){margin-top:8.5px}[data-blok-component=callout] button:has(+[data-blok-toggle-children]>:first-child h2){margin-top:4.6px}[data-blok-component=callout] button:has(+[data-blok-toggle-children]>:first-child h3){margin-top:2px}[data-blok-table-cell-blocks]>[data-blok-element]{margin-block:calc(var(--spacing) * 0);padding-block:calc(var(--spacing) * 0)}[data-blok-table-cell-blocks] .blok-block{margin:calc(var(--spacing) * 0);min-height:1.6em;padding:calc(var(--spacing) * 0)}[data-blok-table-cell-blocks] [data-blok-tool=list]{padding-block:calc(var(--spacing) * 0);margin-top:2px;margin-bottom:2px}[data-blok-cell-placement=top-center]{align-items:center}[data-blok-cell-placement=top-right]{align-items:flex-end}[data-blok-cell-placement=middle-left]{justify-content:center}[data-blok-cell-placement=middle-center]{justify-content:center;align-items:center}[data-blok-cell-placement=middle-right]{justify-content:center;align-items:flex-end}[data-blok-cell-placement=bottom-left]{justify-content:flex-end}[data-blok-cell-placement=bottom-center]{justify-content:flex-end;align-items:center}[data-blok-cell-placement=bottom-right]{justify-content:flex-end;align-items:flex-end}[data-blok-table-cell] [data-blok-element-content]{transition-property:background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to}[data-blok-table-heading] [data-blok-table-cell],[data-blok-table-heading-col]{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);background-color:var(--blok-table-heading-bg)}[data-blok-table-haze][data-blok-table-haze-visible]{opacity:1}@media (prefers-color-scheme:dark){:root:not([data-blok-theme=light]) [data-blok-interface] [data-blok-table-grip]:not(.bg-gray-200):not(.bg-blue-500){background-color:#4a4a4a}:root:not([data-blok-theme=light]) [data-blok-interface] [data-blok-table-grip].bg-gray-200{background-color:#555554}:root:not([data-blok-theme=light]) [data-blok-interface] [data-blok-table-grip]:not(.bg-blue-500) svg{color:#fff}:root:not([data-blok-theme=light]) [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}:root:not([data-blok-theme=light]) [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}:root:not([data-blok-theme=light]) [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}:root:not([data-blok-theme=light]) [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}:root:not([data-blok-theme=light]) [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}:root:not([data-blok-theme=light]) [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}:root:not([data-blok-theme=light]) [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}:root:not([data-blok-theme=light]) [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}:root:not([data-blok-theme=light]) [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}:root:not([data-blok-theme=light]) [data-blok-interface] [data-blok-table-haze=left]{background-image:linear-gradient(to right, var(--blok-dark), transparent)}:root:not([data-blok-theme=light]) [data-blok-interface] [data-blok-table-haze=right]{background-image:linear-gradient(to left, var(--blok-dark), transparent)}}[data-blok-theme=dark] [data-blok-interface] [data-blok-table-grip]:not(.bg-gray-200):not(.bg-blue-500){background-color:#4a4a4a}[data-blok-theme=dark] [data-blok-interface] [data-blok-table-grip].bg-gray-200{background-color:#555554}[data-blok-theme=dark] [data-blok-interface] [data-blok-table-grip]:not(.bg-blue-500) svg{color:#fff}[data-blok-theme=dark] [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}[data-blok-theme=dark] [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}[data-blok-theme=dark] [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300{background-color:#2c2c2b;border-color:rgba(255,255,255,.17)}[data-blok-theme=dark] [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}[data-blok-theme=dark] [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}[data-blok-theme=dark] [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]):hover .border-gray-300{background-color:#2e2e2d}[data-blok-theme=dark] [data-blok-interface] :-webkit-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}[data-blok-theme=dark] [data-blok-interface] :-moz-any([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}[data-blok-theme=dark] [data-blok-interface] :is([data-blok-table-add-row],[data-blok-table-add-col]) .border-gray-300 svg{color:#9e9e9d}[data-blok-theme=dark] [data-blok-interface] [data-blok-table-haze=left]{background-image:linear-gradient(to right, var(--blok-dark), transparent)}[data-blok-theme=dark] [data-blok-interface] [data-blok-table-haze=right]{background-image:linear-gradient(to left, var(--blok-dark), transparent)}[data-blok-slash-search]{background-color:var(--blok-search-input-bg);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;max-width:240px;padding-inline:calc(var(--spacing) * 2);transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:10px;transition-duration:.15s}[data-blok-slash-search]:focus-visible{background-color:var(--blok-search-input-bg);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;max-width:240px;padding-inline:calc(var(--spacing) * 2);transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;border-radius:10px;transition-duration:.15s}[data-blok-table-cell] [data-blok-slash-search]{border-radius:6px}[data-blok-table-cell] [data-blok-slash-search]:focus-visible{border-radius:6px}[data-blok-slash-search]:after{content:attr(data-blok-slash-search);pointer-events:none;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--blok-gray-text)}[data-blok-slash-search]:before{content:none!important}[data-blok-popover-items]{scrollbar-width:thin;scrollbar-color:var(--blok-popover-border) transparent}[data-blok-popover-items]::-webkit-scrollbar{width:4px}[data-blok-popover-items]::-webkit-scrollbar-track{background:0 0}[data-blok-popover-items]::-webkit-scrollbar-thumb{background:var(--blok-popover-border);border-radius:4px}[data-blok-popover-items]::-webkit-scrollbar-thumb:hover{background:var(--blok-gray-text)}:where([data-blok-emoji-picker]) :where(button,input){-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;color:inherit;font:inherit;background:0 0;border:none;margin:0;padding:0}:where([data-blok-emoji-picker][hidden]){display:none!important}:where([data-blok-emoji-picker]) :where([hidden]){display:none!important}[data-blok-emoji-picker]{transform-origin:0 0;animation:.18s cubic-bezier(.16,1,.3,1) blok-emoji-picker-in}@keyframes blok-emoji-picker-in{0%{opacity:0;transform:translateY(4px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes blok-emoji-empty-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[data-emoji-picker-body]{scrollbar-width:thin;scrollbar-color:transparent transparent}[data-emoji-picker-body]:hover{scrollbar-color:currentColor transparent}@supports (color:color-mix(in lab, red, red)){[data-emoji-picker-body]:hover{scrollbar-color:color-mix(in srgb, currentColor 12%, transparent) transparent}}[data-emoji-picker-body]::-webkit-scrollbar{width:6px}[data-emoji-picker-body]::-webkit-scrollbar-track{background:0 0}[data-emoji-picker-body]::-webkit-scrollbar-thumb{background:0 0;border-radius:3px}[data-emoji-picker-body]:hover::-webkit-scrollbar-thumb{background:currentColor}@supports (color:color-mix(in lab, red, red)){[data-emoji-picker-body]:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, currentColor 12%, transparent)}}[data-emoji-picker-body]::-webkit-scrollbar-thumb:hover{background:currentColor}@supports (color:color-mix(in lab, red, red)){[data-emoji-picker-body]::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, currentColor 22%, transparent)}}[data-blok-database-board]{padding-left:max(0px, calc((100% - var(--max-width-content)) / 2));padding-right:max(0px, calc((100% - var(--max-width-content)) / 2));scrollbar-width:thin;scrollbar-color:transparent transparent}[data-blok-database-board]:hover{scrollbar-color:currentColor transparent}@supports (color:color-mix(in lab, red, red)){[data-blok-database-board]:hover{scrollbar-color:color-mix(in srgb, currentColor 15%, transparent) transparent}}[data-blok-database-board]::-webkit-scrollbar{height:8px}[data-blok-database-board]::-webkit-scrollbar-track{background:0 0}[data-blok-database-board]::-webkit-scrollbar-thumb{background:0 0;border-radius:4px}[data-blok-database-board]:hover::-webkit-scrollbar-thumb{background:currentColor}@supports (color:color-mix(in lab, red, red)){[data-blok-database-board]:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, currentColor 15%, transparent)}}[data-blok-database-board]::-webkit-scrollbar-thumb:hover{background:currentColor}@supports (color:color-mix(in lab, red, red)){[data-blok-database-board]::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, currentColor 25%, transparent)}}[data-blok-database-column]{background-color:var(--blok-database-column-bg);border-radius:10px;padding:8px}[data-blok-database-column-header]{cursor:grab}[data-blok-database-card]{background-color:var(--blok-database-card-bg);box-shadow:var(--blok-database-card-shadow);border:1px solid var(--blok-database-card-border);border-radius:8px;transition:background-color .15s,box-shadow .15s,border-color .15s,outline-color .15s}[data-blok-database-card]:hover{background-color:var(--blok-database-card-bg-hover)}[data-blok-database-card-active]{background-color:var(--blok-database-card-bg-hover);outline:2px solid var(--blok-database-card-border-active);outline-offset:-1px}[data-blok-database-column][data-color] [data-blok-database-card]{background-color:var(--blok-database-card-colored-overlay);box-shadow:none;border-color:var(--blok-database-card-colored-border)}[data-blok-database-column][data-color] [data-blok-database-card]:hover{background-color:var(--blok-database-card-colored-overlay-hover)}[data-blok-database-dragging] [data-blok-database-card]{transition:box-shadow .15s,border-color .15s,margin-top .2s}[data-blok-database-dragging] [data-blok-database-cards]{transition:padding-bottom .2s}[data-blok-database-column-reordering]{cursor:grabbing}[data-blok-database-column-reordering] [data-blok-database-column]{transition:margin-left .2s}[data-blok-database-column-reordering] [data-blok-database-board]{transition:padding-right .2s}[data-blok-database-card-actions]{opacity:0;pointer-events:none;background:var(--blok-database-card-actions-bg,#1e2533);border-radius:8px;gap:2px;padding:2px;transition:opacity .12s;display:flex;position:absolute;top:8px;right:8px}[data-blok-database-card]:hover [data-blok-database-card-actions],[data-blok-database-card][data-popover-open] [data-blok-database-card-actions]{opacity:1;pointer-events:auto}[data-blok-database-card-actions]:focus-within{opacity:1;pointer-events:auto}[data-blok-database-edit-card],[data-blok-database-card-menu]{cursor:pointer;color:var(--blok-database-card-actions-icon,rgba(255,255,255,.75));background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background-color .12s,color .12s;display:flex}[data-blok-database-edit-card]:hover,[data-blok-database-card-menu]:hover{color:#fff;background:rgba(255,255,255,.12)}[data-blok-database-card-title-input]{border:none;border-bottom:1px solid var(--blok-database-card-actions-icon,rgba(255,255,255,.4));color:inherit;box-sizing:border-box;background:0 0;outline:none;width:100%;padding:0;font-size:14px;font-weight:500;line-height:1.45}[data-blok-database-add-card],[data-blok-database-add-column]{border:1px solid var(--blok-database-add-border);cursor:pointer;color:var(--blok-database-add-text);text-align:left;background:0 0;border-radius:8px;align-items:center;gap:6px;width:100%;padding:6px 8px;font-size:14px;transition:background-color .12s,color .12s,border-color .12s;display:flex}[data-blok-database-add-card]:hover,[data-blok-database-add-column]:hover{background-color:var(--blok-database-add-hover-bg);color:var(--blok-text-primary,inherit)}[data-blok-database-column][data-color] [data-blok-database-add-card]:hover{background-color:currentColor}@supports (color:color-mix(in lab, red, red)){[data-blok-database-column][data-color] [data-blok-database-add-card]:hover{background-color:color-mix(in srgb, currentColor 8%, transparent)}}[data-blok-database-add-column]{white-space:nowrap;border-radius:8px;flex-shrink:0;align-self:flex-start;padding:10px 12px}[data-blok-database-delete-column]{opacity:0;cursor:pointer;color:var(--blok-database-delete-text);background:0 0;border:none;border-radius:3px;flex-shrink:0;padding:2px 4px;font-size:14px;line-height:1;transition:opacity .12s,color .12s}[data-blok-database-column-header]:hover [data-blok-database-delete-column]{opacity:1}[data-blok-database-delete-column]:hover{color:var(--blok-database-delete-hover-text)}[data-blok-database-column-pill]{border-radius:20px;flex:none;align-items:center;gap:5px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;min-width:0;padding:2px 7px 2px 5px;display:inline-flex}@media (prefers-color-scheme:dark){:root:not([data-blok-theme=light]) [data-blok-database-column][data-color] [data-blok-database-column-pill]{color:rgba(255,255,255,.9)!important}}[data-blok-theme=dark] [data-blok-database-column][data-color] [data-blok-database-column-pill]{color:rgba(255,255,255,.9)!important}[data-blok-database-column-dot]{border-radius:50%;flex-shrink:0;width:8px;height:8px}[data-blok-database-column-title],[data-blok-database-column-title-input]{white-space:nowrap;text-transform:capitalize;letter-spacing:.04em;font-size:14px;font-weight:400}[data-blok-database-column-title-input]{field-sizing:content;border:none;outline:none;min-width:0;padding:0}[data-blok-database-card-title]{word-break:break-word;font-size:14px;font-weight:500;line-height:1.45}[data-blok-database-card-title][data-placeholder]{color:var(--blok-database-card-placeholder);font-style:normal}[data-blok-database-card][data-empty]{box-shadow:none!important;background-color:transparent!important}[data-blok-database-drawer]{z-index:1000;border-left:1px solid var(--blok-popover-border,#e8e8eb);background-color:var(--blok-popover-bg,#fff);flex-direction:column;width:0;height:100%;transition:width .2s;display:flex;position:fixed;top:0;right:0;overflow:hidden;box-shadow:-4px 0 12px rgba(0,0,0,.08)}[data-blok-database-drawer-toolbar]{border-bottom:1px solid var(--blok-database-drawer-border);flex-shrink:0;align-items:center;padding:8px 12px;display:flex}[data-blok-database-drawer-close]{cursor:pointer;color:var(--blok-database-add-text);background:0 0;border:none;border-radius:4px;align-items:center;gap:-4px;padding:4px;display:inline-flex}[data-blok-database-drawer-close]:hover{background-color:var(--blok-database-drawer-border)}[data-blok-database-drawer-close] svg{width:14px;height:14px;margin-left:-6px}[data-blok-database-drawer-close] svg:first-child{margin-left:0}[data-blok-database-drawer-content]{flex:1;padding:40px 60px 20px;overflow-y:auto}[data-blok-database-drawer-title]{width:100%;color:inherit;resize:none;background-color:transparent;border:none;outline:none;margin-bottom:12px;padding:0;font-family:inherit;font-size:32px;font-weight:700;line-height:1.2;display:block;overflow:hidden}[data-blok-database-drawer-title]::-ms-input-placeholder{color:var(--blok-database-add-text)}[data-blok-database-drawer-title]::placeholder{color:var(--blok-database-add-text)}[data-blok-database-drawer-props]{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}[data-blok-database-drawer-prop-row]{align-items:center;gap:8px;min-height:32px;font-size:14px;display:flex}[data-blok-database-drawer-prop-label]{color:var(--blok-database-add-text);flex-shrink:0;min-width:100px;font-size:14px}[data-blok-database-drawer-status-pill]{border-radius:4px;align-items:center;gap:6px;padding:2px 8px;font-size:14px;font-weight:500;line-height:1.4;display:inline-flex}[data-blok-database-drawer-status-dot]{border-radius:50%;flex-shrink:0;width:8px;height:8px}[data-blok-database-drawer] hr{border:none;border-top:1px solid var(--blok-database-drawer-border);margin:0 0 4px}[data-blok-database-drawer-editor]{flex:1;min-height:200px;margin-left:-53px}[data-blok-database-add-card]{border-radius:12px;margin-top:6px;padding:10px 12px}[data-blok-database-add-card-icon]{flex-shrink:0;align-items:center;display:flex}[data-blok-database-add-card-icon] svg{width:18px;height:18px}[data-blok-database-column-count]{color:var(--blok-database-add-text);flex-shrink:0;margin-left:2px;font-size:13px;font-weight:400}[data-blok-database-empty-placeholder]{color:var(--blok-database-add-text);text-align:center;padding:12px 0;font-size:13px}[data-blok-database-drawer-editor] .ce-toolbar{left:0;right:0}[data-blok-database-title]{padding-left:max(0px, calc((100% - var(--max-width-content)) / 2));padding-right:max(0px, calc((100% - var(--max-width-content)) / 2))}[data-blok-database-tab-bar]{padding:4px 0 8px;padding-left:max(0px, calc((100% - var(--max-width-content)) / 2));align-items:center;gap:2px;display:flex}[data-blok-database-title-row]{align-items:center;margin-bottom:4px;display:flex}[data-blok-database-title-row][data-single-view]{padding-left:max(0px, calc((100% - var(--max-width-content)) / 2))}[data-blok-database-title-row][data-single-view] [data-blok-database-title]{flex:0 auto;min-width:0;padding-left:0;padding-right:0}[data-blok-database-title-row][data-single-view] [data-blok-database-add-view]{margin-left:4px}[data-blok-database-title-row]:hover [data-blok-database-add-view],[data-blok-database-title-row] [data-blok-database-add-view][data-popover-open]{opacity:1}[data-blok-database-tab]{cursor:grab;color:var(--blok-database-tab-text);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:400;transition:background-color .12s;display:flex}[data-blok-database-tab-bar][data-dragging] [data-blok-database-tab]{cursor:grabbing}[data-blok-database-tab] svg{flex-shrink:0;width:16px;height:16px}[data-blok-database-tab]:hover{background-color:var(--blok-database-tab-bg-hover)}[data-blok-database-tab][data-active]{background-color:var(--blok-database-tab-bg-active);color:var(--blok-database-tab-text-active)}[data-blok-database-add-view]{cursor:pointer;width:32px;height:32px;color:var(--blok-database-tab-text);opacity:0;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin-left:2px;transition:background-color .12s,opacity .12s;display:flex}[data-blok-database-add-view] svg{flex-shrink:0;width:20px;height:20px}[data-blok-database-tab-bar]:hover [data-blok-database-add-view],[data-blok-database-tab-bar][data-popover-open] [data-blok-database-add-view],[data-blok-database-add-view][data-popover-open]{opacity:1}[data-blok-database-add-view]:hover,[data-blok-database-add-view][data-popover-open]{background-color:var(--blok-database-tab-bg-hover)}[data-blok-database-tab-more]{color:var(--blok-database-tab-text);cursor:pointer;white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:13px;transition:background-color .12s}[data-blok-database-tab-more]:hover{background-color:var(--blok-database-tab-bg-hover)}[data-blok-database-tab-overflow-dropdown]{background:var(--blok-database-popover-bg);box-shadow:var(--blok-database-popover-shadow);border-radius:10px;padding:6px}[data-blok-database-view-popover-heading]{letter-spacing:.05em;text-transform:uppercase;color:var(--blok-database-tab-text);padding:6px 8px 4px;font-size:11px;font-weight:600}[data-blok-database-view-option]{cursor:pointer;border-radius:6px;flex-direction:row;align-items:flex-start;gap:10px;padding:7px 8px;transition:background-color .12s;display:flex}[data-blok-database-view-option]:hover{background-color:var(--blok-database-popover-hover)}[data-blok-database-view-option-icon]{background:var(--blok-database-popover-hover);width:30px;height:30px;color:var(--blok-database-tab-text-active);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}[data-blok-database-view-option-icon] svg{width:16px;height:16px}[data-blok-database-view-option-text]{flex-direction:column;gap:1px;min-width:0;display:flex}[data-blok-database-view-option-label]{color:var(--blok-database-tab-text-active);font-size:13px;font-weight:500;line-height:1.3}[data-blok-database-view-option-desc]{color:var(--blok-database-tab-text);font-size:11px;line-height:1.3}[data-blok-database-tab-overflow-item]{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:7px 10px;font-size:14px;font-weight:400;transition:background-color .12s;display:flex}[data-blok-database-tab-overflow-item]:hover{background-color:var(--blok-database-popover-hover)}[data-blok-database-tab-overflow-item][data-active]{background-color:var(--blok-database-tab-bg-active)}[data-blok-database-tab-overflow-new]{color:var(--blok-database-tab-text);cursor:pointer;border-radius:6px;padding:7px 10px;font-size:14px;transition:background-color .12s}[data-blok-database-tab-overflow-new]:hover{background-color:var(--blok-database-popover-hover)}[data-blok-database-tab-overflow-separator]{background-color:var(--blok-database-drawer-border);height:1px;margin:4px 10px}[data-blok-database-tab-rename-input]{border:1px solid var(--blok-database-drawer-border);background:var(--blok-database-popover-bg);color:var(--blok-database-tab-text-active);border-radius:4px;outline:none;width:80px;padding:2px 6px;font-family:inherit;font-size:14px}[data-blok-database-tab-ghost]{background:var(--blok-database-tab-bg-active);border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.15)}[data-blok-database-board-container]{position:relative;overflow:hidden}[data-blok-database-list]{padding-left:max(0px, calc((100% - var(--max-width-content)) / 2));padding-right:max(0px, calc((100% - var(--max-width-content)) / 2));flex-direction:column;display:flex}[data-blok-database-list-row]{cursor:pointer;border-bottom:1px solid transparent;border-radius:4px;align-items:center;gap:8px;padding:5px 8px;font-size:14px;transition:background-color 80ms;display:flex;position:relative}[data-blok-database-list-row]:not(:last-child){border-bottom-color:currentColor}@supports (color:color-mix(in lab, red, red)){[data-blok-database-list-row]:not(:last-child){border-bottom-color:color-mix(in srgb, currentColor 5%, transparent)}}[data-blok-database-list-row]:hover{background-color:var(--blok-database-add-hover-bg)}[data-blok-database-list-row-title]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;line-height:1.5;overflow:hidden}[data-blok-database-list-row-title][data-placeholder]{color:var(--blok-database-add-text);font-style:italic}[data-blok-database-list-row-properties]{flex-shrink:0;align-items:center;gap:6px;display:flex}[data-blok-database-list-row-property]{white-space:nowrap;background:var(--blok-database-add-hover-bg);color:var(--blok-database-tab-text-active);border-radius:4px;align-items:center;padding:2px 7px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}[data-blok-database-list-row-open]{opacity:0;cursor:pointer;width:22px;height:22px;color:var(--blok-database-add-text);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity 80ms,background-color 80ms,color 80ms;display:inline-flex}[data-blok-database-list-row-open]:after{content:"";border-top:2px solid;border-right:2px solid;border-radius:1px;flex-shrink:0;width:7px;height:7px;display:block;transform:rotate(45deg)}[data-blok-database-list-row]:hover [data-blok-database-list-row-open]{opacity:1}[data-blok-database-list-row-open]:hover{background-color:var(--blok-database-add-hover-bg);color:var(--blok-database-tab-text-active)}[data-blok-database-list-row-properties] [data-blok-database-delete-row]{opacity:0;cursor:pointer;width:18px;height:18px;color:var(--blok-database-delete-text);background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:15px;line-height:1;transition:opacity 80ms,color 80ms,background-color 80ms;display:flex}[data-blok-database-list-row]:hover [data-blok-database-delete-row]{opacity:1}[data-blok-database-list-row-properties] [data-blok-database-delete-row]:hover{color:var(--blok-database-delete-hover-text);background-color:currentColor}@supports (color:color-mix(in lab, red, red)){[data-blok-database-list-row-properties] [data-blok-database-delete-row]:hover{background-color:color-mix(in srgb, currentColor 8%, transparent)}}[data-blok-database-list]>[data-blok-database-add-row],[data-blok-database-list-rows]~[data-blok-database-add-row]{cursor:pointer;width:100%;color:var(--blok-database-add-text);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;margin-top:2px;padding:6px 8px;font-size:13px;transition:background-color 80ms,color 80ms;display:flex}[data-blok-database-list]>[data-blok-database-add-row]:hover,[data-blok-database-list-rows]~[data-blok-database-add-row]:hover{background-color:var(--blok-database-add-hover-bg);color:var(--blok-text-primary,inherit)}[data-blok-database-list-group]{flex-direction:column;margin-bottom:4px;display:flex}[data-blok-database-list-group-header]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:6px;padding:6px 8px 4px;transition:background-color 80ms;display:flex}[data-blok-database-list-group-header]:hover{background-color:var(--blok-database-add-hover-bg)}[data-blok-database-list-group-toggle]{color:var(--blok-database-add-text);text-align:center;flex-shrink:0;width:12px;font-size:10px;line-height:1;transition:color 80ms}[data-blok-database-list-group-header]:hover [data-blok-database-list-group-toggle]{color:var(--blok-database-tab-text-active)}[data-blok-database-list-group-dot]{border-radius:50%;flex-shrink:0;width:8px;height:8px}[data-blok-database-list-group-title]{color:var(--blok-database-tab-text-active);letter-spacing:.01em;font-size:13px;font-weight:600}[data-blok-database-list-group-count]{color:var(--blok-database-add-text);margin-left:2px;font-size:12px;font-weight:400}[data-blok-database-list-rows]{flex-direction:column;padding-left:8px;display:flex}[data-blok-database-drawer-add-prop]{cursor:pointer;width:100%;color:var(--blok-database-add-text);text-align:left;background:0 0;border:1.5px dashed transparent;border-radius:6px;align-items:center;gap:7px;margin-top:4px;padding:6px 8px;font-size:13px;font-weight:500;transition:background-color .13s,border-color .13s,color .13s;display:flex}[data-blok-database-drawer-add-prop]:hover{background-color:var(--blok-database-add-hover-bg);border-color:var(--blok-database-add-border);color:var(--blok-database-tab-text-active)}[data-blok-database-drawer-add-prop]:active{background-color:var(--blok-item-hover-bg)}@keyframes blok-prop-popover-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}[data-blok-database-property-type-popover]{background:var(--blok-database-popover-bg);min-width:210px;box-shadow:var(--blok-database-popover-shadow);transform-origin:0 0;border-radius:10px;padding:6px;animation:.12s cubic-bezier(.16,1,.3,1) both blok-prop-popover-in}[data-blok-database-property-type-heading]{letter-spacing:.06em;text-transform:uppercase;color:var(--blok-database-add-text);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:6px 8px 4px;font-size:11px;font-weight:600}[data-blok-database-property-type-option]{cursor:pointer;color:var(--blok-database-tab-text-active);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:10px;padding:6px 8px;font-size:13.5px;transition:background-color .1s;display:flex}[data-blok-database-property-type-option]:hover{background-color:var(--blok-database-popover-hover)}[data-blok-database-property-type-option]:active{background-color:var(--blok-item-hover-bg)}[data-blok-database-property-type-option-icon]{background:var(--blok-popover-icon-bg);width:26px;height:26px;color:var(--blok-database-tab-text-active);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .1s;display:flex}[data-blok-database-property-type-option]:hover [data-blok-database-property-type-option-icon]{background:var(--blok-popover-icon-active-bg);color:var(--blok-active-icon)}[data-blok-database-property-type-option-icon] svg{width:14px;height:14px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-leading{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes buttonClicked{0%{transform:scale3d(.95,.95,.95)}60%{transform:scale3d(1.02,1.02,1.02)}80%,to{transform:scale(1)}}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes notifySlideIn{0%{opacity:0;transform:translateY(16px)}70%{opacity:1;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes notifySlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@keyframes notifySlideInTop{0%{opacity:0;transform:translateY(-16px)}70%{opacity:1;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes notifySlideOutTop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes notifySwapOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}`,dd=class{constructor({config:e,eventsDispatcher:n}){this.listeners=new t.kn,this.readOnlyMutableListeners={on:(e,t,n,r=!1)=>{let i=this.listeners.on(e,t,n,r);i&&this.mutableListenerIds.push(i)},clearAll:()=>{for(let e of this.mutableListenerIds)this.listeners.offById(e);this.mutableListenerIds=[]}},this.mutableListenerIds=[],this.config=e,this.eventsDispatcher=n,this.Blok={}}set state(e){this.Blok=e}enable(){}disable(){this.listeners.removeAll(),this.readOnlyMutableListeners.clearAll()}},fd,pd=class e extends dd{constructor(e){super(e),this.blockHoveredState={lastHoveredBlockId:null},this.hoverDisabledUntil=0}enable(){let e=t.Zn(e=>{var t,n,r,i;if(typeof MouseEvent>`u`||!(e instanceof MouseEvent)||Date.now()<this.hoverDisabledUntil)return;let a=(t=e.target)==null?void 0:t.closest(`[data-blok-testid="block-wrapper"]`),o=(n=e.target)==null?void 0:n.closest(`[data-blok-child-toolbar]`);if(o&&a&&!o.contains(a))return;let s=a==null?void 0:a.closest(`[data-blok-table-cell-blocks], [data-blok-toggle-children]:not([data-blok-child-toolbar])`),c=s||(r=a==null?void 0:a.closest(`[data-blok-child-toolbar]`))==null?null:r,l=c!==null&&c.querySelector(`:scope > [data-blok-testid="block-wrapper"]`)===a,u=s==null?l?c:null:s,d=u?(i=u.closest(`[data-blok-testid="block-wrapper"]`))==null?null:i:a;if(!d){this.emitNearestBlockHoveredInZone(e.clientX,e.clientY);return}let f=this.Blok.BlockManager.getBlockByChildNode(d);f&&this.blockHoveredState.lastHoveredBlockId!==f.id&&(this.blockHoveredState.lastHoveredBlockId=f.id,this.eventsDispatcher.emit(wu,{block:f,target:e.target}))},20);this.readOnlyMutableListeners.on(document,`mousemove`,t=>{e(t)},{passive:!0})}emitNearestBlockHovered(e){let t=this.findNearestBlock(e);t===null||this.blockHoveredState.lastHoveredBlockId===t.id||(this.blockHoveredState.lastHoveredBlockId=t.id,this.eventsDispatcher.emit(wu,{block:t,target:t.holder}))}emitNearestBlockHoveredInZone(t,n){let r=this.Blok.BlockManager.blocks.filter(e=>e.holder.closest(`[data-blok-table-cell-blocks], [data-blok-toggle-children]`)===null);if(r.length===0)return;let i=r[0].holder.querySelector(`[data-blok-element-content]`);if(!i){this.emitNearestBlockHovered(n);return}let a=i.getBoundingClientRect(),o=Math.abs(t-a.left),s=Math.abs(t-a.right);(o<=e.HOVER_ZONE_SIZE||s<=e.HOVER_ZONE_SIZE)&&this.emitNearestBlockHovered(n)}findNearestBlock(e){let t=this.Blok.BlockManager.blocks;if(t.length===0)return null;let n=t.filter(e=>e.holder.closest(`[data-blok-table-cell-blocks], [data-blok-toggle-children]`)===null);return n.length===0?null:n.reduce((t,n)=>{let r=n.holder.getBoundingClientRect(),i=(r.top+r.bottom)/2,a=Math.abs(e-i);return a<t.distance?{block:n,distance:a}:t},{block:n[0],distance:1/0}).block}resetHoverState(){this.blockHoveredState.lastHoveredBlockId=null}disableHoverForCooldown(){this.hoverDisabledUntil=Date.now()+e.HOVER_COOLDOWN_MS}};fd=pd,fd.HOVER_COOLDOWN_MS=50,fd.HOVER_ZONE_SIZE=100;var md=new Set([`Enter`,`Backspace`,`Delete`,`Tab`]),hd=class extends dd{constructor(e){super(e),this.lastUndoRedoTime=0,this.redactorElement=null,this.wrapperElement=null,this.isDisabled=!1,this.documentKeydownHandler=e=>{e instanceof KeyboardEvent&&this.handleKeydown(e)},this.redactorBeforeinputHandler=()=>{this.Blok.YjsManager.markCaretBeforeChange()},this.redactorKeydownHandler=e=>{if(!(e instanceof KeyboardEvent))return;let t=e.target;if(!(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement)){if(t instanceof Element){let e=t.closest(`[data-blok-testid="blok-editor"]`);if(e!==null&&e!==this.wrapperElement)return}md.has(e.key)&&this.Blok.YjsManager.markCaretBeforeChange()}},this.someToolbarOpened=e.someToolbarOpened}setRedactorElement(e){this.redactorElement=e}setWrapperElement(e){this.wrapperElement=e}enable(){this.redactorElement&&(this.isDisabled=!1,this.readOnlyMutableListeners.on(document,`keydown`,this.documentKeydownHandler,!0),this.readOnlyMutableListeners.on(this.redactorElement,`beforeinput`,this.redactorBeforeinputHandler,!0),this.readOnlyMutableListeners.on(this.redactorElement,`keydown`,this.redactorKeydownHandler,!0))}disable(){this.isDisabled=!0,super.disable()}handleKeydown(e){var t;if(this.isDisabled)return;let n=e.target,r=(t=e.key)==null?``:t;if(n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement){let e=n.closest(`[data-blok-popover]`)!==null;if(r!==`Escape`||!e)return}if(n instanceof Element){let e=n.closest(`[data-blok-testid="blok-editor"]`);if(e!==null&&e!==this.wrapperElement)return}switch(r){case`Enter`:this.handleEnter(e);break;case`Backspace`:case`Delete`:this.handleBackspace(e);break;case`Escape`:this.handleEscape(e);break;case`Tab`:this.handleTab(e);break;case`z`:case`Z`:this.handleZ(e);break;default:this.handleDefault(e);break}}handleEnter(e){let{BlockManager:n,BlockSelection:r,BlockEvents:i}=this.Blok;if(this.someToolbarOpened())return;if(r.navigationModeEnabled){i.keydown(e);return}let a=n.currentBlockIndex>=0,o=t.mn.isSelectionExists,s=t.mn.isCollapsed;if(r.anyBlockSelected&&(!o||s===!0)){r.clearSelection(e),e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation();return}if(!this.someToolbarOpened()&&a&&e.target.tagName===`BODY`){let t=this.Blok.BlockManager.insert();e.preventDefault(),this.Blok.Caret.setToBlock(t),this.Blok.Toolbar.moveAndOpen(t)}this.Blok.BlockSelection.clearSelection(e)}handleBackspace(e){if(this.Blok.BlockSettings.contains(e.target))return;let{BlockManager:n,BlockSelection:r,Caret:i}=this.Blok,a=t.mn.isSelectionExists,o=t.mn.isCollapsed;if(!(r.anyBlockSelected&&(!a||o===!0||this.Blok.CrossBlockSelection.isCrossBlockSelectionStarted)))return;let s=n.deleteSelectedBlocksAndInsertReplacement();s&&i.setToBlock(s,i.positions.START),r.clearSelection(e),e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()}handleEscape(e){if(this.Blok.BlockSelection.navigationModeEnabled){this.Blok.BlockSelection.disableNavigationMode(!1);return}if(this.Blok.Toolbar.toolbox.opened){e.stopPropagation(),this.Blok.Toolbar.toolbox.close();return}if(t.C.instance.hasOpenPopovers()){t.C.instance.closeTopmost();return}if(this.Blok.BlockSelection.anyBlockSelected){this.Blok.BlockSelection.clearSelection(e);return}if(this.Blok.InlineToolbar.opened&&this.Blok.InlineToolbar.hasNestedPopoverOpen){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),this.Blok.InlineToolbar.closeNestedPopover();return}if(this.Blok.InlineToolbar.opened){this.Blok.InlineToolbar.close();return}let n=e.target,r=n instanceof HTMLElement,i=this.redactorElement&&r&&this.redactorElement.contains(n),a=this.Blok.BlockManager.currentBlock!==void 0;if(i&&a&&!this.Blok.DragManager.isDragging){e.preventDefault(),e.stopPropagation(),this.Blok.Toolbar.close(),this.Blok.BlockSelection.enableNavigationMode();return}this.Blok.Toolbar.close()}handleTab(e){let{BlockSelection:t}=this.Blok;if(!t.anyBlockSelected){this.handleDefault(e);return}this.Blok.BlockEvents.keydown(e),e.preventDefault(),e.stopPropagation()}handleZ(e){if(!(e.metaKey||e.ctrlKey)){this.handleDefault(e);return}if(this.Blok.DragManager.isDragging){e.preventDefault(),e.stopPropagation();return}let t=Date.now();if(t-this.lastUndoRedoTime<50){e.preventDefault();return}this.lastUndoRedoTime=t,e.preventDefault(),e.stopPropagation(),e.shiftKey?this.Blok.YjsManager.redo():this.Blok.YjsManager.undo()}handleDefault(e){let{currentBlock:t}=this.Blok.BlockManager,n=e.target,r=n instanceof HTMLElement,i=r?n.closest(`[data-blok-testid="blok-editor"]`):null,a=e.altKey||e.ctrlKey||e.metaKey||e.shiftKey;if(!(r&&this.Blok.BlockSettings.contains(n))&&(this.Blok.BlockSelection.navigationModeEnabled&&!e.defaultPrevented&&this.Blok.BlockEvents.keydown(e),!this.Blok.BlockSelection.navigationModeEnabled)){if(t!==void 0&&i===null){this.Blok.BlockEvents.keydown(e);return}i||t&&a||(this.Blok.BlockManager.unsetCurrentBlock(),this.Blok.Toolbar.close())}}},gd=class extends dd{constructor(...e){super(...e),this.wrapperElement=null,this.selectionChangeDebounced=t.Yn(()=>{this.handleSelectionChange()},180)}setWrapperElement(e){this.wrapperElement=e}enable(){this.listeners.on(document,`selectionchange`,this.selectionChangeDebounced)}handleSelectionChange(){let{CrossBlockSelection:e,BlockSelection:n}=this.Blok,r=t.mn.anchorElement;if(e.isCrossBlockSelectionStarted&&n.anyBlockSelected){var i;(i=t.mn.get())==null||i.removeAllRanges()}if(this.shouldIgnoreSelectionChange()||(!r&&!t.mn.range&&this.Blok.InlineToolbar.close(),!r))return;let a=r.closest(`[data-blok-testid="block-content"]`),o=!this.wrapperElement||a===null||a.closest(`[data-blok-testid="blok-editor"]`)!==this.wrapperElement,s=r.getAttribute(`data-blok-inline-toolbar`)===`true`,c=o&&!this.Blok.InlineToolbar.containsNode(r);if(this.shouldCloseInlineToolbar()){this.Blok.InlineToolbar.close();return}this.Blok.InlineToolbar.opened&&!this.Blok.InlineToolbar.hasNestedPopoverOpen||(c&&this.Blok.InlineToolbar.close(),!(o&&!s)&&(this.shouldUpdateCurrentBlock()&&this.Blok.BlockManager.setCurrentBlockByChildNode(r),this.Blok.InlineToolbar.tryToShow(!0)))}shouldIgnoreSelectionChange(){var e;return document.querySelector(`[data-blok-fake-background="true"]`)!==null&&((e=this.Blok)==null||(e=e.InlineToolbar)==null?void 0:e.opened)}shouldCloseInlineToolbar(){let e=t.mn.get(),n=!e||e.isCollapsed||t.mn.text.length===0,r=this.Blok.InlineToolbar.hasFlipperFocus;return n&&this.Blok.InlineToolbar.opened&&!r}shouldUpdateCurrentBlock(){let e=t.mn.anchorElement;if(!e||!this.wrapperElement)return!1;let n=e.closest(`[data-blok-testid="blok-editor"]`);return!(n!==null&&n!==this.wrapperElement)}},_d=(e,n)=>{var r,i,a,o;let{Blok:s,nodes:c}=e,l=n.target,u=c.holder.contains(l)||t.mn.isAtBlok,d=c.redactor.contains(l),f=s.Toolbar.contains(l),p=s.InlineToolbar.containsNode(l),m=u||f,h=s.BlockSettings.contains(l),g=(r=(i=s.Toolbar.nodes.settingsToggler)==null?void 0:i.contains(l))==null?!1:r,_=(a=(o=s.Toolbar.nodes.plusButton)==null?void 0:o.contains(l))==null?!1:a;return{target:l,clickedInsideOfBlok:u,clickedInsideRedactor:d,clickedInsideToolbar:f,clickedInsideInlineToolbar:p,clickedInsideBlokSurface:m,doNotProcess:h||g||_,shouldClearCurrentBlock:!m||!d&&!f}},vd=e=>t=>{if(!t.isTrusted)return;let{Blok:n}=e,r=_d(e,t);r.shouldClearCurrentBlock&&!r.doNotProcess&&n.BlockManager.unsetCurrentBlock(),!r.doNotProcess&&!t.shiftKey&&n.BlockSelection.clearSelection(t),n.InlineToolbar.opened&&!r.clickedInsideInlineToolbar&&n.InlineToolbar.close()},yd=e=>t=>{let n=t.target,r=bd(n,t,e.redactorElement),i=e.Blok.BlockManager.setCurrentBlockByChildNode(r);!i&&!e.Blok.RectangleSelection.isRectActivated()&&e.Blok.Caret.setToTheLastBlock();let a=i!==void 0&&i===e.Blok.BlockManager.lastBlock&&Sd(i.holder,t);if(a&&!e.Blok.ReadOnly.isEnabled){e.Blok.Caret.setToTheLastBlock(),e.Blok.Toolbar.moveAndOpen(e.Blok.BlockManager.lastBlock);return}if(a){e.Blok.Caret.setToTheLastBlock();return}if(!e.Blok.ReadOnly.isEnabled&&!e.Blok.Toolbar.contains(n)){var o,s,c,l,u;let t=(o=r.closest)==null?void 0:o.call(r,`[data-blok-table-cell-blocks], [data-blok-toggle-children]:not([data-blok-child-toolbar])`),n=t||(s=(c=r.closest)==null?void 0:c.call(r,`[data-blok-child-toolbar]`))==null?null:s,i=(l=(u=r.closest)==null?void 0:u.call(r,`[data-blok-testid="block-wrapper"]`))==null?null:l,a=n!==null&&i!==null&&n.querySelector(`:scope > [data-blok-testid="block-wrapper"]`)===i,d=t==null?a?n:null:t,f=d==null?void 0:d.closest(`[data-blok-testid="block-wrapper"]`),p=f?e.Blok.BlockManager.getBlockByChildNode(f):void 0;e.Blok.Toolbar.moveAndOpen(p,r)}},bd=(e,t,n)=>{if(e!==n)return e;if(t instanceof MouseEvent){let n=document.elementFromPoint(t.clientX,t.clientY);return n==null?e:n}if(t instanceof TouchEvent&&t.touches.length>0){let{clientX:n,clientY:r}=t.touches[0],i=document.elementFromPoint(n,r);return i==null?e:i}return e},xd=e=>e instanceof MouseEvent?e.clientY:e instanceof TouchEvent&&e.touches.length>0?e.touches[0].clientY:null,Sd=(e,t)=>{let n=xd(t);if(n===null)return!1;let r=e.querySelector(`[data-blok-element-content]`),i=r==null?void 0:r.getBoundingClientRect();return i!==void 0&&n>i.bottom},Cd=`CMD+ALT+T`,wd=`CMD+SHIFT+[`,Td=`CMD+ALT+SHIFT+T`,Ed=class{constructor(e,t){this.registered=!1,this.api=e,this.wrapper=t}register(){this.registered||(Z.remove(document,Cd),Z.remove(document,wd),Z.remove(document,Td),Z.add({name:Cd,on:document,handler:e=>{this.shouldHandle(e)&&(e.preventDefault(),this.toggleAll())}}),Z.add({name:wd,on:document,handler:e=>{this.shouldHandle(e)&&(e.preventDefault(),this.toggleCurrent())}}),Z.add({name:Td,on:document,handler:e=>{this.shouldHandle(e)&&(e.preventDefault(),this.toggleScoped())}}),this.registered=!0)}unregister(){this.registered&&(Z.remove(document,Cd),Z.remove(document,wd),Z.remove(document,Td),this.registered=!1)}shouldHandle(e){let t=e.target;return t instanceof HTMLElement&&this.wrapper.contains(t)}toggleAll(){let e=this.collectAllToggleBlocks();if(e.length===0)return;let t=e.some(e=>!e.isOpen)?`expand`:`collapse`;for(let n of e)n.call(t)}toggleCurrent(){let e=this.api.blocks.getCurrentBlockIndex(),n=this.api.blocks.getBlockByIndex(e);if(n===void 0)return;let r=this.findToggleBlockForCurrent(n);if(r===void 0)return;let i=r.holder.querySelector(`[${t.u.toggleOpen}]`);if(i===null)return;let a=i.getAttribute(t.u.toggleOpen)===`true`;r.call(a?`collapse`:`expand`)}toggleScoped(){let e=this.api.blocks.getCurrentBlockIndex(),t=this.api.blocks.getBlockByIndex(e);if(t===void 0)return;let n=this.findRootToggleAncestor(t);if(n===void 0){this.toggleAll();return}let r=this.collectDescendantToggleBlocks(n.id);if(r.length===0)return;let i=r.some(e=>!e.isOpen)?`expand`:`collapse`;for(let e of r)e.call(i)}findToggleBlockForCurrent(e){if(this.isToggleBlock(e))return e;if(e.parentId!==null){let t=this.api.blocks.getById(e.parentId);if(t!==null&&this.isToggleBlock(t))return t}}findRootToggleAncestor(e){return this.isToggleBlock(e)&&e.parentId===null?e:this.walkToRootToggle(e.parentId,void 0)}walkToRootToggle(e,t){if(e===null)return t;let n=this.api.blocks.getById(e);return n===null?t:this.walkToRootToggle(n.parentId,this.isToggleBlock(n)?n:t)}collectDescendantToggleBlocks(e){let t=this.api.blocks.getChildren(e),n=[];for(let e of t){let t=this.isToggleBlock(e)?this.extractToggleBlockInfo(e):null;t!==null&&n.push(t),n.push(...this.collectDescendantToggleBlocks(e.id))}return n}extractToggleBlockInfo(e){let n=e.holder.querySelector(`[${t.u.toggleOpen}]`);return n===null?null:{call:t=>e.call(t),isOpen:n.getAttribute(t.u.toggleOpen)===`true`}}collectAllToggleBlocks(){let e=this.api.blocks.getBlocksCount(),n=[];for(let r of Array.from({length:e},(e,t)=>t)){let e=this.api.blocks.getBlockByIndex(r);if(e===void 0)continue;let i=e.holder.querySelector(`[${t.u.toggleOpen}]`);if(i===null)continue;let a=i.getAttribute(t.u.toggleOpen)===`true`;n.push({call:t=>e.call(t),isOpen:a})}return n}isToggleBlock(e){return e.name===t.p}},Dd=class extends l{constructor(...e){super(...e),this.keyboardController=null,this.selectionController=null,this.blockHoverController=null,this.toggleShortcuts=null,this.documentClickedHandler=null,this.redactorTouchHandler=null,this.fontStyleTagId=null,this.isMobile=!1,this.contentRectCache=null,this.resizeDebouncer=t.Yn(()=>{this.windowResize()},200),this.documentTouchedListener=e=>{this.redactorTouchHandler&&this.redactorTouchHandler(e)}}resetBlockHoverState(){var e;(e=this.blockHoverController)==null||e.resetHoverState()}disableHoverForCooldown(){var e;(e=this.blockHoverController)==null||e.disableHoverForCooldown()}get contentRect(){if(this.contentRectCache!==null)return this.contentRectCache;let e=this.nodes.wrapper.querySelector(`[data-blok-testid="block-content"]`);return e?(this.contentRectCache=e.getBoundingClientRect(),this.contentRectCache):{width:650,left:0,right:0}}async prepare(){var e=this,t;e.setIsMobile(),e.make(),e.loadStyles(),e.loadFontStyles(),Dc(),e.initializeControllers(),(t=e.selectionController)==null||t.enable(),e.toggleShortcuts=new Ed(e.Blok.API.methods,e.nodes.wrapper);try{e.toggleShortcuts.register()}catch(e){console.warn(`Blok: Failed to register toggle shortcuts:`,e)}}initializeControllers(){this.keyboardController=new hd({config:this.config,eventsDispatcher:this.eventsDispatcher,someToolbarOpened:()=>this.someToolbarOpened}),this.keyboardController.state=this.Blok,this.keyboardController.setRedactorElement(this.nodes.redactor),this.keyboardController.setWrapperElement(this.nodes.wrapper),this.selectionController=new gd({config:this.config,eventsDispatcher:this.eventsDispatcher}),this.selectionController.state=this.Blok,this.selectionController.setWrapperElement(this.nodes.wrapper),this.blockHoverController=new pd({config:this.config,eventsDispatcher:this.eventsDispatcher}),this.blockHoverController.state=this.Blok,this.documentClickedHandler=vd({Blok:this.Blok,nodes:{holder:this.nodes.holder,redactor:this.nodes.redactor}}),this.redactorTouchHandler=yd({Blok:this.Blok,redactorElement:this.nodes.redactor})}toggleReadOnly(e){if(e){this.unbindReadOnlySensitiveListeners(),this.updateBlocksContentEditable(!1);return}let t=()=>{this.bindReadOnlySensitiveListeners()};t(),this.updateBlocksContentEditable(!0);let n=window.requestIdleCallback;typeof n==`function`&&n(t,{timeout:2e3})}updateBlocksContentEditable(e){let{BlockManager:t}=this.Blok;for(let n of t.blocks){let t=n.holder.querySelector(`[contenteditable]`);t&&(t.contentEditable=e?`true`:`false`)}}checkEmptiness(){let{BlockManager:e}=this.Blok;this.nodes.wrapper.setAttribute(t.ur.empty,e.isBlokEmpty?`true`:`false`)}get someToolbarOpened(){let{Toolbar:e,BlockSettings:t,InlineToolbar:n}=this.Blok;return!!(t.opened||n.opened||e.toolbox.opened)}get someFlipperButtonFocused(){if(this.Blok.Toolbar.toolbox.hasFocus())return!0;let e=e=>typeof e==`object`&&!!e&&`flipper`in e&&e.flipper instanceof t.tn;return Object.values(this.Blok).some(t=>e(t)&&t.flipper.hasFocus())}destroy(){var e;if((e=this.toggleShortcuts)==null||e.unregister(),this.nodes.holder.innerHTML=``,this.unbindReadOnlyInsensitiveListeners(),this.unbindReadOnlySensitiveListeners(),this.fontStyleTagId!==null){let e=t.Pn.get(this.fontStyleTagId);e&&e.remove()}Oc()}closeAllToolbars(){let{Toolbar:e,BlockSettings:t,InlineToolbar:n}=this.Blok;t.close(),n.close(),e.toolbox.close()}setIsMobile(){let e=window.innerWidth<650;e!==this.isMobile&&this.eventsDispatcher.emit(g,{isEnabled:this.isMobile}),this.isMobile=e}make(){var e,n;let r=this.config.holder;if(!r)throw Error(`Blok holder is not specified in the configuration.`);this.nodes.holder=t.Pn.getHolder(r),this.nodes.wrapper=t.Pn.make(`div`,[`group`,`relative`,`box-border`,`z-1`,`data-[blok-dragging=true]:cursor-grabbing`,`[&_svg]:max-h-full`,`[&_path]:stroke-current`,`[&_::selection]:bg-selection-inline`,`[&[data-blok-toolbox-opened=true]_[contentEditable=true][data-blok-placeholder]:focus]:before:opacity-0!`,...this.isRtl?[`[direction:rtl]`]:[]]),this.nodes.wrapper.setAttribute(t.ur.interface,t.hn),this.nodes.wrapper.setAttribute(t.ur.editor,``),this.nodes.wrapper.setAttribute(`data-blok-testid`,`blok-editor`),this.nodes.wrapper.setAttribute(t.ur.contentAlign,(e=(n=this.config.style)==null?void 0:n.contentAlign)==null?`left`:e),this.isRtl&&this.nodes.wrapper.setAttribute(t.ur.rtl,`true`),this.nodes.redactor=t.Pn.make(`div`,[`[&_[contenteditable]:empty]:after:content-["\\feff_"]`]),this.nodes.redactor.setAttribute(t.ur.redactor,``),this.nodes.redactor.setAttribute(`data-blok-testid`,`redactor`),this.nodes.bottomZone=t.Pn.make(`div`,[`cursor-text`]),this.nodes.bottomZone.setAttribute(`data-blok-bottom-zone`,``),this.nodes.bottomZone.setAttribute(`data-blok-testid`,`bottom-zone`),this.nodes.bottomZone.style.minHeight=this.config.minHeight+`px`,this.nodes.wrapper.appendChild(this.nodes.redactor),this.nodes.wrapper.appendChild(this.nodes.bottomZone),this.nodes.holder.appendChild(this.nodes.wrapper),this.bindReadOnlyInsensitiveListeners()}loadStyles(){let e=`blok-styles`;if(t.Pn.get(e))return;let n=t.Pn.make(`style`,null,{id:e,textContent:ud.toString()});this.config.style&&!t.Qn(this.config.style)&&this.config.style.nonce&&n.setAttribute(`nonce`,this.config.style.nonce),t.Pn.prepend(document.head,n)}loadFontStyles(){var e,n,r;let i=(e=this.config.style)==null?void 0:e.fontFamily;if(!i)return;let a=`blok-font-${this.nodes.holder.id===``?(n=this.nodes.wrapper.dataset.blokInterface)==null?`default`:n:this.nodes.holder.id}`;if(this.fontStyleTagId=a,t.Pn.get(a))return;let o=[`[data-blok-interface=blok], [data-blok-interface=tooltip] {`,` --blok-font-family: ${i};`,`}`,`[data-blok-popover]:not([data-blok-popover-inline]) {`,` --blok-font-family: ${i};`,`}`].join(`
|
|
16
|
+
`),s=t.Pn.make(`style`,null,{id:a,textContent:o});(r=this.config.style)!=null&&r.nonce&&s.setAttribute(`nonce`,this.config.style.nonce),t.Pn.prepend(document.head,s)}bindReadOnlyInsensitiveListeners(){this.listeners.on(window,`resize`,this.resizeDebouncer,{passive:!0}),this.listeners.on(this.nodes.redactor,`mousedown`,this.documentTouchedListener,{capture:!0,passive:!0}),this.listeners.on(this.nodes.redactor,`touchstart`,this.documentTouchedListener,{capture:!0,passive:!0})}unbindReadOnlyInsensitiveListeners(){var e;this.listeners.off(window,`resize`,this.resizeDebouncer),this.listeners.off(this.nodes.redactor,`mousedown`,this.documentTouchedListener),this.listeners.off(this.nodes.redactor,`touchstart`,this.documentTouchedListener),(e=this.selectionController)==null||e.disable()}bindReadOnlySensitiveListeners(){var e,t;this.readOnlyMutableListeners.on(this.nodes.bottomZone,`click`,e=>{e instanceof MouseEvent&&this.bottomZoneClicked(e)},!1),this.readOnlyMutableListeners.on(this.nodes.redactor,`click`,e=>{e instanceof MouseEvent&&this.redactorClicked(e)},!1),this.readOnlyMutableListeners.on(document,`mousedown`,e=>{e instanceof MouseEvent&&this.documentClickedHandler&&this.documentClickedHandler(e)},!0),(e=this.keyboardController)==null||e.enable(),(t=this.blockHoverController)==null||t.enable(),this.enableInputsEmptyMark()}unbindReadOnlySensitiveListeners(){var e,t;this.readOnlyMutableListeners.clearAll(),(e=this.keyboardController)==null||e.disable(),(t=this.blockHoverController)==null||t.disable()}windowResize(){this.contentRectCache=null,this.setIsMobile()}bottomZoneClicked(e){if(!t.mn.isCollapsed)return;let{BlockSelection:n,BlockManager:r,Caret:i,Toolbar:a}=this.Blok;n.anyBlockSelected||r.lastBlock&&(e.stopImmediatePropagation(),e.stopPropagation(),(!r.lastBlock.tool.isDefault||!r.lastBlock.isEmpty)&&r.insertAtEnd(),i.setToTheLastBlock(),a.moveAndOpen(r.lastBlock))}redactorClicked(e){let n=e.target,r=e.metaKey||e.ctrlKey;if(!t.Pn.isAnchor(n)||!r)return;e.stopImmediatePropagation(),e.stopPropagation();let i=n.getAttribute(`href`);i&&t.Jn(t.Wn(i))}enableInputsEmptyMark(){let e=e=>{let n=e.target;t.In(n)};this.readOnlyMutableListeners.on(this.nodes.wrapper,`input`,e),this.readOnlyMutableListeners.on(this.nodes.wrapper,`focusin`,e),this.readOnlyMutableListeners.on(this.nodes.wrapper,`focusout`,e)}},Od=`(prefers-color-scheme: dark)`,kd=`data-blok-theme`,Ad={activeInstances:0},jd={BlocksAPI:et,CaretAPI:nt,EventsAPI:rt,HistoryAPI:it,I18nAPI:at,API:ot,InlineToolbarAPI:st,ListenersAPI:ct,NotifierAPI:ut,ReadOnlyAPI:dt,SanitizerAPI:ft,SaverAPI:pt,SelectionAPI:mt,ToolsAPI:_t,StylesAPI:ht,ToolbarAPI:gt,TooltipAPI:vt,UiAPI:yt,ThemeAPI:bt,BlockSettings:Cu,Toolbar:Mu,InlineToolbar:Ju,I18n:xl,BlockEvents:cc,BlockManager:Rc,BlockSelection:zc,Caret:Wc,CrossBlockSelection:Gc,DragManager:fl,ModificationsObserver:Sl,Paste:ru,ReadOnly:iu,RectangleSelection:au,Renderer:uu,Saver:pu,Tools:ld,UI:Dd,ThemeManager:class extends l{constructor(...e){super(...e),this.mode=`auto`,this.resolved=`light`,this.mediaQuery=null,this.onMediaChange=e=>{let t=e.matches?`dark`:`light`;t!==this.resolved&&(this.resolved=t,this.fireCallback())}}prepare(){var e;Ad.activeInstances++,this.mode=(e=this.config.theme)==null?`auto`:e,this.applyAttribute(!1),this.resolved=this.deriveResolved(),this.mode===`auto`&&this.addMediaListener()}getMode(){return this.mode}getResolved(){return this.resolved}setMode(e){let t=this.resolved;this.mode===`auto`&&this.removeMediaListener(),this.mode=e,this.applyAttribute(!0),this.resolved=this.deriveResolved(),this.mode===`auto`&&this.addMediaListener(),this.resolved!==t&&this.fireCallback()}destroy(){this.removeMediaListener(),Ad.activeInstances--,Ad.activeInstances<=0&&(Ad.activeInstances=0,this.removeAttribute())}applyAttribute(e){if(!(typeof document>`u`))if(this.mode===`auto`)Ad.activeInstances<=1&&this.removeAttribute();else{if(!e&&Ad.activeInstances>1&&document.documentElement.hasAttribute(kd))return;document.documentElement.setAttribute(kd,this.mode)}}removeAttribute(){typeof document>`u`||document.documentElement.removeAttribute(kd)}deriveResolved(){return this.mode===`auto`?typeof window>`u`||typeof window.matchMedia!=`function`?`light`:window.matchMedia(Od).matches?`dark`:`light`:this.mode}addMediaListener(){typeof window>`u`||typeof window.matchMedia!=`function`||(this.mediaQuery=window.matchMedia(Od),this.mediaQuery.addEventListener(`change`,this.onMediaChange))}removeMediaListener(){this.mediaQuery&&(this.mediaQuery.removeEventListener(`change`,this.onMediaChange),this.mediaQuery=null)}fireCallback(){let e=this.config.onThemeChange;typeof e==`function`&&e(this.resolved)}},YjsManager:Fs},Md=class{constructor(e){var n=this;this.moduleInstances={},this.eventsDispatcher=new t.yn,this.config={},this.isReady=new Promise((r,i)=>{Promise.resolve().then(async()=>{n.configuration=e,n.validate(),n.init(),await n.start(),await n.render();let{BlockManager:t,Caret:i,UI:a,ModificationsObserver:o}=n.moduleInstances;a.checkEmptiness(),o.enable(),n.configuration.autofocus===!0&&n.configuration.readOnly!==!0&&i.setToBlock(t.blocks[0],i.positions.START),r()}).catch(e=>{t.ir(`Blok is not ready because of ${e}`,`error`),i(e)})})}set configuration(e){var r,i,a,o,s;t.er(e)?this.config=n.t({},e):this.config={holder:e},this.config.holder==null&&(this.config.holder=`blok`),this.config.logLevel==null&&(this.config.logLevel=t.rr.VERBOSE),t.or(this.config.logLevel),this.config.defaultBlock=(r=this.config.defaultBlock)==null?`paragraph`:r;let c=this.config.tools,l=this.config.defaultBlock,u=c!=null&&Object.prototype.hasOwnProperty.call(c,l),d=(i=this.config.data)==null?void 0:i.blocks,f=Array.isArray(d)&&d.length>0;if(l&&l!==`paragraph`&&!u&&!f){t.ir(`Default block "${l}" is not configured. Falling back to "paragraph" tool.`,`warn`),this.config.defaultBlock=`paragraph`;let e=this.config.tools,r=n.t({},e==null?{}:e),i=r.paragraph;r.paragraph=this.createParagraphToolConfig(i),this.config.tools=r}this.config.minHeight=this.config.minHeight===void 0?300:this.config.minHeight;let p={type:this.config.defaultBlock,data:{}};this.config.placeholder===void 0&&(this.config.placeholder=!1),this.config.sanitizer=(a=this.config.sanitizer)==null?{}:a,this.config.hideToolbar=(o=this.config.hideToolbar)==null?!1:o,this.config.tools=this.config.tools||{},this.config.i18n=this.config.i18n||{},this.config.data=this.config.data||{blocks:[]},this.config.onReady=this.config.onReady||(()=>{}),this.config.onChange=this.config.onChange||(()=>{}),this.config.inlineToolbar=this.config.inlineToolbar===void 0?!0:this.config.inlineToolbar,(t.Qn(this.config.data)||this.config.data.blocks.length===0)&&(this.config.data={blocks:[p]}),this.config.readOnly=(s=this.config.readOnly)==null?!1:s}get configuration(){return this.config}validate(){let{holder:e}=this.config;if(t.tr(e)&&!t.Pn.get(e))throw Error(`element with ID «${e}» is missing. Pass correct holder's ID.`);if(e&&t.er(e)&&!t.Pn.isElement(e))throw Error(`«holder» value must be an Element node`)}init(){this.constructModules(),this.configureModules()}async start(){var e=this;await[`I18n`,`Tools`,`UI`,`BlockManager`,`Paste`,`BlockSelection`,`RectangleSelection`,`CrossBlockSelection`,`ReadOnly`,`ThemeManager`].reduce((n,r)=>n.then(async()=>{try{await e.moduleInstances[r].prepare()}catch(e){if(e instanceof c)throw Error(e.message);t.ir(`Module ${r} was skipped because of %o`,`warn`,e)}}),Promise.resolve())}render(){let e=this.moduleInstances.Renderer;if(!e)throw new c(`Renderer module is not initialized`);if(!this.config.data)throw new c(`Blok data is not initialized`);return e.render(this.config.data.blocks)}constructModules(){Object.entries(jd).forEach(([e,n])=>{try{this.moduleInstances[e]=new n({config:this.configuration,eventsDispatcher:this.eventsDispatcher})}catch(n){t.ir(`[constructModules] Module ${e} skipped because`,`error`,n)}})}configureModules(){for(let e in this.moduleInstances)Object.prototype.hasOwnProperty.call(this.moduleInstances,e)&&(this.moduleInstances[e].state=this.getModulesDiff(e))}createParagraphToolConfig(e){if(e===void 0)return{config:{preserveBlank:!0}};if(t.$n(e))return{class:e,config:{preserveBlank:!0}};if(t.er(e)){let r=e,i=r.config;return n.t(n.t({},r),{},{config:n.t(n.t({},t.er(i)?i:{}),{},{preserveBlank:!0})})}return{config:{preserveBlank:!0}}}getModulesDiff(e){let t={};for(let n in this.moduleInstances)n!==e&&(t[n]=this.moduleInstances[n]);return t}};typeof Element<`u`&&Element.prototype.scrollIntoViewIfNeeded===void 0&&(Element.prototype.scrollIntoViewIfNeeded=function(e){let t=e==null?!0:e,n=this.parentElement;if(!n)return;let r=window.getComputedStyle(n,null),i=parseInt(r.getPropertyValue(`border-top-width`)),a=parseInt(r.getPropertyValue(`border-left-width`)),o=this.offsetTop-n.offsetTop<n.scrollTop,s=this.offsetTop-n.offsetTop+this.clientHeight-i>n.scrollTop+n.clientHeight,c=this.offsetLeft-n.offsetLeft<n.scrollLeft,l=this.offsetLeft-n.offsetLeft+this.clientWidth-a>n.scrollLeft+n.clientWidth,u=o&&!s;(o||s)&&t&&(n.scrollTop=this.offsetTop-n.offsetTop-n.clientHeight/2-i+this.clientHeight/2),(c||l)&&t&&(n.scrollLeft=this.offsetLeft-n.offsetLeft-n.clientWidth/2-a+this.clientWidth/2),(o||s||c||l)&&!t&&this.scrollIntoView(u)});var Nd=globalThis.setTimeout.bind(globalThis),Pd=globalThis.clearTimeout.bind(globalThis),Fd=new Map,Id=e=>{let t=Number(e);return Number.isFinite(t)&&t>0?t:Date.now()};typeof window<`u`&&window.requestIdleCallback===void 0&&(window.requestIdleCallback=function(e){let t=Date.now(),n={},r=Nd(()=>{let r=n.value;typeof r==`number`&&Fd.delete(r),e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1),i=Id(r);return n.value=i,Fd.set(i,r),i}),typeof window<`u`&&window.cancelIdleCallback===void 0&&(window.cancelIdleCallback=function(e){let t=Fd.get(e);t!==void 0&&(Fd.delete(e),Pd(t)),globalThis.clearTimeout(e)}),s();var Ld,Rd=t.sr(),zd=class e{static get version(){return t.sr()}constructor(r){this.initialConfiguration=t.er(r)?n.t({},r):r;let i=t.er(r)&&t.$n(r.onReady)?r.onReady:()=>{},a=new Md(r),o={pendingDestroy:!1};this.destroy=()=>{o.pendingDestroy=!0};let s={pendingMode:null},c=()=>a.moduleInstances.ThemeManager;this.theme={get:()=>{var e;let t=c();return t===void 0?(e=s.pendingMode)==null?`auto`:e:t.getMode()},set:e=>{s.pendingMode=e;let t=c();t!==void 0&&t.setMode(e)},getResolved:()=>{let e=c();return e===void 0?`light`:e.getResolved()}},this.isReady=a.isReady.then(()=>{if(o.pendingDestroy){Object.values(a.moduleInstances).forEach(e=>{e!=null&&t.$n(e.markDestroyed)&&e.markDestroyed()}),Object.values(a.moduleInstances).forEach(e=>{if(e==null)return;t.$n(e.destroy)&&e.destroy();let n=e.listeners;n&&t.$n(n.removeAll)&&n.removeAll()}),t.on();let e=Object.keys(this);for(let t of e)delete this[t];Object.setPrototypeOf(this,null);return}if(this.exportAPI(a),s.pendingMode!==null){let e=a.moduleInstances.ThemeManager;e!==void 0&&e.setMode(s.pendingMode),s.pendingMode=null}let n=window.location.hash.slice(1),r=n?e.safeDecodeHash(n):``;if(r){let n=document.querySelector(`[data-blok-id="${CSS.escape(r)}"]`);if(n){var c,l;let i=(c=t.er(this.initialConfiguration)?(l=this.initialConfiguration.scrollToBlock)==null?void 0:l.topOffset:void 0)==null?0:c,o=n.getBoundingClientRect().top+window.scrollY-i;window.scrollTo({top:o,behavior:`smooth`}),e.selectBlockById(a,r)}else a.moduleInstances.Renderer!==void 0&&(a.moduleInstances.Renderer.pendingHashScroll=r)}i()})}exportAPI(n){[`configuration`].forEach(e=>{if(e!==`configuration`){this[e]=n[e];return}let r=n.configuration,i=t.er(this.initialConfiguration)||r==null?this.initialConfiguration:r;i!==void 0&&(this[e]=i)}),this.destroy=()=>{Object.values(n.moduleInstances).forEach(e=>{e!=null&&t.$n(e.markDestroyed)&&e.markDestroyed()}),Object.values(n.moduleInstances).forEach(e=>{if(e==null)return;t.$n(e.destroy)&&e.destroy();let n=e.listeners;n&&t.$n(n.removeAll)&&n.removeAll()}),t.on();let e=Object.keys(this);for(let t of e)delete this[t];Object.setPrototypeOf(this,null)};let r=n.moduleInstances.API.methods,i=n.moduleInstances.EventsAPI.methods,a=e=>{Object.prototype.hasOwnProperty.call(e,`eventsDispatcher`)||Object.defineProperty(e,`eventsDispatcher`,{value:i,configurable:!0,enumerable:!0,writable:!1})};a(r),a(this),Object.getPrototypeOf(r)!==e.prototype&&Object.setPrototypeOf(r,e.prototype),Object.setPrototypeOf(this,r);let o=Object.create(null),s=n.moduleInstances,c=s,l=e=>/^[A-Z]+$/.test(e)?e.toLowerCase():e.charAt(0).toLowerCase()+e.slice(1);Object.keys(c).forEach(e=>{let t=l(e);Object.defineProperty(o,t,{configurable:!0,enumerable:!0,get:()=>c[e]})});let u=s.Toolbar,d=s.BlockSettings;u!==void 0&&d!==void 0&&u.blockSettings===void 0&&(u.blockSettings=d);let f=s.InlineToolbar;u!==void 0&&f!==void 0&&u.inlineToolbar===void 0&&(u.inlineToolbar=f),Object.defineProperty(this,`module`,{value:o,configurable:!0,enumerable:!1,writable:!1}),delete this.exportAPI,Object.entries({blocks:{clear:`clear`,render:`render`},caret:{focus:`focus`},events:{on:`on`,off:`off`,emit:`emit`},saver:{save:`save`}}).forEach(([e,t])=>{Object.entries(t).forEach(([t,r])=>{let i=e;this[r]=n.moduleInstances.API.methods[i][t]})});let p=n.moduleInstances.API.methods.ui;Object.defineProperty(this,`isMobile`,{configurable:!0,enumerable:!0,get(){return p.isMobile}})}static safeDecodeHash(e){try{return decodeURIComponent(e)}catch(t){return e}}static selectBlockById(e,t){let n=e.moduleInstances.BlockManager.getBlockById(t);n!==void 0&&e.moduleInstances.BlockSelection.selectBlock(n)}};Ld=zd,Ld.DATA_ATTR=t.ur,Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return Rd}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return zd}});
|