@vonage/vivid 3.52.0 → 3.53.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 (289) hide show
  1. package/README.md +1 -1
  2. package/accordion/index.cjs +1 -1
  3. package/accordion/index.js +1 -1
  4. package/accordion-item/index.cjs +1 -1
  5. package/accordion-item/index.js +1 -1
  6. package/alert/index.cjs +3 -3
  7. package/alert/index.js +3 -3
  8. package/audio-player/index.cjs +3 -3
  9. package/audio-player/index.js +3 -3
  10. package/avatar/index.cjs +1 -1
  11. package/avatar/index.js +1 -1
  12. package/badge/index.cjs +1 -1
  13. package/badge/index.js +1 -1
  14. package/banner/index.cjs +2 -2
  15. package/banner/index.js +2 -2
  16. package/breadcrumb-item/index.cjs +1 -1
  17. package/breadcrumb-item/index.js +1 -1
  18. package/button/index.cjs +2 -2
  19. package/button/index.js +2 -2
  20. package/card/index.cjs +2 -2
  21. package/card/index.js +2 -2
  22. package/checkbox/index.cjs +3 -2
  23. package/checkbox/index.js +3 -2
  24. package/combobox/index.cjs +5 -5
  25. package/combobox/index.js +5 -5
  26. package/custom-elements.json +717 -4
  27. package/data-grid/index.cjs +1 -1
  28. package/data-grid/index.js +1 -1
  29. package/date-picker/index.cjs +7 -6
  30. package/date-picker/index.js +7 -6
  31. package/date-range-picker/index.cjs +7 -6
  32. package/date-range-picker/index.js +7 -6
  33. package/dial-pad/index.cjs +33 -0
  34. package/dial-pad/index.js +31 -0
  35. package/dialog/index.cjs +4 -4
  36. package/dialog/index.js +4 -4
  37. package/divider/index.cjs +1 -1
  38. package/divider/index.js +1 -1
  39. package/elevation/index.cjs +1 -1
  40. package/elevation/index.js +1 -1
  41. package/empty-state/index.cjs +2 -2
  42. package/empty-state/index.js +2 -2
  43. package/fab/index.cjs +2 -2
  44. package/fab/index.js +2 -2
  45. package/file-picker/index.cjs +4 -3
  46. package/file-picker/index.js +4 -3
  47. package/header/index.cjs +2 -2
  48. package/header/index.js +2 -2
  49. package/icon/index.cjs +1 -1
  50. package/icon/index.js +1 -1
  51. package/index.cjs +132 -122
  52. package/index.js +46 -43
  53. package/layout/index.cjs +1 -1
  54. package/layout/index.js +1 -1
  55. package/lib/components.d.ts +2 -0
  56. package/lib/dial-pad/definition.d.ts +3 -0
  57. package/lib/dial-pad/dial-pad.d.ts +14 -0
  58. package/lib/dial-pad/dial-pad.template.d.ts +4 -0
  59. package/lib/dial-pad/locale.d.ts +18 -0
  60. package/lib/enums.d.ts +6 -0
  61. package/lib/text-anchor/definition.d.ts +1 -0
  62. package/lib/text-anchor/text-anchor.d.ts +5 -0
  63. package/lib/video-player/definition.d.ts +3 -0
  64. package/lib/video-player/locale.d.ts +1 -0
  65. package/lib/video-player/video-player.d.ts +17 -0
  66. package/lib/video-player/video-player.template.d.ts +4 -0
  67. package/listbox/index.cjs +2 -2
  68. package/listbox/index.js +2 -2
  69. package/locales/en-GB.cjs +30 -0
  70. package/locales/en-GB.js +30 -0
  71. package/locales/en-US.cjs +198 -0
  72. package/locales/en-US.js +198 -0
  73. package/locales/ja-JP.cjs +197 -0
  74. package/locales/ja-JP.js +197 -0
  75. package/locales/zh-CN.cjs +199 -0
  76. package/locales/zh-CN.js +199 -0
  77. package/menu/index.cjs +6 -6
  78. package/menu/index.js +6 -6
  79. package/menu-item/index.cjs +2 -2
  80. package/menu-item/index.js +2 -2
  81. package/nav/index.cjs +1 -1
  82. package/nav/index.js +1 -1
  83. package/nav-disclosure/index.cjs +2 -2
  84. package/nav-disclosure/index.js +2 -2
  85. package/nav-item/index.cjs +2 -2
  86. package/nav-item/index.js +2 -2
  87. package/note/index.cjs +2 -2
  88. package/note/index.js +2 -2
  89. package/number-field/index.cjs +5 -4
  90. package/number-field/index.js +5 -4
  91. package/option/index.cjs +2 -2
  92. package/option/index.js +2 -2
  93. package/package.json +1 -1
  94. package/pagination/index.cjs +3 -3
  95. package/pagination/index.js +3 -3
  96. package/popup/index.cjs +4 -4
  97. package/popup/index.js +4 -4
  98. package/progress/index.cjs +1 -1
  99. package/progress/index.js +1 -1
  100. package/progress-ring/index.cjs +1 -1
  101. package/progress-ring/index.js +1 -1
  102. package/radio/index.cjs +1 -1
  103. package/radio/index.js +1 -1
  104. package/radio-group/index.cjs +1 -1
  105. package/radio-group/index.js +1 -1
  106. package/range-slider/index.cjs +2 -2
  107. package/range-slider/index.js +2 -2
  108. package/select/index.cjs +7 -6
  109. package/select/index.js +7 -6
  110. package/selectable-box/index.cjs +5 -4
  111. package/selectable-box/index.js +5 -4
  112. package/shared/applyMixinsWithObservables.cjs +15 -0
  113. package/shared/applyMixinsWithObservables.js +13 -0
  114. package/shared/definition.cjs +1 -1
  115. package/shared/definition.js +1 -1
  116. package/shared/definition11.cjs +3 -3
  117. package/shared/definition11.js +3 -3
  118. package/shared/definition14.cjs +2 -2
  119. package/shared/definition14.js +2 -2
  120. package/shared/definition15.cjs +8 -9
  121. package/shared/definition15.js +8 -9
  122. package/shared/definition16.cjs +3 -3
  123. package/shared/definition16.js +3 -3
  124. package/shared/definition17.cjs +2 -2
  125. package/shared/definition17.js +3 -3
  126. package/shared/definition18.cjs +3 -3
  127. package/shared/definition18.js +3 -3
  128. package/shared/definition19.cjs +3 -3
  129. package/shared/definition19.js +3 -3
  130. package/shared/definition20.cjs +186 -227
  131. package/shared/definition20.js +181 -222
  132. package/shared/definition21.cjs +264 -67
  133. package/shared/definition21.js +263 -65
  134. package/shared/definition22.cjs +66 -57
  135. package/shared/definition22.js +64 -56
  136. package/shared/definition23.cjs +42 -76
  137. package/shared/definition23.js +41 -75
  138. package/shared/definition24.cjs +70 -2402
  139. package/shared/definition24.js +69 -2401
  140. package/shared/definition25.cjs +2402 -46
  141. package/shared/definition25.js +2401 -45
  142. package/shared/definition26.cjs +63 -30
  143. package/shared/definition26.js +62 -29
  144. package/shared/definition27.cjs +28 -56
  145. package/shared/definition27.js +27 -55
  146. package/shared/definition28.cjs +35 -881
  147. package/shared/definition28.js +34 -879
  148. package/shared/definition29.cjs +893 -60
  149. package/shared/definition29.js +893 -61
  150. package/shared/definition30.cjs +68 -86
  151. package/shared/definition30.js +67 -85
  152. package/shared/definition31.cjs +86 -21
  153. package/shared/definition31.js +86 -21
  154. package/shared/definition32.cjs +24 -12
  155. package/shared/definition32.js +23 -11
  156. package/shared/definition33.cjs +11 -50
  157. package/shared/definition33.js +10 -49
  158. package/shared/definition34.cjs +26 -515
  159. package/shared/definition34.js +26 -515
  160. package/shared/definition35.cjs +448 -194
  161. package/shared/definition35.js +448 -192
  162. package/shared/definition36.cjs +256 -202
  163. package/shared/definition36.js +253 -201
  164. package/shared/definition37.cjs +204 -65
  165. package/shared/definition37.js +203 -63
  166. package/shared/definition38.cjs +63 -57
  167. package/shared/definition38.js +60 -55
  168. package/shared/definition39.cjs +65 -432
  169. package/shared/definition39.js +64 -431
  170. package/shared/definition4.cjs +2 -2
  171. package/shared/definition4.js +2 -2
  172. package/shared/definition40.cjs +441 -34
  173. package/shared/definition40.js +438 -31
  174. package/shared/definition41.cjs +34 -576
  175. package/shared/definition41.js +33 -575
  176. package/shared/definition42.cjs +531 -654
  177. package/shared/definition42.js +531 -654
  178. package/shared/definition43.cjs +690 -114
  179. package/shared/definition43.js +689 -113
  180. package/shared/definition44.cjs +124 -79
  181. package/shared/definition44.js +122 -77
  182. package/shared/definition45.cjs +78 -520
  183. package/shared/definition45.js +77 -518
  184. package/shared/definition46.cjs +520 -119
  185. package/shared/definition46.js +518 -118
  186. package/shared/definition47.cjs +118 -135
  187. package/shared/definition47.js +117 -134
  188. package/shared/definition48.cjs +151 -19
  189. package/shared/definition48.js +150 -18
  190. package/shared/definition49.cjs +21 -84
  191. package/shared/definition49.js +20 -83
  192. package/shared/definition5.cjs +1 -1
  193. package/shared/definition5.js +1 -1
  194. package/shared/definition50.cjs +52 -505
  195. package/shared/definition50.js +51 -504
  196. package/shared/definition51.cjs +526 -28
  197. package/shared/definition51.js +525 -27
  198. package/shared/definition52.cjs +28 -123
  199. package/shared/definition52.js +26 -122
  200. package/shared/definition53.cjs +110 -309
  201. package/shared/definition53.js +110 -308
  202. package/shared/definition54.cjs +255 -271
  203. package/shared/definition54.js +255 -271
  204. package/shared/definition55.cjs +262 -791
  205. package/shared/definition55.js +261 -790
  206. package/shared/definition56.cjs +818 -107
  207. package/shared/definition56.js +817 -106
  208. package/shared/definition57.cjs +85 -55
  209. package/shared/definition57.js +84 -54
  210. package/shared/definition58.cjs +125 -72
  211. package/shared/definition58.js +124 -71
  212. package/shared/definition59.cjs +72 -285
  213. package/shared/definition59.js +73 -286
  214. package/shared/definition6.cjs +1 -1
  215. package/shared/definition6.js +1 -1
  216. package/shared/definition60.cjs +298 -39
  217. package/shared/definition60.js +297 -38
  218. package/shared/definition61.cjs +65739 -1688
  219. package/shared/definition61.js +65738 -1687
  220. package/shared/definition62.cjs +50 -0
  221. package/shared/definition62.js +46 -0
  222. package/shared/definition63.cjs +1828 -0
  223. package/shared/definition63.js +1824 -0
  224. package/shared/definition7.cjs +2 -2
  225. package/shared/definition7.js +2 -2
  226. package/shared/definition8.cjs +2 -2
  227. package/shared/definition8.js +2 -2
  228. package/shared/definition9.cjs +1 -1
  229. package/shared/definition9.js +1 -1
  230. package/shared/enums.cjs +8 -0
  231. package/shared/enums.js +8 -1
  232. package/shared/index2.cjs +66 -37
  233. package/shared/index2.js +66 -37
  234. package/shared/key-codes2.js +1 -1
  235. package/shared/listbox.cjs +1 -1
  236. package/shared/listbox.js +1 -1
  237. package/shared/localization/Locale.d.ts +4 -0
  238. package/shared/patterns/form-elements/form-elements.d.ts +2 -3
  239. package/shared/presentationDate.cjs +16 -5
  240. package/shared/presentationDate.js +16 -5
  241. package/shared/text-anchor.cjs +6 -0
  242. package/shared/text-anchor.js +6 -0
  243. package/shared/text-anchor.template.cjs +6 -1
  244. package/shared/text-anchor.template.js +6 -1
  245. package/shared/text-field.cjs +1 -1
  246. package/shared/text-field.js +1 -1
  247. package/shared/utils/applyMixinsWithObservables.d.ts +1 -0
  248. package/side-drawer/index.cjs +1 -1
  249. package/side-drawer/index.js +1 -1
  250. package/slider/index.cjs +1 -1
  251. package/slider/index.js +1 -1
  252. package/split-button/index.cjs +2 -2
  253. package/split-button/index.js +2 -2
  254. package/style.css +1 -0
  255. package/styles/core/all.css +1 -1
  256. package/styles/core/theme.css +1 -1
  257. package/styles/core/typography.css +1 -1
  258. package/styles/tokens/theme-dark.css +4 -4
  259. package/styles/tokens/theme-light.css +4 -4
  260. package/styles/tokens/vivid-2-compat.css +1 -1
  261. package/switch/index.cjs +2 -2
  262. package/switch/index.js +2 -2
  263. package/tab/index.cjs +2 -2
  264. package/tab/index.js +2 -2
  265. package/tab-panel/index.cjs +1 -1
  266. package/tab-panel/index.js +1 -1
  267. package/tabs/index.cjs +4 -4
  268. package/tabs/index.js +4 -4
  269. package/tag/index.cjs +2 -2
  270. package/tag/index.js +2 -2
  271. package/tag-group/index.cjs +1 -1
  272. package/tag-group/index.js +1 -1
  273. package/text-area/index.cjs +4 -3
  274. package/text-area/index.js +4 -3
  275. package/text-field/index.cjs +4 -3
  276. package/text-field/index.js +4 -3
  277. package/time-picker/index.cjs +8 -7
  278. package/time-picker/index.js +8 -7
  279. package/toggletip/index.cjs +5 -5
  280. package/toggletip/index.js +5 -5
  281. package/tooltip/index.cjs +5 -5
  282. package/tooltip/index.js +5 -5
  283. package/tree-item/index.cjs +2 -2
  284. package/tree-item/index.js +2 -2
  285. package/tree-view/index.cjs +1 -1
  286. package/tree-view/index.js +1 -1
  287. package/video-player/index.cjs +17 -0
  288. package/video-player/index.js +15 -0
  289. package/vivid.api.json +311 -0
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const index = require('./index.cjs');
4
- const definition = require('./definition26.cjs');
4
+ const definition = require('./definition27.cjs');
5
5
  const affix = require('./affix.cjs');
