@vonage/vivid 5.3.0 → 5.5.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 (263) hide show
  1. package/accordion-item/definition.js +1 -1
  2. package/alert/definition.cjs +1 -1
  3. package/alert/definition.js +2 -2
  4. package/badge/definition.js +1 -1
  5. package/banner/definition.js +1 -1
  6. package/bundled/base-color-picker.cjs +18 -13
  7. package/bundled/base-color-picker.js +98 -81
  8. package/bundled/calendar-picker.template.cjs +7 -7
  9. package/bundled/calendar-picker.template.js +102 -102
  10. package/bundled/char-count.cjs +1 -1
  11. package/bundled/char-count.js +1 -1
  12. package/bundled/definition10.cjs +1 -1
  13. package/bundled/definition10.js +2 -2
  14. package/bundled/definition11.cjs +12 -19
  15. package/bundled/definition11.js +87 -66
  16. package/bundled/definition12.cjs +19 -10
  17. package/bundled/definition12.js +217 -36
  18. package/bundled/definition13.cjs +10 -1
  19. package/bundled/definition13.js +38 -14
  20. package/bundled/definition14.cjs +1 -5
  21. package/bundled/definition14.js +15 -24
  22. package/bundled/definition15.cjs +5 -30
  23. package/bundled/definition15.js +22 -73
  24. package/bundled/definition16.cjs +30 -19
  25. package/bundled/definition16.js +74 -97
  26. package/bundled/definition17.cjs +19 -13
  27. package/bundled/definition17.js +83 -117
  28. package/bundled/definition18.cjs +13 -12
  29. package/bundled/definition18.js +114 -71
  30. package/bundled/definition19.cjs +26 -27
  31. package/bundled/definition19.js +171 -180
  32. package/bundled/definition2.cjs +9 -9
  33. package/bundled/definition2.js +84 -129
  34. package/bundled/definition3.cjs +1 -1
  35. package/bundled/definition3.js +1 -1
  36. package/bundled/definition6.cjs +3 -3
  37. package/bundled/definition6.js +19 -19
  38. package/bundled/definition9.cjs +5 -5
  39. package/bundled/definition9.js +394 -392
  40. package/bundled/listbox.cjs +1 -1
  41. package/bundled/listbox.js +82 -102
  42. package/bundled/localized.cjs +1 -1
  43. package/bundled/localized.js +48 -31
  44. package/bundled/mixins.cjs +1 -1
  45. package/bundled/mixins.js +1 -1
  46. package/bundled/picker-field.template.cjs +14 -14
  47. package/bundled/picker-field.template.js +35 -56
  48. package/bundled/time-selection-picker.template.cjs +12 -12
  49. package/bundled/time-selection-picker.template.js +13 -12
  50. package/bundled/trapped-focus.cjs +1 -0
  51. package/bundled/trapped-focus.js +26 -0
  52. package/bundled/vivid-element.cjs +5 -1
  53. package/bundled/vivid-element.js +401 -358
  54. package/calendar/index.cjs +13 -13
  55. package/calendar/index.js +171 -143
  56. package/card/definition.cjs +1 -1
  57. package/card/definition.js +1 -1
  58. package/color-picker/definition.cjs +209 -113
  59. package/color-picker/definition.js +209 -113
  60. package/color-picker/index.cjs +104 -75
  61. package/color-picker/index.js +412 -326
  62. package/combobox/definition.cjs +7 -27
  63. package/combobox/definition.js +8 -28
  64. package/combobox/index.cjs +6 -6
  65. package/combobox/index.js +57 -71
  66. package/contextual-help/index.cjs +1 -1
  67. package/contextual-help/index.js +1 -1
  68. package/custom-elements.json +354 -2
  69. package/data-grid/index.cjs +1 -1
  70. package/data-grid/index.js +1 -1
  71. package/date-picker/definition.cjs +1 -1
  72. package/date-picker/definition.js +1 -1
  73. package/date-picker/index.cjs +1 -1
  74. package/date-picker/index.js +2 -2
  75. package/date-range-picker/definition.cjs +1 -1
  76. package/date-range-picker/definition.js +1 -1
  77. package/date-range-picker/index.cjs +1 -1
  78. package/date-range-picker/index.js +2 -2
  79. package/date-time-picker/definition.cjs +1 -1
  80. package/date-time-picker/definition.js +1 -1
  81. package/date-time-picker/index.cjs +1 -1
  82. package/date-time-picker/index.js +2 -2
  83. package/dial-pad/definition.cjs +139 -0
  84. package/dial-pad/definition.js +139 -0
  85. package/dial-pad/index.cjs +27 -20
  86. package/dial-pad/index.js +177 -100
  87. package/dialog/definition.cjs +2 -2
  88. package/dialog/definition.js +2 -2
  89. package/dialog/index.cjs +7 -7
  90. package/dialog/index.js +6 -6
  91. package/divider/index.cjs +1 -1
  92. package/divider/index.js +1 -1
  93. package/elevation/definition.cjs +1 -1
  94. package/elevation/definition.js +1 -1
  95. package/fab/definition.js +1 -1
  96. package/header/definition.cjs +1 -1
  97. package/header/definition.js +1 -1
  98. package/icon/definition.cjs +56 -22
  99. package/icon/definition.js +56 -22
  100. package/index.cjs +3 -4
  101. package/index.js +2 -3
  102. package/lib/accordion/accordion.d.ts +1 -1
  103. package/lib/accordion/definition.d.ts +1 -1
  104. package/lib/audio-player/audio-player.d.ts +1 -1
  105. package/lib/color-picker/color-picker.d.ts +390 -12
  106. package/lib/color-picker/locale.d.ts +4 -0
  107. package/lib/combobox/combobox.d.ts +1 -0
  108. package/lib/combobox/combobox.options.d.ts +1 -1
  109. package/lib/date-picker/date-picker.d.ts +38 -38
  110. package/lib/date-range-picker/date-range-picker.d.ts +20 -20
  111. package/lib/date-time-picker/date-time-picker.d.ts +40 -40
  112. package/lib/dial-pad/dial-pad.d.ts +1 -0
  113. package/lib/divider/divider.d.ts +1 -1
  114. package/lib/icon/icon.d.ts +1 -0
  115. package/lib/menu-item/menu-item-role.d.ts +1 -1
  116. package/lib/popup/popup.d.ts +1 -1
  117. package/lib/searchable-select/locale.d.ts +4 -0
  118. package/lib/searchable-select/searchable-select.d.ts +3 -0
  119. package/lib/select/select.d.ts +3 -1
  120. package/lib/simple-color-picker/simple-color-picker.d.ts +2 -1
  121. package/lib/slider/slider.d.ts +1 -1
  122. package/lib/tabs/tabs.d.ts +2 -2
  123. package/lib/text-area/text-area.d.ts +1 -1
  124. package/lib/text-field/text-field.d.ts +1 -1
  125. package/lib/time-picker/time-picker.d.ts +20 -20
  126. package/locales/de-DE.cjs +20 -3
  127. package/locales/de-DE.js +20 -3
  128. package/locales/en-GB.cjs +21 -4
  129. package/locales/en-GB.js +21 -4
  130. package/locales/en-US.cjs +21 -4
  131. package/locales/en-US.js +21 -4
  132. package/locales/ja-JP.cjs +20 -3
  133. package/locales/ja-JP.js +20 -3
  134. package/locales/zh-CN.cjs +19 -2
  135. package/locales/zh-CN.js +19 -2
  136. package/menu/definition.cjs +4 -4
  137. package/menu/definition.js +4 -4
  138. package/nav-disclosure/definition.js +1 -1
  139. package/nav-item/definition.js +1 -1
  140. package/note/definition.js +1 -1
  141. package/number-field/definition.js +1 -1
  142. package/number-field/index.cjs +1 -1
  143. package/number-field/index.js +3 -3
  144. package/option/definition.cjs +6 -77
  145. package/option/definition.js +3 -78
  146. package/option/index.cjs +1 -1
  147. package/option/index.js +1 -1
  148. package/package.json +31 -5
  149. package/popup/definition.cjs +2 -2
  150. package/popup/definition.js +2 -2
  151. package/progress-ring/index.cjs +1 -1
  152. package/progress-ring/index.js +1 -1
  153. package/radio/index.cjs +1 -1
  154. package/radio/index.js +1 -1
  155. package/radio-group/index.cjs +1 -1
  156. package/radio-group/index.js +1 -1
  157. package/range-slider/definition.cjs +1 -1
  158. package/range-slider/definition.js +1 -1
  159. package/rich-text-editor/definition.cjs +2 -3
  160. package/rich-text-editor/definition.js +1 -2
  161. package/rich-text-editor/index.cjs +27 -27
  162. package/rich-text-editor/index.js +1209 -1199
  163. package/searchable-select/definition.cjs +103 -11
  164. package/searchable-select/definition.js +103 -11
  165. package/searchable-select/index.cjs +81 -69
  166. package/searchable-select/index.js +359 -273
  167. package/select/definition.cjs +30 -44
  168. package/select/definition.js +30 -44
  169. package/selectable-box/definition.cjs +1 -1
  170. package/selectable-box/definition.js +1 -1
  171. package/selectable-box/index.cjs +1 -1
  172. package/selectable-box/index.js +2 -2
  173. package/shared/aria/aria-mixin.d.ts +1 -1
  174. package/shared/color-picker/base-color-picker.d.ts +2 -1
  175. package/shared/foundation/listbox/listbox.d.ts +4 -0
  176. package/shared/picker-field/mixins/calendar-picker.d.ts +10 -10
  177. package/shared/picker-field/mixins/calendar-picker.template.d.ts +10 -10
  178. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +20 -20
  179. package/shared/picker-field/mixins/single-date-picker.d.ts +28 -28
  180. package/shared/picker-field/mixins/single-value-picker.d.ts +8 -8
  181. package/shared/picker-field/mixins/time-selection-picker.d.ts +20 -20
  182. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +20 -20
  183. package/simple-color-picker/definition.cjs +9 -7
  184. package/simple-color-picker/definition.js +9 -7
  185. package/simple-color-picker/index.cjs +6 -6
  186. package/simple-color-picker/index.js +41 -39
  187. package/slider/definition.cjs +1 -1
  188. package/slider/definition.js +1 -1
  189. package/split-button/definition.js +1 -1
  190. package/styles/core/all.css +1 -1
  191. package/styles/core/theme.css +1 -1
  192. package/styles/core/typography.css +1 -1
  193. package/styles/tokens/theme-dark.css +4 -4
  194. package/styles/tokens/theme-light.css +4 -4
  195. package/styles/tokens/vivid-2-compat.css +1 -1
  196. package/tab/definition.js +1 -1
  197. package/tag/definition.cjs +34 -14
  198. package/tag/definition.js +35 -15
  199. package/tag/index.cjs +25 -12
  200. package/tag/index.js +64 -47
  201. package/tag-group/definition.cjs +1 -2
  202. package/tag-group/definition.js +1 -2
  203. package/tag-group/index.cjs +1 -1
  204. package/tag-group/index.js +11 -12
  205. package/text-area/index.cjs +1 -1
  206. package/text-area/index.js +2 -2
  207. package/text-field/definition.js +1 -1
  208. package/time-picker/definition.cjs +1 -1
  209. package/time-picker/definition.js +1 -1
  210. package/time-picker/index.cjs +1 -1
  211. package/time-picker/index.js +1 -1
  212. package/toggletip/definition.cjs +1 -1
  213. package/toggletip/definition.js +1 -1
  214. package/toggletip/index.cjs +1 -1
  215. package/toggletip/index.js +1 -1
  216. package/tooltip/definition.cjs +3 -3
  217. package/tooltip/definition.js +3 -3
  218. package/tooltip/index.cjs +1 -1
  219. package/tooltip/index.js +1 -1
  220. package/tree-item/definition.cjs +1 -1
  221. package/tree-item/definition.js +1 -1
  222. package/tree-view/definition.cjs +1 -1
  223. package/tree-view/definition.js +1 -1
  224. package/unbundled/affix.js +1 -1
  225. package/unbundled/base-color-picker.cjs +36 -18
  226. package/unbundled/base-color-picker.js +36 -18
  227. package/unbundled/calendar-picker.template.cjs +2 -2
  228. package/unbundled/calendar-picker.template.js +2 -2
  229. package/unbundled/definition.js +1 -1
  230. package/unbundled/definition2.js +1 -1
  231. package/unbundled/definition3.cjs +222 -141
  232. package/unbundled/definition3.js +220 -139
  233. package/unbundled/definition4.cjs +145 -235
  234. package/unbundled/definition4.js +143 -233
  235. package/unbundled/definition5.cjs +269 -27
  236. package/unbundled/definition5.js +267 -26
  237. package/unbundled/definition6.cjs +56 -0
  238. package/unbundled/definition6.js +52 -0
  239. package/unbundled/listbox.cjs +41 -63
  240. package/unbundled/listbox.js +39 -61
  241. package/unbundled/picker-field.template.cjs +3 -36
  242. package/unbundled/picker-field.template.js +3 -35
  243. package/unbundled/slider.template.cjs +1 -1
  244. package/unbundled/slider.template.js +1 -1
  245. package/unbundled/time-selection-picker.template.cjs +2 -1
  246. package/unbundled/time-selection-picker.template.js +2 -1
  247. package/unbundled/trapped-focus.cjs +37 -0
  248. package/unbundled/trapped-focus.js +34 -0
  249. package/unbundled/vivid-element.cjs +1 -1
  250. package/unbundled/vivid-element.js +1 -1
  251. package/video-player/definition.cjs +56 -16
  252. package/video-player/definition.js +56 -16
  253. package/video-player/index.cjs +36 -36
  254. package/video-player/index.js +2461 -2445
  255. package/visually-hidden/index.cjs +1 -1
  256. package/visually-hidden/index.js +1 -1
  257. package/vivid.api.json +285 -38
  258. package/bundled/_has.cjs +0 -1
  259. package/bundled/_has.js +0 -34
  260. package/bundled/option.cjs +0 -1
  261. package/bundled/option.js +0 -158
  262. package/unbundled/option.cjs +0 -217
  263. package/unbundled/option.js +0 -214
