@vonage/vivid 3.51.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 (340) 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/appearance-ui/index.cjs +19 -11
  9. package/appearance-ui/index.js +19 -11
  10. package/audio-player/index.cjs +4 -3
  11. package/audio-player/index.js +4 -3
  12. package/avatar/index.cjs +1 -1
  13. package/avatar/index.js +1 -1
  14. package/badge/index.cjs +1 -1
  15. package/badge/index.js +1 -1
  16. package/banner/index.cjs +2 -2
  17. package/banner/index.js +2 -2
  18. package/breadcrumb-item/index.cjs +1 -1
  19. package/breadcrumb-item/index.js +1 -1
  20. package/button/index.cjs +2 -2
  21. package/button/index.js +2 -2
  22. package/card/index.cjs +2 -2
  23. package/card/index.js +2 -2
  24. package/checkbox/index.cjs +3 -2
  25. package/checkbox/index.js +3 -2
  26. package/combobox/index.cjs +5 -8
  27. package/combobox/index.js +5 -8
  28. package/custom-elements.json +2310 -769
  29. package/data-grid/index.cjs +1 -1
  30. package/data-grid/index.js +1 -1
  31. package/date-picker/index.cjs +7 -9
  32. package/date-picker/index.js +7 -9
  33. package/date-range-picker/index.cjs +7 -9
  34. package/date-range-picker/index.js +7 -9
  35. package/dial-pad/index.cjs +33 -0
  36. package/dial-pad/index.js +31 -0
  37. package/dialog/index.cjs +4 -4
  38. package/dialog/index.js +4 -4
  39. package/divider/index.cjs +1 -1
  40. package/divider/index.js +1 -1
  41. package/elevation/index.cjs +1 -1
  42. package/elevation/index.js +1 -1
  43. package/empty-state/index.cjs +2 -2
  44. package/empty-state/index.js +2 -2
  45. package/fab/index.cjs +2 -2
  46. package/fab/index.js +2 -2
  47. package/file-picker/index.cjs +4 -5
  48. package/file-picker/index.js +4 -5
  49. package/header/index.cjs +2 -2
  50. package/header/index.js +2 -2
  51. package/icon/index.cjs +1 -1
  52. package/icon/index.js +1 -1
  53. package/index.cjs +135 -123
  54. package/index.js +48 -46
  55. package/layout/index.cjs +1 -1
  56. package/layout/index.js +1 -1
  57. package/lib/avatar/definition.d.ts +1 -1
  58. package/lib/button/button.d.ts +1 -0
  59. package/lib/button/definition.d.ts +1 -1
  60. package/lib/calendar-event/definition.d.ts +1 -1
  61. package/lib/components.d.ts +3 -0
  62. package/lib/dial-pad/definition.d.ts +3 -0
  63. package/lib/dial-pad/dial-pad.d.ts +14 -0
  64. package/lib/dial-pad/dial-pad.template.d.ts +4 -0
  65. package/lib/dial-pad/locale.d.ts +18 -0
  66. package/lib/enums.d.ts +6 -0
  67. package/lib/layout/definition.d.ts +1 -1
  68. package/lib/menu-item/menu-item.d.ts +3 -0
  69. package/lib/range-slider/definition.d.ts +3 -0
  70. package/lib/range-slider/locale.d.ts +4 -0
  71. package/lib/range-slider/range-slider.d.ts +32 -0
  72. package/lib/range-slider/range-slider.form-associated.d.ts +10 -0
  73. package/lib/range-slider/range-slider.template.d.ts +4 -0
  74. package/lib/range-slider/utils/lerp.d.ts +2 -0
  75. package/lib/range-slider/utils/roundToStepValue.d.ts +1 -0
  76. package/lib/slider/slider.template.d.ts +1 -0
  77. package/lib/split-button/definition.d.ts +1 -1
  78. package/lib/text-anchor/definition.d.ts +1 -0
  79. package/lib/text-anchor/text-anchor.d.ts +5 -0
  80. package/lib/video-player/definition.d.ts +3 -0
  81. package/lib/video-player/locale.d.ts +1 -0
  82. package/lib/video-player/video-player.d.ts +17 -0
  83. package/lib/video-player/video-player.template.d.ts +4 -0
  84. package/listbox/index.cjs +25 -24
  85. package/listbox/index.js +25 -24
  86. package/locales/en-GB.cjs +34 -0
  87. package/locales/en-GB.js +34 -0
  88. package/locales/en-US.cjs +202 -0
  89. package/locales/en-US.js +202 -0
  90. package/locales/ja-JP.cjs +202 -1
  91. package/locales/ja-JP.js +202 -1
  92. package/locales/zh-CN.cjs +203 -0
  93. package/locales/zh-CN.js +203 -0
  94. package/menu/index.cjs +7 -7
  95. package/menu/index.js +7 -7
  96. package/menu-item/index.cjs +4 -4
  97. package/menu-item/index.js +4 -4
  98. package/nav/index.cjs +1 -1
  99. package/nav/index.js +1 -1
  100. package/nav-disclosure/index.cjs +2 -2
  101. package/nav-disclosure/index.js +2 -2
  102. package/nav-item/index.cjs +2 -2
  103. package/nav-item/index.js +2 -2
  104. package/note/index.cjs +2 -2
  105. package/note/index.js +2 -2
  106. package/number-field/index.cjs +5 -6
  107. package/number-field/index.js +5 -6
  108. package/option/index.cjs +2 -2
  109. package/option/index.js +2 -2
  110. package/package.json +34 -34
  111. package/pagination/index.cjs +3 -3
  112. package/pagination/index.js +3 -3
  113. package/popup/index.cjs +4 -4
  114. package/popup/index.js +4 -4
  115. package/progress/index.cjs +1 -1
  116. package/progress/index.js +1 -1
  117. package/progress-ring/index.cjs +1 -1
  118. package/progress-ring/index.js +1 -1
  119. package/radio/index.cjs +1 -1
  120. package/radio/index.js +1 -1
  121. package/radio-group/index.cjs +1 -1
  122. package/radio-group/index.js +1 -1
  123. package/range-slider/index.cjs +22 -0
  124. package/range-slider/index.js +20 -0
  125. package/select/index.cjs +7 -6
  126. package/select/index.js +7 -6
  127. package/selectable-box/index.cjs +5 -4
  128. package/selectable-box/index.js +5 -4
  129. package/shared/Reflector.cjs +5 -1
  130. package/shared/Reflector.js +5 -1
  131. package/shared/affix.cjs +11 -4
  132. package/shared/affix.js +12 -4
  133. package/shared/anchored.cjs +8 -2
  134. package/shared/anchored.js +8 -2
  135. package/shared/applyMixinsWithObservables.cjs +15 -0
  136. package/shared/applyMixinsWithObservables.js +13 -0
  137. package/shared/definition.cjs +9 -4
  138. package/shared/definition.js +9 -4
  139. package/shared/definition10.cjs +5 -5
  140. package/shared/definition10.js +5 -5
  141. package/shared/definition11.cjs +77 -49
  142. package/shared/definition11.js +78 -50
  143. package/shared/definition12.cjs +12 -14
  144. package/shared/definition12.js +12 -14
  145. package/shared/definition13.cjs +118 -75
  146. package/shared/definition13.js +118 -75
  147. package/shared/definition14.cjs +34 -33
  148. package/shared/definition14.js +34 -33
  149. package/shared/definition15.cjs +24 -12
  150. package/shared/definition15.js +24 -12
  151. package/shared/definition16.cjs +38 -43
  152. package/shared/definition16.js +38 -43
  153. package/shared/definition17.cjs +126 -66
  154. package/shared/definition17.js +127 -67
  155. package/shared/definition18.cjs +31 -15
  156. package/shared/definition18.js +31 -15
  157. package/shared/definition19.cjs +117 -81
  158. package/shared/definition19.js +117 -81
  159. package/shared/definition2.cjs +10 -5
  160. package/shared/definition2.js +10 -5
  161. package/shared/definition20.cjs +187 -227
  162. package/shared/definition20.js +183 -223
  163. package/shared/definition21.cjs +262 -69
  164. package/shared/definition21.js +261 -67
  165. package/shared/definition22.cjs +66 -61
  166. package/shared/definition22.js +64 -60
  167. package/shared/definition23.cjs +42 -77
  168. package/shared/definition23.js +41 -76
  169. package/shared/definition24.cjs +65 -2350
  170. package/shared/definition24.js +64 -2349
  171. package/shared/definition25.cjs +2402 -48
  172. package/shared/definition25.js +2401 -47
  173. package/shared/definition26.cjs +62 -28
  174. package/shared/definition26.js +61 -27
  175. package/shared/definition27.cjs +28 -54
  176. package/shared/definition27.js +27 -53
  177. package/shared/definition28.cjs +39 -819
  178. package/shared/definition28.js +38 -817
  179. package/shared/definition29.cjs +893 -54
  180. package/shared/definition29.js +893 -55
  181. package/shared/definition3.cjs +7 -10
  182. package/shared/definition3.js +7 -10
  183. package/shared/definition30.cjs +69 -85
  184. package/shared/definition30.js +68 -84
  185. package/shared/definition31.cjs +86 -23
  186. package/shared/definition31.js +86 -23
  187. package/shared/definition32.cjs +24 -14
  188. package/shared/definition32.js +23 -13
  189. package/shared/definition33.cjs +11 -53
  190. package/shared/definition33.js +10 -52
  191. package/shared/definition34.cjs +28 -500
  192. package/shared/definition34.js +28 -500
  193. package/shared/definition35.cjs +447 -194
  194. package/shared/definition35.js +447 -192
  195. package/shared/definition36.cjs +258 -188
  196. package/shared/definition36.js +255 -187
  197. package/shared/definition37.cjs +204 -78
  198. package/shared/definition37.js +203 -76
  199. package/shared/definition38.cjs +55 -51
  200. package/shared/definition38.js +52 -49
  201. package/shared/definition39.cjs +65 -423
  202. package/shared/definition39.js +64 -422
  203. package/shared/definition4.cjs +24 -12
  204. package/shared/definition4.js +24 -12
  205. package/shared/definition40.cjs +447 -35
  206. package/shared/definition40.js +444 -32
  207. package/shared/definition41.cjs +35 -678
  208. package/shared/definition41.js +34 -677
  209. package/shared/definition42.cjs +544 -99
  210. package/shared/definition42.js +543 -98
  211. package/shared/definition43.cjs +696 -77
  212. package/shared/definition43.js +695 -76
  213. package/shared/definition44.cjs +113 -563
  214. package/shared/definition44.js +112 -561
  215. package/shared/definition45.cjs +77 -117
  216. package/shared/definition45.js +75 -115
  217. package/shared/definition46.cjs +474 -86
  218. package/shared/definition46.js +474 -87
  219. package/shared/definition47.cjs +140 -23
  220. package/shared/definition47.js +139 -22
  221. package/shared/definition48.cjs +132 -57
  222. package/shared/definition48.js +131 -56
  223. package/shared/definition49.cjs +18 -524
  224. package/shared/definition49.js +17 -523
  225. package/shared/definition5.cjs +20 -17
  226. package/shared/definition5.js +20 -17
  227. package/shared/definition50.cjs +73 -25
  228. package/shared/definition50.js +72 -24
  229. package/shared/definition51.cjs +506 -99
  230. package/shared/definition51.js +505 -99
  231. package/shared/definition52.cjs +29 -277
  232. package/shared/definition52.js +28 -276
  233. package/shared/definition53.cjs +97 -256
  234. package/shared/definition53.js +97 -255
  235. package/shared/definition54.cjs +287 -769
  236. package/shared/definition54.js +287 -769
  237. package/shared/definition55.cjs +305 -105
  238. package/shared/definition55.js +304 -104
  239. package/shared/definition56.cjs +841 -81
  240. package/shared/definition56.js +840 -80
  241. package/shared/definition57.cjs +153 -69
  242. package/shared/definition57.js +152 -68
  243. package/shared/definition58.cjs +138 -299
  244. package/shared/definition58.js +137 -298
  245. package/shared/definition59.cjs +72 -27
  246. package/shared/definition59.js +71 -26
  247. package/shared/definition6.cjs +4 -5
  248. package/shared/definition6.js +4 -5
  249. package/shared/definition60.cjs +279 -1780
  250. package/shared/definition60.js +278 -1779
  251. package/shared/definition61.cjs +65870 -11
  252. package/shared/definition61.js +65869 -11
  253. package/shared/definition62.cjs +50 -0
  254. package/shared/definition62.js +46 -0
  255. package/shared/definition63.cjs +1828 -0
  256. package/shared/definition63.js +1824 -0
  257. package/shared/definition7.cjs +8 -6
  258. package/shared/definition7.js +8 -6
  259. package/shared/definition8.cjs +27 -20
  260. package/shared/definition8.js +27 -20
  261. package/shared/definition9.cjs +7 -10
  262. package/shared/definition9.js +7 -10
  263. package/shared/enums.cjs +8 -0
  264. package/shared/enums.js +8 -1
  265. package/shared/icon.cjs +7 -2
  266. package/shared/icon.js +7 -2
  267. package/shared/index2.cjs +67 -38
  268. package/shared/index2.js +67 -38
  269. package/shared/key-codes2.cjs +8 -0
  270. package/shared/key-codes2.js +5 -1
  271. package/shared/listbox.cjs +1 -1
  272. package/shared/listbox.js +1 -1
  273. package/shared/localization/Locale.d.ts +6 -0
  274. package/shared/patterns/form-elements/form-elements.d.ts +2 -3
  275. package/shared/patterns/index.d.ts +0 -1
  276. package/shared/presentationDate.cjs +140 -81
  277. package/shared/presentationDate.js +140 -81
  278. package/shared/slider.template.cjs +71 -0
  279. package/shared/slider.template.js +67 -0
  280. package/shared/text-anchor.cjs +6 -0
  281. package/shared/text-anchor.js +6 -0
  282. package/shared/text-anchor.template.cjs +33 -33
  283. package/shared/text-anchor.template.js +33 -33
  284. package/shared/text-field.cjs +1 -1
  285. package/shared/text-field.js +1 -1
  286. package/shared/utils/applyMixinsWithObservables.d.ts +1 -0
  287. package/side-drawer/index.cjs +1 -1
  288. package/side-drawer/index.js +1 -1
  289. package/slider/index.cjs +2 -1
  290. package/slider/index.js +2 -1
  291. package/split-button/index.cjs +2 -2
  292. package/split-button/index.js +2 -2
  293. package/style.css +1 -0
  294. package/styles/core/all.css +1 -1
  295. package/styles/core/theme.css +1 -1
  296. package/styles/core/typography.css +1 -1
  297. package/styles/fonts/spezia-variable.css +39 -13
  298. package/styles/tokens/theme-dark.css +4 -4
  299. package/styles/tokens/theme-light.css +4 -4
  300. package/styles/tokens/vivid-2-compat.css +4 -2
  301. package/switch/index.cjs +2 -2
  302. package/switch/index.js +2 -2
  303. package/tab/index.cjs +2 -2
  304. package/tab/index.js +2 -2
  305. package/tab-panel/index.cjs +1 -1
  306. package/tab-panel/index.js +1 -1
  307. package/tabs/index.cjs +4 -4
  308. package/tabs/index.js +4 -4
  309. package/tag/index.cjs +2 -2
  310. package/tag/index.js +2 -2
  311. package/tag-group/index.cjs +1 -1
  312. package/tag-group/index.js +1 -1
  313. package/text-area/index.cjs +4 -3
  314. package/text-area/index.js +4 -3
  315. package/text-field/index.cjs +4 -6
  316. package/text-field/index.js +4 -6
  317. package/time-picker/index.cjs +8 -10
  318. package/time-picker/index.js +8 -10
  319. package/toggletip/index.cjs +5 -5
  320. package/toggletip/index.js +5 -5
  321. package/tooltip/index.cjs +5 -5
  322. package/tooltip/index.js +5 -5
  323. package/tree-item/index.cjs +2 -2
  324. package/tree-item/index.js +2 -2
  325. package/tree-view/index.cjs +1 -1
  326. package/tree-view/index.js +1 -1
  327. package/video-player/index.cjs +17 -0
  328. package/video-player/index.js +15 -0
  329. package/vivid.api.json +428 -1
  330. package/focus/index.cjs +0 -7
  331. package/focus/index.js +0 -5
  332. package/lib/focus/definition.d.ts +0 -3
  333. package/lib/focus/focus.d.ts +0 -3
  334. package/lib/focus/focus.template.d.ts +0 -4
  335. package/lib/popup/popup.d.ts +0 -21
  336. package/shared/focus.cjs +0 -8
  337. package/shared/focus.js +0 -6
  338. package/shared/focus2.cjs +0 -11
  339. package/shared/focus2.js +0 -9
  340. package/shared/patterns/focus.d.ts +0 -3
