@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,11 +1,17 @@
1
1
  require("./chunk.cjs");
2
2
  const require_vivid_element = require("./vivid-element.cjs");
3
+ const require_definition = require("./definition2.cjs");
4
+ const require_decorate = require("./decorate.cjs");
5
+ const require_delegates_aria = require("./delegates-aria.cjs");
3
6
  const require_host_semantics = require("./host-semantics.cjs");
4
7
  const require_data_grid_options = require("./data-grid.options.cjs");
5
8
  let _microsoft_fast_element = require("@microsoft/fast-element");
6
9
  //#region src/lib/table/table.scss?inline
7
10
  var table_default = ":host{border-collapse:collapse;border-spacing:0;inline-size:100%}.table-inner-container{--scrollbar-track-color:transparent;--scrollbar-thumb-color:color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%);scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.table-inner-container ::-webkit-scrollbar{width:4px}.table-inner-container ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.table-inner-container ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-fallback-track-color,var(--scrollbar-thumb-color));border:0;border-radius:4px}.table-inner-container{inline-size:100%;display:block;overflow-x:auto}.table-content{inline-size:100%;display:table;overflow-x:auto}";
8
11
  //#endregion
12
+ //#region src/lib/table/table-sorting-button.scss?inline
13
+ var table_sorting_button_default = "button{aspect-ratio:1;cursor:pointer;background:0 0;border:none;border-radius:8px}button: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))}";
14
+ //#endregion
9
15
  //#region src/lib/table/table-head.scss?inline
10
16
  var table_head_default = ":host{display:table-header-group}";
11
17
  //#endregion
