@notectl/core 1.6.1 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/README.md +2 -2
  2. package/dist/chunks/{AttrRegistry-I-VdmRnN.mjs → AttrRegistry-Ci0qAvtS.mjs} +2 -2
  3. package/dist/chunks/{AttrRegistry-I-VdmRnN.mjs.map → AttrRegistry-Ci0qAvtS.mjs.map} +1 -1
  4. package/dist/chunks/AttributedMarkCommands-BETuHXj8.mjs +58 -0
  5. package/dist/chunks/AttributedMarkCommands-BETuHXj8.mjs.map +1 -0
  6. package/dist/chunks/{CaretNavigation-CAJXoaae.mjs → CaretNavigation-qLfeL0So.mjs} +56 -56
  7. package/dist/chunks/{CaretNavigation-CAJXoaae.mjs.map → CaretNavigation-qLfeL0So.mjs.map} +1 -1
  8. package/dist/chunks/ColorGrid-BBkN0AOb.mjs +80 -0
  9. package/dist/chunks/ColorGrid-BBkN0AOb.mjs.map +1 -0
  10. package/dist/chunks/ColorPickerPopup-D3ysvOH-.mjs +37 -0
  11. package/dist/chunks/ColorPickerPopup-D3ysvOH-.mjs.map +1 -0
  12. package/dist/chunks/ColorValidation-CV4f1wu6.mjs +39 -0
  13. package/dist/chunks/ColorValidation-CV4f1wu6.mjs.map +1 -0
  14. package/dist/chunks/{Document-CuwE73FF.mjs → Document-DfZ1NOjs.mjs} +15 -15
  15. package/dist/chunks/{Document-CuwE73FF.mjs.map → Document-DfZ1NOjs.mjs.map} +1 -1
  16. package/dist/chunks/MarkCommands-uybmkw9l.mjs +94 -0
  17. package/dist/chunks/MarkCommands-uybmkw9l.mjs.map +1 -0
  18. package/dist/chunks/{NavigationUtils-CyW0Vo8A.mjs → NavigationUtils-Cspt2ZrK.mjs} +3 -3
  19. package/dist/chunks/{NavigationUtils-CyW0Vo8A.mjs.map → NavigationUtils-Cspt2ZrK.mjs.map} +1 -1
  20. package/dist/chunks/{NodeResolver-B-wzthAQ.mjs → NodeResolver-CzLmmrph.mjs} +2 -2
  21. package/dist/chunks/{NodeResolver-B-wzthAQ.mjs.map → NodeResolver-CzLmmrph.mjs.map} +1 -1
  22. package/dist/chunks/PopupPositioning-Cn6L_mO2.mjs +30 -0
  23. package/dist/chunks/PopupPositioning-Cn6L_mO2.mjs.map +1 -0
  24. package/dist/chunks/RangeIterator-Bye0UtbY.mjs +16 -0
  25. package/dist/chunks/RangeIterator-Bye0UtbY.mjs.map +1 -0
  26. package/dist/chunks/{Selection-DmFDwiPJ.mjs → Selection-BRTab5hO.mjs} +7 -7
  27. package/dist/chunks/{Selection-DmFDwiPJ.mjs.map → Selection-BRTab5hO.mjs.map} +1 -1
  28. package/dist/chunks/ToolbarItem-BpZggUGo.mjs.map +1 -1
  29. package/dist/chunks/{ToolbarKeyboardNav-B32OMv8r.mjs → ToolbarKeyboardNav-DhpL8zNV.mjs} +3 -3
  30. package/dist/chunks/{ToolbarKeyboardNav-B32OMv8r.mjs.map → ToolbarKeyboardNav-DhpL8zNV.mjs.map} +1 -1
  31. package/dist/chunks/{ToolbarPlugin-B6JETWaw.mjs → ToolbarPlugin-B7oJRzpl.mjs} +339 -127
  32. package/dist/chunks/ToolbarPlugin-B7oJRzpl.mjs.map +1 -0
  33. package/dist/chunks/{index-CPyHuEzh.mjs → index-Bt_d4IqB.mjs} +12 -12
  34. package/dist/chunks/{index-CPyHuEzh.mjs.map → index-Bt_d4IqB.mjs.map} +1 -1
  35. package/dist/chunks/{index-BigJ0z6n.mjs → index-CFJFD4lF.mjs} +8 -8
  36. package/dist/chunks/{index-BigJ0z6n.mjs.map → index-CFJFD4lF.mjs.map} +1 -1
  37. package/dist/chunks/{index-D67mP19g.mjs → index-CFPP456m.mjs} +13 -13
  38. package/dist/chunks/{index-D67mP19g.mjs.map → index-CFPP456m.mjs.map} +1 -1
  39. package/dist/chunks/{index-DQryjfJs.mjs → index-CH1r7DL-.mjs} +259 -300
  40. package/dist/chunks/index-CH1r7DL-.mjs.map +1 -0
  41. package/dist/chunks/{index-tBDVaSjG.mjs → index-CfyS_pgH.mjs} +28 -21
  42. package/dist/chunks/index-CfyS_pgH.mjs.map +1 -0
  43. package/dist/chunks/{index-DIAXWwgJ.mjs → index-Ckzqtn5D.mjs} +17 -14
  44. package/dist/chunks/{index-DIAXWwgJ.mjs.map → index-Ckzqtn5D.mjs.map} +1 -1
  45. package/dist/chunks/{index-BDMP86F4.mjs → index-CrKz_IEn.mjs} +35 -35
  46. package/dist/chunks/{index-BDMP86F4.mjs.map → index-CrKz_IEn.mjs.map} +1 -1
  47. package/dist/chunks/{index-B0UFAfyb.mjs → index-DGKQhSAl.mjs} +5 -5
  48. package/dist/chunks/{index-B0UFAfyb.mjs.map → index-DGKQhSAl.mjs.map} +1 -1
  49. package/dist/chunks/{index-83QoUENW.mjs → index-DIvHQtE2.mjs} +12 -9
  50. package/dist/chunks/{index-83QoUENW.mjs.map → index-DIvHQtE2.mjs.map} +1 -1
  51. package/dist/chunks/index-DayTn6Re.mjs +166 -0
  52. package/dist/chunks/index-DayTn6Re.mjs.map +1 -0
  53. package/dist/chunks/index-Deag_lVi.mjs +121 -0
  54. package/dist/chunks/index-Deag_lVi.mjs.map +1 -0
  55. package/dist/chunks/{index--z_Txzej.mjs → index-DmuuFS5D.mjs} +6 -6
  56. package/dist/chunks/{index--z_Txzej.mjs.map → index-DmuuFS5D.mjs.map} +1 -1
  57. package/dist/chunks/{index-DRZwd-1W.mjs → index-DoCvDkfj.mjs} +79 -96
  58. package/dist/chunks/index-DoCvDkfj.mjs.map +1 -0
  59. package/dist/chunks/index-DuRNETFv.mjs +296 -0
  60. package/dist/chunks/index-DuRNETFv.mjs.map +1 -0
  61. package/dist/chunks/{index-CPjf45-o.mjs → index-Dum8yE_t.mjs} +14 -14
  62. package/dist/chunks/{index-CPjf45-o.mjs.map → index-Dum8yE_t.mjs.map} +1 -1
  63. package/dist/chunks/{index-BWXkaC2Z.mjs → index-Dy6SllXW.mjs} +53 -65
  64. package/dist/chunks/index-Dy6SllXW.mjs.map +1 -0
  65. package/dist/chunks/{index-D8tbbW97.mjs → index-E7OgN7hM.mjs} +2 -2
  66. package/dist/chunks/{index-D8tbbW97.mjs.map → index-E7OgN7hM.mjs.map} +1 -1
  67. package/dist/chunks/{index-D4GKlc-A.mjs → index-yhz2qeeh.mjs} +224 -222
  68. package/dist/chunks/index-yhz2qeeh.mjs.map +1 -0
  69. package/dist/commands/AttributedMarkCommands.d.ts +46 -0
  70. package/dist/commands/AttributedMarkCommands.d.ts.map +1 -0
  71. package/dist/commands/CommandHelpers.d.ts +21 -0
  72. package/dist/commands/CommandHelpers.d.ts.map +1 -0
  73. package/dist/commands/Commands.d.ts +2 -8
  74. package/dist/commands/Commands.d.ts.map +1 -1
  75. package/dist/commands/DeleteCommands.d.ts.map +1 -1
  76. package/dist/commands/GapCursorCommands.d.ts.map +1 -1
  77. package/dist/commands/NodeSelectionCommands.d.ts.map +1 -1
  78. package/dist/commands/PasteCommand.d.ts.map +1 -1
  79. package/dist/commands/RangeIterator.d.ts +10 -0
  80. package/dist/commands/RangeIterator.d.ts.map +1 -0
  81. package/dist/editor/DocumentParser.d.ts.map +1 -1
  82. package/dist/editor/DocumentSerializer.d.ts +2 -0
  83. package/dist/editor/DocumentSerializer.d.ts.map +1 -1
  84. package/dist/editor/MarkSerializer.d.ts +11 -0
  85. package/dist/editor/MarkSerializer.d.ts.map +1 -0
  86. package/dist/editor/NotectlEditor.d.ts +6 -3
  87. package/dist/editor/NotectlEditor.d.ts.map +1 -1
  88. package/dist/editor/PaperLayoutController.d.ts +2 -0
  89. package/dist/editor/PaperLayoutController.d.ts.map +1 -1
  90. package/dist/editor/styles/font-select.d.ts +1 -1
  91. package/dist/editor/styles/font-select.d.ts.map +1 -1
  92. package/dist/editor/styles/font-size-select.d.ts +1 -1
  93. package/dist/editor/styles/font-size-select.d.ts.map +1 -1
  94. package/dist/editor/styles/heading-select.d.ts +1 -1
  95. package/dist/editor/styles/heading-select.d.ts.map +1 -1
  96. package/dist/editor/styles/toolbar.d.ts +1 -1
  97. package/dist/editor/styles/toolbar.d.ts.map +1 -1
  98. package/dist/index.d.ts +11 -2
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/input/ClipboardHandler.d.ts +0 -2
  101. package/dist/input/ClipboardHandler.d.ts.map +1 -1
  102. package/dist/model/MarkSpec.d.ts +6 -0
  103. package/dist/model/MarkSpec.d.ts.map +1 -1
  104. package/dist/notectl-core.mjs +2245 -2085
  105. package/dist/notectl-core.mjs.map +1 -1
  106. package/dist/notectl-core.umd.js +5568 -5345
  107. package/dist/notectl-core.umd.js.map +1 -1
  108. package/dist/plugins/PluginManager.d.ts +2 -0
  109. package/dist/plugins/PluginManager.d.ts.map +1 -1
  110. package/dist/plugins/alignment.mjs +3 -3
  111. package/dist/plugins/blockquote.mjs +2 -2
  112. package/dist/plugins/caret-navigation.mjs +1 -1
  113. package/dist/plugins/code-block.mjs +3 -3
  114. package/dist/plugins/font/FontPlugin.d.ts +0 -6
  115. package/dist/plugins/font/FontPlugin.d.ts.map +1 -1
  116. package/dist/plugins/font-size/FontSizeOperations.d.ts.map +1 -1
  117. package/dist/plugins/font-size/FontSizePlugin.d.ts +0 -5
  118. package/dist/plugins/font-size/FontSizePlugin.d.ts.map +1 -1
  119. package/dist/plugins/font-size.mjs +2 -2
  120. package/dist/plugins/font.mjs +2 -2
  121. package/dist/plugins/gap-cursor.mjs +7 -7
  122. package/dist/plugins/hard-break.mjs +2 -25
  123. package/dist/plugins/hard-break.mjs.map +1 -1
  124. package/dist/plugins/heading/HeadingBlockTypePicker.d.ts +1 -7
  125. package/dist/plugins/heading/HeadingBlockTypePicker.d.ts.map +1 -1
  126. package/dist/plugins/heading/HeadingPlugin.d.ts +0 -6
  127. package/dist/plugins/heading/HeadingPlugin.d.ts.map +1 -1
  128. package/dist/plugins/heading.mjs +2 -2
  129. package/dist/plugins/highlight/HighlightPlugin.d.ts.map +1 -1
  130. package/dist/plugins/highlight.mjs +2 -2
  131. package/dist/plugins/horizontal-rule.mjs +2 -2
  132. package/dist/plugins/image/ImagePlugin.d.ts.map +1 -1
  133. package/dist/plugins/image.mjs +3 -3
  134. package/dist/plugins/link/LinkPlugin.d.ts.map +1 -1
  135. package/dist/plugins/link.mjs +2 -2
  136. package/dist/plugins/list/ListPlugin.d.ts.map +1 -1
  137. package/dist/plugins/list.mjs +2 -2
  138. package/dist/plugins/shared/ColorGrid.d.ts +25 -0
  139. package/dist/plugins/shared/ColorGrid.d.ts.map +1 -0
  140. package/dist/plugins/shared/ColorMarkOperations.d.ts.map +1 -1
  141. package/dist/plugins/shared/ColorPickerPopup.d.ts.map +1 -1
  142. package/dist/plugins/shared/ColorValidation.d.ts +13 -2
  143. package/dist/plugins/shared/ColorValidation.d.ts.map +1 -1
  144. package/dist/plugins/shared/PopupKeyboardPatterns.d.ts +43 -0
  145. package/dist/plugins/shared/PopupKeyboardPatterns.d.ts.map +1 -0
  146. package/dist/plugins/shared/PopupManager.d.ts +45 -0
  147. package/dist/plugins/shared/PopupManager.d.ts.map +1 -0
  148. package/dist/plugins/shared/PopupPositioning.d.ts +21 -0
  149. package/dist/plugins/shared/PopupPositioning.d.ts.map +1 -0
  150. package/dist/plugins/strikethrough.mjs +2 -2
  151. package/dist/plugins/super-sub.mjs +2 -2
  152. package/dist/plugins/table/TableBorderColor.d.ts.map +1 -1
  153. package/dist/plugins/table/TableContextMenu.d.ts +2 -1
  154. package/dist/plugins/table/TableContextMenu.d.ts.map +1 -1
  155. package/dist/plugins/table.mjs +10 -10
  156. package/dist/plugins/text-color/TextColorPlugin.d.ts.map +1 -1
  157. package/dist/plugins/text-color.mjs +2 -2
  158. package/dist/plugins/text-formatting.mjs +1 -1
  159. package/dist/plugins/toolbar/ToolbarItem.d.ts +11 -2
  160. package/dist/plugins/toolbar/ToolbarItem.d.ts.map +1 -1
  161. package/dist/plugins/toolbar/ToolbarOverflowController.d.ts +5 -1
  162. package/dist/plugins/toolbar/ToolbarOverflowController.d.ts.map +1 -1
  163. package/dist/plugins/toolbar/ToolbarPlugin.d.ts +1 -0
  164. package/dist/plugins/toolbar/ToolbarPlugin.d.ts.map +1 -1
  165. package/dist/plugins/toolbar/ToolbarPopupController.d.ts +9 -1
  166. package/dist/plugins/toolbar/ToolbarPopupController.d.ts.map +1 -1
  167. package/dist/plugins/toolbar/index.d.ts +1 -1
  168. package/dist/plugins/toolbar/index.d.ts.map +1 -1
  169. package/dist/plugins/toolbar.mjs +1 -1
  170. package/dist/presets/FullPreset.d.ts +16 -0
  171. package/dist/presets/FullPreset.d.ts.map +1 -0
  172. package/dist/presets/MinimalPreset.d.ts +7 -0
  173. package/dist/presets/MinimalPreset.d.ts.map +1 -0
  174. package/dist/presets/PresetTypes.d.ts +50 -0
  175. package/dist/presets/PresetTypes.d.ts.map +1 -0
  176. package/dist/state/BlockTreeOps.d.ts +21 -0
  177. package/dist/state/BlockTreeOps.d.ts.map +1 -0
  178. package/dist/state/InlineContentOps.d.ts +37 -0
  179. package/dist/state/InlineContentOps.d.ts.map +1 -0
  180. package/dist/state/StepApplication.d.ts.map +1 -1
  181. package/dist/test/PluginTestUtils.d.ts +4 -0
  182. package/dist/test/PluginTestUtils.d.ts.map +1 -1
  183. package/package.json +2 -2
  184. package/dist/chunks/ColorNames-BdsHwA2f.mjs +0 -59
  185. package/dist/chunks/ColorNames-BdsHwA2f.mjs.map +0 -1
  186. package/dist/chunks/ColorPickerPopup-xL8ZUfpB.mjs +0 -125
  187. package/dist/chunks/ColorPickerPopup-xL8ZUfpB.mjs.map +0 -1
  188. package/dist/chunks/Commands-CicwYoTQ.mjs +0 -286
  189. package/dist/chunks/Commands-CicwYoTQ.mjs.map +0 -1
  190. package/dist/chunks/MarkCommands-CC37WA7Z.mjs +0 -94
  191. package/dist/chunks/MarkCommands-CC37WA7Z.mjs.map +0 -1
  192. package/dist/chunks/ToolbarPlugin-B6JETWaw.mjs.map +0 -1
  193. package/dist/chunks/index-BWXkaC2Z.mjs.map +0 -1
  194. package/dist/chunks/index-D4GKlc-A.mjs.map +0 -1
  195. package/dist/chunks/index-DQryjfJs.mjs.map +0 -1
  196. package/dist/chunks/index-DRZwd-1W.mjs.map +0 -1
  197. package/dist/chunks/index-DUC1X43Z.mjs +0 -209
  198. package/dist/chunks/index-DUC1X43Z.mjs.map +0 -1
  199. package/dist/chunks/index-DipAT_Q9.mjs +0 -191
  200. package/dist/chunks/index-DipAT_Q9.mjs.map +0 -1
  201. package/dist/chunks/index-tBDVaSjG.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