@@ -1,9 +1,10 @@
1
1
  import { B as Button } from './definition11.js';
2
- import { P as Popup } from './definition60.js';
3
- import { T as TextField } from './definition53.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,10 +12,10 @@ 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
- 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{block-size:24px;border-radius:8px;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;aspect-ratio:1/1;block-size:28px;border-radius:50%;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;aspect-ratio:1/1;block-size:48px;border-radius:50%;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-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-primary);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(:hover,.hover):where(:not(:disabled,.disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary);--_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-primary);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected,[aria-current]):where(:not(:disabled,.disabled)){--_appearance-color-text: var(--_connotation-color-primary);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected,[aria-current]):where(:hover,.hover):where(:not(:disabled,.disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-primary);--_appearance-color-fill: var(--_connotation-color-pale);--_appearance-color-outline: transparent}.button:where(.selected,[aria-current]):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
+ 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
 
19
20
  function _typeof(obj) {
20
21
  "@babel/helpers - typeof";
@@ -5277,26 +5278,32 @@ function renderDialogHeader(context) {
5277
5278
  `
5278
5279
  )}
5279
5280
  <div class="title">
5280
- ${when((x) => x.titleClickable, html`
5281
- <button
5282
- tabindex="1"
5283
- id="${(x) => `grid-label-${x.id}`}"
5284
- class="title-action button"
5285
- aria-live="polite"
5286
- @click="${(_, c) => c.parent._onTitleActionClick()}"
5287
- >
5288
- ${(x) => x.title}
5289
- </button>
5290
- `)}
5291
- ${when((x) => !x.titleClickable, html`
5292
- <div
5293
- id="${(x) => `grid-label-${x.id}`}"
5294
- class="title-action"
5295
- aria-live="polite"
5296
- >
5297
- ${(x) => x.title}
5298
- </div>
5299
- `)}
5281
+ ${when(
5282
+ (x) => x.titleClickable,
5283
+ html`
5284
+ <button
5285
+ tabindex="1"
5286
+ id="${(x) => `grid-label-${x.id}`}"
5287
+ class="title-action button"
5288
+ aria-live="polite"
5289
+ @click="${(_, c) => c.parent._onTitleActionClick()}"
5290
+ >
5291
+ ${(x) => x.title}
5292
+ </button>
5293
+ `
5294
+ )}
5295
+ ${when(
5296
+ (x) => !x.titleClickable,
5297
+ html`
5298
+ <div
5299
+ id="${(x) => `grid-label-${x.id}`}"
5300
+ class="title-action"
5301
+ aria-live="polite"
5302
+ >
5303
+ ${(x) => x.title}
5304
+ </div>
5305
+ `
5306
+ )}
5300
5307
  </div>
5301
5308
 
5302
5309
  ${when(
@@ -5353,9 +5360,8 @@ function renderCalendarGrid(context) {
5353
5360
  <${dividerTag} class="calendar-separator" role="presentation"></${dividerTag}>
5354
5361
  ${repeat(
5355
5362
  (x) => x.calendar.grid,
5356
- html`
5357
- <div class="calendar-week" role="row">
5358
- ${repeat(
5363
+ html` <div class="calendar-week" role="row">
5364
+ ${repeat(
5359
5365
  (x) => x,
5360
5366
  html`
5361
5367
  ${when(
@@ -5364,40 +5370,60 @@ function renderCalendarGrid(context) {
5364
5370
  )}
5365
5371
  ${when(
5366
5372
  (x, c) => !c.parentContext.parentContext.parent._hideDatesOutsideMonth || !x.isOutsideMonth,
5367
- html`
5368
- <span role="gridcell">
5369
- <button
5370
- class="${(x, c) => classNames(
5373
+ html` <span role="gridcell">
5374
+ <button
5375
+ class="${(x, c) => classNames(
5371
5376
  "calendar-day",
5372
5377
  "button",
5373
- ["current", x.date === c.parentContext.parentContext.parent._currentDate],
5374
- ["selected", c.parentContext.parentContext.parent._isDateSelected(x.date)],
5375
- ["range", c.parentContext.parentContext.parent._isDateInSelectedRange(x.date)],
5376
- ["start", c.parentContext.parentContext.parent._isDateRangeStart(x.date)],
5377
- ["end", c.parentContext.parentContext.parent._isDateRangeEnd(x.date)],
5378
+ [
5379
+ "current",
5380
+ x.date === c.parentContext.parentContext.parent._currentDate
5381
+ ],
5382
+ [
5383
+ "selected",
5384
+ c.parentContext.parentContext.parent._isDateSelected(x.date)
5385
+ ],
5386
+ [
5387
+ "range",
5388
+ c.parentContext.parentContext.parent._isDateInSelectedRange(
5389
+ x.date
5390
+ )
5391
+ ],
5392
+ [
5393
+ "start",
5394
+ c.parentContext.parentContext.parent._isDateRangeStart(
5395
+ x.date
5396
+ )
5397
+ ],
5398
+ [
5399
+ "end",
5400
+ c.parentContext.parentContext.parent._isDateRangeEnd(x.date)
5401
+ ],
5378
5402
  ["outside-month", x.isOutsideMonth]
5379
5403
  )}"
5380
- ?disabled="${(x, c) => !c.parentContext.parentContext.parent._isDateInValidRange(x.date)}"
5381
- tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ? 2 : -1}"
5382
- aria-selected="${(x, c) => c.parentContext.parentContext.parent._isDateAriaSelected(x.date)}"
5383
- data-date="${(x) => x.date}"
5384
- @click="${(x, c) => c.parentContext.parentContext.parent._onDateClick(x.date)}"
5385
- @focus="${(x, c) => c.parentContext.parentContext.parent._onDateFocus(x.date)}"
5386
- @mouseenter="${(x, c) => c.parentContext.parentContext.parent._onDateMouseEnter(x.date)}"
5387
- @mouseleave="${(x, c) => c.parentContext.parentContext.parent._onDateMouseLeave(x.date)}"
5388
- @keydown="${(x, c) => c.parentContext.parentContext.parent._onDateKeydown(
5404
+ ?disabled="${(x, c) => !c.parentContext.parentContext.parent._isDateInValidRange(
5405
+ x.date
5406
+ )}"
5407
+ tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ? 2 : -1}"
5408
+ aria-selected="${(x, c) => c.parentContext.parentContext.parent._isDateAriaSelected(x.date)}"
5409
+ data-date="${(x) => x.date}"
5410
+ @click="${(x, c) => c.parentContext.parentContext.parent._onDateClick(x.date)}"
5411
+ @focus="${(x, c) => c.parentContext.parentContext.parent._onDateFocus(x.date)}"
5412
+ @mouseenter="${(x, c) => c.parentContext.parentContext.parent._onDateMouseEnter(x.date)}"
5413
+ @mouseleave="${(x, c) => c.parentContext.parentContext.parent._onDateMouseLeave(x.date)}"
5414
+ @keydown="${(x, c) => c.parentContext.parentContext.parent._onDateKeydown(
5389
5415
  x.date,
5390
5416
  c.event
5391
5417
  )}"
