@vonage/vivid 5.16.0 → 5.17.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 (317) hide show
  1. package/accordion/index.cjs +1 -1
  2. package/accordion/index.js +1 -1
  3. package/accordion-item/index.cjs +1 -1
  4. package/accordion-item/index.js +1 -1
  5. package/action-group/index.cjs +3 -3
  6. package/action-group/index.js +5 -5
  7. package/alert/index.cjs +3 -3
  8. package/alert/index.js +17 -17
  9. package/audio-player/index.cjs +16 -16
  10. package/audio-player/index.js +27 -27
  11. package/avatar/index.cjs +2 -2
  12. package/avatar/index.js +6 -6
  13. package/badge/index.cjs +2 -2
  14. package/badge/index.js +6 -6
  15. package/banner/index.cjs +3 -3
  16. package/banner/index.js +15 -15
  17. package/bundled/base-color-picker.cjs +2 -2
  18. package/bundled/base-color-picker.js +5 -5
  19. package/bundled/button.cjs +1 -1
  20. package/bundled/button.js +2 -2
  21. package/bundled/calendar-picker.template.cjs +2 -2
  22. package/bundled/calendar-picker.template.js +498 -498
  23. package/bundled/definition10.cjs +18 -30
  24. package/bundled/definition10.js +53 -155
  25. package/bundled/definition11.cjs +10 -19
  26. package/bundled/definition11.js +25 -74
  27. package/bundled/definition12.cjs +72 -18
  28. package/bundled/definition12.js +171 -107
  29. package/bundled/definition13.cjs +18 -17
  30. package/bundled/definition13.js +45 -65
  31. package/bundled/definition14.cjs +5 -10
  32. package/bundled/definition14.js +9 -27
  33. package/bundled/definition15.cjs +17 -71
  34. package/bundled/definition15.js +64 -181
  35. package/bundled/definition16.cjs +12 -4
  36. package/bundled/definition16.js +79 -14
  37. package/bundled/definition17.cjs +19 -13
  38. package/bundled/definition17.js +119 -70
  39. package/bundled/definition18.cjs +87 -12
  40. package/bundled/definition18.js +409 -52
  41. package/bundled/definition19.cjs +5 -87
  42. package/bundled/definition19.js +14 -422
  43. package/bundled/definition2.cjs +3 -3
  44. package/bundled/definition2.js +27 -27
  45. package/bundled/definition20.cjs +30 -5
  46. package/bundled/definition20.js +159 -9
  47. package/bundled/definition21.cjs +28 -19
  48. package/bundled/definition21.js +164 -47
  49. package/bundled/definition22.cjs +38 -23
  50. package/bundled/definition22.js +64 -82
  51. package/bundled/definition3.cjs +1 -1
  52. package/bundled/definition3.js +15 -15
  53. package/bundled/definition4.cjs +23 -38
  54. package/bundled/definition4.js +82 -64
  55. package/bundled/definition5.cjs +2 -2
  56. package/bundled/definition5.js +5 -5
  57. package/bundled/definition6.cjs +2 -2
  58. package/bundled/definition6.js +24 -24
  59. package/bundled/definition9.cjs +12 -30
  60. package/bundled/definition9.js +55 -148
  61. package/bundled/divider.cjs +1 -1
  62. package/bundled/divider.js +5 -5
  63. package/bundled/listbox.cjs +1 -1
  64. package/bundled/listbox.js +1 -1
  65. package/bundled/mixins.cjs +4 -4
  66. package/bundled/mixins.js +43 -43
  67. package/bundled/picker-field.template.cjs +7 -7
  68. package/bundled/picker-field.template.js +14 -14
  69. package/bundled/slider.template.cjs +7 -7
  70. package/bundled/slider.template.js +12 -12
  71. package/bundled/slottable-request.cjs +1 -1
  72. package/bundled/slottable-request.js +8 -38
  73. package/bundled/time-selection-picker.template.cjs +4 -4
  74. package/bundled/time-selection-picker.template.js +35 -35
  75. package/bundled/vivid-element.cjs +1 -1
  76. package/bundled/vivid-element.js +1 -1
  77. package/calendar/index.cjs +11 -11
  78. package/calendar/index.js +30 -237
  79. package/calendar-event/index.cjs +3 -3
  80. package/calendar-event/index.js +4 -4
  81. package/card/index.cjs +14 -11
  82. package/card/index.js +16 -13
  83. package/checkbox/index.cjs +1 -1
  84. package/checkbox/index.js +1 -1
  85. package/color-picker/definition.cjs +1 -1
  86. package/color-picker/definition.js +1 -1
  87. package/color-picker/index.cjs +6 -6
  88. package/color-picker/index.js +24 -24
  89. package/combobox/definition.cjs +1 -1
  90. package/combobox/definition.js +1 -1
  91. package/combobox/index.cjs +9 -8
  92. package/combobox/index.js +32 -28
  93. package/contextual-help/definition.cjs +1 -1
  94. package/contextual-help/definition.js +1 -1
  95. package/contextual-help/index.cjs +1 -1
  96. package/contextual-help/index.js +1 -1
  97. package/custom-elements.json +1027 -615
  98. package/data-grid/definition.js +1 -1
  99. package/data-grid/index.cjs +17 -17
  100. package/data-grid/index.js +261 -264
  101. package/date-picker/index.cjs +1 -1
  102. package/date-picker/index.js +12 -12
  103. package/date-range-picker/index.cjs +1 -1
  104. package/date-range-picker/index.js +7 -7
  105. package/date-time-picker/index.cjs +4 -4
  106. package/date-time-picker/index.js +24 -24
  107. package/dial-pad/index.cjs +3 -2
  108. package/dial-pad/index.js +6 -5
  109. package/dialog/index.cjs +4 -4
  110. package/dialog/index.js +5 -5
  111. package/divider/index.cjs +1 -1
  112. package/divider/index.js +1 -1
  113. package/fab/index.cjs +3 -3
  114. package/fab/index.js +8 -8
  115. package/file-picker/index.cjs +16 -13
  116. package/file-picker/index.js +31 -28
  117. package/header/index.cjs +4 -4
  118. package/header/index.js +5 -5
  119. package/index.cjs +24 -21
  120. package/index.js +11 -11
  121. package/lib/combobox/combobox.d.ts +0 -3
  122. package/lib/date-time-picker/date-time-picker.d.ts +0 -4
  123. package/lib/dial-pad/dial-pad.d.ts +6 -2
  124. package/lib/dialog/dialog.d.ts +0 -1
  125. package/lib/menu/menu.d.ts +0 -1
  126. package/lib/option/option.d.ts +0 -1
  127. package/lib/rich-text-editor/rte/exports.d.ts +1 -0
  128. package/lib/rich-text-editor/rte/features/alignment.d.ts +1 -1
  129. package/lib/rich-text-editor/rte/features/character-count.d.ts +21 -0
  130. package/lib/rich-text-editor/rte/features/font-size-picker.d.ts +1 -1
  131. package/lib/rich-text-editor/rte/features/internal/basic-text-blocks.d.ts +1 -1
  132. package/lib/rich-text-editor/rte/features/keyboard-shortcuts.d.ts +1 -1
  133. package/lib/rich-text-editor/rte/features/text-color-picker.d.ts +1 -1
  134. package/lib/rich-text-editor/rte/public-interface.d.ts +6 -0
  135. package/lib/searchable-select/option-tag.d.ts +0 -1
  136. package/lib/table/definition.d.ts +2 -1
  137. package/lib/table/table-header-cell.d.ts +3 -0
  138. package/lib/table/table-sorting-button.d.ts +415 -0
  139. package/lib/table/table-sorting-button.template.d.ts +3 -0
  140. package/locales/de-DE.cjs +4 -178
  141. package/locales/de-DE.js +2 -179
  142. package/locales/en-GB.cjs +4 -9
  143. package/locales/en-GB.js +2 -10
  144. package/locales/en-US.cjs +268 -2
  145. package/locales/en-US.js +265 -1
  146. package/locales/ja-JP.cjs +4 -171
  147. package/locales/ja-JP.js +2 -172
  148. package/locales/zh-CN.cjs +4 -172
  149. package/locales/zh-CN.js +2 -173
  150. package/menu/index.cjs +1 -1
  151. package/menu/index.js +1 -1
  152. package/menu-item/index.cjs +1 -1
  153. package/menu-item/index.js +1 -1
  154. package/nav-disclosure/index.cjs +3 -3
  155. package/nav-disclosure/index.js +8 -8
  156. package/nav-item/index.cjs +1 -1
  157. package/nav-item/index.js +7 -7
  158. package/note/index.cjs +2 -2
  159. package/note/index.js +6 -6
  160. package/number-field/index.cjs +4 -4
  161. package/number-field/index.js +31 -31
  162. package/option/definition.cjs +1 -1
  163. package/option/definition.js +1 -1
  164. package/option/index.cjs +1 -1
  165. package/option/index.js +1 -1
  166. package/package.json +7 -8
  167. package/pagination/index.cjs +3 -3
  168. package/pagination/index.js +15 -15
  169. package/popover/index.cjs +4 -4
  170. package/popover/index.js +5 -5
  171. package/progress/index.cjs +2 -2
  172. package/progress/index.js +5 -5
  173. package/radio/index.cjs +1 -1
  174. package/radio/index.js +1 -1
  175. package/radio-group/index.cjs +4 -4
  176. package/radio-group/index.js +10 -10
  177. package/range-slider/index.cjs +4 -4
  178. package/range-slider/index.js +17 -17
  179. package/rich-text-editor/definition.cjs +1 -0
  180. package/rich-text-editor/definition.js +2 -2
  181. package/rich-text-editor/index.cjs +13 -13
  182. package/rich-text-editor/index.js +1886 -1829
  183. package/rich-text-view/index.cjs +1 -1
  184. package/rich-text-view/index.js +8 -8
  185. package/searchable-select/index.cjs +12 -12
  186. package/searchable-select/index.js +25 -25
  187. package/select/index.cjs +1 -1
  188. package/select/index.js +1 -1
  189. package/selectable-box/index.cjs +7 -7
  190. package/selectable-box/index.js +11 -11
  191. package/shared/foundation/test-utilities/fixture.d.ts +1 -1
  192. package/shared/patterns/linkable.d.ts +1 -1
  193. package/simple-color-picker/index.cjs +3 -3
  194. package/simple-color-picker/index.js +10 -10
  195. package/split-button/index.cjs +5 -5
  196. package/split-button/index.js +10 -10
  197. package/status/index.cjs +2 -2
  198. package/status/index.js +12 -12
  199. package/switch/index.cjs +3 -3
  200. package/switch/index.js +5 -5
  201. package/tab/index.cjs +1 -1
  202. package/tab/index.js +1 -1
  203. package/tab-panel/index.cjs +1 -1
  204. package/tab-panel/index.js +1 -1
  205. package/table/definition.cjs +17 -14
  206. package/table/definition.js +3 -2
  207. package/table/index.cjs +19 -10
  208. package/table/index.js +69 -21
  209. package/tabs/index.cjs +2 -2
  210. package/tabs/index.js +4 -4
  211. package/tag/index.cjs +7 -7
  212. package/tag/index.js +9 -9
  213. package/tag-group/index.cjs +3 -3
  214. package/tag-group/index.js +5 -5
  215. package/text-area/index.cjs +2 -2
  216. package/text-area/index.js +12 -12
  217. package/text-field/definition.cjs +1 -1
  218. package/text-field/definition.js +1 -1
  219. package/text-field/index.cjs +1 -1
  220. package/text-field/index.js +1 -1
  221. package/time-picker/index.cjs +1 -1
  222. package/time-picker/index.js +1 -1
  223. package/toggletip/definition.cjs +1 -1
  224. package/toggletip/definition.js +1 -1
  225. package/toggletip/index.cjs +1 -1
  226. package/toggletip/index.js +1 -1
  227. package/tooltip/definition.cjs +1 -1
  228. package/tooltip/definition.js +1 -1
  229. package/tooltip/index.cjs +1 -1
  230. package/tooltip/index.js +1 -1
  231. package/tree-item/index.cjs +1 -1
  232. package/tree-item/index.js +1 -1
  233. package/tree-view/index.cjs +3 -3
  234. package/tree-view/index.js +17 -17
  235. package/unbundled/button.cjs +2 -2
  236. package/unbundled/button.js +2 -2
  237. package/unbundled/calendar-picker.template.cjs +4347 -9
  238. package/unbundled/calendar-picker.template.js +4345 -7
  239. package/unbundled/chunk.cjs +0 -22
  240. package/unbundled/definition13.cjs +1 -8
  241. package/unbundled/definition13.js +1 -8
  242. package/unbundled/definition14.cjs +2 -2
  243. package/unbundled/definition14.js +2 -2
  244. package/unbundled/definition2.cjs +1 -1
  245. package/unbundled/definition2.js +1 -1
  246. package/unbundled/definition21.cjs +1 -2
  247. package/unbundled/definition21.js +1 -2
  248. package/unbundled/definition22.cjs +7 -2
  249. package/unbundled/definition22.js +7 -2
  250. package/unbundled/definition24.cjs +98 -979
  251. package/unbundled/definition24.js +93 -974
  252. package/unbundled/definition25.cjs +37 -322
  253. package/unbundled/definition25.js +33 -318
  254. package/unbundled/definition26.cjs +317 -91
  255. package/unbundled/definition26.js +313 -87
  256. package/unbundled/definition27.cjs +94 -192
  257. package/unbundled/definition27.js +91 -183
  258. package/unbundled/definition28.cjs +387 -395
  259. package/unbundled/definition28.js +387 -395
  260. package/unbundled/definition29.cjs +189 -110
  261. package/unbundled/definition29.js +180 -107
  262. package/unbundled/definition30.cjs +520 -36
  263. package/unbundled/definition30.js +519 -35
  264. package/unbundled/definition32.cjs +477 -477
  265. package/unbundled/definition32.js +475 -475
  266. package/unbundled/definition33.cjs +87 -2
  267. package/unbundled/definition33.js +77 -4
  268. package/unbundled/definition35.cjs +2 -2
  269. package/unbundled/definition35.js +2 -2
  270. package/unbundled/definition36.cjs +1 -1
  271. package/unbundled/definition36.js +1 -1
  272. package/unbundled/definition37.cjs +6 -2
  273. package/unbundled/definition37.js +6 -2
  274. package/unbundled/definition38.cjs +7 -5
  275. package/unbundled/definition38.js +7 -5
  276. package/unbundled/definition39.cjs +1 -0
  277. package/unbundled/definition39.js +1 -0
  278. package/unbundled/definition42.cjs +22 -11
  279. package/unbundled/definition42.js +22 -11
  280. package/unbundled/definition49.cjs +3 -3
  281. package/unbundled/definition49.js +3 -3
  282. package/unbundled/definition56.cjs +437 -9506
  283. package/unbundled/definition56.js +340 -9415
  284. package/unbundled/definition57.cjs +5 -5
  285. package/unbundled/definition57.js +5 -5
  286. package/unbundled/definition58.cjs +4 -3
  287. package/unbundled/definition58.js +2 -1
  288. package/unbundled/definition59.cjs +4 -3
  289. package/unbundled/definition59.js +4 -3
  290. package/unbundled/definition62.cjs +2 -2
  291. package/unbundled/definition62.js +2 -2
  292. package/unbundled/definition64.cjs +1 -1
  293. package/unbundled/definition64.js +1 -1
  294. package/unbundled/definition71.cjs +2 -2
  295. package/unbundled/definition71.js +2 -2
  296. package/unbundled/definition72.cjs +1 -2
  297. package/unbundled/definition72.js +1 -2
  298. package/unbundled/definition75.cjs +3 -51711
  299. package/unbundled/definition75.js +1 -51711
  300. package/unbundled/listbox.cjs +1 -1
  301. package/unbundled/listbox.js +1 -1
  302. package/unbundled/localized.cjs +2 -2
  303. package/unbundled/localized.js +1 -1
  304. package/unbundled/picker-field.template.cjs +1 -1
  305. package/unbundled/picker-field.template.js +1 -1
  306. package/unbundled/slottable-request.cjs +2 -3168
  307. package/unbundled/slottable-request.js +3 -3097
  308. package/unbundled/time-selection-picker.template.cjs +1 -1
  309. package/unbundled/time-selection-picker.template.js +1 -1
  310. package/unbundled/vivid-element.cjs +1 -1
  311. package/unbundled/vivid-element.js +1 -1
  312. package/video-player/index.cjs +3 -3
  313. package/video-player/index.js +9 -9
  314. package/vivid.api.json +220 -282
  315. package/unbundled/chunk.js +0 -33
  316. package/unbundled/en-US.cjs +0 -447
  317. package/unbundled/en-US.js +0 -443