6
6
  const applyMixins = require('./apply-mixins.cjs');
7
7
  const when = require('./when.cjs');
@@ -34,7 +34,7 @@ __decorateClass([
34
34
  ], Badge.prototype, "text", 2);
35
35
  applyMixins.applyMixins(Badge, affix.AffixIconWithTrailing);
36
36
 
37
- const styles = ":host{display:inline-block}.base{--_badge-block-size:calc(1px*(20 + 4*clamp(-1, var(--vvd-size-density, 0), 2)));display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--_badge-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-condensed-bold);inline-size:100%;padding-inline:8px;vertical-align:middle}.base.connotation-cta{--_connotation-color-primary: var(--vvd-badge-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-badge-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-soft: var(--vvd-badge-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-badge-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-badge-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-badge-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm-all: var(--vvd-badge-cta-firm-all, var(--vvd-color-cta-600))}.base.connotation-success{--_connotation-color-primary: var(--vvd-badge-success-primary, var(--vvd-color-success-500));--_connotation-color-primary-text: var(--vvd-badge-success-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-success-intermediate, var(--vvd-color-success-500));--_connotation-color-soft: var(--vvd-badge-success-soft, var(--vvd-color-success-100));--_connotation-color-contrast: var(--vvd-badge-success-contrast, var(--vvd-color-success-800));--_connotation-color-pale: var(--vvd-badge-success-pale, var(--vvd-color-success-300));--_connotation-color-fierce: var(--vvd-badge-success-fierce, var(--vvd-color-success-700));--_connotation-color-firm-all: var(--vvd-badge-success-firm-all, var(--vvd-color-success-600))}.base.connotation-alert{--_connotation-color-primary: var(--vvd-badge-alert-primary, var(--vvd-color-alert-500));--_connotation-color-primary-text: var(--vvd-badge-alert-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-soft: var(--vvd-badge-alert-soft, var(--vvd-color-alert-100));--_connotation-color-contrast: var(--vvd-badge-alert-contrast, var(--vvd-color-alert-800));--_connotation-color-pale: var(--vvd-badge-alert-pale, var(--vvd-color-alert-300));--_connotation-color-fierce: var(--vvd-badge-alert-fierce, var(--vvd-color-alert-700));--_connotation-color-firm-all: var(--vvd-badge-alert-firm-all, var(--vvd-color-alert-600))}.base.connotation-warning{--_connotation-color-primary: var(--vvd-badge-warning-primary, var(--vvd-color-warning-300));--_connotation-color-primary-text: var(--vvd-badge-warning-primary-text, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-badge-warning-intermediate, var(--vvd-color-warning-300));--_connotation-color-soft: var(--vvd-badge-warning-soft, var(--vvd-color-warning-100));--_connotation-color-contrast: var(--vvd-badge-warning-contrast, var(--vvd-color-warning-800));--_connotation-color-pale: var(--vvd-badge-warning-pale, var(--vvd-color-warning-300));--_connotation-color-fierce: var(--vvd-badge-warning-fierce, var(--vvd-color-warning-700));--_connotation-color-firm-all: var(--vvd-badge-warning-firm-all, var(--vvd-color-warning-600))}.base.connotation-information{--_connotation-color-primary: var(--vvd-badge-information-primary, var(--vvd-color-information-500));--_connotation-color-primary-text: var(--vvd-badge-information-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-information-intermediate, var(--vvd-color-information-500));--_connotation-color-soft: var(--vvd-badge-information-soft, var(--vvd-color-information-100));--_connotation-color-contrast: var(--vvd-badge-information-contrast, var(--vvd-color-information-800));--_connotation-color-pale: var(--vvd-badge-information-pale, var(--vvd-color-information-300));--_connotation-color-fierce: var(--vvd-badge-information-fierce, var(--vvd-color-information-700));--_connotation-color-firm-all: var(--vvd-badge-information-firm-all, var(--vvd-color-information-600))}.base:not(.connotation-cta,.connotation-success,.connotation-alert,.connotation-warning,.connotation-information){--_connotation-color-primary: var(--vvd-badge-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-badge-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-soft: var(--vvd-badge-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-badge-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-badge-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-badge-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm-all: var(--vvd-badge-accent-firm-all, var(--vvd-color-neutral-600))}.base{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:not(.icon-only){max-inline-size:100%}.base.icon-only{contain:size;padding-inline:0;place-content:center}@supports (aspect-ratio: 1){.base.icon-only{aspect-ratio:1}}@supports not (aspect-ratio: 1){.base.icon-only{inline-size:var(--_badge-block-size)}}.text{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:14px}slot[name=icon]{flex-shrink:0;font-size:calc(var(--_badge-block-size) / 1.6667);line-height:1}.icon-trailing slot[name=icon]{display:flex;order:1}\n";
37
+ const styles = ":host{display:inline-block}.base{--_badge-block-size:calc(1px*(20 + 4*clamp(-1, var(--vvd-size-density, 0), 2)));display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--_badge-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-condensed-bold);inline-size:100%;padding-inline:8px;vertical-align:middle}.base.connotation-cta{--_connotation-color-primary: var(--vvd-badge-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-badge-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-soft: var(--vvd-badge-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-badge-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-badge-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-badge-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm-all: var(--vvd-badge-cta-firm-all, var(--vvd-color-cta-600))}.base.connotation-success{--_connotation-color-primary: var(--vvd-badge-success-primary, var(--vvd-color-success-500));--_connotation-color-primary-text: var(--vvd-badge-success-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-success-intermediate, var(--vvd-color-success-500));--_connotation-color-soft: var(--vvd-badge-success-soft, var(--vvd-color-success-100));--_connotation-color-contrast: var(--vvd-badge-success-contrast, var(--vvd-color-success-800));--_connotation-color-pale: var(--vvd-badge-success-pale, var(--vvd-color-success-300));--_connotation-color-fierce: var(--vvd-badge-success-fierce, var(--vvd-color-success-700));--_connotation-color-firm-all: var(--vvd-badge-success-firm-all, var(--vvd-color-success-600))}.base.connotation-alert{--_connotation-color-primary: var(--vvd-badge-alert-primary, var(--vvd-color-alert-500));--_connotation-color-primary-text: var(--vvd-badge-alert-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-soft: var(--vvd-badge-alert-soft, var(--vvd-color-alert-100));--_connotation-color-contrast: var(--vvd-badge-alert-contrast, var(--vvd-color-alert-800));--_connotation-color-pale: var(--vvd-badge-alert-pale, var(--vvd-color-alert-300));--_connotation-color-fierce: var(--vvd-badge-alert-fierce, var(--vvd-color-alert-700));--_connotation-color-firm-all: var(--vvd-badge-alert-firm-all, var(--vvd-color-alert-600))}.base.connotation-warning{--_connotation-color-primary: var(--vvd-badge-warning-primary, var(--vvd-color-warning-300));--_connotation-color-primary-text: var(--vvd-badge-warning-primary-text, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-badge-warning-intermediate, var(--vvd-color-warning-300));--_connotation-color-soft: var(--vvd-badge-warning-soft, var(--vvd-color-warning-100));--_connotation-color-contrast: var(--vvd-badge-warning-contrast, var(--vvd-color-warning-800));--_connotation-color-pale: var(--vvd-badge-warning-pale, var(--vvd-color-warning-300));--_connotation-color-fierce: var(--vvd-badge-warning-fierce, var(--vvd-color-warning-700));--_connotation-color-firm-all: var(--vvd-badge-warning-firm-all, var(--vvd-color-warning-600))}.base.connotation-information{--_connotation-color-primary: var(--vvd-badge-information-primary, var(--vvd-color-information-500));--_connotation-color-primary-text: var(--vvd-badge-information-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-information-intermediate, var(--vvd-color-information-500));--_connotation-color-soft: var(--vvd-badge-information-soft, var(--vvd-color-information-100));--_connotation-color-contrast: var(--vvd-badge-information-contrast, var(--vvd-color-information-800));--_connotation-color-pale: var(--vvd-badge-information-pale, var(--vvd-color-information-300));--_connotation-color-fierce: var(--vvd-badge-information-fierce, var(--vvd-color-information-700));--_connotation-color-firm-all: var(--vvd-badge-information-firm-all, var(--vvd-color-information-600))}.base:not(.connotation-cta,.connotation-success,.connotation-alert,.connotation-warning,.connotation-information){--_connotation-color-primary: var(--vvd-badge-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-badge-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-soft: var(--vvd-badge-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-badge-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-badge-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-badge-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm-all: var(--vvd-badge-accent-firm-all, var(--vvd-color-neutral-600))}.base{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:not(.icon-only){max-inline-size:100%}.base.icon-only{contain:size;padding-inline:0;place-content:center}@supports (aspect-ratio: 1){.base.icon-only{aspect-ratio:1}}@supports not (aspect-ratio: 1){.base.icon-only{inline-size:var(--_badge-block-size)}}.text{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}slot[name=icon]{flex-shrink:0;font-size:calc(var(--_badge-block-size) / 1.6667);line-height:1}.icon-trailing slot[name=icon]{display:flex;order:1}\n";
38
38
 