@@ -105,7 +111,23 @@ var TableRowTemplate = (context) => {
105
111
  * @slot - Default slot.
106
112
  * @event {CustomEvent<HTMLElement>} cell-focused - Fires when the cell or its contents receive focus
107
113
  */
108
- var TableHeaderCell = class extends require_host_semantics.HostSemantics(require_vivid_element.VividElement) {};
114
+ var TableHeaderCell = class extends require_host_semantics.HostSemantics(require_vivid_element.VividElement) {
115
+ connectedCallback() {
116
+ super.connectedCallback();
117
+ this.addEventListener("sort", this.#sortHandler);
118
+ }
119
+ #sortHandler(event) {
120
+ const direction = event.detail;
121
+ if (direction === "asc") this.setAttribute("aria-sort", "ascending");
122
+ else if (direction === "desc") this.setAttribute("aria-sort", "descending");
123
+ else if (direction === "none") this.setAttribute("aria-sort", "none");
124
+ else this.removeAttribute("aria-sort");
125
+ }
126
+ disconnectedCallback() {
127
+ super.disconnectedCallback();
128
+ this.removeEventListener("sort", this.#sortHandler);
129
+ }
130
+ };
109
131
  //#endregion
110
132
  //#region src/lib/table/table-header-cell.template.ts
111
133
  var TableHeaderCellTemplate = (context) => {
@@ -143,6 +165,52 @@ var TableCellTemplate = (context) => {
143
165
  `;
144
166
  };
145
167
  //#endregion
168
+ //#region src/lib/table/table-sorting-button.ts
169
+ /**
170
+ * @public
171
+ * @component table-sorting-button
172
+ * @slot - Default slot.
173
+ * @event {CustomEvent<undefined>} sort - Emitted when sorting button is clicked.
174
+ */
175
+ var TableSortingButton = class extends require_delegates_aria.DelegatesAria(require_vivid_element.VividElement) {
176
+ get #nextDirection() {
177
+ if (!this.direction || this.direction === "none") return "asc";
178
+ else if (this.direction === "asc") return "desc";
179
+ else return "none";
180
+ }
181
+ toggleSort() {
182
+ if (!this.$emit("sort", this.#nextDirection)) return;
183
+ this.direction = this.#nextDirection;
184
+ this.dispatchEvent(new CustomEvent("sort", {
185
+ detail: this.direction,
186
+ bubbles: true,
187
+ composed: true
188
+ }));
189
+ }
190
+ };
191
+ require_decorate.__decorate([_microsoft_fast_element.attr], TableSortingButton.prototype, "direction", void 0);
192
+ //#endregion
193
+ //#region src/lib/table/table-sorting-button.template.ts
194
+ var TableSortingButtonTemplate = (context) => {
195
+ const iconTag = context.tagFor(require_definition.Icon);
196
+ return _microsoft_fast_element.html`
197
+ <template
198
+ @click="${(x) => x.toggleSort()}"
199
+ ${require_host_semantics.applyHostSemantics({ role: "button" })}
200
+ >
201
+ <button>
202
+ ${(x) => {
203
+ switch (x.direction) {
204
+ case "asc": return _microsoft_fast_element.html`<${iconTag} name="sort-asc-line"></${iconTag}>`;
205
+ case "desc": return _microsoft_fast_element.html`<${iconTag} name="sort-desc-line"></${iconTag}>`;
206
+ default: return _microsoft_fast_element.html`<${iconTag} name="sort-line"></${iconTag}>`;
207
+ }
208
+ }}
209
+ </button>
210
+ </template>
211
+ `;
212
+ };
213
+ //#endregion
146
214
  //#region src/lib/table/definition.ts
147
215
  /**
148
216
  * @internal
@@ -167,12 +235,17 @@ var tableHeadDefinition = require_vivid_element.defineVividComponent("table-head
167
235
  /**
168
236
  * @internal
169
237
  */
238
+ var tableSortingButtonDefinition = require_vivid_element.defineVividComponent("table-sorting-button", TableSortingButton, TableSortingButtonTemplate, [require_definition.iconDefinition], { styles: table_sorting_button_default });
239
+ /**
240
+ * @internal
241
+ */
170
242
  var tableDefinition = require_vivid_element.defineVividComponent("table", Table, TableTemplate, [
171
243
  tableCellDefinition,
172
244
  tableHeaderCellDefinition,
173
245
  tableRowDefinition,
174
246
  tableHeadDefinition,
175
- tableBodyDefinition
247
+ tableBodyDefinition,
248
+ tableSortingButtonDefinition
176
249
  ], { styles: table_default });
177
250
  /**
178
251
  * Registers the table element with the design system.
@@ -217,6 +290,12 @@ Object.defineProperty(exports, "TableRow", {
217
290
  return TableRow;
218
291
  }
219
292
  });
293
+ Object.defineProperty(exports, "TableSortingButton", {
294
+ enumerable: true,
295
+ get: function() {
296
+ return TableSortingButton;
297
+ }
298
+ });
220
299
  Object.defineProperty(exports, "registerTable", {
221
300
  enumerable: true,
222
301
  get: function() {
@@ -259,3 +338,9 @@ Object.defineProperty(exports, "tableRowDefinition", {
259
338
  return tableRowDefinition;
260
339
  }
261
340
  });
341
+ Object.defineProperty(exports, "tableSortingButtonDefinition", {
342
+ enumerable: true,
343
+ get: function() {
344
+ return tableSortingButtonDefinition;
345
+ }
346
+ });
@@ -1,10 +1,16 @@
1
1
  import { o as defineVividComponent, s as createRegisterFunction, t as VividElement } from "./vivid-element.js";
2
+ import { r as Icon, t as iconDefinition } from "./definition2.js";
3
+ import { t as __decorate } from "./decorate.js";
4
+ import { t as DelegatesAria } from "./delegates-aria.js";
2
5
  import { n as applyHostSemantics, t as HostSemantics } from "./host-semantics.js";
3
6
  import { t as DataGridCellRole } from "./data-grid.options.js";
4
- import { html } from "@microsoft/fast-element";
7
+ import { attr, html } from "@microsoft/fast-element";
5
8
  //#region src/lib/table/table.scss?inline
6
9
  var table_default = ":host{border-collapse:collapse;border-spacing:0;inline-size:100%}.table-inner-container{--scrollbar-track-color:transparent;--scrollbar-thumb-color:color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%);scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.table-inner-container ::-webkit-scrollbar{width:4px}.table-inner-container ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.table-inner-container ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-fallback-track-color,var(--scrollbar-thumb-color));border:0;border-radius:4px}.table-inner-container{inline-size:100%;display:block;overflow-x:auto}.table-content{inline-size:100%;display:table;overflow-x:auto}";
7
10
  //#endregion
11
+ //#region src/lib/table/table-sorting-button.scss?inline
12
+ var table_sorting_button_default = "button{aspect-ratio:1;cursor:pointer;background:0 0;border:none;border-radius:8px}button: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))}";
13
+ //#endregion
8
14
  //#region src/lib/table/table-head.scss?inline
9
15
  var table_head_default = ":host{display:table-header-group}";
10
16
  //#endregion
@@ -104,7 +110,23 @@ var TableRowTemplate = (context) => {
104
110
  * @slot - Default slot.
105
111
  * @event {CustomEvent<HTMLElement>} cell-focused - Fires when the cell or its contents receive focus
106
112
  */
107
- var TableHeaderCell = class extends HostSemantics(VividElement) {};
113
+ var TableHeaderCell = class extends HostSemantics(VividElement) {
114
+ connectedCallback() {
115
+ super.connectedCallback();
116
+ this.addEventListener("sort", this.#sortHandler);
117
+ }
118
+ #sortHandler(event) {
119
+ const direction = event.detail;
120
+ if (direction === "asc") this.setAttribute("aria-sort", "ascending");
121
+ else if (direction === "desc") this.setAttribute("aria-sort", "descending");
122
+ else if (direction === "none") this.setAttribute("aria-sort", "none");
123
+ else this.removeAttribute("aria-sort");
124
+ }
125
+ disconnectedCallback() {
126
+ super.disconnectedCallback();
127
+ this.removeEventListener("sort", this.#sortHandler);
128
+ }
129
+ };
108
130
  //#endregion
109
131
  //#region src/lib/table/table-header-cell.template.ts
110
132
  var TableHeaderCellTemplate = (context) => {
@@ -142,6 +164,52 @@ var TableCellTemplate = (context) => {
142
164
  `;
143
165
  };
144
166
  //#endregion
167
+ //#region src/lib/table/table-sorting-button.ts
168
+ /**
169
+ * @public
170
+ * @component table-sorting-button
171
+ * @slot - Default slot.
172
+ * @event {CustomEvent<undefined>} sort - Emitted when sorting button is clicked.
173
+ */
174
+ var TableSortingButton = class extends DelegatesAria(VividElement) {
175
+ get #nextDirection() {
176
+ if (!this.direction || this.direction === "none") return "asc";
177
+ else if (this.direction === "asc") return "desc";
178
+ else return "none";
179
+ }
180
+ toggleSort() {
181
+ if (!this.$emit("sort", this.#nextDirection)) return;
182
+ this.direction = this.#nextDirection;
183
+ this.dispatchEvent(new CustomEvent("sort", {
184
+ detail: this.direction,
185
+ bubbles: true,
186
+ composed: true
187
+ }));
188
+ }
189
+ };
190
+ __decorate([attr], TableSortingButton.prototype, "direction", void 0);
191
+ //#endregion
192
+ //#region src/lib/table/table-sorting-button.template.ts
193
+ var TableSortingButtonTemplate = (context) => {
194
+ const iconTag = context.tagFor(Icon);
195
+ return html`
196
+ <template
197
+ @click="${(x) => x.toggleSort()}"
198
+ ${applyHostSemantics({ role: "button" })}
199
+ >
200
+ <button>
201
+ ${(x) => {
202
+ switch (x.direction) {
203
+ case "asc": return html`<${iconTag} name="sort-asc-line"></${iconTag}>`;
204
+ case "desc": return html`<${iconTag} name="sort-desc-line"></${iconTag}>`;
205
+ default: return html`<${iconTag} name="sort-line"></${iconTag}>`;
206
+ }
207
+ }}
208
+ </button>
209
+ </template>
210
+ `;
211
+ };
212
+ //#endregion
145
213
  //#region src/lib/table/definition.ts
146
214
  /**
147
215
  * @internal
@@ -166,12 +234,17 @@ var tableHeadDefinition = defineVividComponent("table-head", TableHead, TableHea
166
234
  /**
167
235
  * @internal
168
236
  */
237
+ var tableSortingButtonDefinition = defineVividComponent("table-sorting-button", TableSortingButton, TableSortingButtonTemplate, [iconDefinition], { styles: table_sorting_button_default });
238
+ /**
239
+ * @internal
240
+ */
169
241
  var tableDefinition = defineVividComponent("table", Table, TableTemplate, [
170
242
  tableCellDefinition,
171
243
  tableHeaderCellDefinition,
172
244
  tableRowDefinition,
173
245
  tableHeadDefinition,
174
- tableBodyDefinition
246
+ tableBodyDefinition,
247
+ tableSortingButtonDefinition
175
248
  ], { styles: table_default });
176
249
  /**
177
250
  * Registers the table element with the design system.
@@ -180,4 +253,4 @@ var tableDefinition = defineVividComponent("table", Table, TableTemplate, [
180
253
  */
181
254
  var registerTable = createRegisterFunction(tableDefinition);
182
255
  //#endregion
183
- export { tableHeadDefinition as a, TableCell as c, TableBody as d, TableHead as f, tableDefinition as i, TableHeaderCell as l, tableBodyDefinition as n, tableHeaderCellDefinition as o, Table as p, tableCellDefinition as r, tableRowDefinition as s, registerTable as t, TableRow as u };
256
+ export { tableHeadDefinition as a, tableSortingButtonDefinition as c, TableHeaderCell as d, TableRow as f, Table as h, tableDefinition as i, TableSortingButton as l, TableHead as m, tableBodyDefinition as n, tableHeaderCellDefinition as o, TableBody as p, tableCellDefinition as r, tableRowDefinition as s, registerTable as t, TableCell as u };
@@ -4,7 +4,7 @@ const require_definition = require("./definition.cjs");
4
4
  const require_decorate = require("./decorate.cjs");
5
5
  const require_definition$1 = require("./definition7.cjs");
6
6
  const require_definition$2 = require("./definition10.cjs");
7
- const require_definition$3 = require("./definition25.cjs");
7
+ const require_definition$3 = require("./definition26.cjs");
8
8
  const require_definition$4 = require("./definition34.cjs");
9
9
  const require_picker_field_template = require("./picker-field.template.cjs");
10
10
  const require_calendar_picker_template = require("./calendar-picker.template.cjs");
@@ -20,7 +20,7 @@ let _microsoft_fast_element = require("@microsoft/fast-element");
20
20
  * @slot helper-text - Describes how to use the date-picker. Alternative to the `helper-text` attribute.
21
21
  * @event {CustomEvent<undefined>} input - Emitted when the date is changed by the user.
22
22
  * @event {CustomEvent<undefined>} change - Emitted when the date is changed by the user.
23
- * @vueModel modelValue value input `event.currentTarget.value`
23
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
24
24
  * @testAction selectDate selectDate
25
25
  */
26
26
  var DatePicker = class extends require_single_date_picker.SingleDatePickerMixin(require_single_value_picker.SingleValuePicker(require_calendar_picker_template.MinMaxCalendarPicker(require_calendar_picker_template.CalendarPicker(require_picker_field_template.PickerField)))) {
@@ -3,7 +3,7 @@ import { n as visuallyHiddenDefinition } from "./definition.js";
3
3
  import { t as __decorate } from "./decorate.js";
4
4
  import { t as buttonDefinition } from "./definition7.js";
5
5
  import { t as popupDefinition } from "./definition10.js";
6
- import { n as textFieldDefinition } from "./definition25.js";
6
+ import { n as textFieldDefinition } from "./definition26.js";
7
7
  import { t as dividerDefinition } from "./definition34.js";
8
8
  import { n as PickerField, r as picker_field_default, t as PickerFieldTemplate } from "./picker-field.template.js";
9
9
  import { a as formatPresentationDate, i as CalendarPicker, l as isValidDateStr, n as MinMaxCalendarPicker, o as parsePresentationDate, t as CalendarPickerTemplate, u as calendar_picker_default } from "./calendar-picker.template.js";
@@ -19,7 +19,7 @@ import { volatile } from "@microsoft/fast-element";
19
19
  * @slot helper-text - Describes how to use the date-picker. Alternative to the `helper-text` attribute.
20
20
  * @event {CustomEvent<undefined>} input - Emitted when the date is changed by the user.
21
21
  * @event {CustomEvent<undefined>} change - Emitted when the date is changed by the user.
22
- * @vueModel modelValue value input `event.currentTarget.value`
22
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
23
23
  * @testAction selectDate selectDate
24
24
  */
25
25
  var DatePicker = class extends SingleDatePickerMixin(SingleValuePicker(MinMaxCalendarPicker(CalendarPicker(PickerField)))) {
@@ -4,7 +4,7 @@ const require_definition = require("./definition.cjs");
4
4
  const require_decorate = require("./decorate.cjs");
5
5
  const require_definition$1 = require("./definition7.cjs");
6
6
  const require_definition$2 = require("./definition10.cjs");
7
- const require_definition$3 = require("./definition25.cjs");
7
+ const require_definition$3 = require("./definition26.cjs");
8
8
  const require_definition$4 = require("./definition34.cjs");
9
9
  const require_picker_field_template = require("./picker-field.template.cjs");
10
10
  const require_calendar_picker_template = require("./calendar-picker.template.cjs");
@@ -3,7 +3,7 @@ import { n as visuallyHiddenDefinition } from "./definition.js";
3
3
  import { t as __decorate } from "./decorate.js";
4
4
  import { t as buttonDefinition } from "./definition7.js";
5
5
  import { t as popupDefinition } from "./definition10.js";
6
- import { n as textFieldDefinition } from "./definition25.js";
6
+ import { n as textFieldDefinition } from "./definition26.js";
7
7
  import { t as dividerDefinition } from "./definition34.js";
8
8
  import { n as PickerField, r as picker_field_default, t as PickerFieldTemplate } from "./picker-field.template.js";
9
9
  import { a as formatPresentationDate, i as CalendarPicker, l as isValidDateStr, n as MinMaxCalendarPicker, o as parsePresentationDate, s as compareDateStr, t as CalendarPickerTemplate, u as calendar_picker_default } from "./calendar-picker.template.js";
@@ -4,7 +4,7 @@ const require_definition = require("./definition.cjs");
4
4
  const require_decorate = require("./decorate.cjs");
5
5
  const require_definition$1 = require("./definition7.cjs");
6
6
  const require_definition$2 = require("./definition10.cjs");
7
- const require_definition$3 = require("./definition25.cjs");
7
+ const require_definition$3 = require("./definition26.cjs");
8
8
  const require_definition$4 = require("./definition34.cjs");
9
9
  const require_picker_field_template = require("./picker-field.template.cjs");
10
10
  const require_calendar_picker_template = require("./calendar-picker.template.cjs");
@@ -55,19 +55,23 @@ var ValidDateTimeFilter = {
55
55
  * @slot helper-text - Describes how to use the date-picker. Alternative to the `helper-text` attribute.
56
56
  * @event {CustomEvent<undefined>} input - Emitted when the date is changed by the user.
57
57
  * @event {CustomEvent<undefined>} change - Emitted when the date is changed by the user.
58
- * @vueModel modelValue value input `event.currentTarget.value`
58
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
59
59
  * @testAction selectDateTime selectDateTime
60
60
  */
61
61
  var DateTimePicker = class extends require_time_selection_picker_template.TimeSelectionPicker(require_single_date_picker.SingleDatePickerMixin(require_single_value_picker.SingleValuePicker(require_calendar_picker_template.CalendarPicker(require_picker_field_template.PickerField)))) {
62
+ /** @internal */
62
63
  get _resolvedMinDate() {
63
64
  return this.minDate || extractDatePart(this.min);
64
65
  }
66
+ /** @internal */
65
67
  get _resolvedMaxDate() {
66
68
  return this.maxDate || extractDatePart(this.max);
67
69
  }
70
+ /** @internal */
68
71
  get _resolvedMinTime() {
69
72
  return this.minTime || this.min && extractDatePart(this.min) === this._dateValue() && extractTimePart(this.min) || "";
70
73
  }
74
+ /** @internal */
71
75
  get _resolvedMaxTime() {
72
76
  return this.maxTime || this.max && extractDatePart(this.max) === this._dateValue() && extractTimePart(this.max) || "";
73
77
  }
@@ -3,7 +3,7 @@ import { n as visuallyHiddenDefinition } from "./definition.js";
3
3
  import { t as __decorate } from "./decorate.js";
4
4
  import { t as buttonDefinition } from "./definition7.js";
5
5
  import { t as popupDefinition } from "./definition10.js";
6
- import { n as textFieldDefinition } from "./definition25.js";
6
+ import { n as textFieldDefinition } from "./definition26.js";
7
7
  import { t as dividerDefinition } from "./definition34.js";
8
8
  import { n as PickerField, r as picker_field_default, t as PickerFieldTemplate } from "./picker-field.template.js";
9
9
  import { a as formatPresentationDate, c as currentDateStr, i as CalendarPicker, l as isValidDateStr, o as parsePresentationDate, r as ValidDateFilter, s as compareDateStr, t as CalendarPickerTemplate, u as calendar_picker_default } from "./calendar-picker.template.js";
@@ -54,19 +54,23 @@ var ValidDateTimeFilter = {
54
54
  * @slot helper-text - Describes how to use the date-picker. Alternative to the `helper-text` attribute.
55
55
  * @event {CustomEvent<undefined>} input - Emitted when the date is changed by the user.
56
56
  * @event {CustomEvent<undefined>} change - Emitted when the date is changed by the user.
57
- * @vueModel modelValue value input `event.currentTarget.value`
57
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
58
58
  * @testAction selectDateTime selectDateTime
59
59
  */
60
60
  var DateTimePicker = class extends TimeSelectionPicker(SingleDatePickerMixin(SingleValuePicker(CalendarPicker(PickerField)))) {
61
+ /** @internal */
61
62
  get _resolvedMinDate() {
62
63
  return this.minDate || extractDatePart(this.min);
63
64
  }
65
+ /** @internal */
64
66
  get _resolvedMaxDate() {
65
67
  return this.maxDate || extractDatePart(this.max);
66
68
  }
69
+ /** @internal */
67
70
  get _resolvedMinTime() {
68
71
  return this.minTime || this.min && extractDatePart(this.min) === this._dateValue() && extractTimePart(this.min) || "";
69
72
  }
73
+ /** @internal */
70
74
  get _resolvedMaxTime() {
71
75
  return this.maxTime || this.max && extractDatePart(this.max) === this._dateValue() && extractTimePart(this.max) || "";
72
76
  }
@@ -5,11 +5,11 @@ const require_definition$1 = require("./definition2.cjs");
5
5
  const require_decorate = require("./decorate.cjs");
6
6
  const require_localized = require("./localized.cjs");
7
7
  const require_definition$2 = require("./definition7.cjs");
8
- const require_definition$3 = require("./definition25.cjs");
8
+ const require_definition$3 = require("./definition26.cjs");
9
9
  let _microsoft_fast_element = require("@microsoft/fast-element");
10
10
  let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
11
11
  //#region src/lib/dial-pad/dial-pad.scss?inline
12
- var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block}.base{box-sizing:border-box;grid-template-rows:80px 1fr auto;display:grid}.base.no-input{grid-template-rows:1fr auto}.digits{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:16px;inline-size:100%;display:grid}.phone-field{grid-column:1/-1;align-self:flex-start}.digit-btn{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.digit-btn:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.digit-btn.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.digit-btn:disabled,.digit-btn.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.digit-btn{--_connotation-color-contrast:var(--vvd-dial-pad-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-soft:var(--vvd-dial-pad-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-dial-pad-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-dial-pad-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm-all:var(--vvd-dial-pad-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-faint:var(--vvd-dial-pad-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-dim:var(--vvd-dial-pad-accent-dim,var(--vvd-color-neutral-200));--vvd-button-accent-firm:var(--_appearance-color-text);box-shadow:0 0 0 1px var(--_appearance-color-outline);border-radius:16px;flex-direction:column;inline-size:100%;display:flex;overflow:hidden}.digit-btn:not(.disabled) .digit-btn-num{color:var(--vvd-color-canvas-text)}.digit-btn:focus-within{--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))}.call-btn{grid-column:1/-1;margin-top:32px}";
12
+ var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block}.base{box-sizing:border-box;grid-template-rows:80px 1fr auto;display:grid}.base.no-input{grid-template-rows:1fr auto}.digits{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:16px;inline-size:100%;display:grid}.phone-field{grid-column:1/-1;align-self:flex-start}.digit-btn{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.digit-btn:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.digit-btn.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.digit-btn:disabled,.digit-btn.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.digit-btn{--_connotation-color-contrast:var(--vvd-dial-pad-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-soft:var(--vvd-dial-pad-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-dial-pad-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-dial-pad-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm-all:var(--vvd-dial-pad-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-faint:var(--vvd-dial-pad-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-dim:var(--vvd-dial-pad-accent-dim,var(--vvd-color-neutral-200));--vvd-button-accent-firm:var(--_appearance-color-text);box-shadow:0 0 0 1px var(--_appearance-color-outline);border-radius:16px;flex-direction:column;inline-size:100%;display:flex;overflow:hidden}.digit-btn:not(.disabled) .digit-btn-num{color:var(--vvd-color-canvas-text)}.digit-btn:focus-within{--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))}.call-btn{grid-column:1/-1;margin-block-start:32px}.base.size-condensed{grid-template-rows:60px 1fr auto}.base.size-condensed .digits{grid-template-rows:repeat(4,.85fr);gap:8px}.base.size-condensed .call-btn{margin-block-start:12px}.base.size-condensed .digit-btn-num{padding-top:6px}";
13
13
  //#endregion
14
14
  //#region src/lib/dial-pad/dial-pad.ts
15
15
  /**
@@ -24,7 +24,7 @@ var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block
24
24
  * @event {CustomEvent<HTMLElement>}keypad-click - Emitted when a digit button is clicked
25
25
  * @event {CustomEvent<undefined>} dial - Emitted when the call button is clicked
26
26
  * @event {CustomEvent<undefined>} end-call - Emitted when the end call button is clicked
27
- * @vueModel modelValue value input `event.currentTarget.value`
27
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
28
28
  *
29
29
  */
30
30
  var DialPad = class extends require_localized.Localized(require_vivid_element.VividElement) {
@@ -170,6 +170,7 @@ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
170
170
  mode: "boolean",
171
171
  attribute: "no-input"
172
172
  })], DialPad.prototype, "noInput", void 0);
173
+ require_decorate.__decorate([_microsoft_fast_element.attr], DialPad.prototype, "size", void 0);
173
174
  require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "end-call-button-label" })], DialPad.prototype, "endCallButtonLabel", void 0);
174
175
  require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "call-button-label" })], DialPad.prototype, "callButtonLabel", void 0);
175
176
  require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "delete-aria-label" })], DialPad.prototype, "deleteAriaLabel", void 0);