5392
- >
5393
- ${(x) => x.label}
5394
- </button>
5395
- </span>`
5418
+ >
5419
+ ${(x) => x.label}
5420
+ </button>
5421
+ </span>`
5396
5422
  )}
5397
5423
  </div>
5398
5424
  `
5399
5425
  )}
5400
- </div>`
5426
+ </div>`
5401
5427
  )}`;
5402
5428
  }
5403
5429
  function renderMonthPickerGrid(context) {
@@ -5419,9 +5445,9 @@ function renderMonthPickerGrid(context) {
5419
5445
  ${repeat(
5420
5446
  (x) => x,
5421
5447
  html`
5422
- <span role="gridcell">
5423
- <button
5424
- class="${(x, c) => classNames(
5448
+ <span role="gridcell">
5449
+ <button
5450
+ class="${(x, c) => classNames(
5425
5451
  "month",
5426
5452
  "button",
5427
5453
  [
@@ -5439,24 +5465,33 @@ function renderMonthPickerGrid(context) {
5439
5465
  )
5440
5466
  ]
5441
5467
  )}"
5442
- tabindex="${(x, c) => c.parentContext.parentContext.parent._tabbableMonth && areMonthsEqual(x.month, c.parentContext.parentContext.parent._tabbableMonth) ? 2 : -1}"
5443
- aria-label="${(x) => x.monthName}"
5444
- aria-selected="${(x, c) => areMonthsEqual(
5468
+ tabindex="${(x, c) => c.parentContext.parentContext.parent._tabbableMonth && areMonthsEqual(
5469
+ x.month,
5470
+ c.parentContext.parentContext.parent._tabbableMonth
5471
+ ) ? 2 : -1}"
5472
+ aria-label="${(x) => x.monthName}"
5473
+ aria-selected="${(x, c) => areMonthsEqual(
5445
5474
  x.month,
5446
5475
  c.parentContext.parentContext.parent._selectedMonth
5447
5476
  )}"
5448
- data-month="${(x) => monthToStr(x.month)}"
5449
- ?disabled="${(x, c) => !c.parentContext.parentContext.parent._isMonthInValidRange(x.month)}"
5450
- @click="${(x, c) => c.parentContext.parentContext.parent._onMonthClick(x.month)}"
5451
- @focus="${(x, c) => c.parentContext.parentContext.parent._onMonthFocus(x.month)}"
5452
- @keydown="${(x, c) => c.parentContext.parentContext.parent._onMonthKeydown(
5477
+ data-month="${(x) => monthToStr(x.month)}"
5478
+ ?disabled="${(x, c) => !c.parentContext.parentContext.parent._isMonthInValidRange(
5479
+ x.month
5480
+ )}"
5481
+ @click="${(x, c) => c.parentContext.parentContext.parent._onMonthClick(
5482
+ x.month
5483
+ )}"
5484
+ @focus="${(x, c) => c.parentContext.parentContext.parent._onMonthFocus(
5485
+ x.month
5486
+ )}"
5487
+ @keydown="${(x, c) => c.parentContext.parentContext.parent._onMonthKeydown(
5453
5488
  x.month,
5454
5489
  c.event
5455
5490
  )}"
5456
- >
5457
- ${(x) => x.label}
5458
- </button>
5459
- </span>
5491
+ >
5492
+ ${(x) => x.label}
5493
+ </button>
5494
+ </span>
5460
5495
  `
5461
5496
  )}
5462
5497
  </div>
@@ -5483,6 +5518,11 @@ const DatePickerBaseTemplate = (context, _) => {
5483
5518
  @input="${(x, c) => x._onTextFieldInput(c.event)}"
5484
5519
  @change="${(x) => x._onTextFieldChange()}"
5485
5520
  >
5521
+ <slot
5522
+ slot="${(x) => x._helperTextSlottedContent?.length ? "helper-text" : void 0}"
5523
+ name="helper-text"
5524
+ ${slotted("_helperTextSlottedContent")}
5525
+ ></slot>
5486
5526
  <${buttonTag}
5487
5527
  id="calendar-button"
5488
5528
  ${ref("_calendarButtonEl")}
@@ -5506,18 +5546,17 @@ const DatePickerBaseTemplate = (context, _) => {
5506
5546
  <div class="segments">
5507
5547
  ${repeat(
5508
5548
  (x) => x._segments,
5509
- html`
5510
- <div class="segment">
5511
- ${renderDialogHeader(context)}
5512
- ${when(
5549
+ html` <div class="segment">
5550
+ ${renderDialogHeader(context)}
5551
+ ${when(
5513
5552
  (x) => x.type === "month-picker",
5514
5553
  html`${renderMonthPickerGrid(context)}`
5515
5554
  )}
5516
- ${when(
5555
+ ${when(
5517
5556
  (x) => x.type === "calendar",
5518
5557
  html`${renderCalendarGrid(context)}`
5519
5558
  )}
5520
- </div>`
5559
+ </div>`
5521
5560
  )}
5522
5561
  </div>
5523
5562
  <div class="footer">
@@ -5574,7 +5613,12 @@ const buildDateGrid = ({ month, year }, getDay) => {
5574
5613
  let week = [];
5575
5614
  for (let i = 0; i < totalDaysInCalendar; i++) {
5576
5615
  const dayIndexInMonth = i - firstDayInWeek;
5577
- week.push(gridDate(addDays$1(firstDay, dayIndexInMonth), isOutsideMonth(dayIndexInMonth, daysInMonth)));
5616
+ week.push(
5617
+ gridDate(
5618
+ addDays$1(firstDay, dayIndexInMonth),
5619
+ isOutsideMonth(dayIndexInMonth, daysInMonth)
5620
+ )
5621
+ );
5578
5622
  if (week.length === 7) {
5579
5623
  grid.push(week);
5580
5624
  week = [];
@@ -5617,7 +5661,9 @@ const yearOfDate = (dateStr) => {
5617
5661
 
5618
5662
  class _DatePickerBase extends FoundationElement {
5619
5663
  }
5620
- class FormAssociatedDatePickerBase extends FormAssociated(_DatePickerBase) {
5664
+ class FormAssociatedDatePickerBase extends FormAssociated(
5665
+ _DatePickerBase
5666
+ ) {
5621
5667
  constructor() {
5622
5668
  super(...arguments);
5623
5669
  this.proxy = document.createElement("input");
@@ -5722,7 +5768,10 @@ class DatePickerBase extends FormAssociatedDatePickerBase {
5722
5768
  _adjustSelectedMonthToEnsureVisibilityOf(date) {
5723
5769
  const month = monthOfDate(date);
5724
5770
  const firstDisplayedMonth = this._selectedMonth;
5725
- const lastDisplayedMonth = addMonths(this._selectedMonth, this._numCalendars - 1);
5771
+ const lastDisplayedMonth = addMonths(
5772
+ this._selectedMonth,
5773
+ this._numCalendars - 1
5774
+ );
5726
5775
  if (compareMonths(month, firstDisplayedMonth) < 0) {
5727
5776
  this._selectedMonth = month;
5728
5777
  return true;
@@ -5832,7 +5881,9 @@ class DatePickerBase extends FormAssociatedDatePickerBase {
5832
5881
  } else {
5833
5882
  this.#openPopupIfPossible();
5834
5883
  DOM.processUpdates();
5835
- const tabbableDate = this.shadowRoot.querySelector(`[data-date="${this._tabbableDate}"]`);
5884
+ const tabbableDate = this.shadowRoot.querySelector(
5885
+ `[data-date="${this._tabbableDate}"]`
5886
+ );
5836
5887
  tabbableDate.focus();
5837
5888
  }
5838
5889
  }
@@ -6013,9 +6064,9 @@ class DatePickerBase extends FormAssociatedDatePickerBase {
6013
6064
  this._lastFocussedDate = date;
6014
6065
  }
6015
6066
  get _tabbableDate() {
6016
- const datesInSegments = this._segments.filter((segment) => segment.type === "calendar").flatMap(
6017
- (segment) => segment.calendar.grid.flat().map((d) => d.date)
6018
- );
6067
+ const datesInSegments = this._segments.filter(
6068
+ (segment) => segment.type === "calendar"
6069
+ ).flatMap((segment) => segment.calendar.grid.flat().map((d) => d.date));
6019
6070
  const candidates = [
6020
6071
  this._lastFocussedDate,
6021
6072
  ...this._getSelectedDates(),
@@ -6023,7 +6074,10 @@ class DatePickerBase extends FormAssociatedDatePickerBase {
6023
6074
  ...datesInSegments
6024
6075
  ];
6025
6076
  const firstVisibleMonth = this._selectedMonth;
6026
- const lastVisibleMonth = addMonths(this._selectedMonth, this._numCalendars - 1);
6077
+ const lastVisibleMonth = addMonths(
6078
+ this._selectedMonth,
6079
+ this._numCalendars - 1
6080
+ );
6027
6081
  return candidates.find(
6028
6082
  (date) => date && compareMonths(monthOfDate(date), firstVisibleMonth) >= 0 && compareMonths(monthOfDate(date), lastVisibleMonth) <= 0 && this._isDateInValidRange(date)
6029
6083
  ) ?? null;
@@ -6151,7 +6205,12 @@ __decorateClass([
6151
6205
  __decorateClass([
6152
6206
  volatile
6153
6207
  ], DatePickerBase.prototype, "_tabbableMonth", 1);
6154
- applyMixins(DatePickerBase, Localized, FormElementHelperText, TrappedFocus);
6208
+ applyMixinsWithObservables(
6209
+ DatePickerBase,
6210
+ Localized,
6211
+ FormElementHelperText,
6212
+ TrappedFocus
6213
+ );
6155
6214
 
6156
6215
  const formatPresentationDate = (dateStr, locale) => {
6157
6216
  const date = parseDateStr(dateStr);
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ const aria = require('./aria2.cjs');
4
+ const index = require('./index.cjs');
5
+ const ref = require('./ref.cjs');
6
+ const classNames = require('./class-names.cjs');
7
+
8
+ /**
9
+ * This method keeps a given value within the bounds of a min and max value. If the value
10
+ * is larger than the max, the minimum value will be returned. If the value is smaller than the minimum,
11
+ * the maximum will be returned. Otherwise, the value is returned un-changed.
12
+ */
13
+ /**
14
+ * Ensures that a value is between a min and max value. If value is lower than min, min will be returned.
15
+ * If value is greater than max, max will be returned.
16
+ */
17
+ function limit(min, max, value) {
18
+ return Math.min(Math.max(value, min), max);
19
+ }
20
+
21
+ const getClasses = ({ disabled, connotation }) => classNames.classNames(
22
+ "control",
23
+ ["disabled", Boolean(disabled)],
24
+ [`connotation-${connotation}`, Boolean(connotation)]
25
+ );
26
+ const getMarkersTemplate = (isHorizontal, numMarkers) => {
27
+ const placeholder = isHorizontal ? ["right", "center", "", "100% repeat-x"] : ["bottom", "top", "100%", "repeat-y"];
28
+ return index.html` <div
29
+ class="mark"
30
+ style="
31
+ background: linear-gradient(to ${placeholder[0]}, currentcolor 3px, transparent 0px)
32
+ 0px ${placeholder[1]} / ${placeholder[2]} calc((100% - 3px) / ${numMarkers}) ${placeholder[3]}
33
+ "
34
+ ></div>`;
35
+ };
36
+ const SliderTemplate = () => {
37
+ return index.html`<template
38
+ role="${(x) => x.ariaLabel ? "presentation" : null}"
39
+ >
40
+ <div
41
+ role="slider"
42
+ tabindex="${(x) => x.disabled ? null : 0}"
43
+ aria-label="${(x) => x.ariaLabel}"
44
+ aria-valuetext="${(x) => x.ariaValuetext || x.valueTextFormatter(x.value)}"
45
+ aria-valuenow="${(x) => x.value}"
46
+ aria-valuemin="${(x) => x.min}"
47
+ aria-valuemax="${(x) => x.max}"
48
+ aria-disabled="${(x) => x.disabled ? true : void 0}"
49
+ aria-orientation="${(x) => x.orientation}"
50
+ class="${getClasses} ${(x) => x.orientation}"
51
+ >
52
+ <div class="positioning-region">
53
+ <div ${ref.ref("track")} class="track">
54
+ <div class="track-start" style="${(x) => x.position}"></div>
55
+ ${(x) => x.markers ? getMarkersTemplate(
56
+ x.orientation === aria.Orientation.horizontal,
57
+ Math.floor((x.max - x.min) / x.step)
58
+ ) : void 0}
59
+ </div>
60
+ <div
61
+ ${ref.ref("thumb")}
62
+ class="thumb-container"
63
+ style="${(x) => x.position}"
64
+ ></div>
65
+ </div></div
66
+ ></template>`;
67
+ };
68
+
69
+ exports.SliderTemplate = SliderTemplate;
70
+ exports.getMarkersTemplate = getMarkersTemplate;
71
+ exports.limit = limit;
@@ -0,0 +1,67 @@
1
+ import { O as Orientation } from './aria2.js';
2
+ import { h as html } from './index.js';
3
+ import { r as ref } from './ref.js';
4
+ import { c as classNames } from './class-names.js';
5
+
6
+ /**
7
+ * This method keeps a given value within the bounds of a min and max value. If the value
8
+ * is larger than the max, the minimum value will be returned. If the value is smaller than the minimum,
9
+ * the maximum will be returned. Otherwise, the value is returned un-changed.
10
+ */
11
+ /**
12
+ * Ensures that a value is between a min and max value. If value is lower than min, min will be returned.
13
+ * If value is greater than max, max will be returned.
14
+ */
15
+ function limit(min, max, value) {
16
+ return Math.min(Math.max(value, min), max);
17
+ }
18
+
19
+ const getClasses = ({ disabled, connotation }) => classNames(
20
+ "control",
21
+ ["disabled", Boolean(disabled)],
22
+ [`connotation-${connotation}`, Boolean(connotation)]
23
+ );
24
+ const getMarkersTemplate = (isHorizontal, numMarkers) => {
25
+ const placeholder = isHorizontal ? ["right", "center", "", "100% repeat-x"] : ["bottom", "top", "100%", "repeat-y"];
26
+ return html` <div
27
+ class="mark"
28
+ style="
29
+ background: linear-gradient(to ${placeholder[0]}, currentcolor 3px, transparent 0px)
30
+ 0px ${placeholder[1]} / ${placeholder[2]} calc((100% - 3px) / ${numMarkers}) ${placeholder[3]}
31
+ "
32
+ ></div>`;
33
+ };
34
+ const SliderTemplate = () => {
35
+ return html`<template
36
+ role="${(x) => x.ariaLabel ? "presentation" : null}"
37
+ >
38
+ <div
39
+ role="slider"
40
+ tabindex="${(x) => x.disabled ? null : 0}"
41
+ aria-label="${(x) => x.ariaLabel}"
42
+ aria-valuetext="${(x) => x.ariaValuetext || x.valueTextFormatter(x.value)}"
43
+ aria-valuenow="${(x) => x.value}"
44
+ aria-valuemin="${(x) => x.min}"
45
+ aria-valuemax="${(x) => x.max}"
46
+ aria-disabled="${(x) => x.disabled ? true : void 0}"
47
+ aria-orientation="${(x) => x.orientation}"
48
+ class="${getClasses} ${(x) => x.orientation}"
49
+ >
50
+ <div class="positioning-region">
51
+ <div ${ref("track")} class="track">
52
+ <div class="track-start" style="${(x) => x.position}"></div>
53
+ ${(x) => x.markers ? getMarkersTemplate(
54
+ x.orientation === Orientation.horizontal,
55
+ Math.floor((x.max - x.min) / x.step)
56
+ ) : void 0}
57
+ </div>
58
+ <div
59
+ ${ref("thumb")}
60
+ class="thumb-container"
61
+ style="${(x) => x.position}"
62
+ ></div>
63
+ </div></div
64
+ ></template>`;
65
+ };
66
+
67
+ export { SliderTemplate as S, getMarkersTemplate as g, limit as l };
@@ -28,6 +28,12 @@ class TextAnchor extends anchor.Anchor {
28
28
  __decorateClass([
29
29
  index.attr
30
30
  ], TextAnchor.prototype, "text", 2);
31
+ __decorateClass([
32
+ index.attr
33
+ ], TextAnchor.prototype, "connotation", 2);
34
+ __decorateClass([
35
+ index.attr
36
+ ], TextAnchor.prototype, "appearance", 2);
31
37
  applyMixins.applyMixins(TextAnchor, affix.AffixIcon);
32
38
 
33
39
  exports.TextAnchor = TextAnchor;
@@ -26,6 +26,12 @@ class TextAnchor extends Anchor {
26
26
  __decorateClass([
27
27
  attr
28
28
  ], TextAnchor.prototype, "text", 2);
29
+ __decorateClass([
30
+ attr
31
+ ], TextAnchor.prototype, "connotation", 2);
32
+ __decorateClass([
33
+ attr
34
+ ], TextAnchor.prototype, "appearance", 2);
29
35
  applyMixins(TextAnchor, AffixIcon);
30
36
 
31
37
  export { TextAnchor as T };
@@ -5,44 +5,44 @@ const index = require('./index.cjs');
5
5
  const ref = require('./ref.cjs');
6
6
  const classNames = require('./class-names.cjs');
7
7
 
8
- const getClasses = ({ text }) => classNames.classNames(
8
+ const getClasses = ({ text, connotation, appearance }) => classNames.classNames(
9
9
  "control",
10
- ["icon-only", !text]
10
+ ["icon-only", !text],
11
+ [`connotation-${connotation}`, Boolean(connotation)],
12
+ [`appearance-${appearance}`, Boolean(appearance)]
11
13
  );
12
14
  const textAnchorTemplate = (context) => {
13
15
  const affixIconTemplate = affix.affixIconTemplateFactory(context);
14
16
  return index.html`<a
15
- class="${getClasses}"
16
- download="${(x) => x.download}"
17
- href="${(x) => x.href}"
18
- hreflang="${(x) => x.hreflang}"
19
- ping="${(x) => x.ping}"
20
- referrerpolicy="${(x) => x.referrerpolicy}"
21
- rel="${(x) => x.rel}"
22
- target="${(x) => x.target}"
23
- type="${(x) => x.type}"
24
- aria-atomic="${(x) => x.ariaAtomic}"
25
- aria-busy="${(x) => x.ariaBusy}"
26
- aria-current="${(x) => x.ariaCurrent}"
27
- aria-details="${(x) => x.ariaDetails}"
28
- aria-disabled="${(x) => x.ariaDisabled}"
29
- aria-errormessage="${(x) => x.ariaErrormessage}"
30
- aria-expanded="${(x) => x.ariaExpanded}"
31
- aria-haspopup="${(x) => x.ariaHaspopup}"
32
- aria-hidden="${(x) => x.ariaHidden}"
33
- aria-invalid="${(x) => x.ariaInvalid}"
34
- aria-keyshortcuts="${(x) => x.ariaKeyshortcuts}"
35
- aria-label="${(x) => x.ariaLabel}"
36
- aria-live="${(x) => x.ariaLive}"
37
- aria-relevant="${(x) => x.ariaRelevant}"
38
- aria-roledescription="${(x) => x.ariaRoledescription}"
39
- ${ref.ref("control")}
40
- >
41
- ${(x) => affixIconTemplate(x.icon, affix.IconWrapper.Slot)}
42
- ${(x) => x.text}
43
- ${(x) => x.getBodyTemplate?.() ?? ""}
44
- </a>
45
- `;
17
+ class="${getClasses}"
18
+ download="${(x) => x.download}"
19
+ href="${(x) => x.href}"
20
+ hreflang="${(x) => x.hreflang}"
21
+ ping="${(x) => x.ping}"
22
+ referrerpolicy="${(x) => x.referrerpolicy}"
23
+ rel="${(x) => x.rel}"
24
+ target="${(x) => x.target}"
25
+ type="${(x) => x.type}"
26
+ aria-atomic="${(x) => x.ariaAtomic}"
27
+ aria-busy="${(x) => x.ariaBusy}"
28
+ aria-current="${(x) => x.ariaCurrent}"
29
+ aria-details="${(x) => x.ariaDetails}"
30
+ aria-disabled="${(x) => x.ariaDisabled}"
31
+ aria-errormessage="${(x) => x.ariaErrormessage}"
32
+ aria-expanded="${(x) => x.ariaExpanded}"
33
+ aria-haspopup="${(x) => x.ariaHaspopup}"
34
+ aria-hidden="${(x) => x.ariaHidden}"
35
+ aria-invalid="${(x) => x.ariaInvalid}"
36
+ aria-keyshortcuts="${(x) => x.ariaKeyshortcuts}"
37
+ aria-label="${(x) => x.ariaLabel}"
38
+ aria-live="${(x) => x.ariaLive}"
39
+ aria-relevant="${(x) => x.ariaRelevant}"
40
+ aria-roledescription="${(x) => x.ariaRoledescription}"
41
+ ${ref.ref("control")}
42
+ >
43
+ ${(x) => affixIconTemplate(x.icon, affix.IconWrapper.Slot)} ${(x) => x.text}
44
+ ${(x) => x.getBodyTemplate?.() ?? ""}
45
+ </a> `;
46
46
  };
47
47
 
48
48
  exports.textAnchorTemplate = textAnchorTemplate;