@vonage/vivid 5.0.0 → 5.2.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 (673) hide show
  1. package/{shared/definition2.cjs → accordion/definition.cjs} +20 -20
  2. package/{shared/definition2.js → accordion/definition.js} +5 -7
  3. package/accordion/index.cjs +5 -5
  4. package/accordion/index.js +129 -3
  5. package/accordion-item/definition.cjs +145 -0
  6. package/accordion-item/definition.js +139 -0
  7. package/accordion-item/index.cjs +1 -5
  8. package/accordion-item/index.js +2 -3
  9. package/{shared/definition3.cjs → action-group/definition.cjs} +12 -9
  10. package/{shared/definition3.js → action-group/definition.js} +5 -4
  11. package/action-group/index.cjs +6 -5
  12. package/action-group/index.js +49 -3
  13. package/{shared/definition4.cjs → alert/definition.cjs} +33 -31
  14. package/{shared/definition4.js → alert/definition.js} +11 -11
  15. package/alert/index.cjs +30 -5
  16. package/alert/index.js +158 -3
  17. package/{shared/definition5.cjs → audio-player/definition.cjs} +95 -61
  18. package/{shared/definition5.js → audio-player/definition.js} +48 -16
  19. package/audio-player/index.cjs +68 -4
  20. package/audio-player/index.js +333 -2
  21. package/{shared/definition6.cjs → avatar/definition.cjs} +28 -26
  22. package/{shared/definition6.js → avatar/definition.js} +7 -7
  23. package/avatar/index.cjs +18 -5
  24. package/avatar/index.js +93 -3
  25. package/{shared/definition7.cjs → badge/definition.cjs} +18 -16
  26. package/{shared/definition7.js → badge/definition.js} +6 -6
  27. package/badge/index.cjs +4 -5
  28. package/badge/index.js +66 -3
  29. package/{shared/definition8.cjs → banner/definition.cjs} +26 -25
  30. package/{shared/definition8.js → banner/definition.js} +10 -11
  31. package/banner/index.cjs +29 -4
  32. package/banner/index.js +128 -2
  33. package/{shared/definition10.cjs → breadcrumb/definition.cjs} +11 -9
  34. package/{shared/definition10.js → breadcrumb/definition.js} +5 -5
  35. package/breadcrumb/index.cjs +12 -5
  36. package/breadcrumb/index.js +69 -3
  37. package/{shared/definition9.cjs → breadcrumb-item/definition.cjs} +18 -15
  38. package/{shared/definition9.js → breadcrumb-item/definition.js} +7 -7
  39. package/breadcrumb-item/index.cjs +5 -5
  40. package/breadcrumb-item/index.js +33 -3
  41. package/bundled/_has.cjs +1 -0
  42. package/bundled/_has.js +34 -0
  43. package/bundled/affix.cjs +13 -0
  44. package/bundled/affix.js +63 -0
  45. package/bundled/anchored.cjs +4 -0
  46. package/bundled/anchored.js +67 -0
  47. package/bundled/aria.cjs +1 -0
  48. package/bundled/aria.js +7 -0
  49. package/bundled/attribute-binding-behaviour.cjs +1 -0
  50. package/bundled/attribute-binding-behaviour.js +27 -0
  51. package/bundled/base-progress.cjs +1 -0
  52. package/bundled/base-progress.js +57 -0
  53. package/bundled/breadcrumb-item.cjs +1 -0
  54. package/bundled/breadcrumb-item.js +21 -0
  55. package/bundled/button.cjs +1 -0
  56. package/bundled/button.js +106 -0
  57. package/bundled/calendar-event.cjs +1 -0
  58. package/bundled/calendar-event.js +34 -0
  59. package/bundled/calendar-picker.template.cjs +148 -0
  60. package/bundled/calendar-picker.template.js +3371 -0
  61. package/bundled/char-count.cjs +13 -0
  62. package/bundled/char-count.js +54 -0
  63. package/bundled/children.cjs +1 -0
  64. package/bundled/children.js +38 -0
  65. package/bundled/class-names.cjs +1 -0
  66. package/bundled/class-names.js +9 -0
  67. package/bundled/definition.cjs +39 -0
  68. package/bundled/definition.js +122 -0
  69. package/bundled/definition10.cjs +19 -0
  70. package/bundled/definition10.js +73 -0
  71. package/bundled/definition11.cjs +10 -0
  72. package/bundled/definition11.js +44 -0
  73. package/bundled/definition12.cjs +1 -0
  74. package/bundled/definition12.js +20 -0
  75. package/bundled/definition13.cjs +73 -0
  76. package/bundled/definition13.js +359 -0
  77. package/bundled/definition14.cjs +5 -0
  78. package/bundled/definition14.js +29 -0
  79. package/bundled/definition15.cjs +30 -0
  80. package/bundled/definition15.js +80 -0
  81. package/bundled/definition16.cjs +19 -0
  82. package/bundled/definition16.js +103 -0
  83. package/bundled/definition17.cjs +13 -0
  84. package/bundled/definition17.js +137 -0
  85. package/bundled/definition18.cjs +12 -0
  86. package/bundled/definition18.js +94 -0
  87. package/bundled/definition19.cjs +70 -0
  88. package/bundled/definition19.js +674 -0
  89. package/bundled/definition2.cjs +20 -0
  90. package/bundled/definition2.js +180 -0
  91. package/bundled/definition20.cjs +20 -0
  92. package/bundled/definition20.js +106 -0
  93. package/bundled/definition21.cjs +5 -0
  94. package/bundled/definition21.js +19 -0
  95. package/bundled/definition22.cjs +24 -0
  96. package/bundled/definition22.js +151 -0
  97. package/bundled/definition3.cjs +29 -0
  98. package/bundled/definition3.js +195 -0
  99. package/bundled/definition4.cjs +6 -0
  100. package/bundled/definition4.js +42 -0
  101. package/bundled/definition5.cjs +1 -0
  102. package/bundled/definition5.js +345 -0
  103. package/bundled/definition6.cjs +31 -0
  104. package/bundled/definition6.js +268 -0
  105. package/bundled/definition7.cjs +30 -0
  106. package/bundled/definition7.js +288 -0
  107. package/bundled/definition8.cjs +19 -0
  108. package/bundled/definition8.js +145 -0
  109. package/bundled/definition9.cjs +14 -0
  110. package/bundled/definition9.js +1406 -0
  111. package/bundled/delegates-aria.cjs +1 -0
  112. package/bundled/delegates-aria.js +77 -0
  113. package/bundled/divider.cjs +1 -0
  114. package/bundled/divider.js +34 -0
  115. package/bundled/dom.cjs +1 -0
  116. package/bundled/dom.js +6 -0
  117. package/bundled/enums.cjs +1 -0
  118. package/bundled/enums.js +9 -0
  119. package/bundled/form-associated.cjs +1 -0
  120. package/bundled/form-associated.js +320 -0
  121. package/bundled/form-element.cjs +1 -0
  122. package/bundled/form-element.js +56 -0
  123. package/bundled/host-semantics.cjs +1 -0
  124. package/bundled/host-semantics.js +57 -0
  125. package/bundled/index.cjs +1 -0
  126. package/bundled/index.js +6 -0
  127. package/bundled/key-codes.cjs +1 -0
  128. package/bundled/key-codes.js +16 -0
  129. package/bundled/linkable.cjs +15 -0
  130. package/bundled/linkable.js +49 -0
  131. package/bundled/listbox.cjs +1 -0
  132. package/bundled/listbox.js +345 -0
  133. package/bundled/localized.cjs +1 -0
  134. package/bundled/localized.js +460 -0
  135. package/bundled/mixins.cjs +33 -0
  136. package/bundled/mixins.js +226 -0
  137. package/bundled/numbers.cjs +1 -0
  138. package/bundled/numbers.js +14 -0
  139. package/bundled/option.cjs +1 -0
  140. package/bundled/option.js +158 -0
  141. package/bundled/picker-field.template.cjs +67 -0
  142. package/bundled/picker-field.template.js +242 -0
  143. package/bundled/playbackRates.cjs +1 -0
  144. package/bundled/playbackRates.js +11 -0
  145. package/bundled/ref.cjs +1 -0
  146. package/bundled/ref.js +32 -0
  147. package/bundled/repeat.cjs +1 -0
  148. package/bundled/repeat.js +341 -0
  149. package/bundled/scrollIntoView.cjs +1 -0
  150. package/bundled/scrollIntoView.js +33 -0
  151. package/bundled/single-date-picker.cjs +1 -0
  152. package/bundled/single-date-picker.js +39 -0
  153. package/bundled/single-value-picker.cjs +1 -0
  154. package/bundled/single-value-picker.js +87 -0
  155. package/bundled/slider.template.cjs +41 -0
  156. package/bundled/slider.template.js +100 -0
  157. package/bundled/slotted.cjs +1 -0
  158. package/bundled/slotted.js +81 -0
  159. package/bundled/strings.cjs +1 -0
  160. package/bundled/strings.js +7 -0
  161. package/bundled/text-field.cjs +1 -0
  162. package/bundled/text-field.js +4 -0
  163. package/bundled/time-selection-picker.template.cjs +46 -0
  164. package/bundled/time-selection-picker.template.js +575 -0
  165. package/bundled/vivid-element.cjs +1 -0
  166. package/bundled/vivid-element.js +1761 -0
  167. package/bundled/when.cjs +1 -0
  168. package/bundled/when.js +11 -0
  169. package/bundled/with-contextual-help.cjs +1 -0
  170. package/bundled/with-contextual-help.js +32 -0
  171. package/bundled/with-error-text.cjs +1 -0
  172. package/bundled/with-error-text.js +39 -0
  173. package/bundled/with-success-text.cjs +1 -0
  174. package/bundled/with-success-text.js +16 -0
  175. package/button/definition.cjs +14 -0
  176. package/button/definition.js +4 -0
  177. package/button/index.cjs +1 -5
  178. package/button/index.js +2 -3
  179. package/{shared/definition13.cjs → calendar/definition.cjs} +27 -449
  180. package/{shared/definition13.js → calendar/definition.js} +7 -431
  181. package/calendar/index.cjs +53 -5
  182. package/calendar/index.js +431 -3
  183. package/{shared/definition12.cjs → calendar-event/definition.cjs} +12 -9
  184. package/{shared/definition12.js → calendar-event/definition.js} +6 -6
  185. package/calendar-event/index.cjs +9 -5
  186. package/calendar-event/index.js +43 -3
  187. package/card/definition.cjs +186 -0
  188. package/{shared/definition14.js → card/definition.js} +10 -11
  189. package/card/index.cjs +47 -5
  190. package/card/index.js +163 -3
  191. package/{shared/definition15.cjs → checkbox/definition.cjs} +30 -29
  192. package/{shared/definition15.js → checkbox/definition.js} +12 -13
  193. package/checkbox/index.cjs +1 -5
  194. package/checkbox/index.js +2 -3
  195. package/{shared/definition16.cjs → combobox/definition.cjs} +61 -56
  196. package/{shared/definition16.js → combobox/definition.js} +30 -27
  197. package/combobox/index.cjs +69 -5
  198. package/combobox/index.js +519 -3
  199. package/contextual-help/definition.cjs +62 -0
  200. package/contextual-help/definition.js +57 -0
  201. package/contextual-help/index.cjs +1 -0
  202. package/contextual-help/index.js +2 -0
  203. package/custom-elements.json +2504 -335
  204. package/{shared/definition17.cjs → data-grid/definition.cjs} +111 -121
  205. package/{shared/definition17.js → data-grid/definition.js} +11 -23
  206. package/data-grid/index.cjs +81 -5
  207. package/data-grid/index.js +1011 -3
  208. package/{shared/definition18.cjs → date-picker/definition.cjs} +20 -17
  209. package/{shared/definition18.js → date-picker/definition.js} +12 -11
  210. package/date-picker/index.cjs +1 -5
  211. package/date-picker/index.js +115 -3
  212. package/{shared/definition19.cjs → date-range-picker/definition.cjs} +26 -23
  213. package/{shared/definition19.js → date-range-picker/definition.js} +10 -9
  214. package/date-range-picker/index.cjs +1 -5
  215. package/date-range-picker/index.js +335 -3
  216. package/{shared/definition20.cjs → date-time-picker/definition.cjs} +27 -24
  217. package/{shared/definition20.js → date-time-picker/definition.js} +13 -12
  218. package/date-time-picker/index.cjs +8 -5
  219. package/date-time-picker/index.js +216 -3
  220. package/{shared/definition21.cjs → dial-pad/definition.cjs} +89 -40
  221. package/{shared/definition21.js → dial-pad/definition.js} +60 -13
  222. package/dial-pad/index.cjs +57 -5
  223. package/dial-pad/index.js +245 -3
  224. package/{shared/definition22.cjs → dialog/definition.cjs} +48 -47
  225. package/{shared/definition22.js → dialog/definition.js} +10 -11
  226. package/dialog/index.cjs +44 -5
  227. package/dialog/index.js +257 -3
  228. package/{shared/definition23.cjs → divider/definition.cjs} +10 -6
  229. package/{shared/definition23.js → divider/definition.js} +6 -5
  230. package/divider/index.cjs +1 -5
  231. package/divider/index.js +2 -3
  232. package/elevation/definition.cjs +11 -0
  233. package/elevation/definition.js +2 -0
  234. package/elevation/index.cjs +1 -5
  235. package/elevation/index.js +2 -3
  236. package/empty-state/definition.cjs +81 -0
  237. package/empty-state/definition.js +75 -0
  238. package/empty-state/index.cjs +14 -5
  239. package/empty-state/index.js +64 -3
  240. package/fab/definition.cjs +105 -0
  241. package/fab/definition.js +99 -0
  242. package/fab/index.cjs +20 -5
  243. package/fab/index.js +86 -3
  244. package/file-picker/definition.cjs +519 -0
  245. package/file-picker/definition.js +513 -0
  246. package/file-picker/index.cjs +61 -5
  247. package/file-picker/index.js +391 -3
  248. package/{shared/definition27.cjs → header/definition.cjs} +14 -11
  249. package/{shared/definition27.js → header/definition.js} +6 -5
  250. package/header/index.cjs +19 -5
  251. package/header/index.js +57 -3
  252. package/{shared/definition28.cjs → icon/definition.cjs} +25 -149
  253. package/{shared/definition28.js → icon/definition.js} +6 -132
  254. package/icon/index.cjs +1 -5
  255. package/icon/index.js +2 -3
  256. package/index.cjs +268 -264
  257. package/index.js +72 -71
  258. package/{shared/definition29.cjs → layout/definition.cjs} +13 -10
  259. package/{shared/definition29.js → layout/definition.js} +4 -3
  260. package/layout/index.cjs +3 -5
  261. package/layout/index.js +52 -3
  262. package/lib/accordion-item/accordion-item.d.ts +0 -1
  263. package/lib/action-group/action-group.d.ts +0 -1
  264. package/lib/alert/alert.d.ts +0 -2
  265. package/lib/audio-player/audio-player.d.ts +4 -1
  266. package/lib/avatar/avatar.d.ts +0 -1
  267. package/lib/badge/badge.d.ts +0 -1
  268. package/lib/banner/banner.d.ts +0 -3
  269. package/lib/breadcrumb/breadcrumb.d.ts +0 -1
  270. package/lib/breadcrumb-item/breadcrumb-item.d.ts +0 -1
  271. package/lib/button/button.d.ts +1 -3
  272. package/lib/calendar-event/calendar-event.d.ts +0 -1
  273. package/lib/card/card.d.ts +0 -1
  274. package/lib/checkbox/checkbox.d.ts +0 -6
  275. package/lib/combobox/combobox.d.ts +483 -72
  276. package/lib/components.d.ts +1 -0
  277. package/lib/contextual-help/contextual-help.d.ts +5 -0
  278. package/lib/contextual-help/contextual-help.template.d.ts +3 -0
  279. package/lib/contextual-help/definition.d.ts +1 -0
  280. package/lib/data-grid/data-grid-cell.d.ts +0 -2
  281. package/lib/data-grid/data-grid-row.d.ts +0 -1
  282. package/lib/date-picker/date-picker.d.ts +892 -888
  283. package/lib/date-range-picker/date-range-picker.d.ts +590 -588
  284. package/lib/date-time-picker/date-time-picker.d.ts +893 -889
  285. package/lib/dial-pad/dial-pad.d.ts +0 -1
  286. package/lib/dial-pad/dial-pad.template.d.ts +1 -1
  287. package/lib/dial-pad/locale.d.ts +1 -0
  288. package/lib/dialog/dialog.d.ts +0 -2
  289. package/lib/divider/divider.d.ts +0 -1
  290. package/lib/fab/fab.d.ts +1 -1
  291. package/lib/file-picker/accept.d.ts +1 -0
  292. package/lib/file-picker/data-transfer.d.ts +1 -0
  293. package/lib/file-picker/file-picker.d.ts +490 -91
  294. package/lib/header/header.d.ts +0 -1
  295. package/lib/menu/menu.d.ts +1 -2
  296. package/lib/menu-item/menu-item.d.ts +0 -2
  297. package/lib/nav/nav.d.ts +0 -1
  298. package/lib/nav-disclosure/nav-disclosure.d.ts +0 -2
  299. package/lib/nav-item/nav-item.d.ts +0 -2
  300. package/lib/note/note.d.ts +0 -1
  301. package/lib/number-field/number-field.d.ts +505 -96
  302. package/lib/option/option.d.ts +1 -2
  303. package/lib/pagination/pagination.d.ts +0 -1
  304. package/lib/progress/progress.d.ts +0 -1
  305. package/lib/progress-ring/progress-ring.d.ts +0 -1
  306. package/lib/radio/radio.d.ts +0 -3
  307. package/lib/radio-group/radio-group.d.ts +0 -1
  308. package/lib/range-slider/range-slider.d.ts +0 -3
  309. package/lib/rich-text-editor/menubar/menubar.d.ts +0 -1
  310. package/lib/rich-text-editor/rich-text-editor.d.ts +0 -1
  311. package/lib/searchable-select/option-tag.d.ts +0 -1
  312. package/lib/searchable-select/searchable-select.d.ts +505 -96
  313. package/lib/select/select.d.ts +470 -60
  314. package/lib/selectable-box/selectable-box.d.ts +0 -1
  315. package/lib/simple-color-picker/definition.d.ts +4 -0
  316. package/lib/simple-color-picker/locale.d.ts +4 -0
  317. package/lib/simple-color-picker/simple-color-picker.d.ts +1600 -0
  318. package/lib/simple-color-picker/simple-color-picker.template.d.ts +3 -0
  319. package/lib/slider/slider.d.ts +0 -3
  320. package/lib/split-button/split-button.d.ts +2 -3
  321. package/lib/switch/switch.d.ts +0 -2
  322. package/lib/tab/tab.d.ts +0 -3
  323. package/lib/tab-panel/tab-panel.d.ts +0 -1
  324. package/lib/tag/tag.d.ts +0 -3
  325. package/lib/tag-group/tag-group.d.ts +0 -1
  326. package/lib/tag-name-map.d.ts +2 -1
  327. package/lib/text-area/text-area.d.ts +494 -84
  328. package/lib/text-field/text-field.d.ts +505 -96
  329. package/lib/time-picker/time-picker.d.ts +571 -569
  330. package/lib/toggletip/toggletip.d.ts +0 -2
  331. package/lib/tooltip/tooltip.d.ts +0 -1
  332. package/lib/tree-item/tree-item.d.ts +0 -2
  333. package/lib/tree-view/tree-view.d.ts +0 -1
  334. package/lib/video-player/video-player.d.ts +0 -1
  335. package/locales/de-DE.cjs +13 -1
  336. package/locales/de-DE.js +13 -1
  337. package/locales/en-GB.cjs +13 -1
  338. package/locales/en-GB.js +13 -1
  339. package/locales/en-US.cjs +13 -1
  340. package/locales/en-US.js +13 -1
  341. package/locales/ja-JP.cjs +13 -1
  342. package/locales/ja-JP.js +13 -1
  343. package/locales/zh-CN.cjs +13 -1
  344. package/locales/zh-CN.js +13 -1
  345. package/{shared/definition31.cjs → menu/definition.cjs} +46 -42
  346. package/{shared/definition31.js → menu/definition.js} +16 -14
  347. package/menu/index.cjs +1 -5
  348. package/menu/index.js +2 -3
  349. package/menu-item/definition.cjs +14 -0
  350. package/menu-item/definition.js +3 -0
  351. package/menu-item/index.cjs +1 -5
  352. package/menu-item/index.js +2 -3
  353. package/{shared/definition34.cjs → nav/definition.cjs} +7 -4
  354. package/{shared/definition34.js → nav/definition.js} +4 -3
  355. package/nav/index.cjs +5 -5
  356. package/nav/index.js +13 -3
  357. package/nav-disclosure/definition.cjs +122 -0
  358. package/nav-disclosure/definition.js +116 -0
  359. package/nav-disclosure/index.cjs +16 -5
  360. package/nav-disclosure/index.js +96 -3
  361. package/{shared/definition33.cjs → nav-item/definition.cjs} +19 -16
  362. package/{shared/definition33.js → nav-item/definition.js} +9 -8
  363. package/nav-item/index.cjs +2 -5
  364. package/nav-item/index.js +59 -3
  365. package/{shared/definition35.cjs → note/definition.cjs} +15 -13
  366. package/{shared/definition35.js → note/definition.js} +6 -6
  367. package/note/index.cjs +9 -5
  368. package/note/index.js +44 -3
  369. package/{shared/definition36.cjs → number-field/definition.cjs} +66 -60
  370. package/{shared/definition36.js → number-field/definition.js} +31 -27
  371. package/number-field/index.cjs +60 -5
  372. package/number-field/index.js +370 -3
  373. package/option/definition.cjs +84 -0
  374. package/option/definition.js +78 -0
  375. package/option/index.cjs +1 -5
  376. package/option/index.js +2 -3
  377. package/package.json +15 -4
  378. package/{shared/definition38.cjs → pagination/definition.cjs} +31 -33
  379. package/{shared/definition38.js → pagination/definition.js} +7 -11
  380. package/pagination/index.cjs +43 -5
  381. package/pagination/index.js +194 -3
  382. package/popup/definition.cjs +13 -0
  383. package/popup/definition.js +4 -0
  384. package/popup/index.cjs +1 -5
  385. package/popup/index.js +2 -3
  386. package/{shared/definition40.cjs → progress/definition.cjs} +17 -15
  387. package/{shared/definition40.js → progress/definition.js} +6 -6
  388. package/progress/index.cjs +17 -5
  389. package/progress/index.js +69 -3
  390. package/{shared/definition39.cjs → progress-ring/definition.cjs} +17 -15
  391. package/{shared/definition39.js → progress-ring/definition.js} +7 -7
  392. package/progress-ring/index.cjs +1 -5
  393. package/progress-ring/index.js +2 -3
  394. package/{shared/definition42.cjs → radio/definition.cjs} +20 -19
  395. package/{shared/definition42.js → radio/definition.js} +8 -9
  396. package/radio/index.cjs +1 -5
  397. package/radio/index.js +2 -3
  398. package/{shared/definition41.cjs → radio-group/definition.cjs} +31 -30
  399. package/{shared/definition41.js → radio-group/definition.js} +8 -9
  400. package/radio-group/index.cjs +23 -5
  401. package/radio-group/index.js +255 -3
  402. package/{shared/definition43.cjs → range-slider/definition.cjs} +62 -61
  403. package/{shared/definition43.js → range-slider/definition.js} +13 -14
  404. package/range-slider/index.cjs +68 -5
  405. package/range-slider/index.js +456 -3
  406. package/rich-text-editor/definition.cjs +1206 -0
  407. package/rich-text-editor/definition.js +1200 -0
  408. package/rich-text-editor/index.cjs +133 -4
  409. package/rich-text-editor/index.js +10386 -2
  410. package/{shared/definition45.cjs → searchable-select/definition.cjs} +142 -130
  411. package/{shared/definition45.js → searchable-select/definition.js} +51 -41
  412. package/searchable-select/index.cjs +167 -5
  413. package/searchable-select/index.js +1034 -3
  414. package/{shared/definition46.cjs → select/definition.cjs} +92 -87
  415. package/{shared/definition46.js → select/definition.js} +32 -29
  416. package/select/index.cjs +1 -5
  417. package/select/index.js +2 -3
  418. package/{shared/definition47.cjs → selectable-box/definition.cjs} +26 -24
  419. package/{shared/definition47.js → selectable-box/definition.js} +9 -9
  420. package/selectable-box/index.cjs +28 -5
  421. package/selectable-box/index.js +136 -3
  422. package/shared/aria/aria-mixin.d.ts +0 -1
  423. package/shared/aria/delegates-aria.d.ts +0 -1
  424. package/shared/aria/host-semantics.d.ts +0 -1
  425. package/shared/color-picker/index.d.ts +2 -0
  426. package/shared/color-picker/types.d.ts +4 -0
  427. package/shared/color-picker/utils.d.ts +3 -0
  428. package/shared/feedback/feedback-message.d.ts +0 -1
  429. package/shared/feedback/mixins.d.ts +0 -2
  430. package/shared/foundation/button/button.d.ts +0 -2
  431. package/shared/foundation/form-associated/form-associated.d.ts +0 -2
  432. package/shared/foundation/vivid-element/vivid-element.d.ts +0 -1
  433. package/shared/localization/Locale.d.ts +2 -0
  434. package/shared/patterns/affix.d.ts +0 -2
  435. package/shared/patterns/anchored.d.ts +0 -2
  436. package/shared/patterns/char-count/char-count.d.ts +0 -1
  437. package/shared/patterns/form-elements/form-element.d.ts +0 -2
  438. package/shared/patterns/form-elements/index.d.ts +1 -0
  439. package/shared/patterns/form-elements/with-contextual-help.d.ts +1239 -0
  440. package/shared/patterns/form-elements/with-error-text.d.ts +0 -3
  441. package/shared/patterns/form-elements/with-success-text.d.ts +0 -1
  442. package/shared/patterns/linkable.d.ts +0 -1
  443. package/shared/patterns/localized.d.ts +0 -1
  444. package/shared/patterns/trapped-focus.d.ts +0 -1
  445. package/shared/picker-field/mixins/calendar-picker.d.ts +452 -451
  446. package/shared/picker-field/mixins/calendar-picker.template.d.ts +452 -451
  447. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +0 -1
  448. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +594 -592
  449. package/shared/picker-field/mixins/single-date-picker.d.ts +734 -731
  450. package/shared/picker-field/mixins/single-value-picker.d.ts +449 -448
  451. package/shared/picker-field/mixins/time-selection-picker.d.ts +571 -569
  452. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +571 -569
  453. package/shared/picker-field/picker-field.d.ts +483 -72
  454. package/{shared/definition48.cjs → side-drawer/definition.cjs} +16 -14
  455. package/{shared/definition48.js → side-drawer/definition.js} +5 -5
  456. package/side-drawer/index.cjs +17 -3
  457. package/side-drawer/index.js +100 -2
  458. package/simple-color-picker/definition.cjs +398 -0
  459. package/simple-color-picker/definition.js +392 -0
  460. package/simple-color-picker/index.cjs +31 -0
  461. package/simple-color-picker/index.js +250 -0
  462. package/{shared/definition49.cjs → slider/definition.cjs} +46 -53
  463. package/{shared/definition49.js → slider/definition.js} +11 -20
  464. package/slider/index.cjs +1 -5
  465. package/slider/index.js +2 -3
  466. package/split-button/definition.cjs +176 -0
  467. package/split-button/definition.js +170 -0
  468. package/split-button/index.cjs +26 -5
  469. package/split-button/index.js +149 -3
  470. package/styles/core/all.css +1 -1
  471. package/styles/core/theme.css +1 -1
  472. package/styles/core/typography.css +1 -1
  473. package/styles/tokens/theme-dark.css +4 -4
  474. package/styles/tokens/theme-light.css +4 -4
  475. package/styles/tokens/vivid-2-compat.css +1 -1
  476. package/{shared/definition51.cjs → switch/definition.cjs} +20 -19
  477. package/{shared/definition51.js → switch/definition.js} +8 -9
  478. package/switch/index.cjs +16 -5
  479. package/switch/index.js +102 -3
  480. package/tab/definition.cjs +127 -0
  481. package/tab/definition.js +121 -0
  482. package/tab/index.cjs +1 -5
  483. package/tab/index.js +2 -3
  484. package/{shared/definition52.cjs → tab-panel/definition.cjs} +7 -4
  485. package/{shared/definition52.js → tab-panel/definition.js} +4 -3
  486. package/tab-panel/index.cjs +1 -5
  487. package/tab-panel/index.js +2 -3
  488. package/{shared/definition54.cjs → tabs/definition.cjs} +46 -39
  489. package/{shared/definition54.js → tabs/definition.js} +18 -13
  490. package/tabs/index.cjs +31 -5
  491. package/tabs/index.js +321 -3
  492. package/tag/definition.cjs +156 -0
  493. package/tag/definition.js +150 -0
  494. package/tag/index.cjs +19 -5
  495. package/tag/index.js +118 -3
  496. package/{shared/definition55.cjs → tag-group/definition.cjs} +9 -6
  497. package/{shared/definition55.js → tag-group/definition.js} +5 -4
  498. package/tag-group/index.cjs +8 -5
  499. package/tag-group/index.js +26 -3
  500. package/{shared/definition57.cjs → text-area/definition.cjs} +62 -42
  501. package/{shared/definition57.js → text-area/definition.js} +38 -20
  502. package/text-area/index.cjs +41 -5
  503. package/text-area/index.js +293 -3
  504. package/{shared/definition58.cjs → text-field/definition.cjs} +70 -52
  505. package/{shared/definition58.js → text-field/definition.js} +40 -24
  506. package/text-field/index.cjs +1 -5
  507. package/text-field/index.js +2 -3
  508. package/time-picker/definition.cjs +43 -0
  509. package/{shared/definition59.js → time-picker/definition.js} +9 -8
  510. package/time-picker/index.cjs +1 -5
  511. package/time-picker/index.js +29 -3
  512. package/{shared/definition60.cjs → toggletip/definition.cjs} +20 -18
  513. package/{shared/definition60.js → toggletip/definition.js} +8 -8
  514. package/toggletip/index.cjs +1 -5
  515. package/toggletip/index.js +2 -3
  516. package/{shared/definition61.cjs → tooltip/definition.cjs} +16 -13
  517. package/{shared/definition61.js → tooltip/definition.js} +7 -6
  518. package/tooltip/index.cjs +1 -5
  519. package/tooltip/index.js +2 -3
  520. package/tree-item/definition.cjs +13 -0
  521. package/tree-item/definition.js +3 -0
  522. package/tree-item/index.cjs +1 -5
  523. package/tree-item/index.js +2 -3
  524. package/{shared/definition63.cjs → tree-view/definition.cjs} +41 -42
  525. package/{shared/definition63.js → tree-view/definition.js} +6 -9
  526. package/tree-view/index.cjs +13 -5
  527. package/tree-view/index.js +171 -3
  528. package/{shared → unbundled}/affix.cjs +10 -11
  529. package/{shared → unbundled}/affix.js +2 -3
  530. package/{shared → unbundled}/anchored.cjs +7 -8
  531. package/{shared → unbundled}/anchored.js +1 -2
  532. package/{shared → unbundled}/attribute-binding-behaviour.cjs +3 -3
  533. package/{shared → unbundled}/attribute-binding-behaviour.js +1 -1
  534. package/{shared → unbundled}/base-progress.cjs +6 -5
  535. package/{shared → unbundled}/base-progress.js +2 -1
  536. package/{shared → unbundled}/breadcrumb-item.cjs +3 -2
  537. package/{shared → unbundled}/breadcrumb-item.js +2 -1
  538. package/{shared → unbundled}/button.cjs +10 -9
  539. package/{shared → unbundled}/button.js +2 -1
  540. package/{shared → unbundled}/calendar-event.cjs +8 -7
  541. package/{shared → unbundled}/calendar-event.js +2 -1
  542. package/unbundled/calendar-picker.template.cjs +917 -0
  543. package/unbundled/calendar-picker.template.js +906 -0
  544. package/{shared → unbundled}/char-count.cjs +6 -7
  545. package/{shared → unbundled}/char-count.js +2 -3
  546. package/unbundled/definition.cjs +225 -0
  547. package/unbundled/definition.js +220 -0
  548. package/{shared/definition30.cjs → unbundled/definition2.cjs} +41 -42
  549. package/{shared/definition30.js → unbundled/definition2.js} +6 -7
  550. package/unbundled/definition3.cjs +207 -0
  551. package/{shared/definition62.js → unbundled/definition3.js} +5 -9
  552. package/unbundled/definition4.cjs +298 -0
  553. package/unbundled/definition4.js +293 -0
  554. package/{shared/definition65.cjs → unbundled/definition5.cjs} +7 -6
  555. package/{shared/definition65.js → unbundled/definition5.js} +3 -2
  556. package/{shared → unbundled}/delegates-aria.cjs +4 -3
  557. package/{shared → unbundled}/delegates-aria.js +2 -1
  558. package/{shared → unbundled}/divider.cjs +5 -4
  559. package/{shared → unbundled}/divider.js +3 -2
  560. package/{shared → unbundled}/form-associated.cjs +13 -13
  561. package/{shared → unbundled}/form-associated.js +2 -2
  562. package/{shared → unbundled}/form-element.cjs +3 -3
  563. package/{shared → unbundled}/form-element.js +1 -1
  564. package/{shared → unbundled}/host-semantics.cjs +2 -1
  565. package/{shared → unbundled}/host-semantics.js +2 -1
  566. package/unbundled/key-codes.cjs +10 -0
  567. package/unbundled/key-codes.js +7 -0
  568. package/{shared → unbundled}/linkable.cjs +11 -12
  569. package/{shared → unbundled}/linkable.js +1 -2
  570. package/{shared → unbundled}/listbox.cjs +21 -37
  571. package/{shared → unbundled}/listbox.js +3 -19
  572. package/{shared → unbundled}/localized.cjs +2 -2
  573. package/{shared → unbundled}/localized.js +1 -1
  574. package/{shared → unbundled}/mixins.cjs +27 -83
  575. package/{shared → unbundled}/mixins.js +6 -62
  576. package/{shared → unbundled}/option.cjs +29 -17
  577. package/{shared → unbundled}/option.js +14 -2
  578. package/{shared → unbundled}/picker-field.template.cjs +32 -24
  579. package/{shared → unbundled}/picker-field.template.js +18 -10
  580. package/{shared → unbundled}/slider.template.cjs +15 -19
  581. package/{shared → unbundled}/slider.template.js +3 -7
  582. package/unbundled/text-field.cjs +5 -0
  583. package/unbundled/text-field.js +3 -0
  584. package/{shared → unbundled}/time-selection-picker.template.cjs +28 -30
  585. package/{shared → unbundled}/time-selection-picker.template.js +4 -6
  586. package/unbundled/vivid-element.cjs +283 -0
  587. package/unbundled/vivid-element.js +274 -0
  588. package/unbundled/with-contextual-help.cjs +40 -0
  589. package/unbundled/with-contextual-help.js +38 -0
  590. package/{shared → unbundled}/with-error-text.cjs +2 -2
  591. package/{shared → unbundled}/with-error-text.js +1 -1
  592. package/{shared → unbundled}/with-success-text.cjs +2 -2
  593. package/{shared → unbundled}/with-success-text.js +1 -1
  594. package/video-player/definition.cjs +536 -0
  595. package/video-player/definition.js +530 -0
  596. package/video-player/index.cjs +536 -3
  597. package/video-player/index.js +35912 -2
  598. package/{shared/definition66.cjs → visually-hidden/definition.cjs} +6 -3
  599. package/{shared/definition66.js → visually-hidden/definition.js} +3 -2
  600. package/visually-hidden/index.cjs +1 -5
  601. package/visually-hidden/index.js +2 -3
  602. package/vivid.api.json +722 -799
  603. package/shared/_has.cjs +0 -58
  604. package/shared/_has.js +0 -54
  605. package/shared/aria.cjs +0 -11
  606. package/shared/aria.js +0 -9
  607. package/shared/calendar-picker.template.cjs +0 -6377
  608. package/shared/calendar-picker.template.js +0 -6366
  609. package/shared/children.cjs +0 -61
  610. package/shared/children.js +0 -59
  611. package/shared/class-names.cjs +0 -17
  612. package/shared/class-names.js +0 -15
  613. package/shared/definition.cjs +0 -145
  614. package/shared/definition.js +0 -141
  615. package/shared/definition11.cjs +0 -220
  616. package/shared/definition11.js +0 -215
  617. package/shared/definition14.cjs +0 -185
  618. package/shared/definition24.cjs +0 -80
  619. package/shared/definition24.js +0 -76
  620. package/shared/definition25.cjs +0 -90
  621. package/shared/definition25.js +0 -86
  622. package/shared/definition26.cjs +0 -2549
  623. package/shared/definition26.js +0 -2545
  624. package/shared/definition32.cjs +0 -120
  625. package/shared/definition32.js +0 -116
  626. package/shared/definition37.cjs +0 -71
  627. package/shared/definition37.js +0 -68
  628. package/shared/definition44.cjs +0 -14666
  629. package/shared/definition44.js +0 -14662
  630. package/shared/definition50.cjs +0 -148
  631. package/shared/definition50.js +0 -144
  632. package/shared/definition53.cjs +0 -124
  633. package/shared/definition53.js +0 -120
  634. package/shared/definition56.cjs +0 -154
  635. package/shared/definition56.js +0 -150
  636. package/shared/definition59.cjs +0 -39
  637. package/shared/definition62.cjs +0 -211
  638. package/shared/definition64.cjs +0 -69579
  639. package/shared/definition64.js +0 -69575
  640. package/shared/definition67.cjs +0 -2227
  641. package/shared/definition67.js +0 -2222
  642. package/shared/dom.cjs +0 -10
  643. package/shared/dom.js +0 -8
  644. package/shared/key-codes.cjs +0 -32
  645. package/shared/key-codes.js +0 -18
  646. package/shared/numbers.cjs +0 -38
  647. package/shared/numbers.js +0 -34
  648. package/shared/ref.cjs +0 -43
  649. package/shared/ref.js +0 -41
  650. package/shared/repeat.cjs +0 -767
  651. package/shared/repeat.js +0 -764
  652. package/shared/slotted.cjs +0 -123
  653. package/shared/slotted.js +0 -119
  654. package/shared/strings.cjs +0 -11
  655. package/shared/strings.js +0 -9
  656. package/shared/text-field.cjs +0 -5
  657. package/shared/text-field.js +0 -3
  658. package/shared/vivid-element.cjs +0 -2822
  659. package/shared/vivid-element.js +0 -2799
  660. package/shared/when.cjs +0 -31
  661. package/shared/when.js +0 -29
  662. /package/{shared → unbundled}/enums.cjs +0 -0
  663. /package/{shared → unbundled}/enums.js +0 -0
  664. /package/{shared → unbundled}/index.cjs +0 -0
  665. /package/{shared → unbundled}/index.js +0 -0
  666. /package/{shared → unbundled}/playbackRates.cjs +0 -0
  667. /package/{shared → unbundled}/playbackRates.js +0 -0
  668. /package/{shared → unbundled}/scrollIntoView.cjs +0 -0
  669. /package/{shared → unbundled}/scrollIntoView.js +0 -0
  670. /package/{shared → unbundled}/single-date-picker.cjs +0 -0
  671. /package/{shared → unbundled}/single-date-picker.js +0 -0
  672. /package/{shared → unbundled}/single-value-picker.cjs +0 -0
  673. /package/{shared → unbundled}/single-value-picker.js +0 -0
