@vonage/vivid 5.12.0 → 5.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/bundled/base-color-picker.js +2 -2
  2. package/bundled/definition19.cjs +63 -44
  3. package/bundled/definition19.js +322 -246
  4. package/bundled/definition2.cjs +1 -1
  5. package/bundled/definition2.js +1 -1
  6. package/bundled/localized.cjs +1 -1
  7. package/bundled/localized.js +17 -13
  8. package/bundled/slottable-request.cjs +4 -4
  9. package/bundled/slottable-request.js +71 -70
  10. package/bundled/vivid-element.cjs +1 -1
  11. package/bundled/vivid-element.js +1 -1
  12. package/custom-elements.json +2540 -2206
  13. package/data-grid/definition.cjs +37 -13
  14. package/data-grid/definition.js +37 -13
  15. package/data-grid/index.cjs +38 -32
  16. package/data-grid/index.js +201 -178
  17. package/icon/definition.cjs +1 -1
  18. package/icon/definition.js +1 -1
  19. package/index.cjs +1 -0
  20. package/index.js +1 -1
  21. package/lib/accordion/accordion.template.d.ts +2 -2
  22. package/lib/accordion/index.d.ts +1 -0
  23. package/lib/accordion-item/accordion-item.d.ts +98 -67
  24. package/lib/accordion-item/accordion-item.template.d.ts +3 -3
  25. package/lib/accordion-item/index.d.ts +1 -0
  26. package/lib/action-group/action-group.d.ts +95 -64
  27. package/lib/action-group/action-group.template.d.ts +2 -2
  28. package/lib/action-group/index.d.ts +1 -0
  29. package/lib/alert/alert.d.ts +192 -130
  30. package/lib/alert/alert.template.d.ts +3 -3
  31. package/lib/alert/index.d.ts +1 -0
  32. package/lib/audio-player/audio-player.d.ts +97 -67
  33. package/lib/audio-player/audio-player.template.d.ts +2 -2
  34. package/lib/audio-player/index.d.ts +1 -0
  35. package/lib/avatar/avatar.d.ts +105 -117
  36. package/lib/avatar/avatar.template.d.ts +1 -1
  37. package/lib/avatar/index.d.ts +1 -0
  38. package/lib/badge/badge.d.ts +98 -67
  39. package/lib/badge/badge.template.d.ts +3 -3
  40. package/lib/badge/index.d.ts +1 -0
  41. package/lib/banner/banner.d.ts +286 -193
  42. package/lib/banner/banner.template.d.ts +3 -3
  43. package/lib/banner/index.d.ts +1 -0
  44. package/lib/breadcrumb/breadcrumb.d.ts +93 -62
  45. package/lib/breadcrumb/breadcrumb.template.d.ts +2 -2
  46. package/lib/breadcrumb/index.d.ts +1 -0
  47. package/lib/breadcrumb-item/breadcrumb-item.d.ts +103 -115
  48. package/lib/breadcrumb-item/breadcrumb-item.template.d.ts +3 -3
  49. package/lib/breadcrumb-item/index.d.ts +1 -0
  50. package/lib/button/button.d.ts +297 -247
  51. package/lib/button/button.template.d.ts +3 -3
  52. package/lib/button/index.d.ts +1 -0
  53. package/lib/calendar/calendar.d.ts +2 -2
  54. package/lib/calendar/calendar.template.d.ts +2 -2
  55. package/lib/calendar/helpers/calendar.event-context.d.ts +1 -1
  56. package/lib/calendar/helpers/calendar.keyboard-interactions.d.ts +1 -1
  57. package/lib/calendar/index.d.ts +1 -0
  58. package/lib/calendar-event/calendar-event.d.ts +95 -64
  59. package/lib/calendar-event/calendar-event.template.d.ts +2 -2
  60. package/lib/calendar-event/index.d.ts +1 -0
  61. package/lib/card/card.d.ts +105 -117
  62. package/lib/card/card.template.d.ts +2 -2
  63. package/lib/card/index.d.ts +1 -0
  64. package/lib/checkbox/checkbox.d.ts +628 -437
  65. package/lib/checkbox/checkbox.template.d.ts +3 -3
  66. package/lib/checkbox/index.d.ts +1 -0
  67. package/lib/color-picker/color-picker.d.ts +726 -506
  68. package/lib/color-picker/color-picker.template.d.ts +2 -2
  69. package/lib/color-picker/definition.d.ts +1 -1
  70. package/lib/color-picker/index.d.ts +1 -0
  71. package/lib/combobox/combobox.d.ts +741 -520
  72. package/lib/combobox/combobox.template.d.ts +3 -3
  73. package/lib/combobox/index.d.ts +1 -0
  74. package/lib/contextual-help/contextual-help.d.ts +1 -1
  75. package/lib/contextual-help/contextual-help.template.d.ts +3 -3
  76. package/lib/contextual-help/index.d.ts +1 -0
  77. package/lib/country/country-code-to-flag-icon.d.ts +1 -1
  78. package/lib/country/country.template.d.ts +3 -3
  79. package/lib/country/index.d.ts +1 -0
  80. package/lib/data-grid/data-grid-cell.d.ts +190 -128
  81. package/lib/data-grid/data-grid-cell.template.d.ts +3 -3
  82. package/lib/data-grid/data-grid-row.d.ts +95 -64
  83. package/lib/data-grid/data-grid-row.template.d.ts +3 -3
  84. package/lib/data-grid/data-grid.d.ts +1 -1
  85. package/lib/data-grid/data-grid.template.d.ts +3 -3
  86. package/lib/data-grid/index.d.ts +1 -0
  87. package/lib/data-grid/locale.d.ts +1 -1
  88. package/lib/date-picker/date-picker.d.ts +1045 -792
  89. package/lib/date-picker/date-picker.template.d.ts +2 -2
  90. package/lib/date-picker/index.d.ts +1 -0
  91. package/lib/date-range-picker/date-range-picker.d.ts +538 -411
  92. package/lib/date-range-picker/date-range-picker.template.d.ts +2 -2
  93. package/lib/date-range-picker/index.d.ts +1 -0
  94. package/lib/date-time-picker/date-time-picker.d.ts +1026 -772
  95. package/lib/date-time-picker/date-time-picker.template.d.ts +2 -2
  96. package/lib/date-time-picker/index.d.ts +1 -0
  97. package/lib/dial-pad/dial-pad.d.ts +95 -64
  98. package/lib/dial-pad/dial-pad.template.d.ts +2 -2
  99. package/lib/dial-pad/index.d.ts +1 -0
  100. package/lib/dialog/dialog.d.ts +189 -127
  101. package/lib/dialog/dialog.template.d.ts +3 -3
  102. package/lib/dialog/index.d.ts +1 -0
  103. package/lib/divider/divider.d.ts +94 -63
  104. package/lib/divider/divider.template.d.ts +2 -2
  105. package/lib/divider/index.d.ts +1 -0
  106. package/lib/elevation/elevation.template.d.ts +2 -2
  107. package/lib/elevation/index.d.ts +1 -0
  108. package/lib/empty-state/empty-state.d.ts +2 -2
  109. package/lib/empty-state/empty-state.template.d.ts +3 -3
  110. package/lib/empty-state/index.d.ts +1 -0
  111. package/lib/fab/fab.d.ts +98 -67
  112. package/lib/fab/fab.template.d.ts +3 -3
  113. package/lib/fab/index.d.ts +1 -0
  114. package/lib/file-picker/__mocks__/data-transfer.d.ts +21 -0
  115. package/lib/file-picker/file-picker.d.ts +736 -515
  116. package/lib/file-picker/file-picker.template.d.ts +3 -3
  117. package/lib/file-picker/index.d.ts +1 -0
  118. package/lib/header/header.d.ts +93 -62
  119. package/lib/header/header.template.d.ts +3 -3
  120. package/lib/header/index.d.ts +1 -0
  121. package/lib/icon/icon.d.ts +2 -2
  122. package/lib/icon/icon.template.d.ts +3 -3
  123. package/lib/icon/index.d.ts +1 -0
  124. package/lib/layout/index.d.ts +1 -0
  125. package/lib/layout/layout.d.ts +2 -2
  126. package/lib/layout/layout.template.d.ts +2 -2
  127. package/lib/menu/index.d.ts +1 -0
  128. package/lib/menu/menu.d.ts +195 -133
  129. package/lib/menu/menu.template.d.ts +3 -3
  130. package/lib/menu-item/index.d.ts +1 -0
  131. package/lib/menu-item/menu-item.d.ts +191 -129
  132. package/lib/menu-item/menu-item.template.d.ts +2 -2
  133. package/lib/nav/index.d.ts +1 -0
  134. package/lib/nav/nav.d.ts +93 -62
  135. package/lib/nav/nav.template.d.ts +2 -2
  136. package/lib/nav-disclosure/index.d.ts +1 -0
  137. package/lib/nav-disclosure/nav-disclosure.d.ts +191 -129
  138. package/lib/nav-disclosure/nav-disclosure.template.d.ts +3 -3
  139. package/lib/nav-item/index.d.ts +1 -0
  140. package/lib/nav-item/nav-item.d.ts +200 -181
  141. package/lib/nav-item/nav-item.template.d.ts +3 -3
  142. package/lib/note/index.d.ts +1 -0
  143. package/lib/note/note.d.ts +97 -66
  144. package/lib/note/note.template.d.ts +3 -3
  145. package/lib/number-field/index.d.ts +1 -0
  146. package/lib/number-field/number-field.d.ts +929 -646
  147. package/lib/number-field/number-field.template.d.ts +3 -3
  148. package/lib/option/index.d.ts +1 -0
  149. package/lib/option/option.d.ts +191 -129
  150. package/lib/option/option.template.d.ts +3 -3
  151. package/lib/pagination/index.d.ts +1 -0
  152. package/lib/pagination/pagination.d.ts +98 -67
  153. package/lib/pagination/pagination.template.d.ts +3 -3
  154. package/lib/popover/definition.d.ts +1 -1
  155. package/lib/popover/index.d.ts +1 -0
  156. package/lib/popover/popover.d.ts +190 -128
  157. package/lib/popover/popover.template.d.ts +2 -2
  158. package/lib/popup/index.d.ts +1 -0
  159. package/lib/popup/popup.d.ts +1 -1
  160. package/lib/popup/popup.template.d.ts +3 -3
  161. package/lib/progress/index.d.ts +1 -0
  162. package/lib/progress/progress.d.ts +94 -63
  163. package/lib/progress/progress.template.d.ts +2 -2
  164. package/lib/progress-ring/index.d.ts +1 -0
  165. package/lib/progress-ring/progress-ring.d.ts +94 -63
  166. package/lib/progress-ring/progress-ring.template.d.ts +2 -2
  167. package/lib/radio/index.d.ts +1 -0
  168. package/lib/radio/radio.d.ts +340 -242
  169. package/lib/radio/radio.template.d.ts +2 -2
  170. package/lib/radio-group/index.d.ts +1 -0
  171. package/lib/radio-group/radio-group.d.ts +99 -68
  172. package/lib/radio-group/radio-group.template.d.ts +3 -3
  173. package/lib/range-slider/index.d.ts +1 -0
  174. package/lib/range-slider/range-slider.d.ts +313 -218
  175. package/lib/range-slider/range-slider.template.d.ts +3 -3
  176. package/lib/rich-text-editor/definition.d.ts +1 -1
  177. package/lib/rich-text-editor/index.d.ts +1 -0
  178. package/lib/rich-text-editor/popover.d.ts +1 -1
  179. package/lib/rich-text-editor/rich-text-editor.d.ts +99 -68
  180. package/lib/rich-text-editor/rich-text-editor.template.d.ts +2 -2
  181. package/lib/rich-text-editor/rte/__tests__/async-generator.d.ts +5 -0
  182. package/lib/rich-text-editor/rte/__tests__/doc-factories.d.ts +106 -0
  183. package/lib/rich-text-editor/rte/__tests__/font-sizes.d.ts +2 -0
  184. package/lib/rich-text-editor/rte/__tests__/promise.d.ts +5 -0
  185. package/lib/rich-text-editor/rte/__tests__/test-utils.d.ts +68 -0
  186. package/lib/rich-text-editor/rte/config.d.ts +4 -4
  187. package/lib/rich-text-editor/rte/exports.d.ts +1 -0
  188. package/lib/rich-text-editor/rte/feature.d.ts +10 -12
  189. package/lib/rich-text-editor/rte/features/alignment.d.ts +19 -0
  190. package/lib/rich-text-editor/rte/features/atom.d.ts +9 -0
  191. package/lib/rich-text-editor/rte/features/base.d.ts +33 -0
  192. package/lib/rich-text-editor/rte/features/bold.d.ts +17 -0
  193. package/lib/rich-text-editor/rte/features/drop-handler.d.ts +21 -0
  194. package/lib/rich-text-editor/rte/features/file-handler.d.ts +25 -0
  195. package/lib/rich-text-editor/rte/features/font-size-picker.d.ts +46 -0
  196. package/lib/rich-text-editor/rte/features/hard-break.d.ts +10 -0
  197. package/lib/rich-text-editor/rte/features/inline-image.d.ts +43 -0
  198. package/lib/rich-text-editor/rte/features/input-rule.d.ts +10 -0
  199. package/lib/rich-text-editor/rte/features/internal/basic-text-blocks.d.ts +6 -6
  200. package/lib/rich-text-editor/rte/features/internal/core.d.ts +37 -0
  201. package/lib/rich-text-editor/rte/features/internal/cursor-fix.d.ts +16 -0
  202. package/lib/rich-text-editor/rte/features/internal/foreign-html.d.ts +1 -1
  203. package/lib/rich-text-editor/rte/features/internal/history.d.ts +2 -2
  204. package/lib/rich-text-editor/rte/features/internal/input-rules.d.ts +4 -4
  205. package/lib/rich-text-editor/rte/features/italic.d.ts +17 -0
  206. package/lib/rich-text-editor/rte/features/keyboard-shortcuts.d.ts +16 -0
  207. package/lib/rich-text-editor/rte/features/link.d.ts +33 -0
  208. package/lib/rich-text-editor/rte/features/list.d.ts +24 -0
  209. package/lib/rich-text-editor/rte/features/monospace.d.ts +22 -0
  210. package/lib/rich-text-editor/rte/features/placeholder.d.ts +23 -0
  211. package/lib/rich-text-editor/rte/features/strikethrough.d.ts +17 -0
  212. package/lib/rich-text-editor/rte/features/suggest.d.ts +14 -0
  213. package/lib/rich-text-editor/rte/features/text-block-picker.d.ts +18 -0
  214. package/lib/rich-text-editor/rte/features/text-color-picker.d.ts +31 -0
  215. package/lib/rich-text-editor/rte/features/toolbar-button.d.ts +13 -0
  216. package/lib/rich-text-editor/rte/features/toolbar.d.ts +37 -0
  217. package/lib/rich-text-editor/rte/features/underline.d.ts +17 -0
  218. package/lib/rich-text-editor/rte/html-parser.d.ts +3 -3
  219. package/lib/rich-text-editor/rte/html-serializer.d.ts +3 -3
  220. package/lib/rich-text-editor/rte/instance.d.ts +10 -8
  221. package/lib/rich-text-editor/rte/public-interface.d.ts +13 -0
  222. package/lib/rich-text-editor/rte/utils/default-textblock.d.ts +2 -2
  223. package/lib/rich-text-editor/rte/utils/feature-state.d.ts +1 -1
  224. package/lib/rich-text-editor/rte/utils/text-before-cursor.d.ts +1 -1
  225. package/lib/rich-text-editor/rte/utils/ui.d.ts +8 -8
  226. package/lib/rich-text-editor/rte/view.d.ts +3 -6
  227. package/lib/rich-text-view/definition.d.ts +1 -1
  228. package/lib/rich-text-view/index.d.ts +2 -0
  229. package/lib/rich-text-view/rich-text-view.d.ts +1 -1
  230. package/lib/rich-text-view/rich-text-view.template.d.ts +2 -2
  231. package/lib/searchable-select/index.d.ts +1 -0
  232. package/lib/searchable-select/option-tag.d.ts +96 -65
  233. package/lib/searchable-select/option-tag.template.d.ts +3 -3
  234. package/lib/searchable-select/searchable-select.d.ts +929 -646
  235. package/lib/searchable-select/searchable-select.template.d.ts +3 -3
  236. package/lib/select/index.d.ts +1 -0
  237. package/lib/select/locale.d.ts +3 -0
  238. package/lib/select/select.d.ts +1240 -579
  239. package/lib/select/select.template.d.ts +3 -3
  240. package/lib/selectable-box/index.d.ts +1 -0
  241. package/lib/selectable-box/selectable-box.d.ts +94 -63
  242. package/lib/selectable-box/selectable-box.template.d.ts +2 -2
  243. package/lib/side-drawer/index.d.ts +1 -0
  244. package/lib/side-drawer/side-drawer.template.d.ts +2 -2
  245. package/lib/simple-color-picker/definition.d.ts +1 -1
  246. package/lib/simple-color-picker/index.d.ts +1 -0
  247. package/lib/simple-color-picker/simple-color-picker.d.ts +216 -153
  248. package/lib/simple-color-picker/simple-color-picker.template.d.ts +2 -2
  249. package/lib/slider/index.d.ts +1 -0
  250. package/lib/slider/slider.d.ts +299 -205
  251. package/lib/slider/slider.template.d.ts +4 -4
  252. package/lib/split-button/index.d.ts +1 -0
  253. package/lib/split-button/split-button.d.ts +288 -195
  254. package/lib/split-button/split-button.template.d.ts +3 -3
  255. package/lib/status/index.d.ts +1 -0
  256. package/lib/status/status.d.ts +98 -67
  257. package/lib/status/status.template.d.ts +3 -3
  258. package/lib/switch/index.d.ts +1 -0
  259. package/lib/switch/switch.d.ts +207 -142
  260. package/lib/switch/switch.template.d.ts +2 -2
  261. package/lib/tab/index.d.ts +1 -0
  262. package/lib/tab/tab.d.ts +288 -195
  263. package/lib/tab/tab.template.d.ts +3 -3
  264. package/lib/tab-panel/index.d.ts +1 -0
  265. package/lib/tab-panel/tab-panel.d.ts +93 -62
  266. package/lib/tab-panel/tab-panel.template.d.ts +2 -2
  267. package/lib/table/index.d.ts +1 -0
  268. package/lib/table/table-body.template.d.ts +3 -3
  269. package/lib/table/table-cell.d.ts +93 -62
  270. package/lib/table/table-cell.template.d.ts +3 -3
  271. package/lib/table/table-head.template.d.ts +3 -3
  272. package/lib/table/table-header-cell.d.ts +93 -62
  273. package/lib/table/table-header-cell.template.d.ts +3 -3
  274. package/lib/table/table-row.d.ts +93 -62
  275. package/lib/table/table-row.template.d.ts +3 -3
  276. package/lib/table/table.template.d.ts +3 -3
  277. package/lib/tabs/index.d.ts +1 -0
  278. package/lib/tabs/tabs.d.ts +2 -2
  279. package/lib/tabs/tabs.template.d.ts +2 -2
  280. package/lib/tag/index.d.ts +1 -0
  281. package/lib/tag/tag.d.ts +288 -195
  282. package/lib/tag/tag.template.d.ts +3 -3
  283. package/lib/tag-group/index.d.ts +1 -0
  284. package/lib/tag-group/tag-group.d.ts +93 -62
  285. package/lib/tag-group/tag-group.template.d.ts +2 -2
  286. package/lib/tag-name-map.d.ts +1 -1
  287. package/lib/text-area/index.d.ts +1 -0
  288. package/lib/text-area/text-area.d.ts +832 -581
  289. package/lib/text-area/text-area.template.d.ts +3 -3
  290. package/lib/text-field/index.d.ts +1 -0
  291. package/lib/text-field/text-field.d.ts +931 -649
  292. package/lib/text-field/text-field.template.d.ts +3 -3
  293. package/lib/time-picker/index.d.ts +1 -0
  294. package/lib/time-picker/time-picker.d.ts +486 -359
  295. package/lib/time-picker/time-picker.template.d.ts +3 -3
  296. package/lib/toggletip/index.d.ts +1 -0
  297. package/lib/toggletip/toggletip.d.ts +197 -135
  298. package/lib/toggletip/toggletip.template.d.ts +3 -3
  299. package/lib/tooltip/index.d.ts +1 -0
  300. package/lib/tooltip/tooltip.d.ts +101 -70
  301. package/lib/tooltip/tooltip.template.d.ts +3 -3
  302. package/lib/tree-item/index.d.ts +1 -0
  303. package/lib/tree-item/tree-item.d.ts +190 -128
  304. package/lib/tree-item/tree-item.template.d.ts +3 -3
  305. package/lib/tree-view/index.d.ts +1 -0
  306. package/lib/tree-view/tree-view.d.ts +93 -62
  307. package/lib/tree-view/tree-view.template.d.ts +2 -2
  308. package/lib/video-player/index.d.ts +1 -0
  309. package/lib/video-player/video-player.d.ts +96 -65
  310. package/lib/video-player/video-player.template.d.ts +1 -1
  311. package/lib/video-player/vivid-video-svg.d.ts +1 -1
  312. package/lib/visually-hidden/definition.d.ts +1 -1
  313. package/lib/visually-hidden/index.d.ts +1 -0
  314. package/lib/visually-hidden/visually-hidden.template.d.ts +1 -1
  315. package/locales/de-DE.cjs +3 -0
  316. package/locales/de-DE.d.ts +1 -1
  317. package/locales/de-DE.js +3 -0
  318. package/locales/en-GB.cjs +3 -0
  319. package/locales/en-GB.d.ts +1 -1
  320. package/locales/en-GB.js +3 -0
  321. package/locales/en-US.cjs +3 -0
  322. package/locales/en-US.d.ts +1 -1
  323. package/locales/en-US.js +3 -0
  324. package/locales/ja-JP.cjs +3 -0
  325. package/locales/ja-JP.d.ts +1 -1
  326. package/locales/ja-JP.js +3 -0
  327. package/locales/zh-CN.cjs +3 -0
  328. package/locales/zh-CN.d.ts +1 -1
  329. package/locales/zh-CN.js +3 -0
  330. package/package.json +6 -6
  331. package/rich-text-editor/definition.cjs +51 -24
  332. package/rich-text-editor/definition.js +52 -26
  333. package/rich-text-editor/index.cjs +7 -7
  334. package/rich-text-editor/index.js +1255 -1237
  335. package/rich-text-view/index.js +1 -1
  336. package/select/definition.cjs +104 -5
  337. package/select/definition.js +104 -5
  338. package/shared/aria/aria-change-subscription.d.ts +1 -1
  339. package/shared/aria/aria-mixin.d.ts +94 -63
  340. package/shared/aria/attribute-removal.d.ts +1 -1
  341. package/shared/aria/delegate-aria-behavior.d.ts +2 -2
  342. package/shared/aria/delegates-aria.d.ts +96 -65
  343. package/shared/aria/host-semantics-behavior.d.ts +2 -2
  344. package/shared/aria/host-semantics.d.ts +97 -66
  345. package/shared/color-picker/base-color-picker.d.ts +114 -82
  346. package/shared/datetime/dateRange.d.ts +1 -1
  347. package/shared/datetime/dateTimeStr.d.ts +4 -4
  348. package/shared/datetime/month.d.ts +1 -1
  349. package/shared/datetime/presentationDate.d.ts +2 -2
  350. package/shared/datetime/presentationDateRange.d.ts +2 -2
  351. package/shared/datetime/presentationDateTime.d.ts +2 -2
  352. package/shared/datetime/presentationTime.d.ts +1 -1
  353. package/shared/datetime/year.d.ts +1 -1
  354. package/shared/deprecation/replaced-props.d.ts +95 -60
  355. package/shared/design-system/createRegisterFunction.d.ts +1 -1
  356. package/shared/design-system/defineVividComponent.d.ts +1 -1
  357. package/shared/feedback/feedback-message.d.ts +96 -65
  358. package/shared/feedback/mixins.d.ts +200 -138
  359. package/shared/foundation/button/button.d.ts +202 -139
  360. package/shared/foundation/button/button.template.d.ts +2 -2
  361. package/shared/foundation/form-associated/form-associated.d.ts +213 -147
  362. package/shared/foundation/listbox/listbox.d.ts +1 -1
  363. package/shared/foundation/test-utilities/fixture.d.ts +18 -0
  364. package/shared/foundation/vivid-element/vivid-element.d.ts +194 -131
  365. package/shared/localization/Locale.d.ts +31 -29
  366. package/shared/localization/index.d.ts +1 -1
  367. package/shared/patterns/affix.d.ts +195 -133
  368. package/shared/patterns/anchored.d.ts +202 -140
  369. package/shared/patterns/char-count/char-count.d.ts +99 -68
  370. package/shared/patterns/chevron.d.ts +2 -2
  371. package/shared/patterns/form-elements/form-element.d.ts +114 -488
  372. package/shared/patterns/form-elements/with-contextual-help.d.ts +117 -903
  373. package/shared/patterns/form-elements/with-error-text.d.ts +120 -906
  374. package/shared/patterns/form-elements/with-success-text.d.ts +97 -66
  375. package/shared/patterns/linkable.d.ts +106 -117
  376. package/shared/patterns/localized.d.ts +197 -135
  377. package/shared/patterns/trapped-focus.d.ts +95 -64
  378. package/shared/picker-field/mixins/calendar-picker.d.ts +251 -188
  379. package/shared/picker-field/mixins/calendar-picker.template.d.ts +271 -208
  380. package/shared/picker-field/mixins/calendar-segments/calendarGrid.d.ts +3 -3
  381. package/shared/picker-field/mixins/calendar-segments/monthPickerGrid.d.ts +2 -2
  382. package/shared/picker-field/mixins/calendar-segments/segment.d.ts +2 -2
  383. package/shared/picker-field/mixins/inline-time-picker/columns.d.ts +2 -2
  384. package/shared/picker-field/mixins/inline-time-picker/index.d.ts +1 -0
  385. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +95 -64
  386. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.template.d.ts +3 -3
  387. package/shared/picker-field/mixins/inline-time-picker/picker-option.d.ts +1 -1
  388. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +277 -1102
  389. package/shared/picker-field/mixins/single-date-picker.d.ts +274 -1953
  390. package/shared/picker-field/mixins/single-value-picker.d.ts +236 -173
  391. package/shared/picker-field/mixins/time-selection-picker.d.ts +257 -1046
  392. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +486 -360
  393. package/shared/picker-field/picker-field.d.ts +735 -514
  394. package/shared/picker-field/picker-field.template.d.ts +2 -2
  395. package/shared/templating/attribute-binding-behaviour.d.ts +1 -1
  396. package/shared/templating/render-in-light-dom.d.ts +2 -2
  397. package/shared/utils/closest-of-type.d.ts +2 -0
  398. package/shared/utils/direct-children-of-type.d.ts +2 -0
  399. package/shared/utils/dom-traversal-types.d.ts +3 -0
  400. package/shared/utils/first-of-type.d.ts +2 -0
  401. package/shared/utils/last-of-type.d.ts +2 -0
  402. package/shared/utils/nested-children-of-type.d.ts +2 -0
  403. package/shared/utils/next-of-type.d.ts +2 -0
  404. package/shared/utils/numberConverter.d.ts +1 -1
  405. package/shared/utils/prev-of-type.d.ts +2 -0
  406. package/shared/utils/promise.d.ts +2 -2
  407. package/shared/utils/siblings-of-type.d.ts +2 -0
  408. package/styles/core/all.css +2 -2
  409. package/styles/core/theme.css +2 -2
  410. package/styles/core/typography.css +1 -1
  411. package/styles/tokens/theme-dark.css +4 -4
  412. package/styles/tokens/theme-light.css +4 -4
  413. package/styles/tokens/vivid-2-compat.css +1 -1
  414. package/unbundled/base-color-picker.cjs +2 -2
  415. package/unbundled/base-color-picker.js +2 -2
  416. package/unbundled/localized.cjs +1 -0
  417. package/unbundled/localized.js +1 -0
  418. package/unbundled/slottable-request.cjs +8 -5
  419. package/unbundled/slottable-request.js +8 -6
  420. package/unbundled/vivid-element.cjs +1 -1
  421. package/unbundled/vivid-element.js +1 -1
  422. package/vivid.api.json +759 -38
