@vonage/vivid 5.24.0 → 5.25.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 (331) hide show
  1. package/README.md +1 -1
  2. package/avatar/index.cjs +10 -10
  3. package/avatar/index.js +4 -3
  4. package/breadcrumb-item/index.cjs +9 -5
  5. package/breadcrumb-item/index.js +11 -6
  6. package/bundled/affix.cjs +1 -1
  7. package/bundled/affix.js +1 -1
  8. package/bundled/definition10.cjs +2 -1
  9. package/bundled/definition10.js +3 -2
  10. package/bundled/definition11.cjs +4 -4
  11. package/bundled/definition11.js +4 -3
  12. package/bundled/definition12.cjs +1 -1
  13. package/bundled/definition12.js +1 -0
  14. package/bundled/definition15.cjs +5 -5
  15. package/bundled/definition15.js +4 -3
  16. package/bundled/definition17.cjs +7 -7
  17. package/bundled/definition17.js +22 -109
  18. package/bundled/definition18.cjs +3 -3
  19. package/bundled/definition18.js +9 -31
  20. package/bundled/definition19.cjs +19 -19
  21. package/bundled/definition19.js +3 -2
  22. package/bundled/definition21.cjs +8 -8
  23. package/bundled/definition21.js +5 -4
  24. package/bundled/definition22.cjs +2 -2
  25. package/bundled/definition22.js +2 -2
  26. package/bundled/definition24.cjs +4 -4
  27. package/bundled/definition24.js +4 -3
  28. package/bundled/definition25.cjs +3 -3
  29. package/bundled/definition25.js +32 -28
  30. package/bundled/definition3.cjs +5 -5
  31. package/bundled/definition3.js +10 -40
  32. package/bundled/definition4.cjs +6 -6
  33. package/bundled/definition4.js +4 -3
  34. package/bundled/definition6.cjs +11 -11
  35. package/bundled/definition6.js +4 -3
  36. package/bundled/definition9.cjs +12 -6
  37. package/bundled/definition9.js +66 -43
  38. package/bundled/extractOptions.cjs +1 -1
  39. package/bundled/extractOptions.js +2 -2
  40. package/bundled/icon.cjs +1 -0
  41. package/bundled/icon.js +34 -0
  42. package/bundled/listbox.cjs +1 -1
  43. package/bundled/listbox.js +5 -2
  44. package/bundled/mixins.cjs +8 -8
  45. package/bundled/mixins.js +4 -3
  46. package/bundled/optgroup.cjs +1 -0
  47. package/bundled/optgroup.js +27 -0
  48. package/bundled/option.cjs +1 -0
  49. package/bundled/option.js +93 -0
  50. package/bundled/vivid-element.cjs +1 -1
  51. package/bundled/vivid-element.js +1 -1
  52. package/card/index.cjs +22 -22
  53. package/card/index.js +4 -3
  54. package/color-picker/index.cjs +18 -18
  55. package/color-picker/index.js +4 -3
  56. package/combobox/index.cjs +7 -7
  57. package/combobox/index.js +4 -2
  58. package/custom-elements.json +4159 -3847
  59. package/data-grid/index.cjs +24 -24
  60. package/data-grid/index.js +4 -3
  61. package/dial-pad/index.cjs +21 -21
  62. package/dial-pad/index.js +4 -3
  63. package/dialog/index.cjs +14 -14
  64. package/dialog/index.js +4 -3
  65. package/empty-state/index.cjs +3 -3
  66. package/empty-state/index.js +4 -3
  67. package/file-picker/index.cjs +7 -7
  68. package/file-picker/index.js +4 -3
  69. package/icon/definition.cjs +2 -1
  70. package/icon/definition.js +2 -1
  71. package/index.cjs +148 -141
  72. package/index.js +41 -37
  73. package/lib/accordion-item/accordion-item.d.ts +1 -0
  74. package/lib/combobox/combobox.d.ts +1 -1
  75. package/lib/components.d.ts +1 -0
  76. package/lib/dial-pad/dial-pad.d.ts +0 -1
  77. package/lib/listbox/definition.d.ts +3 -0
  78. package/lib/listbox/index.d.ts +1 -0
  79. package/lib/listbox/listbox.d.ts +1302 -0
  80. package/lib/listbox/listbox.template.d.ts +3 -0
  81. package/lib/listbox/variations.browser-spec.d.ts +1 -0
  82. package/lib/menu/menu.d.ts +0 -1
  83. package/lib/number-field/number-field.d.ts +0 -1
  84. package/lib/rich-text-editor/rte/features/base.d.ts +1 -0
  85. package/lib/rich-text-editor/rte/utils/default-textblock.d.ts +2 -2
  86. package/lib/tag-name-map.d.ts +2 -1
  87. package/lib/text-field/text-field.d.ts +1 -0
  88. package/lib/toggletip/toggletip.d.ts +1 -0
  89. package/lib/tooltip/tooltip.d.ts +1 -0
  90. package/listbox/definition.cjs +5 -0
  91. package/listbox/definition.js +2 -0
  92. package/listbox/index.cjs +11 -0
  93. package/listbox/index.js +540 -0
  94. package/nav/definition.cjs +1 -1
  95. package/nav/definition.js +1 -1
  96. package/nav-disclosure/definition.cjs +1 -1
  97. package/nav-disclosure/definition.js +1 -1
  98. package/nav-disclosure/index.cjs +4 -4
  99. package/nav-disclosure/index.js +4 -3
  100. package/nav-item/definition.cjs +1 -1
  101. package/nav-item/definition.js +1 -1
  102. package/note/definition.cjs +1 -1
  103. package/note/definition.js +1 -1
  104. package/number-field/definition.cjs +1 -1
  105. package/number-field/definition.js +1 -1
  106. package/optgroup/definition.cjs +2 -1
  107. package/optgroup/definition.js +2 -1
  108. package/option/definition.cjs +2 -1
  109. package/option/definition.js +2 -1
  110. package/package.json +8 -7
  111. package/pagination/definition.cjs +1 -1
  112. package/pagination/definition.js +1 -1
  113. package/platform-switch/definition.cjs +1 -1
  114. package/platform-switch/definition.js +1 -1
  115. package/popover/definition.cjs +1 -1
  116. package/popover/definition.js +1 -1
  117. package/popover/index.cjs +5 -5
  118. package/popover/index.js +4 -3
  119. package/progress/definition.cjs +1 -1
  120. package/progress/definition.js +1 -1
  121. package/radio/definition.cjs +1 -1
  122. package/radio/definition.js +1 -1
  123. package/radio-group/definition.cjs +1 -1
  124. package/radio-group/definition.js +1 -1
  125. package/range-slider/definition.cjs +1 -1
  126. package/range-slider/definition.js +1 -1
  127. package/rich-text-editor/definition.cjs +1 -1
  128. package/rich-text-editor/definition.js +1 -1
  129. package/rich-text-editor/index.cjs +13 -13
  130. package/rich-text-editor/index.js +22 -19
  131. package/rich-text-view/definition.cjs +1 -1
  132. package/rich-text-view/definition.js +1 -1
  133. package/searchable-select/definition.cjs +1 -1
  134. package/searchable-select/definition.js +1 -1
  135. package/searchable-select/index.cjs +23 -23
  136. package/searchable-select/index.js +10 -7
  137. package/select/definition.cjs +1 -1
  138. package/select/definition.js +1 -1
  139. package/selectable-box/definition.cjs +1 -1
  140. package/selectable-box/definition.js +1 -1
  141. package/shared/listbox/commands.d.ts +17 -0
  142. package/shared/listbox/move.d.ts +6 -0
  143. package/shared/listbox/options.d.ts +12 -0
  144. package/shared/listbox/selection.d.ts +28 -0
  145. package/shared/listbox/state.d.ts +26 -0
  146. package/shared/listbox/typeahead.d.ts +8 -0
  147. package/shared/listbox/with-options-filter.d.ts +440 -0
  148. package/shared/listbox/with-options.d.ts +862 -0
  149. package/side-drawer/definition.cjs +1 -1
  150. package/side-drawer/definition.js +1 -1
  151. package/simple-color-picker/definition.cjs +1 -1
  152. package/simple-color-picker/definition.js +1 -1
  153. package/simple-color-picker/index.cjs +6 -6
  154. package/simple-color-picker/index.js +4 -3
  155. package/split-button/definition.cjs +1 -1
  156. package/split-button/definition.js +1 -1
  157. package/status/definition.cjs +1 -1
  158. package/status/definition.js +1 -1
  159. package/switch/definition.cjs +1 -1
  160. package/switch/definition.js +1 -1
  161. package/tab/definition.cjs +1 -1
  162. package/tab/definition.js +1 -1
  163. package/tab-panel/definition.cjs +1 -1
  164. package/tab-panel/definition.js +1 -1
  165. package/table/definition.cjs +1 -1
  166. package/table/definition.js +1 -1
  167. package/table/index.cjs +13 -13
  168. package/table/index.js +4 -3
  169. package/tabs/definition.cjs +1 -1
  170. package/tabs/definition.js +1 -1
  171. package/tag/definition.cjs +1 -1
  172. package/tag/definition.js +1 -1
  173. package/tag/index.cjs +11 -11
  174. package/tag/index.js +4 -3
  175. package/tag-group/definition.cjs +1 -1
  176. package/tag-group/definition.js +1 -1
  177. package/text-area/definition.cjs +1 -1
  178. package/text-area/definition.js +1 -1
  179. package/time-picker/definition.cjs +1 -1
  180. package/time-picker/definition.js +1 -1
  181. package/tree-item/definition.cjs +1 -1
  182. package/tree-item/definition.js +1 -1
  183. package/tree-view/definition.cjs +1 -1
  184. package/tree-view/definition.js +1 -1
  185. package/unbundled/affix.cjs +2 -2
  186. package/unbundled/affix.js +1 -1
  187. package/unbundled/base-progress.cjs +1 -1
  188. package/unbundled/base-progress.js +1 -1
  189. package/unbundled/button.cjs +2 -2
  190. package/unbundled/button.js +2 -2
  191. package/unbundled/definition.cjs +2 -65
  192. package/unbundled/definition.js +4 -61
  193. package/unbundled/definition11.cjs +4 -3
  194. package/unbundled/definition11.js +3 -2
  195. package/unbundled/definition12.cjs +3 -2
  196. package/unbundled/definition12.js +3 -2
  197. package/unbundled/definition14.cjs +2 -1
  198. package/unbundled/definition14.js +2 -1
  199. package/unbundled/definition17.cjs +9 -4
  200. package/unbundled/definition17.js +9 -4
  201. package/unbundled/definition2.cjs +7 -2
  202. package/unbundled/definition2.js +8 -3
  203. package/unbundled/definition21.cjs +2 -1
  204. package/unbundled/definition21.js +2 -1
  205. package/unbundled/definition23.cjs +2 -1
  206. package/unbundled/definition23.js +2 -1
  207. package/unbundled/definition24.cjs +6 -4
  208. package/unbundled/definition24.js +6 -4
  209. package/unbundled/definition25.cjs +2 -1
  210. package/unbundled/definition25.js +2 -1
  211. package/unbundled/definition26.cjs +7 -4
  212. package/unbundled/definition26.js +7 -4
  213. package/unbundled/definition27.cjs +39 -5
  214. package/unbundled/definition27.js +40 -6
  215. package/unbundled/definition28.cjs +4 -3
  216. package/unbundled/definition28.js +4 -3
  217. package/unbundled/definition29.cjs +5 -168
  218. package/unbundled/definition29.js +11 -162
  219. package/unbundled/definition30.cjs +2 -63
  220. package/unbundled/definition30.js +5 -54
  221. package/unbundled/definition31.cjs +5 -3
  222. package/unbundled/definition31.js +5 -3
  223. package/unbundled/definition32.cjs +2 -1
  224. package/unbundled/definition32.js +2 -1
  225. package/unbundled/definition35.cjs +2 -1
  226. package/unbundled/definition35.js +2 -1
  227. package/unbundled/definition37.cjs +1 -1
  228. package/unbundled/definition37.js +1 -1
  229. package/unbundled/definition39.cjs +1 -1
  230. package/unbundled/definition39.js +1 -1
  231. package/unbundled/definition40.cjs +4 -2
  232. package/unbundled/definition40.js +4 -2
  233. package/unbundled/definition41.cjs +11 -6
  234. package/unbundled/definition41.js +11 -6
  235. package/unbundled/definition42.cjs +5 -4
  236. package/unbundled/definition42.js +5 -4
  237. package/unbundled/definition44.cjs +3 -2
  238. package/unbundled/definition44.js +3 -2
  239. package/unbundled/definition45.cjs +2 -2
  240. package/unbundled/definition45.js +2 -2
  241. package/unbundled/definition49.cjs +583 -79
  242. package/unbundled/definition49.js +579 -76
  243. package/unbundled/definition50.cjs +71 -33
  244. package/unbundled/definition50.js +67 -29
  245. package/unbundled/definition51.cjs +54 -23
  246. package/unbundled/definition51.js +52 -18
  247. package/unbundled/definition52.cjs +23 -39
  248. package/unbundled/definition52.js +17 -36
  249. package/unbundled/definition53.cjs +29 -314
  250. package/unbundled/definition53.js +27 -312
  251. package/unbundled/definition54.cjs +302 -195
  252. package/unbundled/definition54.js +298 -191
  253. package/unbundled/definition55.cjs +210 -40
  254. package/unbundled/definition55.js +206 -36
  255. package/unbundled/definition56.cjs +42 -266
  256. package/unbundled/definition56.js +38 -262
  257. package/unbundled/definition57.cjs +270 -50
  258. package/unbundled/definition57.js +267 -46
  259. package/unbundled/definition58.cjs +48 -146
  260. package/unbundled/definition58.js +47 -143
  261. package/unbundled/definition59.cjs +127 -225
  262. package/unbundled/definition59.js +122 -223
  263. package/unbundled/definition6.cjs +2 -1
  264. package/unbundled/definition6.js +2 -1
  265. package/unbundled/definition60.cjs +199 -418
  266. package/unbundled/definition60.js +196 -415
  267. package/unbundled/definition61.cjs +442 -3738
  268. package/unbundled/definition61.js +432 -3565
  269. package/unbundled/definition62.cjs +3717 -730
  270. package/unbundled/definition62.js +3544 -720
  271. package/unbundled/definition63.cjs +770 -97
  272. package/unbundled/definition63.js +767 -94
  273. package/unbundled/definition64.cjs +100 -999
  274. package/unbundled/definition64.js +98 -994
  275. package/unbundled/definition65.cjs +991 -93
  276. package/unbundled/definition65.js +985 -90
  277. package/unbundled/definition66.cjs +109 -73
  278. package/unbundled/definition66.js +105 -63
  279. package/unbundled/definition67.cjs +69 -155
  280. package/unbundled/definition67.js +60 -152
  281. package/unbundled/definition68.cjs +155 -119
  282. package/unbundled/definition68.js +151 -115
  283. package/unbundled/definition69.cjs +124 -49
  284. package/unbundled/definition69.js +120 -45
  285. package/unbundled/definition70.cjs +51 -85
  286. package/unbundled/definition70.js +50 -81
  287. package/unbundled/definition71.cjs +91 -19
  288. package/unbundled/definition71.js +86 -14
  289. package/unbundled/definition72.cjs +20 -87
  290. package/unbundled/definition72.js +14 -84
  291. package/unbundled/definition73.cjs +77 -294
  292. package/unbundled/definition73.js +72 -217
  293. package/unbundled/definition74.cjs +289 -311
  294. package/unbundled/definition74.js +219 -306
  295. package/unbundled/definition75.cjs +326 -26
  296. package/unbundled/definition75.js +317 -23
  297. package/unbundled/definition76.cjs +27 -122
  298. package/unbundled/definition76.js +22 -118
  299. package/unbundled/definition77.cjs +105 -232
  300. package/unbundled/definition77.js +101 -228
  301. package/unbundled/definition78.cjs +259 -26
  302. package/unbundled/definition78.js +249 -23
  303. package/unbundled/definition79.cjs +29 -148
  304. package/unbundled/definition79.js +27 -133
  305. package/unbundled/definition80.cjs +118 -173
  306. package/unbundled/definition80.js +109 -169
  307. package/unbundled/definition81.cjs +181 -477
  308. package/unbundled/definition81.js +176 -471
  309. package/unbundled/definition82.cjs +517 -0
  310. package/unbundled/definition82.js +497 -0
  311. package/unbundled/extractOptions.cjs +5 -5
  312. package/unbundled/extractOptions.js +2 -2
  313. package/unbundled/icon.cjs +67 -0
  314. package/unbundled/icon.js +61 -0
  315. package/unbundled/linkable.cjs +1 -1
  316. package/unbundled/linkable.js +1 -1
  317. package/unbundled/listbox.cjs +8 -3
  318. package/unbundled/listbox.js +7 -2
  319. package/unbundled/mixins.cjs +2 -1
  320. package/unbundled/mixins.js +2 -1
  321. package/unbundled/optgroup.cjs +66 -0
  322. package/unbundled/optgroup.js +54 -0
  323. package/unbundled/option.cjs +176 -0
  324. package/unbundled/option.js +164 -0
  325. package/unbundled/time-selection-picker.template.cjs +1 -1
  326. package/unbundled/time-selection-picker.template.js +1 -1
  327. package/unbundled/vivid-element.cjs +1 -1
  328. package/unbundled/vivid-element.js +1 -1
  329. package/video-player/definition.cjs +1 -1
  330. package/video-player/definition.js +1 -1
  331. package/vivid.api.json +336 -193