@@ -0,0 +1,30 @@
1
+ "use strict";const u=require("./definition2.cjs"),a=require("./vivid-element.cjs"),p=require("./key-codes.cjs"),h=require("./affix.cjs"),b=require("./host-semantics.cjs"),v=require("./slotted.cjs"),k=require("./class-names.cjs"),s=require("./when.cjs"),g=":host(:focus-visible){outline:none}:host([disabled]){pointer-events:none}.base{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}@media (hover: hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base.disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media (hover: hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base.connotation-cta{--_connotation-color-primary: var(--vvd-menu-item-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-menu-item-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-menu-item-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-firm: var(--vvd-menu-item-cta-firm, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-menu-item-cta-faint, var(--vvd-color-cta-50));--_connotation-color-soft: var(--vvd-menu-item-cta-soft, var(--vvd-color-cta-100));--_connotation-color-pale: var(--vvd-menu-item-cta-pale, var(--vvd-color-cta-300));--_connotation-color-dim: var(--vvd-menu-item-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-menu-item-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-menu-item-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-menu-item-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-firm: var(--vvd-menu-item-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-menu-item-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-menu-item-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-pale: var(--vvd-menu-item-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-dim: var(--vvd-menu-item-accent-dim, var(--vvd-color-neutral-200))}.base{--_menu-item-padding-inline: calc(1px*(40 + 4*clamp(-1, var(--vvd-size-density, 0), 2))*.4) }.base{display:flex;box-sizing:border-box;align-items:center;border-radius:8px;background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);inline-size:100%}.base:not(.two-lines){gap:12px;min-block-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2)));padding-block:8px;padding-inline:var(--_menu-item-padding-inline)}.base.two-lines{gap:16px;min-block-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2)) + 1px*(24 + 4*clamp(-1,var(--vvd-size-density, 0),2)));padding-block:12px;padding-inline:var(--_menu-item-padding-inline)}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}:host(:not([role=presentation]):focus-visible) .base{box-shadow:0 0 0 4px color-mix(in srgb,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}.icon{flex-shrink:0;font-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2))/2);line-height:1}.action,.decorative{display:flex;place-content:center}.action{color:var(--_appearance-color-text)}.base.trailing .action,.base.has-meta .action{order:2}:host(:not([check-appearance],[checked],[disabled])) .action{color:var(--vvd-color-neutral-500)}.base:not(.disabled) .decorative{color:var(--vvd-color-neutral-600)}.base.disabled .decorative{color:var(--vvd-color-neutral-200)}.base.has-meta .decorative{order:1}.chevron{order:3}.text{display:flex;overflow:hidden;flex-direction:column;gap:4px;margin-inline-end:auto}.text-primary,.text-secondary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;font:var(--vvd-typography-base)}.text-primary{font:var(--vvd-typography-base);-webkit-line-clamp:var(--text-primary-line-clamp, 1)}.base:not(.disabled) .text-primary{color:var(--vvd-color-canvas-text)}.base.disabled .text-primary{color:var(--_appearance-color-text)}.base.two-lines .text-primary{font:var(--vvd-typography-base-bold)}.text-secondary{color:var(--vvd-color-neutral-800);font:var(--vvd-typography-base-condensed);-webkit-line-clamp:var(--text-secondary-line-clamp, 1)}.base.two-lines .text-secondary{color:var(--vvd-color-neutral-600)}.base.disabled .text-secondary{color:var(--_appearance-color-text)}.base.selected:not(.disabled) .text-secondary{color:var(--vvd-color-neutral-800)}:host([internal-part]) .text-primary{font:var(--_text-primary-custom-size, var--vvd-typography-base)}",m={menuitem:"menuitem",menuitemcheckbox:"menuitemcheckbox",menuitemradio:"menuitemradio",presentation:"presentation"};var w=Object.defineProperty,c=(e,o,i,t)=>{for(var n=void 0,l=e.length-1,d;l>=0;l--)(d=e[l])&&(n=d(o,i,n)||n);return n&&w(o,i,n),n};class r extends b.HostSemantics(h.AffixIcon(a.VividElement)){constructor(){super(),this.role=m.menuitem,this.checked=!1,this.handleMenuItemClick=o=>this._isSyntheticClickEvent(o)?!0:(this.invoke(),!!this._isPresentational),this.handleMouseOver=o=>(this.disabled||!this.submenu||this.expanded||(this.expanded=!0),!1),this.handleMouseOut=o=>(!this.expanded||this.contains(document.activeElement)||(this.expanded=!1),!1),this.invoke=()=>{if(!(this.disabled||this._isPresentational))switch(this.controlType){case"checkbox":this.checked=!this.checked;break;case"radio":this.checked||(this.checked=!0);break;default:this.submenu?this.expanded=!0:this.$emit("change");break}},this.checkTrailing=!1,this.handleMenuItemKeyDown=o=>{if(o.defaultPrevented)return!1;switch(o.key){case p.keyEnter:case p.keySpace:return this.invoke(),this.disabled||this.#t(),!1;case p.keyArrowRight:return this.submenu&&(this.expanded=!0,this.#t()),!1;case p.keyArrowLeft:if(this.expanded)return this.#t(),this.expanded=!1,this.focus(),!1}return!0},this.#e=new WeakSet,this.addEventListener("expanded-change",this.#n)}expandedChanged(){this.$fastController.isConnected&&(this.submenu&&!this.expanded&&this.submenu.collapseExpandedItem(),this.$emit("expanded-change",this,{bubbles:!1}))}#a(){this._isPresentational?this.role==="menuitem"&&(this.role="presentation"):this.role==="presentation"&&(this.role=m.menuitem)}_isPresentationalChanged(){this.$fastController.isConnected&&this.#a()}checkedChanged(){this.$fastController.isConnected&&this.$emit("change")}connectedCallback(){super.connectedCallback(),a.DOM.queueUpdate(()=>{this._isPresentational=this._isPresentational??!0,this.#a()})}slottedSubmenuChanged(){this.submenu&&(this.submenu.anchor=this,this.submenu.placement="right-start",this.submenu.collapseExpandedItem=()=>this.#o(),this.submenu._popupOffset=5)}get submenu(){return this.slottedSubmenu?.length?this.slottedSubmenu[0]:null}get hasSubmenu(){return this.submenu!==null}#o(){this.expanded=!1}#n(){this.submenu&&(this.submenu.open=this.expanded)}#e;_isSyntheticClickEvent(o){return this.#e.has(o)}#t(){const o=new MouseEvent("click",{bubbles:!0,composed:!0});this.#e.add(o),this.dispatchEvent(o)}}c([a.attr({mode:"boolean"})],r.prototype,"disabled");c([a.attr({mode:"boolean"})],r.prototype,"expanded");c([a.observable],r.prototype,"_isPresentational");c([a.replaces({deprecatedPropertyName:"role",fromDeprecated:e=>{switch(e){case"menuitemcheckbox":return"checkbox";case"menuitemradio":return"radio";default:return}},toDeprecated:e=>{switch(e){case"checkbox":return"menuitemcheckbox";case"radio":return"menuitemradio";default:return"menuitem"}}}),a.attr({attribute:"control-type"})],r.prototype,"controlType");c([a.attr({mode:"boolean"})],r.prototype,"checked");c([a.attr],r.prototype,"text");c([a.attr({attribute:"text-secondary"})],r.prototype,"textSecondary");c([a.attr],r.prototype,"connotation");c([a.attr({mode:"boolean",attribute:"check-trailing"})],r.prototype,"checkTrailing");c([a.attr({attribute:"check-appearance"})],r.prototype,"checkedAppearance");c([a.observable],r.prototype,"metaSlottedContent");c([a.observable],r.prototype,"trailingMetaSlottedContent");c([a.observable],r.prototype,"slottedSubmenu");const f="menu",$=e=>{if(e.checkedAppearance==="tick-only")return e.checked?"check-line":"";const o=e.controlType==="checkbox"?"checkbox":"radio",i=e.checked?"checked":"unchecked";return`${o}-${i}-2-line`},C=({connotation:e,disabled:o,checked:i,controlType:t,text:n,textSecondary:l,icon:d,metaSlottedContent:y,checkTrailing:_})=>k.classNames("base",[`connotation-${e}`,!!e],["disabled",!!o],["selected",!!(t&&i)],["trailing",!!(t&&(_||d))],["item-checkbox",t==="checkbox"],["item-radio",t==="radio"],["two-lines",!!n?.length&&!!l?.length],["has-meta",!!y?.length]);function S(e){const o=e.tagFor(u.Icon);return a.html`${s.when(i=>!!i.controlType,a.html`<span class="action"><${o} class="icon" name="${i=>$(i)}"></${o}></span>`)}`}function I(){return a.html`${s.when(e=>e.text||e.textSecondary,a.html`<span class="text">
2
+ ${s.when(e=>e.text,a.html`<span class="text-primary">${e=>e.text}</span>`)}
3
+ ${s.when(e=>e.textSecondary,a.html`<span class="text-secondary">${e=>e.textSecondary}</span>`)}
4
+ </span>`)}`}const M=e=>{const o=h.affixIconTemplateFactory(e),i=e.tagFor(u.Icon);return a.html`
5
+ <template
6
+ ${b.applyHostSemantics({role:m.menuitem,ariaHasPopup:t=>t.hasSubmenu?"menu":void 0,ariaChecked:t=>t.controlType?t.checked:void 0,ariaDisabled:t=>t.disabled,ariaExpanded:t=>t.expanded})}
7
+ @keydown="${(t,n)=>t.handleMenuItemKeyDown(n.event)}"
8
+ @click="${(t,n)=>t.handleMenuItemClick(n.event)}"
9
+ @mouseover="${(t,n)=>t.handleMouseOver(n.event)}"
10
+ @mouseout="${(t,n)=>t.handleMouseOut(n.event)}"
11
+ >
12
+ <div class="${C}">
13
+ <slot name="meta" ${v.slotted("metaSlottedContent")}></slot>
14
+ ${S(e)}
15
+ ${s.when(t=>t.icon,a.html`<span class="decorative"
16
+ >${t=>o(t.icon)}</span
17
+ >`)}
18
+ ${I()}
19
+ <slot
20
+ name="trailing-meta"
21
+ ${v.slotted("trailingMetaSlottedContent")}
22
+ ></slot>
23
+ ${s.when(t=>t.hasSubmenu,a.html`<${i} class="chevron" name="chevron-right-line"></${i}>`)}
24
+ </div>
25
+ <slot
26
+ name="submenu"
27
+ ${v.slotted({property:"slottedSubmenu",filter:v.elements(e.tagForNonDependency(f))})}
28
+ ></slot>
29
+ </template>
30
+ `},x=a.defineVividComponent("menu-item",r,M,[u.iconDefinition],{styles:g}),E=a.createRegisterFunction(x);exports.MenuItem=r;exports.MenuItemRole=m;exports.menuItemDefinition=x;exports.menuName=f;exports.registerMenuItem=E;
@@ -0,0 +1,288 @@
1
+ import { I as h, i as x } from "./definition2.js";
2
+ import { V as y, D as _, a as s, o as v, r as k, h as c, c as g, d as $ } from "./vivid-element.js";
3
+ import { h as w, g as C, l as S, f as I } from "./key-codes.js";
4
+ import { b as M, a as E } from "./affix.js";
5
+ import { H as P, a as z } from "./host-semantics.js";
6
+ import { s as m, e as B } from "./slotted.js";
7
+ import { c as D } from "./class-names.js";
8
+ import { w as l } from "./when.js";
9
+ const T = ":host(:focus-visible){outline:none}:host([disabled]){pointer-events:none}.base{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}@media (hover: hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base.disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media (hover: hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base.connotation-cta{--_connotation-color-primary: var(--vvd-menu-item-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-menu-item-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-menu-item-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-firm: var(--vvd-menu-item-cta-firm, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-menu-item-cta-faint, var(--vvd-color-cta-50));--_connotation-color-soft: var(--vvd-menu-item-cta-soft, var(--vvd-color-cta-100));--_connotation-color-pale: var(--vvd-menu-item-cta-pale, var(--vvd-color-cta-300));--_connotation-color-dim: var(--vvd-menu-item-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-menu-item-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-menu-item-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-menu-item-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-firm: var(--vvd-menu-item-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-menu-item-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-menu-item-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-pale: var(--vvd-menu-item-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-dim: var(--vvd-menu-item-accent-dim, var(--vvd-color-neutral-200))}.base{--_menu-item-padding-inline: calc(1px*(40 + 4*clamp(-1, var(--vvd-size-density, 0), 2))*.4) }.base{display:flex;box-sizing:border-box;align-items:center;border-radius:8px;background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);inline-size:100%}.base:not(.two-lines){gap:12px;min-block-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2)));padding-block:8px;padding-inline:var(--_menu-item-padding-inline)}.base.two-lines{gap:16px;min-block-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2)) + 1px*(24 + 4*clamp(-1,var(--vvd-size-density, 0),2)));padding-block:12px;padding-inline:var(--_menu-item-padding-inline)}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}:host(:not([role=presentation]):focus-visible) .base{box-shadow:0 0 0 4px color-mix(in srgb,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}.icon{flex-shrink:0;font-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2))/2);line-height:1}.action,.decorative{display:flex;place-content:center}.action{color:var(--_appearance-color-text)}.base.trailing .action,.base.has-meta .action{order:2}:host(:not([check-appearance],[checked],[disabled])) .action{color:var(--vvd-color-neutral-500)}.base:not(.disabled) .decorative{color:var(--vvd-color-neutral-600)}.base.disabled .decorative{color:var(--vvd-color-neutral-200)}.base.has-meta .decorative{order:1}.chevron{order:3}.text{display:flex;overflow:hidden;flex-direction:column;gap:4px;margin-inline-end:auto}.text-primary,.text-secondary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;font:var(--vvd-typography-base)}.text-primary{font:var(--vvd-typography-base);-webkit-line-clamp:var(--text-primary-line-clamp, 1)}.base:not(.disabled) .text-primary{color:var(--vvd-color-canvas-text)}.base.disabled .text-primary{color:var(--_appearance-color-text)}.base.two-lines .text-primary{font:var(--vvd-typography-base-bold)}.text-secondary{color:var(--vvd-color-neutral-800);font:var(--vvd-typography-base-condensed);-webkit-line-clamp:var(--text-secondary-line-clamp, 1)}.base.two-lines .text-secondary{color:var(--vvd-color-neutral-600)}.base.disabled .text-secondary{color:var(--_appearance-color-text)}.base.selected:not(.disabled) .text-secondary{color:var(--vvd-color-neutral-800)}:host([internal-part]) .text-primary{font:var(--_text-primary-custom-size, var--vvd-typography-base)}", u = {
10
+ menuitem: "menuitem",
11
+ menuitemcheckbox: "menuitemcheckbox",
12
+ menuitemradio: "menuitemradio",
13
+ presentation: "presentation"
14
+ };
15
+ var O = Object.defineProperty, i = (e, a, r, t) => {
16
+ for (var o = void 0, d = e.length - 1, p; d >= 0; d--)
17
+ (p = e[d]) && (o = p(a, r, o) || o);
18
+ return o && O(a, r, o), o;
19
+ };
20
+ class n extends P(M(y)) {
21
+ constructor() {
22
+ super(), this.role = u.menuitem, this.checked = !1, this.handleMenuItemClick = (a) => this._isSyntheticClickEvent(a) ? !0 : (this.invoke(), !!this._isPresentational), this.handleMouseOver = (a) => (this.disabled || !this.submenu || this.expanded || (this.expanded = !0), !1), this.handleMouseOut = (a) => (!this.expanded || this.contains(document.activeElement) || (this.expanded = !1), !1), this.invoke = () => {
23
+ if (!(this.disabled || this._isPresentational))
24
+ switch (this.controlType) {
25
+ case "checkbox":
26
+ this.checked = !this.checked;
27
+ break;
28
+ case "radio":
29
+ this.checked || (this.checked = !0);
30
+ break;
31
+ default:
32
+ this.submenu ? this.expanded = !0 : this.$emit("change");
33
+ break;
34
+ }
35
+ }, this.checkTrailing = !1, this.handleMenuItemKeyDown = (a) => {
36
+ if (a.defaultPrevented)
37
+ return !1;
38
+ switch (a.key) {
39
+ case I:
40
+ case S:
41
+ return this.invoke(), this.disabled || this.#t(), !1;
42
+ case C:
43
+ return this.submenu && (this.expanded = !0, this.#t()), !1;
44
+ case w:
45
+ if (this.expanded)
46
+ return this.#t(), this.expanded = !1, this.focus(), !1;
47
+ }
48
+ return !0;
49
+ }, this.#e = /* @__PURE__ */ new WeakSet(), this.addEventListener("expanded-change", this.#n);
50
+ }
51
+ /**
52
+ * @internal
53
+ */
54
+ expandedChanged() {
55
+ this.$fastController.isConnected && (this.submenu && !this.expanded && this.submenu.collapseExpandedItem(), this.$emit("expanded-change", this, { bubbles: !1 }));
56
+ }
57
+ #a() {
58
+ this._isPresentational ? this.role === "menuitem" && (this.role = "presentation") : this.role === "presentation" && (this.role = u.menuitem);
59
+ }
60
+ /**
61
+ * @internal
62
+ */
63
+ _isPresentationalChanged() {
64
+ this.$fastController.isConnected && this.#a();
65
+ }
66
+ /**
67
+ * @internal
68
+ */
69
+ checkedChanged() {
70
+ this.$fastController.isConnected && this.$emit("change");
71
+ }
72
+ /**
73
+ * @internal
74
+ */
75
+ connectedCallback() {
76
+ super.connectedCallback(), _.queueUpdate(() => {
77
+ this._isPresentational = this._isPresentational ?? !0, this.#a();
78
+ });
79
+ }
80
+ /**
81
+ * @internal
82
+ */
83
+ slottedSubmenuChanged() {
84
+ this.submenu && (this.submenu.anchor = this, this.submenu.placement = "right-start", this.submenu.collapseExpandedItem = () => this.#o(), this.submenu._popupOffset = 5);
85
+ }
86
+ /**
87
+ * @internal
88
+ */
89
+ get submenu() {
90
+ return this.slottedSubmenu?.length ? this.slottedSubmenu[0] : null;
91
+ }
92
+ /**
93
+ * @internal
94
+ */
95
+ get hasSubmenu() {
96
+ return this.submenu !== null;
97
+ }
98
+ #o() {
99
+ this.expanded = !1;
100
+ }
101
+ #n() {
102
+ this.submenu && (this.submenu.open = this.expanded);
103
+ }
104
+ #e;
105
+ /**
106
+ * @internal
107
+ */
108
+ _isSyntheticClickEvent(a) {
109
+ return this.#e.has(a);
110
+ }
111
+ #t() {
112
+ const a = new MouseEvent("click", {
113
+ bubbles: !0,
114
+ composed: !0
115
+ });
116
+ this.#e.add(a), this.dispatchEvent(a);
117
+ }
118
+ }
119
+ i([
120
+ s({ mode: "boolean" })
121
+ ], n.prototype, "disabled");
122
+ i([
123
+ s({ mode: "boolean" })
124
+ ], n.prototype, "expanded");
125
+ i([
126
+ v
127
+ ], n.prototype, "_isPresentational");
128
+ i([
129
+ k({
130
+ deprecatedPropertyName: "role",
131
+ fromDeprecated: (e) => {
132
+ switch (e) {
133
+ case "menuitemcheckbox":
134
+ return "checkbox";
135
+ case "menuitemradio":
136
+ return "radio";
137
+ default:
138
+ return;
139
+ }
140
+ },
141
+ toDeprecated: (e) => {
142
+ switch (e) {
143
+ case "checkbox":
144
+ return "menuitemcheckbox";
145
+ case "radio":
146
+ return "menuitemradio";
147
+ default:
148
+ return "menuitem";
149
+ }
150
+ }
151
+ }),
152
+ s({ attribute: "control-type" })
153
+ ], n.prototype, "controlType");
154
+ i([
155
+ s({ mode: "boolean" })
156
+ ], n.prototype, "checked");
157
+ i([
158
+ s
159
+ ], n.prototype, "text");
160
+ i([
161
+ s({ attribute: "text-secondary" })
162
+ ], n.prototype, "textSecondary");
163
+ i([
164
+ s
165
+ ], n.prototype, "connotation");
166
+ i([
167
+ s({ mode: "boolean", attribute: "check-trailing" })
168
+ ], n.prototype, "checkTrailing");
169
+ i([
170
+ s({ attribute: "check-appearance" })
171
+ ], n.prototype, "checkedAppearance");
172
+ i([
173
+ v
174
+ ], n.prototype, "metaSlottedContent");
175
+ i([
176
+ v
177
+ ], n.prototype, "trailingMetaSlottedContent");
178
+ i([
179
+ v
180
+ ], n.prototype, "slottedSubmenu");
181
+ const A = "menu", F = (e) => {
182
+ if (e.checkedAppearance === "tick-only")
183
+ return e.checked ? "check-line" : "";
184
+ const a = e.controlType === "checkbox" ? "checkbox" : "radio", r = e.checked ? "checked" : "unchecked";
185
+ return `${a}-${r}-2-line`;
186
+ }, H = ({
187
+ connotation: e,
188
+ disabled: a,
189
+ checked: r,
190
+ controlType: t,
191
+ text: o,
192
+ textSecondary: d,
193
+ icon: p,
194
+ metaSlottedContent: b,
195
+ checkTrailing: f
196
+ }) => D(
197
+ "base",
198
+ [`connotation-${e}`, !!e],
199
+ ["disabled", !!a],
200
+ ["selected", !!(t && r)],
201
+ ["trailing", !!(t && (f || p))],
202
+ ["item-checkbox", t === "checkbox"],
203
+ ["item-radio", t === "radio"],
204
+ ["two-lines", !!o?.length && !!d?.length],
205
+ ["has-meta", !!b?.length]
206
+ );
207
+ function N(e) {
208
+ const a = e.tagFor(h);
209
+ return c`${l(
210
+ (r) => !!r.controlType,
211
+ c`<span class="action"><${a} class="icon" name="${(r) => F(r)}"></${a}></span>`
212
+ )}`;
213
+ }
214
+ function R() {
215
+ return c`${l(
216
+ (e) => e.text || e.textSecondary,
217
+ c`<span class="text">
218
+ ${l(
219
+ (e) => e.text,
220
+ c`<span class="text-primary">${(e) => e.text}</span>`
221
+ )}
222
+ ${l(
223
+ (e) => e.textSecondary,
224
+ c`<span class="text-secondary">${(e) => e.textSecondary}</span>`
225
+ )}
226
+ </span>`
227
+ )}`;
228
+ }
229
+ const V = (e) => {
230
+ const a = E(e), r = e.tagFor(h);
231
+ return c`
232
+ <template
233
+ ${z({
234
+ role: u.menuitem,
235
+ ariaHasPopup: (t) => t.hasSubmenu ? "menu" : void 0,
236
+ ariaChecked: (t) => t.controlType ? t.checked : void 0,
237
+ ariaDisabled: (t) => t.disabled,
238
+ ariaExpanded: (t) => t.expanded
239
+ })}
240
+ @keydown="${(t, o) => t.handleMenuItemKeyDown(o.event)}"
241
+ @click="${(t, o) => t.handleMenuItemClick(o.event)}"
242
+ @mouseover="${(t, o) => t.handleMouseOver(o.event)}"
243
+ @mouseout="${(t, o) => t.handleMouseOut(o.event)}"
244
+ >
245
+ <div class="${H}">
246
+ <slot name="meta" ${m("metaSlottedContent")}></slot>
247
+ ${N(e)}
248
+ ${l(
249
+ (t) => t.icon,
250
+ c`<span class="decorative"
251
+ >${(t) => a(t.icon)}</span
252
+ >`
253
+ )}
254
+ ${R()}
255
+ <slot
256
+ name="trailing-meta"
257
+ ${m("trailingMetaSlottedContent")}
258
+ ></slot>
259
+ ${l(
260
+ (t) => t.hasSubmenu,
261
+ c`<${r} class="chevron" name="chevron-right-line"></${r}>`
262
+ )}
263
+ </div>
264
+ <slot
265
+ name="submenu"
266
+ ${m({
267
+ property: "slottedSubmenu",
268
+ filter: B(e.tagForNonDependency(A))
269
+ })}
270
+ ></slot>
271
+ </template>
272
+ `;
273
+ }, K = $(
274
+ "menu-item",
275
+ n,
276
+ V,
277
+ [x],
278
+ {
279
+ styles: T
280
+ }
281
+ ), X = g(K);
282
+ export {
283
+ n as M,
284
+ u as a,
285
+ A as b,
286
+ K as m,
287
+ X as r
288
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";const v=require("./definition2.cjs"),o=require("./vivid-element.cjs"),p=require("./mixins.cjs"),h=require("./delegates-aria.cjs"),x=require("./form-associated.cjs"),f=require("./with-error-text.cjs"),k=require("./with-success-text.cjs"),y=require("./form-element.cjs"),_=require("./class-names.cjs"),d=require("./when.cjs"),g=require("./slotted.cjs"),C=':host{display:inline-flex;flex-direction:column;gap:4px;vertical-align:middle;--_low-ink-color: var(--vvd-color-neutral-600)}:host([disabled]){cursor:not-allowed}.base.connotation-cta{--_connotation-color-primary: var(--vvd-checkbox-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-checkbox-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-checkbox-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-fierce: var(--vvd-checkbox-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-intermediate: var(--vvd-checkbox-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-firm: var(--vvd-checkbox-cta-firm, var(--vvd-color-cta-600))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-checkbox-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-checkbox-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-checkbox-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-fierce: var(--vvd-checkbox-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-intermediate: var(--vvd-checkbox-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-firm: var(--vvd-checkbox-accent-firm, var(--vvd-color-canvas-text))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}@media (hover: hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}.base:checked:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: var(--_connotation-color-primary)}.base.checked:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: var(--_connotation-color-primary)}@media (hover: hover){.base:checked:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: var(--_connotation-color-primary-increment)}}.base.checked.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: var(--_connotation-color-primary-increment)}.base:disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base.disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base.readonly:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}.base:focus-visible{outline:none}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{pointer-events:none}.control{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:4px;background-color:var(--_appearance-color-fill);block-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)));box-shadow:inset 0 0 0 2px var(--_appearance-color-outline);color:var(--_appearance-color-text);inline-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base:focus-visible .control{--focus-stroke-gap-color: transparent}.base:focus-visible .control:after{box-shadow:0 0 0 4px color-mix(in srgb,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));position:absolute;display:block;border-radius:var(--focus-border-radius, inherit);block-size:calc(100% + var(--focus-block-size-addition, 4px));content:"";inline-size:calc(100% + var(--focus-block-size-addition, 4px));inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.base.error:not(.checked) .control{background-color:var(--vvd-color-canvas);box-shadow:inset 0 0 0 2px var(--vvd-color-alert-500)}.indicator{font-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)) - 4px)}.base:not(.checked) .indicator.checkmark{display:none}.base.checked .indicator.minus,.base:not(.indeterminate) .indicator.minus{display:none}label{display:flex;flex-wrap:wrap;align-items:center;color:var(--vvd-color-canvas-text);column-gap:4px;cursor:pointer;font:var(--vvd-typography-base)}.hide-label label{display:none}.icon{font-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2))*.6);line-height:1}';var w=Object.defineProperty,i=(r,a,e,c)=>{for(var t=void 0,l=r.length-1,s;l>=0;l--)(s=r[l])&&(t=s(a,e,t)||t);return t&&w(a,e,t),t};const $=" ";class n extends h.DelegatesAria(p.WithFeedback(f.WithErrorText(k.WithSuccessText(y.FormElement(x.CheckableFormAssociated(o.VividElement)))))){constructor(){super(),this.tabindex=null,this.proxy=document.createElement("input"),this.initialValue="on",this.defaultSlottedNodes=[],this.indeterminate=!1,this.keypressHandler=a=>{if(a.target instanceof HTMLAnchorElement)return!0;if(!this.disabled&&!this.readOnly)switch(a.key){case $:this.indeterminate&&(this.indeterminate=!1),this.checked=!this.checked;break}return!1},this.clickHandler=a=>a.target instanceof HTMLAnchorElement?!0:(!this.disabled&&!this.readOnly&&(this.indeterminate&&(this.indeterminate=!1),this.checked=!this.checked),!1),this.proxy.setAttribute("type","checkbox")}readOnlyChanged(){this.proxy instanceof HTMLInputElement&&(this.proxy.readOnly=this.readOnly)}ariaCheckedChanged(a,e){super.ariaCheckedChanged(a,e),this.ariaChecked==="mixed"?this.indeterminate=!0:(this.indeterminate=!1,this.checked=this.ariaChecked==="true")}checkedChanged(a,e){super.checkedChanged(a,e),this.ariaChecked=e==!0?"true":"false",a!==void 0&&this.$emit("input")}}i([o.attr({attribute:"tabindex"})],n.prototype,"tabindex");i([o.attr],n.prototype,"connotation");i([o.attr({attribute:"readonly",mode:"boolean"})],n.prototype,"readOnly");i([o.observable],n.prototype,"defaultSlottedNodes");i([o.attr({attribute:"indeterminate",mode:"boolean"})],n.prototype,"indeterminate");i([o.observable],n.prototype,"slottedContent");const q=({connotation:r,readOnly:a,checked:e,disabled:c,indeterminate:t,errorValidationMessage:l,successText:s,label:u,slottedContent:m})=>_.classNames("base",[`connotation-${r}`,!!r],["readonly",!!a],["checked",!!e||!!t],["disabled",!!c],["error connotation-alert",!!l],["success connotation-success",!!s],["hide-label",!u&&!m?.length]),z=r=>{const a=r.tagFor(v.Icon);return o.html`<template>
2
+ <div
3
+ class="${q}"
4
+ aria-describedby="${e=>e._feedbackDescribedBy}"
5
+ ${h.delegateAria({role:"checkbox",ariaChecked:e=>e.indeterminate?"mixed":e.checked,ariaRequired:e=>e.required,ariaDisabled:e=>e.disabled,ariaReadOnly:e=>e.readOnly})}
6
+ tabindex="${e=>e.tabindex!==null?e.tabindex:e.disabled?null:0}"
7
+ @keypress="${(e,c)=>e.keypressHandler(c.event)}"
8
+ @click="${(e,c)=>e.clickHandler(c.event)}"
9
+ >
10
+ <div class="control">
11
+ ${d.when(e=>e.checked&&!e.indeterminate,o.html`<${a} name="check-solid" class="icon"></${a}>`)}
12
+ ${d.when(e=>e.indeterminate,o.html`<${a} name="minus-solid" class="icon"></${a}>`)}
13
+ </div>
14
+ ${o.html`<label
15
+ >${e=>e.label}<slot ${g.slotted("slottedContent")}></slot
16
+ ></label>`}
17
+ </div>
18
+ ${e=>e._getFeedbackTemplate(r)}
19
+ </template>`},b=o.defineVividComponent("checkbox",n,z,[v.iconDefinition,p.feedbackMessageDefinition],{styles:C,shadowOptions:{delegatesFocus:!0}}),E=o.createRegisterFunction(b);exports.Checkbox=n;exports.checkboxDefinition=b;exports.registerCheckbox=E;
@@ -0,0 +1,145 @@
1
+ import { I as m, i as u } from "./definition2.js";
2
+ import { V as f, a as d, o as p, h as s, c as x, d as y } from "./vivid-element.js";
3
+ import { W as k, f as _ } from "./mixins.js";
4
+ import { D as g, d as C } from "./delegates-aria.js";
5
+ import { C as w } from "./form-associated.js";
6
+ import { W as $ } from "./with-error-text.js";
7
+ import { W as z } from "./with-success-text.js";
8
+ import { F as O } from "./form-element.js";
9
+ import { c as F } from "./class-names.js";
10
+ import { w as v } from "./when.js";
11
+ import { s as T } from "./slotted.js";
12
+ const B = ':host{display:inline-flex;flex-direction:column;gap:4px;vertical-align:middle;--_low-ink-color: var(--vvd-color-neutral-600)}:host([disabled]){cursor:not-allowed}.base.connotation-cta{--_connotation-color-primary: var(--vvd-checkbox-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-checkbox-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-checkbox-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-fierce: var(--vvd-checkbox-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-intermediate: var(--vvd-checkbox-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-firm: var(--vvd-checkbox-cta-firm, var(--vvd-color-cta-600))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-checkbox-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-checkbox-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-checkbox-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-fierce: var(--vvd-checkbox-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-intermediate: var(--vvd-checkbox-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-firm: var(--vvd-checkbox-accent-firm, var(--vvd-color-canvas-text))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}@media (hover: hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}.base:checked:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: var(--_connotation-color-primary)}.base.checked:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: var(--_connotation-color-primary)}@media (hover: hover){.base:checked:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: var(--_connotation-color-primary-increment)}}.base.checked.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: var(--_connotation-color-primary-increment)}.base:disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base.disabled{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base.readonly:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}.base:focus-visible{outline:none}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{pointer-events:none}.control{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:4px;background-color:var(--_appearance-color-fill);block-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)));box-shadow:inset 0 0 0 2px var(--_appearance-color-outline);color:var(--_appearance-color-text);inline-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base:focus-visible .control{--focus-stroke-gap-color: transparent}.base:focus-visible .control:after{box-shadow:0 0 0 4px color-mix(in srgb,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));position:absolute;display:block;border-radius:var(--focus-border-radius, inherit);block-size:calc(100% + var(--focus-block-size-addition, 4px));content:"";inline-size:calc(100% + var(--focus-block-size-addition, 4px));inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.base.error:not(.checked) .control{background-color:var(--vvd-color-canvas);box-shadow:inset 0 0 0 2px var(--vvd-color-alert-500)}.indicator{font-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)) - 4px)}.base:not(.checked) .indicator.checkmark{display:none}.base.checked .indicator.minus,.base:not(.indeterminate) .indicator.minus{display:none}label{display:flex;flex-wrap:wrap;align-items:center;color:var(--vvd-color-canvas-text);column-gap:4px;cursor:pointer;font:var(--vvd-typography-base)}.hide-label label{display:none}.icon{font-size:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2))*.6);line-height:1}';
13
+ var D = Object.defineProperty, c = (o, a, e, n) => {
14
+ for (var r = void 0, i = o.length - 1, l; i >= 0; i--)
15
+ (l = o[i]) && (r = l(a, e, r) || r);
16
+ return r && D(a, e, r), r;
17
+ };
18
+ const E = " ";
19
+ class t extends g(
20
+ k(
21
+ $(
22
+ z(O(w(f)))
23
+ )
24
+ )
25
+ ) {
26
+ constructor() {
27
+ super(), this.tabindex = null, this.proxy = document.createElement("input"), this.initialValue = "on", this.defaultSlottedNodes = [], this.indeterminate = !1, this.keypressHandler = (a) => {
28
+ if (a.target instanceof HTMLAnchorElement)
29
+ return !0;
30
+ if (!this.disabled && !this.readOnly)
31
+ switch (a.key) {
32
+ case E:
33
+ this.indeterminate && (this.indeterminate = !1), this.checked = !this.checked;
34
+ break;
35
+ }
36
+ return !1;
37
+ }, this.clickHandler = (a) => a.target instanceof HTMLAnchorElement ? !0 : (!this.disabled && !this.readOnly && (this.indeterminate && (this.indeterminate = !1), this.checked = !this.checked), !1), this.proxy.setAttribute("type", "checkbox");
38
+ }
39
+ // Map to proxy element
40
+ /**
41
+ * @internal
42
+ */
43
+ readOnlyChanged() {
44
+ this.proxy instanceof HTMLInputElement && (this.proxy.readOnly = this.readOnly);
45
+ }
46
+ /**
47
+ * @internal
48
+ */
49
+ ariaCheckedChanged(a, e) {
50
+ super.ariaCheckedChanged(a, e), this.ariaChecked === "mixed" ? this.indeterminate = !0 : (this.indeterminate = !1, this.checked = this.ariaChecked === "true");
51
+ }
52
+ /**
53
+ * @internal
54
+ */
55
+ checkedChanged(a, e) {
56
+ super.checkedChanged(a, e), this.ariaChecked = e == !0 ? "true" : "false", a !== void 0 && this.$emit("input");
57
+ }
58
+ }
59
+ c([
60
+ d({ attribute: "tabindex" })
61
+ ], t.prototype, "tabindex");
62
+ c([
63
+ d
64
+ ], t.prototype, "connotation");
65
+ c([
66
+ d({ attribute: "readonly", mode: "boolean" })
67
+ ], t.prototype, "readOnly");
68
+ c([
69
+ p
70
+ ], t.prototype, "defaultSlottedNodes");
71
+ c([
72
+ d({ attribute: "indeterminate", mode: "boolean" })
73
+ ], t.prototype, "indeterminate");
74
+ c([
75
+ p
76
+ ], t.prototype, "slottedContent");
77
+ const H = ({
78
+ connotation: o,
79
+ readOnly: a,
80
+ checked: e,
81
+ disabled: n,
82
+ indeterminate: r,
83
+ errorValidationMessage: i,
84
+ successText: l,
85
+ label: b,
86
+ slottedContent: h
87
+ }) => F(
88
+ "base",
89
+ [`connotation-${o}`, !!o],
90
+ ["readonly", !!a],
91
+ ["checked", !!e || !!r],
92
+ ["disabled", !!n],
93
+ ["error connotation-alert", !!i],
94
+ ["success connotation-success", !!l],
95
+ ["hide-label", !b && !h?.length]
96
+ ), A = (o) => {
97
+ const a = o.tagFor(m);
98
+ return s`<template>
99
+ <div
100
+ class="${H}"
101
+ aria-describedby="${(e) => e._feedbackDescribedBy}"
102
+ ${C({
103
+ role: "checkbox",
104
+ ariaChecked: (e) => e.indeterminate ? "mixed" : e.checked,
105
+ ariaRequired: (e) => e.required,
106
+ ariaDisabled: (e) => e.disabled,
107
+ ariaReadOnly: (e) => e.readOnly
108
+ })}
109
+ tabindex="${(e) => e.tabindex !== null ? e.tabindex : e.disabled ? null : 0}"
110
+ @keypress="${(e, n) => e.keypressHandler(n.event)}"
111
+ @click="${(e, n) => e.clickHandler(n.event)}"
112
+ >
113
+ <div class="control">
114
+ ${v(
115
+ (e) => e.checked && !e.indeterminate,
116
+ s`<${a} name="check-solid" class="icon"></${a}>`
117
+ )}
118
+ ${v(
119
+ (e) => e.indeterminate,
120
+ s`<${a} name="minus-solid" class="icon"></${a}>`
121
+ )}
122
+ </div>
123
+ ${s`<label
124
+ >${(e) => e.label}<slot ${T("slottedContent")}></slot
125
+ ></label>`}
126
+ </div>
127
+ ${(e) => e._getFeedbackTemplate(o)}
128
+ </template>`;
129
+ }, W = y(
130
+ "checkbox",
131
+ t,
132
+ A,
133
+ [u, _],
134
+ {
135
+ styles: B,
136
+ shadowOptions: {
137
+ delegatesFocus: !0
138
+ }
139
+ }
140
+ ), J = x(W);
141
+ export {
142
+ t as C,
143
+ W as c,
144
+ J as r
145
+ };
@@ -0,0 +1,14 @@
1
+ "use strict";const Vt=require("./definition3.cjs"),Ht=require("./definition4.cjs"),S=require("./vivid-element.cjs"),ht=require("./ref.cjs"),Jt=require("./class-names.cjs"),Pt=require("./when.cjs"),Mt=["top","right","bottom","left"],At=["start","end"],Et=Mt.reduce((t,e)=>t.concat(e,e+"-"+At[0],e+"-"+At[1]),[]),N=Math.min,C=Math.max,ct=Math.round,lt=Math.floor,Y=t=>({x:t,y:t}),Qt={left:"right",right:"left",bottom:"top",top:"bottom"},Zt={start:"end",end:"start"};function te(t,e,n){return C(t,N(e,n))}function J(t,e){return typeof t=="function"?t(e):t}function _(t){return t.split("-")[0]}function M(t){return t.split("-")[1]}function ee(t){return t==="x"?"y":"x"}function wt(t){return t==="y"?"height":"width"}const ne=new Set(["top","bottom"]);function X(t){return ne.has(_(t))?"y":"x"}function vt(t){return ee(X(t))}function Nt(t,e,n){n===void 0&&(n=!1);const o=M(t),i=vt(t),r=wt(i);let s=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return e.reference[r]>e.floating[r]&&(s=ft(s)),[s,ft(s)]}function oe(t){const e=ft(t);return[at(t),e,at(e)]}function at(t){return t.replace(/start|end/g,e=>Zt[e])}const Ct=["left","right"],St=["right","left"],ie=["top","bottom"],re=["bottom","top"];function se(t,e,n){switch(t){case"top":case"bottom":return n?e?St:Ct:e?Ct:St;case"left":case"right":return e?ie:re;default:return[]}}function le(t,e,n,o){const i=M(t);let r=se(_(t),n==="start",o);return i&&(r=r.map(s=>s+"-"+i),e&&(r=r.concat(r.map(at)))),r}function ft(t){return t.replace(/left|right|bottom|top/g,e=>Qt[e])}function ce(t){return{top:0,right:0,bottom:0,left:0,...t}}function yt(t){return typeof t!="number"?ce(t):{top:t,right:t,bottom:t,left:t}}function tt(t){const{x:e,y:n,width:o,height:i}=t;return{width:o,height:i,top:n,left:e,right:e+o,bottom:n+i,x:e,y:n}}function Tt(t,e,n){let{reference:o,floating:i}=t;const r=X(e),s=vt(e),l=wt(s),c=_(e),a=r==="y",p=o.x+o.width/2-i.width/2,f=o.y+o.height/2-i.height/2,d=o[l]/2-i[l]/2;let u;switch(c){case"top":u={x:p,y:o.y-i.height};break;case"bottom":u={x:p,y:o.y+o.height};break;case"right":u={x:o.x+o.width,y:f};break;case"left":u={x:o.x-i.width,y:f};break;default:u={x:o.x,y:o.y}}switch(M(e)){case"start":u[s]-=d*(n&&a?-1:1);break;case"end":u[s]+=d*(n&&a?-1:1);break}return u}const ae=async(t,e,n)=>{const{placement:o="bottom",strategy:i="absolute",middleware:r=[],platform:s}=n,l=r.filter(Boolean),c=await(s.isRTL==null?void 0:s.isRTL(e));let a=await s.getElementRects({reference:t,floating:e,strategy:i}),{x:p,y:f}=Tt(a,o,c),d=o,u={},m=0;for(let h=0;h<l.length;h++){const{name:g,fn:w}=l[h],{x:y,y:x,data:R,reset:b}=await w({x:p,y:f,initialPlacement:o,placement:d,strategy:i,middlewareData:u,rects:a,platform:s,elements:{reference:t,floating:e}});p=y??p,f=x??f,u={...u,[g]:{...u[g],...R}},b&&m<=50&&(m++,typeof b=="object"&&(b.placement&&(d=b.placement),b.rects&&(a=b.rects===!0?await s.getElementRects({reference:t,floating:e,strategy:i}):b.rects),{x:p,y:f}=Tt(a,d,c)),h=-1)}return{x:p,y:f,placement:d,strategy:i,middlewareData:u}};async function it(t,e){var n;e===void 0&&(e={});const{x:o,y:i,platform:r,rects:s,elements:l,strategy:c}=t,{boundary:a="clippingAncestors",rootBoundary:p="viewport",elementContext:f="floating",altBoundary:d=!1,padding:u=0}=J(e,t),m=yt(u),g=l[d?f==="floating"?"reference":"floating":f],w=tt(await r.getClippingRect({element:(n=await(r.isElement==null?void 0:r.isElement(g)))==null||n?g:g.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(l.floating)),boundary:a,rootBoundary:p,strategy:c})),y=f==="floating"?{x:o,y:i,width:s.floating.width,height:s.floating.height}:s.reference,x=await(r.getOffsetParent==null?void 0:r.getOffsetParent(l.floating)),R=await(r.isElement==null?void 0:r.isElement(x))?await(r.getScale==null?void 0:r.getScale(x))||{x:1,y:1}:{x:1,y:1},b=tt(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:x,strategy:c}):y);return{top:(w.top-b.top+m.top)/R.y,bottom:(b.bottom-w.bottom+m.bottom)/R.y,left:(w.left-b.left+m.left)/R.x,right:(b.right-w.right+m.right)/R.x}}const fe=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:o,placement:i,rects:r,platform:s,elements:l,middlewareData:c}=e,{element:a,padding:p=0}=J(t,e)||{};if(a==null)return{};const f=yt(p),d={x:n,y:o},u=vt(i),m=wt(u),h=await s.getDimensions(a),g=u==="y",w=g?"top":"left",y=g?"bottom":"right",x=g?"clientHeight":"clientWidth",R=r.reference[m]+r.reference[u]-d[u]-r.floating[m],b=d[u]-r.reference[u],P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a));let O=P?P[x]:0;(!O||!await(s.isElement==null?void 0:s.isElement(P)))&&(O=l.floating[x]||r.floating[m]);const B=R/2-b/2,T=O/2-h[m]/2-1,v=N(f[w],T),A=N(f[y],T),L=v,D=O-h[m]-A,E=O/2-h[m]/2+B,H=te(L,E,D),V=!c.arrow&&M(i)!=null&&E!==H&&r.reference[m]/2-(E<L?v:A)-h[m]/2<0,k=V?E<L?E-L:E-D:0;return{[u]:d[u]+k,data:{[u]:H,centerOffset:E-H-k,...V&&{alignmentOffset:k}},reset:V}}});function ue(t,e,n){return(t?[...n.filter(i=>M(i)===t),...n.filter(i=>M(i)!==t)]:n.filter(i=>_(i)===i)).filter(i=>t?M(i)===t||(e?at(i)!==i:!1):!0)}const pe=function(t){return t===void 0&&(t={}),{name:"autoPlacement",options:t,async fn(e){var n,o,i;const{rects:r,middlewareData:s,placement:l,platform:c,elements:a}=e,{crossAxis:p=!1,alignment:f,allowedPlacements:d=Et,autoAlignment:u=!0,...m}=J(t,e),h=f!==void 0||d===Et?ue(f||null,u,d):d,g=await it(e,m),w=((n=s.autoPlacement)==null?void 0:n.index)||0,y=h[w];if(y==null)return{};const x=Nt(y,r,await(c.isRTL==null?void 0:c.isRTL(a.floating)));if(l!==y)return{reset:{placement:h[0]}};const R=[g[_(y)],g[x[0]],g[x[1]]],b=[...((o=s.autoPlacement)==null?void 0:o.overflows)||[],{placement:y,overflows:R}],P=h[w+1];if(P)return{data:{index:w+1,overflows:b},reset:{placement:P}};const O=b.map(v=>{const A=M(v.placement);return[v.placement,A&&p?v.overflows.slice(0,2).reduce((L,D)=>L+D,0):v.overflows[0],v.overflows]}).sort((v,A)=>v[1]-A[1]),T=((i=O.filter(v=>v[2].slice(0,M(v[0])?2:3).every(A=>A<=0))[0])==null?void 0:i[0])||O[0][0];return T!==l?{data:{index:w+1,overflows:b},reset:{placement:T}}:{}}}},de=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:i,middlewareData:r,rects:s,initialPlacement:l,platform:c,elements:a}=e,{mainAxis:p=!0,crossAxis:f=!0,fallbackPlacements:d,fallbackStrategy:u="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...g}=J(t,e);if((n=r.arrow)!=null&&n.alignmentOffset)return{};const w=_(i),y=X(l),x=_(l)===l,R=await(c.isRTL==null?void 0:c.isRTL(a.floating)),b=d||(x||!h?[ft(l)]:oe(l)),P=m!=="none";!d&&P&&b.push(...le(l,h,m,R));const O=[l,...b],B=await it(e,g),T=[];let v=((o=r.flip)==null?void 0:o.overflows)||[];if(p&&T.push(B[w]),f){const E=Nt(i,s,R);T.push(B[E[0]],B[E[1]])}if(v=[...v,{placement:i,overflows:T}],!T.every(E=>E<=0)){var A,L;const E=(((A=r.flip)==null?void 0:A.index)||0)+1,H=O[E];if(H&&(!(f==="alignment"?y!==X(H):!1)||v.every($=>X($.placement)===y?$.overflows[0]>0:!0)))return{data:{index:E,overflows:v},reset:{placement:H}};let V=(L=v.filter(k=>k.overflows[0]<=0).sort((k,$)=>k.overflows[1]-$.overflows[1])[0])==null?void 0:L.placement;if(!V)switch(u){case"bestFit":{var D;const k=(D=v.filter($=>{if(P){const K=X($.placement);return K===y||K==="y"}return!0}).map($=>[$.placement,$.overflows.filter(K=>K>0).reduce((K,Gt)=>K+Gt,0)]).sort(($,K)=>$[1]-K[1])[0])==null?void 0:D[0];k&&(V=k);break}case"initialPlacement":V=l;break}if(i!==V)return{reset:{placement:V}}}return{}}}};function Lt(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function Dt(t){return Mt.some(e=>t[e]>=0)}const he=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n}=e,{strategy:o="referenceHidden",...i}=J(t,e);switch(o){case"referenceHidden":{const r=await it(e,{...i,elementContext:"reference"}),s=Lt(r,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:Dt(s)}}}case"escaped":{const r=await it(e,{...i,altBoundary:!0}),s=Lt(r,n.floating);return{data:{escapedOffsets:s,escaped:Dt(s)}}}default:return{}}}}};function _t(t){const e=N(...t.map(r=>r.left)),n=N(...t.map(r=>r.top)),o=C(...t.map(r=>r.right)),i=C(...t.map(r=>r.bottom));return{x:e,y:n,width:o-e,height:i-n}}function me(t){const e=t.slice().sort((i,r)=>i.y-r.y),n=[];let o=null;for(let i=0;i<e.length;i++){const r=e[i];!o||r.y-o.y>o.height/2?n.push([r]):n[n.length-1].push(r),o=r}return n.map(i=>tt(_t(i)))}const ge=function(t){return t===void 0&&(t={}),{name:"inline",options:t,async fn(e){const{placement:n,elements:o,rects:i,platform:r,strategy:s}=e,{padding:l=2,x:c,y:a}=J(t,e),p=Array.from(await(r.getClientRects==null?void 0:r.getClientRects(o.reference))||[]),f=me(p),d=tt(_t(p)),u=yt(l);function m(){if(f.length===2&&f[0].left>f[1].right&&c!=null&&a!=null)return f.find(g=>c>g.left-u.left&&c<g.right+u.right&&a>g.top-u.top&&a<g.bottom+u.bottom)||d;if(f.length>=2){if(X(n)==="y"){const v=f[0],A=f[f.length-1],L=_(n)==="top",D=v.top,E=A.bottom,H=L?v.left:A.left,V=L?v.right:A.right,k=V-H,$=E-D;return{top:D,bottom:E,left:H,right:V,width:k,height:$,x:H,y:D}}const g=_(n)==="left",w=C(...f.map(v=>v.right)),y=N(...f.map(v=>v.left)),x=f.filter(v=>g?v.left===y:v.right===w),R=x[0].top,b=x[x.length-1].bottom,P=y,O=w,B=O-P,T=b-R;return{top:R,bottom:b,left:P,right:O,width:B,height:T,x:P,y:R}}return d}const h=await r.getElementRects({reference:{getBoundingClientRect:m},floating:o.floating,strategy:s});return i.reference.x!==h.reference.x||i.reference.y!==h.reference.y||i.reference.width!==h.reference.width||i.reference.height!==h.reference.height?{reset:{rects:h}}:{}}}},we=new Set(["left","top"]);async function ve(t,e){const{placement:n,platform:o,elements:i}=t,r=await(o.isRTL==null?void 0:o.isRTL(i.floating)),s=_(n),l=M(n),c=X(n)==="y",a=we.has(s)?-1:1,p=r&&c?-1:1,f=J(e,t);let{mainAxis:d,crossAxis:u,alignmentAxis:m}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof m=="number"&&(u=l==="end"?m*-1:m),c?{x:u*p,y:d*a}:{x:d*a,y:u*p}}const ye=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,o;const{x:i,y:r,placement:s,middlewareData:l}=e,c=await ve(e,t);return s===((n=l.offset)==null?void 0:n.placement)&&(o=l.arrow)!=null&&o.alignmentOffset?{}:{x:i+c.x,y:r+c.y,data:{...c,placement:s}}}}},xe=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var n,o;const{placement:i,rects:r,platform:s,elements:l}=e,{apply:c=()=>{},...a}=J(t,e),p=await it(e,a),f=_(i),d=M(i),u=X(i)==="y",{width:m,height:h}=r.floating;let g,w;f==="top"||f==="bottom"?(g=f,w=d===(await(s.isRTL==null?void 0:s.isRTL(l.floating))?"start":"end")?"left":"right"):(w=f,g=d==="end"?"top":"bottom");const y=h-p.top-p.bottom,x=m-p.left-p.right,R=N(h-p[g],y),b=N(m-p[w],x),P=!e.middlewareData.shift;let O=R,B=b;if((n=e.middlewareData.shift)!=null&&n.enabled.x&&(B=x),(o=e.middlewareData.shift)!=null&&o.enabled.y&&(O=y),P&&!d){const v=C(p.left,0),A=C(p.right,0),L=C(p.top,0),D=C(p.bottom,0);u?B=m-2*(v!==0||A!==0?v+A:C(p.left,p.right)):O=h-2*(L!==0||D!==0?L+D:C(p.top,p.bottom))}await c({...e,availableWidth:B,availableHeight:O});const T=await s.getDimensions(l.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function ut(){return typeof window<"u"}function nt(t){return Wt(t)?(t.nodeName||"").toLowerCase():"#document"}function F(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function I(t){var e;return(e=(Wt(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Wt(t){return ut()?t instanceof Node||t instanceof F(t).Node:!1}function W(t){return ut()?t instanceof Element||t instanceof F(t).Element:!1}function q(t){return ut()?t instanceof HTMLElement||t instanceof F(t).HTMLElement:!1}function kt(t){return!ut()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof F(t).ShadowRoot}const be=new Set(["inline","contents"]);function st(t){const{overflow:e,overflowX:n,overflowY:o,display:i}=z(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&!be.has(i)}const Re=new Set(["table","td","th"]);function Oe(t){return Re.has(nt(t))}const Pe=[":popover-open",":modal"];function pt(t){return Pe.some(e=>{try{return t.matches(e)}catch{return!1}})}const Ae=["transform","translate","scale","rotate","perspective"],Ee=["transform","translate","scale","rotate","perspective","filter"],Ce=["paint","layout","strict","content"];function xt(t){const e=bt(),n=W(t)?z(t):t;return Ae.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!e&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!e&&(n.filter?n.filter!=="none":!1)||Ee.some(o=>(n.willChange||"").includes(o))||Ce.some(o=>(n.contain||"").includes(o))}function Se(t){let e=G(t);for(;q(e)&&!et(e);){if(xt(e))return e;if(pt(e))return null;e=G(e)}return null}function bt(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const Te=new Set(["html","body","#document"]);function et(t){return Te.has(nt(t))}function z(t){return F(t).getComputedStyle(t)}function dt(t){return W(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function G(t){if(nt(t)==="html")return t;const e=t.assignedSlot||t.parentNode||kt(t)&&t.host||I(t);return kt(e)?e.host:e}function zt(t){const e=G(t);return et(e)?t.ownerDocument?t.ownerDocument.body:t.body:q(e)&&st(e)?e:zt(e)}function rt(t,e,n){var o;e===void 0&&(e=[]),n===void 0&&(n=!0);const i=zt(t),r=i===((o=t.ownerDocument)==null?void 0:o.body),s=F(i);if(r){const l=gt(s);return e.concat(s,s.visualViewport||[],st(i)?i:[],l&&n?rt(l):[])}return e.concat(i,rt(i,[],n))}function gt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function jt(t){const e=z(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;const i=q(t),r=i?t.offsetWidth:n,s=i?t.offsetHeight:o,l=ct(n)!==r||ct(o)!==s;return l&&(n=r,o=s),{width:n,height:o,$:l}}function Rt(t){return W(t)?t:t.contextElement}function Z(t){const e=Rt(t);if(!q(e))return Y(1);const n=e.getBoundingClientRect(),{width:o,height:i,$:r}=jt(e);let s=(r?ct(n.width):n.width)/o,l=(r?ct(n.height):n.height)/i;return(!s||!Number.isFinite(s))&&(s=1),(!l||!Number.isFinite(l))&&(l=1),{x:s,y:l}}const Le=Y(0);function Yt(t){const e=F(t);return!bt()||!e.visualViewport?Le:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function De(t,e,n){return e===void 0&&(e=!1),!n||e&&n!==F(t)?!1:e}function Q(t,e,n,o){e===void 0&&(e=!1),n===void 0&&(n=!1);const i=t.getBoundingClientRect(),r=Rt(t);let s=Y(1);e&&(o?W(o)&&(s=Z(o)):s=Z(t));const l=De(r,n,o)?Yt(r):Y(0);let c=(i.left+l.x)/s.x,a=(i.top+l.y)/s.y,p=i.width/s.x,f=i.height/s.y;if(r){const d=F(r),u=o&&W(o)?F(o):o;let m=d,h=gt(m);for(;h&&o&&u!==m;){const g=Z(h),w=h.getBoundingClientRect(),y=z(h),x=w.left+(h.clientLeft+parseFloat(y.paddingLeft))*g.x,R=w.top+(h.clientTop+parseFloat(y.paddingTop))*g.y;c*=g.x,a*=g.y,p*=g.x,f*=g.y,c+=x,a+=R,m=F(h),h=gt(m)}}return tt({width:p,height:f,x:c,y:a})}function Ot(t,e){const n=dt(t).scrollLeft;return e?e.left+n:Q(I(t)).left+n}function qt(t,e,n){n===void 0&&(n=!1);const o=t.getBoundingClientRect(),i=o.left+e.scrollLeft-(n?0:Ot(t,o)),r=o.top+e.scrollTop;return{x:i,y:r}}function ke(t){let{elements:e,rect:n,offsetParent:o,strategy:i}=t;const r=i==="fixed",s=I(o),l=e?pt(e.floating):!1;if(o===s||l&&r)return n;let c={scrollLeft:0,scrollTop:0},a=Y(1);const p=Y(0),f=q(o);if((f||!f&&!r)&&((nt(o)!=="body"||st(s))&&(c=dt(o)),q(o))){const u=Q(o);a=Z(o),p.x=u.x+o.clientLeft,p.y=u.y+o.clientTop}const d=s&&!f&&!r?qt(s,c,!0):Y(0);return{width:n.width*a.x,height:n.height*a.y,x:n.x*a.x-c.scrollLeft*a.x+p.x+d.x,y:n.y*a.y-c.scrollTop*a.y+p.y+d.y}}function $e(t){return Array.from(t.getClientRects())}function Fe(t){const e=I(t),n=dt(t),o=t.ownerDocument.body,i=C(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),r=C(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight);let s=-n.scrollLeft+Ot(t);const l=-n.scrollTop;return z(o).direction==="rtl"&&(s+=C(e.clientWidth,o.clientWidth)-i),{width:i,height:r,x:s,y:l}}function Be(t,e){const n=F(t),o=I(t),i=n.visualViewport;let r=o.clientWidth,s=o.clientHeight,l=0,c=0;if(i){r=i.width,s=i.height;const a=bt();(!a||a&&e==="fixed")&&(l=i.offsetLeft,c=i.offsetTop)}return{width:r,height:s,x:l,y:c}}const Ve=new Set(["absolute","fixed"]);function He(t,e){const n=Q(t,!0,e==="fixed"),o=n.top+t.clientTop,i=n.left+t.clientLeft,r=q(t)?Z(t):Y(1),s=t.clientWidth*r.x,l=t.clientHeight*r.y,c=i*r.x,a=o*r.y;return{width:s,height:l,x:c,y:a}}function $t(t,e,n){let o;if(e==="viewport")o=Be(t,n);else if(e==="document")o=Fe(I(t));else if(W(e))o=He(e,n);else{const i=Yt(t);o={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return tt(o)}function It(t,e){const n=G(t);return n===e||!W(n)||et(n)?!1:z(n).position==="fixed"||It(n,e)}function Me(t,e){const n=e.get(t);if(n)return n;let o=rt(t,[],!1).filter(l=>W(l)&&nt(l)!=="body"),i=null;const r=z(t).position==="fixed";let s=r?G(t):t;for(;W(s)&&!et(s);){const l=z(s),c=xt(s);!c&&l.position==="fixed"&&(i=null),(r?!c&&!i:!c&&l.position==="static"&&!!i&&Ve.has(i.position)||st(s)&&!c&&It(t,s))?o=o.filter(p=>p!==s):i=l,s=G(s)}return e.set(t,o),o}function Ne(t){let{element:e,boundary:n,rootBoundary:o,strategy:i}=t;const s=[...n==="clippingAncestors"?pt(e)?[]:Me(e,this._c):[].concat(n),o],l=s[0],c=s.reduce((a,p)=>{const f=$t(e,p,i);return a.top=C(f.top,a.top),a.right=N(f.right,a.right),a.bottom=N(f.bottom,a.bottom),a.left=C(f.left,a.left),a},$t(e,l,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function _e(t){const{width:e,height:n}=jt(t);return{width:e,height:n}}function We(t,e,n){const o=q(e),i=I(e),r=n==="fixed",s=Q(t,!0,r,e);let l={scrollLeft:0,scrollTop:0};const c=Y(0);function a(){c.x=Ot(i)}if(o||!o&&!r)if((nt(e)!=="body"||st(i))&&(l=dt(e)),o){const u=Q(e,!0,r,e);c.x=u.x+e.clientLeft,c.y=u.y+e.clientTop}else i&&a();r&&!o&&i&&a();const p=i&&!o&&!r?qt(i,l):Y(0),f=s.left+l.scrollLeft-c.x-p.x,d=s.top+l.scrollTop-c.y-p.y;return{x:f,y:d,width:s.width,height:s.height}}function mt(t){return z(t).position==="static"}function Ft(t,e){if(!q(t)||z(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return I(t)===n&&(n=n.ownerDocument.body),n}function Xt(t,e){const n=F(t);if(pt(t))return n;if(!q(t)){let i=G(t);for(;i&&!et(i);){if(W(i)&&!mt(i))return i;i=G(i)}return n}let o=Ft(t,e);for(;o&&Oe(o)&&mt(o);)o=Ft(o,e);return o&&et(o)&&mt(o)&&!xt(o)?n:o||Se(t)||n}const ze=async function(t){const e=this.getOffsetParent||Xt,n=this.getDimensions,o=await n(t.floating);return{reference:We(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function je(t){return z(t).direction==="rtl"}const Ye={convertOffsetParentRelativeRectToViewportRelativeRect:ke,getDocumentElement:I,getClippingRect:Ne,getOffsetParent:Xt,getElementRects:ze,getClientRects:$e,getDimensions:_e,getScale:Z,isElement:W,isRTL:je};function Ut(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function qe(t,e){let n=null,o;const i=I(t);function r(){var l;clearTimeout(o),(l=n)==null||l.disconnect(),n=null}function s(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),r();const a=t.getBoundingClientRect(),{left:p,top:f,width:d,height:u}=a;if(l||e(),!d||!u)return;const m=lt(f),h=lt(i.clientWidth-(p+d)),g=lt(i.clientHeight-(f+u)),w=lt(p),x={rootMargin:-m+"px "+-h+"px "+-g+"px "+-w+"px",threshold:C(0,N(1,c))||1};let R=!0;function b(P){const O=P[0].intersectionRatio;if(O!==c){if(!R)return s();O?s(!1,O):o=setTimeout(()=>{s(!1,1e-7)},1e3)}O===1&&!Ut(a,t.getBoundingClientRect())&&s(),R=!1}try{n=new IntersectionObserver(b,{...x,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,x)}n.observe(t)}return s(!0),r}function Ie(t,e,n,o){o===void 0&&(o={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,a=Rt(t),p=i||r?[...a?rt(a):[],...rt(e)]:[];p.forEach(w=>{i&&w.addEventListener("scroll",n,{passive:!0}),r&&w.addEventListener("resize",n)});const f=a&&l?qe(a,n):null;let d=-1,u=null;s&&(u=new ResizeObserver(w=>{let[y]=w;y&&y.target===a&&u&&(u.unobserve(e),cancelAnimationFrame(d),d=requestAnimationFrame(()=>{var x;(x=u)==null||x.observe(e)})),n()}),a&&!c&&u.observe(a),u.observe(e));let m,h=c?Q(t):null;c&&g();function g(){const w=Q(t);h&&!Ut(h,w)&&n(),h=w,m=requestAnimationFrame(g)}return n(),()=>{var w;p.forEach(y=>{i&&y.removeEventListener("scroll",n),r&&y.removeEventListener("resize",n)}),f?.(),(w=u)==null||w.disconnect(),u=null,c&&cancelAnimationFrame(m)}}const Xe=ye,Bt=pe,Ue=de,Ke=xe,Ge=he,Je=fe,Qe=ge,Ze=(t,e,n)=>{const o=new Map,i={platform:Ye,...n},r={...i.platform,_c:o};return ae(t,e,{...i,platform:r})};var tn=Object.defineProperty,U=(t,e,n,o)=>{for(var i=void 0,r=t.length-1,s;r>=0;r--)(s=t[r])&&(i=s(e,n,i)||i);return i&&tn(e,n,i),i};const ot={Flip:"flip",AutoPlacementHorizontal:"auto-placement-horizontal",AutoPlacementVertical:"auto-placement-vertical"},en={[ot.Flip]:Ue(),[ot.AutoPlacementHorizontal]:Bt({allowedPlacements:["bottom","top","bottom-start","bottom-end","top-start","top-end"]}),[ot.AutoPlacementVertical]:Bt({allowedPlacements:["left","right","left-start","left-end","right-start","right-end"]})};class j extends S.VividElement{constructor(){super(...arguments),this.open=!1,this.dismissible=!1,this.arrow=!1,this.alternate=!1,this.placementStrategy=ot.Flip,this.animationFrame=!1,this.strategy="fixed",this.offset=null,this.#i=()=>(this.#n=this.updatePosition(),this.#n)}get#r(){let e=[Qe(),en[this.placementStrategy],Ge(),Ke({apply({availableWidth:o,availableHeight:i,elements:r}){Object.assign(r.floating.style,{maxWidth:`${o}px`,maxHeight:`${i}px`})}})],n=this.offset??0;return this.arrow&&(n+=12,e=[...e,Je({element:this.arrowEl,padding:10})]),n>0&&e.unshift(Xe(n)),e}#o;openChanged(e,n){this.#e(),this.#t(),this.$emit(n?"vwc-popup:open":"vwc-popup:close")}animationFrameChanged(){this.#t()}anchorChanged(){this.#t()}strategyChanged(){this.#e()}connectedCallback(){super.connectedCallback(),this.#e(),this.#t()}disconnectedCallback(){super.disconnectedCallback(),this.#t()}#t(){this.#o?.(),this.open&&this.controlEl&&this.controlEl.classList.add("open"),this.anchorEl&&this.open&&this.popupEl&&(this.#o=Ie(this.anchorEl,this.popupEl,this.#i,{animationFrame:this.animationFrame}))}#e(){this.popupEl&&this.strategy==="fixed"&&(this.open?this.popupEl.showPopover():this.popupEl.hidePopover())}#n;#i;async updatePosition(){if(!this.open||!this.anchorEl)return;const e=await Ze(this.anchorEl,this.popupEl,{placement:this.placement,strategy:this.strategy,middleware:this.#r});this.#s(e),this.arrow&&this.#l(e)}#s(e){const{x:n,y:o}=e,{referenceHidden:i}=e.middlewareData.hide;Object.assign(this.popupEl.style,{left:`${n}px`,top:`${o}px`,visibility:i?"hidden":"visible"})}#l(e){const{x:n,y:o}=e.middlewareData.arrow,i={left:"calc(100% - 4px)",right:"-4px",top:"calc(100% - 4px)",bottom:"-4px"},r=e.placement.split("-")[0];Object.assign(this.arrowEl.style,{left:n?`${n}px`:i[r],top:o?`${o}px`:i[r]})}get anchorEl(){return this.anchor??null}show(){return this.open=!0,this.#n??Promise.resolve()}hide(){this.open=!1}}U([S.attr({mode:"boolean"})],j.prototype,"open");U([S.attr({mode:"boolean"})],j.prototype,"dismissible");U([S.attr({mode:"boolean"})],j.prototype,"arrow");U([S.attr({mode:"boolean"})],j.prototype,"alternate");U([S.attr({mode:"fromView"})],j.prototype,"placement");U([S.attr({mode:"boolean",attribute:"animation-frame"})],j.prototype,"animationFrame");U([S.attr({mode:"fromView"})],j.prototype,"strategy");U([S.attr({attribute:"offset",converter:S.nullableNumberConverter})],j.prototype,"offset");U([S.observable],j.prototype,"anchor");const nn=":host{display:var(--_popup-display, inline)}.control{border-radius:inherit;background:var(--vvd-color-surface-4dp);contain:layout}.control:not(.open){display:none}.popup-wrapper{white-space:initial;--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.popup-wrapper{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.popup-wrapper ::-webkit-scrollbar{width:4px}.popup-wrapper ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.popup-wrapper ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.popup-wrapper{z-index:var(--_popup-z-index, 10);overflow:visible;padding:0;border:none;border-radius:8px;margin:0;inline-size:max-content}.popup-wrapper:not(.absolute){position:fixed}.popup-wrapper.absolute{position:absolute;top:0;left:0}.popup-content{display:grid;color:var(--vvd-color-canvas-text)}.dismissible .popup-content{align-content:start;grid-template-columns:1fr auto}.arrow{position:absolute;z-index:-1;width:8px;height:8px;background:var(--vvd-color-surface-4dp);transform:rotate(45deg)}.dismissible-button{align-self:flex-start;margin-block-start:4px;margin-inline-end:4px}",on=({open:t,dismissible:e,alternate:n})=>Jt.classNames("control",["open",!!t],["dismissible",!!e],["alternate",!!n]);function rn(t){return t.strategy&&t.strategy==="fixed"?"manual":null}const sn=t=>{const e=t.tagFor(Ht.Elevation),n=t.tagFor(Vt.Button);return S.html`
2
+ <${e}>
3
+ <div popover="${rn}" class="popup-wrapper ${o=>o.strategy}" ${ht.ref("popupEl")} part="popup-base">
4
+ <div ${ht.ref("controlEl")} class="${on}" aria-hidden="${o=>o.open?"false":"true"}"
5
+ part="${o=>o.alternate?"vvd-theme-alternate":""}">
6
+ <div class="popup-content">
7
+ <slot></slot>
8
+ ${Pt.when(o=>o.dismissible,S.html`<${n} size="condensed" @click="${o=>o.open=!1}"
9
+ class="dismissible-button" icon="close-small-solid" shape="pill"></${n}>`)}
10
+ </div>
11
+ ${Pt.when(o=>o.arrow,S.html`<div class="arrow" ${ht.ref("arrowEl")}></div>`)}
12
+ </div>
13
+ </div>
14
+ </${e}>`},Kt=S.defineVividComponent("popup",j,sn,[Ht.elevationDefinition,Vt.buttonDefinition],{styles:nn}),ln=S.createRegisterFunction(Kt);exports.PlacementStrategy=ot;exports.Popup=j;exports.popupDefinition=Kt;exports.registerPopup=ln;