@@ -1,7 +1,7 @@
1
1
  import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
2
2
  import { iconDefinition } from '../icon/definition.js';
3
3
  import { attr, nullableNumberConverter, observable, html, ref, slotted, when } from '@microsoft/fast-element';
4
- import { A as AffixIconWithTrailing, a as affixIconTemplateFactory, I as IconWrapper } from '../unbundled/affix.js';
4
+ import { b as AffixIconWithTrailing, a as affixIconTemplateFactory, I as IconWrapper } from '../unbundled/affix.js';
5
5
  import { classNames } from '@microsoft/fast-web-utilities';
6
6
 
7
7
  const styles = ":host{--_vvd-accordion-item-accent-firm-wrapper: var( --vvd-accordion-item-accent-firm )}.heading-button{--vvd-accordion-item-accent-firm: var( --_vvd-accordion-item-accent-firm-wrapper, var(--vvd-accordion-item-accent-primary) )}:host{display:flex;box-sizing:border-box;flex-direction:column}.heading-container{margin:0}.heading-button,.heading-button.appearance-ghost-light{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.heading-button.appearance-filled{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: transparent}@media (hover: hover){.heading-button:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.heading-button:hover:where(:not(.disabled,:disabled,.readonly)).appearance-ghost-light{--_appearance-color-text: var(--_connotation-color-fierce-primary);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 90%);--_appearance-color-outline: transparent}.heading-button:hover:where(:not(.disabled,:disabled,.readonly)).appearance-filled{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: transparent}}.heading-button.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.heading-button.hover:where(:not(.disabled,:disabled,.readonly)).appearance-ghost-light{--_appearance-color-text: var(--_connotation-color-fierce-primary);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 90%);--_appearance-color-outline: transparent}.heading-button.hover:where(:not(.disabled,:disabled,.readonly)).appearance-filled{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary-increment);--_appearance-color-outline: transparent}.heading-button:active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.heading-button:active:where(:not(.disabled,:disabled)).appearance-ghost-light{--_appearance-color-text: var(--_connotation-color-fierce-primary);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 80%);--_appearance-color-outline: transparent}.heading-button:active:where(:not(.disabled,:disabled)).appearance-filled{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-fierce);--_appearance-color-outline: transparent}.heading-button.active:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.heading-button.active:where(:not(.disabled,:disabled)).appearance-ghost-light{--_appearance-color-text: var(--_connotation-color-fierce-primary);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 80%);--_appearance-color-outline: transparent}.heading-button.active:where(:not(.disabled,:disabled)).appearance-filled{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-fierce);--_appearance-color-outline: transparent}.heading-button{--_connotation-color-primary: var(--vvd-accordion-item-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-accordion-item-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-accordion-item-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-fierce: var(--vvd-accordion-item-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-faint: var(--vvd-accordion-item-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-accordion-item-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-firm: var(--vvd-accordion-item-accent-firm, var(--vvd-color-canvas-text))}.heading-button{--focus-stroke-gap-color: transparent;display:flex;width:100%;align-items:center;padding:16px;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer;text-align:left}.heading-button:focus-visible{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))}.heading-button.size-condensed{font:var(--vvd-typography-base-extended-bold);gap:12px}.heading-button:not(.size-condensed){font:var(--vvd-typography-heading-4);gap:16px}.heading-content{flex:auto}.meta{overflow:hidden;max-width:var(--accordion-item-meta-inline-size, 20%);flex-shrink:0;color:var(--vvd-color-neutral-600);text-align:end;text-overflow:ellipsis;white-space:nowrap}.heading-button:not(.size-condensed) .meta{font:var(--vvd-typography-base-bold)}.heading-button.size-condensed .meta{font:var(--vvd-typography-base-condensed-bold)}.region{display:none;padding:8px 32px 24px 16px}.region:not(.size-condensed).padded{padding-inline-start:52px}:host([expanded]) .region{display:block}.region.size-condensed.padded{padding-inline-start:44px}slot[name=icon]{color:var(--vvd-color-neutral-600)}.heading-button:not(.size-condensed) slot[name=icon]{font:inherit}.heading-button.size-condensed slot[name=icon]{font:var(--vvd-typography-base-extended)}:host(:not([icon-trailing])) slot[name=icon]:last-of-type{color:var(--_appearance-color-text)}";
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const button_definition = require('../unbundled/definition.cjs');
6
- const elevation_definition = require('../unbundled/definition5.cjs');
6
+ const elevation_definition = require('../unbundled/definition6.cjs');
7
7
  const vividElement = require('../unbundled/vivid-element.cjs');