@@ -1,109 +1,145 @@
1
1
  require("./chunk.cjs");
2
2
  const require_vivid_element = require("./vivid-element.cjs");
3
3
  const require_decorate = require("./decorate.cjs");
4
- const require_dialog = require("./dialog.cjs");
4
+ const require_delegates_aria = require("./delegates-aria.cjs");
5
+ const require_enums = require("./enums.cjs");
6
+ const require_definition = require("./definition23.cjs");
7
+ const require_definition$1 = require("./definition59.cjs");
5
8
  let _microsoft_fast_element = require("@microsoft/fast-element");
6
9
  let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
7
- //#region src/lib/side-drawer/side-drawer.ts
10
+ //#region src/lib/selectable-box/selectable-box.scss?inline
11
+ var selectable_box_default = ":host{display:flex}.base.connotation-cta{--_connotation-color-firm-all:var(--vvd-selectable-box-cta-firm-all,var(--vvd-color-cta-600));--_connotation-color-pale:var(--vvd-selectable-box-cta-pale,var(--vvd-color-cta-300));--_connotation-color-fierce:var(--vvd-selectable-box-cta-fierce,var(--vvd-color-cta-700));--_connotation-color-faint:var(--vvd-selectable-box-cta-faint,var(--vvd-color-cta-50));--_connotation-color-soft:var(--vvd-selectable-box-cta-soft,var(--vvd-color-cta-100))}.base:not(.connotation-cta){--_connotation-color-firm-all:var(--vvd-selectable-box-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-pale:var(--vvd-selectable-box-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-selectable-box-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-faint:var(--vvd-selectable-box-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-soft:var(--vvd-selectable-box-accent-soft,var(--vvd-color-neutral-100))}.base{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.base.selected:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-firm-all)}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-firm-all)}.base:disabled,.base.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.base{--control-offset:calc(var(--selectable-box-spacing,16px) + 36px);padding:var(--selectable-box-spacing,16px);border:1px solid var(--_appearance-color-outline);background-color:var(--_appearance-color-fill);text-align:start;border-radius:8px;inline-size:100%;position:relative}.base.control-placement-end-stacked,.base.control-placement-start-stacked{padding-block-start:var(--control-offset)}.base.control-placement-start{padding-inline-start:var(--control-offset)}.base.control-placement-end{padding-inline-end:var(--control-offset)}.base:focus-visible{--focus-stroke-gap-color:transparent;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))}.base.tight{min-height:calc(var(--selectable-box-spacing,16px) * 2 + 22px);padding:0;overflow:hidden}.base.selected{background-color:var(--selectable-box-checked-bg,var(--_appearance-color-fill))}.base.clickable{cursor:pointer}.control{position:absolute;inset-block-start:var(--selectable-box-spacing,16px)}.control.start-stacked,.control.start{inset-inline-start:var(--selectable-box-spacing,16px)}.control.end-stacked,.control.end{inset-inline-end:var(--selectable-box-spacing,16px)}";
12
+ //#endregion
13
+ //#region src/lib/selectable-box/selectable-box.ts
8
14
  /**
9
15
  * @public
10
- * @component side-drawer
11
- * @slot - Sets assigned nodes to the side drawer itself.
12
- * @slot app-content - Sets assigned nodes to the main application content, the side drawer is opened next to.
13
- * @event {CustomEvent<undefined>} close - Fired when the side drawer is closed.
14
- * @event {CustomEvent<undefined>} open - Fired when the side drawer is opened.
15
- * @event {CustomEvent<undefined>} cancel - Fired when the user requests to close the side-drawer. You can prevent the side drawer from closing by calling `.preventDefault()` on the event.
16
+ * @component selectable-box
17
+ * @slot default - Slot for box's content.
18
+ * @event {CustomEvent<undefined>} change - Fired when the checked state changes
19
+ * @testAction check check #control
20
+ * @testAction uncheck uncheck #control
21
+ * @testQuery checked checked true
22
+ * @testQuery unchecked checked false
23
+ * @testRef control nestedShadow [data-vvd-component].control div.control
16
24
  */