39
39
  const getClasses = ({
40
40
  connotation,
@@ -1,5 +1,5 @@
1
1
  import { F as FoundationElement, a as attr, h as html, r as registerFactory } from './index.js';
2
- import { a as iconRegistries } from './definition26.js';
2
+ import { a as iconRegistries } from './definition27.js';
3
3
  import { b as AffixIconWithTrailing, a as affixIconTemplateFactory, I as IconWrapper } from './affix.js';
4
4
  import { a as applyMixins } from './apply-mixins.js';
5
5
  import { w as when } from './when.js';
@@ -32,7 +32,7 @@ __decorateClass([
32
32
  ], Badge.prototype, "text", 2);
33
33
  applyMixins(Badge, AffixIconWithTrailing);
34
34
 
35
- const styles = ":host{display:inline-block}.base{--_badge-block-size:calc(1px*(20 + 4*clamp(-1, var(--vvd-size-density, 0), 2)));display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--_badge-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-condensed-bold);inline-size:100%;padding-inline:8px;vertical-align:middle}.base.connotation-cta{--_connotation-color-primary: var(--vvd-badge-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-badge-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-soft: var(--vvd-badge-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-badge-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-badge-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-badge-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm-all: var(--vvd-badge-cta-firm-all, var(--vvd-color-cta-600))}.base.connotation-success{--_connotation-color-primary: var(--vvd-badge-success-primary, var(--vvd-color-success-500));--_connotation-color-primary-text: var(--vvd-badge-success-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-success-intermediate, var(--vvd-color-success-500));--_connotation-color-soft: var(--vvd-badge-success-soft, var(--vvd-color-success-100));--_connotation-color-contrast: var(--vvd-badge-success-contrast, var(--vvd-color-success-800));--_connotation-color-pale: var(--vvd-badge-success-pale, var(--vvd-color-success-300));--_connotation-color-fierce: var(--vvd-badge-success-fierce, var(--vvd-color-success-700));--_connotation-color-firm-all: var(--vvd-badge-success-firm-all, var(--vvd-color-success-600))}.base.connotation-alert{--_connotation-color-primary: var(--vvd-badge-alert-primary, var(--vvd-color-alert-500));--_connotation-color-primary-text: var(--vvd-badge-alert-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-soft: var(--vvd-badge-alert-soft, var(--vvd-color-alert-100));--_connotation-color-contrast: var(--vvd-badge-alert-contrast, var(--vvd-color-alert-800));--_connotation-color-pale: var(--vvd-badge-alert-pale, var(--vvd-color-alert-300));--_connotation-color-fierce: var(--vvd-badge-alert-fierce, var(--vvd-color-alert-700));--_connotation-color-firm-all: var(--vvd-badge-alert-firm-all, var(--vvd-color-alert-600))}.base.connotation-warning{--_connotation-color-primary: var(--vvd-badge-warning-primary, var(--vvd-color-warning-300));--_connotation-color-primary-text: var(--vvd-badge-warning-primary-text, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-badge-warning-intermediate, var(--vvd-color-warning-300));--_connotation-color-soft: var(--vvd-badge-warning-soft, var(--vvd-color-warning-100));--_connotation-color-contrast: var(--vvd-badge-warning-contrast, var(--vvd-color-warning-800));--_connotation-color-pale: var(--vvd-badge-warning-pale, var(--vvd-color-warning-300));--_connotation-color-fierce: var(--vvd-badge-warning-fierce, var(--vvd-color-warning-700));--_connotation-color-firm-all: var(--vvd-badge-warning-firm-all, var(--vvd-color-warning-600))}.base.connotation-information{--_connotation-color-primary: var(--vvd-badge-information-primary, var(--vvd-color-information-500));--_connotation-color-primary-text: var(--vvd-badge-information-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-information-intermediate, var(--vvd-color-information-500));--_connotation-color-soft: var(--vvd-badge-information-soft, var(--vvd-color-information-100));--_connotation-color-contrast: var(--vvd-badge-information-contrast, var(--vvd-color-information-800));--_connotation-color-pale: var(--vvd-badge-information-pale, var(--vvd-color-information-300));--_connotation-color-fierce: var(--vvd-badge-information-fierce, var(--vvd-color-information-700));--_connotation-color-firm-all: var(--vvd-badge-information-firm-all, var(--vvd-color-information-600))}.base:not(.connotation-cta,.connotation-success,.connotation-alert,.connotation-warning,.connotation-information){--_connotation-color-primary: var(--vvd-badge-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-badge-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-soft: var(--vvd-badge-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-badge-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-badge-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-badge-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm-all: var(--vvd-badge-accent-firm-all, var(--vvd-color-neutral-600))}.base{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:not(.icon-only){max-inline-size:100%}.base.icon-only{contain:size;padding-inline:0;place-content:center}@supports (aspect-ratio: 1){.base.icon-only{aspect-ratio:1}}@supports not (aspect-ratio: 1){.base.icon-only{inline-size:var(--_badge-block-size)}}.text{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:14px}slot[name=icon]{flex-shrink:0;font-size:calc(var(--_badge-block-size) / 1.6667);line-height:1}.icon-trailing slot[name=icon]{display:flex;order:1}\n";
35
+ const styles = ":host{display:inline-block}.base{--_badge-block-size:calc(1px*(20 + 4*clamp(-1, var(--vvd-size-density, 0), 2)));display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--_badge-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-condensed-bold);inline-size:100%;padding-inline:8px;vertical-align:middle}.base.connotation-cta{--_connotation-color-primary: var(--vvd-badge-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-badge-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-cta-intermediate, var(--vvd-color-cta-500));--_connotation-color-soft: var(--vvd-badge-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-badge-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-badge-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-badge-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm-all: var(--vvd-badge-cta-firm-all, var(--vvd-color-cta-600))}.base.connotation-success{--_connotation-color-primary: var(--vvd-badge-success-primary, var(--vvd-color-success-500));--_connotation-color-primary-text: var(--vvd-badge-success-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-success-intermediate, var(--vvd-color-success-500));--_connotation-color-soft: var(--vvd-badge-success-soft, var(--vvd-color-success-100));--_connotation-color-contrast: var(--vvd-badge-success-contrast, var(--vvd-color-success-800));--_connotation-color-pale: var(--vvd-badge-success-pale, var(--vvd-color-success-300));--_connotation-color-fierce: var(--vvd-badge-success-fierce, var(--vvd-color-success-700));--_connotation-color-firm-all: var(--vvd-badge-success-firm-all, var(--vvd-color-success-600))}.base.connotation-alert{--_connotation-color-primary: var(--vvd-badge-alert-primary, var(--vvd-color-alert-500));--_connotation-color-primary-text: var(--vvd-badge-alert-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-soft: var(--vvd-badge-alert-soft, var(--vvd-color-alert-100));--_connotation-color-contrast: var(--vvd-badge-alert-contrast, var(--vvd-color-alert-800));--_connotation-color-pale: var(--vvd-badge-alert-pale, var(--vvd-color-alert-300));--_connotation-color-fierce: var(--vvd-badge-alert-fierce, var(--vvd-color-alert-700));--_connotation-color-firm-all: var(--vvd-badge-alert-firm-all, var(--vvd-color-alert-600))}.base.connotation-warning{--_connotation-color-primary: var(--vvd-badge-warning-primary, var(--vvd-color-warning-300));--_connotation-color-primary-text: var(--vvd-badge-warning-primary-text, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-badge-warning-intermediate, var(--vvd-color-warning-300));--_connotation-color-soft: var(--vvd-badge-warning-soft, var(--vvd-color-warning-100));--_connotation-color-contrast: var(--vvd-badge-warning-contrast, var(--vvd-color-warning-800));--_connotation-color-pale: var(--vvd-badge-warning-pale, var(--vvd-color-warning-300));--_connotation-color-fierce: var(--vvd-badge-warning-fierce, var(--vvd-color-warning-700));--_connotation-color-firm-all: var(--vvd-badge-warning-firm-all, var(--vvd-color-warning-600))}.base.connotation-information{--_connotation-color-primary: var(--vvd-badge-information-primary, var(--vvd-color-information-500));--_connotation-color-primary-text: var(--vvd-badge-information-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-information-intermediate, var(--vvd-color-information-500));--_connotation-color-soft: var(--vvd-badge-information-soft, var(--vvd-color-information-100));--_connotation-color-contrast: var(--vvd-badge-information-contrast, var(--vvd-color-information-800));--_connotation-color-pale: var(--vvd-badge-information-pale, var(--vvd-color-information-300));--_connotation-color-fierce: var(--vvd-badge-information-fierce, var(--vvd-color-information-700));--_connotation-color-firm-all: var(--vvd-badge-information-firm-all, var(--vvd-color-information-600))}.base:not(.connotation-cta,.connotation-success,.connotation-alert,.connotation-warning,.connotation-information){--_connotation-color-primary: var(--vvd-badge-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-badge-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-intermediate: var(--vvd-badge-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-soft: var(--vvd-badge-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-badge-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-badge-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-badge-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm-all: var(--vvd-badge-accent-firm-all, var(--vvd-color-neutral-600))}.base{--_appearance-color-text: var(--_connotation-color-primary-text);--_appearance-color-fill: var(--_connotation-color-primary);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:not(.icon-only){max-inline-size:100%}.base.icon-only{contain:size;padding-inline:0;place-content:center}@supports (aspect-ratio: 1){.base.icon-only{aspect-ratio:1}}@supports not (aspect-ratio: 1){.base.icon-only{inline-size:var(--_badge-block-size)}}.text{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}slot[name=icon]{flex-shrink:0;font-size:calc(var(--_badge-block-size) / 1.6667);line-height:1}.icon-trailing slot[name=icon]{display:flex;order:1}\n";
36
36
 
37
37
  const getClasses = ({
38
38
  connotation,
@@ -2,7 +2,7 @@
2
2
 
3
3
  const index = require('./index.cjs');
4
4
  const definition = require('./definition11.cjs');
5
- const definition$1 = require('./definition26.cjs');
5
+ const definition$1 = require('./definition27.cjs');
6
6
  const enums = require('./enums.cjs');
7
7
  const affix = require('./affix.cjs');
8
8
  require('./index2.cjs');
@@ -107,7 +107,7 @@ function renderDismissButton(buttonTag) {
107
107
  return index.html`
108
108
  <${buttonTag}
109
109
  aria-label="${(x) => x.dismissButtonAriaLabel || x.locale.banner.dismissButtonLabel}"
110
- part="vvd-theme-alternate"
110
+ part="${(x) => x.connotation === "warning" ? "" : "vvd-theme-alternate"}"
111
111
  size="condensed"
112
112
  class="dismiss-button"
113
113
  icon="close-line"
@@ -1,6 +1,6 @@
1
1
  import { a as attr, F as FoundationElement, o as observable, h as html, r as registerFactory } from './index.js';
2
2
  import { B as Button, a as buttonRegistries } from './definition11.js';
3
- import { a as iconRegistries } from './definition26.js';
3
+ import { a as iconRegistries } from './definition27.js';
4
4
  import { C as Connotation } from './enums.js';
5
5
  import { A as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper } from './affix.js';
6
6
  import './index2.js';
@@ -105,7 +105,7 @@ function renderDismissButton(buttonTag) {
105
105
  return html`
106
106
  <${buttonTag}
107
107
  aria-label="${(x) => x.dismissButtonAriaLabel || x.locale.banner.dismissButtonLabel}"
108
- part="vvd-theme-alternate"
108
+ part="${(x) => x.connotation === "warning" ? "" : "vvd-theme-alternate"}"
109
109
  size="condensed"
110
110
  class="dismiss-button"
111
111
  icon="close-line"
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const index = require('./index.cjs');
4
- const definition = require('./definition26.cjs');
4
+ const definition = require('./definition27.cjs');
5
5
  const breadcrumbItem = require('./breadcrumb-item.cjs');
6
6
  const textAnchor_template = require('./text-anchor.template.cjs');
7
7
  const icon = require('./icon.cjs');
@@ -1,5 +1,5 @@
1
1
  import { a as attr, h as html, r as registerFactory } from './index.js';
2
- import { a as iconRegistries } from './definition26.js';
2
+ import { a as iconRegistries } from './definition27.js';
3
3
  import { B as BreadcrumbItem$1 } from './breadcrumb-item.js';
4
4
  import { t as textAnchorTemplate } from './text-anchor.template.js';
5
5
  import { I as Icon } from './icon.js';
package/shared/enums.cjs CHANGED
@@ -74,12 +74,20 @@ var AriaLive = /* @__PURE__ */ ((AriaLive2) => {
74
74
  AriaLive2["Assertive"] = "assertive";
75
75
  return AriaLive2;
76
76
  })(AriaLive || {});
77
+ var MediaSkipBy = /* @__PURE__ */ ((MediaSkipBy2) => {
78
+ MediaSkipBy2["Zero"] = "0";
79
+ MediaSkipBy2["Five"] = "5";
80
+ MediaSkipBy2["Ten"] = "10";
81
+ MediaSkipBy2["Thirty"] = "30";
82
+ return MediaSkipBy2;
83
+ })(MediaSkipBy || {});
77
84
 
78
85
  exports.Appearance = Appearance;
79
86
  exports.AriaLive = AriaLive;
80
87
  exports.Connotation = Connotation;
81
88
  exports.ConnotationDecorative = ConnotationDecorative;
82
89
  exports.LayoutSize = LayoutSize;
90
+ exports.MediaSkipBy = MediaSkipBy;
83
91
  exports.Position = Position;
84
92
  exports.Role = Role;
85
93
  exports.Shape = Shape;
package/shared/enums.js CHANGED
@@ -72,5 +72,12 @@ var AriaLive = /* @__PURE__ */ ((AriaLive2) => {
72
72
  AriaLive2["Assertive"] = "assertive";
73
73
  return AriaLive2;
74
74
  })(AriaLive || {});
75
+ var MediaSkipBy = /* @__PURE__ */ ((MediaSkipBy2) => {
76
+ MediaSkipBy2["Zero"] = "0";
77
+ MediaSkipBy2["Five"] = "5";
78
+ MediaSkipBy2["Ten"] = "10";
79
+ MediaSkipBy2["Thirty"] = "30";
80
+ return MediaSkipBy2;
81
+ })(MediaSkipBy || {});
75
82
 
76
- export { Appearance as A, Connotation as C, LayoutSize as L, Position as P, Role as R, Shape as S, TabsSize as T, ConnotationDecorative as a, Size as b, AriaLive as c };
83
+ export { Appearance as A, Connotation as C, LayoutSize as L, MediaSkipBy as M, Position as P, Role as R, Shape as S, TabsSize as T, ConnotationDecorative as a, Size as b, AriaLive as c };
package/shared/index2.cjs CHANGED
@@ -2,10 +2,12 @@
2
2
 
3
3
  const icon = require('./icon.cjs');
4
4
  const index = require('./index.cjs');
5
+ const slotted = require('./slotted.cjs');
6
+ const classNames = require('./class-names.cjs');
5
7
  const when = require('./when.cjs');
6
8
  const locales_enUS = require('../locales/en-US.cjs');
7
9
 
8
- const messageStyles = ".message{display:flex;contain:inline-size;font:var(--vvd-typography-base-condensed);gap:4px;grid-column:1/-1}.message-text{color:var(--vvd-color-canvas-text)}.helper-message .message-text{color:var(--_low-ink-color)}.message-icon{font-size:16px}.success-message .message-icon{color:var(--vvd-color-success-500)}.error-message .message-icon{color:var(--vvd-color-alert-500)}\n";
10
+ const messageStyles = ".message{display:none;contain:inline-size;font:var(--vvd-typography-base-condensed);gap:4px;grid-column:1/-1}.message--visible{display:flex}.message-text{color:var(--vvd-color-canvas-text)}.helper-message .message-text{color:var(--_low-ink-color)}.message-icon{font-size:16px}.success-message .message-icon{color:var(--vvd-color-success-500)}.error-message .message-icon{color:var(--vvd-color-alert-500)}\n";
9
11
 
10
12
  var __defProp$1 = Object.defineProperty;
11
13
  var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
@@ -23,6 +25,9 @@ class FormElementHelperText {
23
25
  __decorateClass$1([
24
26
  index.attr({ attribute: "helper-text" })
25
27
  ], FormElementHelperText.prototype, "helperText", 2);
28
+ __decorateClass$1([
29
+ index.observable
30
+ ], FormElementHelperText.prototype, "_helperTextSlottedContent", 2);
26
31
  class FormElementSuccessText {
27
32
  }
28
33
  __decorateClass$1([
@@ -119,48 +124,72 @@ function formElements(constructor) {
119
124
  ], Decorated.prototype, "errorValidationMessage", 2);
120
125
  return Decorated;
121
126
  }
122
- function getFeedbackTemplate(messageType, context) {
123
- const MessageTypeMap = {
124
- helper: {
125
- messageProperty: "helperText",
126
- className: "helper",
127
- iconType: ""
128
- },
129
- error: {
130
- messageProperty: "errorValidationMessage",
131
- className: "error",
132
- iconType: "info-line"
133
- },
134
- success: {
135
- messageProperty: "successText",
136
- className: "success",
137
- iconType: "check-circle-line"
127
+ const feedback = {
128
+ helper: {
129
+ messageProperty: "helperText",
130
+ className: "helper",
131
+ slot: {
132
+ name: "helper-text",
133
+ slottedContentProperty: "_helperTextSlottedContent"
138
134
  }
139
- };
140
- const iconTag = context.tagFor(icon.Icon);
141
- const messageTypeConfig = MessageTypeMap[messageType];
142
- const iconType = messageTypeConfig.iconType;
143
- return index.html` <style>
135
+ },
136
+ error: {
137
+ messageProperty: "errorValidationMessage",
138
+ className: "error",
139
+ iconType: "info-line"
140
+ },
141
+ success: {
142
+ messageProperty: "successText",
143
+ className: "success",
144
+ iconType: "check-circle-line"
145
+ }
146
+ };
147
+ const isFeedbackAvailable = (config, x) => Boolean(
148
+ x[config.messageProperty] || config.slot && x[config.slot.slottedContentProperty]?.length
149
+ );
150
+ function getFeedbackTemplate(context) {
151
+ return index.html`
152
+ <style>
144
153
  ${messageStyles}
145
154
  </style>
146
- <div class="message ${MessageTypeMap[messageType].className}-message">
147
- ${when.when(
148
- () => iconType,
149
- index.html`
150
- <${iconTag} class="message-icon" name="${iconType}"></${iconTag}>`
155
+ ${getFeedbackTypeTemplate(
156
+ context,
157
+ feedback.helper,
158
+ (x) => isFeedbackAvailable(feedback.helper, x) && !isFeedbackAvailable(feedback.error, x) && !isFeedbackAvailable(feedback.success, x)
159
+ )}
160
+ ${getFeedbackTypeTemplate(
161
+ context,
162
+ feedback.error,
163
+ (x) => isFeedbackAvailable(feedback.error, x) && !isFeedbackAvailable(feedback.success, x)
164
+ )}
165
+ ${getFeedbackTypeTemplate(
166
+ context,
167
+ feedback.success,
168
+ (x) => isFeedbackAvailable(feedback.success, x)
151
169
  )}
152
- ${feedbackMessage({
153
- messageProperty: MessageTypeMap[messageType].messageProperty
154
- })}
155
- </div>`;
156
- }
157
- function feedbackMessage({
158
- messageProperty
159
- }) {
160
- return index.html`
161
- <span class="message-text">${(x) => x[messageProperty]}</span>
162
170
  `;
163
171
  }
172
+ function getFeedbackTypeTemplate(context, config, shouldShow) {
173
+ const iconTag = context.tagFor(icon.Icon);
174
+ const messageTemplate = index.html`${(x) => x[config.messageProperty]}`;
175
+ const innerTemplate = config.slot ? index.html`<slot
176
+ name="${config.slot.name}"
177
+ ${slotted.slotted(config.slot.slottedContentProperty)}
178
+ >${messageTemplate}</slot
179
+ >` : messageTemplate;
180
+ return index.html`<div
181
+ class="${(x) => classNames.classNames("message", `${config.className}-message`, [
182
+ "message--visible",
183
+ shouldShow(x)
184
+ ])}"
185
+ >
186
+ ${when.when(
187
+ (x) => shouldShow(x) && config.iconType,
188
+ index.html`<${iconTag} class="message-icon" name="${config.iconType}"></${iconTag}>`
189
+ )}
190
+ <span class="message-text">${innerTemplate}</span>
191
+ </div>`;
192
+ }
164
193
  function errorText(constructor) {
165
194
  class Decorated extends constructor {
166
195
  constructor(...args) {
package/shared/index2.js CHANGED
@@ -1,9 +1,11 @@
1
1
  import { I as Icon } from './icon.js';
2
2
  import { a as attr, o as observable, h as html } from './index.js';
3
+ import { s as slotted } from './slotted.js';
4
+ import { c as classNames } from './class-names.js';
3
5
  import { w as when } from './when.js';
4
6
  import enUS from '../locales/en-US.js';
5
7
 
6
- const messageStyles = ".message{display:flex;contain:inline-size;font:var(--vvd-typography-base-condensed);gap:4px;grid-column:1/-1}.message-text{color:var(--vvd-color-canvas-text)}.helper-message .message-text{color:var(--_low-ink-color)}.message-icon{font-size:16px}.success-message .message-icon{color:var(--vvd-color-success-500)}.error-message .message-icon{color:var(--vvd-color-alert-500)}\n";
8
+ const messageStyles = ".message{display:none;contain:inline-size;font:var(--vvd-typography-base-condensed);gap:4px;grid-column:1/-1}.message--visible{display:flex}.message-text{color:var(--vvd-color-canvas-text)}.helper-message .message-text{color:var(--_low-ink-color)}.message-icon{font-size:16px}.success-message .message-icon{color:var(--vvd-color-success-500)}.error-message .message-icon{color:var(--vvd-color-alert-500)}\n";
7
9
 
8
10
  var __defProp$1 = Object.defineProperty;
9
11
  var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
@@ -21,6 +23,9 @@ class FormElementHelperText {
21
23
  __decorateClass$1([
22
24
  attr({ attribute: "helper-text" })
23
25
  ], FormElementHelperText.prototype, "helperText", 2);
26
+ __decorateClass$1([
27
+ observable
28
+ ], FormElementHelperText.prototype, "_helperTextSlottedContent", 2);
24
29
  class FormElementSuccessText {
25
30
  }
26
31
  __decorateClass$1([
@@ -117,48 +122,72 @@ function formElements(constructor) {
117
122
  ], Decorated.prototype, "errorValidationMessage", 2);
118
123
  return Decorated;
119
124
  }
120
- function getFeedbackTemplate(messageType, context) {
121
- const MessageTypeMap = {
122
- helper: {
123
- messageProperty: "helperText",
124
- className: "helper",
125
- iconType: ""
126
- },
127
- error: {
128
- messageProperty: "errorValidationMessage",
129
- className: "error",
130
- iconType: "info-line"
131
- },
132
- success: {
133
- messageProperty: "successText",
134
- className: "success",
135
- iconType: "check-circle-line"
125
+ const feedback = {
126
+ helper: {
127
+ messageProperty: "helperText",
128
+ className: "helper",
129
+ slot: {
130
+ name: "helper-text",
131
+ slottedContentProperty: "_helperTextSlottedContent"
136
132
  }
137
- };
138
- const iconTag = context.tagFor(Icon);
139
- const messageTypeConfig = MessageTypeMap[messageType];
140
- const iconType = messageTypeConfig.iconType;
141
- return html` <style>
133
+ },
134
+ error: {
135
+ messageProperty: "errorValidationMessage",
136
+ className: "error",
137
+ iconType: "info-line"
138
+ },
139
+ success: {
140
+ messageProperty: "successText",
141
+ className: "success",
142
+ iconType: "check-circle-line"
143
+ }
144
+ };
145
+ const isFeedbackAvailable = (config, x) => Boolean(
146
+ x[config.messageProperty] || config.slot && x[config.slot.slottedContentProperty]?.length
147
+ );
148
+ function getFeedbackTemplate(context) {
149
+ return html`
150
+ <style>
142
151
  ${messageStyles}
143
152
  </style>
144
- <div class="message ${MessageTypeMap[messageType].className}-message">
145
- ${when(
146
- () => iconType,
147
- html`
148
- <${iconTag} class="message-icon" name="${iconType}"></${iconTag}>`
153
+ ${getFeedbackTypeTemplate(
154
+ context,
155
+ feedback.helper,
156
+ (x) => isFeedbackAvailable(feedback.helper, x) && !isFeedbackAvailable(feedback.error, x) && !isFeedbackAvailable(feedback.success, x)
157
+ )}
158
+ ${getFeedbackTypeTemplate(
159
+ context,
160
+ feedback.error,
161
+ (x) => isFeedbackAvailable(feedback.error, x) && !isFeedbackAvailable(feedback.success, x)
162
+ )}
163
+ ${getFeedbackTypeTemplate(
164
+ context,
165
+ feedback.success,
166
+ (x) => isFeedbackAvailable(feedback.success, x)
149
167
  )}
150
- ${feedbackMessage({
151
- messageProperty: MessageTypeMap[messageType].messageProperty
152
- })}
153
- </div>`;
154
- }
155
- function feedbackMessage({
156
- messageProperty
157
- }) {
158
- return html`
159
- <span class="message-text">${(x) => x[messageProperty]}</span>
160
168
  `;
161
169
  }
170
+ function getFeedbackTypeTemplate(context, config, shouldShow) {
171
+ const iconTag = context.tagFor(Icon);
172
+ const messageTemplate = html`${(x) => x[config.messageProperty]}`;
173
+ const innerTemplate = config.slot ? html`<slot
174
+ name="${config.slot.name}"
175
+ ${slotted(config.slot.slottedContentProperty)}
176
+ >${messageTemplate}</slot
177
+ >` : messageTemplate;
178
+ return html`<div
179
+ class="${(x) => classNames("message", `${config.className}-message`, [
180
+ "message--visible",
181
+ shouldShow(x)
182
+ ])}"
183
+ >
184
+ ${when(
185
+ (x) => shouldShow(x) && config.iconType,
186
+ html`<${iconTag} class="message-icon" name="${config.iconType}"></${iconTag}>`
187
+ )}
188
+ <span class="message-text">${innerTemplate}</span>
189
+ </div>`;
190
+ }
162
191
  function errorText(constructor) {
163
192
  class Decorated extends constructor {
164
193
  constructor(...args) {
@@ -10,4 +10,4 @@ const keyEnter = "Enter";
10
10
  const keyHome = "Home";
11
11
  const keySpace = " ";
12
12
 
13
- export { keyArrowRight as a, keyHome as b, keyEnd as c, keyArrowUp as d, keyArrowDown as e, keyEnter as f, keySpace as g, keyArrowLeft as k };
13
+ export { keyArrowRight as a, keyEnter as b, keyHome as c, keyEnd as d, keyArrowUp as e, keyArrowDown as f, keySpace as g, keyArrowLeft as k };
@@ -2,7 +2,7 @@
2
2
 
3
3
  const keyCodes$1 = require('./key-codes2.cjs');
4
4
  const index = require('./index.cjs');
5
- const definition = require('./definition35.cjs');
5
+ const definition = require('./definition36.cjs');
6
6
  const ariaGlobal = require('./aria-global.cjs');
7
7
  const applyMixins = require('./apply-mixins.cjs');
8
8
  const keyCodes = require('./key-codes.cjs');
package/shared/listbox.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { k as keyArrowLeft, a as keyArrowRight } from './key-codes2.js';
2
2
  import { F as FoundationElement, O as Observable, _ as __decorate, a as attr, o as observable, D as DOM, n as nullableNumberConverter } from './index.js';
3
- import { i as isListboxOption } from './definition35.js';
3
+ import { i as isListboxOption } from './definition36.js';
4
4
  import { A as ARIAGlobalStatesAndProperties } from './aria-global.js';
5
5
  import { a as applyMixins } from './apply-mixins.js';
6
6
  import { a as keySpace, b as keyEscape, k as keyEnter, c as keyTab, d as keyEnd, e as keyArrowUp, f as keyArrowDown, g as keyHome } from './key-codes.js';
@@ -6,8 +6,10 @@ import type { DialogLocale } from '../../lib/dialog/locale';
6
6
  import type { BannerLocale } from '../../lib/banner/locale';
7
7
  import type { NumberFieldLocale } from '../../lib/number-field/locale';
8
8
  import type { SplitButtonLocale } from '../../lib/split-button/locale';
9
+ import type { VideoPlayerLocale } from '../../lib/video-player/locale';
9
10
  import type { TimePickerLocale } from '../../lib/time-picker/locale';
10
11
  import type { RangeSliderLocale } from '../../lib/range-slider/locale';
12
+ import type { DialPadLocale } from '../../lib/dial-pad/locale';
11
13
  export interface Locale {
12
14
  datePicker: DatePickerLocale;
13
15
  timePicker: TimePickerLocale;
@@ -18,5 +20,7 @@ export interface Locale {
18
20
  banner: BannerLocale;
19
21
  numberField: NumberFieldLocale;
20
22
  splitButton: SplitButtonLocale;
23
+ videoPlayer: VideoPlayerLocale;
21
24
  rangeSlider: RangeSliderLocale;
25
+ dialPad: DialPadLocale;
22
26
  }
@@ -7,6 +7,7 @@ export interface FormElement {
7
7
  }
8
8
  export interface FormElementHelperText {
9
9
  helperText?: string;
10
+ _helperTextSlottedContent?: HTMLElement[];
10
11
  }
11
12
  export interface FormElementSuccessText {
12
13
  successText?: string;
@@ -42,8 +43,7 @@ export declare function formElements<T extends {
42
43
  validate: () => void;
43
44
  };
44
45
  } & T;
45
- type FeedbackType = 'error' | 'helper' | 'success';
46
- export declare function getFeedbackTemplate(messageType: FeedbackType, context: ElementDefinitionContext): import("@microsoft/fast-element").ViewTemplate<FormElement, any>;
46
+ export declare function getFeedbackTemplate(context: ElementDefinitionContext): import("@microsoft/fast-element").ViewTemplate<Partial<FormElement & FormElementHelperText & FormElementSuccessText & ErrorText>, any>;
47
47
  export declare function errorText<T extends {
48
48
  new (...args: any[]): Record<string, any>;
49
49
  }>(constructor: T): {
@@ -56,4 +56,3 @@ export declare function errorText<T extends {
56
56
  "__#2@#clearCustomErrorAndRevalidate"(): void;
57
57
  };
58
58
  } & T;
59
- export {};
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
3
  const definition$2 = require('./definition11.cjs');
4
- const definition = require('./definition61.cjs');
5
- const definition$1 = require('./definition54.cjs');
6
- const definition$3 = require('./definition21.cjs');
4
+ const definition = require('./definition63.cjs');
5
+ const definition$1 = require('./definition55.cjs');
6
+ const definition$3 = require('./definition22.cjs');
7
7
  const index = require('./index.cjs');
8
8
  const ref = require('./ref.cjs');
9
+ const slotted = require('./slotted.cjs');
9
10
  const repeat = require('./repeat.cjs');
10
11
  const when = require('./when.cjs');
11
12
  const classNames = require('./class-names.cjs');
@@ -13,8 +14,8 @@ require('./affix.cjs');
13
14
  const index$1 = require('./index2.cjs');
14
15
  const localized = require('./localized.cjs');
15
16
  const trappedFocus = require('./trapped-focus.cjs');
17
+ const applyMixinsWithObservables = require('./applyMixinsWithObservables.cjs');
16
18
  const formAssociated = require('./form-associated.cjs');
17
- const applyMixins = require('./apply-mixins.cjs');
18
19
 
19
20
  const styles = ":host{display:inline-block}.base{display:inline-block;inline-size:100%}.control{inline-size:100%}.dialog{display:inline-flex;flex-direction:column;padding:12px;gap:12px}.dialog .footer{display:flex;align-items:center;justify-content:flex-end;padding:8px;gap:8px}.segments{display:flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{display:flex;align-items:center;padding-block:8px}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:6px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px;--focus-inset: -2px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px));color:var(--vvd-color-canvas-text)}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button:disabled{cursor:not-allowed}\n";
20
21
 
@@ -5519,6 +5520,11 @@ const DatePickerBaseTemplate = (context, _) => {
5519
5520
  @input="${(x, c) => x._onTextFieldInput(c.event)}"
5520
5521
  @change="${(x) => x._onTextFieldChange()}"
5521
5522
  >
5523
+ <slot
5524
+ slot="${(x) => x._helperTextSlottedContent?.length ? "helper-text" : void 0}"
5525
+ name="helper-text"
5526
+ ${slotted.slotted("_helperTextSlottedContent")}
5527
+ ></slot>
5522
5528
  <${buttonTag}
5523
5529
  id="calendar-button"
5524
5530
  ${ref.ref("_calendarButtonEl")}
@@ -6201,7 +6207,12 @@ __decorateClass([
6201
6207
  __decorateClass([
6202
6208
  index.volatile
6203
6209
  ], DatePickerBase.prototype, "_tabbableMonth", 1);
6204
- applyMixins.applyMixins(DatePickerBase, localized.Localized, index$1.FormElementHelperText, trappedFocus.TrappedFocus);
6210
+ applyMixinsWithObservables.applyMixinsWithObservables(
6211
+ DatePickerBase,
6212
+ localized.Localized,
6213
+ index$1.FormElementHelperText,
6214
+ trappedFocus.TrappedFocus
6215
+ );
6205
6216
 
6206
6217
  const formatPresentationDate = (dateStr, locale) => {
6207
6218
  const date = parseDateStr(dateStr);
@@ -1,9 +1,10 @@
1
1
  import { B as Button } from './definition11.js';
2
- import { P as Popup } from './definition61.js';
3
- import { T as TextField } from './definition54.js';
4
- import { D as Divider } from './definition21.js';
2
+ import { P as Popup } from './definition63.js';
3
+ import { T as TextField } from './definition55.js';
4
+ import { D as Divider } from './definition22.js';
5
5
  import { h as html, F as FoundationElement, a as attr, o as observable, v as volatile, D as DOM } from './index.js';
6
6
  import { r as ref } from './ref.js';
7
+ import { s as slotted } from './slotted.js';
7
8
  import { r as repeat } from './repeat.js';
8
9
  import { w as when } from './when.js';
9
10
  import { c as classNames } from './class-names.js';
@@ -11,8 +12,8 @@ import './affix.js';
11
12
  import { a as FormElementHelperText } from './index2.js';
12
13
  import { L as Localized } from './localized.js';
13
14
  import { T as TrappedFocus } from './trapped-focus.js';
15
+ import { a as applyMixinsWithObservables } from './applyMixinsWithObservables.js';
14
16
  import { F as FormAssociated } from './form-associated.js';
15
- import { a as applyMixins } from './apply-mixins.js';
16
17
 
17
18
  const styles = ":host{display:inline-block}.base{display:inline-block;inline-size:100%}.control{inline-size:100%}.dialog{display:inline-flex;flex-direction:column;padding:12px;gap:12px}.dialog .footer{display:flex;align-items:center;justify-content:flex-end;padding:8px;gap:8px}.segments{display:flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{display:flex;align-items:center;padding-block:8px}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:6px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px;--focus-inset: -2px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px));color:var(--vvd-color-canvas-text)}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button:disabled{cursor:not-allowed}\n";
18
19
 
@@ -5517,6 +5518,11 @@ const DatePickerBaseTemplate = (context, _) => {
5517
5518
  @input="${(x, c) => x._onTextFieldInput(c.event)}"
5518
5519
  @change="${(x) => x._onTextFieldChange()}"
5519
5520
  >
5521
+ <slot
5522
+ slot="${(x) => x._helperTextSlottedContent?.length ? "helper-text" : void 0}"
5523
+ name="helper-text"
5524
+ ${slotted("_helperTextSlottedContent")}
5525
+ ></slot>
5520
5526
  <${buttonTag}
5521
5527
  id="calendar-button"
5522
5528
  ${ref("_calendarButtonEl")}
@@ -6199,7 +6205,12 @@ __decorateClass([
6199
6205
  __decorateClass([
6200
6206
  volatile
6201
6207
  ], DatePickerBase.prototype, "_tabbableMonth", 1);
6202
- applyMixins(DatePickerBase, Localized, FormElementHelperText, TrappedFocus);
6208
+ applyMixinsWithObservables(
6209
+ DatePickerBase,
6210
+ Localized,
6211
+ FormElementHelperText,
6212
+ TrappedFocus
6213
+ );
6203
6214
 
6204
6215
  const formatPresentationDate = (dateStr, locale) => {
6205
6216
  const date = parseDateStr(dateStr);