@notectl/core 1.7.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +56 -31
- package/custom-elements.json +350 -6
- package/dist/chunks/AttrRegistry-B2AGfTE0.mjs +2 -0
- package/dist/chunks/AttrRegistry-B2AGfTE0.mjs.map +1 -0
- package/dist/chunks/AttributedMarkCommands-BB7lzFct.mjs +2 -0
- package/dist/chunks/{AttributedMarkCommands-BtLea72z.mjs.map → AttributedMarkCommands-BB7lzFct.mjs.map} +1 -1
- package/dist/chunks/BlockTypePickerRegistry-DcSE6IXB.mjs +2 -0
- package/dist/chunks/BlockTypePickerRegistry-DcSE6IXB.mjs.map +1 -0
- package/dist/chunks/ColorGrid-CpkbKfXg.mjs +2 -0
- package/dist/chunks/ColorGrid-CpkbKfXg.mjs.map +1 -0
- package/dist/chunks/ColorPickerPopup-DRzFvt7o.mjs +2 -0
- package/dist/chunks/ColorPickerPopup-DRzFvt7o.mjs.map +1 -0
- package/dist/chunks/ColorValidation-DCSKq9B2.mjs +2 -0
- package/dist/chunks/{ColorValidation-CV4f1wu6.mjs.map → ColorValidation-DCSKq9B2.mjs.map} +1 -1
- package/dist/chunks/Commands-P9wS8qtN.mjs +2 -0
- package/dist/chunks/Commands-P9wS8qtN.mjs.map +1 -0
- package/dist/chunks/Decoration-D49mFXrH.mjs +2 -0
- package/dist/chunks/Decoration-D49mFXrH.mjs.map +1 -0
- package/dist/chunks/Document-BFYAonMF.mjs +2 -0
- package/dist/chunks/Document-BFYAonMF.mjs.map +1 -0
- package/dist/chunks/DocumentParser-DFcvVMGY.mjs +2 -0
- package/dist/chunks/DocumentParser-DFcvVMGY.mjs.map +1 -0
- package/dist/chunks/DomUtils-Cdz1eDKM.mjs +2 -0
- package/dist/chunks/DomUtils-Cdz1eDKM.mjs.map +1 -0
- package/dist/chunks/HTMLUtils-CCvQ5f83.mjs +2 -0
- package/dist/chunks/HTMLUtils-CCvQ5f83.mjs.map +1 -0
- package/dist/chunks/HeadingPlugin-DYy3IoT_.mjs +2 -0
- package/dist/chunks/HeadingPlugin-DYy3IoT_.mjs.map +1 -0
- package/dist/chunks/KeyboardNav-DsYhKKuV.mjs +2 -0
- package/dist/chunks/KeyboardNav-DsYhKKuV.mjs.map +1 -0
- package/dist/chunks/LocaleService-B6Z-wyAF.mjs +2 -0
- package/dist/chunks/LocaleService-B6Z-wyAF.mjs.map +1 -0
- package/dist/chunks/MarkCommands-B_erV7zz.mjs +2 -0
- package/dist/chunks/MarkCommands-B_erV7zz.mjs.map +1 -0
- package/dist/chunks/NavigationQueries-ogQuObz7.mjs +2 -0
- package/dist/chunks/NavigationQueries-ogQuObz7.mjs.map +1 -0
- package/dist/chunks/NotectlEditor-4NFnXLyD.mjs +2 -0
- package/dist/chunks/NotectlEditor-4NFnXLyD.mjs.map +1 -0
- package/dist/chunks/Platform-CU6itXZo.mjs +2 -0
- package/dist/chunks/Platform-CU6itXZo.mjs.map +1 -0
- package/dist/chunks/Plugin-OzM8Oxm_.mjs +2 -0
- package/dist/chunks/Plugin-OzM8Oxm_.mjs.map +1 -0
- package/dist/chunks/PluginHelpers-DjZt0pQi.mjs +2 -0
- package/dist/chunks/PluginHelpers-DjZt0pQi.mjs.map +1 -0
- package/dist/chunks/PopupManager-BM8IT6M7.mjs +2 -0
- package/dist/chunks/PopupManager-BM8IT6M7.mjs.map +1 -0
- package/dist/chunks/PopupPositioning-DtvqMSop.mjs +2 -0
- package/dist/chunks/PopupPositioning-DtvqMSop.mjs.map +1 -0
- package/dist/chunks/PrintTypes-ehbL7ipA.mjs +2 -0
- package/dist/chunks/PrintTypes-ehbL7ipA.mjs.map +1 -0
- package/dist/chunks/RangeIterator-CNI6smOg.mjs +2 -0
- package/dist/chunks/{RangeIterator-Bh4Vl_6D.mjs.map → RangeIterator-CNI6smOg.mjs.map} +1 -1
- package/dist/chunks/Selection-6-W6Flxc.mjs +2 -0
- package/dist/chunks/{Selection-BRTab5hO.mjs.map → Selection-6-W6Flxc.mjs.map} +1 -1
- package/dist/chunks/SelectionTransactions-q71GEzgE.mjs +2 -0
- package/dist/chunks/SelectionTransactions-q71GEzgE.mjs.map +1 -0
- package/dist/chunks/ShortcutFormatting-BLKS0Gys.mjs +2 -0
- package/dist/chunks/ShortcutFormatting-BLKS0Gys.mjs.map +1 -0
- package/dist/chunks/StyleRuntime-BmsLoEa8.mjs +2 -0
- package/dist/chunks/StyleRuntime-BmsLoEa8.mjs.map +1 -0
- package/dist/chunks/TextDirectionLocale-DB_aqrMg.mjs +2 -0
- package/dist/chunks/TextDirectionLocale-DB_aqrMg.mjs.map +1 -0
- package/dist/chunks/TypeBrands-Bp_Z_o5Y.mjs +2 -0
- package/dist/chunks/{TypeBrands-C09nE2qO.mjs.map → TypeBrands-Bp_Z_o5Y.mjs.map} +1 -1
- package/dist/chunks/ar-B93SPJT7.mjs +2 -0
- package/dist/chunks/ar-B93SPJT7.mjs.map +1 -0
- package/dist/chunks/ar-BAmGa08u.mjs +2 -0
- package/dist/chunks/ar-BAmGa08u.mjs.map +1 -0
- package/dist/chunks/ar-BYNFEVLc.mjs +2 -0
- package/dist/chunks/ar-BYNFEVLc.mjs.map +1 -0
- package/dist/chunks/ar-Bnc7y8BP.mjs +2 -0
- package/dist/chunks/ar-Bnc7y8BP.mjs.map +1 -0
- package/dist/chunks/ar-Bp3rDZky.mjs +2 -0
- package/dist/chunks/ar-Bp3rDZky.mjs.map +1 -0
- package/dist/chunks/ar-BtOQ7lro.mjs +2 -0
- package/dist/chunks/ar-BtOQ7lro.mjs.map +1 -0
- package/dist/chunks/ar-C5JEHhw9.mjs +2 -0
- package/dist/chunks/ar-C5JEHhw9.mjs.map +1 -0
- package/dist/chunks/ar-CL3QL0tw.mjs +2 -0
- package/dist/chunks/ar-CL3QL0tw.mjs.map +1 -0
- package/dist/chunks/ar-CYtG-XlN.mjs +2 -0
- package/dist/chunks/ar-CYtG-XlN.mjs.map +1 -0
- package/dist/chunks/ar-CzVj8p__.mjs +2 -0
- package/dist/chunks/ar-CzVj8p__.mjs.map +1 -0
- package/dist/chunks/ar-D7PS3e2g.mjs +2 -0
- package/dist/chunks/ar-D7PS3e2g.mjs.map +1 -0
- package/dist/chunks/ar-D8adM2Uy.mjs +2 -0
- package/dist/chunks/ar-D8adM2Uy.mjs.map +1 -0
- package/dist/chunks/ar-D9jyShaB.mjs +2 -0
- package/dist/chunks/ar-D9jyShaB.mjs.map +1 -0
- package/dist/chunks/ar-DR6OA3ZO.mjs +2 -0
- package/dist/chunks/ar-DR6OA3ZO.mjs.map +1 -0
- package/dist/chunks/ar-Deibepjm.mjs +2 -0
- package/dist/chunks/ar-Deibepjm.mjs.map +1 -0
- package/dist/chunks/ar-Dlb5riUN.mjs +2 -0
- package/dist/chunks/ar-Dlb5riUN.mjs.map +1 -0
- package/dist/chunks/ar-DmmxE2W7.mjs +2 -0
- package/dist/chunks/ar-DmmxE2W7.mjs.map +1 -0
- package/dist/chunks/ar-Ds6Z2Gzf.mjs +2 -0
- package/dist/chunks/ar-Ds6Z2Gzf.mjs.map +1 -0
- package/dist/chunks/ar-DtIHQ8nU.mjs +2 -0
- package/dist/chunks/ar-DtIHQ8nU.mjs.map +1 -0
- package/dist/chunks/ar-J8B-on-0.mjs +2 -0
- package/dist/chunks/ar-J8B-on-0.mjs.map +1 -0
- package/dist/chunks/ar-iU02mRe5.mjs +2 -0
- package/dist/chunks/ar-iU02mRe5.mjs.map +1 -0
- package/dist/chunks/ar-mSCYQYnL.mjs +2 -0
- package/dist/chunks/ar-mSCYQYnL.mjs.map +1 -0
- package/dist/chunks/color-picker-Byjl_xr9.mjs +2 -0
- package/dist/chunks/color-picker-Byjl_xr9.mjs.map +1 -0
- package/dist/chunks/de-8aCC5jBM.mjs +2 -0
- package/dist/chunks/de-8aCC5jBM.mjs.map +1 -0
- package/dist/chunks/de-B4y4ndUw.mjs +2 -0
- package/dist/chunks/de-B4y4ndUw.mjs.map +1 -0
- package/dist/chunks/de-B5fcZ0FQ.mjs +2 -0
- package/dist/chunks/de-B5fcZ0FQ.mjs.map +1 -0
- package/dist/chunks/de-BT9VmwoJ.mjs +2 -0
- package/dist/chunks/de-BT9VmwoJ.mjs.map +1 -0
- package/dist/chunks/de-BZWSyJTG.mjs +2 -0
- package/dist/chunks/de-BZWSyJTG.mjs.map +1 -0
- package/dist/chunks/de-CFD_Wgik.mjs +2 -0
- package/dist/chunks/de-CFD_Wgik.mjs.map +1 -0
- package/dist/chunks/de-CLYtb6kD.mjs +2 -0
- package/dist/chunks/de-CLYtb6kD.mjs.map +1 -0
- package/dist/chunks/de-CP5v-98M.mjs +2 -0
- package/dist/chunks/de-CP5v-98M.mjs.map +1 -0
- package/dist/chunks/de-CYJ6uWno.mjs +2 -0
- package/dist/chunks/de-CYJ6uWno.mjs.map +1 -0
- package/dist/chunks/de-ChcKkF7A.mjs +2 -0
- package/dist/chunks/de-ChcKkF7A.mjs.map +1 -0
- package/dist/chunks/de-CicoU066.mjs +2 -0
- package/dist/chunks/de-CicoU066.mjs.map +1 -0
- package/dist/chunks/de-CjLAdBt2.mjs +2 -0
- package/dist/chunks/de-CjLAdBt2.mjs.map +1 -0
- package/dist/chunks/de-CtFvAXwF.mjs +2 -0
- package/dist/chunks/de-CtFvAXwF.mjs.map +1 -0
- package/dist/chunks/de-D1OAXtxJ.mjs +2 -0
- package/dist/chunks/de-D1OAXtxJ.mjs.map +1 -0
- package/dist/chunks/de-DBbzCQrm.mjs +2 -0
- package/dist/chunks/de-DBbzCQrm.mjs.map +1 -0
- package/dist/chunks/de-DOLwx_M7.mjs +2 -0
- package/dist/chunks/de-DOLwx_M7.mjs.map +1 -0
- package/dist/chunks/de-De2miMxo.mjs +2 -0
- package/dist/chunks/de-De2miMxo.mjs.map +1 -0
- package/dist/chunks/de-OTfhhinm.mjs +2 -0
- package/dist/chunks/de-OTfhhinm.mjs.map +1 -0
- package/dist/chunks/de-PZ9-LlBp.mjs +2 -0
- package/dist/chunks/de-PZ9-LlBp.mjs.map +1 -0
- package/dist/chunks/de-UREymH-5.mjs +2 -0
- package/dist/chunks/de-UREymH-5.mjs.map +1 -0
- package/dist/chunks/de-chYdoK9q.mjs +2 -0
- package/dist/chunks/de-chYdoK9q.mjs.map +1 -0
- package/dist/chunks/de-xJh5C_pk.mjs +2 -0
- package/dist/chunks/de-xJh5C_pk.mjs.map +1 -0
- package/dist/chunks/es-B9UhsaEI.mjs +2 -0
- package/dist/chunks/es-B9UhsaEI.mjs.map +1 -0
- package/dist/chunks/es-BHGwPgrP.mjs +2 -0
- package/dist/chunks/es-BHGwPgrP.mjs.map +1 -0
- package/dist/chunks/es-BbGOZGS_.mjs +2 -0
- package/dist/chunks/es-BbGOZGS_.mjs.map +1 -0
- package/dist/chunks/es-BjPsub0k.mjs +2 -0
- package/dist/chunks/es-BjPsub0k.mjs.map +1 -0
- package/dist/chunks/es-Bk0bRDFE.mjs +2 -0
- package/dist/chunks/es-Bk0bRDFE.mjs.map +1 -0
- package/dist/chunks/es-BkS6DsrM.mjs +2 -0
- package/dist/chunks/es-BkS6DsrM.mjs.map +1 -0
- package/dist/chunks/es-BzEpr4Bk.mjs +2 -0
- package/dist/chunks/es-BzEpr4Bk.mjs.map +1 -0
- package/dist/chunks/es-C2lnWyA0.mjs +2 -0
- package/dist/chunks/es-C2lnWyA0.mjs.map +1 -0
- package/dist/chunks/es-C7e35Muh.mjs +2 -0
- package/dist/chunks/es-C7e35Muh.mjs.map +1 -0
- package/dist/chunks/es-CBk43isB.mjs +2 -0
- package/dist/chunks/es-CBk43isB.mjs.map +1 -0
- package/dist/chunks/es-CE8t9fuM.mjs +2 -0
- package/dist/chunks/es-CE8t9fuM.mjs.map +1 -0
- package/dist/chunks/es-CFjzqIbS.mjs +2 -0
- package/dist/chunks/es-CFjzqIbS.mjs.map +1 -0
- package/dist/chunks/es-Ce-AEYxc.mjs +2 -0
- package/dist/chunks/es-Ce-AEYxc.mjs.map +1 -0
- package/dist/chunks/es-Co4AJr8Y.mjs +2 -0
- package/dist/chunks/es-Co4AJr8Y.mjs.map +1 -0
- package/dist/chunks/es-Cu5_OA4X.mjs +2 -0
- package/dist/chunks/es-Cu5_OA4X.mjs.map +1 -0
- package/dist/chunks/es-Cud6JXHf.mjs +2 -0
- package/dist/chunks/es-Cud6JXHf.mjs.map +1 -0
- package/dist/chunks/es-D-II7LZC.mjs +2 -0
- package/dist/chunks/es-D-II7LZC.mjs.map +1 -0
- package/dist/chunks/es-DBBSeOaD.mjs +2 -0
- package/dist/chunks/es-DBBSeOaD.mjs.map +1 -0
- package/dist/chunks/es-DCwjeUUu.mjs +2 -0
- package/dist/chunks/es-DCwjeUUu.mjs.map +1 -0
- package/dist/chunks/es-DvgH3-WZ.mjs +2 -0
- package/dist/chunks/es-DvgH3-WZ.mjs.map +1 -0
- package/dist/chunks/es-MgguVgIs.mjs +2 -0
- package/dist/chunks/es-MgguVgIs.mjs.map +1 -0
- package/dist/chunks/es-yXjjcxgb.mjs +2 -0
- package/dist/chunks/es-yXjjcxgb.mjs.map +1 -0
- package/dist/chunks/fr-B-_yKIAY.mjs +2 -0
- package/dist/chunks/fr-B-_yKIAY.mjs.map +1 -0
- package/dist/chunks/fr-BGyF2ym0.mjs +2 -0
- package/dist/chunks/fr-BGyF2ym0.mjs.map +1 -0
- package/dist/chunks/fr-BoRJ3B2-.mjs +2 -0
- package/dist/chunks/fr-BoRJ3B2-.mjs.map +1 -0
- package/dist/chunks/fr-BrKk4SPg.mjs +2 -0
- package/dist/chunks/fr-BrKk4SPg.mjs.map +1 -0
- package/dist/chunks/fr-C-y09LKg.mjs +2 -0
- package/dist/chunks/fr-C-y09LKg.mjs.map +1 -0
- package/dist/chunks/fr-C1W7jyd6.mjs +2 -0
- package/dist/chunks/fr-C1W7jyd6.mjs.map +1 -0
- package/dist/chunks/fr-C8CtmWBj.mjs +2 -0
- package/dist/chunks/fr-C8CtmWBj.mjs.map +1 -0
- package/dist/chunks/fr-C9oiPW0k.mjs +2 -0
- package/dist/chunks/fr-C9oiPW0k.mjs.map +1 -0
- package/dist/chunks/fr-CEkk4UyZ.mjs +2 -0
- package/dist/chunks/fr-CEkk4UyZ.mjs.map +1 -0
- package/dist/chunks/fr-Ccaetiwi.mjs +2 -0
- package/dist/chunks/fr-Ccaetiwi.mjs.map +1 -0
- package/dist/chunks/fr-Ccku5KzA.mjs +2 -0
- package/dist/chunks/fr-Ccku5KzA.mjs.map +1 -0
- package/dist/chunks/fr-CfUg1FxU.mjs +2 -0
- package/dist/chunks/fr-CfUg1FxU.mjs.map +1 -0
- package/dist/chunks/fr-DDkBcjmO.mjs +2 -0
- package/dist/chunks/fr-DDkBcjmO.mjs.map +1 -0
- package/dist/chunks/fr-DNwLChcm.mjs +2 -0
- package/dist/chunks/fr-DNwLChcm.mjs.map +1 -0
- package/dist/chunks/fr-DvneSjCf.mjs +2 -0
- package/dist/chunks/fr-DvneSjCf.mjs.map +1 -0
- package/dist/chunks/fr-Dx4Qqimj.mjs +2 -0
- package/dist/chunks/fr-Dx4Qqimj.mjs.map +1 -0
- package/dist/chunks/fr-RHXmueoO.mjs +2 -0
- package/dist/chunks/fr-RHXmueoO.mjs.map +1 -0
- package/dist/chunks/fr-Wiobfk5s.mjs +2 -0
- package/dist/chunks/fr-Wiobfk5s.mjs.map +1 -0
- package/dist/chunks/fr-YMiDtWuG.mjs +2 -0
- package/dist/chunks/fr-YMiDtWuG.mjs.map +1 -0
- package/dist/chunks/fr-_Oxf0k66.mjs +2 -0
- package/dist/chunks/fr-_Oxf0k66.mjs.map +1 -0
- package/dist/chunks/fr-gurfH-7T.mjs +2 -0
- package/dist/chunks/fr-gurfH-7T.mjs.map +1 -0
- package/dist/chunks/fr-zP7EjxDL.mjs +2 -0
- package/dist/chunks/fr-zP7EjxDL.mjs.map +1 -0
- package/dist/chunks/hi-B2W8pFqK.mjs +2 -0
- package/dist/chunks/hi-B2W8pFqK.mjs.map +1 -0
- package/dist/chunks/hi-B2m69ZCq.mjs +2 -0
- package/dist/chunks/hi-B2m69ZCq.mjs.map +1 -0
- package/dist/chunks/hi-BMIt3y_-.mjs +2 -0
- package/dist/chunks/hi-BMIt3y_-.mjs.map +1 -0
- package/dist/chunks/hi-BmkfaZpg.mjs +2 -0
- package/dist/chunks/hi-BmkfaZpg.mjs.map +1 -0
- package/dist/chunks/hi-C-l_R2SO.mjs +2 -0
- package/dist/chunks/hi-C-l_R2SO.mjs.map +1 -0
- package/dist/chunks/hi-C1LhM-oY.mjs +2 -0
- package/dist/chunks/hi-C1LhM-oY.mjs.map +1 -0
- package/dist/chunks/hi-CGEbGI1l.mjs +2 -0
- package/dist/chunks/hi-CGEbGI1l.mjs.map +1 -0
- package/dist/chunks/hi-CPuhj7IA.mjs +2 -0
- package/dist/chunks/hi-CPuhj7IA.mjs.map +1 -0
- package/dist/chunks/hi-CT5WERqi.mjs +2 -0
- package/dist/chunks/hi-CT5WERqi.mjs.map +1 -0
- package/dist/chunks/hi-CbLPPQ0b.mjs +2 -0
- package/dist/chunks/hi-CbLPPQ0b.mjs.map +1 -0
- package/dist/chunks/hi-ClvEtEKe.mjs +2 -0
- package/dist/chunks/hi-ClvEtEKe.mjs.map +1 -0
- package/dist/chunks/hi-CpBWHmYH.mjs +2 -0
- package/dist/chunks/hi-CpBWHmYH.mjs.map +1 -0
- package/dist/chunks/hi-DAfl8nU_.mjs +2 -0
- package/dist/chunks/hi-DAfl8nU_.mjs.map +1 -0
- package/dist/chunks/hi-DVof3w0y.mjs +2 -0
- package/dist/chunks/hi-DVof3w0y.mjs.map +1 -0
- package/dist/chunks/hi-DtlvSQkD.mjs +2 -0
- package/dist/chunks/hi-DtlvSQkD.mjs.map +1 -0
- package/dist/chunks/hi-FH3CAJuR.mjs +2 -0
- package/dist/chunks/hi-FH3CAJuR.mjs.map +1 -0
- package/dist/chunks/hi-Ga9h9a_1.mjs +2 -0
- package/dist/chunks/hi-Ga9h9a_1.mjs.map +1 -0
- package/dist/chunks/hi-Zc17M1T-.mjs +2 -0
- package/dist/chunks/hi-Zc17M1T-.mjs.map +1 -0
- package/dist/chunks/hi-g7i0bmig.mjs +2 -0
- package/dist/chunks/hi-g7i0bmig.mjs.map +1 -0
- package/dist/chunks/hi-js2P6byR.mjs +2 -0
- package/dist/chunks/hi-js2P6byR.mjs.map +1 -0
- package/dist/chunks/hi-ntUsOspQ.mjs +2 -0
- package/dist/chunks/hi-ntUsOspQ.mjs.map +1 -0
- package/dist/chunks/hi-yxAcR3w6.mjs +2 -0
- package/dist/chunks/hi-yxAcR3w6.mjs.map +1 -0
- package/dist/chunks/index-C8xtb3SM.mjs +2 -0
- package/dist/chunks/index-C8xtb3SM.mjs.map +1 -0
- package/dist/chunks/index-DAoSt12h.mjs +2 -0
- package/dist/chunks/index-DAoSt12h.mjs.map +1 -0
- package/dist/chunks/pt--IiroJQw.mjs +2 -0
- package/dist/chunks/pt--IiroJQw.mjs.map +1 -0
- package/dist/chunks/pt-BF72W8M5.mjs +2 -0
- package/dist/chunks/pt-BF72W8M5.mjs.map +1 -0
- package/dist/chunks/pt-BX_t4luI.mjs +2 -0
- package/dist/chunks/pt-BX_t4luI.mjs.map +1 -0
- package/dist/chunks/pt-B_XJ2s9X.mjs +2 -0
- package/dist/chunks/pt-B_XJ2s9X.mjs.map +1 -0
- package/dist/chunks/pt-C-Vp7Rxj.mjs +2 -0
- package/dist/chunks/pt-C-Vp7Rxj.mjs.map +1 -0
- package/dist/chunks/pt-CD2aCZXf.mjs +2 -0
- package/dist/chunks/pt-CD2aCZXf.mjs.map +1 -0
- package/dist/chunks/pt-CFjzqIbS.mjs +2 -0
- package/dist/chunks/pt-CFjzqIbS.mjs.map +1 -0
- package/dist/chunks/pt-CHjmBegF.mjs +2 -0
- package/dist/chunks/pt-CHjmBegF.mjs.map +1 -0
- package/dist/chunks/pt-CQRzEocL.mjs +2 -0
- package/dist/chunks/pt-CQRzEocL.mjs.map +1 -0
- package/dist/chunks/pt-Cem2WxUk.mjs +2 -0
- package/dist/chunks/pt-Cem2WxUk.mjs.map +1 -0
- package/dist/chunks/pt-D6kdF3fH.mjs +2 -0
- package/dist/chunks/pt-D6kdF3fH.mjs.map +1 -0
- package/dist/chunks/pt-DJfJVeY8.mjs +2 -0
- package/dist/chunks/pt-DJfJVeY8.mjs.map +1 -0
- package/dist/chunks/pt-DfB-IaYi.mjs +2 -0
- package/dist/chunks/pt-DfB-IaYi.mjs.map +1 -0
- package/dist/chunks/pt-DlNdH9pu.mjs +2 -0
- package/dist/chunks/pt-DlNdH9pu.mjs.map +1 -0
- package/dist/chunks/pt-DrJ0-8Yo.mjs +2 -0
- package/dist/chunks/pt-DrJ0-8Yo.mjs.map +1 -0
- package/dist/chunks/pt-DsBJpgpe.mjs +2 -0
- package/dist/chunks/pt-DsBJpgpe.mjs.map +1 -0
- package/dist/chunks/pt-DwdSYJzC.mjs +2 -0
- package/dist/chunks/pt-DwdSYJzC.mjs.map +1 -0
- package/dist/chunks/pt-Dx9UkZ3j.mjs +2 -0
- package/dist/chunks/pt-Dx9UkZ3j.mjs.map +1 -0
- package/dist/chunks/pt-TuA3_GDM.mjs +2 -0
- package/dist/chunks/pt-TuA3_GDM.mjs.map +1 -0
- package/dist/chunks/pt-cN6r-f7f.mjs +2 -0
- package/dist/chunks/pt-cN6r-f7f.mjs.map +1 -0
- package/dist/chunks/pt-uNGpVM3D.mjs +2 -0
- package/dist/chunks/pt-uNGpVM3D.mjs.map +1 -0
- package/dist/chunks/pt-v1E9u-Jx.mjs +2 -0
- package/dist/chunks/pt-v1E9u-Jx.mjs.map +1 -0
- package/dist/chunks/ru-0h51zrqE.mjs +2 -0
- package/dist/chunks/ru-0h51zrqE.mjs.map +1 -0
- package/dist/chunks/ru-4S8w6UN_.mjs +2 -0
- package/dist/chunks/ru-4S8w6UN_.mjs.map +1 -0
- package/dist/chunks/ru-B0cRw90L.mjs +2 -0
- package/dist/chunks/ru-B0cRw90L.mjs.map +1 -0
- package/dist/chunks/ru-B3O7WXNM.mjs +2 -0
- package/dist/chunks/ru-B3O7WXNM.mjs.map +1 -0
- package/dist/chunks/ru-B6zVAzvI.mjs +2 -0
- package/dist/chunks/ru-B6zVAzvI.mjs.map +1 -0
- package/dist/chunks/ru-B8teJin_.mjs +2 -0
- package/dist/chunks/ru-B8teJin_.mjs.map +1 -0
- package/dist/chunks/ru-BCriPw-8.mjs +2 -0
- package/dist/chunks/ru-BCriPw-8.mjs.map +1 -0
- package/dist/chunks/ru-BNOU16E5.mjs +2 -0
- package/dist/chunks/ru-BNOU16E5.mjs.map +1 -0
- package/dist/chunks/ru-BO6BIS5W.mjs +2 -0
- package/dist/chunks/ru-BO6BIS5W.mjs.map +1 -0
- package/dist/chunks/ru-Bdy1lLuc.mjs +2 -0
- package/dist/chunks/ru-Bdy1lLuc.mjs.map +1 -0
- package/dist/chunks/ru-BgBctNVm.mjs +2 -0
- package/dist/chunks/ru-BgBctNVm.mjs.map +1 -0
- package/dist/chunks/ru-CNLx7T3O.mjs +2 -0
- package/dist/chunks/ru-CNLx7T3O.mjs.map +1 -0
- package/dist/chunks/ru-CVSCT776.mjs +2 -0
- package/dist/chunks/ru-CVSCT776.mjs.map +1 -0
- package/dist/chunks/ru-CZvkdGnf.mjs +2 -0
- package/dist/chunks/ru-CZvkdGnf.mjs.map +1 -0
- package/dist/chunks/ru-CegMPuML.mjs +2 -0
- package/dist/chunks/ru-CegMPuML.mjs.map +1 -0
- package/dist/chunks/ru-CiLrD2Nz.mjs +2 -0
- package/dist/chunks/ru-CiLrD2Nz.mjs.map +1 -0
- package/dist/chunks/ru-ClEM6OKY.mjs +2 -0
- package/dist/chunks/ru-ClEM6OKY.mjs.map +1 -0
- package/dist/chunks/ru-CrbxCeQf.mjs +2 -0
- package/dist/chunks/ru-CrbxCeQf.mjs.map +1 -0
- package/dist/chunks/ru-D3j2x2xu.mjs +2 -0
- package/dist/chunks/ru-D3j2x2xu.mjs.map +1 -0
- package/dist/chunks/ru-DdHqb4Mh.mjs +2 -0
- package/dist/chunks/ru-DdHqb4Mh.mjs.map +1 -0
- package/dist/chunks/ru-DjgNdOdJ.mjs +2 -0
- package/dist/chunks/ru-DjgNdOdJ.mjs.map +1 -0
- package/dist/chunks/ru-XKNCzkR2.mjs +2 -0
- package/dist/chunks/ru-XKNCzkR2.mjs.map +1 -0
- package/dist/chunks/zh--oNSMazK.mjs +2 -0
- package/dist/chunks/zh--oNSMazK.mjs.map +1 -0
- package/dist/chunks/zh-BfeWdPIz.mjs +2 -0
- package/dist/chunks/zh-BfeWdPIz.mjs.map +1 -0
- package/dist/chunks/zh-BnOxGKxF.mjs +2 -0
- package/dist/chunks/zh-BnOxGKxF.mjs.map +1 -0
- package/dist/chunks/zh-BqMtE-jN.mjs +2 -0
- package/dist/chunks/zh-BqMtE-jN.mjs.map +1 -0
- package/dist/chunks/zh-C3aI7A2o.mjs +2 -0
- package/dist/chunks/zh-C3aI7A2o.mjs.map +1 -0
- package/dist/chunks/zh-C6YALJZt.mjs +2 -0
- package/dist/chunks/zh-C6YALJZt.mjs.map +1 -0
- package/dist/chunks/zh-CWdTbUOP.mjs +2 -0
- package/dist/chunks/zh-CWdTbUOP.mjs.map +1 -0
- package/dist/chunks/zh-CY01pMD4.mjs +2 -0
- package/dist/chunks/zh-CY01pMD4.mjs.map +1 -0
- package/dist/chunks/zh-Cmt7n9FY.mjs +2 -0
- package/dist/chunks/zh-Cmt7n9FY.mjs.map +1 -0
- package/dist/chunks/zh-CpP2kee3.mjs +2 -0
- package/dist/chunks/zh-CpP2kee3.mjs.map +1 -0
- package/dist/chunks/zh-Cpbg4evx.mjs +2 -0
- package/dist/chunks/zh-Cpbg4evx.mjs.map +1 -0
- package/dist/chunks/zh-Cqb55JWa.mjs +2 -0
- package/dist/chunks/zh-Cqb55JWa.mjs.map +1 -0
- package/dist/chunks/zh-DCQZ6gss.mjs +2 -0
- package/dist/chunks/zh-DCQZ6gss.mjs.map +1 -0
- package/dist/chunks/zh-DG2CNTUU.mjs +2 -0
- package/dist/chunks/zh-DG2CNTUU.mjs.map +1 -0
- package/dist/chunks/zh-DTiTJbzz.mjs +2 -0
- package/dist/chunks/zh-DTiTJbzz.mjs.map +1 -0
- package/dist/chunks/zh-Da1z6qbB.mjs +2 -0
- package/dist/chunks/zh-Da1z6qbB.mjs.map +1 -0
- package/dist/chunks/zh-DlBt06Pr.mjs +2 -0
- package/dist/chunks/zh-DlBt06Pr.mjs.map +1 -0
- package/dist/chunks/zh-Dt-wVrNr.mjs +2 -0
- package/dist/chunks/zh-Dt-wVrNr.mjs.map +1 -0
- package/dist/chunks/zh-ND6vW2M-.mjs +2 -0
- package/dist/chunks/zh-ND6vW2M-.mjs.map +1 -0
- package/dist/chunks/zh-Yd3GNsa0.mjs +2 -0
- package/dist/chunks/zh-Yd3GNsa0.mjs.map +1 -0
- package/dist/chunks/zh-lhynyH6Q.mjs +2 -0
- package/dist/chunks/zh-lhynyH6Q.mjs.map +1 -0
- package/dist/chunks/zh-v9NmlEIN.mjs +2 -0
- package/dist/chunks/zh-v9NmlEIN.mjs.map +1 -0
- package/dist/commands/Commands.d.ts +9 -3
- package/dist/commands/Commands.d.ts.map +1 -1
- package/dist/commands/GapCursorCommands.d.ts.map +1 -1
- package/dist/commands/MarkCommands.d.ts +3 -3
- package/dist/commands/MarkCommands.d.ts.map +1 -1
- package/dist/commands/MovementCommands.d.ts +1 -4
- package/dist/commands/MovementCommands.d.ts.map +1 -1
- package/dist/commands/NodeSelectionCommands.d.ts +3 -1
- package/dist/commands/NodeSelectionCommands.d.ts.map +1 -1
- package/dist/commands/WordBoundary.d.ts +4 -9
- package/dist/commands/WordBoundary.d.ts.map +1 -1
- package/dist/editor/Announcer.d.ts +1 -2
- package/dist/editor/Announcer.d.ts.map +1 -1
- package/dist/{model → editor}/BuiltinSpecs.d.ts +1 -1
- package/dist/editor/BuiltinSpecs.d.ts.map +1 -0
- package/dist/editor/ContentSerializer.d.ts +24 -0
- package/dist/editor/ContentSerializer.d.ts.map +1 -0
- package/dist/editor/ContentStyleInjector.d.ts +69 -0
- package/dist/editor/ContentStyleInjector.d.ts.map +1 -0
- package/dist/editor/EditorConfigController.d.ts +38 -0
- package/dist/editor/EditorConfigController.d.ts.map +1 -0
- package/dist/editor/EditorDOM.d.ts +3 -4
- package/dist/editor/EditorDOM.d.ts.map +1 -1
- package/dist/editor/EditorEventEmitter.d.ts +30 -0
- package/dist/editor/EditorEventEmitter.d.ts.map +1 -0
- package/dist/editor/EditorLifecycleCoordinator.d.ts +24 -0
- package/dist/editor/EditorLifecycleCoordinator.d.ts.map +1 -0
- package/dist/editor/EditorLocale.d.ts +9 -0
- package/dist/editor/EditorLocale.d.ts.map +1 -0
- package/dist/editor/EditorStyleCoordinator.d.ts +9 -0
- package/dist/editor/EditorStyleCoordinator.d.ts.map +1 -0
- package/dist/editor/NotectlEditor.d.ts +24 -61
- package/dist/editor/NotectlEditor.d.ts.map +1 -1
- package/dist/editor/PaperLayoutController.d.ts +1 -1
- package/dist/editor/PaperLayoutController.d.ts.map +1 -1
- package/dist/editor/PluginBootstrapper.d.ts +18 -0
- package/dist/editor/PluginBootstrapper.d.ts.map +1 -0
- package/dist/editor/locales/ar.d.ts +4 -0
- package/dist/editor/locales/ar.d.ts.map +1 -0
- package/dist/editor/locales/de.d.ts +4 -0
- package/dist/editor/locales/de.d.ts.map +1 -0
- package/dist/editor/locales/es.d.ts +4 -0
- package/dist/editor/locales/es.d.ts.map +1 -0
- package/dist/editor/locales/fr.d.ts +4 -0
- package/dist/editor/locales/fr.d.ts.map +1 -0
- package/dist/editor/locales/hi.d.ts +4 -0
- package/dist/editor/locales/hi.d.ts.map +1 -0
- package/dist/editor/locales/pt.d.ts +4 -0
- package/dist/editor/locales/pt.d.ts.map +1 -0
- package/dist/editor/locales/ru.d.ts +4 -0
- package/dist/editor/locales/ru.d.ts.map +1 -0
- package/dist/editor/locales/zh.d.ts +4 -0
- package/dist/editor/locales/zh.d.ts.map +1 -0
- package/dist/editor/styles/base.d.ts +1 -1
- package/dist/editor/styles/base.d.ts.map +1 -1
- package/dist/editor/styles/code-block.d.ts +1 -1
- package/dist/editor/styles/code-block.d.ts.map +1 -1
- package/dist/editor/styles/font-select.d.ts +1 -1
- package/dist/editor/styles/font-select.d.ts.map +1 -1
- package/dist/editor/styles/font-size-select.d.ts +1 -1
- package/dist/editor/styles/font-size-select.d.ts.map +1 -1
- package/dist/editor/styles/heading-select.d.ts +1 -1
- package/dist/editor/styles/heading-select.d.ts.map +1 -1
- package/dist/editor/styles/image.d.ts +1 -1
- package/dist/editor/styles/image.d.ts.map +1 -1
- package/dist/editor/styles/list.d.ts +1 -1
- package/dist/editor/styles/list.d.ts.map +1 -1
- package/dist/editor/styles/table.d.ts +1 -1
- package/dist/editor/styles/table.d.ts.map +1 -1
- package/dist/editor/styles/toolbar.d.ts +1 -1
- package/dist/editor/styles/toolbar.d.ts.map +1 -1
- package/dist/fonts.mjs +1 -6
- package/dist/fonts.mjs.map +1 -1
- package/dist/full.d.ts +45 -0
- package/dist/full.d.ts.map +1 -0
- package/dist/full.mjs +2 -0
- package/dist/full.mjs.map +1 -0
- package/dist/html.d.ts +16 -0
- package/dist/html.d.ts.map +1 -0
- package/dist/html.mjs +2 -0
- package/dist/html.mjs.map +1 -0
- package/dist/i18n/Locale.d.ts +1 -0
- package/dist/i18n/Locale.d.ts.map +1 -1
- package/dist/i18n/index.d.ts +0 -1
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/index.d.ts +33 -100
- package/dist/index.d.ts.map +1 -1
- package/dist/input/BlockInsertion.d.ts +51 -0
- package/dist/input/BlockInsertion.d.ts.map +1 -0
- package/dist/input/ClipboardHandler.d.ts +22 -0
- package/dist/input/ClipboardHandler.d.ts.map +1 -1
- package/dist/input/CompositionTracker.d.ts +2 -1
- package/dist/input/CompositionTracker.d.ts.map +1 -1
- package/dist/{model → input}/HTMLParser.d.ts +3 -3
- package/dist/input/HTMLParser.d.ts.map +1 -0
- package/dist/input/InputHandler.d.ts +1 -1
- package/dist/input/InputHandler.d.ts.map +1 -1
- package/dist/input/InputManager.d.ts +35 -0
- package/dist/input/InputManager.d.ts.map +1 -0
- package/dist/input/InternalClipboard.d.ts +11 -1
- package/dist/input/InternalClipboard.d.ts.map +1 -1
- package/dist/input/KeyboardHandler.d.ts +12 -1
- package/dist/input/KeyboardHandler.d.ts.map +1 -1
- package/dist/input/PasteHandler.d.ts +21 -17
- package/dist/input/PasteHandler.d.ts.map +1 -1
- package/dist/model/AttrRegistry.d.ts +1 -1
- package/dist/model/AttrRegistry.d.ts.map +1 -1
- package/dist/model/BlockAlignment.d.ts +8 -0
- package/dist/model/BlockAlignment.d.ts.map +1 -0
- package/dist/model/BlockTypeLabels.d.ts +7 -0
- package/dist/model/BlockTypeLabels.d.ts.map +1 -0
- package/dist/model/CompositionState.d.ts +8 -0
- package/dist/model/CompositionState.d.ts.map +1 -0
- package/dist/model/Document.d.ts +0 -4
- package/dist/model/Document.d.ts.map +1 -1
- package/dist/{input → model}/FileHandlerRegistry.d.ts +1 -1
- package/dist/{input → model}/FileHandlerRegistry.d.ts.map +1 -1
- package/dist/model/HTMLUtils.d.ts +6 -0
- package/dist/model/HTMLUtils.d.ts.map +1 -1
- package/dist/{input → model}/InputRule.d.ts.map +1 -1
- package/dist/{input → model}/InputRuleRegistry.d.ts.map +1 -1
- package/dist/{input → model}/Keymap.d.ts.map +1 -1
- package/dist/{input → model}/KeymapRegistry.d.ts.map +1 -1
- package/dist/model/MarkSpec.d.ts +2 -2
- package/dist/model/MarkSpec.d.ts.map +1 -1
- package/dist/model/NodeSpec.d.ts +19 -5
- package/dist/model/NodeSpec.d.ts.map +1 -1
- package/dist/model/PaperSize.d.ts.map +1 -0
- package/dist/model/WordBoundary.d.ts +12 -0
- package/dist/model/WordBoundary.d.ts.map +1 -0
- package/dist/notectl-core.mjs +1 -3764
- package/dist/notectl-core.mjs.map +1 -1
- package/dist/notectl-core.umd.js +1 -9434
- package/dist/notectl-core.umd.js.map +1 -1
- package/dist/{view → platform}/Platform.d.ts +2 -0
- package/dist/platform/Platform.d.ts.map +1 -0
- package/dist/plugins/Plugin.d.ts +5 -5
- package/dist/plugins/Plugin.d.ts.map +1 -1
- package/dist/plugins/PluginManager.d.ts +3 -3
- package/dist/plugins/alignment/AlignmentLocale.d.ts +3 -10
- package/dist/plugins/alignment/AlignmentLocale.d.ts.map +1 -1
- package/dist/plugins/alignment/AlignmentPlugin.d.ts +3 -13
- package/dist/plugins/alignment/AlignmentPlugin.d.ts.map +1 -1
- package/dist/plugins/alignment/index.d.ts +3 -1
- package/dist/plugins/alignment/index.d.ts.map +1 -1
- package/dist/plugins/alignment/locales/ar.d.ts +4 -0
- package/dist/plugins/alignment/locales/ar.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/de.d.ts +4 -0
- package/dist/plugins/alignment/locales/de.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/es.d.ts +4 -0
- package/dist/plugins/alignment/locales/es.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/fr.d.ts +4 -0
- package/dist/plugins/alignment/locales/fr.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/hi.d.ts +4 -0
- package/dist/plugins/alignment/locales/hi.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/pt.d.ts +4 -0
- package/dist/plugins/alignment/locales/pt.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/ru.d.ts +4 -0
- package/dist/plugins/alignment/locales/ru.d.ts.map +1 -0
- package/dist/plugins/alignment/locales/zh.d.ts +4 -0
- package/dist/plugins/alignment/locales/zh.d.ts.map +1 -0
- package/dist/plugins/alignment.mjs +1 -5
- package/dist/plugins/alignment.mjs.map +1 -1
- package/dist/plugins/blockquote/BlockquoteKeyboardHandlers.d.ts +4 -0
- package/dist/plugins/blockquote/BlockquoteKeyboardHandlers.d.ts.map +1 -0
- package/dist/plugins/blockquote/BlockquoteLocale.d.ts +1 -8
- package/dist/plugins/blockquote/BlockquoteLocale.d.ts.map +1 -1
- package/dist/plugins/blockquote/BlockquotePlugin.d.ts +1 -3
- package/dist/plugins/blockquote/BlockquotePlugin.d.ts.map +1 -1
- package/dist/plugins/blockquote/BlockquoteStyles.d.ts +3 -0
- package/dist/plugins/blockquote/BlockquoteStyles.d.ts.map +1 -0
- package/dist/plugins/blockquote/index.d.ts +2 -0
- package/dist/plugins/blockquote/index.d.ts.map +1 -1
- package/dist/plugins/blockquote/locales/ar.d.ts +4 -0
- package/dist/plugins/blockquote/locales/ar.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/de.d.ts +4 -0
- package/dist/plugins/blockquote/locales/de.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/es.d.ts +4 -0
- package/dist/plugins/blockquote/locales/es.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/fr.d.ts +4 -0
- package/dist/plugins/blockquote/locales/fr.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/hi.d.ts +4 -0
- package/dist/plugins/blockquote/locales/hi.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/pt.d.ts +4 -0
- package/dist/plugins/blockquote/locales/pt.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/ru.d.ts +4 -0
- package/dist/plugins/blockquote/locales/ru.d.ts.map +1 -0
- package/dist/plugins/blockquote/locales/zh.d.ts +4 -0
- package/dist/plugins/blockquote/locales/zh.d.ts.map +1 -0
- package/dist/plugins/blockquote.mjs +1 -4
- package/dist/plugins/blockquote.mjs.map +1 -1
- package/dist/plugins/caret-navigation/CaretNavigationLocale.d.ts +21 -0
- package/dist/plugins/caret-navigation/CaretNavigationLocale.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/CaretNavigationPlugin.d.ts +2 -1
- package/dist/plugins/caret-navigation/CaretNavigationPlugin.d.ts.map +1 -1
- package/dist/plugins/caret-navigation/index.d.ts +2 -0
- package/dist/plugins/caret-navigation/index.d.ts.map +1 -1
- package/dist/plugins/caret-navigation/locales/ar.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/ar.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/de.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/de.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/es.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/es.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/fr.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/fr.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/hi.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/hi.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/pt.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/pt.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/ru.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/ru.d.ts.map +1 -0
- package/dist/plugins/caret-navigation/locales/zh.d.ts +4 -0
- package/dist/plugins/caret-navigation/locales/zh.d.ts.map +1 -0
- package/dist/plugins/caret-navigation.mjs +1 -4
- package/dist/plugins/caret-navigation.mjs.map +1 -1
- package/dist/plugins/code-block/CodeBlockLocale.d.ts +5 -8
- package/dist/plugins/code-block/CodeBlockLocale.d.ts.map +1 -1
- package/dist/plugins/code-block/CodeBlockNodeView.d.ts +2 -1
- package/dist/plugins/code-block/CodeBlockNodeView.d.ts.map +1 -1
- package/dist/plugins/code-block/CodeBlockPlugin.d.ts +2 -3
- package/dist/plugins/code-block/CodeBlockPlugin.d.ts.map +1 -1
- package/dist/plugins/code-block/CodeBlockService.d.ts.map +1 -1
- package/dist/plugins/code-block/CodeBlockTypes.d.ts +0 -1
- package/dist/plugins/code-block/CodeBlockTypes.d.ts.map +1 -1
- package/dist/plugins/code-block/index.d.ts +4 -1
- package/dist/plugins/code-block/index.d.ts.map +1 -1
- package/dist/plugins/code-block/locales/ar.d.ts +4 -0
- package/dist/plugins/code-block/locales/ar.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/de.d.ts +4 -0
- package/dist/plugins/code-block/locales/de.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/es.d.ts +4 -0
- package/dist/plugins/code-block/locales/es.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/fr.d.ts +4 -0
- package/dist/plugins/code-block/locales/fr.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/hi.d.ts +4 -0
- package/dist/plugins/code-block/locales/hi.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/pt.d.ts +4 -0
- package/dist/plugins/code-block/locales/pt.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/ru.d.ts +4 -0
- package/dist/plugins/code-block/locales/ru.d.ts.map +1 -0
- package/dist/plugins/code-block/locales/zh.d.ts +4 -0
- package/dist/plugins/code-block/locales/zh.d.ts.map +1 -0
- package/dist/plugins/code-block.mjs +1 -5
- package/dist/plugins/code-block.mjs.map +1 -1
- package/dist/plugins/font/FontLocale.d.ts +1 -8
- package/dist/plugins/font/FontLocale.d.ts.map +1 -1
- package/dist/plugins/font/FontPlugin.d.ts +1 -4
- package/dist/plugins/font/FontPlugin.d.ts.map +1 -1
- package/dist/plugins/font/index.d.ts +2 -0
- package/dist/plugins/font/index.d.ts.map +1 -1
- package/dist/plugins/font/locales/ar.d.ts +4 -0
- package/dist/plugins/font/locales/ar.d.ts.map +1 -0
- package/dist/plugins/font/locales/de.d.ts +4 -0
- package/dist/plugins/font/locales/de.d.ts.map +1 -0
- package/dist/plugins/font/locales/es.d.ts +4 -0
- package/dist/plugins/font/locales/es.d.ts.map +1 -0
- package/dist/plugins/font/locales/fr.d.ts +4 -0
- package/dist/plugins/font/locales/fr.d.ts.map +1 -0
- package/dist/plugins/font/locales/hi.d.ts +4 -0
- package/dist/plugins/font/locales/hi.d.ts.map +1 -0
- package/dist/plugins/font/locales/pt.d.ts +4 -0
- package/dist/plugins/font/locales/pt.d.ts.map +1 -0
- package/dist/plugins/font/locales/ru.d.ts +4 -0
- package/dist/plugins/font/locales/ru.d.ts.map +1 -0
- package/dist/plugins/font/locales/zh.d.ts +4 -0
- package/dist/plugins/font/locales/zh.d.ts.map +1 -0
- package/dist/plugins/font-size/FontSizeLocale.d.ts +1 -8
- package/dist/plugins/font-size/FontSizeLocale.d.ts.map +1 -1
- package/dist/plugins/font-size/FontSizePlugin.d.ts +1 -5
- package/dist/plugins/font-size/FontSizePlugin.d.ts.map +1 -1
- package/dist/plugins/font-size/FontSizePopup.d.ts +4 -2
- package/dist/plugins/font-size/FontSizePopup.d.ts.map +1 -1
- package/dist/plugins/font-size/index.d.ts +2 -0
- package/dist/plugins/font-size/index.d.ts.map +1 -1
- package/dist/plugins/font-size/locales/ar.d.ts +4 -0
- package/dist/plugins/font-size/locales/ar.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/de.d.ts +4 -0
- package/dist/plugins/font-size/locales/de.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/es.d.ts +4 -0
- package/dist/plugins/font-size/locales/es.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/fr.d.ts +4 -0
- package/dist/plugins/font-size/locales/fr.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/hi.d.ts +4 -0
- package/dist/plugins/font-size/locales/hi.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/pt.d.ts +4 -0
- package/dist/plugins/font-size/locales/pt.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/ru.d.ts +4 -0
- package/dist/plugins/font-size/locales/ru.d.ts.map +1 -0
- package/dist/plugins/font-size/locales/zh.d.ts +4 -0
- package/dist/plugins/font-size/locales/zh.d.ts.map +1 -0
- package/dist/plugins/font-size.mjs +1 -4
- package/dist/plugins/font-size.mjs.map +1 -1
- package/dist/plugins/font.mjs +1 -4
- package/dist/plugins/font.mjs.map +1 -1
- package/dist/plugins/gap-cursor/GapCursorLocale.d.ts +7 -0
- package/dist/plugins/gap-cursor/GapCursorLocale.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/GapCursorPlugin.d.ts +7 -3
- package/dist/plugins/gap-cursor/GapCursorPlugin.d.ts.map +1 -1
- package/dist/plugins/gap-cursor/locales/ar.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/ar.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/de.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/de.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/es.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/es.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/fr.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/fr.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/hi.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/hi.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/pt.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/pt.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/ru.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/ru.d.ts.map +1 -0
- package/dist/plugins/gap-cursor/locales/zh.d.ts +4 -0
- package/dist/plugins/gap-cursor/locales/zh.d.ts.map +1 -0
- package/dist/plugins/gap-cursor.mjs +1 -64
- package/dist/plugins/gap-cursor.mjs.map +1 -1
- package/dist/plugins/hard-break.mjs +1 -4
- package/dist/plugins/hard-break.mjs.map +1 -1
- package/dist/plugins/heading/HeadingBlockTypePicker.d.ts +1 -1
- package/dist/plugins/heading/HeadingBlockTypePicker.d.ts.map +1 -1
- package/dist/plugins/heading/HeadingLocale.d.ts +1 -8
- package/dist/plugins/heading/HeadingLocale.d.ts.map +1 -1
- package/dist/plugins/heading/HeadingPlugin.d.ts +2 -4
- package/dist/plugins/heading/HeadingPlugin.d.ts.map +1 -1
- package/dist/plugins/heading/index.d.ts +3 -0
- package/dist/plugins/heading/index.d.ts.map +1 -1
- package/dist/plugins/heading/locales/ar.d.ts +4 -0
- package/dist/plugins/heading/locales/ar.d.ts.map +1 -0
- package/dist/plugins/heading/locales/de.d.ts +4 -0
- package/dist/plugins/heading/locales/de.d.ts.map +1 -0
- package/dist/plugins/heading/locales/es.d.ts +4 -0
- package/dist/plugins/heading/locales/es.d.ts.map +1 -0
- package/dist/plugins/heading/locales/fr.d.ts +4 -0
- package/dist/plugins/heading/locales/fr.d.ts.map +1 -0
- package/dist/plugins/heading/locales/hi.d.ts +4 -0
- package/dist/plugins/heading/locales/hi.d.ts.map +1 -0
- package/dist/plugins/heading/locales/pt.d.ts +4 -0
- package/dist/plugins/heading/locales/pt.d.ts.map +1 -0
- package/dist/plugins/heading/locales/ru.d.ts +4 -0
- package/dist/plugins/heading/locales/ru.d.ts.map +1 -0
- package/dist/plugins/heading/locales/zh.d.ts +4 -0
- package/dist/plugins/heading/locales/zh.d.ts.map +1 -0
- package/dist/plugins/heading.mjs +1 -4
- package/dist/plugins/heading.mjs.map +1 -1
- package/dist/plugins/highlight/HighlightLocale.d.ts +1 -8
- package/dist/plugins/highlight/HighlightLocale.d.ts.map +1 -1
- package/dist/plugins/highlight/HighlightPlugin.d.ts +1 -3
- package/dist/plugins/highlight/HighlightPlugin.d.ts.map +1 -1
- package/dist/plugins/highlight/index.d.ts +2 -0
- package/dist/plugins/highlight/index.d.ts.map +1 -1
- package/dist/plugins/highlight/locales/ar.d.ts +4 -0
- package/dist/plugins/highlight/locales/ar.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/de.d.ts +4 -0
- package/dist/plugins/highlight/locales/de.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/es.d.ts +4 -0
- package/dist/plugins/highlight/locales/es.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/fr.d.ts +4 -0
- package/dist/plugins/highlight/locales/fr.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/hi.d.ts +4 -0
- package/dist/plugins/highlight/locales/hi.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/pt.d.ts +4 -0
- package/dist/plugins/highlight/locales/pt.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/ru.d.ts +4 -0
- package/dist/plugins/highlight/locales/ru.d.ts.map +1 -0
- package/dist/plugins/highlight/locales/zh.d.ts +4 -0
- package/dist/plugins/highlight/locales/zh.d.ts.map +1 -0
- package/dist/plugins/highlight.mjs +1 -4
- package/dist/plugins/highlight.mjs.map +1 -1
- package/dist/plugins/horizontal-rule/HorizontalRuleLocale.d.ts +1 -8
- package/dist/plugins/horizontal-rule/HorizontalRuleLocale.d.ts.map +1 -1
- package/dist/plugins/horizontal-rule/HorizontalRulePlugin.d.ts +1 -3
- package/dist/plugins/horizontal-rule/HorizontalRulePlugin.d.ts.map +1 -1
- package/dist/plugins/horizontal-rule/index.d.ts +2 -0
- package/dist/plugins/horizontal-rule/index.d.ts.map +1 -1
- package/dist/plugins/horizontal-rule/locales/ar.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/ar.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/de.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/de.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/es.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/es.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/fr.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/fr.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/hi.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/hi.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/pt.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/pt.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/ru.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/ru.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule/locales/zh.d.ts +4 -0
- package/dist/plugins/horizontal-rule/locales/zh.d.ts.map +1 -0
- package/dist/plugins/horizontal-rule.mjs +1 -4
- package/dist/plugins/horizontal-rule.mjs.map +1 -1
- package/dist/plugins/image/ImageLocale.d.ts +9 -8
- package/dist/plugins/image/ImageLocale.d.ts.map +1 -1
- package/dist/plugins/image/ImageNodeView.d.ts +8 -1
- package/dist/plugins/image/ImageNodeView.d.ts.map +1 -1
- package/dist/plugins/image/ImagePlugin.d.ts +2 -2
- package/dist/plugins/image/ImagePlugin.d.ts.map +1 -1
- package/dist/plugins/image/ImageUpload.d.ts +1 -2
- package/dist/plugins/image/ImageUpload.d.ts.map +1 -1
- package/dist/plugins/image/index.d.ts +2 -0
- package/dist/plugins/image/index.d.ts.map +1 -1
- package/dist/plugins/image/locales/ar.d.ts +4 -0
- package/dist/plugins/image/locales/ar.d.ts.map +1 -0
- package/dist/plugins/image/locales/de.d.ts +4 -0
- package/dist/plugins/image/locales/de.d.ts.map +1 -0
- package/dist/plugins/image/locales/es.d.ts +4 -0
- package/dist/plugins/image/locales/es.d.ts.map +1 -0
- package/dist/plugins/image/locales/fr.d.ts +4 -0
- package/dist/plugins/image/locales/fr.d.ts.map +1 -0
- package/dist/plugins/image/locales/hi.d.ts +4 -0
- package/dist/plugins/image/locales/hi.d.ts.map +1 -0
- package/dist/plugins/image/locales/pt.d.ts +4 -0
- package/dist/plugins/image/locales/pt.d.ts.map +1 -0
- package/dist/plugins/image/locales/ru.d.ts +4 -0
- package/dist/plugins/image/locales/ru.d.ts.map +1 -0
- package/dist/plugins/image/locales/zh.d.ts +4 -0
- package/dist/plugins/image/locales/zh.d.ts.map +1 -0
- package/dist/plugins/image.mjs +1 -6
- package/dist/plugins/image.mjs.map +1 -1
- package/dist/plugins/link/LinkLocale.d.ts +1 -8
- package/dist/plugins/link/LinkLocale.d.ts.map +1 -1
- package/dist/plugins/link/LinkPlugin.d.ts +1 -3
- package/dist/plugins/link/LinkPlugin.d.ts.map +1 -1
- package/dist/plugins/link/index.d.ts +2 -0
- package/dist/plugins/link/index.d.ts.map +1 -1
- package/dist/plugins/link/locales/ar.d.ts +4 -0
- package/dist/plugins/link/locales/ar.d.ts.map +1 -0
- package/dist/plugins/link/locales/de.d.ts +4 -0
- package/dist/plugins/link/locales/de.d.ts.map +1 -0
- package/dist/plugins/link/locales/es.d.ts +4 -0
- package/dist/plugins/link/locales/es.d.ts.map +1 -0
- package/dist/plugins/link/locales/fr.d.ts +4 -0
- package/dist/plugins/link/locales/fr.d.ts.map +1 -0
- package/dist/plugins/link/locales/hi.d.ts +4 -0
- package/dist/plugins/link/locales/hi.d.ts.map +1 -0
- package/dist/plugins/link/locales/pt.d.ts +4 -0
- package/dist/plugins/link/locales/pt.d.ts.map +1 -0
- package/dist/plugins/link/locales/ru.d.ts +4 -0
- package/dist/plugins/link/locales/ru.d.ts.map +1 -0
- package/dist/plugins/link/locales/zh.d.ts +4 -0
- package/dist/plugins/link/locales/zh.d.ts.map +1 -0
- package/dist/plugins/link.mjs +1 -4
- package/dist/plugins/link.mjs.map +1 -1
- package/dist/plugins/list/ListLocale.d.ts +1 -8
- package/dist/plugins/list/ListLocale.d.ts.map +1 -1
- package/dist/plugins/list/ListPlugin.d.ts +1 -3
- package/dist/plugins/list/ListPlugin.d.ts.map +1 -1
- package/dist/plugins/list/index.d.ts +2 -0
- package/dist/plugins/list/index.d.ts.map +1 -1
- package/dist/plugins/list/locales/ar.d.ts +4 -0
- package/dist/plugins/list/locales/ar.d.ts.map +1 -0
- package/dist/plugins/list/locales/de.d.ts +4 -0
- package/dist/plugins/list/locales/de.d.ts.map +1 -0
- package/dist/plugins/list/locales/es.d.ts +4 -0
- package/dist/plugins/list/locales/es.d.ts.map +1 -0
- package/dist/plugins/list/locales/fr.d.ts +4 -0
- package/dist/plugins/list/locales/fr.d.ts.map +1 -0
- package/dist/plugins/list/locales/hi.d.ts +4 -0
- package/dist/plugins/list/locales/hi.d.ts.map +1 -0
- package/dist/plugins/list/locales/pt.d.ts +4 -0
- package/dist/plugins/list/locales/pt.d.ts.map +1 -0
- package/dist/plugins/list/locales/ru.d.ts +4 -0
- package/dist/plugins/list/locales/ru.d.ts.map +1 -0
- package/dist/plugins/list/locales/zh.d.ts +4 -0
- package/dist/plugins/list/locales/zh.d.ts.map +1 -0
- package/dist/plugins/list.mjs +1 -4
- package/dist/plugins/list.mjs.map +1 -1
- package/dist/plugins/print/PrintLocale.d.ts +1 -8
- package/dist/plugins/print/PrintLocale.d.ts.map +1 -1
- package/dist/plugins/print/PrintPlugin.d.ts +1 -1
- package/dist/plugins/print/PrintPlugin.d.ts.map +1 -1
- package/dist/plugins/print/PrintServiceImpl.d.ts.map +1 -1
- package/dist/plugins/print/PrintStyleCollector.d.ts.map +1 -1
- package/dist/plugins/print/PrintTypes.d.ts +1 -1
- package/dist/plugins/print/PrintTypes.d.ts.map +1 -1
- package/dist/plugins/print/index.d.ts +5 -0
- package/dist/plugins/print/index.d.ts.map +1 -0
- package/dist/plugins/print/locales/ar.d.ts +4 -0
- package/dist/plugins/print/locales/ar.d.ts.map +1 -0
- package/dist/plugins/print/locales/de.d.ts +4 -0
- package/dist/plugins/print/locales/de.d.ts.map +1 -0
- package/dist/plugins/print/locales/es.d.ts +4 -0
- package/dist/plugins/print/locales/es.d.ts.map +1 -0
- package/dist/plugins/print/locales/fr.d.ts +4 -0
- package/dist/plugins/print/locales/fr.d.ts.map +1 -0
- package/dist/plugins/print/locales/hi.d.ts +4 -0
- package/dist/plugins/print/locales/hi.d.ts.map +1 -0
- package/dist/plugins/print/locales/pt.d.ts +4 -0
- package/dist/plugins/print/locales/pt.d.ts.map +1 -0
- package/dist/plugins/print/locales/ru.d.ts +4 -0
- package/dist/plugins/print/locales/ru.d.ts.map +1 -0
- package/dist/plugins/print/locales/zh.d.ts +4 -0
- package/dist/plugins/print/locales/zh.d.ts.map +1 -0
- package/dist/plugins/print.mjs +2 -0
- package/dist/plugins/print.mjs.map +1 -0
- package/dist/plugins/shared/ColorGrid.d.ts.map +1 -1
- package/dist/plugins/shared/ColorPickerPopup.d.ts +2 -1
- package/dist/plugins/shared/ColorPickerPopup.d.ts.map +1 -1
- package/dist/plugins/shared/KeyboardNav.d.ts +17 -0
- package/dist/plugins/shared/KeyboardNav.d.ts.map +1 -0
- package/dist/plugins/shared/PluginHelpers.d.ts +10 -0
- package/dist/plugins/shared/PluginHelpers.d.ts.map +1 -0
- package/dist/plugins/shared/PopupKeyboardPatterns.d.ts +1 -1
- package/dist/plugins/shared/PopupKeyboardPatterns.d.ts.map +1 -1
- package/dist/plugins/shared/PopupManager.d.ts +14 -2
- package/dist/plugins/shared/PopupManager.d.ts.map +1 -1
- package/dist/plugins/shared/PopupPositioning.d.ts +1 -0
- package/dist/plugins/shared/PopupPositioning.d.ts.map +1 -1
- package/dist/plugins/shared/ShortcutFormatting.d.ts +9 -0
- package/dist/plugins/shared/ShortcutFormatting.d.ts.map +1 -0
- package/dist/plugins/shared/index.d.ts +12 -0
- package/dist/plugins/shared/index.d.ts.map +1 -0
- package/dist/plugins/shared.mjs +2 -0
- package/dist/plugins/shared.mjs.map +1 -0
- package/dist/plugins/strikethrough/StrikethroughLocale.d.ts +1 -8
- package/dist/plugins/strikethrough/StrikethroughLocale.d.ts.map +1 -1
- package/dist/plugins/strikethrough/StrikethroughPlugin.d.ts +1 -3
- package/dist/plugins/strikethrough/StrikethroughPlugin.d.ts.map +1 -1
- package/dist/plugins/strikethrough/index.d.ts +2 -0
- package/dist/plugins/strikethrough/index.d.ts.map +1 -1
- package/dist/plugins/strikethrough/locales/ar.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/ar.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/de.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/de.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/es.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/es.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/fr.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/fr.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/hi.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/hi.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/pt.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/pt.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/ru.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/ru.d.ts.map +1 -0
- package/dist/plugins/strikethrough/locales/zh.d.ts +4 -0
- package/dist/plugins/strikethrough/locales/zh.d.ts.map +1 -0
- package/dist/plugins/strikethrough.mjs +1 -4
- package/dist/plugins/strikethrough.mjs.map +1 -1
- package/dist/plugins/super-sub/SuperSubLocale.d.ts +1 -8
- package/dist/plugins/super-sub/SuperSubLocale.d.ts.map +1 -1
- package/dist/plugins/super-sub/SuperSubPlugin.d.ts +1 -3
- package/dist/plugins/super-sub/SuperSubPlugin.d.ts.map +1 -1
- package/dist/plugins/super-sub/index.d.ts +2 -0
- package/dist/plugins/super-sub/index.d.ts.map +1 -1
- package/dist/plugins/super-sub/locales/ar.d.ts +4 -0
- package/dist/plugins/super-sub/locales/ar.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/de.d.ts +4 -0
- package/dist/plugins/super-sub/locales/de.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/es.d.ts +4 -0
- package/dist/plugins/super-sub/locales/es.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/fr.d.ts +4 -0
- package/dist/plugins/super-sub/locales/fr.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/hi.d.ts +4 -0
- package/dist/plugins/super-sub/locales/hi.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/pt.d.ts +4 -0
- package/dist/plugins/super-sub/locales/pt.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/ru.d.ts +4 -0
- package/dist/plugins/super-sub/locales/ru.d.ts.map +1 -0
- package/dist/plugins/super-sub/locales/zh.d.ts +4 -0
- package/dist/plugins/super-sub/locales/zh.d.ts.map +1 -0
- package/dist/plugins/super-sub.mjs +1 -4
- package/dist/plugins/super-sub.mjs.map +1 -1
- package/dist/plugins/table/TableCommands.d.ts +8 -8
- package/dist/plugins/table/TableCommands.d.ts.map +1 -1
- package/dist/plugins/table/TableContextMenu.d.ts.map +1 -1
- package/dist/plugins/table/TableControlsDOM.d.ts +4 -4
- package/dist/plugins/table/TableControlsDOM.d.ts.map +1 -1
- package/dist/plugins/table/TableLocale.d.ts +1 -8
- package/dist/plugins/table/TableLocale.d.ts.map +1 -1
- package/dist/plugins/table/TableNavigation.d.ts +1 -1
- package/dist/plugins/table/TableNavigation.d.ts.map +1 -1
- package/dist/plugins/table/TablePlugin.d.ts +3 -5
- package/dist/plugins/table/TablePlugin.d.ts.map +1 -1
- package/dist/plugins/table/TableSelection.d.ts +2 -0
- package/dist/plugins/table/TableSelection.d.ts.map +1 -1
- package/dist/plugins/table/index.d.ts +0 -5
- package/dist/plugins/table/index.d.ts.map +1 -1
- package/dist/plugins/table/locales/ar.d.ts +4 -0
- package/dist/plugins/table/locales/ar.d.ts.map +1 -0
- package/dist/plugins/table/locales/de.d.ts +4 -0
- package/dist/plugins/table/locales/de.d.ts.map +1 -0
- package/dist/plugins/table/locales/es.d.ts +4 -0
- package/dist/plugins/table/locales/es.d.ts.map +1 -0
- package/dist/plugins/table/locales/fr.d.ts +4 -0
- package/dist/plugins/table/locales/fr.d.ts.map +1 -0
- package/dist/plugins/table/locales/hi.d.ts +4 -0
- package/dist/plugins/table/locales/hi.d.ts.map +1 -0
- package/dist/plugins/table/locales/pt.d.ts +4 -0
- package/dist/plugins/table/locales/pt.d.ts.map +1 -0
- package/dist/plugins/table/locales/ru.d.ts +4 -0
- package/dist/plugins/table/locales/ru.d.ts.map +1 -0
- package/dist/plugins/table/locales/zh.d.ts +4 -0
- package/dist/plugins/table/locales/zh.d.ts.map +1 -0
- package/dist/plugins/table.mjs +1 -20
- package/dist/plugins/table.mjs.map +1 -1
- package/dist/plugins/text-color/TextColorLocale.d.ts +1 -8
- package/dist/plugins/text-color/TextColorLocale.d.ts.map +1 -1
- package/dist/plugins/text-color/TextColorPlugin.d.ts +1 -3
- package/dist/plugins/text-color/TextColorPlugin.d.ts.map +1 -1
- package/dist/plugins/text-color/index.d.ts +2 -0
- package/dist/plugins/text-color/index.d.ts.map +1 -1
- package/dist/plugins/text-color/locales/ar.d.ts +4 -0
- package/dist/plugins/text-color/locales/ar.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/de.d.ts +4 -0
- package/dist/plugins/text-color/locales/de.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/es.d.ts +4 -0
- package/dist/plugins/text-color/locales/es.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/fr.d.ts +4 -0
- package/dist/plugins/text-color/locales/fr.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/hi.d.ts +4 -0
- package/dist/plugins/text-color/locales/hi.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/pt.d.ts +4 -0
- package/dist/plugins/text-color/locales/pt.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/ru.d.ts +4 -0
- package/dist/plugins/text-color/locales/ru.d.ts.map +1 -0
- package/dist/plugins/text-color/locales/zh.d.ts +4 -0
- package/dist/plugins/text-color/locales/zh.d.ts.map +1 -0
- package/dist/plugins/text-color.mjs +1 -4
- package/dist/plugins/text-color.mjs.map +1 -1
- package/dist/plugins/text-direction/DirectionDetection.d.ts +17 -0
- package/dist/plugins/text-direction/DirectionDetection.d.ts.map +1 -0
- package/dist/plugins/text-direction/ShiftDirectionHandler.d.ts +12 -0
- package/dist/plugins/text-direction/ShiftDirectionHandler.d.ts.map +1 -0
- package/dist/plugins/text-direction/TextDirectionCorePlugin.d.ts +35 -0
- package/dist/plugins/text-direction/TextDirectionCorePlugin.d.ts.map +1 -0
- package/dist/plugins/text-direction/TextDirectionLocale.d.ts +20 -0
- package/dist/plugins/text-direction/TextDirectionLocale.d.ts.map +1 -0
- package/dist/plugins/text-direction/TextDirectionMiddleware.d.ts +18 -0
- package/dist/plugins/text-direction/TextDirectionMiddleware.d.ts.map +1 -0
- package/dist/plugins/text-direction/TextDirectionPlugin.d.ts +59 -0
- package/dist/plugins/text-direction/TextDirectionPlugin.d.ts.map +1 -0
- package/dist/plugins/text-direction/index.d.ts +5 -0
- package/dist/plugins/text-direction/index.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/ar.d.ts +4 -0
- package/dist/plugins/text-direction/locales/ar.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/de.d.ts +4 -0
- package/dist/plugins/text-direction/locales/de.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/es.d.ts +4 -0
- package/dist/plugins/text-direction/locales/es.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/fr.d.ts +4 -0
- package/dist/plugins/text-direction/locales/fr.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/hi.d.ts +4 -0
- package/dist/plugins/text-direction/locales/hi.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/pt.d.ts +4 -0
- package/dist/plugins/text-direction/locales/pt.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/ru.d.ts +4 -0
- package/dist/plugins/text-direction/locales/ru.d.ts.map +1 -0
- package/dist/plugins/text-direction/locales/zh.d.ts +4 -0
- package/dist/plugins/text-direction/locales/zh.d.ts.map +1 -0
- package/dist/plugins/text-direction-advanced/index.d.ts +5 -0
- package/dist/plugins/text-direction-advanced/index.d.ts.map +1 -0
- package/dist/plugins/text-direction-advanced.mjs +2 -0
- package/dist/plugins/text-direction-advanced.mjs.map +1 -0
- package/dist/plugins/text-direction.mjs +2 -0
- package/dist/plugins/text-direction.mjs.map +1 -0
- package/dist/plugins/text-formatting/TextFormattingLocale.d.ts +1 -8
- package/dist/plugins/text-formatting/TextFormattingLocale.d.ts.map +1 -1
- package/dist/plugins/text-formatting/TextFormattingPlugin.d.ts +1 -3
- package/dist/plugins/text-formatting/TextFormattingPlugin.d.ts.map +1 -1
- package/dist/plugins/text-formatting/index.d.ts +2 -0
- package/dist/plugins/text-formatting/index.d.ts.map +1 -1
- package/dist/plugins/text-formatting/locales/ar.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/ar.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/de.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/de.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/es.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/es.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/fr.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/fr.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/hi.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/hi.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/pt.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/pt.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/ru.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/ru.d.ts.map +1 -0
- package/dist/plugins/text-formatting/locales/zh.d.ts +4 -0
- package/dist/plugins/text-formatting/locales/zh.d.ts.map +1 -0
- package/dist/plugins/text-formatting.mjs +1 -4
- package/dist/plugins/text-formatting.mjs.map +1 -1
- package/dist/plugins/toolbar/ToolbarItem.d.ts +5 -20
- package/dist/plugins/toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarKeyboardNav.d.ts +5 -11
- package/dist/plugins/toolbar/ToolbarKeyboardNav.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarLocale.d.ts +2 -8
- package/dist/plugins/toolbar/ToolbarLocale.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarOverflowController.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarPlugin.d.ts +2 -2
- package/dist/plugins/toolbar/ToolbarPlugin.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarPopupController.d.ts +3 -4
- package/dist/plugins/toolbar/ToolbarPopupController.d.ts.map +1 -1
- package/dist/plugins/toolbar/ToolbarRenderers.d.ts +2 -1
- package/dist/plugins/toolbar/ToolbarRenderers.d.ts.map +1 -1
- package/dist/plugins/toolbar/index.d.ts +4 -1
- package/dist/plugins/toolbar/index.d.ts.map +1 -1
- package/dist/plugins/toolbar/locales/ar.d.ts +4 -0
- package/dist/plugins/toolbar/locales/ar.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/de.d.ts +4 -0
- package/dist/plugins/toolbar/locales/de.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/es.d.ts +4 -0
- package/dist/plugins/toolbar/locales/es.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/fr.d.ts +4 -0
- package/dist/plugins/toolbar/locales/fr.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/hi.d.ts +4 -0
- package/dist/plugins/toolbar/locales/hi.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/pt.d.ts +4 -0
- package/dist/plugins/toolbar/locales/pt.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/ru.d.ts +4 -0
- package/dist/plugins/toolbar/locales/ru.d.ts.map +1 -0
- package/dist/plugins/toolbar/locales/zh.d.ts +4 -0
- package/dist/plugins/toolbar/locales/zh.d.ts.map +1 -0
- package/dist/plugins/toolbar.mjs +1 -7
- package/dist/plugins/toolbar.mjs.map +1 -1
- package/dist/presets/FullPreset.d.ts +4 -1
- package/dist/presets/FullPreset.d.ts.map +1 -1
- package/dist/presets/MinimalPreset.d.ts +3 -0
- package/dist/presets/MinimalPreset.d.ts.map +1 -1
- package/dist/presets/PresetTypes.d.ts +3 -1
- package/dist/presets/PresetTypes.d.ts.map +1 -1
- package/dist/presets/full.d.ts +17 -0
- package/dist/presets/full.d.ts.map +1 -0
- package/dist/presets/full.mjs +2 -0
- package/dist/presets/full.mjs.map +1 -0
- package/dist/presets/minimal.d.ts +17 -0
- package/dist/presets/minimal.d.ts.map +1 -0
- package/dist/presets/minimal.mjs +2 -0
- package/dist/presets/minimal.mjs.map +1 -0
- package/dist/presets.d.ts +20 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.mjs +2 -0
- package/dist/presets.mjs.map +1 -0
- package/dist/serialization/CSSClassCollector.d.ts +36 -0
- package/dist/serialization/CSSClassCollector.d.ts.map +1 -0
- package/dist/serialization/ContentHTMLTypes.d.ts +29 -0
- package/dist/serialization/ContentHTMLTypes.d.ts.map +1 -0
- package/dist/serialization/DocumentParser.d.ts +13 -0
- package/dist/serialization/DocumentParser.d.ts.map +1 -0
- package/dist/serialization/DocumentSerializer.d.ts +15 -0
- package/dist/serialization/DocumentSerializer.d.ts.map +1 -0
- package/dist/serialization/MarkSerializer.d.ts +19 -0
- package/dist/serialization/MarkSerializer.d.ts.map +1 -0
- package/dist/serialization/index.d.ts +12 -0
- package/dist/serialization/index.d.ts.map +1 -0
- package/dist/state/BlockBoundaryMovement.d.ts +7 -0
- package/dist/state/BlockBoundaryMovement.d.ts.map +1 -0
- package/dist/{model/NavigationUtils.d.ts → state/NavigationQueries.d.ts} +3 -3
- package/dist/state/NavigationQueries.d.ts.map +1 -0
- package/dist/style/StyleRuntime.d.ts +3 -7
- package/dist/style/StyleRuntime.d.ts.map +1 -1
- package/dist/test/PluginTestUtils.d.ts +0 -2
- package/dist/test/PluginTestUtils.d.ts.map +1 -1
- package/dist/test/TestUtils.d.ts +2 -2
- package/dist/test/TestUtils.d.ts.map +1 -1
- package/dist/view/BlockRendering.d.ts +10 -0
- package/dist/view/BlockRendering.d.ts.map +1 -0
- package/dist/view/BlockWrapperManagement.d.ts +27 -0
- package/dist/view/BlockWrapperManagement.d.ts.map +1 -0
- package/dist/view/CaretNavigation.d.ts +1 -8
- package/dist/view/CaretNavigation.d.ts.map +1 -1
- package/dist/view/CursorWrapper.d.ts.map +1 -1
- package/dist/view/DecorationRendering.d.ts +17 -0
- package/dist/view/DecorationRendering.d.ts.map +1 -0
- package/dist/view/DomUtils.d.ts +4 -0
- package/dist/view/DomUtils.d.ts.map +1 -0
- package/dist/view/EditorView.d.ts +7 -10
- package/dist/view/EditorView.d.ts.map +1 -1
- package/dist/view/GapCursorNavigation.d.ts +12 -0
- package/dist/view/GapCursorNavigation.d.ts.map +1 -0
- package/dist/view/InlineRendering.d.ts +11 -0
- package/dist/view/InlineRendering.d.ts.map +1 -0
- package/dist/view/MarkRendering.d.ts +5 -0
- package/dist/view/MarkRendering.d.ts.map +1 -1
- package/dist/view/Reconciler.d.ts +2 -6
- package/dist/view/Reconciler.d.ts.map +1 -1
- package/dist/view/SelectionSync.d.ts +41 -2
- package/dist/view/SelectionSync.d.ts.map +1 -1
- package/dist/view/ViewMovementCommands.d.ts.map +1 -1
- package/package.json +208 -8
- package/dist/chunks/AttrRegistry-D9Jx_RVb.mjs +0 -16
- package/dist/chunks/AttrRegistry-D9Jx_RVb.mjs.map +0 -1
- package/dist/chunks/AttributedMarkCommands-BtLea72z.mjs +0 -80
- package/dist/chunks/CaretNavigation-7JYpIKbs.mjs +0 -311
- package/dist/chunks/CaretNavigation-7JYpIKbs.mjs.map +0 -1
- package/dist/chunks/ColorGrid-Dneqb8if.mjs +0 -81
- package/dist/chunks/ColorGrid-Dneqb8if.mjs.map +0 -1
- package/dist/chunks/ColorPickerPopup-CiCLBbe9.mjs +0 -37
- package/dist/chunks/ColorPickerPopup-CiCLBbe9.mjs.map +0 -1
- package/dist/chunks/ColorValidation-CV4f1wu6.mjs +0 -39
- package/dist/chunks/Document-Brtw2jL1.mjs +0 -190
- package/dist/chunks/Document-Brtw2jL1.mjs.map +0 -1
- package/dist/chunks/HTMLUtils-DTqQzcKR.mjs +0 -35
- package/dist/chunks/HTMLUtils-DTqQzcKR.mjs.map +0 -1
- package/dist/chunks/MarkCommands-6RUJ4L3r.mjs +0 -94
- package/dist/chunks/MarkCommands-6RUJ4L3r.mjs.map +0 -1
- package/dist/chunks/NavigationUtils-Cspt2ZrK.mjs +0 -47
- package/dist/chunks/NavigationUtils-Cspt2ZrK.mjs.map +0 -1
- package/dist/chunks/NodeResolver-C2XYkeOi.mjs +0 -81
- package/dist/chunks/NodeResolver-C2XYkeOi.mjs.map +0 -1
- package/dist/chunks/NodeSpec-NZVvcCuH.mjs +0 -8
- package/dist/chunks/NodeSpec-NZVvcCuH.mjs.map +0 -1
- package/dist/chunks/Platform-S_xqIqcM.mjs +0 -26
- package/dist/chunks/Platform-S_xqIqcM.mjs.map +0 -1
- package/dist/chunks/PopupPositioning-BTT-_pQ3.mjs +0 -32
- package/dist/chunks/PopupPositioning-BTT-_pQ3.mjs.map +0 -1
- package/dist/chunks/RangeIterator-Bh4Vl_6D.mjs +0 -16
- package/dist/chunks/Selection-BRTab5hO.mjs +0 -52
- package/dist/chunks/StyleRuntime-ChRjVQwL.mjs +0 -239
- package/dist/chunks/StyleRuntime-ChRjVQwL.mjs.map +0 -1
- package/dist/chunks/ToolbarItem-BpZggUGo.mjs +0 -8
- package/dist/chunks/ToolbarItem-BpZggUGo.mjs.map +0 -1
- package/dist/chunks/ToolbarKeyboardNav-DhpL8zNV.mjs +0 -46
- package/dist/chunks/ToolbarKeyboardNav-DhpL8zNV.mjs.map +0 -1
- package/dist/chunks/ToolbarPlugin-DpLVJ71w.mjs +0 -1031
- package/dist/chunks/ToolbarPlugin-DpLVJ71w.mjs.map +0 -1
- package/dist/chunks/TypeBrands-C09nE2qO.mjs +0 -27
- package/dist/chunks/index--n1RGpq-.mjs +0 -171
- package/dist/chunks/index--n1RGpq-.mjs.map +0 -1
- package/dist/chunks/index-4or5UzNO.mjs +0 -168
- package/dist/chunks/index-4or5UzNO.mjs.map +0 -1
- package/dist/chunks/index-ABlTDvEX.mjs +0 -101
- package/dist/chunks/index-ABlTDvEX.mjs.map +0 -1
- package/dist/chunks/index-BAke7kNL.mjs +0 -467
- package/dist/chunks/index-BAke7kNL.mjs.map +0 -1
- package/dist/chunks/index-BXtw5PNN.mjs +0 -39
- package/dist/chunks/index-BXtw5PNN.mjs.map +0 -1
- package/dist/chunks/index-BhDXjueu.mjs +0 -924
- package/dist/chunks/index-BhDXjueu.mjs.map +0 -1
- package/dist/chunks/index-BqNUfq-y.mjs +0 -228
- package/dist/chunks/index-BqNUfq-y.mjs.map +0 -1
- package/dist/chunks/index-BvqkuEY1.mjs +0 -50
- package/dist/chunks/index-BvqkuEY1.mjs.map +0 -1
- package/dist/chunks/index-C1opJocO.mjs +0 -92
- package/dist/chunks/index-C1opJocO.mjs.map +0 -1
- package/dist/chunks/index-CWltg1wK.mjs +0 -124
- package/dist/chunks/index-CWltg1wK.mjs.map +0 -1
- package/dist/chunks/index-Cd3uJLP3.mjs +0 -73
- package/dist/chunks/index-Cd3uJLP3.mjs.map +0 -1
- package/dist/chunks/index-CluzpB2b.mjs +0 -63
- package/dist/chunks/index-CluzpB2b.mjs.map +0 -1
- package/dist/chunks/index-D3NlpmT1.mjs +0 -50
- package/dist/chunks/index-D3NlpmT1.mjs.map +0 -1
- package/dist/chunks/index-D515iymW.mjs +0 -542
- package/dist/chunks/index-D515iymW.mjs.map +0 -1
- package/dist/chunks/index-Dk49P9N4.mjs +0 -62
- package/dist/chunks/index-Dk49P9N4.mjs.map +0 -1
- package/dist/chunks/index-DyzigvbZ.mjs +0 -410
- package/dist/chunks/index-DyzigvbZ.mjs.map +0 -1
- package/dist/chunks/index-ErZ5_a1o.mjs +0 -296
- package/dist/chunks/index-ErZ5_a1o.mjs.map +0 -1
- package/dist/chunks/index-fsVJLutn.mjs +0 -118
- package/dist/chunks/index-fsVJLutn.mjs.map +0 -1
- package/dist/chunks/resolvePluginLocale-B4w1OkPy.mjs +0 -34
- package/dist/chunks/resolvePluginLocale-B4w1OkPy.mjs.map +0 -1
- package/dist/editor/DocumentParser.d.ts +0 -5
- package/dist/editor/DocumentParser.d.ts.map +0 -1
- package/dist/editor/DocumentSerializer.d.ts +0 -7
- package/dist/editor/DocumentSerializer.d.ts.map +0 -1
- package/dist/editor/MarkSerializer.d.ts +0 -11
- package/dist/editor/MarkSerializer.d.ts.map +0 -1
- package/dist/editor/PaperSize.d.ts.map +0 -1
- package/dist/i18n/resolvePluginLocale.d.ts +0 -3
- package/dist/i18n/resolvePluginLocale.d.ts.map +0 -1
- package/dist/model/BuiltinSpecs.d.ts.map +0 -1
- package/dist/model/HTMLParser.d.ts.map +0 -1
- package/dist/model/NavigationUtils.d.ts.map +0 -1
- package/dist/view/Platform.d.ts.map +0 -1
- /package/dist/{input → model}/InputRule.d.ts +0 -0
- /package/dist/{input → model}/InputRuleRegistry.d.ts +0 -0
- /package/dist/{input → model}/Keymap.d.ts +0 -0
- /package/dist/{input → model}/KeymapRegistry.d.ts +0 -0
- /package/dist/{editor → model}/PaperSize.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/font/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACvB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/font/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACN,cAAc,EACd,cAAc,GACd,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/ar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"de.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/de.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"es.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/es.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fr.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/fr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hi.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/hi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pt.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/pt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ru.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/ru.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font/locales/zh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,QAAA,MAAM,MAAM,EAAE,UAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -6,12 +6,5 @@ export interface FontSizeLocale {
|
|
|
6
6
|
readonly fontSizesAria: string;
|
|
7
7
|
}
|
|
8
8
|
export declare const FONT_SIZE_LOCALE_EN: FontSizeLocale;
|
|
9
|
-
export declare
|
|
10
|
-
export declare const FONT_SIZE_LOCALE_ES: FontSizeLocale;
|
|
11
|
-
export declare const FONT_SIZE_LOCALE_FR: FontSizeLocale;
|
|
12
|
-
export declare const FONT_SIZE_LOCALE_ZH: FontSizeLocale;
|
|
13
|
-
export declare const FONT_SIZE_LOCALE_RU: FontSizeLocale;
|
|
14
|
-
export declare const FONT_SIZE_LOCALE_AR: FontSizeLocale;
|
|
15
|
-
export declare const FONT_SIZE_LOCALE_HI: FontSizeLocale;
|
|
16
|
-
export declare const FONT_SIZE_LOCALES: Record<string, FontSizeLocale>;
|
|
9
|
+
export declare function loadFontSizeLocale(lang: string): Promise<FontSizeLocale>;
|
|
17
10
|
//# sourceMappingURL=FontSizeLocale.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizeLocale.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizeLocale.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAI1E,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AAID,eAAO,MAAM,mBAAmB,EAAE,cAKjC,CAAC;
|
|
1
|
+
{"version":3,"file":"FontSizeLocale.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizeLocale.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAI1E,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AAID,eAAO,MAAM,mBAAmB,EAAE,cAKjC,CAAC;AAQF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAU9E"}
|
|
@@ -23,8 +23,6 @@ export interface FontSizeConfig {
|
|
|
23
23
|
* Defaults to 16.
|
|
24
24
|
*/
|
|
25
25
|
readonly defaultSize?: number;
|
|
26
|
-
/** When true, a separator is rendered after the fontSize toolbar item. */
|
|
27
|
-
readonly separatorAfter?: boolean;
|
|
28
26
|
readonly locale?: FontSizeLocale;
|
|
29
27
|
}
|
|
30
28
|
export declare class FontSizePlugin implements Plugin {
|
|
@@ -35,9 +33,8 @@ export declare class FontSizePlugin implements Plugin {
|
|
|
35
33
|
private readonly sizes;
|
|
36
34
|
private readonly defaultSize;
|
|
37
35
|
private locale;
|
|
38
|
-
private context;
|
|
39
36
|
constructor(config?: Partial<FontSizeConfig>);
|
|
40
|
-
init(context: PluginContext): void
|
|
37
|
+
init(context: PluginContext): Promise<void>;
|
|
41
38
|
destroy(): void;
|
|
42
39
|
private registerMarkSpec;
|
|
43
40
|
private registerCommands;
|
|
@@ -49,6 +46,5 @@ export declare class FontSizePlugin implements Plugin {
|
|
|
49
46
|
* browser default (16px).
|
|
50
47
|
*/
|
|
51
48
|
private applyDefaultSizeToContainer;
|
|
52
|
-
private dismissPopup;
|
|
53
49
|
}
|
|
54
50
|
//# sourceMappingURL=FontSizePlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizePlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizePlugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"FontSizePlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizePlugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAuB,KAAK,cAAc,EAAsB,MAAM,qBAAqB,CAAC;AAWnG,OAAO,QAAQ,6BAA6B,CAAC;IAC5C,UAAU,gBAAgB;QACzB,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3B;CACD;AAID,4DAA4D;AAC5D,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAE/C,CAAC;AAMF,MAAM,WAAW,cAAc;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;CACjC;AAID,qBAAa,cAAe,YAAW,MAAM;IAC5C,QAAQ,CAAC,EAAE,cAAc;IACzB,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,QAAQ,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAMtC,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjD,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,gBAAgB;IA2CxB,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,mBAAmB;IAuB3B;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;CAInC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { PluginContext } from '../Plugin.js';
|
|
2
|
+
import { PopupCloseOptions } from '../shared/PopupManager.js';
|
|
2
3
|
import { FontSizeLocale } from './FontSizeLocale.js';
|
|
3
4
|
export interface FontSizePopupConfig {
|
|
4
5
|
readonly sizes: readonly number[];
|
|
5
6
|
readonly defaultSize: number;
|
|
6
|
-
readonly
|
|
7
|
-
readonly
|
|
7
|
+
readonly onClose: (options?: PopupCloseOptions) => void;
|
|
8
|
+
readonly contentElement: HTMLElement;
|
|
9
|
+
readonly locale: FontSizeLocale;
|
|
8
10
|
}
|
|
9
11
|
/** Builds the font-size picker DOM inside the given container. */
|
|
10
12
|
export declare function renderFontSizePopup(container: HTMLElement, context: PluginContext, config: FontSizePopupConfig): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizePopup.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizePopup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAU1D,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"FontSizePopup.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/FontSizePopup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAU1D,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;CAChC;AAID,kEAAkE;AAClE,wBAAgB,mBAAmB,CAClC,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,mBAAmB,GACzB,IAAI,CAaN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,KAAK,cAAc,GACnB,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/font-size/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,KAAK,cAAc,GACnB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAClB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/ar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"de.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/de.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"es.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/es.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fr.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/fr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hi.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/hi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pt.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/pt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ru.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/ru.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh.d.ts","sourceRoot":"","sources":["../../../../src/plugins/font-size/locales/zh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,MAAM,EAAE,cAKb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
F as FontSizePlugin
|
|
4
|
-
};
|
|
1
|
+
import{a as t}from"../chunks/LocaleService-B6Z-wyAF.mjs";import{e}from"../chunks/HTMLUtils-CCvQ5f83.mjs";import{a as n}from"../chunks/StyleRuntime-BmsLoEa8.mjs";import{b as o}from"../chunks/ColorValidation-DCSKq9B2.mjs";import{r as i,i as s,a as r,g as a}from"../chunks/AttributedMarkCommands-BB7lzFct.mjs";import{m as c}from"../chunks/TypeBrands-Bp_Z_o5Y.mjs";const l={label:"Font Size",tooltip:"Font Size",customFontSizeAria:"Custom font size",fontSizesAria:"Font sizes"},u=/* @__PURE__ */Object.assign({"./locales/ar.ts":()=>import("../chunks/ar-DR6OA3ZO.mjs"),"./locales/de.ts":()=>import("../chunks/de-UREymH-5.mjs"),"./locales/es.ts":()=>import("../chunks/es-BHGwPgrP.mjs"),"./locales/fr.ts":()=>import("../chunks/fr-C9oiPW0k.mjs"),"./locales/hi.ts":()=>import("../chunks/hi-yxAcR3w6.mjs"),"./locales/pt.ts":()=>import("../chunks/pt-CHjmBegF.mjs"),"./locales/ru.ts":()=>import("../chunks/ru-CVSCT776.mjs"),"./locales/zh.ts":()=>import("../chunks/zh-Cqb55JWa.mjs")});async function p(t){if("en"===t)return l;const e=u[`./locales/${t}.ts`];if(!e)return l;try{return(await e()).default}catch{return l}}function f(t,e){const n=function(t){return a(t,"fontSize",t=>t.attrs.size??null)}(t);if(!n)return e;const o=Number.parseInt(n,10);return Number.isNaN(o)?e:o}function m(t,e,n){const o={type:c("fontSize"),attrs:{size:n}},i=r(e,o);return!!i&&(t.dispatch(i),!0)}function d(t,e){const n=i(e,c("fontSize"));return!!n&&(t.dispatch(n),!0)}function z(t,e,n,o,i){const s=function(t,e,n){if("up"===e){for(const e of n)if(e>t)return e;return null}for(let o=n.length-1;o>=0;o--){const e=n[o];if(void 0!==e&&e<t)return e}return null}(f(e,i),n,o);return null!==s&&(s===i?d(t,e):m(t,e,`${s}px`))}function h(t,e,n){e===n?t.executeCommand("removeFontSize"):m(t,t.getState(),`${e}px`)}function g(t,e){const n=document.createElement("button");n.type="button",n.id=`notectl-font-size-option-${t}`,n.className="notectl-font-size-picker__item",n.setAttribute("role","option"),n.setAttribute("aria-selected",String(e)),e&&n.classList.add("notectl-font-size-picker__item--active");const o=document.createElement("span");o.className="notectl-font-size-picker__check",o.textContent=e?"✓":"",n.appendChild(o);const i=document.createElement("span");return i.className="notectl-font-size-picker__label",i.textContent=String(t),n.appendChild(i),n}const S=[8,9,10,11,12,14,16,18,20,24,28,32,36,48,64,72,96];class k{id="fontSize";name="Font Size";priority=21;config;sizes;defaultSize;locale;constructor(t){var e;this.config={...t},this.sizes=function(t){if(!t||0===t.length)return S;const e=[...new Set(t)].filter(t=>Number.isInteger(t)&&t>0);return e.sort((t,e)=>t-e),e.length>0?e:S}(t?.sizes),this.defaultSize=(e=t?.defaultSize,void 0===e?16:Number.isInteger(e)&&e>0?e:16)}async init(e){if(this.config.locale)this.locale=this.config.locale;else{const n=e.getService(t),o=n?.getLocale()??"en";this.locale="en"===o?l:await p(o)}e.registerStyleSheet("\n/* Font Size Select — Width overrides for combobox button */\n.notectl-toolbar-btn--fontSize {\n\tmin-width: 60px;\n\tmax-width: 80px;\n}\n\n/* Font Size Picker Popup */\n.notectl-font-size-picker {\n\tmin-width: 140px;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.notectl-font-size-picker__input-wrapper {\n\tpadding: 8px 8px 4px;\n}\n\n.notectl-font-size-picker__input {\n\twidth: 100%;\n\tpadding: 6px 8px;\n\tborder: 1px solid var(--notectl-border);\n\tborder-radius: 4px;\n\tfont-size: 13px;\n\tfont-family: inherit;\n\tcolor: var(--notectl-fg);\n\tbackground: var(--notectl-bg);\n\toutline: none;\n\tbox-sizing: border-box;\n\t-moz-appearance: textfield;\n}\n\n.notectl-font-size-picker__input::-webkit-inner-spin-button,\n.notectl-font-size-picker__input::-webkit-outer-spin-button {\n\t-webkit-appearance: none;\n\tmargin: 0;\n}\n\n.notectl-font-size-picker__input:focus {\n\tborder-color: var(--notectl-border-focus);\n\tbox-shadow: 0 0 0 2px var(--notectl-focus-ring);\n}\n\n.notectl-font-size-picker__list {\n\tmax-height: 280px;\n\toverflow-y: auto;\n\tpadding: 4px 0;\n}\n\n.notectl-font-size-picker__item {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\twidth: 100%;\n\tpadding: 7px 12px;\n\tborder: none;\n\tbackground: none;\n\tcursor: pointer;\n\tfont-size: 14px;\n\tcolor: var(--notectl-fg);\n\tline-height: 1.4;\n\ttext-align: start;\n\twhite-space: nowrap;\n\tfont-family: inherit;\n\ttransition: background 0.1s;\n\toutline: none;\n}\n\n@media (hover: hover) {\n\t.notectl-font-size-picker__item:hover {\n\t\tbackground: var(--notectl-hover-bg);\n\t}\n}\n\n.notectl-font-size-picker__item--active {\n\tbackground: var(--notectl-active-bg);\n\tcolor: var(--notectl-primary-fg);\n}\n\n@media (hover: hover) {\n\t.notectl-font-size-picker__item--active:hover {\n\t\tbackground: var(--notectl-active-bg);\n\t}\n}\n\n.notectl-font-size-picker__item--focused {\n\toutline: 2px solid var(--notectl-primary);\n\toutline-offset: -2px;\n}\n\n.notectl-font-size-picker__check {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 16px;\n\tflex-shrink: 0;\n\tfont-size: 13px;\n\tfont-weight: 600;\n\tcolor: var(--notectl-primary-fg);\n}\n\n.notectl-font-size-picker__label {\n\tflex: 1;\n}\n"),this.registerMarkSpec(e),this.registerCommands(e),this.registerKeymaps(e),this.registerToolbarItem(e),this.applyDefaultSizeToContainer(e)}destroy(){}registerMarkSpec(t){t.registerMarkSpec({type:"fontSize",rank:4,attrs:{size:{default:""}},toDOM(t){const e=document.createElement("span"),o=t.attrs?.size??"";return o&&n(e,"fontSize",o),e},toHTMLString:(t,n,i)=>{const s=String(t.attrs?.size??"");if(!s||!o(s))return n;const r=`font-size: ${e(s)}`;return`<span${i?.styleAttr(r)??` style="${r}"`}>${n}</span>`},toHTMLStyle:t=>{const n=String(t.attrs?.size??"");return n&&o(n)?`font-size: ${e(n)}`:null},parseHTML:[{tag:"span",getAttrs:t=>{const e=t.style.fontSize;return!!e&&{size:e}}}],sanitize:{tags:["span"]}})}registerCommands(t){t.registerCommand("removeFontSize",()=>d(t,t.getState())),t.registerCommand("setFontSize",()=>!1),t.registerCommand("increaseFontSize",()=>z(t,t.getState(),"up",this.sizes,this.defaultSize)),t.registerCommand("decreaseFontSize",()=>z(t,t.getState(),"down",this.sizes,this.defaultSize))}registerKeymaps(t){t.registerKeymap({"Mod-Shift-+":()=>z(t,t.getState(),"up",this.sizes,this.defaultSize),"Mod-Shift-_":()=>z(t,t.getState(),"down",this.sizes,this.defaultSize)})}registerToolbarItem(t){t.registerToolbarItem({id:"fontSize",group:"format",label:this.locale.label,tooltip:this.locale.tooltip,command:"removeFontSize",popupType:"combobox",getLabel:t=>String(f(t,this.defaultSize)),renderPopup:(t,e,n)=>{!function(t,e,n){t.classList.add("notectl-font-size-picker");const o=f(e.getState(),n.defaultSize),i=function(t,e){const n=document.createElement("input");return n.type="number",n.className="notectl-font-size-picker__input",n.min=String(1),n.max=String(400),n.value=String(t),n.setAttribute("aria-label",e.locale.customFontSizeAria),n}(o,n);!function(t,e){const n=document.createElement("div");n.className="notectl-font-size-picker__input-wrapper",n.appendChild(e),t.appendChild(n)}(t,i);const{list:s,items:r}=function(t,e,n,o){const i=document.createElement("div");i.className="notectl-font-size-picker__list",i.setAttribute("role","listbox"),i.setAttribute("aria-label",o.locale.fontSizesAria);const s=[];for(const r of t){const t=g(r,r===e);t.addEventListener("mousedown",t=>{t.preventDefault(),t.stopPropagation(),h(n,r,o.defaultSize),o.onClose({restoreFocusTo:o.contentElement})}),s.push(t),i.appendChild(t)}return{list:i,items:s}}(n.sizes,o,e,n);t.appendChild(s),function(t,e,n,o){const i=e.indexOf(n);if(i<0)return;const s=t[i];s&&(requestAnimationFrame(()=>{s.scrollIntoView({block:"nearest"})}),o.setAttribute("aria-activedescendant",s.id))}(r,n.sizes,o,s),function(t,e,n,o,i){let s=-1;const r=t=>{s>=0&&s<n.length&&n[s]?.classList.remove("notectl-font-size-picker__item--focused"),s=t;const o=n[s];s>=0&&s<n.length&&o&&(o.classList.add("notectl-font-size-picker__item--focused"),o.scrollIntoView({block:"nearest"}),e.setAttribute("aria-activedescendant",o.id))};t.addEventListener("keydown",e=>{if("Enter"===e.key){e.preventDefault();const n=Number.parseInt(t.value,10);!Number.isNaN(n)&&n>=1&&n<=400&&(h(o,n,i.defaultSize),i.onClose({restoreFocusTo:i.contentElement}))}else"ArrowDown"===e.key?(e.preventDefault(),r(0),n[0]?.focus()):"Escape"===e.key&&(e.preventDefault(),i.onClose({restoreFocusTo:i.contentElement}))}),e.addEventListener("keydown",e=>{if("ArrowDown"===e.key)e.preventDefault(),s<n.length-1&&(r(s+1),n[s]?.focus());else if("ArrowUp"===e.key)e.preventDefault(),s>0?(r(s-1),n[s]?.focus()):(r(-1),t.focus());else if("Enter"===e.key){e.preventDefault();const t=i.sizes[s];s>=0&&s<i.sizes.length&&void 0!==t&&(h(o,t,i.defaultSize),i.onClose({restoreFocusTo:i.contentElement}))}else"Escape"===e.key&&(e.preventDefault(),i.onClose({restoreFocusTo:i.contentElement}))})}(i,s,r,e,n)}(t,e,{sizes:this.sizes,defaultSize:this.defaultSize,onClose:n,contentElement:e.getContainer(),locale:this.locale})},isActive:t=>function(t){return s(t,"fontSize")}(t)})}applyDefaultSizeToContainer(t){const e=t.getContainer();n(e,"fontSize",`${this.defaultSize}px`)}}export{l as FONT_SIZE_LOCALE_EN,k as FontSizePlugin,p as loadFontSizeLocale};
|
|
5
2
|
//# sourceMappingURL=font-size.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"font-size.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"font-size.mjs","sources":["../../src/editor/styles/font-size-select.ts","../../src/plugins/font-size/FontSizeLocale.ts","../../src/plugins/font-size/FontSizeOperations.ts","../../src/plugins/font-size/FontSizePopup.ts","../../src/plugins/font-size/FontSizePlugin.ts"],"sourcesContent":["/** Font size picker toolbar combobox + popup styles. */\nexport const FONT_SIZE_SELECT_CSS = `\n/* Font Size Select — Width overrides for combobox button */\n.notectl-toolbar-btn--fontSize {\n\tmin-width: 60px;\n\tmax-width: 80px;\n}\n\n/* Font Size Picker Popup */\n.notectl-font-size-picker {\n\tmin-width: 140px;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.notectl-font-size-picker__input-wrapper {\n\tpadding: 8px 8px 4px;\n}\n\n.notectl-font-size-picker__input {\n\twidth: 100%;\n\tpadding: 6px 8px;\n\tborder: 1px solid var(--notectl-border);\n\tborder-radius: 4px;\n\tfont-size: 13px;\n\tfont-family: inherit;\n\tcolor: var(--notectl-fg);\n\tbackground: var(--notectl-bg);\n\toutline: none;\n\tbox-sizing: border-box;\n\t-moz-appearance: textfield;\n}\n\n.notectl-font-size-picker__input::-webkit-inner-spin-button,\n.notectl-font-size-picker__input::-webkit-outer-spin-button {\n\t-webkit-appearance: none;\n\tmargin: 0;\n}\n\n.notectl-font-size-picker__input:focus {\n\tborder-color: var(--notectl-border-focus);\n\tbox-shadow: 0 0 0 2px var(--notectl-focus-ring);\n}\n\n.notectl-font-size-picker__list {\n\tmax-height: 280px;\n\toverflow-y: auto;\n\tpadding: 4px 0;\n}\n\n.notectl-font-size-picker__item {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\twidth: 100%;\n\tpadding: 7px 12px;\n\tborder: none;\n\tbackground: none;\n\tcursor: pointer;\n\tfont-size: 14px;\n\tcolor: var(--notectl-fg);\n\tline-height: 1.4;\n\ttext-align: start;\n\twhite-space: nowrap;\n\tfont-family: inherit;\n\ttransition: background 0.1s;\n\toutline: none;\n}\n\n@media (hover: hover) {\n\t.notectl-font-size-picker__item:hover {\n\t\tbackground: var(--notectl-hover-bg);\n\t}\n}\n\n.notectl-font-size-picker__item--active {\n\tbackground: var(--notectl-active-bg);\n\tcolor: var(--notectl-primary-fg);\n}\n\n@media (hover: hover) {\n\t.notectl-font-size-picker__item--active:hover {\n\t\tbackground: var(--notectl-active-bg);\n\t}\n}\n\n.notectl-font-size-picker__item--focused {\n\toutline: 2px solid var(--notectl-primary);\n\toutline-offset: -2px;\n}\n\n.notectl-font-size-picker__check {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 16px;\n\tflex-shrink: 0;\n\tfont-size: 13px;\n\tfont-weight: 600;\n\tcolor: var(--notectl-primary-fg);\n}\n\n.notectl-font-size-picker__label {\n\tflex: 1;\n}\n`;\n","/** Locale interface and default English locale for the FontSizePlugin. */\n\n// --- Locale Interface ---\n\nexport interface FontSizeLocale {\n\treadonly label: string;\n\treadonly tooltip: string;\n\treadonly customFontSizeAria: string;\n\treadonly fontSizesAria: string;\n}\n\n// --- Default English Locale ---\n\nexport const FONT_SIZE_LOCALE_EN: FontSizeLocale = {\n\tlabel: 'Font Size',\n\ttooltip: 'Font Size',\n\tcustomFontSizeAria: 'Custom font size',\n\tfontSizesAria: 'Font sizes',\n};\n\n// --- Lazy Locale Loader ---\n\nconst localeModules: Record<string, () => Promise<{ default: FontSizeLocale }>> = import.meta.glob<{\n\tdefault: FontSizeLocale;\n}>('./locales/*.ts', { eager: false });\n\nexport async function loadFontSizeLocale(lang: string): Promise<FontSizeLocale> {\n\tif (lang === 'en') return FONT_SIZE_LOCALE_EN;\n\tconst loader = localeModules[`./locales/${lang}.ts`];\n\tif (!loader) return FONT_SIZE_LOCALE_EN;\n\ttry {\n\t\tconst mod = await loader();\n\t\treturn mod.default;\n\t} catch {\n\t\treturn FONT_SIZE_LOCALE_EN;\n\t}\n}\n","/**\n * Pure business logic for font-size state queries and transaction builders.\n * All functions are DOM-free and operate on EditorState / PluginContext.\n *\n * Delegates to the generic AttributedMarkCommands helpers for the\n * collapsed-vs-range branching logic.\n */\n\nimport {\n\tapplyAttributedMark,\n\tgetMarkAttrAtSelection,\n\tisAttributedMarkActive,\n\tremoveAttributedMark,\n} from '../../commands/AttributedMarkCommands.js';\nimport { markType } from '../../model/TypeBrands.js';\nimport type { EditorState } from '../../state/EditorState.js';\nimport type { PluginContext } from '../Plugin.js';\n\n// --- State Queries ---\n\n/** Returns the raw fontSize CSS value at the current selection, or null. */\nexport function getActiveSize(state: EditorState): string | null {\n\treturn getMarkAttrAtSelection(state, 'fontSize', (m) => m.attrs.size ?? null);\n}\n\n/** Returns the active font size as a number, falling back to defaultSize. */\nexport function getActiveSizeNumeric(state: EditorState, defaultSize: number): number {\n\tconst raw: string | null = getActiveSize(state);\n\tif (!raw) return defaultSize;\n\tconst parsed: number = Number.parseInt(raw, 10);\n\treturn Number.isNaN(parsed) ? defaultSize : parsed;\n}\n\n/** Returns true when the selection carries a fontSize mark. */\nexport function isFontSizeActive(state: EditorState): boolean {\n\treturn isAttributedMarkActive(state, 'fontSize');\n}\n\n// --- Commands ---\n\n/** Applies a fontSize mark with the given CSS size string to the selection. */\nexport function applyFontSize(context: PluginContext, state: EditorState, size: string): boolean {\n\tconst mark = { type: markType('fontSize'), attrs: { size } };\n\tconst tr = applyAttributedMark(state, mark);\n\tif (!tr) return false;\n\n\tcontext.dispatch(tr);\n\treturn true;\n}\n\n/** Removes the fontSize mark from the current selection. */\nexport function removeFontSize(context: PluginContext, state: EditorState): boolean {\n\tconst tr = removeAttributedMark(state, markType('fontSize'));\n\tif (!tr) return false;\n\n\tcontext.dispatch(tr);\n\treturn true;\n}\n\n/** Steps the font size up or down through the preset list. */\nexport function stepFontSize(\n\tcontext: PluginContext,\n\tstate: EditorState,\n\tdirection: 'up' | 'down',\n\tsizes: readonly number[],\n\tdefaultSize: number,\n): boolean {\n\tconst current: number = getActiveSizeNumeric(state, defaultSize);\n\tconst next: number | null = getNextPresetSize(current, direction, sizes);\n\tif (next === null) return false;\n\n\tif (next === defaultSize) {\n\t\treturn removeFontSize(context, state);\n\t}\n\treturn applyFontSize(context, state, `${next}px`);\n}\n\n/**\n * Selects a specific font size: removes the mark when size equals the\n * default, otherwise applies the new size.\n */\nexport function selectSize(context: PluginContext, size: number, defaultSize: number): void {\n\tif (size === defaultSize) {\n\t\tcontext.executeCommand('removeFontSize');\n\t} else {\n\t\tapplyFontSize(context, context.getState(), `${size}px`);\n\t}\n}\n\n// --- Helpers ---\n\n/** Finds the next preset size in the given direction, or null at boundaries. */\nexport function getNextPresetSize(\n\tcurrent: number,\n\tdirection: 'up' | 'down',\n\tsizes: readonly number[],\n): number | null {\n\tif (direction === 'up') {\n\t\tfor (const size of sizes) {\n\t\t\tif (size > current) return size;\n\t\t}\n\t\treturn null;\n\t}\n\tfor (let i: number = sizes.length - 1; i >= 0; i--) {\n\t\tconst size: number | undefined = sizes[i];\n\t\tif (size !== undefined && size < current) return size;\n\t}\n\treturn null;\n}\n","/**\n * Renders the font-size picker popup with a custom numeric input\n * and an accessible preset list with keyboard navigation.\n */\n\nimport type { PluginContext } from '../Plugin.js';\nimport type { PopupCloseOptions } from '../shared/PopupManager.js';\nimport type { FontSizeLocale } from './FontSizeLocale.js';\nimport { getActiveSizeNumeric, selectSize } from './FontSizeOperations.js';\n\n// --- Constants ---\n\nconst MIN_CUSTOM_SIZE = 1;\nconst MAX_CUSTOM_SIZE = 400;\n\n// --- Config ---\n\nexport interface FontSizePopupConfig {\n\treadonly sizes: readonly number[];\n\treadonly defaultSize: number;\n\treadonly onClose: (options?: PopupCloseOptions) => void;\n\treadonly contentElement: HTMLElement;\n\treadonly locale: FontSizeLocale;\n}\n\n// --- Public Entry Point ---\n\n/** Builds the font-size picker DOM inside the given container. */\nexport function renderFontSizePopup(\n\tcontainer: HTMLElement,\n\tcontext: PluginContext,\n\tconfig: FontSizePopupConfig,\n): void {\n\tcontainer.classList.add('notectl-font-size-picker');\n\n\tconst currentSize: number = getActiveSizeNumeric(context.getState(), config.defaultSize);\n\n\tconst input: HTMLInputElement = buildCustomInput(currentSize, config);\n\tappendInputWrapper(container, input);\n\n\tconst { list, items } = buildSizeList(config.sizes, currentSize, context, config);\n\tcontainer.appendChild(list);\n\n\tscrollActiveIntoView(items, config.sizes, currentSize, list);\n\tattachKeyboardNavigation(input, list, items, context, config);\n}\n\n// --- Custom Input ---\n\nfunction buildCustomInput(currentSize: number, config: FontSizePopupConfig): HTMLInputElement {\n\tconst input: HTMLInputElement = document.createElement('input');\n\tinput.type = 'number';\n\tinput.className = 'notectl-font-size-picker__input';\n\tinput.min = String(MIN_CUSTOM_SIZE);\n\tinput.max = String(MAX_CUSTOM_SIZE);\n\tinput.value = String(currentSize);\n\tinput.setAttribute('aria-label', config.locale.customFontSizeAria);\n\treturn input;\n}\n\nfunction appendInputWrapper(container: HTMLElement, input: HTMLInputElement): void {\n\tconst wrapper: HTMLDivElement = document.createElement('div');\n\twrapper.className = 'notectl-font-size-picker__input-wrapper';\n\twrapper.appendChild(input);\n\tcontainer.appendChild(wrapper);\n}\n\n// --- Size List ---\n\ninterface SizeListResult {\n\treadonly list: HTMLDivElement;\n\treadonly items: HTMLButtonElement[];\n}\n\nfunction buildSizeList(\n\tsizes: readonly number[],\n\tcurrentSize: number,\n\tcontext: PluginContext,\n\tconfig: FontSizePopupConfig,\n): SizeListResult {\n\tconst list: HTMLDivElement = document.createElement('div');\n\tlist.className = 'notectl-font-size-picker__list';\n\tlist.setAttribute('role', 'listbox');\n\tlist.setAttribute('aria-label', config.locale.fontSizesAria);\n\n\tconst items: HTMLButtonElement[] = [];\n\n\tfor (const size of sizes) {\n\t\tconst isActive: boolean = size === currentSize;\n\t\tconst item: HTMLButtonElement = buildSizeItem(size, isActive);\n\n\t\titem.addEventListener('mousedown', (e: MouseEvent) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tselectSize(context, size, config.defaultSize);\n\t\t\tconfig.onClose({ restoreFocusTo: config.contentElement });\n\t\t});\n\n\t\titems.push(item);\n\t\tlist.appendChild(item);\n\t}\n\n\treturn { list, items };\n}\n\nfunction buildSizeItem(size: number, isActive: boolean): HTMLButtonElement {\n\tconst item: HTMLButtonElement = document.createElement('button');\n\titem.type = 'button';\n\titem.id = `notectl-font-size-option-${size}`;\n\titem.className = 'notectl-font-size-picker__item';\n\titem.setAttribute('role', 'option');\n\titem.setAttribute('aria-selected', String(isActive));\n\n\tif (isActive) {\n\t\titem.classList.add('notectl-font-size-picker__item--active');\n\t}\n\n\tconst check: HTMLSpanElement = document.createElement('span');\n\tcheck.className = 'notectl-font-size-picker__check';\n\tcheck.textContent = isActive ? '\\u2713' : '';\n\titem.appendChild(check);\n\n\tconst label: HTMLSpanElement = document.createElement('span');\n\tlabel.className = 'notectl-font-size-picker__label';\n\tlabel.textContent = String(size);\n\titem.appendChild(label);\n\n\treturn item;\n}\n\n// --- Scroll ---\n\nfunction scrollActiveIntoView(\n\titems: HTMLButtonElement[],\n\tsizes: readonly number[],\n\tcurrentSize: number,\n\tlist: HTMLDivElement,\n): void {\n\tconst activeIdx: number = sizes.indexOf(currentSize);\n\tif (activeIdx < 0) return;\n\n\tconst activeItem: HTMLButtonElement | undefined = items[activeIdx];\n\tif (!activeItem) return;\n\n\trequestAnimationFrame(() => {\n\t\tactiveItem.scrollIntoView({ block: 'nearest' });\n\t});\n\tlist.setAttribute('aria-activedescendant', activeItem.id);\n}\n\n// --- Keyboard Navigation ---\n\nfunction attachKeyboardNavigation(\n\tinput: HTMLInputElement,\n\tlist: HTMLDivElement,\n\titems: HTMLButtonElement[],\n\tcontext: PluginContext,\n\tconfig: FontSizePopupConfig,\n): void {\n\tlet focusedIndex = -1;\n\n\tconst setFocused = (idx: number): void => {\n\t\tif (focusedIndex >= 0 && focusedIndex < items.length) {\n\t\t\titems[focusedIndex]?.classList.remove('notectl-font-size-picker__item--focused');\n\t\t}\n\t\tfocusedIndex = idx;\n\t\tconst el: HTMLButtonElement | undefined = items[focusedIndex];\n\t\tif (focusedIndex >= 0 && focusedIndex < items.length && el) {\n\t\t\tel.classList.add('notectl-font-size-picker__item--focused');\n\t\t\tel.scrollIntoView({ block: 'nearest' });\n\t\t\tlist.setAttribute('aria-activedescendant', el.id);\n\t\t}\n\t};\n\n\tinput.addEventListener('keydown', (e: KeyboardEvent) => {\n\t\tif (e.key === 'Enter') {\n\t\t\te.preventDefault();\n\t\t\tconst val: number = Number.parseInt(input.value, 10);\n\t\t\tif (!Number.isNaN(val) && val >= MIN_CUSTOM_SIZE && val <= MAX_CUSTOM_SIZE) {\n\t\t\t\tselectSize(context, val, config.defaultSize);\n\t\t\t\tconfig.onClose({ restoreFocusTo: config.contentElement });\n\t\t\t}\n\t\t} else if (e.key === 'ArrowDown') {\n\t\t\te.preventDefault();\n\t\t\tsetFocused(0);\n\t\t\titems[0]?.focus();\n\t\t} else if (e.key === 'Escape') {\n\t\t\te.preventDefault();\n\t\t\tconfig.onClose({ restoreFocusTo: config.contentElement });\n\t\t}\n\t});\n\n\tlist.addEventListener('keydown', (e: KeyboardEvent) => {\n\t\tif (e.key === 'ArrowDown') {\n\t\t\te.preventDefault();\n\t\t\tif (focusedIndex < items.length - 1) {\n\t\t\t\tsetFocused(focusedIndex + 1);\n\t\t\t\titems[focusedIndex]?.focus();\n\t\t\t}\n\t\t} else if (e.key === 'ArrowUp') {\n\t\t\te.preventDefault();\n\t\t\tif (focusedIndex > 0) {\n\t\t\t\tsetFocused(focusedIndex - 1);\n\t\t\t\titems[focusedIndex]?.focus();\n\t\t\t} else {\n\t\t\t\tsetFocused(-1);\n\t\t\t\tinput.focus();\n\t\t\t}\n\t\t} else if (e.key === 'Enter') {\n\t\t\te.preventDefault();\n\t\t\tconst selectedSize: number | undefined = config.sizes[focusedIndex];\n\t\t\tif (focusedIndex >= 0 && focusedIndex < config.sizes.length && selectedSize !== undefined) {\n\t\t\t\tselectSize(context, selectedSize, config.defaultSize);\n\t\t\t\tconfig.onClose({ restoreFocusTo: config.contentElement });\n\t\t\t}\n\t\t} else if (e.key === 'Escape') {\n\t\t\te.preventDefault();\n\t\t\tconfig.onClose({ restoreFocusTo: config.contentElement });\n\t\t}\n\t});\n}\n","/**\n * FontSizePlugin: registers a fontSize mark with attrs, a combobox-style\n * toolbar selector with WCAG-accessible popup, and commands for\n * increasing / decreasing font size.\n */\n\nimport { FONT_SIZE_SELECT_CSS } from '../../editor/styles/font-size-select.js';\nimport { LocaleServiceKey } from '../../i18n/LocaleService.js';\nimport { escapeHTML } from '../../model/HTMLUtils.js';\nimport type { HTMLExportContext } from '../../model/NodeSpec.js';\nimport type { EditorState } from '../../state/EditorState.js';\nimport { setStyleProperty } from '../../style/StyleRuntime.js';\nimport type { Plugin, PluginContext } from '../Plugin.js';\nimport { isValidCSSFontSize } from '../shared/ColorValidation.js';\nimport { FONT_SIZE_LOCALE_EN, type FontSizeLocale, loadFontSizeLocale } from './FontSizeLocale.js';\nimport {\n\tgetActiveSizeNumeric,\n\tisFontSizeActive,\n\tremoveFontSize,\n\tstepFontSize,\n} from './FontSizeOperations.js';\nimport { renderFontSizePopup } from './FontSizePopup.js';\n\n// --- Attribute Registry Augmentation ---\n\ndeclare module '../../model/AttrRegistry.js' {\n\tinterface MarkAttrRegistry {\n\t\tfontSize: { size: string };\n\t}\n}\n\n// --- Constants ---\n\n/** Default preset sizes shown in the font size dropdown. */\nexport const DEFAULT_FONT_SIZES: readonly number[] = [\n\t8, 9, 10, 11, 12, 14, 16, 18, 20, 24, 28, 32, 36, 48, 64, 72, 96,\n];\n\nconst DEFAULT_FONT_SIZE = 16;\n\n// --- Configuration ---\n\nexport interface FontSizeConfig {\n\t/**\n\t * Preset sizes shown in the font size dropdown.\n\t * Must contain positive integers. Values are sorted and deduplicated automatically.\n\t * Defaults to {@link DEFAULT_FONT_SIZES} when omitted or empty.\n\t */\n\treadonly sizes?: readonly number[];\n\t/**\n\t * The base font size that text has when no fontSize mark is applied.\n\t * Shown as the initial value in the toolbar combo and used as the\n\t * \"neutral\" size — selecting it removes the mark instead of applying one.\n\t * Defaults to 16.\n\t */\n\treadonly defaultSize?: number;\n\treadonly locale?: FontSizeLocale;\n}\n\n// --- Plugin ---\n\nexport class FontSizePlugin implements Plugin {\n\treadonly id = 'fontSize';\n\treadonly name = 'Font Size';\n\treadonly priority = 21;\n\n\tprivate readonly config: FontSizeConfig;\n\tprivate readonly sizes: readonly number[];\n\tprivate readonly defaultSize: number;\n\tprivate locale!: FontSizeLocale;\n\n\tconstructor(config?: Partial<FontSizeConfig>) {\n\t\tthis.config = { ...config };\n\t\tthis.sizes = resolveSizes(config?.sizes);\n\t\tthis.defaultSize = resolveDefaultSize(config?.defaultSize);\n\t}\n\n\tasync init(context: PluginContext): Promise<void> {\n\t\tif (this.config.locale) {\n\t\t\tthis.locale = this.config.locale;\n\t\t} else {\n\t\t\tconst service = context.getService(LocaleServiceKey);\n\t\t\tconst lang: string = service?.getLocale() ?? 'en';\n\t\t\tthis.locale = lang === 'en' ? FONT_SIZE_LOCALE_EN : await loadFontSizeLocale(lang);\n\t\t}\n\n\t\tcontext.registerStyleSheet(FONT_SIZE_SELECT_CSS);\n\t\tthis.registerMarkSpec(context);\n\t\tthis.registerCommands(context);\n\t\tthis.registerKeymaps(context);\n\t\tthis.registerToolbarItem(context);\n\t\tthis.applyDefaultSizeToContainer(context);\n\t}\n\n\tdestroy(): void {\n\t\t// no-op: nothing to clean up\n\t}\n\n\t// --- Schema ---\n\n\tprivate registerMarkSpec(context: PluginContext): void {\n\t\tcontext.registerMarkSpec({\n\t\t\ttype: 'fontSize',\n\t\t\trank: 4,\n\t\t\tattrs: {\n\t\t\t\tsize: { default: '' },\n\t\t\t},\n\t\t\ttoDOM(mark) {\n\t\t\t\tconst span: HTMLElement = document.createElement('span');\n\t\t\t\tconst size: string = mark.attrs?.size ?? '';\n\t\t\t\tif (size) {\n\t\t\t\t\tsetStyleProperty(span, 'fontSize', size);\n\t\t\t\t}\n\t\t\t\treturn span;\n\t\t\t},\n\t\t\ttoHTMLString: (mark, content, ctx?: HTMLExportContext) => {\n\t\t\t\tconst size: string = String(mark.attrs?.size ?? '');\n\t\t\t\tif (!size || !isValidCSSFontSize(size)) return content;\n\t\t\t\tconst decl: string = `font-size: ${escapeHTML(size)}`;\n\t\t\t\tconst attr: string = ctx?.styleAttr(decl) ?? ` style=\"${decl}\"`;\n\t\t\t\treturn `<span${attr}>${content}</span>`;\n\t\t\t},\n\t\t\ttoHTMLStyle: (mark) => {\n\t\t\t\tconst size: string = String(mark.attrs?.size ?? '');\n\t\t\t\tif (!size || !isValidCSSFontSize(size)) return null;\n\t\t\t\treturn `font-size: ${escapeHTML(size)}`;\n\t\t\t},\n\t\t\tparseHTML: [\n\t\t\t\t{\n\t\t\t\t\ttag: 'span',\n\t\t\t\t\tgetAttrs: (el) => {\n\t\t\t\t\t\tconst size: string = el.style.fontSize;\n\t\t\t\t\t\tif (!size) return false;\n\t\t\t\t\t\treturn { size };\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tsanitize: { tags: ['span'] },\n\t\t});\n\t}\n\n\t// --- Commands ---\n\n\tprivate registerCommands(context: PluginContext): void {\n\t\tcontext.registerCommand('removeFontSize', () => {\n\t\t\treturn removeFontSize(context, context.getState());\n\t\t});\n\n\t\tcontext.registerCommand('setFontSize', () => {\n\t\t\treturn false;\n\t\t});\n\n\t\tcontext.registerCommand('increaseFontSize', () => {\n\t\t\treturn stepFontSize(context, context.getState(), 'up', this.sizes, this.defaultSize);\n\t\t});\n\n\t\tcontext.registerCommand('decreaseFontSize', () => {\n\t\t\treturn stepFontSize(context, context.getState(), 'down', this.sizes, this.defaultSize);\n\t\t});\n\t}\n\n\t// --- Keymaps ---\n\n\tprivate registerKeymaps(context: PluginContext): void {\n\t\tcontext.registerKeymap({\n\t\t\t'Mod-Shift-+': () => {\n\t\t\t\treturn stepFontSize(context, context.getState(), 'up', this.sizes, this.defaultSize);\n\t\t\t},\n\t\t\t'Mod-Shift-_': () => {\n\t\t\t\treturn stepFontSize(context, context.getState(), 'down', this.sizes, this.defaultSize);\n\t\t\t},\n\t\t});\n\t}\n\n\t// --- Toolbar ---\n\n\tprivate registerToolbarItem(context: PluginContext): void {\n\t\tcontext.registerToolbarItem({\n\t\t\tid: 'fontSize',\n\t\t\tgroup: 'format',\n\t\t\tlabel: this.locale.label,\n\t\t\ttooltip: this.locale.tooltip,\n\t\t\tcommand: 'removeFontSize',\n\t\t\tpopupType: 'combobox',\n\t\t\tgetLabel: (state: EditorState): string =>\n\t\t\t\tString(getActiveSizeNumeric(state, this.defaultSize)),\n\t\t\trenderPopup: (container, ctx, onClose) => {\n\t\t\t\trenderFontSizePopup(container, ctx, {\n\t\t\t\t\tsizes: this.sizes,\n\t\t\t\t\tdefaultSize: this.defaultSize,\n\t\t\t\t\tonClose,\n\t\t\t\t\tcontentElement: ctx.getContainer(),\n\t\t\t\t\tlocale: this.locale,\n\t\t\t\t});\n\t\t\t},\n\t\t\tisActive: (state) => isFontSizeActive(state),\n\t\t});\n\t}\n\n\t/**\n\t * Sets the configured default font size on the editor content container\n\t * so that unformatted text renders at the correct size instead of the\n\t * browser default (16px).\n\t */\n\tprivate applyDefaultSizeToContainer(context: PluginContext): void {\n\t\tconst container: HTMLElement = context.getContainer();\n\t\tsetStyleProperty(container, 'fontSize', `${this.defaultSize}px`);\n\t}\n}\n\n// --- Helpers ---\n\nfunction resolveSizes(sizes: readonly number[] | undefined): readonly number[] {\n\tif (!sizes || sizes.length === 0) return DEFAULT_FONT_SIZES;\n\tconst unique: number[] = [...new Set(sizes)].filter((n) => Number.isInteger(n) && n > 0);\n\tunique.sort((a, b) => a - b);\n\treturn unique.length > 0 ? unique : DEFAULT_FONT_SIZES;\n}\n\nfunction resolveDefaultSize(size: number | undefined): number {\n\tif (size === undefined) return DEFAULT_FONT_SIZE;\n\treturn Number.isInteger(size) && size > 0 ? size : DEFAULT_FONT_SIZE;\n}\n"],"names":["FONT_SIZE_LOCALE_EN","label","tooltip","customFontSizeAria","fontSizesAria","localeModules","assign","import","async","loadFontSizeLocale","lang","loader","default","getActiveSizeNumeric","state","defaultSize","raw","getMarkAttrAtSelection","m","attrs","size","getActiveSize","parsed","Number","parseInt","isNaN","applyFontSize","context","mark","type","markType","tr","applyAttributedMark","dispatch","removeFontSize","removeAttributedMark","stepFontSize","direction","sizes","next","current","i","length","getNextPresetSize","selectSize","executeCommand","getState","buildSizeItem","isActive","item","document","createElement","id","className","setAttribute","String","classList","add","check","textContent","appendChild","DEFAULT_FONT_SIZES","FontSizePlugin","name","priority","config","locale","constructor","this","unique","Set","filter","n","isInteger","sort","a","b","resolveSizes","init","service","getService","LocaleServiceKey","getLocale","registerStyleSheet","registerMarkSpec","registerCommands","registerKeymaps","registerToolbarItem","applyDefaultSizeToContainer","destroy","rank","toDOM","span","setStyleProperty","toHTMLString","content","ctx","isValidCSSFontSize","decl","escapeHTML","styleAttr","toHTMLStyle","parseHTML","tag","getAttrs","el","style","fontSize","sanitize","tags","registerCommand","registerKeymap","group","command","popupType","getLabel","renderPopup","container","onClose","currentSize","input","min","max","value","buildCustomInput","wrapper","appendInputWrapper","list","items","addEventListener","e","preventDefault","stopPropagation","restoreFocusTo","contentElement","push","buildSizeList","activeIdx","indexOf","activeItem","requestAnimationFrame","scrollIntoView","block","scrollActiveIntoView","focusedIndex","setFocused","idx","remove","key","val","focus","selectedSize","attachKeyboardNavigation","renderFontSizePopup","getContainer","isAttributedMarkActive","isFontSizeActive"],"mappings":"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"}
|
package/dist/plugins/font.mjs
CHANGED
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
F as FontPlugin
|
|
4
|
-
};
|
|
1
|
+
import{i as t,g as e,a as n,r as o}from"../chunks/AttributedMarkCommands-BB7lzFct.mjs";import{a as i}from"../chunks/LocaleService-B6Z-wyAF.mjs";import{e as r}from"../chunks/HTMLUtils-CCvQ5f83.mjs";import{m as s}from"../chunks/TypeBrands-Bp_Z_o5Y.mjs";import{a,g as c}from"../chunks/StyleRuntime-BmsLoEa8.mjs";import{a as l}from"../chunks/ColorValidation-DCSKq9B2.mjs";const m={label:"Font",tooltip:"Font Family"},p=/* @__PURE__ */Object.assign({"./locales/ar.ts":()=>import("../chunks/ar-Dlb5riUN.mjs"),"./locales/de.ts":()=>import("../chunks/de-De2miMxo.mjs"),"./locales/es.ts":()=>import("../chunks/es-D-II7LZC.mjs"),"./locales/fr.ts":()=>import("../chunks/fr-CfUg1FxU.mjs"),"./locales/hi.ts":()=>import("../chunks/hi-C-l_R2SO.mjs"),"./locales/pt.ts":()=>import("../chunks/pt-DfB-IaYi.mjs"),"./locales/ru.ts":()=>import("../chunks/ru-CNLx7T3O.mjs"),"./locales/zh.ts":()=>import("../chunks/zh-Da1z6qbB.mjs")});async function f(t){if("en"===t)return m;const e=p[`./locales/${t}.ts`];if(!e)return m;try{return(await e()).default}catch{return m}}class h{id="font";name="Font";priority=22;config;locale;injectedStyleElement=null;context=null;constructor(t){this.config=t}async init(t){if(this.config.locale)this.locale=this.config.locale;else{const e=t.getService(i),n=e?.getLocale()??"en";this.locale="en"===n?m:await f(n)}t.registerStyleSheet("\n/* Font Select — Width overrides for combobox button */\n.notectl-toolbar-btn--font {\n\tmin-width: 100px;\n\tmax-width: 160px;\n}\n\n/* Font Picker Popup */\n.notectl-font-picker {\n\tmin-width: 200px;\n\tmax-height: 320px;\n\toverflow-y: auto;\n}\n\n.notectl-font-picker__list {\n\tpadding: 4px 0;\n}\n\n.notectl-font-picker__item {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\twidth: 100%;\n\tpadding: 7px 12px;\n\tborder: none;\n\tbackground: none;\n\tcursor: pointer;\n\tfont-size: 14px;\n\tcolor: var(--notectl-fg);\n\tline-height: 1.4;\n\ttext-align: start;\n\twhite-space: nowrap;\n\tfont-family: inherit;\n\ttransition: background 0.1s;\n}\n\n@media (hover: hover) {\n\t.notectl-font-picker__item:hover {\n\t\tbackground: var(--notectl-hover-bg);\n\t}\n}\n\n.notectl-font-picker__item--active {\n\tbackground: var(--notectl-active-bg);\n\tcolor: var(--notectl-primary-fg);\n}\n\n@media (hover: hover) {\n\t.notectl-font-picker__item--active:hover {\n\t\tbackground: var(--notectl-active-bg);\n\t}\n}\n\n.notectl-font-picker__check {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 16px;\n\tflex-shrink: 0;\n\tfont-size: 13px;\n\tfont-weight: 600;\n\tcolor: var(--notectl-primary-fg);\n}\n\n.notectl-font-picker__label {\n\tflex: 1;\n}\n\n.notectl-font-picker__separator {\n\theight: 1px;\n\tbackground: var(--notectl-border);\n\tmargin: 4px 8px;\n}\n"),this.context=t,this.registerMarkSpec(t),this.registerCommands(t),this.registerToolbarItem(t),this.injectFontFaces()}destroy(){this.injectedStyleElement?.remove(),this.injectedStyleElement=null,this.context=null}registerMarkSpec(t){t.registerMarkSpec({type:"font",rank:6,attrs:{family:{default:""}},toDOM(t){const e=document.createElement("span"),n=t.attrs?.family??"";return n&&a(e,"fontFamily",n),e},toHTMLString:(t,e,n)=>{const o=String(t.attrs?.family??"");if(!o||!l(o))return e;const i=`font-family: ${r(o)}`;return`<span${n?.styleAttr(i)??` style="${i}"`}>${e}</span>`},toHTMLStyle:t=>{const e=String(t.attrs?.family??"");return e&&l(e)?`font-family: ${r(e)}`:null},parseHTML:[{tag:"span",getAttrs:t=>{const e=t.style.fontFamily;return!!e&&{family:e.replace(/"/g,"'")}}}],sanitize:{tags:["span"]}})}registerCommands(t){t.registerCommand("removeFont",()=>{const e=t.getState();return this.removeFont(t,e)}),t.registerCommand("setFont",()=>!1)}get defaultFont(){if(this.config.defaultFont){const t=this.config.fonts.find(t=>t.name===this.config.defaultFont);if(t)return t}const t=this.config.fonts[0];if(!t)throw new Error("FontPlugin: fonts list is empty");return t}registerToolbarItem(t){t.registerToolbarItem({id:"font",group:"format",label:this.locale.label,tooltip:this.locale.tooltip,command:"removeFont",popupType:"combobox",getLabel:t=>this.resolveFontName(this.getActiveFont(t)),renderPopup:(t,e,n)=>{this.renderFontPopup(t,e,n)},isActive:t=>this.isFontActive(t)})}resolveFontName(t){if(!t)return this.defaultFont.name;const e=this.config.fonts.find(e=>e.family===t);return e?.name??(t.split(",")[0]??"").trim().replace(/['"]/g,"")}isFontActive(e){return t(e,"font")}getActiveFont(t){return e(t,"font",t=>t.attrs.family??null)}applyFont(t,e,o){const i={type:s("font"),attrs:{family:o}},r=n(e,i);return!!r&&(t.dispatch(r),!0)}removeFont(t,e){const n=o(e,s("font"));return!!n&&(t.dispatch(n),!0)}injectFontFaces(){const t=[];for(const o of this.config.fonts)if(o.fontFaces?.length)for(const e of o.fontFaces){const n=[`font-family: '${(o.family.split(",")[0]??"").trim().replace(/['"]/g,"")}'`,`src: ${e.src}`];e.weight&&n.push(`font-weight: ${e.weight}`),e.style&&n.push(`font-style: ${e.style}`),n.push(`font-display: ${e.display??"swap"}`),t.push(`@font-face {\n\t${n.join(";\n\t")};\n}`)}if(0===t.length)return;const e=document.createElement("style");e.setAttribute("data-notectl-fonts","");const n=this.context?c(this.context.getContainer()):void 0;n&&e.setAttribute("nonce",n),e.textContent=t.join("\n\n"),document.head.appendChild(e),this.injectedStyleElement=e}renderFontPopup(t,e,n){t.classList.add("notectl-font-picker");const o=e.getState(),i=this.getActiveFont(o),r=this.defaultFont.family,s=e.getContainer(),a=document.createElement("div");a.className="notectl-font-picker__list",a.setAttribute("role","listbox"),a.setAttribute("aria-label",this.locale.label);for(const c of this.config.fonts){const t=c.family===r,o=t&&!i||i===c.family,l=this.createFontItem(c.name,c.family,o,o=>{o.preventDefault(),o.stopPropagation(),t?e.executeCommand("removeFont"):this.applyFont(e,e.getState(),c.family),n({restoreFocusTo:s})});c.category&&l.setAttribute("data-category",c.category),a.appendChild(l)}t.appendChild(a)}createFontItem(t,e,n,o){const i=document.createElement("button");i.type="button",i.className="notectl-font-picker__item",i.setAttribute("role","option"),i.setAttribute("aria-selected",String(n)),n&&i.classList.add("notectl-font-picker__item--active");const r=document.createElement("span");r.className="notectl-font-picker__check",r.textContent=n?"✓":"",i.appendChild(r);const s=document.createElement("span");return s.className="notectl-font-picker__label",s.textContent=t,e&&a(s,"fontFamily",e),i.appendChild(s),i.addEventListener("mousedown",o),i}}export{m as FONT_LOCALE_EN,h as FontPlugin,f as loadFontLocale};
|
|
5
2
|
//# sourceMappingURL=font.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"font.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"font.mjs","sources":["../../src/editor/styles/font-select.ts","../../src/plugins/font/FontLocale.ts","../../src/plugins/font/FontPlugin.ts"],"sourcesContent":["/** Font picker toolbar combobox + popup styles. */\nexport const FONT_SELECT_CSS = `\n/* Font Select — Width overrides for combobox button */\n.notectl-toolbar-btn--font {\n\tmin-width: 100px;\n\tmax-width: 160px;\n}\n\n/* Font Picker Popup */\n.notectl-font-picker {\n\tmin-width: 200px;\n\tmax-height: 320px;\n\toverflow-y: auto;\n}\n\n.notectl-font-picker__list {\n\tpadding: 4px 0;\n}\n\n.notectl-font-picker__item {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\twidth: 100%;\n\tpadding: 7px 12px;\n\tborder: none;\n\tbackground: none;\n\tcursor: pointer;\n\tfont-size: 14px;\n\tcolor: var(--notectl-fg);\n\tline-height: 1.4;\n\ttext-align: start;\n\twhite-space: nowrap;\n\tfont-family: inherit;\n\ttransition: background 0.1s;\n}\n\n@media (hover: hover) {\n\t.notectl-font-picker__item:hover {\n\t\tbackground: var(--notectl-hover-bg);\n\t}\n}\n\n.notectl-font-picker__item--active {\n\tbackground: var(--notectl-active-bg);\n\tcolor: var(--notectl-primary-fg);\n}\n\n@media (hover: hover) {\n\t.notectl-font-picker__item--active:hover {\n\t\tbackground: var(--notectl-active-bg);\n\t}\n}\n\n.notectl-font-picker__check {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 16px;\n\tflex-shrink: 0;\n\tfont-size: 13px;\n\tfont-weight: 600;\n\tcolor: var(--notectl-primary-fg);\n}\n\n.notectl-font-picker__label {\n\tflex: 1;\n}\n\n.notectl-font-picker__separator {\n\theight: 1px;\n\tbackground: var(--notectl-border);\n\tmargin: 4px 8px;\n}\n`;\n","/** Locale interface and default English locale for the FontPlugin. */\n\n// --- Locale Interface ---\n\nexport interface FontLocale {\n\treadonly label: string;\n\treadonly tooltip: string;\n}\n\n// --- Default English Locale ---\n\nexport const FONT_LOCALE_EN: FontLocale = {\n\tlabel: 'Font',\n\ttooltip: 'Font Family',\n};\n\n// --- Lazy Locale Loader ---\n\nconst localeModules: Record<string, () => Promise<{ default: FontLocale }>> = import.meta.glob<{\n\tdefault: FontLocale;\n}>('./locales/*.ts', { eager: false });\n\nexport async function loadFontLocale(lang: string): Promise<FontLocale> {\n\tif (lang === 'en') return FONT_LOCALE_EN;\n\tconst loader = localeModules[`./locales/${lang}.ts`];\n\tif (!loader) return FONT_LOCALE_EN;\n\ttry {\n\t\tconst mod = await loader();\n\t\treturn mod.default;\n\t} catch {\n\t\treturn FONT_LOCALE_EN;\n\t}\n}\n","/**\n * FontPlugin: registers a font-family mark, a combobox-style toolbar selector\n * for font selection, and a developer-friendly API for registering custom fonts\n * (WOFF2, TTF, OTF).\n */\n\nimport {\n\tapplyAttributedMark,\n\tgetMarkAttrAtSelection,\n\tisAttributedMarkActive,\n\tremoveAttributedMark,\n} from '../../commands/AttributedMarkCommands.js';\nimport { FONT_SELECT_CSS } from '../../editor/styles/font-select.js';\nimport { LocaleServiceKey } from '../../i18n/LocaleService.js';\nimport { escapeHTML } from '../../model/HTMLUtils.js';\nimport type { HTMLExportContext } from '../../model/NodeSpec.js';\nimport { markType } from '../../model/TypeBrands.js';\nimport type { EditorState } from '../../state/EditorState.js';\nimport { getStyleNonceForNode, setStyleProperty } from '../../style/StyleRuntime.js';\nimport type { Plugin, PluginContext } from '../Plugin.js';\nimport { isValidCSSFontFamily } from '../shared/ColorValidation.js';\nimport type { PopupCloseOptions } from '../shared/PopupManager.js';\nimport { FONT_LOCALE_EN, type FontLocale, loadFontLocale } from './FontLocale.js';\n\n// --- Attribute Registry Augmentation ---\n\ndeclare module '../../model/AttrRegistry.js' {\n\tinterface MarkAttrRegistry {\n\t\tfont: { family: string };\n\t}\n}\n\n// --- Public Types ---\n\n/** Describes a single @font-face source. */\nexport interface FontFaceDescriptor {\n\t/** CSS `src` value, e.g. `\"url('/fonts/My.woff2') format('woff2')\"`. */\n\treadonly src: string;\n\t/** Font weight, e.g. `'400'` or `'300 700'` for variable fonts. */\n\treadonly weight?: string;\n\t/** Font style, e.g. `'normal'` or `'italic'`. */\n\treadonly style?: string;\n\t/** Font display strategy. Defaults to `'swap'`. */\n\treadonly display?: string;\n}\n\n/** Defines a font available in the editor. */\nexport interface FontDefinition {\n\t/** Display name shown in the toolbar dropdown. */\n\treadonly name: string;\n\t/** CSS `font-family` value, e.g. `\"'Fira Code', monospace\"`. */\n\treadonly family: string;\n\t/** Font category for grouping in the UI. */\n\treadonly category?: 'serif' | 'sans-serif' | 'monospace' | 'display' | 'handwriting';\n\t/**\n\t * Optional `@font-face` descriptors. When provided, the plugin\n\t * auto-injects the corresponding CSS rules into the document.\n\t */\n\treadonly fontFaces?: readonly FontFaceDescriptor[];\n}\n\n// --- Configuration ---\n\nexport interface FontConfig {\n\t/**\n\t * Fonts available in the editor. System fonts require no `fontFaces`.\n\t * Custom fonts with `fontFaces` get their `@font-face` rules auto-injected.\n\t *\n\t * Use `STARTER_FONTS` for a pre-configured set of fonts:\n\t * ```ts\n\t * new FontPlugin({ fonts: [...STARTER_FONTS] })\n\t * ```\n\t */\n\treadonly fonts: readonly FontDefinition[];\n\t/**\n\t * Name of the font that acts as the editor's default.\n\t * Selecting this font removes the mark (since the editor already uses it).\n\t * Defaults to the first font in the list.\n\t */\n\treadonly defaultFont?: string;\n\treadonly locale?: FontLocale;\n}\n\n// --- Plugin ---\n\nexport class FontPlugin implements Plugin {\n\treadonly id = 'font';\n\treadonly name = 'Font';\n\treadonly priority = 22;\n\n\tprivate readonly config: FontConfig;\n\tprivate locale!: FontLocale;\n\tprivate injectedStyleElement: HTMLStyleElement | null = null;\n\tprivate context: PluginContext | null = null;\n\n\tconstructor(config: FontConfig) {\n\t\tthis.config = config;\n\t}\n\n\tasync init(context: PluginContext): Promise<void> {\n\t\tif (this.config.locale) {\n\t\t\tthis.locale = this.config.locale;\n\t\t} else {\n\t\t\tconst service = context.getService(LocaleServiceKey);\n\t\t\tconst lang: string = service?.getLocale() ?? 'en';\n\t\t\tthis.locale = lang === 'en' ? FONT_LOCALE_EN : await loadFontLocale(lang);\n\t\t}\n\n\t\tcontext.registerStyleSheet(FONT_SELECT_CSS);\n\t\tthis.context = context;\n\t\tthis.registerMarkSpec(context);\n\t\tthis.registerCommands(context);\n\t\tthis.registerToolbarItem(context);\n\t\tthis.injectFontFaces();\n\t}\n\n\tdestroy(): void {\n\t\tthis.injectedStyleElement?.remove();\n\t\tthis.injectedStyleElement = null;\n\t\tthis.context = null;\n\t}\n\n\t// --- Schema ---\n\n\tprivate registerMarkSpec(context: PluginContext): void {\n\t\tcontext.registerMarkSpec({\n\t\t\ttype: 'font',\n\t\t\trank: 6,\n\t\t\tattrs: {\n\t\t\t\tfamily: { default: '' },\n\t\t\t},\n\t\t\ttoDOM(mark) {\n\t\t\t\tconst span: HTMLElement = document.createElement('span');\n\t\t\t\tconst family: string = mark.attrs?.family ?? '';\n\t\t\t\tif (family) {\n\t\t\t\t\tsetStyleProperty(span, 'fontFamily', family);\n\t\t\t\t}\n\t\t\t\treturn span;\n\t\t\t},\n\t\t\ttoHTMLString: (mark, content, ctx?: HTMLExportContext) => {\n\t\t\t\tconst family: string = String(mark.attrs?.family ?? '');\n\t\t\t\tif (!family || !isValidCSSFontFamily(family)) return content;\n\t\t\t\tconst decl: string = `font-family: ${escapeHTML(family)}`;\n\t\t\t\tconst attr: string = ctx?.styleAttr(decl) ?? ` style=\"${decl}\"`;\n\t\t\t\treturn `<span${attr}>${content}</span>`;\n\t\t\t},\n\t\t\ttoHTMLStyle: (mark) => {\n\t\t\t\tconst family: string = String(mark.attrs?.family ?? '');\n\t\t\t\tif (!family || !isValidCSSFontFamily(family)) return null;\n\t\t\t\treturn `font-family: ${escapeHTML(family)}`;\n\t\t\t},\n\t\t\tparseHTML: [\n\t\t\t\t{\n\t\t\t\t\ttag: 'span',\n\t\t\t\t\tgetAttrs: (el) => {\n\t\t\t\t\t\tconst family: string = el.style.fontFamily;\n\t\t\t\t\t\tif (!family) return false;\n\t\t\t\t\t\t// Browsers normalize CSS quotes to double-quotes;\n\t\t\t\t\t\t// our internal convention uses single-quotes.\n\t\t\t\t\t\tconst normalized: string = family.replace(/\"/g, \"'\");\n\t\t\t\t\t\treturn { family: normalized };\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tsanitize: { tags: ['span'] },\n\t\t});\n\t}\n\n\t// --- Commands ---\n\n\tprivate registerCommands(context: PluginContext): void {\n\t\tcontext.registerCommand('removeFont', () => {\n\t\t\tconst state: EditorState = context.getState();\n\t\t\treturn this.removeFont(context, state);\n\t\t});\n\n\t\tcontext.registerCommand('setFont', () => {\n\t\t\treturn false;\n\t\t});\n\t}\n\n\t// --- Toolbar ---\n\n\tprivate get defaultFont(): FontDefinition {\n\t\tif (this.config.defaultFont) {\n\t\t\tconst found: FontDefinition | undefined = this.config.fonts.find(\n\t\t\t\t(f) => f.name === this.config.defaultFont,\n\t\t\t);\n\t\t\tif (found) return found;\n\t\t}\n\t\tconst first: FontDefinition | undefined = this.config.fonts[0];\n\t\tif (!first) throw new Error('FontPlugin: fonts list is empty');\n\t\treturn first;\n\t}\n\n\tprivate registerToolbarItem(context: PluginContext): void {\n\t\tcontext.registerToolbarItem({\n\t\t\tid: 'font',\n\t\t\tgroup: 'format',\n\t\t\tlabel: this.locale.label,\n\t\t\ttooltip: this.locale.tooltip,\n\t\t\tcommand: 'removeFont',\n\t\t\tpopupType: 'combobox',\n\t\t\tgetLabel: (state: EditorState): string => this.resolveFontName(this.getActiveFont(state)),\n\t\t\trenderPopup: (container, ctx, onClose) => {\n\t\t\t\tthis.renderFontPopup(container, ctx, onClose);\n\t\t\t},\n\t\t\tisActive: (state) => this.isFontActive(state),\n\t\t});\n\t}\n\n\tprivate resolveFontName(family: string | null): string {\n\t\tif (!family) return this.defaultFont.name;\n\t\tconst match: FontDefinition | undefined = this.config.fonts.find((f) => f.family === family);\n\t\treturn match?.name ?? (family.split(',')[0] ?? '').trim().replace(/['\"]/g, '');\n\t}\n\n\t// --- State Queries ---\n\n\tprivate isFontActive(state: EditorState): boolean {\n\t\treturn isAttributedMarkActive(state, 'font');\n\t}\n\n\tgetActiveFont(state: EditorState): string | null {\n\t\treturn getMarkAttrAtSelection(state, 'font', (m) => m.attrs.family ?? null);\n\t}\n\n\t// --- Font Application ---\n\n\tapplyFont(context: PluginContext, state: EditorState, family: string): boolean {\n\t\tconst mark = { type: markType('font'), attrs: { family } };\n\t\tconst tr = applyAttributedMark(state, mark);\n\t\tif (!tr) return false;\n\n\t\tcontext.dispatch(tr);\n\t\treturn true;\n\t}\n\n\tprivate removeFont(context: PluginContext, state: EditorState): boolean {\n\t\tconst tr = removeAttributedMark(state, markType('font'));\n\t\tif (!tr) return false;\n\n\t\tcontext.dispatch(tr);\n\t\treturn true;\n\t}\n\n\t// --- @font-face Injection ---\n\n\tprivate injectFontFaces(): void {\n\t\tconst rules: string[] = [];\n\n\t\tfor (const font of this.config.fonts) {\n\t\t\tif (!font.fontFaces?.length) continue;\n\n\t\t\tfor (const face of font.fontFaces) {\n\t\t\t\tconst familyName: string = (font.family.split(',')[0] ?? '').trim().replace(/['\"]/g, '');\n\t\t\t\tconst declarations: string[] = [`font-family: '${familyName}'`, `src: ${face.src}`];\n\t\t\t\tif (face.weight) {\n\t\t\t\t\tdeclarations.push(`font-weight: ${face.weight}`);\n\t\t\t\t}\n\t\t\t\tif (face.style) {\n\t\t\t\t\tdeclarations.push(`font-style: ${face.style}`);\n\t\t\t\t}\n\t\t\t\tdeclarations.push(`font-display: ${face.display ?? 'swap'}`);\n\n\t\t\t\trules.push(`@font-face {\\n\\t${declarations.join(';\\n\\t')};\\n}`);\n\t\t\t}\n\t\t}\n\n\t\tif (rules.length === 0) return;\n\n\t\tconst style: HTMLStyleElement = document.createElement('style');\n\t\tstyle.setAttribute('data-notectl-fonts', '');\n\t\tconst nonce = this.context ? getStyleNonceForNode(this.context.getContainer()) : undefined;\n\t\tif (nonce) {\n\t\t\tstyle.setAttribute('nonce', nonce);\n\t\t}\n\t\tstyle.textContent = rules.join('\\n\\n');\n\t\tdocument.head.appendChild(style);\n\t\tthis.injectedStyleElement = style;\n\t}\n\n\t// --- Popup Rendering ---\n\n\tprivate renderFontPopup(\n\t\tcontainer: HTMLElement,\n\t\tcontext: PluginContext,\n\t\tonClose: (options?: PopupCloseOptions) => void,\n\t): void {\n\t\tcontainer.classList.add('notectl-font-picker');\n\n\t\tconst state: EditorState = context.getState();\n\t\tconst activeFont: string | null = this.getActiveFont(state);\n\t\tconst defaultFamily: string = this.defaultFont.family;\n\t\tconst contentElement: HTMLElement = context.getContainer();\n\n\t\tconst list: HTMLDivElement = document.createElement('div');\n\t\tlist.className = 'notectl-font-picker__list';\n\t\tlist.setAttribute('role', 'listbox');\n\t\tlist.setAttribute('aria-label', this.locale.label);\n\n\t\tfor (const font of this.config.fonts) {\n\t\t\tconst isDefault: boolean = font.family === defaultFamily;\n\t\t\tconst isActive: boolean = isDefault\n\t\t\t\t? !activeFont || activeFont === font.family\n\t\t\t\t: activeFont === font.family;\n\n\t\t\tconst item: HTMLButtonElement = this.createFontItem(\n\t\t\t\tfont.name,\n\t\t\t\tfont.family,\n\t\t\t\tisActive,\n\t\t\t\t(e: MouseEvent) => {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\tif (isDefault) {\n\t\t\t\t\t\tcontext.executeCommand('removeFont');\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.applyFont(context, context.getState(), font.family);\n\t\t\t\t\t}\n\t\t\t\t\tonClose({ restoreFocusTo: contentElement });\n\t\t\t\t},\n\t\t\t);\n\n\t\t\tif (font.category) {\n\t\t\t\titem.setAttribute('data-category', font.category);\n\t\t\t}\n\n\t\t\tlist.appendChild(item);\n\t\t}\n\n\t\tcontainer.appendChild(list);\n\t}\n\n\tprivate createFontItem(\n\t\tname: string,\n\t\tfamily: string,\n\t\tisActive: boolean,\n\t\thandler: (e: MouseEvent) => void,\n\t): HTMLButtonElement {\n\t\tconst item: HTMLButtonElement = document.createElement('button');\n\t\titem.type = 'button';\n\t\titem.className = 'notectl-font-picker__item';\n\t\titem.setAttribute('role', 'option');\n\t\titem.setAttribute('aria-selected', String(isActive));\n\n\t\tif (isActive) {\n\t\t\titem.classList.add('notectl-font-picker__item--active');\n\t\t}\n\n\t\t// Checkmark indicator\n\t\tconst check: HTMLSpanElement = document.createElement('span');\n\t\tcheck.className = 'notectl-font-picker__check';\n\t\tcheck.textContent = isActive ? '\\u2713' : '';\n\t\titem.appendChild(check);\n\n\t\t// Font name label (rendered in the font itself for preview)\n\t\tconst label: HTMLSpanElement = document.createElement('span');\n\t\tlabel.className = 'notectl-font-picker__label';\n\t\tlabel.textContent = name;\n\t\tif (family) {\n\t\t\tsetStyleProperty(label, 'fontFamily', family);\n\t\t}\n\t\titem.appendChild(label);\n\n\t\titem.addEventListener('mousedown', handler);\n\t\treturn item;\n\t}\n}\n"],"names":["FONT_LOCALE_EN","label","tooltip","localeModules","assign","import","async","loadFontLocale","lang","loader","default","FontPlugin","id","name","priority","config","locale","injectedStyleElement","context","constructor","this","init","service","getService","LocaleServiceKey","getLocale","registerStyleSheet","registerMarkSpec","registerCommands","registerToolbarItem","injectFontFaces","destroy","remove","type","rank","attrs","family","toDOM","mark","span","document","createElement","setStyleProperty","toHTMLString","content","ctx","String","isValidCSSFontFamily","decl","escapeHTML","styleAttr","toHTMLStyle","parseHTML","tag","getAttrs","el","style","fontFamily","replace","sanitize","tags","registerCommand","state","getState","removeFont","defaultFont","found","fonts","find","f","first","Error","group","command","popupType","getLabel","resolveFontName","getActiveFont","renderPopup","container","onClose","renderFontPopup","isActive","isFontActive","match","split","trim","isAttributedMarkActive","getMarkAttrAtSelection","m","applyFont","markType","tr","applyAttributedMark","dispatch","removeAttributedMark","rules","font","fontFaces","length","face","declarations","src","weight","push","display","join","setAttribute","nonce","getStyleNonceForNode","getContainer","textContent","head","appendChild","classList","add","activeFont","defaultFamily","contentElement","list","className","isDefault","item","createFontItem","e","preventDefault","stopPropagation","executeCommand","restoreFocusTo","category","handler","check","addEventListener"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Locale interface and default English locale for the GapCursorPlugin. */
|
|
2
|
+
export interface GapCursorLocale {
|
|
3
|
+
readonly gapCursorActive: string;
|
|
4
|
+
}
|
|
5
|
+
export declare const GAP_CURSOR_LOCALE_EN: GapCursorLocale;
|
|
6
|
+
export declare function loadGapCursorLocale(lang: string): Promise<GapCursorLocale>;
|
|
7
|
+
//# sourceMappingURL=GapCursorLocale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GapCursorLocale.d.ts","sourceRoot":"","sources":["../../../src/plugins/gap-cursor/GapCursorLocale.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAI3E,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACjC;AAID,eAAO,MAAM,oBAAoB,EAAE,eAElC,CAAC;AAOF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAUhF"}
|
|
@@ -6,10 +6,14 @@ export declare class GapCursorPlugin implements Plugin {
|
|
|
6
6
|
readonly name = "Gap Cursor";
|
|
7
7
|
readonly priority = 5;
|
|
8
8
|
private context;
|
|
9
|
-
private
|
|
10
|
-
|
|
9
|
+
private activeCursorBlockId;
|
|
10
|
+
private activeCursorSide;
|
|
11
|
+
private locale;
|
|
12
|
+
init(context: PluginContext): Promise<void>;
|
|
13
|
+
onReady(): void;
|
|
11
14
|
onStateChange(oldState: EditorState, newState: EditorState, _tr: Transaction): void;
|
|
12
15
|
destroy(): void;
|
|
13
|
-
private
|
|
16
|
+
private syncCursorClass;
|
|
17
|
+
private clearCursorClass;
|
|
14
18
|
}
|
|
15
19
|
//# sourceMappingURL=GapCursorPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GapCursorPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/gap-cursor/GapCursorPlugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"GapCursorPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/gap-cursor/GapCursorPlugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAmD1D,qBAAa,eAAgB,YAAW,MAAM;IAC7C,QAAQ,CAAC,EAAE,gBAAgB;IAC3B,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,KAAK;IAEtB,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,mBAAmB,CAAwB;IACnD,OAAO,CAAC,gBAAgB,CAAmC;IAC3D,OAAO,CAAC,MAAM,CAAyC;IAEjD,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjD,OAAO,IAAI,IAAI;IAKf,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI;IAUnF,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,gBAAgB;CAaxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/ar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"de.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/de.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"es.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/es.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fr.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/fr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hi.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/hi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pt.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/pt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ru.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/ru.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zh.d.ts","sourceRoot":"","sources":["../../../../src/plugins/gap-cursor/locales/zh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,QAAA,MAAM,MAAM,EAAE,eAGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|