17
- var SideDrawer = class extends require_vivid_element.VividElement {
25
+ var SelectableBox = class extends require_delegates_aria.DelegatesAria(require_vivid_element.VividElement) {
18
26
  constructor(..._args) {
19
27
  super(..._args);
20
- this.alternate = false;
21
- this.modal = false;
22
- this.open = false;
23
- this.trailing = false;
24
- }
25
- attributeChangedCallback(name, oldValue, newValue) {
26
- super.attributeChangedCallback(name, oldValue, newValue);
27
- switch (name) {
28
- case "open": if (this.open) this.#open();
29
- else this.#close();
30
- }
31
- }
32
- #close() {
33
- this.$emit("close", void 0, { bubbles: false });
34
- }
35
- #open() {
36
- this.$emit("open", void 0, { bubbles: false });
28
+ this.checked = false;
29
+ this.clickableBox = false;
30
+ this.controlPlacement = "end-stacked";
31
+ this.tight = false;
32
+ this.disabled = false;
37
33
  }
38
34
  /** @internal */
39
- _onKeydown(event) {
40
- if (require_dialog.handleEscapeKeyAndStopPropogation(event)) {
41
- this._handleCloseRequest();
42
- return;
43
- } else return true;
35
+ _handleCheckedChange() {
36
+ if (this.disabled) return;
37
+ if (this.controlType === "radio" && this.checked) return;
38
+ this.checked = !this.checked;
39
+ if (this.clickableBox) this.$emit("change");
44
40
  }
45
41
  /** @internal */
46
- _handleCloseRequest() {
47
- if (this.$emit("cancel", void 0, {
48
- bubbles: false,
49
- cancelable: true
50
- })) this.open = false;
42
+ _handleKeydown(event) {
43
+ if (this.disabled) return true;
44
+ if ((event.code === "Space" || event.code === "Enter") && this.clickableBox) {
45
+ this._handleCheckedChange();
46
+ return;
47
+ }
48
+ return true;
51
49
  }
52
50
  };
53
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SideDrawer.prototype, "alternate", void 0);
54
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SideDrawer.prototype, "modal", void 0);
55
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SideDrawer.prototype, "open", void 0);
56
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SideDrawer.prototype, "trailing", void 0);
57
- //#endregion
58
- //#region src/lib/side-drawer/side-drawer.scss?inline
59
- var side_drawer_default = ":host{display:block}.side-drawer-app-content{block-size:100%}.control{--scrollbar-track-color:transparent;--scrollbar-thumb-color:color-mix(in sRGB, var(--vvd-color-neutral-950), transparent 70%);scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.control ::-webkit-scrollbar{width:4px}.control ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.control ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-fallback-track-color,var(--scrollbar-thumb-color));border:0;border-radius:4px}.control{z-index:1;background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);inline-size:280px;position:fixed;inset-block:0;overflow-y:auto}.control[part~=vvd-theme-alternate]{background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);color-scheme:var(--vvd-color-scheme)}.control.trailing{inset-inline-end:0}.control:not(.open).trailing{transform:translate(100%)}.control:not(.open):not(.trailing){transform:translate(-100%)}.control.open:not(.modal).trailing+.side-drawer-app-content{margin-inline-end:var(--side-drawer-app-content-offset,280px)}.control.open:not(.modal):not(.trailing)+.side-drawer-app-content{margin-inline-start:var(--side-drawer-app-content-offset,280px)}@media (prefers-reduced-motion:no-preference){.control{transition:transform .2s cubic-bezier(.4,0,.2,1)}}.scrim{background-color:var(--vvd-color-canvas-text,currentColor);opacity:.5;position:fixed;inset:0}.scrim:not(.open){display:none}";
51
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SelectableBox.prototype, "checked", void 0);
52
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
53
+ attribute: "clickable-box",
54
+ mode: "boolean"
55
+ })], SelectableBox.prototype, "clickableBox", void 0);
56
+ require_decorate.__decorate([_microsoft_fast_element.attr], SelectableBox.prototype, "connotation", void 0);
57
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "control-type" })], SelectableBox.prototype, "controlType", void 0);
58
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
59
+ attribute: "control-placement",
60
+ mode: "fromView"
61
+ })], SelectableBox.prototype, "controlPlacement", void 0);
62
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SelectableBox.prototype, "tight", void 0);
63
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], SelectableBox.prototype, "disabled", void 0);
60
64
  //#endregion