8
8
  const icon_definition = require('../icon/definition.cjs');
9
9
  const fastElement = require('@microsoft/fast-element');
@@ -1,10 +1,10 @@
1
1
  import { B as Button, b as buttonDefinition } from '../unbundled/definition.js';
2
- import { E as Elevation, e as elevationDefinition } from '../unbundled/definition5.js';
2
+ import { E as Elevation, e as elevationDefinition } from '../unbundled/definition6.js';
3
3
  import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
4
4
  import { iconDefinition } from '../icon/definition.js';
5
5
  import { attr, nullableNumberConverter, when, html } from '@microsoft/fast-element';
6
6
  import { C as Connotation } from '../unbundled/enums.js';
7
- import { b as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper, c as IconAriaHidden } from '../unbundled/affix.js';
7
+ import { A as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper, c as IconAriaHidden } from '../unbundled/affix.js';
8
8
  import { h as handleEscapeKeyAndStopPropogation } from '../unbundled/index.js';
9
9
  import { L as Localized } from '../unbundled/localized.js';
10
10
  import { classNames } from '@microsoft/fast-web-utilities';
@@ -1,7 +1,7 @@
1
1
  import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
2
2
  import { iconDefinition } from '../icon/definition.js';
3
3
  import { attr, when, html } from '@microsoft/fast-element';