@@ -20,7 +20,7 @@ const divider = require('../unbundled/divider.cjs');
20
20
  const DOMPurify = require('dompurify');
21
21
  const mixins = require('../unbundled/mixins.cjs');
22
22
 
23
- const styles = ":host{display:block}.rte{display:flex;flex-direction:column;block-size:100%}.editor{display:contents}.editor-viewport{position:relative;overflow:hidden;flex:1;contain:layout}.editor-scroll-area{--editor-padding-block: 8px;--editor-padding-inline: 16px;display:flex;flex-direction:column;background-color:var(--vvd-color-canvas);block-size:100%;color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base);overflow-y:auto;--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.editor-scroll-area{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.editor-scroll-area ::-webkit-scrollbar{width:4px}.editor-scroll-area ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.editor-scroll-area ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.popovers--disabled>*{display:none!important}";
23
+ const styles = ":host{display:flex;flex-direction:column}.rte{display:flex;flex-direction:column;block-size:100%;min-block-size:0}.editor{display:contents}.editor-viewport{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;contain:layout;min-block-size:0}.editor-scroll-area{--editor-padding-inline: var( --rich-text-editor-padding-inline, 16px );--editor-padding-block: var( --rich-text-editor-padding-block, 8px );display:flex;flex:1;flex-direction:column;background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base);min-block-size:0;overflow-y:auto;--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.editor-scroll-area{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.editor-scroll-area ::-webkit-scrollbar{width:4px}.editor-scroll-area ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.editor-scroll-area ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.popovers--disabled>*{display:none!important}";
24
24
 