61
- //#region src/lib/side-drawer/side-drawer.template.ts
62
- var sideDrawerTemplate = _microsoft_fast_element.html`
63
- <div
64
- class="${(x) => (0, _microsoft_fast_web_utilities.classNames)("control", ["modal", x.modal], ["open", x.open], ["trailing", x.trailing])}"
65
- ?inert="${(x) => !x.open}"
66
- part="base ${(x) => x.alternate ? "vvd-theme-alternate" : ""}"
67
- @keydown="${(x, c) => x._onKeydown(c.event)}"
68
- >
69
- <slot></slot>
70
- </div>
71
-
72
- <div class="side-drawer-app-content" ?inert="${(x) => x.open && x.modal}">
73
- <slot name="app-content"></slot>
74
- </div>
75
-
76
- ${(0, _microsoft_fast_element.when)((x) => x.modal, _microsoft_fast_element.html`<div
77
- class="${(x) => (0, _microsoft_fast_web_utilities.classNames)("scrim", ["open", x.open])}"
78
- @click="${(x) => x._handleCloseRequest()}"
79
- ></div>`)}
80
- `;
65
+ //#region src/lib/selectable-box/selectable-box.template.ts
66
+ function handleControlChange(x) {
67
+ if (!x.clickableBox) x._handleCheckedChange();
68
+ }
69
+ function checkbox(context) {
70
+ const checkboxTag = context.tagFor(require_definition.Checkbox);
71
+ return _microsoft_fast_element.html`${(0, _microsoft_fast_element.when)((x) => x.controlType !== "radio", _microsoft_fast_element.html`
72
+ <${checkboxTag}
73
+ ${require_delegates_aria.delegateAria({ ariaLabel: (x) => !x.clickableBox && x.ariaLabel ? x.ariaLabel : null }, { onlySpecified: true })}
74
+ @change="${(x) => handleControlChange(x)}"
75
+ class="control checkbox ${(x) => x.controlPlacement}"
76
+ connotation="${(x) => x.connotation === "cta" ? require_enums.Connotation.CTA : require_enums.Connotation.Accent}"
77
+ :checked="${(x) => x.checked}"
78
+ ?disabled="${(x) => x.disabled}"
79
+ inert="${(x) => x.clickableBox ? true : null}"
80
+ ></${checkboxTag}>`)} `;
81
+ }
82
+ function radio(context) {
83
+ const radioTag = context.tagFor(require_definition$1.Radio);
84
+ return _microsoft_fast_element.html`${(0, _microsoft_fast_element.when)((x) => x.controlType === "radio", _microsoft_fast_element.html`
85
+ <${radioTag}
86
+ ${require_delegates_aria.delegateAria({ ariaLabel: (x) => !x.clickableBox && x.ariaLabel ? x.ariaLabel : null }, { onlySpecified: true })}
87
+ @change="${(x) => handleControlChange(x)}"
88
+ class="control radio ${(x) => x.controlPlacement}"
89
+ connotation="${(x) => x.connotation === "cta" ? require_enums.Connotation.CTA : require_enums.Connotation.Accent}"
90
+ :checked="${(x) => x.checked}"
91
+ ?disabled="${(x) => x.disabled}"
92
+ inert="${(x) => x.clickableBox ? true : null}"
93
+ ></${radioTag}>`)} `;
94
+ }
95
+ var SelectableBoxTemplate = (context) => {
96
+ return _microsoft_fast_element.html`<template>
97
+ <div
98
+ class="${(x) => (0, _microsoft_fast_web_utilities.classNames)("base", [`connotation-${x.connotation}`, Boolean(x.connotation)], ["tight", x.tight], ["selected", x.checked], ["clickable", x.clickableBox], ["readonly", !x.clickableBox], [`control-placement-${x.controlPlacement}`, Boolean(x.controlPlacement)], ["disabled", x.disabled])}"
99
+ tabindex="${(x) => x.clickableBox && !x.disabled ? "0" : null}"
100
+ ${require_delegates_aria.delegateAria({
101
+ role: (x) => x.clickableBox ? "button" : null,
102
+ ariaPressed: (x) => x.clickableBox ? x.checked ? "true" : "false" : null,
103
+ ariaLabel: (x) => x.clickableBox ? x.ariaLabel : null,
104
+ ariaDisabled: (x) => x.clickableBox && x.disabled ? "true" : null
105
+ })}
106
+ @keydown="${(x, c) => x._handleKeydown(c.event)}"
107
+ @click="${(x) => x.clickableBox ? x._handleCheckedChange() : null}"
108
+ >
109
+ ${checkbox(context)} ${radio(context)}
110
+ <slot></slot>
111
+ </div>
112
+ </template>`;
113
+ };
81
114
  //#endregion