4
- import { A as AffixIconWithTrailing, a as affixIconTemplateFactory, I as IconWrapper } from '../unbundled/affix.js';
4
+ import { b as AffixIconWithTrailing, a as affixIconTemplateFactory, I as IconWrapper } from '../unbundled/affix.js';
5
5
  import { classNames } from '@microsoft/fast-web-utilities';
6
6
 
7
7
  var __defProp = Object.defineProperty;
@@ -4,7 +4,7 @@ import { V as VividElement, d as defineVividComponent, c as createRegisterFuncti
4
4
  import { attr, observable, slotted, when, html } from '@microsoft/fast-element';
5
5
  import { C as Connotation } from '../unbundled/enums.js';
6
6
  import { D as DelegatesAria, d as delegateAria } from '../unbundled/delegates-aria.js';
7
- import { b as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper, c as IconAriaHidden } from '../unbundled/affix.js';
7
+ import { A as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper, c as IconAriaHidden } from '../unbundled/affix.js';
8
8
  import { L as Localized } from '../unbundled/localized.js';
9
9
  import { classNames } from '@microsoft/fast-web-utilities';
10
10
 
@@ -1,13 +1,18 @@
1
- "use strict";const m=require("./form-associated.cjs"),u=require("./vivid-element.cjs"),v=require("./when.cjs"),g=require("./localized.cjs"),y=require("./form-element.cjs"),S=require("./class-names.cjs");function C(o){if(!o)return null;const s=o.trim().replace(/^#/,"");return/^[0-9a-fA-F]{3}$/.test(s)?s.split("").map(a=>a+a).join("").toLowerCase():/^[0-9a-fA-F]{6}$/.test(s)?s.toLowerCase():null}function b(o){return C(o)!==null}function p(o){const s=C(o);if(!s)return 0;const a=parseInt(s.slice(0,2),16)/255,r=parseInt(s.slice(2,4),16)/255,e=parseInt(s.slice(4,6),16)/255,t=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),l=r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4),n=e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4);return .2126*t+.7152*l+.0722*n}function I(o,s){const a=p(o),r=p(s),e=Math.max(a,r),t=Math.min(a,r);return(e+.05)/(t+.05)}function B(o,s){return s||(s=document.querySelector(".vvd-root")||document.documentElement),getComputedStyle(s).getPropertyValue(o).trim()}var A=Object.defineProperty,_=(o,s,a,r)=>{for(var e=void 0,t=o.length-1,l;t>=0;t--)(l=o[t])&&(e=l(s,a,e)||e);return e&&A(s,a,e),e};const E=o=>{class s extends g.Localized(y.FormElement(m.FormAssociated(o))){constructor(){super(...arguments),this.proxy=document.createElement("input"),this.open=!1,this.swatches=[],this._canvasColor=""}connectedCallback(){super.connectedCallback(),this._refreshCanvasColor()}_refreshCanvasColor(){this._canvasColor=B("--vvd-color-canvas",this)}_applyContrastClass(r,e=3){return!r||!this._canvasColor?!1:I(r,this._canvasColor)<e}_getRowLength(){return 7}_handleSwatchSelection(r){this.value===r?this.value="":this.value=r,this.$emit("change"),this.open=!1}_handleColorSaving(){}_getFocusReturnEl(){return null}_returnFocusToAnchor(){const r=this._getFocusReturnEl();r&&u.Updates.enqueue(()=>r.focus())}_getGridCells(){const r=this.shadowRoot?.querySelector('[role="grid"]');return r?Array.from(r.querySelectorAll('[role="gridcell"], [data-vvd-role="gridcell"]')):[]}_handleCellKeydown(r,e,t,l){const n=this._getRowLength(),c=this._getGridCells().length,h=Math.floor(t/n),f=t%n,d=Math.ceil(c/n);switch(r.key){case"ArrowRight":return f<n-1&&t+1<c&&this._focusSwatchByIndex(t+1),!1;case"ArrowLeft":return f>0&&this._focusSwatchByIndex(t-1),!1;case"ArrowDown":return h<d-1&&t+n<c&&this._focusSwatchByIndex(t+n),!1;case"ArrowUp":return h>0&&this._focusSwatchByIndex(t-n),!1;case"PageDown":{const i=(d-1)*n,w=Math.min(i+f,c-1);return t!==w&&this._focusSwatchByIndex(w),!1}case"PageUp":{const i=Math.min(f,c-1);return t!==i&&this._focusSwatchByIndex(i),!1}case"Home":return r.ctrlKey?this._focusSwatchByIndex(0):this._focusSwatchByIndex(h*n),!1;case"End":if(r.ctrlKey)this._focusSwatchByIndex(c-1);else{const i=Math.min((h+1)*n-1,c-1);this._focusSwatchByIndex(i)}return!1;case"Enter":case" ":return l&&this._handleColorSaving(),e&&!l&&(this._handleSwatchSelection(e),this._returnFocusToAnchor()),!1;case"Escape":return this.open=!1,this._returnFocusToAnchor(),!1;case"Tab":return this.open=!1,!0;default:return!0}}_focusSwatchByIndex(r){const e=this._getGridCells();r<0||r>=e.length||e[r]?.focus()}_renderColorSwatch(r){return u.html`
2
- <button
3
- class="swatch ${(e,t)=>S.classNames(t.parent.value===e.value?"selected":"",t.parent._applyContrastClass(e.value)?"contrast":"")}"
4
- role="gridcell"
5
- style="--swatch-color: ${e=>e.value};"
6
- tabindex="${(e,t)=>t.index===0?"0":"-1"}"
7
- aria-label="${(e,t)=>t.parent.locale.baseColorPicker.colorSwatchLabel(e.value,e.label,t.parent.value===e.value)}"
8
- @click="${(e,t)=>t.parent._handleSwatchSelection(e.value)}"
9
- @keydown="${(e,t)=>t.parent._handleCellKeydown(t.event,e.value,t.index)}"
10
- >
11
- ${v.when((e,t)=>t.parent.value===e.value,u.html`<${r} size="-6" name="check-solid" aria-hidden="true"></${r}>`)}
12
- </button>
13
- `}}return _([u.attr({mode:"boolean"})],s.prototype,"open"),_([u.observable],s.prototype,"swatches"),s};exports.BaseColorPicker=E;exports.isValidHexColor=b;
1
+ "use strict";const m=require("./form-associated.cjs"),u=require("./vivid-element.cjs"),g=require("./when.cjs"),y=require("./localized.cjs"),S=require("./form-element.cjs"),b=require("./class-names.cjs");function C(a){if(!a)return null;const s=a.trim().replace(/^#/,"");return/^[0-9a-fA-F]{3}$/.test(s)?s.split("").map(n=>n+n).join("").toLowerCase():/^[0-9a-fA-F]{6}$/.test(s)?s.toLowerCase():null}function I(a){return C(a)!==null}function w(a){const s=C(a);if(!s)return 0;const n=parseInt(s.slice(0,2),16)/255,t=parseInt(s.slice(2,4),16)/255,o=parseInt(s.slice(4,6),16)/255,e=n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4),r=t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4),l=o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4);return .2126*e+.7152*r+.0722*l}function B(a,s){const n=w(a),t=w(s),o=Math.max(n,t),e=Math.min(n,t);return(o+.05)/(e+.05)}function _(a,s){return s||(s=document.querySelector(".vvd-root")||document.documentElement),getComputedStyle(s).getPropertyValue(a).trim()}var $=Object.defineProperty,d=(a,s,n,t)=>{for(var o=void 0,e=a.length-1,r;e>=0;e--)(r=a[e])&&(o=r(s,n,o)||o);return o&&$(s,n,o),o};const A=a=>{class s extends y.Localized(S.FormElement(m.FormAssociated(a))){constructor(){super(...arguments),this.proxy=document.createElement("input"),this.open=!1,this.swatches=[],this._canvasColor=""}connectedCallback(){super.connectedCallback(),requestAnimationFrame(()=>{this._refreshCanvasColor()})}get _computedCanvasColor(){return this._canvasColor||(this._canvasColor=_("--vvd-color-canvas",this)),this._canvasColor}_refreshCanvasColor(){this._canvasColor=_("--vvd-color-canvas",this)}_applyContrastClass(t,o=3){if(!t)return!1;const e=this._computedCanvasColor;return e?B(t,e)<o:!1}_getRowLength(){return 7}_handleSwatchSelection(t){this.value===t?this.value="":this.value=t,this.$emit("change"),this.open=!1}_handleColorSaving(){}_getFocusReturnEl(){return null}_returnFocusToAnchor(){const t=this._getFocusReturnEl();t&&u.Updates.enqueue(()=>t.focus())}_getGridCells(){const t=this.shadowRoot?.querySelector('[role="grid"]');return t?Array.from(t.querySelectorAll('[role="gridcell"], [data-vvd-role="gridcell"]')):[]}_handleCellKeydown(t,o,e,r){const l=this._getRowLength(),c=this._getGridCells().length,h=Math.floor(e/l),f=e%l,p=Math.ceil(c/l);switch(t.key){case"ArrowRight":return f<l-1&&e+1<c&&this._focusSwatchByIndex(e+1),!1;case"ArrowLeft":return f>0&&this._focusSwatchByIndex(e-1),!1;case"ArrowDown":return h<p-1&&e+l<c&&this._focusSwatchByIndex(e+l),!1;case"ArrowUp":return h>0&&this._focusSwatchByIndex(e-l),!1;case"PageDown":{const i=(p-1)*l,v=Math.min(i+f,c-1);return e!==v&&this._focusSwatchByIndex(v),!1}case"PageUp":{const i=Math.min(f,c-1);return e!==i&&this._focusSwatchByIndex(i),!1}case"Home":return t.ctrlKey?this._focusSwatchByIndex(0):this._focusSwatchByIndex(h*l),!1;case"End":if(t.ctrlKey)this._focusSwatchByIndex(c-1);else{const i=Math.min((h+1)*l-1,c-1);this._focusSwatchByIndex(i)}return!1;case"Enter":case" ":return r&&this._handleColorSaving(),o&&!r&&(this._handleSwatchSelection(o),this._returnFocusToAnchor()),!1;case"Escape":return this.open=!1,this._returnFocusToAnchor(),!1;case"Tab":return this.open=!1,!0;default:return!0}}_focusSwatchByIndex(t){const o=this._getGridCells();t<0||t>=o.length||o[t]?.focus()}_renderColorSwatch(t,o){return u.html`
2
+ <${o} placement="top"
3
+ text="${e=>e.label??e.value}"
4
+ exportparts="vvd-theme-alternate">
5
+ <button
6
+ slot="anchor"
7
+ class="swatch ${(e,r)=>b.classNames(r.parent.value===e.value?"selected":"",r.parent._applyContrastClass(e.value)?"contrast":"")}"
8
+ role="gridcell"
9
+ style="--swatch-color: ${e=>e.value};"
10
+ tabindex="${(e,r)=>r.index===0?"0":"-1"}"
11
+ aria-label="${(e,r)=>r.parent.locale.baseColorPicker.colorSwatchLabel(e.value,e.label,r.parent.value===e.value)}"
12
+ @click="${(e,r)=>r.parent._handleSwatchSelection(e.value)}"
13
+ @keydown="${(e,r)=>r.parent._handleCellKeydown(r.event,e.value,r.index)}"
14
+ >
15
+ ${g.when((e,r)=>r.parent.value===e.value,u.html`<${t} size="-6" name="check-solid" aria-hidden="true"></${t}>`)}
16
+ </button>
17
+ </${o}>
18
+ `}}return d([u.attr({mode:"boolean"})],s.prototype,"open"),d([u.observable],s.prototype,"swatches"),d([u.observable],s.prototype,"_canvasColor"),s};exports.BaseColorPicker=A;exports.isValidHexColor=I;
@@ -1,56 +1,66 @@
1
- import { F as C } from "./form-associated.js";
2
- import { U as g, h as p, a as v, o as y } from "./vivid-element.js";
3
- import { w as S } from "./when.js";
4
- import { L as b } from "./localized.js";
5
- import { F as I } from "./form-element.js";
6
- import { c as B } from "./class-names.js";
7
- function _(o) {
8
- if (!o) return null;
9
- const s = o.trim().replace(/^#/, "");
10
- return /^[0-9a-fA-F]{3}$/.test(s) ? s.split("").map((a) => a + a).join("").toLowerCase() : /^[0-9a-fA-F]{6}$/.test(s) ? s.toLowerCase() : null;
1
+ import { F as g } from "./form-associated.js";
2
+ import { U as y, h as m, a as S, o as w } from "./vivid-element.js";
3
+ import { w as b } from "./when.js";
4
+ import { L as I } from "./localized.js";
5
+ import { F as B } from "./form-element.js";
6
+ import { c as $ } from "./class-names.js";
7
+ function C(a) {
8
+ if (!a) return null;
9
+ const s = a.trim().replace(/^#/, "");
10
+ return /^[0-9a-fA-F]{3}$/.test(s) ? s.split("").map((n) => n + n).join("").toLowerCase() : /^[0-9a-fA-F]{6}$/.test(s) ? s.toLowerCase() : null;
11
11
  }
12
- function P(o) {
13
- return _(o) !== null;
12
+ function P(a) {
13
+ return C(a) !== null;
14
14
  }
15
- function w(o) {
16
- const s = _(o);
15
+ function _(a) {
16
+ const s = C(a);
17
17
  if (!s) return 0;
18
- const a = parseInt(s.slice(0, 2), 16) / 255, r = parseInt(s.slice(2, 4), 16) / 255, e = parseInt(s.slice(4, 6), 16) / 255, t = a <= 0.03928 ? a / 12.92 : Math.pow((a + 0.055) / 1.055, 2.4), l = r <= 0.03928 ? r / 12.92 : Math.pow((r + 0.055) / 1.055, 2.4), n = e <= 0.03928 ? e / 12.92 : Math.pow((e + 0.055) / 1.055, 2.4);
19
- return 0.2126 * t + 0.7152 * l + 0.0722 * n;
18
+ const n = parseInt(s.slice(0, 2), 16) / 255, t = parseInt(s.slice(2, 4), 16) / 255, o = parseInt(s.slice(4, 6), 16) / 255, e = n <= 0.03928 ? n / 12.92 : Math.pow((n + 0.055) / 1.055, 2.4), r = t <= 0.03928 ? t / 12.92 : Math.pow((t + 0.055) / 1.055, 2.4), l = o <= 0.03928 ? o / 12.92 : Math.pow((o + 0.055) / 1.055, 2.4);
19
+ return 0.2126 * e + 0.7152 * r + 0.0722 * l;
20
20
  }
21
- function A(o, s) {
22
- const a = w(o), r = w(s), e = Math.max(a, r), t = Math.min(a, r);
23
- return (e + 0.05) / (t + 0.05);
21
+ function A(a, s) {
22
+ const n = _(a), t = _(s), o = Math.max(n, t), e = Math.min(n, t);
23
+ return (o + 0.05) / (e + 0.05);
24
24
  }
25
- function $(o, s) {
26
- return s || (s = document.querySelector(".vvd-root") || document.documentElement), getComputedStyle(s).getPropertyValue(o).trim();
25
+ function v(a, s) {
26
+ return s || (s = document.querySelector(".vvd-root") || document.documentElement), getComputedStyle(s).getPropertyValue(a).trim();
27
27
  }
28
- var x = Object.defineProperty, m = (o, s, a, r) => {
29
- for (var e = void 0, t = o.length - 1, l; t >= 0; t--)
30
- (l = o[t]) && (e = l(s, a, e) || e);
31
- return e && x(s, a, e), e;
28
+ var x = Object.defineProperty, f = (a, s, n, t) => {
29
+ for (var o = void 0, e = a.length - 1, r; e >= 0; e--)
30
+ (r = a[e]) && (o = r(s, n, o) || o);
31
+ return o && x(s, n, o), o;
32
32
  };
33
- const q = (o) => {
34
- class s extends b(
35
- I(C(o))
33
+ const q = (a) => {
34
+ class s extends I(
35
+ B(g(a))
36
36
  ) {
37
37
  constructor() {
38
38
  super(...arguments), this.proxy = document.createElement("input"), this.open = !1, this.swatches = [], this._canvasColor = "";
39
39
  }
40
40
  connectedCallback() {
41
- super.connectedCallback(), this._refreshCanvasColor();
41
+ super.connectedCallback(), requestAnimationFrame(() => {
42
+ this._refreshCanvasColor();
43
+ });
44
+ }
45
+ /**
46
+ * @internal
47
+ */
48
+ get _computedCanvasColor() {
49
+ return this._canvasColor || (this._canvasColor = v("--vvd-color-canvas", this)), this._canvasColor;
42
50
  }
43
51
  /**
44
52
  * @internal
45
53
  */
46
54
  _refreshCanvasColor() {
47
- this._canvasColor = $("--vvd-color-canvas", this);
55
+ this._canvasColor = v("--vvd-color-canvas", this);
48
56
  }
49
57
  /**
50
58
  * @internal
51
59
  */
52
- _applyContrastClass(r, e = 3) {
53
- return !r || !this._canvasColor ? !1 : A(r, this._canvasColor) < e;
60
+ _applyContrastClass(t, o = 3) {
61
+ if (!t) return !1;
62
+ const e = this._computedCanvasColor;
63
+ return e ? A(t, e) < o : !1;
54
64
  }
55
65
  /**
56
66
  * @internal
@@ -61,8 +71,8 @@ const q = (o) => {
61
71
  /**
62
72
  * @internal
63
73
  */
64
- _handleSwatchSelection(r) {
65
- this.value === r ? this.value = "" : this.value = r, this.$emit("change"), this.open = !1;
74
+ _handleSwatchSelection(t) {
75
+ this.value === t ? this.value = "" : this.value = t, this.$emit("change"), this.open = !1;
66
76
  }
67
77
  /**
68
78
  * @internal
@@ -79,16 +89,16 @@ const q = (o) => {
79
89
  * @internal
80
90
  */
81
91
  _returnFocusToAnchor() {
82
- const r = this._getFocusReturnEl();
83
- r && g.enqueue(() => r.focus());
92
+ const t = this._getFocusReturnEl();
93
+ t && y.enqueue(() => t.focus());
84
94
  }
85
95
  /**
86
96
  * @internal
87
97
  */
88
98
  _getGridCells() {
89
- const r = this.shadowRoot?.querySelector('[role="grid"]');
90
- return r ? Array.from(
91
- r.querySelectorAll(
99
+ const t = this.shadowRoot?.querySelector('[role="grid"]');
100
+ return t ? Array.from(
101
+ t.querySelectorAll(
92
102
  '[role="gridcell"], [data-vvd-role="gridcell"]'
93
103
  )
94
104
  ) : [];
@@ -96,36 +106,36 @@ const q = (o) => {
96
106
  /**
97
107
  * @internal
98
108
  */
99
- _handleCellKeydown(r, e, t, l) {
100
- const n = this._getRowLength(), c = this._getGridCells().length, u = Math.floor(t / n), h = t % n, f = Math.ceil(c / n);
101
- switch (r.key) {
109
+ _handleCellKeydown(t, o, e, r) {
110
+ const l = this._getRowLength(), c = this._getGridCells().length, u = Math.floor(e / l), h = e % l, d = Math.ceil(c / l);
111
+ switch (t.key) {
102
112
  case "ArrowRight":
103
- return h < n - 1 && t + 1 < c && this._focusSwatchByIndex(t + 1), !1;
113
+ return h < l - 1 && e + 1 < c && this._focusSwatchByIndex(e + 1), !1;
104
114
  case "ArrowLeft":
105
- return h > 0 && this._focusSwatchByIndex(t - 1), !1;
115
+ return h > 0 && this._focusSwatchByIndex(e - 1), !1;
106
116
  case "ArrowDown":
107
- return u < f - 1 && t + n < c && this._focusSwatchByIndex(t + n), !1;
117
+ return u < d - 1 && e + l < c && this._focusSwatchByIndex(e + l), !1;
108
118
  case "ArrowUp":
109
- return u > 0 && this._focusSwatchByIndex(t - n), !1;
119
+ return u > 0 && this._focusSwatchByIndex(e - l), !1;
110
120
  case "PageDown": {
111
- const i = (f - 1) * n, d = Math.min(
121
+ const i = (d - 1) * l, p = Math.min(
112
122
  i + h,
113
123
  c - 1
114
124
  );
115
- return t !== d && this._focusSwatchByIndex(d), !1;
125
+ return e !== p && this._focusSwatchByIndex(p), !1;
116
126
  }
117
127
  case "PageUp": {
118
128
  const i = Math.min(h, c - 1);
119
- return t !== i && this._focusSwatchByIndex(i), !1;
129
+ return e !== i && this._focusSwatchByIndex(i), !1;
120
130
  }
121
131
  case "Home":
122
- return r.ctrlKey ? this._focusSwatchByIndex(0) : this._focusSwatchByIndex(u * n), !1;
132
+ return t.ctrlKey ? this._focusSwatchByIndex(0) : this._focusSwatchByIndex(u * l), !1;
123
133
  case "End":
124
- if (r.ctrlKey)
134
+ if (t.ctrlKey)
125
135
  this._focusSwatchByIndex(c - 1);
126
136
  else {
127
137
  const i = Math.min(
128
- (u + 1) * n - 1,
138
+ (u + 1) * l - 1,
129
139
  c - 1
130
140
  );
131
141
  this._focusSwatchByIndex(i);
@@ -133,7 +143,7 @@ const q = (o) => {
133
143
  return !1;
134
144
  case "Enter":
135
145
  case " ":
136
- return l && this._handleColorSaving(), e && !l && (this._handleSwatchSelection(e), this._returnFocusToAnchor()), !1;
146
+ return r && this._handleColorSaving(), o && !r && (this._handleSwatchSelection(o), this._returnFocusToAnchor()), !1;
137
147
  case "Escape":
138
148
  return this.open = !1, this._returnFocusToAnchor(), !1;
139
149
  case "Tab":
@@ -145,48 +155,55 @@ const q = (o) => {
145
155
  /**
146
156
  * @internal
147
157
  */
148
- _focusSwatchByIndex(r) {
149
- const e = this._getGridCells();
150
- r < 0 || r >= e.length || e[r]?.focus();
158
+ _focusSwatchByIndex(t) {
159
+ const o = this._getGridCells();
160
+ t < 0 || t >= o.length || o[t]?.focus();
151
161
  }
152
162
  /**
153
163
  * @internal
154
164
  */
155
- _renderColorSwatch(r) {
156
- return p`
157
- <button
158
- class="swatch ${(e, t) => B(
159
- t.parent.value === e.value ? "selected" : "",
160
- t.parent._applyContrastClass(e.value) ? "contrast" : ""
165
+ _renderColorSwatch(t, o) {
166
+ return m`
167
+ <${o} placement="top"
168
+ text="${(e) => e.label ?? e.value}"
169
+ exportparts="vvd-theme-alternate">
170
+ <button
171
+ slot="anchor"
172
+ class="swatch ${(e, r) => $(
173
+ r.parent.value === e.value ? "selected" : "",
174
+ r.parent._applyContrastClass(e.value) ? "contrast" : ""
161
175
  )}"
162
- role="gridcell"
163
- style="--swatch-color: ${(e) => e.value};"
164
- tabindex="${(e, t) => t.index === 0 ? "0" : "-1"}"
165
- aria-label="${(e, t) => t.parent.locale.baseColorPicker.colorSwatchLabel(
176
+ role="gridcell"
177
+ style="--swatch-color: ${(e) => e.value};"
178
+ tabindex="${(e, r) => r.index === 0 ? "0" : "-1"}"
179
+ aria-label="${(e, r) => r.parent.locale.baseColorPicker.colorSwatchLabel(
166
180
  e.value,
167
181
  e.label,
168
- t.parent.value === e.value
182
+ r.parent.value === e.value
169
183
  )}"
170
- @click="${(e, t) => t.parent._handleSwatchSelection(e.value)}"
171
- @keydown="${(e, t) => t.parent._handleCellKeydown(
172
- t.event,
184
+ @click="${(e, r) => r.parent._handleSwatchSelection(e.value)}"
185
+ @keydown="${(e, r) => r.parent._handleCellKeydown(
186
+ r.event,
173
187
  e.value,
174
- t.index
188
+ r.index
175
189
  )}"
176
- >
177
- ${S(
178
- (e, t) => t.parent.value === e.value,
179
- p`<${r} size="-6" name="check-solid" aria-hidden="true"></${r}>`
190
+ >
191
+ ${b(
192
+ (e, r) => r.parent.value === e.value,
193
+ m`<${t} size="-6" name="check-solid" aria-hidden="true"></${t}>`
180
194
  )}
181
- </button>
195
+ </button>
196
+ </${o}>
182
197
  `;
183
198
  }
184
199
  }
185
- return m([
186
- v({ mode: "boolean" })
187
- ], s.prototype, "open"), m([
188
- y
189
- ], s.prototype, "swatches"), s;
200
+ return f([
201
+ S({ mode: "boolean" })
202
+ ], s.prototype, "open"), f([
203
+ w
204
+ ], s.prototype, "swatches"), f([
205
+ w
206
+ ], s.prototype, "_canvasColor"), s;
190
207
  };
191
208
  export {
192
209
  q as B,