@@ -200,7 +201,7 @@ var DIAL_PAD_BUTTONS = [
200
201
  new DialPadButton("0", "+", "digitZeroLabel", "zero-solid", "btn0"),
201
202
  new DialPadButton("#", null, "digitHashtagLabel", "hashtag-solid", "btnHashtag")
202
203
  ];
203
- var getClasses = ({ noInput }) => (0, _microsoft_fast_web_utilities.classNames)("base", ["no-input", Boolean(noInput)]);
204
+ var getClasses = ({ noInput, size }) => (0, _microsoft_fast_web_utilities.classNames)("base", [`size-${size}`, Boolean(size)], ["no-input", Boolean(noInput)]);
204
205
  function handleKeyDown(x, e) {
205
206
  if (e.key === _microsoft_fast_web_utilities.keyEnter && !x.pending && !x.disabled && !x.callActive && !x.noCall && x.value.length > 0 && e.target instanceof HTMLInputElement) x._onDial();
206
207
  else if (e.key === " " || e.key === "Space") {
@@ -285,6 +286,7 @@ function renderTextField(textFieldTag, buttonTag) {
285
286
  @focus="${stopPropagation}"
286
287
  @blur="${stopPropagation}"
287
288
  ?autofocus="${(x) => x.autofocus}"
289
+ scale="${(x) => x.size === "condensed" ? "condensed" : "normal"}">
288
290
  >
289
291
  ${(0, _microsoft_fast_element.when)((x) => x.value && x.value.length && x.value.length > 0, _microsoft_fast_element.html`<${buttonTag}
290
292
  slot="action-items"
@@ -344,7 +346,7 @@ function renderDigits(buttonTag, iconTag) {
344
346
  }
345
347
  function renderDialButton(buttonTag) {
346
348
  return _microsoft_fast_element.html`<${buttonTag} class="call-btn"
347
- size="expanded"
349
+ size="${(x) => x.size === "condensed" ? "normal" : "expanded"}"
348
350
  appearance="filled"
349
351
  icon="${(x) => x.callActive ? "disable-call-line" : "call-line"}"
350
352
  connotation="${(x) => x.callActive ? "alert" : "cta"}"
@@ -4,11 +4,11 @@ import { r as Icon, t as iconDefinition } from "./definition2.js";
4
4
  import { t as __decorate } from "./decorate.js";
5
5
  import { t as Localized } from "./localized.js";
6
6
  import { i as Button, t as buttonDefinition } from "./definition7.js";
7
- import { n as textFieldDefinition, r as TextField } from "./definition25.js";
7
+ import { n as textFieldDefinition, r as TextField } from "./definition26.js";
8
8
  import { attr, html, observable, ref, repeat, when } from "@microsoft/fast-element";
9
9
  import { classNames, keyEnter } from "@microsoft/fast-web-utilities";
10
10
  //#region src/lib/dial-pad/dial-pad.scss?inline
11
- var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block}.base{box-sizing:border-box;grid-template-rows:80px 1fr auto;display:grid}.base.no-input{grid-template-rows:1fr auto}.digits{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:16px;inline-size:100%;display:grid}.phone-field{grid-column:1/-1;align-self:flex-start}.digit-btn{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.digit-btn:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.digit-btn.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.digit-btn:disabled,.digit-btn.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.digit-btn{--_connotation-color-contrast:var(--vvd-dial-pad-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-soft:var(--vvd-dial-pad-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-dial-pad-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-dial-pad-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm-all:var(--vvd-dial-pad-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-faint:var(--vvd-dial-pad-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-dim:var(--vvd-dial-pad-accent-dim,var(--vvd-color-neutral-200));--vvd-button-accent-firm:var(--_appearance-color-text);box-shadow:0 0 0 1px var(--_appearance-color-outline);border-radius:16px;flex-direction:column;inline-size:100%;display:flex;overflow:hidden}.digit-btn:not(.disabled) .digit-btn-num{color:var(--vvd-color-canvas-text)}.digit-btn:focus-within{--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))}.call-btn{grid-column:1/-1;margin-top:32px}";
11
+ var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block}.base{box-sizing:border-box;grid-template-rows:80px 1fr auto;display:grid}.base.no-input{grid-template-rows:1fr auto}.digits{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:16px;inline-size:100%;display:grid}.phone-field{grid-column:1/-1;align-self:flex-start}.digit-btn{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.digit-btn:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.digit-btn.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.digit-btn:disabled,.digit-btn.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.digit-btn{--_connotation-color-contrast:var(--vvd-dial-pad-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-soft:var(--vvd-dial-pad-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-dial-pad-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-dial-pad-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm-all:var(--vvd-dial-pad-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-faint:var(--vvd-dial-pad-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-dim:var(--vvd-dial-pad-accent-dim,var(--vvd-color-neutral-200));--vvd-button-accent-firm:var(--_appearance-color-text);box-shadow:0 0 0 1px var(--_appearance-color-outline);border-radius:16px;flex-direction:column;inline-size:100%;display:flex;overflow:hidden}.digit-btn:not(.disabled) .digit-btn-num{color:var(--vvd-color-canvas-text)}.digit-btn:focus-within{--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))}.call-btn{grid-column:1/-1;margin-block-start:32px}.base.size-condensed{grid-template-rows:60px 1fr auto}.base.size-condensed .digits{grid-template-rows:repeat(4,.85fr);gap:8px}.base.size-condensed .call-btn{margin-block-start:12px}.base.size-condensed .digit-btn-num{padding-top:6px}";
12
12
  //#endregion
13
13
  //#region src/lib/dial-pad/dial-pad.ts
14
14
  /**
@@ -23,7 +23,7 @@ var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block
23
23
  * @event {CustomEvent<HTMLElement>}keypad-click - Emitted when a digit button is clicked
24
24
  * @event {CustomEvent<undefined>} dial - Emitted when the call button is clicked
25
25
  * @event {CustomEvent<undefined>} end-call - Emitted when the end call button is clicked
26
- * @vueModel modelValue value input `event.currentTarget.value`
26
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
27
27
  *
28
28
  */
29
29
  var DialPad = class extends Localized(VividElement) {
@@ -169,6 +169,7 @@ __decorate([attr({
169
169
  mode: "boolean",
170
170
  attribute: "no-input"
171
171
  })], DialPad.prototype, "noInput", void 0);
172
+ __decorate([attr], DialPad.prototype, "size", void 0);
172
173
  __decorate([attr({ attribute: "end-call-button-label" })], DialPad.prototype, "endCallButtonLabel", void 0);
173
174
  __decorate([attr({ attribute: "call-button-label" })], DialPad.prototype, "callButtonLabel", void 0);
174
175
  __decorate([attr({ attribute: "delete-aria-label" })], DialPad.prototype, "deleteAriaLabel", void 0);
@@ -199,7 +200,7 @@ var DIAL_PAD_BUTTONS = [
199
200
  new DialPadButton("0", "+", "digitZeroLabel", "zero-solid", "btn0"),
200
201
  new DialPadButton("#", null, "digitHashtagLabel", "hashtag-solid", "btnHashtag")
201
202
  ];
202
- var getClasses = ({ noInput }) => classNames("base", ["no-input", Boolean(noInput)]);
203
+ var getClasses = ({ noInput, size }) => classNames("base", [`size-${size}`, Boolean(size)], ["no-input", Boolean(noInput)]);
203
204
  function handleKeyDown(x, e) {
204
205
  if (e.key === keyEnter && !x.pending && !x.disabled && !x.callActive && !x.noCall && x.value.length > 0 && e.target instanceof HTMLInputElement) x._onDial();
205
206
  else if (e.key === " " || e.key === "Space") {
@@ -284,6 +285,7 @@ function renderTextField(textFieldTag, buttonTag) {
284
285
  @focus="${stopPropagation}"
285
286
  @blur="${stopPropagation}"
286
287
  ?autofocus="${(x) => x.autofocus}"
288
+ scale="${(x) => x.size === "condensed" ? "condensed" : "normal"}">
287
289
  >
288
290
  ${when((x) => x.value && x.value.length && x.value.length > 0, html`<${buttonTag}
289
291
  slot="action-items"
@@ -343,7 +345,7 @@ function renderDigits(buttonTag, iconTag) {
343
345
  }
344
346
  function renderDialButton(buttonTag) {
345
347
  return html`<${buttonTag} class="call-btn"
346
- size="expanded"
348
+ size="${(x) => x.size === "condensed" ? "normal" : "expanded"}"
347
349
  appearance="filled"
348
350
  icon="${(x) => x.callActive ? "disable-call-line" : "call-line"}"
349
351
  connotation="${(x) => x.callActive ? "alert" : "cta"}"
@@ -85,6 +85,7 @@ var Dialog = class extends require_localized.Localized(require_delegates_aria.De
85
85
  this.$emit("open", void 0, { bubbles: false });
86
86
  }
87
87
  }
88
+ /** @internal */
88
89
  get _showDismissButton() {
89
90
  return this.#isDismissibleVia("dismiss-button");
90
91
  }
@@ -84,6 +84,7 @@ var Dialog = class extends Localized(DelegatesAria(VividElement)) {
84
84
  this.$emit("open", void 0, { bubbles: false });
85
85
  }
86
86
  }
87
+ /** @internal */
87
88
  get _showDismissButton() {
88
89
  return this.#isDismissibleVia("dismiss-button");
89
90
  }