82
- //#region src/lib/side-drawer/definition.ts
115
+ //#region src/lib/selectable-box/definition.ts
83
116
  /** @internal */
84
- var sideDrawerDefinition = require_vivid_element.defineVividComponent("side-drawer", SideDrawer, sideDrawerTemplate, [], { styles: side_drawer_default });
117
+ var selectableBoxDefinition = require_vivid_element.defineVividComponent("selectable-box", SelectableBox, SelectableBoxTemplate, [require_definition.checkboxDefinition, require_definition$1.radioDefinition], {
118
+ styles: selectable_box_default,
119
+ shadowOptions: { delegatesFocus: true }
120
+ });
85
121
  /**
86
- * Registers the side-drawer elements with the design system.
122
+ * Registers the selectable-box element with the design system.
87
123
  *
88
124
  * @param prefix - the prefix to use for the component name
89
125
  */
90
- var registerSideDrawer = require_vivid_element.createRegisterFunction(sideDrawerDefinition);
126
+ var registerSelectableBox = require_vivid_element.createRegisterFunction(selectableBoxDefinition);
91
127
  //#endregion
92
- Object.defineProperty(exports, "SideDrawer", {
128
+ Object.defineProperty(exports, "SelectableBox", {
93
129
  enumerable: true,
94
130
  get: function() {
95
- return SideDrawer;
131
+ return SelectableBox;
96
132
  }
97
133
  });
98
- Object.defineProperty(exports, "registerSideDrawer", {
134
+ Object.defineProperty(exports, "registerSelectableBox", {
99
135
  enumerable: true,
100
136
  get: function() {
101
- return registerSideDrawer;
137
+ return registerSelectableBox;
102
138
  }
103
139
  });
104
- Object.defineProperty(exports, "sideDrawerDefinition", {
140
+ Object.defineProperty(exports, "selectableBoxDefinition", {
105
141
  enumerable: true,
106
142
  get: function() {
107
- return sideDrawerDefinition;
143
+ return selectableBoxDefinition;
108
144
  }
109
145
  });
@@ -1,85 +1,127 @@
1
1
  import { d as createRegisterFunction, t as VividElement, u as defineVividComponent } from "./vivid-element.js";
2
2
  import { t as __decorate } from "./decorate.js";
3
- import { t as handleEscapeKeyAndStopPropogation } from "./dialog.js";
3
+ import { n as delegateAria, t as DelegatesAria } from "./delegates-aria.js";
4
+ import { r as Connotation } from "./enums.js";
5
+ import { r as Checkbox, t as checkboxDefinition } from "./definition23.js";
6
+ import { r as Radio, t as radioDefinition } from "./definition59.js";
4
7
  import { attr, html, when } from "@microsoft/fast-element";
5
8
  import { classNames } from "@microsoft/fast-web-utilities";
6
- //#region src/lib/side-drawer/side-drawer.ts
9
+ //#region src/lib/selectable-box/selectable-box.scss?inline
10
+ var selectable_box_default = ":host{display:flex}.base.connotation-cta{--_connotation-color-firm-all:var(--vvd-selectable-box-cta-firm-all,var(--vvd-color-cta-600));--_connotation-color-pale:var(--vvd-selectable-box-cta-pale,var(--vvd-color-cta-300));--_connotation-color-fierce:var(--vvd-selectable-box-cta-fierce,var(--vvd-color-cta-700));--_connotation-color-faint:var(--vvd-selectable-box-cta-faint,var(--vvd-color-cta-50));--_connotation-color-soft:var(--vvd-selectable-box-cta-soft,var(--vvd-color-cta-100))}.base:not(.connotation-cta){--_connotation-color-firm-all:var(--vvd-selectable-box-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-pale:var(--vvd-selectable-box-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-selectable-box-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-faint:var(--vvd-selectable-box-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-soft:var(--vvd-selectable-box-accent-soft,var(--vvd-color-neutral-100))}.base{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.base.selected:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-firm-all)}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-firm-all)}.base:disabled,.base.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.base{--control-offset:calc(var(--selectable-box-spacing,16px) + 36px);padding:var(--selectable-box-spacing,16px);border:1px solid var(--_appearance-color-outline);background-color:var(--_appearance-color-fill);text-align:start;border-radius:8px;inline-size:100%;position:relative}.base.control-placement-end-stacked,.base.control-placement-start-stacked{padding-block-start:var(--control-offset)}.base.control-placement-start{padding-inline-start:var(--control-offset)}.base.control-placement-end{padding-inline-end:var(--control-offset)}.base:focus-visible{--focus-stroke-gap-color:transparent;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))}.base.tight{min-height:calc(var(--selectable-box-spacing,16px) * 2 + 22px);padding:0;overflow:hidden}.base.selected{background-color:var(--selectable-box-checked-bg,var(--_appearance-color-fill))}.base.clickable{cursor:pointer}.control{position:absolute;inset-block-start:var(--selectable-box-spacing,16px)}.control.start-stacked,.control.start{inset-inline-start:var(--selectable-box-spacing,16px)}.control.end-stacked,.control.end{inset-inline-end:var(--selectable-box-spacing,16px)}";
11
+ //#endregion
12
+ //#region src/lib/selectable-box/selectable-box.ts
7
13
  /**
8
14
  * @public
9
- * @component side-drawer
10
- * @slot - Sets assigned nodes to the side drawer itself.
11
- * @slot app-content - Sets assigned nodes to the main application content, the side drawer is opened next to.
12
- * @event {CustomEvent<undefined>} close - Fired when the side drawer is closed.
13
- * @event {CustomEvent<undefined>} open - Fired when the side drawer is opened.
14
- * @event {CustomEvent<undefined>} cancel - Fired when the user requests to close the side-drawer. You can prevent the side drawer from closing by calling `.preventDefault()` on the event.
15
+ * @component selectable-box
16
+ * @slot default - Slot for box's content.
17
+ * @event {CustomEvent<undefined>} change - Fired when the checked state changes
18
+ * @testAction check check #control
19
+ * @testAction uncheck uncheck #control
20
+ * @testQuery checked checked true
21
+ * @testQuery unchecked checked false
22
+ * @testRef control nestedShadow [data-vvd-component].control div.control
15
23
  */
16
- var SideDrawer = class extends VividElement {
24
+ var SelectableBox = class extends DelegatesAria(VividElement) {
17
25
  constructor(..._args) {
18
26
  super(..._args);
19
- this.alternate = false;
20
- this.modal = false;
21
- this.open = false;
22
- this.trailing = false;
23
- }
24
- attributeChangedCallback(name, oldValue, newValue) {
25
- super.attributeChangedCallback(name, oldValue, newValue);
26
- switch (name) {
27
- case "open": if (this.open) this.#open();
28
- else this.#close();
29
- }
30
- }
31
- #close() {
32
- this.$emit("close", void 0, { bubbles: false });
33
- }
34
- #open() {
35
- this.$emit("open", void 0, { bubbles: false });
27
+ this.checked = false;
28
+ this.clickableBox = false;
29
+ this.controlPlacement = "end-stacked";
30
+ this.tight = false;
31
+ this.disabled = false;
36
32
  }
37
33
  /** @internal */
38
- _onKeydown(event) {
39
- if (handleEscapeKeyAndStopPropogation(event)) {
40
- this._handleCloseRequest();
41
- return;
42
- } else return true;
34
+ _handleCheckedChange() {
35
+ if (this.disabled) return;
36
+ if (this.controlType === "radio" && this.checked) return;
37
+ this.checked = !this.checked;
38
+ if (this.clickableBox) this.$emit("change");
43
39
  }
44
40
  /** @internal */
45
- _handleCloseRequest() {
46
- if (this.$emit("cancel", void 0, {
47
- bubbles: false,
48
- cancelable: true
49
- })) this.open = false;
41
+ _handleKeydown(event) {
42
+ if (this.disabled) return true;
43
+ if ((event.code === "Space" || event.code === "Enter") && this.clickableBox) {
44
+ this._handleCheckedChange();
45
+ return;
46
+ }
47
+ return true;
50
48
  }
51
49
  };
52
- __decorate([attr({ mode: "boolean" })], SideDrawer.prototype, "alternate", void 0);
53
- __decorate([attr({ mode: "boolean" })], SideDrawer.prototype, "modal", void 0);
54
- __decorate([attr({ mode: "boolean" })], SideDrawer.prototype, "open", void 0);
55
- __decorate([attr({ mode: "boolean" })], SideDrawer.prototype, "trailing", void 0);
50
+ __decorate([attr({ mode: "boolean" })], SelectableBox.prototype, "checked", void 0);
51
+ __decorate([attr({
52
+ attribute: "clickable-box",
53
+ mode: "boolean"
54
+ })], SelectableBox.prototype, "clickableBox", void 0);
55
+ __decorate([attr], SelectableBox.prototype, "connotation", void 0);
56
+ __decorate([attr({ attribute: "control-type" })], SelectableBox.prototype, "controlType", void 0);
57
+ __decorate([attr({
58
+ attribute: "control-placement",
59
+ mode: "fromView"
60
+ })], SelectableBox.prototype, "controlPlacement", void 0);
61
+ __decorate([attr({ mode: "boolean" })], SelectableBox.prototype, "tight", void 0);
62
+ __decorate([attr({ mode: "boolean" })], SelectableBox.prototype, "disabled", void 0);
63
+ //#endregion
64
+ //#region src/lib/selectable-box/selectable-box.template.ts
65
+ function handleControlChange(x) {
66
+ if (!x.clickableBox) x._handleCheckedChange();
67
+ }
68
+ function checkbox(context) {
69
+ const checkboxTag = context.tagFor(Checkbox);
70
+ return html`${when((x) => x.controlType !== "radio", html`
71
+ <${checkboxTag}
72
+ ${delegateAria({ ariaLabel: (x) => !x.clickableBox && x.ariaLabel ? x.ariaLabel : null }, { onlySpecified: true })}
73
+ @change="${(x) => handleControlChange(x)}"
74
+ class="control checkbox ${(x) => x.controlPlacement}"
75
+ connotation="${(x) => x.connotation === "cta" ? Connotation.CTA : Connotation.Accent}"
76
+ :checked="${(x) => x.checked}"
77
+ ?disabled="${(x) => x.disabled}"
78
+ inert="${(x) => x.clickableBox ? true : null}"
79
+ ></${checkboxTag}>`)} `;
80
+ }
81
+ function radio(context) {
82
+ const radioTag = context.tagFor(Radio);
83
+ return html`${when((x) => x.controlType === "radio", html`
84
+ <${radioTag}
85
+ ${delegateAria({ ariaLabel: (x) => !x.clickableBox && x.ariaLabel ? x.ariaLabel : null }, { onlySpecified: true })}
86
+ @change="${(x) => handleControlChange(x)}"
87
+ class="control radio ${(x) => x.controlPlacement}"
88
+ connotation="${(x) => x.connotation === "cta" ? Connotation.CTA : Connotation.Accent}"
89
+ :checked="${(x) => x.checked}"
90
+ ?disabled="${(x) => x.disabled}"
91
+ inert="${(x) => x.clickableBox ? true : null}"
92
+ ></${radioTag}>`)} `;
93
+ }
94
+ var SelectableBoxTemplate = (context) => {
95
+ return html`<template>
96
+ <div
97
+ class="${(x) => classNames("base", [`connotation-${x.connotation}`, Boolean(x.connotation)], ["tight", x.tight], ["selected", x.checked], ["clickable", x.clickableBox], ["readonly", !x.clickableBox], [`control-placement-${x.controlPlacement}`, Boolean(x.controlPlacement)], ["disabled", x.disabled])}"
98
+ tabindex="${(x) => x.clickableBox && !x.disabled ? "0" : null}"
99
+ ${delegateAria({
100
+ role: (x) => x.clickableBox ? "button" : null,
101
+ ariaPressed: (x) => x.clickableBox ? x.checked ? "true" : "false" : null,
102
+ ariaLabel: (x) => x.clickableBox ? x.ariaLabel : null,
103
+ ariaDisabled: (x) => x.clickableBox && x.disabled ? "true" : null
104
+ })}
105
+ @keydown="${(x, c) => x._handleKeydown(c.event)}"
106
+ @click="${(x) => x.clickableBox ? x._handleCheckedChange() : null}"
107
+ >
108
+ ${checkbox(context)} ${radio(context)}
109
+ <slot></slot>
110
+ </div>
111
+ </template>`;
112
+ };
56
113
  //#endregion
57
- //#region src/lib/side-drawer/definition.ts
114
+ //#region src/lib/selectable-box/definition.ts
58
115
  /** @internal */
59
- var sideDrawerDefinition = defineVividComponent("side-drawer", SideDrawer, html`
60
- <div
61
- class="${(x) => classNames("control", ["modal", x.modal], ["open", x.open], ["trailing", x.trailing])}"
62
- ?inert="${(x) => !x.open}"
63
- part="base ${(x) => x.alternate ? "vvd-theme-alternate" : ""}"
64
- @keydown="${(x, c) => x._onKeydown(c.event)}"
65
- >
66
- <slot></slot>
67
- </div>
68
-
69
- <div class="side-drawer-app-content" ?inert="${(x) => x.open && x.modal}">
70
- <slot name="app-content"></slot>
71
- </div>
72
-
73
- ${when((x) => x.modal, html`<div
74
- class="${(x) => classNames("scrim", ["open", x.open])}"
75
- @click="${(x) => x._handleCloseRequest()}"
76
- ></div>`)}
77
- `, [], { styles: ":host{display:block}.side-drawer-app-content{block-size:100%}.control{--scrollbar-track-color:transparent;--scrollbar-thumb-color:color-mix(in sRGB, var(--vvd-color-neutral-950), transparent 70%);scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.control ::-webkit-scrollbar{width:4px}.control ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.control ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-fallback-track-color,var(--scrollbar-thumb-color));border:0;border-radius:4px}.control{z-index:1;background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);inline-size:280px;position:fixed;inset-block:0;overflow-y:auto}.control[part~=vvd-theme-alternate]{background-color:var(--vvd-color-canvas);color:var(--vvd-color-canvas-text);color-scheme:var(--vvd-color-scheme)}.control.trailing{inset-inline-end:0}.control:not(.open).trailing{transform:translate(100%)}.control:not(.open):not(.trailing){transform:translate(-100%)}.control.open:not(.modal).trailing+.side-drawer-app-content{margin-inline-end:var(--side-drawer-app-content-offset,280px)}.control.open:not(.modal):not(.trailing)+.side-drawer-app-content{margin-inline-start:var(--side-drawer-app-content-offset,280px)}@media (prefers-reduced-motion:no-preference){.control{transition:transform .2s cubic-bezier(.4,0,.2,1)}}.scrim{background-color:var(--vvd-color-canvas-text,currentColor);opacity:.5;position:fixed;inset:0}.scrim:not(.open){display:none}" });
116
+ var selectableBoxDefinition = defineVividComponent("selectable-box", SelectableBox, SelectableBoxTemplate, [checkboxDefinition, radioDefinition], {
117
+ styles: selectable_box_default,
118
+ shadowOptions: { delegatesFocus: true }
119
+ });
78
120
  /**
79
- * Registers the side-drawer elements with the design system.
121
+ * Registers the selectable-box element with the design system.
80
122
  *
81
123
  * @param prefix - the prefix to use for the component name
82
124
  */
83
- var registerSideDrawer = createRegisterFunction(sideDrawerDefinition);
125
+ var registerSelectableBox = createRegisterFunction(selectableBoxDefinition);
84
126
  //#endregion
85
- export { sideDrawerDefinition as n, SideDrawer as r, registerSideDrawer as t };
127
+ export { selectableBoxDefinition as n, SelectableBox as r, registerSelectableBox as t };