25
25
  // Recovery values encode a range index and an offset. They are
26
26
  // represented as numbers, because tons of them will be created when
@@ -9053,7 +9053,7 @@ class RteConfigImpl {
9053
9053
  (subFeature) => subFeature === f ? f : resolveFeatures([subFeature])
9054
9054
  )
9055
9055
  );
9056
- this.features = resolveFeatures(featuresFacades.map((f) => f[slottableRequest.impl]));
9056
+ this.features = resolveFeatures(featuresFacades.map(slottableRequest.getFeatureImpl));
9057
9057
  this.featureMap = /* @__PURE__ */ new Map();
9058
9058
  for (const f of this.features) {
9059
9059
  if (this.featureMap.has(f.name)) {
@@ -9064,7 +9064,7 @@ class RteConfigImpl {
9064
9064
  this.featureFacadesMap = /* @__PURE__ */ new Map();
9065
9065
  for (const facade of featuresFacades) {
9066
9066
  const FacadeClass = facade.constructor;
9067
- const feature = facade[slottableRequest.impl];
9067
+ const feature = slottableRequest.getFeatureImpl(facade);
9068
9068
  const instances = this.featureFacadesMap.get(FacadeClass);
9069
9069
  if (instances) {
9070
9070
  instances.push(feature);
@@ -11474,7 +11474,6 @@ class RteCursorFixFeatureImpl extends slottableRequest.RteFeatureImpl {
11474
11474
  ];
11475
11475
  }
11476
11476
  }
11477
- slottableRequest.featureFacade(RteCursorFixFeatureImpl);
11478
11477
 
11479
11478
  const hostBridgePlugin = new Plugin({
11480
11479
  state: {
@@ -11505,6 +11504,22 @@ class RteCoreImpl extends slottableRequest.RteFeatureImpl {
11505
11504
  ];
11506
11505
  }
11507
11506
  getPlugins(rte) {
11507
+ const enterKeyChainCommands = chainCommands(
11508
+ newlineInCode,
11509
+ createParagraphNear,
11510
+ liftEmptyBlock,
11511
+ splitBlockAs((node, atEnd, $from) => {
11512
+ if (!atEnd) {
11513
+ return { type: node.type, attrs: node.attrs };
11514
+ }
11515
+ return {
11516
+ type: defaultTextblockForMatch(
11517
+ $from.node($from.depth - 1).contentMatchAt($from.indexAfter($from.depth - 1))
11518
+ ),
11519
+ attrs: rte.textblockAttrs.extractFromNode(node)
11520
+ };
11521
+ })
11522
+ );
11508
11523
  return [
11509
11524
  this.contribution(this.disabled.plugin),
11510
11525
  this.contribution(
@@ -11541,22 +11556,8 @@ class RteCoreImpl extends slottableRequest.RteFeatureImpl {
11541
11556
  this.contribution(
11542
11557
  keymap({
11543
11558
  ...baseKeymap,
11544
- Enter: chainCommands(
11545
- newlineInCode,
11546
- createParagraphNear,
11547
- liftEmptyBlock,
11548
- splitBlockAs((node, atEnd, $from) => {
11549
- if (!atEnd) {
11550
- return { type: node.type, attrs: node.attrs };
11551
- }
11552
- return {
11553
- type: defaultTextblockForMatch(
11554
- $from.node($from.depth - 1).contentMatchAt($from.indexAfter($from.depth - 1))
11555
- ),
11556
- attrs: rte.textblockAttrs.extractFromNode(node)
11557
- };
11558
- })
11559
- )
11559
+ Enter: enterKeyChainCommands,
11560
+ "Shift-Enter": enterKeyChainCommands
11560
11561
  })
11561
11562
  ),
11562
11563
  this.contribution(dropCursor()),
@@ -11573,7 +11574,6 @@ class RteCoreImpl extends slottableRequest.RteFeatureImpl {
11573
11574
  ];
11574
11575
  }
11575
11576
  }
11576
- slottableRequest.featureFacade(RteCoreImpl);
11577
11577
 
11578
11578
  const DEFAULT_ALLOWED_URI_REGEXP = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.-]+(?:[^a-z+.\-:]|$))/i;
11579
11579
  const ALLOWED_URI_REGEXP_WITH_BLOB = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|blob):|[^a-z]|[a-z+.-]+(?:[^a-z+.\-:]|$))/i;
@@ -11771,7 +11771,7 @@ class RteInstance {
11771
11771
  this.feature = (Feature, featureId) => {
11772
11772
  return this[slottableRequest.impl].getPublicInterface(Feature, featureId);
11773
11773
  };
11774
- this[slottableRequest.impl] = new RteInstanceImpl(config, options);
11774
+ this[slottableRequest.impl] = new RteInstanceImpl(this, config, options);
11775
11775
  }
11776
11776
  /**
11777
11777
  * Returns the current document state.
@@ -11827,7 +11827,7 @@ class RteInstance {
11827
11827
  }
11828
11828
  }
11829
11829
  class RteInstanceImpl {
11830
- constructor(configFacade, options) {
11830
+ constructor(instanceFacade, configFacade, options) {
11831
11831
  this.options = options;
11832
11832
  this.view = null;
11833
11833
  this.dispatchTransaction = (tr) => {
@@ -11839,6 +11839,7 @@ class RteInstanceImpl {
11839
11839
  }
11840
11840
  return this.state;
11841
11841
  };
11842
+ this.facade = instanceFacade;
11842
11843
  const config = configFacade[slottableRequest.impl];
11843
11844
  this.config = config;
11844
11845
  this.schema = config.schema;
@@ -12754,7 +12755,7 @@ class RteHardBreakFeatureImpl extends slottableRequest.RteFeatureImpl {
12754
12755
  const keyBindings = {
12755
12756
  "Shift-Enter": forceBreak
12756
12757
  };
12757
- return [this.contribution(keymap(keyBindings))];
12758
+ return [this.contribution(keymap(keyBindings), slottableRequest.contributionPriority.high)];
12758
12759
  }
12759
12760
  }
12760
12761
  const RteHardBreakFeature = slottableRequest.featureFacade(RteHardBreakFeatureImpl);
@@ -15181,6 +15182,31 @@ class RteInputRuleFeatureImpl extends slottableRequest.RteFeatureImpl {
15181
15182
  }
15182
15183
  const RteInputRuleFeature = slottableRequest.featureFacade(RteInputRuleFeatureImpl);
15183
15184
 
15185
+ function toCommand(handler, rteInstance) {
15186
+ if (handler.length === 0) {
15187
+ return (_state, _dispatch) => handler();
15188
+ }
15189
+ return (_state, _dispatch) => handler(rteInstance);
15190
+ }
15191
+ class RteKeyboardShortcutsFeatureImpl extends slottableRequest.RteFeatureImpl {
15192
+ constructor(featureId, options) {
15193
+ super();
15194
+ this.featureId = featureId;
15195
+ this.options = options;
15196
+ this.name = `RteKeyboardShortcutsFeature[${featureId}]`;
15197
+ }
15198
+ getPlugins(rte) {
15199
+ const bindings = {};
15200
+ for (const [key, handler] of Object.entries(this.options.shortcuts)) {
15201
+ bindings[key] = toCommand(handler, rte.facade);
15202
+ }
15203
+ return [this.contribution(keymap(bindings), slottableRequest.contributionPriority.high)];
15204
+ }
15205
+ }
15206
+ const RteKeyboardShortcutsFeature = slottableRequest.featureFacade(
15207
+ RteKeyboardShortcutsFeatureImpl
15208
+ );
15209
+
15184
15210
  const suggestCss = ".suggest-popover{display:flex;flex-direction:column;padding:4px;gap:2px;max-block-size:408px;max-inline-size:248px;min-inline-size:128px}.suggest-loading-widget{display:inline-flex;align-items:center;margin-inline-start:2px;vertical-align:middle;white-space:normal}.suggest-empty-message{display:flex;align-items:center;justify-content:center;color:var(--vvd-color-neutral-300);font:var(--vvd-typography-base);min-block-size:40px;text-align:center}.suggest-item--visible-focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--focus-stroke-color, var(--vvd-color-cta-500)),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px));--focus-stroke-gap-color: transparent}";
15185
15211
 
15186
15212
  const isPopoverOpen = (state) => Boolean(state?.suggestions && !state.dismissed);
@@ -15566,6 +15592,7 @@ exports.RteHtmlSerializer = RteHtmlSerializer;
15566
15592
  exports.RteInlineImageFeature = RteInlineImageFeature;
15567
15593
  exports.RteInputRuleFeature = RteInputRuleFeature;
15568
15594
  exports.RteItalicFeature = RteItalicFeature;
15595
+ exports.RteKeyboardShortcutsFeature = RteKeyboardShortcutsFeature;
15569
15596
  exports.RteLinkFeature = RteLinkFeature;
15570
15597
  exports.RteListFeature = RteListFeature;
15571
15598
  exports.RteMonospaceFeature = RteMonospaceFeature;
@@ -1,6 +1,6 @@
1
1
  import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
2
2
  import { ElementStyles, observable, ref, html, volatile } from '@microsoft/fast-element';
3
- import { S as Slice, F as Fragment, M as Mark, a as MarkType, R as ReplaceError, N as Node, D as DOMSerializer, b as DOMParser, i as impl, s as sortedContributions, c as Schema, e as RteFeatureImpl, f as featureFacade, g as contributionPriority, h as NodeRange, d as dispatchSlottableRequest, r as removeSymbol } from '../unbundled/slottable-request.js';
3
+ import { S as Slice, F as Fragment, M as Mark, a as MarkType, R as ReplaceError, N as Node, D as DOMSerializer, b as DOMParser, i as impl, g as getFeatureImpl, s as sortedContributions, c as Schema, e as RteFeatureImpl, f as contributionPriority, h as featureFacade, j as NodeRange, d as dispatchSlottableRequest, r as removeSymbol } from '../unbundled/slottable-request.js';
4
4
  import { W as WithObservableLocale } from '../unbundled/localized.js';
5
5
  import { p as popupDefinition, P as Popup, a as PlacementStrategy } from '../unbundled/definition5.js';
6
6
  import { dividerDefinition } from '../divider/definition.js';
@@ -16,7 +16,7 @@ import { D as Divider } from '../unbundled/divider.js';
16
16
  import DOMPurify from 'dompurify';
17
17
  import { g as generateRandomId } from '../unbundled/mixins.js';
18
18
 
19
- const styles = ":host{display:block}.rte{display:flex;flex-direction:column;block-size:100%}.editor{display:contents}.editor-viewport{position:relative;overflow:hidden;flex:1;contain:layout}.editor-scroll-area{--editor-padding-block: 8px;--editor-padding-inline: 16px;display:flex;flex-direction:column;background-color:var(--vvd-color-canvas);block-size:100%;color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base);overflow-y:auto;--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.editor-scroll-area{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.editor-scroll-area ::-webkit-scrollbar{width:4px}.editor-scroll-area ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.editor-scroll-area ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.popovers--disabled>*{display:none!important}";
19
+ const styles = ":host{display:flex;flex-direction:column}.rte{display:flex;flex-direction:column;block-size:100%;min-block-size:0}.editor{display:contents}.editor-viewport{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;contain:layout;min-block-size:0}.editor-scroll-area{--editor-padding-inline: var( --rich-text-editor-padding-inline, 16px );--editor-padding-block: var( --rich-text-editor-padding-block, 8px );display:flex;flex:1;flex-direction:column;background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base);min-block-size:0;overflow-y:auto;--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.editor-scroll-area{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.editor-scroll-area ::-webkit-scrollbar{width:4px}.editor-scroll-area ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.editor-scroll-area ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.popovers--disabled>*{display:none!important}";
20
20
 
21
21
  // Recovery values encode a range index and an offset. They are
22
22
  // represented as numbers, because tons of them will be created when
@@ -9049,7 +9049,7 @@ class RteConfigImpl {
9049
9049
  (subFeature) => subFeature === f ? f : resolveFeatures([subFeature])
9050
9050
  )
9051
9051
  );
9052
- this.features = resolveFeatures(featuresFacades.map((f) => f[impl]));
9052
+ this.features = resolveFeatures(featuresFacades.map(getFeatureImpl));
9053
9053
  this.featureMap = /* @__PURE__ */ new Map();
9054
9054
  for (const f of this.features) {
9055
9055
  if (this.featureMap.has(f.name)) {
@@ -9060,7 +9060,7 @@ class RteConfigImpl {
9060
9060
  this.featureFacadesMap = /* @__PURE__ */ new Map();
9061
9061
  for (const facade of featuresFacades) {
9062
9062
  const FacadeClass = facade.constructor;
9063
- const feature = facade[impl];
9063
+ const feature = getFeatureImpl(facade);
9064
9064
  const instances = this.featureFacadesMap.get(FacadeClass);
9065
9065
  if (instances) {
9066
9066
  instances.push(feature);
@@ -11470,7 +11470,6 @@ class RteCursorFixFeatureImpl extends RteFeatureImpl {
11470
11470
  ];
11471
11471
  }
11472
11472
  }
11473
- featureFacade(RteCursorFixFeatureImpl);
11474
11473
 
11475
11474
  const hostBridgePlugin = new Plugin({
11476
11475
  state: {
@@ -11501,6 +11500,22 @@ class RteCoreImpl extends RteFeatureImpl {
11501
11500
  ];
11502
11501
  }
11503
11502
  getPlugins(rte) {
11503
+ const enterKeyChainCommands = chainCommands(
11504
+ newlineInCode,
11505
+ createParagraphNear,
11506
+ liftEmptyBlock,
11507
+ splitBlockAs((node, atEnd, $from) => {
11508
+ if (!atEnd) {
11509
+ return { type: node.type, attrs: node.attrs };
11510
+ }
11511
+ return {
11512
+ type: defaultTextblockForMatch(
11513
+ $from.node($from.depth - 1).contentMatchAt($from.indexAfter($from.depth - 1))
11514
+ ),
11515
+ attrs: rte.textblockAttrs.extractFromNode(node)
11516
+ };
11517
+ })
11518
+ );
11504
11519
  return [
11505
11520
  this.contribution(this.disabled.plugin),
11506
11521
  this.contribution(
@@ -11537,22 +11552,8 @@ class RteCoreImpl extends RteFeatureImpl {
11537
11552
  this.contribution(
11538
11553
  keymap({
11539
11554
  ...baseKeymap,
11540
- Enter: chainCommands(
11541
- newlineInCode,
11542
- createParagraphNear,
11543
- liftEmptyBlock,
11544
- splitBlockAs((node, atEnd, $from) => {
11545
- if (!atEnd) {
11546
- return { type: node.type, attrs: node.attrs };
11547
- }
11548
- return {
11549
- type: defaultTextblockForMatch(
11550
- $from.node($from.depth - 1).contentMatchAt($from.indexAfter($from.depth - 1))
11551
- ),
11552
- attrs: rte.textblockAttrs.extractFromNode(node)
11553
- };
11554
- })
11555
- )
11555
+ Enter: enterKeyChainCommands,
11556
+ "Shift-Enter": enterKeyChainCommands
11556
11557
  })
11557
11558
  ),
11558
11559
  this.contribution(dropCursor()),
@@ -11569,7 +11570,6 @@ class RteCoreImpl extends RteFeatureImpl {
11569
11570
  ];
11570
11571
  }
11571
11572
  }
11572
- featureFacade(RteCoreImpl);
11573
11573
 
11574
11574
  const DEFAULT_ALLOWED_URI_REGEXP = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.-]+(?:[^a-z+.\-:]|$))/i;
11575
11575
  const ALLOWED_URI_REGEXP_WITH_BLOB = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|blob):|[^a-z]|[a-z+.-]+(?:[^a-z+.\-:]|$))/i;
@@ -11767,7 +11767,7 @@ class RteInstance {
11767
11767
  this.feature = (Feature, featureId) => {
11768
11768
  return this[impl].getPublicInterface(Feature, featureId);
11769
11769
  };
11770
- this[impl] = new RteInstanceImpl(config, options);
11770
+ this[impl] = new RteInstanceImpl(this, config, options);
11771
11771
  }
11772
11772
  /**
11773
11773
  * Returns the current document state.
@@ -11823,7 +11823,7 @@ class RteInstance {
11823
11823
  }
11824
11824
  }
11825
11825
  class RteInstanceImpl {
11826
- constructor(configFacade, options) {
11826
+ constructor(instanceFacade, configFacade, options) {
11827
11827
  this.options = options;
11828
11828
  this.view = null;
11829
11829
  this.dispatchTransaction = (tr) => {
@@ -11835,6 +11835,7 @@ class RteInstanceImpl {
11835
11835
  }
11836
11836
  return this.state;
11837
11837
  };
11838
+ this.facade = instanceFacade;
11838
11839
  const config = configFacade[impl];
11839
11840
  this.config = config;
11840
11841
  this.schema = config.schema;
@@ -12750,7 +12751,7 @@ class RteHardBreakFeatureImpl extends RteFeatureImpl {
12750
12751
  const keyBindings = {
12751
12752
  "Shift-Enter": forceBreak
12752
12753
  };
12753
- return [this.contribution(keymap(keyBindings))];
12754
+ return [this.contribution(keymap(keyBindings), contributionPriority.high)];
12754
12755
  }
12755
12756
  }
12756
12757
  const RteHardBreakFeature = featureFacade(RteHardBreakFeatureImpl);
@@ -15177,6 +15178,31 @@ class RteInputRuleFeatureImpl extends RteFeatureImpl {
15177
15178
  }
15178
15179
  const RteInputRuleFeature = featureFacade(RteInputRuleFeatureImpl);
15179
15180
 
15181
+ function toCommand(handler, rteInstance) {
15182
+ if (handler.length === 0) {
15183
+ return (_state, _dispatch) => handler();
15184
+ }
15185
+ return (_state, _dispatch) => handler(rteInstance);
15186
+ }
15187
+ class RteKeyboardShortcutsFeatureImpl extends RteFeatureImpl {
15188
+ constructor(featureId, options) {
15189
+ super();
15190
+ this.featureId = featureId;
15191
+ this.options = options;
15192
+ this.name = `RteKeyboardShortcutsFeature[${featureId}]`;
15193
+ }
15194
+ getPlugins(rte) {
15195
+ const bindings = {};
15196
+ for (const [key, handler] of Object.entries(this.options.shortcuts)) {
15197
+ bindings[key] = toCommand(handler, rte.facade);
15198
+ }
15199
+ return [this.contribution(keymap(bindings), contributionPriority.high)];
15200
+ }
15201
+ }
15202
+ const RteKeyboardShortcutsFeature = featureFacade(
15203
+ RteKeyboardShortcutsFeatureImpl
15204
+ );
15205
+
15180
15206
  const suggestCss = ".suggest-popover{display:flex;flex-direction:column;padding:4px;gap:2px;max-block-size:408px;max-inline-size:248px;min-inline-size:128px}.suggest-loading-widget{display:inline-flex;align-items:center;margin-inline-start:2px;vertical-align:middle;white-space:normal}.suggest-empty-message{display:flex;align-items:center;justify-content:center;color:var(--vvd-color-neutral-300);font:var(--vvd-typography-base);min-block-size:40px;text-align:center}.suggest-item--visible-focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--focus-stroke-color, var(--vvd-color-cta-500)),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px));--focus-stroke-gap-color: transparent}";
15181
15207
 
15182
15208
  const isPopoverOpen = (state) => Boolean(state?.suggestions && !state.dismissed);
@@ -15548,4 +15574,4 @@ const registerRichTextEditor = createRegisterFunction(
15548
15574
  richTextEditorDefinition
15549
15575
  );
15550
15576
 
15551
- export { RteAlignmentFeature, RteAtomFeature, RteBase, RteBoldFeature, RteConfig, RteDropHandlerFeature, RteFileHandlerFeature, RteFontSizePickerFeature, RteHardBreakFeature, RteHtmlParser, RteHtmlSerializer, RteInlineImageFeature, RteInputRuleFeature, RteItalicFeature, RteLinkFeature, RteListFeature, RteMonospaceFeature, RtePlaceholderFeature, RteStrikethroughFeature, RteSuggestFeature, RteTextBlockPickerFeature, RteTextColorPickerFeature, RteToolbarButtonFeature, RteToolbarFeature, RteUnderlineFeature, RichTextEditor as VwcRichTextEditorElement, registerRichTextEditor, richTextEditorDefinition };
15577
+ export { RteAlignmentFeature, RteAtomFeature, RteBase, RteBoldFeature, RteConfig, RteDropHandlerFeature, RteFileHandlerFeature, RteFontSizePickerFeature, RteHardBreakFeature, RteHtmlParser, RteHtmlSerializer, RteInlineImageFeature, RteInputRuleFeature, RteItalicFeature, RteKeyboardShortcutsFeature, RteLinkFeature, RteListFeature, RteMonospaceFeature, RtePlaceholderFeature, RteStrikethroughFeature, RteSuggestFeature, RteTextBlockPickerFeature, RteTextColorPickerFeature, RteToolbarButtonFeature, RteToolbarFeature, RteUnderlineFeature, RichTextEditor as VwcRichTextEditorElement, registerRichTextEditor, richTextEditorDefinition };