- import { b } from "../chunks/index-B0UFAfyb.mjs";
1
+ import { S } from "../chunks/index-DGKQhSAl.mjs";
2
2
  export {
3
- b as StrikethroughPlugin
3
+ S as StrikethroughPlugin
4
4
  };
5
5
  //# sourceMappingURL=strikethrough.mjs.map
@@ -1,5 +1,5 @@
1
- import { b } from "../chunks/index-BDMP86F4.mjs";
1
+ import { S } from "../chunks/index-CrKz_IEn.mjs";
2
2
  export {
3
- b as SuperSubPlugin
3
+ S as SuperSubPlugin
4
4
  };
5
5
  //# sourceMappingURL=super-sub.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableBorderColor.d.ts","sourceRoot":"","sources":["../../../src/plugins/table/TableBorderColor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIrE,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAqBjD,CAAC;AAYF;;;GAGG;AACH,wBAAgB,8BAA8B,CAC7C,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,MAAM,GAAG,SAAS,GAC7B,WAAW,GAAG,IAAI,CA2BpB;AAID,iEAAiE;AACjE,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,WAA6B,GACnC,OAAO,CAaT;AAED,gDAAgD;AAChD,wBAAgB,qBAAqB,CACpC,OAAO,EAAE,aAAa,EACtB,MAAM,GAAE,WAA6B,GACnC,OAAO,CAYT;AAED,wDAAwD;AACxD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI5F;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,IAAI,EACnB,MAAM,GAAE,WAA6B,GACnC,IAAI,CA+JN"}