@@ -1,131 +1,195 @@
1
- import { E as e, T as t, d as n, l as r, o as i, s as a, t as o } from "./vivid-element.js";
2
- import { t as s } from "./when.js";
3
- import { r as c, t as l } from "./definition2.js";
4
- import { t as u } from "./decorate.js";
5
- import { t as d } from "./class-names.js";
6
- import { t as f } from "./dom.js";
7
- import { a as p, i as m, n as h } from "./affix.js";
8
- import { n as g, t as _ } from "./host-semantics.js";
9
- //#region src/lib/option/option.ts
10
- function v(e) {
11
- return f(e) && (e.getAttribute("role") === "option" || e instanceof HTMLOptionElement || e instanceof y);
12
- }
13
- var y = class extends _(h(o)) {
14
- defaultSelectedChanged() {
15
- this.dirtySelected || (this.selected = this.defaultSelected, this.proxy instanceof HTMLOptionElement && (this.proxy.selected = this.defaultSelected)), this.proxy instanceof HTMLOptionElement && (this.proxy.defaultSelected = this.defaultSelected);
16
- }
17
- disabledChanged() {
1
+ import { O as e, T as t, d as n, l as r, o as i, s as a, t as o, u as s, y as c } from "./vivid-element.js";
2
+ import { t as l } from "./ref.js";
3
+ import { t as u } from "./when.js";
4
+ import { t as d } from "./slotted.js";
5
+ import { n as f } from "./definition.js";
6
+ import { t as p } from "./definition2.js";
7
+ import { t as m } from "./decorate.js";
8
+ import { a as h, t as g } from "./affix.js";
9
+ import { t as _ } from "./form-element.js";
10
+ import { t as v } from "./with-success-text.js";
11
+ import { t as y } from "./with-error-text.js";
12
+ import { t as b } from "./with-contextual-help.js";
13
+ import { n as x, t as S } from "./delegates-aria.js";
14
+ import { t as C } from "./char-count.js";
15
+ import { t as w } from "./class-names.js";
16
+ import { n as T } from "./form-associated.js";
17
+ import { a as E, i as D, n as O, r as k } from "./mixins.js";
18
+ import { t as A } from "./definition11.js";
19
+ import { t as j } from "./text-field.js";
20
+ //#region src/lib/text-field/text-field.ts
21
+ var M = {
22
+ email: "email",
23
+ password: "password",
24
+ tel: "tel",
25
+ text: "text",
26
+ url: "url"
27
+ }, N = new c(["\n ._vvd-3-text-field-safari-workaround::placeholder {\n opacity: 1 !important;\n -webkit-text-fill-color: var(--_low-ink-color) !important;\n }\n"]), P = (e) => {
28
+ let t = e.getRootNode();
29
+ N.isAttachedTo(t) || N.addStylesTo(t);
30
+ }, F = class extends b(O(C(y(v(_(g(S(T(o))))))))) {
31
+ constructor(...e) {
32
+ super(...e), this.proxy = document.createElement("input"), this.type = M.text;
33
+ }
34
+ readOnlyChanged() {
18
35
  /* v8 ignore if -- @preserve */
19
- this.proxy instanceof HTMLOptionElement && (this.proxy.disabled = this.disabled);
36
+ this.proxy instanceof HTMLInputElement && (this.proxy.readOnly = this.readOnly, this.validate());
20
37
  }
21
- get selectedAttribute() {
22
- return this.defaultSelected;
38
+ autofocusChanged() {
39
+ /* v8 ignore if -- @preserve */
40
+ this.proxy instanceof HTMLInputElement && (this.proxy.autofocus = this.autofocus, this.validate());
41
+ }
42
+ placeholderChanged() {
43
+ /* v8 ignore if -- @preserve */
44
+ this.proxy instanceof HTMLInputElement && (this.proxy.placeholder = this.placeholder);
45
+ }
46
+ typeChanged() {
47
+ /* v8 ignore if -- @preserve */
48
+ this.proxy instanceof HTMLInputElement && (this.proxy.type = this.type, this.validate());
23
49
  }
24
- set selectedAttribute(e) {
25
- this.defaultSelected = e;
50
+ listChanged() {
51
+ /* v8 ignore if -- @preserve */
52
+ this.proxy instanceof HTMLInputElement && (this.proxy.setAttribute("list", this.list), this.validate());
26
53
  }
27
- selectedChanged() {
28
- this.dirtySelected ||= !0, this.proxy instanceof HTMLOptionElement && (this.proxy.selected = this.selected);
54
+ maxlengthChanged() {
55
+ /* v8 ignore if -- @preserve */
56
+ this.proxy instanceof HTMLInputElement && (this.proxy.maxLength = this.maxlength, this.validate());
29
57
  }
30
- valueChanged() {
31
- if (typeof this.value != "string") {
32
- this.value = "";
33
- return;
34
- }
35
- this.proxy instanceof HTMLOptionElement && (this.proxy.value = this.value);
58
+ minlengthChanged() {
59
+ /* v8 ignore if -- @preserve */
60
+ this.proxy instanceof HTMLInputElement && (this.proxy.minLength = this.minlength, this.validate());
36
61
  }
37
- get label() {
38
- return this._label ?? this.text;
62
+ patternChanged() {
63
+ /* v8 ignore if -- @preserve */
64
+ this.proxy instanceof HTMLInputElement && (this.proxy.pattern = this.pattern, this.validate());
39
65
  }
40
- set label(e) {
41
- this._label = e;
66
+ sizeChanged() {
67
+ /* v8 ignore if -- @preserve */
68
+ this.proxy instanceof HTMLInputElement && (this.proxy.size = this.size);
42
69
  }
43
- set text(e) {
44
- this._text = e;
70
+ spellcheckChanged() {
71
+ /* v8 ignore if -- @preserve */
72
+ this.proxy instanceof HTMLInputElement && (this.proxy.spellcheck = this.spellcheck);
45
73
  }
46
- get text() {
47
- return this._text ?? "";
74
+ valueChanged(e, t) {
75
+ super.valueChanged(e, t), this._updateControlValueIfNeeded(), this.charCount && this.maxlength && this._updateCharCountRemaining();
48
76
  }
49
- _getAccessibleName() {
50
- return this.ariaLabel || `${this.text}${this.textSecondary ? ` ${this.textSecondary}` : ""}`;
77
+ _updateControlValueIfNeeded() {
78
+ this.control && this.control.value !== this.value && (this.control.value = this.value);
51
79
  }
52
- get form() {
53
- return null;
80
+ select() {
81
+ this.control.select();
54
82
  }
55
- get _hasMatchedText() {
56
- return !!(this.matchedText ?? this._vvdSearchText);
83
+ handleTextInput(e) {
84
+ this.value = this.control.value, e.stopPropagation(), this.$emit("input");
57
85
  }
58
- get _matchedRange() {
59
- let e = this.matchedText ?? this._vvdSearchText;
60
- if (e) {
61
- let t = this.text.toLowerCase().indexOf(e.toLowerCase());
62
- return t === -1 ? {
63
- from: 0,
64
- to: 0
65
- } : {
66
- from: t,
67
- to: t + e.length
68
- };
69
- }
70
- return {
71
- from: 0,
72
- to: 0
73
- };
86
+ handleChange() {
87
+ this.$emit("change");
74
88
  }
75
- constructor(e, t, n, r) {
76
- super(), this.defaultSelected = !1, this.dirtySelected = !1, this.value = "", this._highlighted = !1, this._displayCheckmark = !1, this._vvdSearchText = "", this._isNotMatching = !1, e && (this.text = e), t && (this.value = t), n && (this.defaultSelected = n), r && (this.selected = r), this.proxy = new Option(this.text, this.value, this.defaultSelected, this.selected), this.proxy.disabled = this.disabled;
89
+ validate() {
90
+ super.validate(this.control);
77
91
  }
78
92
  connectedCallback() {
79
- super.connectedCallback(), this.dirtySelected ||= (this.selected = this.defaultSelected, !1);
93
+ super.connectedCallback(), this.proxy.setAttribute("type", this.type), this.validate(), this.autofocus && e.enqueue(() => {
94
+ this.focus();
95
+ }), this._updateControlValueIfNeeded(), P(this), this._renderCharCountRemaining();
96
+ }
97
+ focus() {
98
+ this.control?.focus();
99
+ }
100
+ #e = D();
101
+ get _uniqueId() {
102
+ return this.id || this.#e;
80
103
  }
81
104
  };
82
- u([r({ converter: {
83
- fromView: (e) => {
84
- if (e === !0 || e === "true") return !0;
85
- if (e === !1 || e === "false") return !1;
86
- },
87
- toView: (e) => e
88
- } })], y.prototype, "checked", void 0), u([r({
89
- attribute: "selected",
90
- mode: "boolean"
91
- })], y.prototype, "defaultSelected", void 0), u([r({ mode: "boolean" })], y.prototype, "disabled", void 0), u([r({
92
- attribute: "current-selected",
105
+ m([r({
106
+ attribute: "readonly",
93
107
  mode: "boolean"
94
- })], y.prototype, "selected", void 0), u([r({ attribute: "value" })], y.prototype, "value", void 0), u([r({ attribute: "label" })], y.prototype, "_label", void 0), u([r({ attribute: "text" })], y.prototype, "_text", void 0), u([r({ attribute: "text-secondary" })], y.prototype, "textSecondary", void 0), u([t], y.prototype, "_highlighted", void 0), u([t], y.prototype, "_displayCheckmark", void 0), u([r({ attribute: "matched-text" })], y.prototype, "matchedText", void 0), u([t], y.prototype, "_vvdSearchText", void 0), u([e], y.prototype, "_hasMatchedText", null), u([t], y.prototype, "_isNotMatching", void 0), u([e], y.prototype, "_matchedRange", null), u([r], y.prototype, "connotation", void 0), u([r({ attribute: "tag-connotation" })], y.prototype, "tagConnotation", void 0);
108
+ })], F.prototype, "readOnly", void 0), m([r({ mode: "boolean" })], F.prototype, "autofocus", void 0), m([r], F.prototype, "placeholder", void 0), m([r], F.prototype, "type", void 0), m([r], F.prototype, "list", void 0), m([r({ converter: s })], F.prototype, "maxlength", void 0), m([r({ converter: s })], F.prototype, "minlength", void 0), m([r], F.prototype, "pattern", void 0), m([r({ converter: s })], F.prototype, "size", void 0), m([r({ mode: "boolean" })], F.prototype, "spellcheck", void 0), m([r], F.prototype, "appearance", void 0), m([r], F.prototype, "shape", void 0), m([r], F.prototype, "autoComplete", void 0), m([r()], F.prototype, "scale", void 0), m([r({ attribute: "inputmode" })], F.prototype, "inputMode", void 0), m([t], F.prototype, "actionItemsSlottedContent", void 0), m([t], F.prototype, "leadingActionItemsSlottedContent", void 0);
95
109
  //#endregion
96
- //#region src/lib/option/option.template.ts
97
- var b = (e) => d("base", [`connotation-${e.connotation}`, !!e.connotation], ["disabled", e.disabled], ["selected", !!e.selected], ["hover", !!e._highlighted], ["active", !!e.checked], ["icon", !!e.icon], ["two-lines", !!e.text?.length && !!e.textSecondary?.length]);
98
- function x() {
99
- return n`${s((e) => e.text || e.textSecondary, n`<span class="text">
100
- ${s((e) => e.text, n`<span class="text-primary">
101
- ${s((e) => e._hasMatchedText, n`${(e) => e.text.slice(0, e._matchedRange.from)}<span class="match"
102
- >${(e) => e.text.slice(e._matchedRange.from, e._matchedRange.to)}</span
103
- >`)}${(e) => e.text.slice(e._matchedRange.to)}
104
- </span>`)}
105
- ${s((e) => e.textSecondary, n`<span class="text-secondary">${(e) => e.textSecondary}</span>`)}
106
- </span>`)}`;
107
- }
108
- //#endregion
109
- //#region src/lib/option/definition.ts
110
- var S = i("option", y, (e) => {
111
- let t = p(e), r = e.tagFor(c);
110
+ //#region src/lib/text-field/text-field.template.ts
111
+ var I = (e) => `vvd-text-field-control-${e}`, L = ({ errorValidationMessage: e, disabled: t, value: n, readOnly: r, placeholder: i, appearance: a, shape: o, label: s, successText: c, actionItemsSlottedContent: l, leadingActionItemsSlottedContent: u, icon: d, scale: f }) => w(["error", !!e], ["disabled", t], ["has-value", !!n], ["readonly", r], ["placeholder", !!i], [`appearance-${a}`, !!a], [`shape-${o}`, !!o], ["no-label", !s], ["has-icon", !!d], ["success", !!c], ["action-items", !!l?.length], ["leading-action-items", !!u?.length], ["no-leading", !(u?.length || d)], [`size-${f}`, !!f]), R = i("text-field", F, (e) => {
112
+ let t = h(e);
112
113
  return n`
113
- <template
114
- ${g({
115
- role: "option",
116
- ariaChecked: (e) => e.checked,
117
- ariaSelected: (e) => e.selected,
118
- ariaDisabled: (e) => e.disabled
119
- })}
120
- style="${(e) => e._isNotMatching ? "display: none" : ""}"
121
- >
122
- <div class="${b}">
123
- ${(e) => t(e.icon, m.Slot)} ${x()}
124
- <slot name="trailing-meta"></slot>
125
- ${s((e) => e._displayCheckmark && e.selected, n`<${r} class="checkmark" name="check-line"></${r}>`)}
114
+ <div class="base ${L}">
115
+ ${u((e) => e.charCount && e.maxlength, (t) => t._getCharCountTemplate(e))}
116
+ <div
117
+ class="label-wrapper"
118
+ ?hidden=${(e) => !e.label && !e._hasContextualHelp}
119
+ >
120
+ <slot class="label" name="_label"></slot>
121
+ <slot
122
+ name="contextual-help"
123
+ ${d("_contextualHelpSlottedContent")}
124
+ ></slot>
125
+ </div>
126
+ ${k(n`
127
+ ${u((e) => e.label, n`
128
+ <label slot="_label" for="${(e) => I(e._uniqueId)}">
129
+ ${(e) => e.label}
130
+ </label>
131
+ `)}
132
+ `)}
133
+ <div class="fieldset">
134
+ <div class="leading-items-wrapper">
135
+ <slot
136
+ name="leading-action-items"
137
+ ${d("leadingActionItemsSlottedContent")}
138
+ ></slot>
139
+ ${(e) => t(e.icon)}
140
+ </div>
141
+ <div class="wrapper">
142
+ <slot class="control" name="_control"></slot>
143
+ ${k(n`<input
144
+ slot="_control"
145
+ id="${(e) => I(e._uniqueId)}"
146
+ class="_vvd-3-text-field-safari-workaround"
147
+ @input="${(e, t) => e.handleTextInput(t.event)}"
148
+ @change="${(e) => e.handleChange()}"
149
+ @blur="${(e) => {
150
+ e.$emit("blur", void 0, { bubbles: !1 });
151
+ }}"
152
+ @focus="${(e) => {
153
+ e.$emit("focus", void 0, { bubbles: !1 });
154
+ }}"
155
+ ?autofocus="${(e) => e.autofocus}"
156
+ ?disabled="${(e) => e.disabled}"
157
+ ?readonly="${(e) => e.readOnly}"
158
+ ?required="${(e) => e.required}"
159
+ ?spellcheck="${(e) => e.spellcheck}"
160
+ list="${(e) => e.list}"
161
+ maxlength="${(e) => e.maxlength}"
162
+ minlength="${(e) => e.minlength}"
163
+ pattern="${(e) => e.pattern}"
164
+ placeholder="${(e) => e.placeholder}"
165
+ size="${(e) => e.size}"
166
+ autocomplete="${(e) => e.autoComplete}"
167
+ type="${(e) => e.type}"
168
+ inputmode="${(e) => e.inputMode}"
169
+ aria-describedby="${(e) => e._feedbackDescribedBy} ${(e) => e.charCount && e.maxlength ? e._charCountDescribedBy : null}"
170
+ value="${(e) => e.initialValue}"
171
+ ${x()}
172
+ ${l("control")}
173
+ />`)}
174
+ </div>
175
+ <div class="action-items-wrapper">
176
+ <slot
177
+ name="action-items"
178
+ ${d("actionItemsSlottedContent")}
179
+ ></slot>
180
+ </div>
126
181
  </div>
127
- </template>
182
+ ${(t) => t._getFeedbackTemplate(e)}
183
+ </div>
128
184
  `;
129
- }, [l], { styles: ":host([disabled]){cursor:not-allowed}.base.connotation-cta{--_connotation-color-primary:var(--vvd-option-cta-primary,var(--vvd-color-cta-500));--_connotation-color-primary-text:var(--vvd-option-cta-primary-text,var(--vvd-color-canvas));--_connotation-color-primary-increment:var(--vvd-option-cta-primary-increment,var(--vvd-color-cta-600));--_connotation-color-firm:var(--vvd-option-cta-firm,var(--vvd-color-cta-600));--_connotation-color-faint:var(--vvd-option-cta-faint,var(--vvd-color-cta-50));--_connotation-color-soft:var(--vvd-option-cta-soft,var(--vvd-color-cta-100));--_connotation-color-pale:var(--vvd-option-cta-pale,var(--vvd-color-cta-300));--_connotation-color-dim:var(--vvd-option-cta-dim,var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary:var(--vvd-option-accent-primary,var(--vvd-color-canvas-text));--_connotation-color-primary-text:var(--vvd-option-accent-primary-text,var(--vvd-color-canvas));--_connotation-color-primary-increment:var(--vvd-option-accent-primary-increment,var(--vvd-color-neutral-800));--_connotation-color-firm:var(--vvd-option-accent-firm,var(--vvd-color-canvas-text));--_connotation-color-faint:var(--vvd-option-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-soft:var(--vvd-option-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-option-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-dim:var(--vvd-option-accent-dim,var(--vvd-color-neutral-200))}.base{--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}@media (hover:hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}.base:disabled,.base.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}.base:active:where(:not(.disabled,:disabled)),.base.active:where(:not(.disabled,:disabled)),.base.selected:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:transparent}@media (hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-dim);--_appearance-color-outline:transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-dim);--_appearance-color-outline:transparent}.base{box-sizing:border-box;background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_option-appearance-color-text,var(--_appearance-color-text));font:var(--vvd-typography-base);align-items:center;gap:var(--_option-gap);hyphens:auto;inline-size:100%;min-block-size:var(--_option-min-block-size);padding-inline:var(--_option-padding-inline);vertical-align:middle;word-break:break-word;--_option-min-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_option-padding-inline:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_option-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2);border-radius:8px;display:flex}.base:not(.two-lines){--_option-gap:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 4)) / 3);padding-block:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 4)}.base.two-lines{gap:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);padding-block:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2)}@supports (user-select:none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{pointer-events:none}:host([scale=condensed]) .base{--_option-min-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_option-padding-inline:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_option-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5)}:host([scale=condensed]) .base:not(.two-lines){--_option-gap:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 5);padding-block:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 4)) / 6)}:host([scale=condensed]) .base.two-lines{gap:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 4)) / 3);padding-block:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 4)}.base.active{--focus-stroke-color:var(--vvd-color-cta-500);--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}.base.hidden{display:none}.text{font:var(--vvd-typography-base);flex-direction:column;gap:4px;margin-inline-end:auto;display:flex}.text-primary,.text-secondary{font:var(--vvd-typography-base);display:block}.text-primary{font:var(--vvd-typography-base)}.base:not(.disabled) .text-primary{color:var(--vvd-color-canvas-text)}.base.disabled .text-primary{color:var(--_appearance-color-text)}.base.two-lines .text-primary{font:var(--vvd-typography-base-bold)}.text-secondary{color:var(--vvd-color-neutral-800);font:var(--vvd-typography-base-condensed)}.base.two-lines .text-secondary{color:var(--vvd-color-neutral-600)}.base.disabled .text-secondary{color:var(--_appearance-color-text)}.base.selected:not(.disabled) .text-secondary{color:var(--vvd-color-neutral-800)}.match{color:var(--vvd-color-cta-600);font:var(--vvd-typography-base-bold)}slot[name=icon]{font-size:var(--_option-icon-size);line-height:1}.base:not(.disabled,.selected) slot[name=icon]{color:var(--vvd-color-neutral-600)}.checkmark{font-size:var(--_option-icon-size)}" }), C = a(S);
185
+ }, [
186
+ p,
187
+ E,
188
+ f,
189
+ A
190
+ ], {
191
+ styles: j,
192
+ shadowOptions: { delegatesFocus: !0 }
193
+ }), z = a(R);
130
194
  //#endregion
131
- export { v as i, C as n, y as r, S as t };
195
+ export { R as n, F as r, z as t };
@@ -1,19 +1,20 @@
1
- const e=require(`./localized.cjs`),t=require(`./vivid-element.cjs`),n=require(`./when.cjs`),r=require(`./decorate.cjs`),i=require(`./class-names.cjs`),a=require(`./dialog.cjs`),o=require(`./definition8.cjs`),s=require(`./anchored.cjs`);var c=`:host :host{display:var(--_popup-display,inline)}:host :host([slotted-anchor]){--_popup-display:contents}.content-wrapper{width:var(--toggletip-inline-size,auto);max-inline-size:var(--toggletip-max-inline-size,30ch);padding:16px}.headline{font:var(--vvd-typography-base-bold);margin:0}.action-items{justify-content:flex-end;gap:10px;display:flex}::slotted([slot=action-items]){margin-block-start:16px}`,l=class extends e.t(s.t(t.t)){constructor(...e){super(...e),this.alternate=!1,this.placement=`right`,this.open=!1}#e=null;openChanged(e,t){e!==void 0&&(t?this.setAttribute(`role`,`status`):this.removeAttribute(`role`),this.#a(),this._anchorEl&&this.#n(this._anchorEl))}connectedCallback(){super.connectedCallback(),this.#a()}disconnectedCallback(){super.disconnectedCallback(),this.#a()}_anchorElChanged(e,t){e&&this.#r(e),t&&this.#t(t)}#t(e){e.addEventListener(`click`,this.#i,!0),this.#e=e.ariaLabel,e.ariaLabel=`${this.locale.toggletip.anchorLabel(e.ariaLabel||``)}`,this.#n(e)}#n(e){e.setAttribute(`aria-expanded`,this.open.toString()),e.setAttribute(`data-expanded`,this.open.toString())}#r(e){e.removeEventListener(`click`,this.#i,!0),e.removeAttribute(`aria-expanded`),e.removeAttribute(`data-expanded`),e.ariaLabel&&=this.#e}#i=()=>{this.open||t.O.enqueue(()=>this.open=!0)};#a(){document.removeEventListener(`click`,this.#o),document.removeEventListener(`keydown`,this.#s),this.open&&this.isConnected&&(document.addEventListener(`click`,this.#o),document.addEventListener(`keydown`,this.#s))}#o=e=>{let t=!this.contains(e.target),n=this._anchorEl?.contains(e.target);(t||n)&&(this.open=!1)};#s=e=>{e.key===`Escape`&&(this.open=!1)}};r.t([t.l],l.prototype,`headline`,void 0),r.t([t.l({mode:`boolean`})],l.prototype,`alternate`,void 0),r.t([t.l({mode:`fromView`})],l.prototype,`placement`,void 0),r.t([t.l({mode:`boolean`})],l.prototype,`open`,void 0);var u=e=>i.t(`control`),d=t.o(`toggletip`,l,e=>{let r=e.tagFor(o.i);return t.d`
2
- ${s.n()}
3
- <${r}
4
- @keydown="${(e,{event:t})=>!(e.open&&a.t(t))}"
5
- class="${u}"
6
- arrow
7
- :anchor="${e=>e._anchorEl}"
8
- :open="${e=>e.open}"
9
- ?alternate="${e=>!e.alternate}"
10
- placement="${e=>e.placement}"
11
- exportparts="vvd-theme-alternate"
1
+ const e=require(`./localized.cjs`),t=require(`./vivid-element.cjs`),n=require(`./definition2.cjs`),r=require(`./decorate.cjs`),i=require(`./affix.cjs`),a=require(`./class-names.cjs`),o=require(`./host-semantics.cjs`);var s=`:host{--_vvd-tab-accent-firm-wrapper:var(--vvd-tab-accent-firm);--_vvd-tab-cta-firm-wrapper:var(--vvd-tab-cta-firm)}.base{--vvd-tab-accent-firm:var(--_vvd-tab-accent-firm-wrapper,var(--vvd-tab-accent-primary));--vvd-tab-cta-firm:var(--_vvd-tab-cta-firm-wrapper,var(--vvd-tab-cta-primary))}:host(.vertical){grid-column:1;justify-content:end}:host([disabled]){cursor:not-allowed}:host([removable]){position:relative}:host(:focus-visible){outline:none}.base{--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}@media (hover:hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}.base:disabled,.base.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}.base:active:where(:not(.disabled,:disabled)),.base.active:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:transparent}.base.connotation-cta{--_connotation-color-primary-text:var(--vvd-tab-cta-primary-text,var(--vvd-color-canvas));--_connotation-color-firm:var(--vvd-tab-cta-firm,var(--vvd-color-cta-600));--_connotation-color-faint:var(--vvd-tab-cta-faint,var(--vvd-color-cta-50));--_connotation-color-fierce:var(--vvd-tab-cta-fierce,var(--vvd-color-cta-700));--_connotation-color-pale:var(--vvd-tab-cta-pale,var(--vvd-color-cta-300));--_connotation-color-soft:var(--vvd-tab-cta-soft,var(--vvd-color-cta-100))}.base:not(.connotation-cta){--_connotation-color-primary-text:var(--vvd-tab-accent-primary-text,var(--vvd-color-canvas));--_connotation-color-firm:var(--vvd-tab-accent-firm,var(--vvd-color-canvas-text));--_connotation-color-faint:var(--vvd-tab-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-fierce:var(--vvd-tab-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-pale:var(--vvd-tab-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-soft:var(--vvd-tab-accent-soft,var(--vvd-color-neutral-100))}.base{box-sizing:border-box;align-items:center;justify-content:var(--_tab-justify-content);padding:var(--_tabs-tablist-gutter);background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);font:var(--vvd-typography-base-bold);gap:var(--_tabs-tablist-gutter);vertical-align:middle;white-space:nowrap;min-block-size:40px;display:flex;position:relative}@supports (user-select:none){.base{user-select:none}}.base:not(.shape-sharp){border-radius:8px}.base:not(.disabled){cursor:pointer}.base.disabled{pointer-events:none}.base.removable{padding-inline-end:40px}:host(:focus-visible) .base{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}:host(.vertical) .base{margin-inline-start:var(--_tabs-active-indicator-stroke-width)}slot[name=icon]{font-size:20px;line-height:1}.icon-trailing slot[name=icon]{order:1;margin-inline-start:auto;display:inline-block}.close{background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;block-size:24px;inline-size:24px;display:flex;position:absolute;inset-block-start:50%;inset-inline-end:4px;transform:translateY(-50%)}.close:focus-visible{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}.close vwc-icon{font-size:12px}.close .icon{justify-content:center;align-items:center;display:flex}`,c=class extends o.t(i.n(e.t(t.t))){constructor(...e){super(...e),this.removable=!1,this.tabIndex=`-1`,this.active=!1}_handleCloseClick(e){e.stopImmediatePropagation(),this.$emit(`close`)}_onKeyDown(e){return!this.removable||e.key!==`Delete`?!0:(e.stopImmediatePropagation(),this.$emit(`close`),!1)}};r.t([t.l({mode:`boolean`})],c.prototype,`disabled`,void 0),r.t([t.l],c.prototype,`connotation`,void 0),r.t([t.l],c.prototype,`shape`,void 0),r.t([t.l],c.prototype,`label`,void 0),r.t([t.l({mode:`boolean`})],c.prototype,`removable`,void 0),r.t([t.l({mode:`fromView`})],c.prototype,`tabIndex`,void 0),r.t([t.T],c.prototype,`active`,void 0);var l=({connotation:e,disabled:t,active:n,iconTrailing:r,shape:i,removable:o})=>a.t(`base`,[`connotation-${e}`,!!e&&!!n],[`shape-${i}`,!!i],[`disabled`,!!t],[`selected`,!!n],[`icon-trailing`,r],[`removable`,o]);function u(e){let n=i.a(e);return t.d`<button
2
+ aria-label="${e=>e.locale.tab.dismissButtonLabel}"
3
+ class="close"
4
+ id="close-btn"
5
+ @click="${(e,t)=>e._handleCloseClick(t.event)}"
6
+ >
7
+ ${()=>n(`close-line`,i.i.Span)}
8
+ </button>`}var d=t.o(`tab`,c,e=>{let n=i.a(e);return t.d`
9
+ <template
10
+ slot="tab"
11
+ ?active="${e=>e.active}"
12
+ ${o.n({role:`tab`,ariaDisabled:e=>e.disabled,ariaSelected:e=>e.active})}
13
+ @keydown="${(e,t)=>e._onKeyDown(t.event)}"
12
14
  >
13
- <div class="content-wrapper">
14
- ${n.t(e=>e.headline,t.d`<h2 class="headline">${e=>e.headline}</h2>`)}
15
- <slot></slot>
16
- <div class="action-items"><slot name="action-items"></slot></div>
15
+ <div class="${l}">
16
+ ${e=>n(e.icon,i.i.Slot)} ${e=>e.label}
17
+ ${t=>t.removable?u(e):null}
17
18
  </div>
18
- </${r}>
19
- `},[o.t],{styles:c}),f=t.s(d);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
19
+ </template>
20
+ `},[n.t],{styles:s}),f=t.s(d);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
@@ -1,78 +1,58 @@
1
1
  import { t as e } from "./localized.js";
2
- import { O as t, d as n, l as r, o as i, s as a, t as o } from "./vivid-element.js";
3
- import { t as s } from "./when.js";
2
+ import { T as t, d as n, l as r, o as i, s as a, t as o } from "./vivid-element.js";
3
+ import { t as s } from "./definition2.js";
4
4
  import { t as c } from "./decorate.js";
5
- import { t as l } from "./class-names.js";
6
- import { t as u } from "./dialog.js";
7
- import { i as d, t as f } from "./definition8.js";
8
- import { n as p, t as m } from "./anchored.js";
9
- //#region src/lib/toggletip/toggletip.scss?inline
10
- var h = ":host :host{display:var(--_popup-display,inline)}:host :host([slotted-anchor]){--_popup-display:contents}.content-wrapper{width:var(--toggletip-inline-size,auto);max-inline-size:var(--toggletip-max-inline-size,30ch);padding:16px}.headline{font:var(--vvd-typography-base-bold);margin:0}.action-items{justify-content:flex-end;gap:10px;display:flex}::slotted([slot=action-items]){margin-block-start:16px}", g = class extends e(m(o)) {
5
+ import { a as l, i as u, n as d } from "./affix.js";
6
+ import { t as f } from "./class-names.js";
7
+ import { n as p, t as m } from "./host-semantics.js";
8
+ //#region src/lib/tab/tab.scss?inline
9
+ var h = ":host{--_vvd-tab-accent-firm-wrapper:var(--vvd-tab-accent-firm);--_vvd-tab-cta-firm-wrapper:var(--vvd-tab-cta-firm)}.base{--vvd-tab-accent-firm:var(--_vvd-tab-accent-firm-wrapper,var(--vvd-tab-accent-primary));--vvd-tab-cta-firm:var(--_vvd-tab-cta-firm-wrapper,var(--vvd-tab-cta-primary))}:host(.vertical){grid-column:1;justify-content:end}:host([disabled]){cursor:not-allowed}:host([removable]){position:relative}:host(:focus-visible){outline:none}.base{--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}@media (hover:hover){.base:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}}.base.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}.base:disabled,.base.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}.base:active:where(:not(.disabled,:disabled)),.base.active:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:transparent}.base.connotation-cta{--_connotation-color-primary-text:var(--vvd-tab-cta-primary-text,var(--vvd-color-canvas));--_connotation-color-firm:var(--vvd-tab-cta-firm,var(--vvd-color-cta-600));--_connotation-color-faint:var(--vvd-tab-cta-faint,var(--vvd-color-cta-50));--_connotation-color-fierce:var(--vvd-tab-cta-fierce,var(--vvd-color-cta-700));--_connotation-color-pale:var(--vvd-tab-cta-pale,var(--vvd-color-cta-300));--_connotation-color-soft:var(--vvd-tab-cta-soft,var(--vvd-color-cta-100))}.base:not(.connotation-cta){--_connotation-color-primary-text:var(--vvd-tab-accent-primary-text,var(--vvd-color-canvas));--_connotation-color-firm:var(--vvd-tab-accent-firm,var(--vvd-color-canvas-text));--_connotation-color-faint:var(--vvd-tab-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-fierce:var(--vvd-tab-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-pale:var(--vvd-tab-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-soft:var(--vvd-tab-accent-soft,var(--vvd-color-neutral-100))}.base{box-sizing:border-box;align-items:center;justify-content:var(--_tab-justify-content);padding:var(--_tabs-tablist-gutter);background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);font:var(--vvd-typography-base-bold);gap:var(--_tabs-tablist-gutter);vertical-align:middle;white-space:nowrap;min-block-size:40px;display:flex;position:relative}@supports (user-select:none){.base{user-select:none}}.base:not(.shape-sharp){border-radius:8px}.base:not(.disabled){cursor:pointer}.base.disabled{pointer-events:none}.base.removable{padding-inline-end:40px}:host(:focus-visible) .base{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}:host(.vertical) .base{margin-inline-start:var(--_tabs-active-indicator-stroke-width)}slot[name=icon]{font-size:20px;line-height:1}.icon-trailing slot[name=icon]{order:1;margin-inline-start:auto;display:inline-block}.close{background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;block-size:24px;inline-size:24px;display:flex;position:absolute;inset-block-start:50%;inset-inline-end:4px;transform:translateY(-50%)}.close:focus-visible{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}.close vwc-icon{font-size:12px}.close .icon{justify-content:center;align-items:center;display:flex}", g = class extends m(d(e(o))) {
11
10
  constructor(...e) {
12
- super(...e), this.alternate = !1, this.placement = "right", this.open = !1;
11
+ super(...e), this.removable = !1, this.tabIndex = "-1", this.active = !1;
13
12
  }
14
- #e = null;
15
- openChanged(e, t) {
16
- e !== void 0 && (t ? this.setAttribute("role", "status") : this.removeAttribute("role"), this.#a(), this._anchorEl && this.#n(this._anchorEl));
13
+ _handleCloseClick(e) {
14
+ e.stopImmediatePropagation(), this.$emit("close");
17
15
  }
18
- connectedCallback() {
19
- super.connectedCallback(), this.#a();
16
+ _onKeyDown(e) {
17
+ return !this.removable || e.key !== "Delete" ? !0 : (e.stopImmediatePropagation(), this.$emit("close"), !1);
20
18
  }
21
- disconnectedCallback() {
22
- super.disconnectedCallback(), this.#a();
23
- }
24
- _anchorElChanged(e, t) {
25
- e && this.#r(e), t && this.#t(t);
26
- }
27
- #t(e) {
28
- e.addEventListener("click", this.#i, !0), this.#e = e.ariaLabel, e.ariaLabel = `${this.locale.toggletip.anchorLabel(e.ariaLabel || "")}`, this.#n(e);
29
- }
30
- #n(e) {
31
- e.setAttribute("aria-expanded", this.open.toString()), e.setAttribute("data-expanded", this.open.toString());
32
- }
33
- #r(e) {
34
- /* v8 ignore else -- @preserve */
35
- e.removeEventListener("click", this.#i, !0), e.removeAttribute("aria-expanded"), e.removeAttribute("data-expanded"), e.ariaLabel &&= this.#e;
36
- }
37
- #i = () => {
38
- this.open || t.enqueue(() => this.open = !0);
39
- };
40
- #a() {
41
- document.removeEventListener("click", this.#o), document.removeEventListener("keydown", this.#s), this.open && this.isConnected && (document.addEventListener("click", this.#o), document.addEventListener("keydown", this.#s));
42
- }
43
- #o = (e) => {
44
- let t = !this.contains(e.target), n = this._anchorEl?.contains(e.target);
45
- (t || n) && (this.open = !1);
46
- };
47
- #s = (e) => {
48
- /* v8 ignore else -- @preserve */
49
- e.key === "Escape" && (this.open = !1);
50
- };
51
19
  };
52
- c([r], g.prototype, "headline", void 0), c([r({ mode: "boolean" })], g.prototype, "alternate", void 0), c([r({ mode: "fromView" })], g.prototype, "placement", void 0), c([r({ mode: "boolean" })], g.prototype, "open", void 0);
20
+ c([r({ mode: "boolean" })], g.prototype, "disabled", void 0), c([r], g.prototype, "connotation", void 0), c([r], g.prototype, "shape", void 0), c([r], g.prototype, "label", void 0), c([r({ mode: "boolean" })], g.prototype, "removable", void 0), c([r({ mode: "fromView" })], g.prototype, "tabIndex", void 0), c([t], g.prototype, "active", void 0);
21
+ //#endregion
22
+ //#region src/lib/tab/tab.template.ts
23
+ var _ = ({ connotation: e, disabled: t, active: n, iconTrailing: r, shape: i, removable: a }) => f("base", [`connotation-${e}`, !!e && !!n], [`shape-${i}`, !!i], ["disabled", !!t], ["selected", !!n], ["icon-trailing", r], ["removable", a]);
24
+ function v(e) {
25
+ let t = l(e);
26
+ return n`<button
27
+ aria-label="${(e) => e.locale.tab.dismissButtonLabel}"
28
+ class="close"
29
+ id="close-btn"
30
+ @click="${(e, t) => e._handleCloseClick(t.event)}"
31
+ >
32
+ ${() => t("close-line", u.Span)}
33
+ </button>`;
34
+ }
53
35
  //#endregion
54
- //#region src/lib/toggletip/toggletip.template.ts
55
- var _ = (e) => l("control"), v = i("toggletip", g, (e) => {
56
- let t = e.tagFor(d);
36
+ //#region src/lib/tab/definition.ts
37
+ var y = i("tab", g, (e) => {
38
+ let t = l(e);
57
39
  return n`
58
- ${p()}
59
- <${t}
60
- @keydown="${(e, { event: t }) => !(e.open && u(t))}"
61
- class="${_}"
62
- arrow
63
- :anchor="${(e) => e._anchorEl}"
64
- :open="${(e) => e.open}"
65
- ?alternate="${(e) => !e.alternate}"
66
- placement="${(e) => e.placement}"
67
- exportparts="vvd-theme-alternate"
40
+ <template
41
+ slot="tab"
42
+ ?active="${(e) => e.active}"
43
+ ${p({
44
+ role: "tab",
45
+ ariaDisabled: (e) => e.disabled,
46
+ ariaSelected: (e) => e.active
47
+ })}
48
+ @keydown="${(e, t) => e._onKeyDown(t.event)}"
68
49
  >
69
- <div class="content-wrapper">
70
- ${s((e) => e.headline, n`<h2 class="headline">${(e) => e.headline}</h2>`)}
71
- <slot></slot>
72
- <div class="action-items"><slot name="action-items"></slot></div>
50
+ <div class="${_}">
51
+ ${(e) => t(e.icon, u.Slot)} ${(e) => e.label}
52
+ ${(t) => t.removable ? v(e) : null}
73
53
  </div>
74
- </${t}>
54
+ </template>
75
55
  `;
76
- }, [f], { styles: h }), y = a(v);
56
+ }, [s], { styles: h }), b = a(y);
77
57
  //#endregion
78
- export { v as n, g as r, y as t };
58
+ export { y as n, g as r, b as t };
@@ -1,10 +1,5 @@
1
- const e=require(`./vivid-element.cjs`),t=require(`./definition2.cjs`),n=require(`./decorate.cjs`),r=require(`./class-names.cjs`),i=require(`./definition13.cjs`);var a=class extends e.t{constructor(...e){super(...e),this.placement=`right`}};n.t([e.l({mode:`fromView`})],a.prototype,`placement`,void 0);var o=e=>r.t(`control`),s=e.o(`contextual-help`,a,n=>{let r=n.tagFor(i.r),a=n.tagFor(t.r);return e.d`
2
- <${r} class="base" exportparts="vvd-theme-alternate">
3
- <button class="${o}" slot="anchor">
4
- <slot name="icon" slot="icon">
5
- <${a} name="help-solid"></${a}>
6
- </slot>
7
- </button>
8
- <slot></slot>
9
- </${r}>
10
- `},[t.t,i.n],{styles:`.control{--_connotation-color-primary:var(--vvd-button-accent-primary,var(--vvd-color-canvas-text));--_connotation-color-primary-text:var(--vvd-button-accent-primary-text,var(--vvd-color-canvas));--_connotation-color-primary-increment:var(--vvd-button-accent-primary-increment,var(--vvd-color-neutral-800));--_connotation-color-contrast:var(--vvd-button-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-fierce:var(--vvd-button-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm:var(--vvd-button-accent-firm,var(--vvd-color-canvas-text));--_connotation-color-soft:var(--vvd-button-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-faint:var(--vvd-button-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-fierce-primary:var(--vvd-button-accent-fierce-primary,var(--vvd-color-canvas-text));--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}@media (hover:hover){.control:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}}.control.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}.control:disabled,.control.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}.control:active:where(:not(.disabled,:disabled)),.control.active:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:transparent}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size,24px);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);cursor:pointer;padding-inline:calc(var(--_button-block-size,24px) / 6);vertical-align:middle;border:0;border-radius:50%;justify-content:center;align-items:center;margin:0;display:inline-flex}@supports (aspect-ratio:auto){.control{aspect-ratio:1;padding:0}}.control:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{font-size:var(--_button-icon-size,16px);line-height:1}`}),c=e.s(s);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
1
+ const e=require(`./vivid-element.cjs`),t=require(`./host-semantics.cjs`);var n=class extends t.t(e.t){},r=e.d`
2
+ <template slot="tabpanel" ${t.n({role:`tabpanel`})}>
3
+ <slot></slot>
4
+ </template>
5
+ `,i=e.o(`tab-panel`,n,r,[],{}),a=e.s(i);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
@@ -1,29 +1,11 @@
1
- import { d as e, l as t, o as n, s as r, t as i } from "./vivid-element.js";
2
- import { r as a, t as o } from "./definition2.js";
3
- import { t as s } from "./decorate.js";
4
- import { t as c } from "./class-names.js";
5
- import { n as l, r as u } from "./definition13.js";
6
- //#region src/lib/contextual-help/contextual-help.ts
7
- var d = class extends i {
8
- constructor(...e) {
9
- super(...e), this.placement = "right";
10
- }
11
- };
12
- s([t({ mode: "fromView" })], d.prototype, "placement", void 0);
1
+ import { d as e, o as t, s as n, t as r } from "./vivid-element.js";
2
+ import { n as i, t as a } from "./host-semantics.js";
13
3
  //#endregion
14
- //#region src/lib/contextual-help/contextual-help.template.ts
15
- var f = (e) => c("control"), p = n("contextual-help", d, (t) => {
16
- let n = t.tagFor(u), r = t.tagFor(a);
17
- return e`
18
- <${n} class="base" exportparts="vvd-theme-alternate">
19
- <button class="${f}" slot="anchor">
20
- <slot name="icon" slot="icon">
21
- <${r} name="help-solid"></${r}>
22
- </slot>
23
- </button>
24
- <slot></slot>
25
- </${n}>
26
- `;
27
- }, [o, l], { styles: ".control{--_connotation-color-primary:var(--vvd-button-accent-primary,var(--vvd-color-canvas-text));--_connotation-color-primary-text:var(--vvd-button-accent-primary-text,var(--vvd-color-canvas));--_connotation-color-primary-increment:var(--vvd-button-accent-primary-increment,var(--vvd-color-neutral-800));--_connotation-color-contrast:var(--vvd-button-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-fierce:var(--vvd-button-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm:var(--vvd-button-accent-firm,var(--vvd-color-canvas-text));--_connotation-color-soft:var(--vvd-button-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-faint:var(--vvd-button-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-fierce-primary:var(--vvd-button-accent-fierce-primary,var(--vvd-color-canvas-text));--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}@media (hover:hover){.control:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}}.control.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:transparent}.control:disabled,.control.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:transparent}.control:active:where(:not(.disabled,:disabled)),.control.active:where(:not(.disabled,:disabled)){--_appearance-color-text:var(--_connotation-color-firm);--_appearance-color-fill:var(--_connotation-color-soft);--_appearance-color-outline:transparent}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size,24px);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);cursor:pointer;padding-inline:calc(var(--_button-block-size,24px) / 6);vertical-align:middle;border:0;border-radius:50%;justify-content:center;align-items:center;margin:0;display:inline-flex}@supports (aspect-ratio:auto){.control{aspect-ratio:1;padding:0}}.control:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{font-size:var(--_button-icon-size,16px);line-height:1}" }), m = r(p);
4
+ //#region src/lib/tab-panel/definition.ts
5
+ var o = t("tab-panel", class extends a(r) {}, e`
6
+ <template slot="tabpanel" ${i({ role: "tabpanel" })}>
7
+ <slot></slot>
8
+ </template>
9
+ `, [], {}), s = n(o);
28
10
  //#endregion
29
- export { m as n, p as t };
11
+ export { o as n, s as t };