1
+ {"version":3,"file":"TableBorderColor.d.ts","sourceRoot":"","sources":["../../../src/plugins/table/TableBorderColor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIrE,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAqBjD,CAAC;AAMF;;;GAGG;AACH,wBAAgB,8BAA8B,CAC7C,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,MAAM,GAAG,SAAS,GAC7B,WAAW,GAAG,IAAI,CA2BpB;AAID,iEAAiE;AACjE,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,WAA6B,GACnC,OAAO,CAaT;AAED,gDAAgD;AAChD,wBAAgB,qBAAqB,CACpC,OAAO,EAAE,aAAa,EACtB,MAAM,GAAE,WAA6B,GACnC,OAAO,CAYT;AAED,wDAAwD;AACxD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI5F;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,IAAI,EACnB,MAAM,GAAE,WAA6B,GACnC,IAAI,CA0DN"}
@@ -1,5 +1,6 @@
1
1
  import { BlockId } from '../../model/TypeBrands.js';
2
2
  import { PluginContext } from '../Plugin.js';
3
+ import { PopupManager } from '../shared/PopupManager.js';
3
4
  import { TableLocale } from './TableLocale.js';
4
5
  export interface TableContextMenuHandle {
5
6
  isOpen(): boolean;
@@ -10,5 +11,5 @@ export interface TableContextMenuHandle {
10
11
  * Creates and displays an accessible context menu for table operations.
11
12
  * Attaches to the provided container (shadow root or editor container).
12
13
  */
13
- export declare function createTableContextMenu(container: HTMLElement, context: PluginContext, tableId: BlockId, anchorRect: DOMRect, onClosed?: () => void, locale?: TableLocale): TableContextMenuHandle;
14
+ export declare function createTableContextMenu(container: HTMLElement, context: PluginContext, tableId: BlockId, anchorRect: DOMRect, onClosed?: () => void, locale?: TableLocale, popupManager?: PopupManager): TableContextMenuHandle;
14
15
  //# sourceMappingURL=TableContextMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableContextMenu.d.ts","sourceRoot":"","sources":["../../../src/plugins/table/TableContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIrE,MAAM,WAAW,sBAAsB;IACtC,MAAM,IAAI,OAAO,CAAC;IAClB,KAAK,IAAI,IAAI,CAAC;IACd,OAAO,IAAI,IAAI,CAAC;CAChB;AAyCD;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,OAAO,EACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,EACrB,MAAM,GAAE,WAA6B,GACnC,sBAAsB,CAgQxB"}
1
+ {"version":3,"file":"TableContextMenu.d.ts","sourceRoot":"","sources":["../../../src/plugins/table/TableContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIrE,MAAM,WAAW,sBAAsB;IACtC,MAAM,IAAI,OAAO,CAAC;IAClB,KAAK,IAAI,IAAI,CAAC;IACd,OAAO,IAAI,IAAI,CAAC;CAChB;AAyCD;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,OAAO,EACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,EACrB,MAAM,GAAE,WAA6B,EACrC,YAAY,CAAC,EAAE,YAAY,GACzB,sBAAsB,CA2RxB"}
@@ -1,15 +1,15 @@
1
- import { B, a, b, c, d, e, f, g, h, i, j, m, k, n, l, r, s } from "../chunks/index-DQryjfJs.mjs";
1
+ import { B, b, c, d, e, f, g, h, i, T, j, m, k, n, l, r, s } from "../chunks/index-CH1r7DL-.mjs";
2
2
  export {
3
3
  B as BORDER_COLOR_PALETTE,
4
- a as TABLE_LOCALE_AR,
5
- b as TABLE_LOCALE_DE,
6
- c as TABLE_LOCALE_EN,
7
- d as TABLE_LOCALE_ES,
8
- e as TABLE_LOCALE_FR,
9
- f as TABLE_LOCALE_HI,
10
- g as TABLE_LOCALE_RU,
11
- h as TABLE_LOCALE_ZH,
12
- i as TablePlugin,
4
+ b as TABLE_LOCALE_AR,
5
+ c as TABLE_LOCALE_DE,
6
+ d as TABLE_LOCALE_EN,
7
+ e as TABLE_LOCALE_ES,
8
+ f as TABLE_LOCALE_FR,
9
+ g as TABLE_LOCALE_HI,
10
+ h as TABLE_LOCALE_RU,
11
+ i as TABLE_LOCALE_ZH,
12
+ T as TablePlugin,
13
13
  j as TableSelectionServiceKey,
14
14
  m as createTableContextMenu,
15
15
  k as findTableContext,
@@ -1 +1 @@
1
- {"version":3,"file":"TextColorPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/text-color/TextColorPlugin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI1D,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIhF,OAAO,QAAQ,6BAA6B,CAAC;IAC5C,UAAU,gBAAgB;QACzB,SAAS,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7B;CACD;AAID,MAAM,WAAW,eAAe;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;CAClC;AAsFD,qBAAa,eAAgB,YAAW,MAAM;IAC7C,QAAQ,CAAC,EAAE,eAAe;IAC1B,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAmB;gBAErB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAK7C,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IASlC,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;CAoC3B"}
1
+ {"version":3,"file":"TextColorPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/text-color/TextColorPlugin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI1D,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIhF,OAAO,QAAQ,6BAA6B,CAAC;IAC5C,UAAU,gBAAgB;QACzB,SAAS,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7B;CACD;AAID,MAAM,WAAW,eAAe;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;CAClC;AAsFD,qBAAa,eAAgB,YAAW,MAAM;IAC7C,QAAQ,CAAC,EAAE,eAAe;IAC1B,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAmB;gBAErB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAK7C,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IASlC,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;CAoC3B"}
@@ -1,5 +1,5 @@
1
- import { b } from "../chunks/index-DIAXWwgJ.mjs";
1
+ import { T } from "../chunks/index-Ckzqtn5D.mjs";
2
2
  export {
3
- b as TextColorPlugin
3
+ T as TextColorPlugin
4
4
  };
5
5
  //# sourceMappingURL=text-color.mjs.map
@@ -1,4 +1,4 @@
1
- import { T } from "../chunks/index-D8tbbW97.mjs";
1
+ import { T } from "../chunks/index-E7OgN7hM.mjs";
2
2
  export {
3
3
  T as TextFormattingPlugin
4
4
  };
@@ -13,7 +13,7 @@ export interface DropdownConfig {
13
13
  }[];
14
14
  }
15
15
  export type ToolbarGroup = 'format' | 'block' | 'insert' | (string & {});
16
- export type PopupType = 'gridPicker' | 'dropdown' | 'custom';
16
+ export type PopupType = 'gridPicker' | 'dropdown' | 'custom' | 'combobox';
17
17
  interface ToolbarItemBase {
18
18
  readonly id: string;
19
19
  /** Grouping key: 'format' | 'insert' | 'block' or custom. */
@@ -53,7 +53,16 @@ interface ToolbarItemCustomPopup extends ToolbarItemBase {
53
53
  readonly popupType: 'custom';
54
54
  renderPopup(container: HTMLElement, context: PluginContext, onClose: () => void): void;
55
55
  }
56
- export type ToolbarItem = ToolbarItemNoPopup | ToolbarItemGridPicker | ToolbarItemDropdown | ToolbarItemCustomPopup;
56
+ export interface ToolbarItemCombobox extends Omit<ToolbarItemBase, 'icon'> {
57
+ readonly popupType: 'combobox';
58
+ /** Optional icon — combobox items typically display a text label instead. */
59
+ readonly icon?: string;
60
+ /** Pure function returning the current label text. Called on every state change. */
61
+ getLabel(state: EditorState): string;
62
+ /** Renders the popup content when the combobox is opened. */
63
+ renderPopup(container: HTMLElement, context: PluginContext, onClose: () => void): void;
64
+ }
65
+ export type ToolbarItem = ToolbarItemNoPopup | ToolbarItemGridPicker | ToolbarItemDropdown | ToolbarItemCustomPopup | ToolbarItemCombobox;
57
66
  /**
58
67
  * Formats a keymap binding string into a human-readable shortcut,
59
68
  * using platform-appropriate modifier symbols (⌘ on Mac, Ctrl on others).
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarItem.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarItem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7E;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACzE,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7D,UAAU,eAAe;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC;IACvC,SAAS,CAAC,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC;CACxC;AAED,UAAU,kBAAmB,SAAQ,eAAe;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,UAAU,qBAAsB,SAAQ,eAAe;IACtD,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;CACvC;AAED,UAAU,mBAAoB,SAAQ,eAAe;IACpD,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;CACrC;AAED,UAAU,sBAAuB,SAAQ,eAAe;IACvD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC7B,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACvF;AAED,MAAM,MAAM,WAAW,GACpB,kBAAkB,GAClB,qBAAqB,GACrB,mBAAmB,GACnB,sBAAsB,CAAC;AAE1B;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAStD"}
1
+ {"version":3,"file":"ToolbarItem.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarItem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7E;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACzE,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE1E,UAAU,eAAe;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC;IACvC,SAAS,CAAC,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC;CACxC;AAED,UAAU,kBAAmB,SAAQ,eAAe;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,UAAU,qBAAsB,SAAQ,eAAe;IACtD,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;CACvC;AAED,UAAU,mBAAoB,SAAQ,eAAe;IACpD,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;CACrC;AAED,UAAU,sBAAuB,SAAQ,eAAe;IACvD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC7B,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACvF;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;IACzE,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAAC;IACrC,6DAA6D;IAC7D,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACvF;AAED,MAAM,MAAM,WAAW,GACpB,kBAAkB,GAClB,qBAAqB,GACrB,mBAAmB,GACnB,sBAAsB,GACtB,mBAAmB,CAAC;AAEvB;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAStD"}
@@ -1,5 +1,6 @@
1
1
  import { EditorState } from '../../state/EditorState.js';
2
2
  import { PluginContext } from '../Plugin.js';
3
+ import { PopupManager } from '../shared/PopupManager.js';
3
4
  import { ToolbarItem } from './ToolbarItem.js';
4
5
  type OnOverflowChange = (visibleButtons: readonly HTMLButtonElement[], overflowButton: HTMLButtonElement | null) => void;
5
6
  type OnItemActivated = (overflowButton: HTMLButtonElement, item: ToolbarItem) => void;
@@ -10,6 +11,7 @@ export interface OverflowControllerConfig {
10
11
  readonly onOverflowChange: OnOverflowChange;
11
12
  readonly onItemActivated: OnItemActivated;
12
13
  readonly getActiveElement: () => Element | null;
14
+ readonly popupManager?: PopupManager;
13
15
  }
14
16
  export declare class ToolbarOverflowController {
15
17
  private readonly toolbar;
@@ -18,9 +20,11 @@ export declare class ToolbarOverflowController {
18
20
  private readonly onItemActivated;
19
21
  private readonly getActiveElement;
20
22
  private readonly ariaLabel;
23
+ private readonly popupManager;
21
24
  private entries;
22
25
  private overflowButton;
23
26
  private overflowDropdown;
27
+ private overflowHandle;
24
28
  private overflowEntries;
25
29
  private resizeObserver;
26
30
  private closeHandler;
@@ -36,6 +40,7 @@ export declare class ToolbarOverflowController {
36
40
  updateItemStates(state: EditorState): void;
37
41
  /** Cleans up ResizeObserver, DOM elements, and event listeners. */
38
42
  destroy(): void;
43
+ private measureChildWidths;
39
44
  private measureAvailableWidth;
40
45
  private resetVisibility;
41
46
  private setOverflowButtonVisible;
@@ -44,7 +49,6 @@ export declare class ToolbarOverflowController {
44
49
  private openDropdown;
45
50
  private renderDropdownItems;
46
51
  private positionDropdown;
47
- private appendToRoot;
48
52
  private registerCloseHandler;
49
53
  private closeDropdown;
50
54
  private activateOverflowItem;
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarOverflowController.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarOverflowController.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,KAAK,gBAAgB,GAAG,CACvB,cAAc,EAAE,SAAS,iBAAiB,EAAE,EAC5C,cAAc,EAAE,iBAAiB,GAAG,IAAI,KACpC,IAAI,CAAC;AAEV,KAAK,eAAe,GAAG,CAAC,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;AAEtF,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC;CAChD;AAcD,qBAAa,yBAAyB;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,YAAY,CAA0C;gBAElD,MAAM,EAAE,wBAAwB;IAY5C,8EAA8E;IAC9E,MAAM,CAAC,OAAO,EAAE,SAAS;QAAE,OAAO,EAAE,iBAAiB,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,EAAE,GAAG,IAAI;IAKnF,6EAA6E;IAC7E,WAAW,IAAI,IAAI;IA0DnB,8EAA8E;IAC9E,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAqB1C,mEAAmE;IACnE,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,YAAY;IAuBpB,OAAO,CAAC,mBAAmB;IAuC3B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,qBAAqB;IA8C7B,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,YAAY;CAMpB"}
1
+ {"version":3,"file":"ToolbarOverflowController.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarOverflowController.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,KAAK,gBAAgB,GAAG,CACvB,cAAc,EAAE,SAAS,iBAAiB,EAAE,EAC5C,cAAc,EAAE,iBAAiB,GAAG,IAAI,KACpC,IAAI,CAAC;AAEV,KAAK,eAAe,GAAG,CAAC,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;AAEtF,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACrC;AAcD,qBAAa,yBAAyB;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAEnD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,YAAY,CAA0C;gBAElD,MAAM,EAAE,wBAAwB;IAa5C,8EAA8E;IAC9E,MAAM,CAAC,OAAO,EAAE,SAAS;QAAE,OAAO,EAAE,iBAAiB,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,EAAE,GAAG,IAAI;IAKnF,6EAA6E;IAC7E,WAAW,IAAI,IAAI;IA8DnB,8EAA8E;IAC9E,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IA8B1C,mEAAmE;IACnE,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,YAAY;IA+CpB,OAAO,CAAC,mBAAmB;IA4C3B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,qBAAqB;IA8C7B,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,YAAY;CAMpB"}
@@ -30,6 +30,7 @@ export declare class ToolbarPlugin implements Plugin {
30
30
  private focusedIndex;
31
31
  private tooltip;
32
32
  private popupController;
33
+ private popupManager;
33
34
  private overflowController;
34
35
  private visibleElements;
35
36
  private locale;
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarPlugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AASxE,OAAO,EAEN,KAAK,uBAAuB,IAAI,2BAA2B,EAC3D,MAAM,8BAA8B,CAAC;AAQtC,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,2BAA2B,CAAC;CAChD;AAID,MAAM,WAAW,iBAAiB;IACjC,sEAAsE;IACtE,OAAO,IAAI,IAAI,CAAC;IAChB,+CAA+C;IAC/C,UAAU,IAAI,IAAI,CAAC;CACnB;AAED,eAAO,MAAM,iBAAiB,+BAA+C,CAAC;AAS9E,qBAAa,aAAc,YAAW,MAAM;IAC3C,QAAQ,CAAC,EAAE,aAAa;IACxB,QAAQ,CAAC,IAAI,aAAa;IAC1B,QAAQ,CAAC,QAAQ,MAAM;IAEvB,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,MAAM,CAAiB;gBAEnB,YAAY,CAAC,EAAE,mBAAmB;IAK9C,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAgBlC,6CAA6C;IAC7C,mBAAmB,IAAI,2BAA2B;IAIlD,iDAAiD;IACjD,mBAAmB,CAAC,QAAQ,EAAE,2BAA2B,GAAG,IAAI;IAQhE,OAAO,IAAI,IAAI;IAIf,OAAO,IAAI,IAAI;IAgBf,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI;IAIpF,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAMzC,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAavC,OAAO,CAAC,oBAAoB;IAqB5B,mHAAmH;IACnH,OAAO,CAAC,qBAAqB;IA+B7B,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,cAAc;IAQtB,oEAAoE;IACpE,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,oBAAoB;IA0C5B,4EAA4E;IAC5E,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAmC3B,OAAO,CAAC,qBAAqB;IAwD7B,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,kBAAkB;CAe1B"}
1
+ {"version":3,"file":"ToolbarPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarPlugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAUxE,OAAO,EAEN,KAAK,uBAAuB,IAAI,2BAA2B,EAC3D,MAAM,8BAA8B,CAAC;AAQtC,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,2BAA2B,CAAC;CAChD;AAID,MAAM,WAAW,iBAAiB;IACjC,sEAAsE;IACtE,OAAO,IAAI,IAAI,CAAC;IAChB,+CAA+C;IAC/C,UAAU,IAAI,IAAI,CAAC;CACnB;AAED,eAAO,MAAM,iBAAiB,+BAA+C,CAAC;AAU9E,qBAAa,aAAc,YAAW,MAAM;IAC3C,QAAQ,CAAC,EAAE,aAAa;IACxB,QAAQ,CAAC,IAAI,aAAa;IAC1B,QAAQ,CAAC,QAAQ,MAAM;IAEvB,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,MAAM,CAAiB;gBAEnB,YAAY,CAAC,EAAE,mBAAmB;IAK9C,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAoBlC,6CAA6C;IAC7C,mBAAmB,IAAI,2BAA2B;IAIlD,iDAAiD;IACjD,mBAAmB,CAAC,QAAQ,EAAE,2BAA2B,GAAG,IAAI;IAQhE,OAAO,IAAI,IAAI;IAIf,OAAO,IAAI,IAAI;IAkBf,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI;IAIpF,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAMzC,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAavC,OAAO,CAAC,oBAAoB;IAqB5B,mHAAmH;IACnH,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,cAAc;IAQtB,oEAAoE;IACpE,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,oBAAoB;IA0C5B,4EAA4E;IAC5E,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAmC3B,OAAO,CAAC,qBAAqB;IAwD7B,OAAO,CAAC,YAAY;IAyDpB,OAAO,CAAC,kBAAkB;CAkB1B"}
@@ -1,11 +1,15 @@
1
1
  import { PluginContext } from '../Plugin.js';
2
+ import { PopupManager } from '../shared/PopupManager.js';
2
3
  import { ToolbarItem } from './ToolbarItem.js';
3
4
  export declare class ToolbarPopupController {
4
5
  private activePopup;
5
6
  private activePopupButton;
6
- private closePopupHandler;
7
+ private activeHandle;
7
8
  private readonly getActiveElement;
9
+ private popupManager;
8
10
  constructor(getActiveElement: () => Element | null);
11
+ /** Injects the PopupManager instance (called after service registration). */
12
+ setPopupManager(manager: PopupManager): void;
9
13
  /** Whether a popup is currently open. */
10
14
  isOpen(): boolean;
11
15
  /** Toggles a popup for the given toolbar button. */
@@ -15,6 +19,10 @@ export declare class ToolbarPopupController {
15
19
  /** Closes popup and restores focus to the trigger button. */
16
20
  closeAndRestoreFocus(): void;
17
21
  destroy(): void;
22
+ private openViaManager;
23
+ private openLegacy;
24
+ private renderPopupContent;
25
+ private clearButtonState;
18
26
  private positionAndAppend;
19
27
  private focusFirstItem;
20
28
  private handlePopupKeydown;
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarPopupController.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarPopupController.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,qBAAa,sBAAsB;IAClC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,iBAAiB,CAA0C;IACnE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;gBAE5C,gBAAgB,EAAE,MAAM,OAAO,GAAG,IAAI;IAIlD,yCAAyC;IACzC,MAAM,IAAI,OAAO;IAIjB,oDAAoD;IACpD,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAkDlF,6DAA6D;IAC7D,KAAK,IAAI,IAAI;IAgBb,6DAA6D;IAC7D,oBAAoB,IAAI,IAAI;IAM5B,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,qBAAqB;IA2B7B,OAAO,CAAC,iBAAiB;IAuCzB,OAAO,CAAC,wBAAwB;CA8BhC"}
1
+ {"version":3,"file":"ToolbarPopupController.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/ToolbarPopupController.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,qBAAa,sBAAsB;IAClC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,OAAO,CAAC,YAAY,CAA6B;gBAErC,gBAAgB,EAAE,MAAM,OAAO,GAAG,IAAI;IAIlD,6EAA6E;IAC7E,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C,yCAAyC;IACzC,MAAM,IAAI,OAAO;IAIjB,oDAAoD;IACpD,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAalF,6DAA6D;IAC7D,KAAK,IAAI,IAAI;IAiBb,6DAA6D;IAC7D,oBAAoB,IAAI,IAAI;IAM5B,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,cAAc;IAiCtB,OAAO,CAAC,UAAU;IAuClB,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,qBAAqB;IA2B7B,OAAO,CAAC,iBAAiB;IAuCzB,OAAO,CAAC,wBAAwB;CA8BhC"}
@@ -1,4 +1,4 @@
1
1
  export { ToolbarPlugin, ToolbarServiceKey, type ToolbarServiceAPI, type ToolbarLayoutConfig, } from './ToolbarPlugin.js';
2
- export type { ToolbarItem, ToolbarGroup, PopupType, GridPickerConfig, DropdownConfig, } from './ToolbarItem.js';
2
+ export type { ToolbarItem, ToolbarItemCombobox, ToolbarGroup, PopupType, GridPickerConfig, DropdownConfig, } from './ToolbarItem.js';
3
3
  export { formatShortcut } from './ToolbarItem.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,cAAc,GACd,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/toolbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,cAAc,GACd,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { T, a } from "../chunks/ToolbarPlugin-B6JETWaw.mjs";
1
+ import { T, a } from "../chunks/ToolbarPlugin-B7oJRzpl.mjs";
2
2
  import { f } from "../chunks/ToolbarItem-BpZggUGo.mjs";
3
3
  export {
4
4
  T as ToolbarPlugin,
@@ -0,0 +1,16 @@
1
+ import { FullPresetOptions, PresetConfig } from './PresetTypes.js';
2
+ /**
3
+ * Creates a fully-featured editor preset with all standard plugins.
4
+ *
5
+ * Toolbar groups:
6
+ * 1. Typography: Font, FontSize
7
+ * 2. Inline marks: TextFormatting, Strikethrough, SuperSub
8
+ * 3. Colors: TextColor, Highlight
9
+ * 4. Block types: Heading, Blockquote, CodeBlock
10
+ * 5. Paragraph layout: Alignment
11
+ * 6. Lists: List
12
+ * 7. Insert objects: Link, Table, HorizontalRule, Image
13
+ * 8. Utility: Print
14
+ */
15
+ export declare function createFullPreset(options?: FullPresetOptions): PresetConfig;
16
+ //# sourceMappingURL=FullPreset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FullPreset.d.ts","sourceRoot":"","sources":["../../src/presets/FullPreset.ts"],"names":[],"mappings":"AAAA;;GAEG;AAqBH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAExE;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,YAAY,CA8B1E"}
@@ -0,0 +1,7 @@
1
+ import { MinimalPresetOptions, PresetConfig } from './PresetTypes.js';
2
+ /**
3
+ * Creates a minimal editor preset with font selection only.
4
+ * CaretNavigation and GapCursor are auto-registered by the editor.
5
+ */
6
+ export declare function createMinimalPreset(options?: MinimalPresetOptions): PresetConfig;
7
+ //# sourceMappingURL=MinimalPreset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MinimalPreset.d.ts","sourceRoot":"","sources":["../../src/presets/MinimalPreset.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,YAAY,CAUhF"}
@@ -0,0 +1,50 @@
1
+ import { Plugin } from '../plugins/Plugin.js';
2
+ import { AlignmentConfig } from '../plugins/alignment/AlignmentPlugin.js';
3
+ import { BlockquoteConfig } from '../plugins/blockquote/BlockquotePlugin.js';
4
+ import { CodeBlockConfig } from '../plugins/code-block/CodeBlockPlugin.js';
5
+ import { FontSizeConfig } from '../plugins/font-size/FontSizePlugin.js';
6
+ import { FontConfig } from '../plugins/font/FontPlugin.js';
7
+ import { HeadingConfig } from '../plugins/heading/HeadingPlugin.js';
8
+ import { HighlightConfig } from '../plugins/highlight/HighlightPlugin.js';
9
+ import { HorizontalRuleConfig } from '../plugins/horizontal-rule/HorizontalRulePlugin.js';
10
+ import { ImagePluginConfig } from '../plugins/image/ImageUpload.js';
11
+ import { LinkConfig } from '../plugins/link/LinkPlugin.js';
12
+ import { ListConfig } from '../plugins/list/ListPlugin.js';
13
+ import { PrintPluginConfig } from '../plugins/print/PrintTypes.js';
14
+ import { StrikethroughConfig } from '../plugins/strikethrough/StrikethroughPlugin.js';
15
+ import { SuperSubConfig } from '../plugins/super-sub/SuperSubPlugin.js';
16
+ import { TextColorConfig } from '../plugins/text-color/TextColorPlugin.js';
17
+ import { TextFormattingConfig } from '../plugins/text-formatting/TextFormattingPlugin.js';
18
+ /**
19
+ * Return type of preset factory functions.
20
+ * Spreads directly into `NotectlEditorConfig`.
21
+ */
22
+ export interface PresetConfig {
23
+ readonly toolbar: ReadonlyArray<ReadonlyArray<Plugin>>;
24
+ readonly plugins: readonly Plugin[];
25
+ }
26
+ /** Configuration overrides for `createMinimalPreset()`. */
27
+ export interface MinimalPresetOptions {
28
+ readonly font?: Partial<FontConfig>;
29
+ }
30
+ /** Configuration overrides for `createFullPreset()`. */
31
+ export interface FullPresetOptions {
32
+ readonly font?: Partial<FontConfig>;
33
+ readonly fontSize?: Partial<FontSizeConfig>;
34
+ readonly textFormatting?: Partial<TextFormattingConfig>;
35
+ readonly strikethrough?: Partial<StrikethroughConfig>;
36
+ readonly superSub?: Partial<SuperSubConfig>;
37
+ readonly textColor?: Partial<TextColorConfig>;
38
+ readonly highlight?: Partial<HighlightConfig>;
39
+ readonly heading?: Partial<HeadingConfig>;
40
+ readonly blockquote?: Partial<BlockquoteConfig>;
41
+ readonly codeBlock?: Partial<CodeBlockConfig>;
42
+ readonly alignment?: Partial<AlignmentConfig>;
43
+ readonly list?: Partial<ListConfig>;
44
+ readonly link?: Partial<LinkConfig>;
45
+ readonly table?: Partial<import('../plugins/table/TablePlugin.js').TableConfig>;
46
+ readonly horizontalRule?: Partial<HorizontalRuleConfig>;
47
+ readonly image?: Partial<ImagePluginConfig>;
48
+ readonly print?: PrintPluginConfig;
49
+ }
50
+ //# sourceMappingURL=PresetTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PresetTypes.d.ts","sourceRoot":"","sources":["../../src/presets/PresetTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { BlockNode, ChildNode, Document } from '../model/Document.js';
2
+ /** Finds a block by ID anywhere in the tree and applies a transform. */
3
+ export declare function mapBlock(doc: Document, blockId: string, fn: (block: BlockNode) => BlockNode): Document;
4
+ /** Recursively maps over children to find and transform a block by ID. */
5
+ export declare function mapBlockInChildren(children: readonly ChildNode[], blockId: string, fn: (block: BlockNode) => BlockNode): ChildNode[];
6
+ /**
7
+ * Maps a node at the given path, replacing it with the result of fn.
8
+ * Navigates down the path immutably, creating new parent nodes as needed.
9
+ */
10
+ export declare function mapNodeByPath(doc: Document, path: readonly string[], fn: (node: BlockNode) => BlockNode): Document;
11
+ /** Recursive helper for mapNodeByPath — walks one level deeper. */
12
+ export declare function mapNodeByPathRecursive(node: BlockNode, path: readonly string[], depth: number, fn: (node: BlockNode) => BlockNode): BlockNode;
13
+ /**
14
+ * Searches children for a level where `predicate` matches,
15
+ * then applies `transform` at that level.
16
+ * Recurses into nested BlockNodes if not found at the current level.
17
+ *
18
+ * Returns `null` if no matching level was found.
19
+ */
20
+ export declare function findAndTransformChildren(children: readonly ChildNode[], predicate: (children: readonly ChildNode[]) => boolean, transform: (children: readonly ChildNode[]) => readonly ChildNode[]): readonly ChildNode[] | null;
21
+ //# sourceMappingURL=BlockTreeOps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockTreeOps.d.ts","sourceRoot":"","sources":["../../src/state/BlockTreeOps.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAe,MAAM,sBAAsB,CAAC;AAElG,wEAAwE;AACxE,wBAAgB,QAAQ,CACvB,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,GACjC,QAAQ,CAIV;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CACjC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,GACjC,SAAS,EAAE,CASb;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,EAAE,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,GAChC,QAAQ,CAYV;AAED,mEAAmE;AACnE,wBAAgB,sBAAsB,CACrC,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,GAChC,SAAS,CASX;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACvC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,SAAS,EAAE,KAAK,OAAO,EACtD,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,SAAS,EAAE,KAAK,SAAS,SAAS,EAAE,GACjE,SAAS,SAAS,EAAE,GAAG,IAAI,CAqB7B"}
@@ -0,0 +1,37 @@
1
+ import { ChildNode, InlineNode, Mark, TextNode, TextSegment } from '../model/Document.js';
2
+ /**
3
+ * Inserts text into mixed inline content at the given offset.
4
+ * Handles both TextNode and InlineNode children.
5
+ */
6
+ export declare function insertTextIntoInlineContent(nodes: readonly (TextNode | InlineNode)[], offset: number, text: string, marks: readonly Mark[]): (TextNode | InlineNode)[];
7
+ /**
8
+ * Inserts segments into mixed inline content at the given offset.
9
+ */
10
+ export declare function insertSegmentsIntoInlineContent(nodes: readonly (TextNode | InlineNode)[], offset: number, segments: readonly TextSegment[]): (TextNode | InlineNode)[];
11
+ /**
12
+ * Deletes content from mixed inline content in the given range.
13
+ * Removes InlineNodes that fall within the range.
14
+ */
15
+ export declare function deleteFromInlineContent(nodes: readonly (TextNode | InlineNode)[], from: number, to: number): (TextNode | InlineNode)[];
16
+ /**
17
+ * Slices mixed inline content to the given range.
18
+ * InlineNodes are preserved as atoms (included if within range).
19
+ */
20
+ export declare function sliceInlineContent(nodes: readonly (TextNode | InlineNode)[], from: number, to: number): (TextNode | InlineNode)[];
21
+ /**
22
+ * Applies or removes a mark from mixed inline content in the given range.
23
+ * InlineNodes are passed through unchanged (marks only apply to text).
24
+ */
25
+ export declare function applyMarkToInlineContent(nodes: readonly (TextNode | InlineNode)[], from: number, to: number, mark: Mark, add: boolean): (TextNode | InlineNode)[];
26
+ /** Inserts an InlineNode at the given offset in mixed inline content. */
27
+ export declare function insertInlineNodeAtOffset(nodes: readonly (TextNode | InlineNode)[], offset: number, inlineNode: InlineNode): (TextNode | InlineNode)[];
28
+ /** Removes the InlineNode at the given offset from mixed inline content. */
29
+ export declare function removeInlineNodeAtOffset(nodes: readonly (TextNode | InlineNode)[], offset: number): (TextNode | InlineNode)[];
30
+ /** Replaces the attrs of an InlineNode at the given offset. */
31
+ export declare function setInlineNodeAttrsAtOffset(nodes: readonly (TextNode | InlineNode)[], offset: number, attrs: Readonly<Record<string, string | number | boolean>>): (TextNode | InlineNode)[];
32
+ /**
33
+ * Replaces the inline content children of a ChildNode array,
34
+ * preserving any BlockNode children in their original positions.
35
+ */
36
+ export declare function replaceInlineChildren(original: readonly ChildNode[], newInlineChildren: readonly (TextNode | InlineNode)[]): readonly ChildNode[];
37
+ //# sourceMappingURL=InlineContentOps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineContentOps.d.ts","sourceRoot":"","sources":["../../src/state/InlineContentOps.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,IAAI,EACT,KAAK,QAAQ,EACb,KAAK,WAAW,EAMhB,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,wBAAgB,2BAA2B,CAC1C,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,IAAI,EAAE,GACpB,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAuC3B;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC9C,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,SAAS,WAAW,EAAE,GAC9B,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CA6C3B;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACR,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAgC3B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACR,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAmC3B;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,OAAO,GACV,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CA0C3B;AAED,yEAAyE;AACzE,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,GACpB,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAuC3B;AAED,4EAA4E;AAC5E,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,MAAM,EAAE,MAAM,GACZ,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAiB3B;AAED,+DAA+D;AAC/D,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EACzC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,GACxD,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAmB3B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,SAAS,SAAS,EAAE,EAC9B,iBAAiB,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,GACnD,SAAS,SAAS,EAAE,CAQtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"StepApplication.d.ts","sourceRoot":"","sources":["../../src/state/StepApplication.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGN,KAAK,QAAQ,EAeb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAcX,IAAI,EACJ,MAAM,kBAAkB,CAAC;AAE1B,wEAAwE;AACxE,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,QAAQ,CA+B7D"}
1
+ {"version":3,"file":"StepApplication.d.ts","sourceRoot":"","sources":["../../src/state/StepApplication.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGN,KAAK,QAAQ,EAQb,MAAM,sBAAsB,CAAC;AAa9B,OAAO,KAAK,EAcX,IAAI,EACJ,MAAM,kBAAkB,CAAC;AAE1B,wEAAwE;AACxE,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,QAAQ,CA+B7D"}
@@ -86,6 +86,10 @@ export declare function expectToolbarActive(harness: PluginHarnessResult, itemId
86
86
  * Assert that a toolbar item's `isEnabled()` returns the expected value.
87
87
  */
88
88
  export declare function expectToolbarEnabled(harness: PluginHarnessResult, itemId: string, enabled: boolean, state?: EditorState): void;
89
+ /**
90
+ * Assert that a combobox toolbar item's `getLabel()` returns the expected value.
91
+ */
92
+ export declare function expectComboboxLabel(harness: PluginHarnessResult, itemId: string, expectedLabel: string, state?: EditorState): void;
89
93
  /**
90
94
  * Assert that a key binding is registered.
91
95
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PluginTestUtils.d.ts","sourceRoot":"","sources":["../../src/test/PluginTestUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginTestUtils.d.ts","sourceRoot":"","sources":["../../src/test/PluginTestUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@notectl/core",
3
- "version": "1.6.1",
4
- "description": "A modern and accessable rich text editor shipped as a single Web Component. Immutable state, transaction-based architecture, and a plugin system that powers every feature.",
3
+ "version": "1.7.1",
4
+ "description": "A modern and accessible rich text editor shipped as a single Web Component. Immutable state, transaction-based architecture, and a plugin system that powers every feature.",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "sideEffects": false,
@@ -1,59 +0,0 @@
1
- const e = /^#([0-9a-f]{3}|[0-9a-f]{6})$/i;
2
- function r(r2) {
3
- return e.test(r2);
4
- }
5
- const a = /^rgba?\(\s*(\d{1,3}%?\s*,\s*){2}\d{1,3}%?(\s*,\s*(0|1|0?\.\d+))?\s*\)$/, l = /^hsla?\(\s*\d{1,3}\s*,\s*\d{1,3}%\s*,\s*\d{1,3}%(\s*,\s*(0|1|0?\.\d+))?\s*\)$/, t = /* @__PURE__ */ new Set(["aliceblue", "antiquewhite", "aqua", "aquamarine", "azure", "beige", "bisque", "black", "blanchedalmond", "blue", "blueviolet", "brown", "burlywood", "cadetblue", "chartreuse", "chocolate", "coral", "cornflowerblue", "cornsilk", "crimson", "cyan", "darkblue", "darkcyan", "darkgoldenrod", "darkgray", "darkgreen", "darkgrey", "darkkhaki", "darkmagenta", "darkolivegreen", "darkorange", "darkorchid", "darkred", "darksalmon", "darkseagreen", "darkslateblue", "darkslategray", "darkslategrey", "darkturquoise", "darkviolet", "deeppink", "deepskyblue", "dimgray", "dimgrey", "dodgerblue", "firebrick", "floralwhite", "forestgreen", "fuchsia", "gainsboro", "ghostwhite", "gold", "goldenrod", "gray", "green", "greenyellow", "grey", "honeydew", "hotpink", "indianred", "indigo", "ivory", "khaki", "lavender", "lavenderblush", "lawngreen", "lemonchiffon", "lightblue", "lightcoral", "lightcyan", "lightgoldenrodyellow", "lightgray", "lightgreen", "lightgrey", "lightpink", "lightsalmon", "lightseagreen", "lightskyblue", "lightslategray", "lightslategrey", "lightsteelblue", "lightyellow", "lime", "limegreen", "linen", "magenta", "maroon", "mediumaquamarine", "mediumblue", "mediumorchid", "mediumpurple", "mediumseagreen", "mediumslateblue", "mediumspringgreen", "mediumturquoise", "mediumvioletred", "midnightblue", "mintcream", "mistyrose", "moccasin", "navajowhite", "navy", "oldlace", "olive", "olivedrab", "orange", "orangered", "orchid", "palegoldenrod", "palegreen", "paleturquoise", "palevioletred", "papayawhip", "peachpuff", "peru", "pink", "plum", "powderblue", "purple", "rebeccapurple", "red", "rosybrown", "royalblue", "saddlebrown", "salmon", "sandybrown", "seagreen", "seashell", "sienna", "silver", "skyblue", "slateblue", "slategray", "slategrey", "snow", "springgreen", "steelblue", "tan", "teal", "thistle", "tomato", "transparent", "turquoise", "violet", "wheat", "white", "whitesmoke", "yellow", "yellowgreen"]);
6
- function n(r2) {
7
- if (!r2) return false;
8
- const n2 = r2.trim().toLowerCase();
9
- return !!n2 && (e.test(n2) || a.test(n2) || l.test(n2) || t.has(n2));
10
- }
11
- function i(e2, a2, l2) {
12
- if (!e2 || 0 === e2.length) return a2;
13
- const t2 = e2.filter((e3) => !r(e3));
14
- if (t2.length > 0) throw new Error(`${l2}: invalid hex color(s): ${t2.join(", ")}. Expected format: #RGB or #RRGGBB.`);
15
- const n2 = /* @__PURE__ */ new Set(), i2 = [];
16
- for (const r2 of e2) {
17
- const e3 = r2.toLowerCase();
18
- n2.has(e3) || (n2.add(e3), i2.push(e3));
19
- }
20
- return i2;
21
- }
22
- const f = /* @__PURE__ */ new Map([["#000000", "Black"], ["#434343", "Dark Gray 4"], ["#666666", "Dark Gray 3"], ["#999999", "Dark Gray 2"], ["#b7b7b7", "Dark Gray 1"], ["#cccccc", "Light Gray 3"], ["#d9d9d9", "Light Gray 2"], ["#efefef", "Light Gray 1"], ["#f3f3f3", "Near White"], ["#ffffff", "White"], ["#980000", "Dark Red Berry"], ["#ff0000", "Red"], ["#ff9900", "Orange"], ["#ffff00", "Yellow"], ["#00ff00", "Green"], ["#00ffff", "Cyan"], ["#4a86e8", "Cornflower Blue"], ["#0000ff", "Blue"], ["#9900ff", "Purple"], ["#ff00ff", "Magenta"], ["#e6b8af", "Light Red Berry 3"], ["#f4cccc", "Light Red 3"], ["#fce5cd", "Light Orange 3"], ["#fff2cc", "Light Yellow 3"], ["#d9ead3", "Light Green 3"], ["#d0e0e3", "Light Cyan 3"], ["#c9daf8", "Light Cornflower Blue 3"], ["#cfe2f3", "Light Blue 3"], ["#d9d2e9", "Light Purple 3"], ["#ead1dc", "Light Magenta 3"], ["#dd7e6b", "Light Red Berry 2"], ["#ea9999", "Light Red 2"], ["#f9cb9c", "Light Orange 2"], ["#ffe599", "Light Yellow 2"], ["#b6d7a8", "Light Green 2"], ["#a2c4c9", "Light Cyan 2"], ["#a4c2f4", "Light Cornflower Blue 2"], ["#9fc5e8", "Light Blue 2"], ["#b4a7d6", "Light Purple 2"], ["#d5a6bd", "Light Magenta 2"], ["#cc4125", "Light Red Berry 1"], ["#e06666", "Light Red 1"], ["#f6b26b", "Light Orange 1"], ["#ffd966", "Light Yellow 1"], ["#93c47d", "Light Green 1"], ["#76a5af", "Light Cyan 1"], ["#6d9eeb", "Light Cornflower Blue 1"], ["#6fa8dc", "Light Blue 1"], ["#8e7cc3", "Light Purple 1"], ["#c27ba0", "Light Magenta 1"], ["#a61c00", "Dark Red Berry 1"], ["#cc0000", "Dark Red 1"], ["#e69138", "Dark Orange 1"], ["#f1c232", "Dark Yellow 1"], ["#6aa84f", "Dark Green 1"], ["#45818e", "Dark Cyan 1"], ["#3c78d8", "Dark Cornflower Blue 1"], ["#3d85c6", "Dark Blue 1"], ["#674ea7", "Dark Purple 1"], ["#a64d79", "Dark Magenta 1"], ["#85200c", "Dark Red Berry 2"], ["#990000", "Dark Red 2"], ["#b45f06", "Dark Orange 2"], ["#bf9000", "Dark Yellow 2"], ["#38761d", "Dark Green 2"], ["#134f5c", "Dark Cyan 2"], ["#1155cc", "Dark Cornflower Blue 2"], ["#0b5394", "Dark Blue 2"], ["#351c75", "Dark Purple 2"], ["#741b47", "Dark Magenta 2"], ["#fff176", "Bright Yellow"], ["#aed581", "Light Green"], ["#4dd0e1", "Bright Cyan"], ["#64b5f6", "Sky Blue"], ["#ce93d8", "Lavender"], ["#f48fb1", "Pink"], ["#ffab91", "Peach"], ["#ff8a65", "Coral"], ["#e6ee9c", "Lime"], ["#80cbc4", "Teal"], ["#fff9c4", "Pale Yellow"], ["#dcedc8", "Pale Green"], ["#e0f7fa", "Pale Cyan"], ["#e3f2fd", "Pale Blue"], ["#f3e5f5", "Pale Purple"], ["#fce4ec", "Pale Pink"], ["#fff3e0", "Pale Orange"], ["#fbe9e7", "Pale Red"], ["#f9fbe7", "Pale Lime"], ["#e0f2f1", "Pale Teal"], ["#fff59d", "Soft Yellow"], ["#c5e1a5", "Soft Green"], ["#80deea", "Soft Cyan"], ["#90caf9", "Soft Blue"], ["#e1bee7", "Soft Purple"], ["#f8bbd0", "Soft Pink"], ["#ffcc80", "Soft Orange"], ["#a5d6a7", "Mint"], ["#ffee58", "Vivid Yellow"], ["#9ccc65", "Vivid Green"], ["#26c6da", "Vivid Cyan"], ["#42a5f5", "Vivid Blue"], ["#ab47bc", "Vivid Purple"], ["#ec407a", "Vivid Pink"], ["#ffa726", "Vivid Orange"], ["#ff7043", "Red Orange"], ["#d4e157", "Vivid Lime"], ["#66bb6a", "Emerald"], ["#fafafa", "Almost White"], ["#f5f5f5", "Lightest Gray"], ["#eeeeee", "Very Light Gray"], ["#e0e0e0", "Silver"], ["#bdbdbd", "Medium Gray"], ["#e8eaf6", "Lavender Gray"], ["#efebe9", "Warm Gray"], ["#eceff1", "Cool Gray"]]);
23
- function o(e2) {
24
- return f.get(e2.toLowerCase()) || (function(e3) {
25
- const r2 = g(e3), a2 = Number.parseInt(r2.slice(1, 3), 16) / 255, l2 = Number.parseInt(r2.slice(3, 5), 16) / 255, t2 = Number.parseInt(r2.slice(5, 7), 16) / 255, n2 = Math.max(a2, l2, t2), i2 = Math.min(a2, l2, t2), f2 = (n2 + i2) / 2, o2 = n2 - i2;
26
- if (o2 < 0.05) return f2 < 0.15 ? "Black" : f2 < 0.35 ? "Dark Gray" : f2 < 0.65 ? "Gray" : f2 < 0.85 ? "Light Gray" : "Near White";
27
- let d2 = 0;
28
- d2 = n2 === a2 ? 60 * ((l2 - t2) / o2 + (l2 < t2 ? 6 : 0)) : n2 === l2 ? 60 * ((t2 - a2) / o2 + 2) : 60 * ((a2 - l2) / o2 + 4);
29
- let c2 = "Red";
30
- for (const [e4, r3] of s) if (d2 < e4) {
31
- c2 = r3;
32
- break;
33
- }
34
- return f2 < 0.25 ? `Very Dark ${c2}` : f2 < 0.4 ? `Dark ${c2}` : f2 > 0.8 ? `Very Light ${c2}` : f2 > 0.65 ? `Light ${c2}` : c2;
35
- })(e2);
36
- }
37
- function d(e2) {
38
- const r2 = (function(e3) {
39
- const r3 = g(e3);
40
- return 0.2126 * c(Number.parseInt(r3.slice(1, 3), 16) / 255) + 0.7152 * c(Number.parseInt(r3.slice(3, 5), 16) / 255) + 0.0722 * c(Number.parseInt(r3.slice(5, 7), 16) / 255);
41
- })(e2);
42
- return r2 > 0.3;
43
- }
44
- function g(e2) {
45
- const r2 = e2.toLowerCase();
46
- return 4 === r2.length ? `#${r2[1]}${r2[1]}${r2[2]}${r2[2]}${r2[3]}${r2[3]}` : r2;
47
- }
48
- function c(e2) {
49
- return e2 <= 0.03928 ? e2 / 12.92 : ((e2 + 0.055) / 1.055) ** 2.4;
50
- }
51
- const s = [[15, "Red"], [45, "Orange"], [65, "Yellow"], [150, "Green"], [190, "Cyan"], [250, "Blue"], [290, "Purple"], [330, "Pink"], [361, "Red"]];
52
- export {
53
- d as a,
54
- r as b,
55
- o as g,
56
- n as i,
57
- i as r
58
- };
59
- //# sourceMappingURL=ColorNames-BdsHwA2f.mjs.map