@vonage/vivid 5.2.0 → 5.3.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 (373) hide show
  1. package/accordion-item/definition.cjs +2 -1
  2. package/accordion-item/definition.js +2 -1
  3. package/alert/index.cjs +1 -1
  4. package/alert/index.js +1 -1
  5. package/audio-player/definition.cjs +4 -2
  6. package/audio-player/definition.js +4 -2
  7. package/audio-player/index.cjs +5 -3
  8. package/audio-player/index.js +5 -3
  9. package/badge/index.cjs +2 -2
  10. package/badge/index.js +4 -4
  11. package/banner/index.cjs +3 -3
  12. package/banner/index.js +6 -6
  13. package/breadcrumb-item/index.cjs +1 -1
  14. package/breadcrumb-item/index.js +1 -1
  15. package/bundled/affix.cjs +7 -7
  16. package/bundled/affix.js +5 -5
  17. package/bundled/anchored.cjs +1 -1
  18. package/bundled/anchored.js +6 -6
  19. package/bundled/attribute-binding-behaviour.cjs +1 -1
  20. package/bundled/attribute-binding-behaviour.js +15 -13
  21. package/bundled/base-color-picker.cjs +13 -0
  22. package/bundled/base-color-picker.js +194 -0
  23. package/bundled/button.cjs +1 -1
  24. package/bundled/button.js +2 -2
  25. package/bundled/calendar-picker.template.cjs +1 -1
  26. package/bundled/calendar-picker.template.js +21 -21
  27. package/bundled/char-count.cjs +1 -1
  28. package/bundled/char-count.js +1 -1
  29. package/bundled/children.cjs +1 -1
  30. package/bundled/children.js +28 -20
  31. package/bundled/definition.cjs +3 -3
  32. package/bundled/definition.js +38 -38
  33. package/bundled/definition10.cjs +72 -18
  34. package/bundled/definition10.js +351 -65
  35. package/bundled/definition11.cjs +19 -10
  36. package/bundled/definition11.js +66 -37
  37. package/bundled/definition12.cjs +10 -1
  38. package/bundled/definition12.js +38 -14
  39. package/bundled/definition13.cjs +1 -73
  40. package/bundled/definition13.js +15 -354
  41. package/bundled/definition15.cjs +1 -1
  42. package/bundled/definition15.js +1 -1
  43. package/bundled/definition16.cjs +2 -2
  44. package/bundled/definition16.js +8 -8
  45. package/bundled/definition17.cjs +7 -7
  46. package/bundled/definition17.js +17 -17
  47. package/bundled/definition19.cjs +5 -5
  48. package/bundled/definition19.js +8 -8
  49. package/bundled/definition2.cjs +9 -5
  50. package/bundled/definition2.js +21 -17
  51. package/bundled/definition22.cjs +9 -9
  52. package/bundled/definition22.js +31 -31
  53. package/bundled/definition3.cjs +1 -1
  54. package/bundled/definition3.js +1 -1
  55. package/bundled/definition6.cjs +1 -1
  56. package/bundled/definition6.js +10 -10
  57. package/bundled/definition7.cjs +1 -1
  58. package/bundled/definition7.js +6 -6
  59. package/bundled/definition8.cjs +2 -2
  60. package/bundled/definition8.js +4 -4
  61. package/bundled/definition9.cjs +1 -1
  62. package/bundled/definition9.js +1 -1
  63. package/bundled/delegates-aria.cjs +1 -1
  64. package/bundled/delegates-aria.js +59 -46
  65. package/bundled/form-associated.cjs +1 -1
  66. package/bundled/form-associated.js +3 -3
  67. package/bundled/host-semantics.cjs +1 -1
  68. package/bundled/host-semantics.js +48 -34
  69. package/bundled/localized.cjs +1 -1
  70. package/bundled/localized.js +41 -30
  71. package/bundled/mixins.cjs +18 -18
  72. package/bundled/mixins.js +99 -93
  73. package/bundled/normalize.cjs +1 -0
  74. package/bundled/normalize.js +7 -0
  75. package/bundled/picker-field.template.cjs +1 -1
  76. package/bundled/picker-field.template.js +4 -4
  77. package/bundled/ref.cjs +1 -1
  78. package/bundled/ref.js +8 -25
  79. package/bundled/repeat.cjs +1 -1
  80. package/bundled/repeat.js +459 -233
  81. package/bundled/slider.template.cjs +1 -1
  82. package/bundled/slider.template.js +2 -2
  83. package/bundled/slotted.cjs +1 -1
  84. package/bundled/slotted.js +62 -45
  85. package/bundled/time-selection-picker.template.cjs +1 -1
  86. package/bundled/time-selection-picker.template.js +5 -5
  87. package/bundled/vivid-element.cjs +1 -1
  88. package/bundled/vivid-element.js +2126 -1172
  89. package/bundled/when.cjs +1 -1
  90. package/bundled/when.js +8 -7
  91. package/calendar/definition.cjs +1 -1
  92. package/calendar/definition.js +2 -2
  93. package/calendar/index.cjs +1 -1
  94. package/calendar/index.js +6 -6
  95. package/calendar-event/index.cjs +1 -1
  96. package/calendar-event/index.js +1 -1
  97. package/card/definition.cjs +10 -2
  98. package/card/definition.js +10 -2
  99. package/card/index.cjs +19 -11
  100. package/card/index.js +35 -27
  101. package/color-picker/definition.cjs +1079 -0
  102. package/color-picker/definition.js +1073 -0
  103. package/color-picker/index.cjs +127 -0
  104. package/color-picker/index.js +726 -0
  105. package/combobox/definition.cjs +1 -1
  106. package/combobox/definition.js +2 -2
  107. package/combobox/index.cjs +4 -4
  108. package/combobox/index.js +15 -15
  109. package/contextual-help/index.cjs +1 -1
  110. package/contextual-help/index.js +1 -1
  111. package/custom-elements.json +1365 -161
  112. package/data-grid/definition.cjs +862 -27
  113. package/data-grid/definition.js +863 -28
  114. package/data-grid/index.cjs +25 -25
  115. package/data-grid/index.js +175 -168
  116. package/date-picker/index.cjs +1 -1
  117. package/date-picker/index.js +2 -2
  118. package/date-range-picker/index.cjs +1 -1
  119. package/date-range-picker/index.js +2 -2
  120. package/date-time-picker/index.cjs +1 -1
  121. package/date-time-picker/index.js +2 -2
  122. package/dial-pad/definition.cjs +4 -0
  123. package/dial-pad/definition.js +4 -0
  124. package/dial-pad/index.cjs +3 -3
  125. package/dial-pad/index.js +42 -39
  126. package/dialog/definition.cjs +4 -1
  127. package/dialog/definition.js +4 -1
  128. package/dialog/index.cjs +21 -18
  129. package/dialog/index.js +43 -40
  130. package/empty-state/definition.cjs +7 -2
  131. package/empty-state/definition.js +7 -2
  132. package/empty-state/index.cjs +10 -5
  133. package/empty-state/index.js +18 -13
  134. package/fab/index.cjs +2 -2
  135. package/fab/index.js +4 -4
  136. package/file-picker/definition.cjs +2 -2
  137. package/file-picker/definition.js +3 -3
  138. package/file-picker/index.cjs +1 -1
  139. package/file-picker/index.js +4 -4
  140. package/icon/definition.cjs +10 -6
  141. package/icon/definition.js +10 -6
  142. package/index.cjs +4 -0
  143. package/index.js +1 -0
  144. package/lib/accordion-item/accordion-item.d.ts +2 -2
  145. package/lib/action-group/action-group.d.ts +2 -2
  146. package/lib/alert/alert.d.ts +4 -4
  147. package/lib/audio-player/audio-player.d.ts +2 -2
  148. package/lib/avatar/avatar.d.ts +2 -2
  149. package/lib/badge/badge.d.ts +2 -2
  150. package/lib/banner/banner.d.ts +6 -6
  151. package/lib/breadcrumb/breadcrumb.d.ts +2 -2
  152. package/lib/breadcrumb-item/breadcrumb-item.d.ts +2 -2
  153. package/lib/button/button.d.ts +6 -6
  154. package/lib/button/button.template.d.ts +2 -1
  155. package/lib/calendar/calendar.d.ts +1 -1
  156. package/lib/calendar-event/calendar-event.d.ts +2 -2
  157. package/lib/card/card.d.ts +2 -2
  158. package/lib/checkbox/checkbox.d.ts +12 -12
  159. package/lib/color-picker/color-picker.d.ts +2420 -0
  160. package/lib/color-picker/color-picker.template.d.ts +3 -0
  161. package/lib/color-picker/definition.d.ts +4 -0
  162. package/lib/color-picker/locale.d.ts +9 -0
  163. package/lib/combobox/combobox.d.ts +14 -14
  164. package/lib/components.d.ts +1 -0
  165. package/lib/data-grid/data-grid-cell.d.ts +4 -4
  166. package/lib/data-grid/data-grid-row.d.ts +3 -4
  167. package/lib/data-grid/data-grid.d.ts +1 -2
  168. package/lib/date-picker/date-picker.d.ts +54 -54
  169. package/lib/date-range-picker/date-range-picker.d.ts +28 -28
  170. package/lib/date-time-picker/date-time-picker.d.ts +56 -56
  171. package/lib/dial-pad/dial-pad.d.ts +3 -2
  172. package/lib/dialog/dialog.d.ts +4 -4
  173. package/lib/divider/divider.d.ts +2 -2
  174. package/lib/fab/fab.d.ts +2 -2
  175. package/lib/file-picker/file-picker.d.ts +14 -14
  176. package/lib/header/header.d.ts +2 -2
  177. package/lib/menu/menu.d.ts +4 -4
  178. package/lib/menu-item/menu-item.d.ts +4 -4
  179. package/lib/nav/nav.d.ts +2 -2
  180. package/lib/nav-disclosure/nav-disclosure.d.ts +4 -4
  181. package/lib/nav-item/nav-item.d.ts +4 -4
  182. package/lib/note/note.d.ts +2 -2
  183. package/lib/number-field/number-field.d.ts +18 -18
  184. package/lib/option/option.d.ts +4 -4
  185. package/lib/pagination/pagination.d.ts +2 -2
  186. package/lib/progress/progress.d.ts +2 -2
  187. package/lib/progress-ring/progress-ring.d.ts +2 -2
  188. package/lib/radio/radio.d.ts +6 -6
  189. package/lib/radio-group/radio-group.d.ts +2 -2
  190. package/lib/range-slider/range-slider.d.ts +6 -6
  191. package/lib/rich-text-editor/menubar/menubar.d.ts +2 -2
  192. package/lib/rich-text-editor/rich-text-editor.d.ts +2 -2
  193. package/lib/searchable-select/option-tag.d.ts +2 -2
  194. package/lib/searchable-select/searchable-select.d.ts +18 -18
  195. package/lib/select/select.d.ts +16 -16
  196. package/lib/selectable-box/selectable-box.d.ts +2 -2
  197. package/lib/simple-color-picker/locale.d.ts +0 -1
  198. package/lib/simple-color-picker/simple-color-picker.d.ts +47 -821
  199. package/lib/slider/slider.d.ts +6 -6
  200. package/lib/split-button/split-button.d.ts +6 -6
  201. package/lib/switch/switch.d.ts +4 -4
  202. package/lib/tab/tab.d.ts +6 -6
  203. package/lib/tab-panel/tab-panel.d.ts +2 -2
  204. package/lib/tag/tag.d.ts +6 -6
  205. package/lib/tag-group/tag-group.d.ts +2 -2
  206. package/lib/tag-name-map.d.ts +2 -1
  207. package/lib/text-area/text-area.d.ts +16 -16
  208. package/lib/text-field/text-field.d.ts +18 -18
  209. package/lib/time-picker/time-picker.d.ts +28 -28
  210. package/lib/toggletip/toggletip.d.ts +4 -4
  211. package/lib/tooltip/tooltip.d.ts +2 -2
  212. package/lib/tree-item/tree-item.d.ts +4 -4
  213. package/lib/tree-view/tree-view.d.ts +2 -2
  214. package/lib/video-player/video-player.d.ts +2 -2
  215. package/locales/de-DE.cjs +13 -2
  216. package/locales/de-DE.js +13 -2
  217. package/locales/en-GB.cjs +13 -2
  218. package/locales/en-GB.js +13 -2
  219. package/locales/en-US.cjs +13 -2
  220. package/locales/en-US.js +13 -2
  221. package/locales/ja-JP.cjs +13 -2
  222. package/locales/ja-JP.js +13 -2
  223. package/locales/zh-CN.cjs +13 -2
  224. package/locales/zh-CN.js +13 -2
  225. package/menu/definition.cjs +2 -2
  226. package/menu/definition.js +3 -3
  227. package/note/index.cjs +2 -2
  228. package/note/index.js +4 -4
  229. package/number-field/definition.cjs +1 -1
  230. package/number-field/definition.js +2 -2
  231. package/number-field/index.cjs +5 -5
  232. package/number-field/index.js +21 -21
  233. package/option/index.cjs +1 -1
  234. package/option/index.js +1 -1
  235. package/package.json +5 -5
  236. package/pagination/definition.cjs +2 -1
  237. package/pagination/definition.js +2 -1
  238. package/pagination/index.cjs +12 -12
  239. package/pagination/index.js +59 -59
  240. package/progress/index.cjs +1 -1
  241. package/progress/index.js +1 -1
  242. package/radio/definition.cjs +9 -9
  243. package/radio/definition.js +10 -10
  244. package/radio-group/definition.cjs +2 -1
  245. package/radio-group/definition.js +2 -1
  246. package/radio-group/index.cjs +5 -5
  247. package/radio-group/index.js +80 -77
  248. package/range-slider/index.cjs +1 -1
  249. package/range-slider/index.js +1 -1
  250. package/rich-text-editor/definition.cjs +1 -1
  251. package/rich-text-editor/definition.js +2 -2
  252. package/rich-text-editor/index.cjs +2 -2
  253. package/rich-text-editor/index.js +3 -3
  254. package/searchable-select/definition.cjs +3 -3
  255. package/searchable-select/definition.js +4 -4
  256. package/searchable-select/index.cjs +4 -4
  257. package/searchable-select/index.js +8 -8
  258. package/select/definition.cjs +1 -1
  259. package/select/definition.js +2 -2
  260. package/selectable-box/definition.cjs +1 -1
  261. package/selectable-box/definition.js +1 -1
  262. package/selectable-box/index.cjs +3 -3
  263. package/selectable-box/index.js +20 -20
  264. package/shared/aria/aria-change-subscription.d.ts +0 -1
  265. package/shared/aria/aria-mixin.d.ts +2 -2
  266. package/shared/aria/delegate-aria-behavior.d.ts +5 -10
  267. package/shared/aria/delegates-aria.d.ts +3 -3
  268. package/shared/aria/host-semantics-behavior.d.ts +5 -8
  269. package/shared/aria/host-semantics.d.ts +3 -3
  270. package/shared/color-picker/base-color-picker.d.ts +436 -0
  271. package/shared/color-picker/index.d.ts +1 -0
  272. package/shared/color-picker/locale.d.ts +3 -0
  273. package/shared/color-picker/utils.d.ts +1 -0
  274. package/shared/deprecation/replaced-props.d.ts +317 -2
  275. package/shared/design-system/defineVividComponent.d.ts +2 -2
  276. package/shared/feedback/feedback-message.d.ts +2 -2
  277. package/shared/feedback/mixins.d.ts +4 -4
  278. package/shared/foundation/button/button.d.ts +4 -4
  279. package/shared/foundation/form-associated/form-associated.d.ts +4 -4
  280. package/shared/foundation/vivid-element/vivid-element.d.ts +335 -8
  281. package/shared/localization/Locale.d.ts +4 -0
  282. package/shared/patterns/affix.d.ts +4 -4
  283. package/shared/patterns/anchored.d.ts +4 -4
  284. package/shared/patterns/char-count/char-count.d.ts +2 -2
  285. package/shared/patterns/form-elements/form-element.d.ts +4 -4
  286. package/shared/patterns/form-elements/with-contextual-help.d.ts +6 -6
  287. package/shared/patterns/form-elements/with-error-text.d.ts +6 -6
  288. package/shared/patterns/form-elements/with-success-text.d.ts +2 -2
  289. package/shared/patterns/linkable.d.ts +2 -2
  290. package/shared/patterns/localized.d.ts +2 -2
  291. package/shared/patterns/trapped-focus.d.ts +2 -2
  292. package/shared/picker-field/mixins/calendar-picker.d.ts +14 -14
  293. package/shared/picker-field/mixins/calendar-picker.template.d.ts +14 -14
  294. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +2 -2
  295. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +28 -28
  296. package/shared/picker-field/mixins/single-date-picker.d.ts +40 -40
  297. package/shared/picker-field/mixins/single-value-picker.d.ts +12 -12
  298. package/shared/picker-field/mixins/time-selection-picker.d.ts +29 -29
  299. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +28 -28
  300. package/shared/picker-field/picker-field.d.ts +14 -14
  301. package/shared/templating/attribute-binding-behaviour.d.ts +3 -4
  302. package/shared/templating/render-in-light-dom.d.ts +13 -12
  303. package/side-drawer/index.cjs +1 -1
  304. package/side-drawer/index.js +1 -1
  305. package/simple-color-picker/definition.cjs +28 -215
  306. package/simple-color-picker/definition.js +29 -216
  307. package/simple-color-picker/index.cjs +9 -21
  308. package/simple-color-picker/index.js +71 -185
  309. package/styles/core/all.css +1 -1
  310. package/styles/core/theme.css +1 -1
  311. package/styles/core/typography.css +1 -1
  312. package/styles/tokens/theme-dark.css +4 -4
  313. package/styles/tokens/theme-light.css +4 -4
  314. package/styles/tokens/vivid-2-compat.css +1 -1
  315. package/switch/index.cjs +2 -2
  316. package/switch/index.js +4 -4
  317. package/tabs/definition.cjs +1 -1
  318. package/tabs/definition.js +2 -2
  319. package/tabs/index.cjs +2 -2
  320. package/tabs/index.js +16 -16
  321. package/tag/index.cjs +1 -1
  322. package/tag/index.js +1 -1
  323. package/text-area/index.cjs +3 -3
  324. package/text-area/index.js +8 -8
  325. package/text-field/definition.cjs +2 -2
  326. package/text-field/definition.js +3 -3
  327. package/text-field/index.cjs +1 -1
  328. package/text-field/index.js +1 -1
  329. package/time-picker/index.cjs +1 -1
  330. package/time-picker/index.js +2 -2
  331. package/toggletip/definition.cjs +1 -1
  332. package/toggletip/definition.js +2 -2
  333. package/tree-view/definition.cjs +1 -1
  334. package/tree-view/definition.js +2 -2
  335. package/tree-view/index.cjs +2 -2
  336. package/tree-view/index.js +6 -6
  337. package/unbundled/_commonjsHelpers.cjs +36 -0
  338. package/unbundled/_commonjsHelpers.js +32 -0
  339. package/unbundled/affix.cjs +1 -1
  340. package/unbundled/affix.js +1 -1
  341. package/unbundled/attribute-binding-behaviour.cjs +11 -10
  342. package/unbundled/attribute-binding-behaviour.js +11 -10
  343. package/unbundled/base-color-picker.cjs +278 -0
  344. package/unbundled/base-color-picker.js +275 -0
  345. package/unbundled/button.cjs +1 -1
  346. package/unbundled/button.js +2 -2
  347. package/unbundled/calendar-picker.template.cjs +3 -3
  348. package/unbundled/calendar-picker.template.js +4 -4
  349. package/unbundled/definition2.cjs +1 -1
  350. package/unbundled/definition2.js +2 -2
  351. package/unbundled/definition3.cjs +2 -1
  352. package/unbundled/definition3.js +2 -1
  353. package/unbundled/delegates-aria.cjs +67 -33
  354. package/unbundled/delegates-aria.js +69 -35
  355. package/unbundled/form-associated.cjs +2 -2
  356. package/unbundled/form-associated.js +3 -3
  357. package/unbundled/host-semantics.cjs +47 -22
  358. package/unbundled/host-semantics.js +48 -23
  359. package/unbundled/mixins.cjs +34 -27
  360. package/unbundled/mixins.js +35 -28
  361. package/unbundled/picker-field.template.cjs +2 -2
  362. package/unbundled/picker-field.template.js +3 -3
  363. package/unbundled/time-selection-picker.template.cjs +4 -4
  364. package/unbundled/time-selection-picker.template.js +5 -5
  365. package/unbundled/vivid-element.cjs +22 -15
  366. package/unbundled/vivid-element.js +23 -15
  367. package/video-player/definition.cjs +69007 -1
  368. package/video-player/definition.js +69007 -1
  369. package/video-player/index.cjs +35 -35
  370. package/video-player/index.js +1358 -1384
  371. package/visually-hidden/index.cjs +1 -1
  372. package/visually-hidden/index.js +1 -1
  373. package/vivid.api.json +317 -69
@@ -1,5 +1,5 @@
1
1
  import { V as VividElement, d as defineVividComponent } from './vivid-element.js';
2
- import { when, html, repeat, observable, attr, nullableNumberConverter, Observable, defaultExecutionContext, DOM, volatile, ref } from '@microsoft/fast-element';
2
+ import { when, html, repeat, observable, attr, nullableNumberConverter, Observable, ExecutionContext, Updates, volatile, ref } from '@microsoft/fast-element';
3
3
  import { i as ignoreEventInFocusTraps, a as PickerField } from './picker-field.template.js';
4
4
  import { S as SingleValuePicker } from './single-value-picker.js';
5
5
  import { classNames } from '@microsoft/fast-web-utilities';
@@ -560,10 +560,10 @@ const TimeSelectionPicker = (Base) => {
560
560
  () => this._use12hClock,
561
561
  this.#clockChangeHandler
562
562
  );
563
- this.#clockChangeObserver.observe(this, defaultExecutionContext);
563
+ this.#clockChangeObserver.observe(this, ExecutionContext.default);
564
564
  }
565
565
  #stopObservingClockChanges() {
566
- this.#clockChangeObserver.disconnect();
566
+ this.#clockChangeObserver.dispose();
567
567
  }
568
568
  /**
569
569
  * @internal
@@ -586,7 +586,7 @@ const TimeSelectionPicker = (Base) => {
586
586
  _onPickerButtonClick() {
587
587
  super._onPickerButtonClick();
588
588
  if (this._popupOpen) {
589
- DOM.processUpdates();
589
+ Updates.process();
590
590
  this._inlineTimePickerEl.scrollSelectedOptionsToTop();
591
591
  }
592
592
  }
@@ -746,7 +746,7 @@ class TimePicker extends TimeSelectionPicker(
746
746
  _onPickerButtonClick() {
747
747
  super._onPickerButtonClick();
748
748
  if (this._popupOpen) {
749
- DOM.processUpdates();
749
+ Updates.process();
750
750
  this._focusableElsWithinDialog()[0]?.focus();
751
751
  }
752
752
  }
@@ -34,20 +34,22 @@ const createRegisterFunction = (definition) => (prefix = "vwc") => {
34
34
  (dependency) => [dependency.type, prefixed(dependency.name)]
35
35
  )
36
36
  ]);
37
+ const tagFor = (type2, convertToString) => {
38
+ if (!tagByDependencyType.has(type2)) {
39
+ throw new Error(
40
+ `Could not get tag for ${type2.name} as it is not a dependency of ${componentDefinition.name}.`
41
+ );
42
+ }
43
+ const tagNameStr = tagByDependencyType.get(type2);
44
+ return convertToString ? tagNameStr : fastElement.html.partial(tagNameStr);
45
+ };
37
46
  const elementDefinitionContext = {
38
- tagFor(type2) {
39
- if (!tagByDependencyType.has(type2)) {
40
- throw new Error(
41
- `Could not get tag for ${type2.name} as it is not a dependency of ${componentDefinition.name}.`
42
- );
43
- }
44
- return tagByDependencyType.get(type2);
45
- },
47
+ tagFor,
46
48
  tagForNonDependency(name) {
47
49
  return prefixed(name);
48
50
  }
49
51
  };
50
- new fastElement.FASTElementDefinition(type, {
52
+ fastElement.FASTElementDefinition.compose(type, {
51
53
  ...componentDefinition.options,
52
54
  template: resolve(
53
55
  componentDefinition.template,
@@ -79,9 +81,6 @@ const getSubscribers = (source) => {
79
81
  const subscribeToAriaPropertyChanges = (source, listener) => {
80
82
  getSubscribers(source).push(listener);
81
83
  };
82
- const unsubscribeFromAriaPropertyChanges = (source, listener) => {
83
- getSubscribers(source).splice(getSubscribers(source).indexOf(listener), 1);
84
- };
85
84
  const publishAriaPropertyChange = (source, changedAriaProperty) => {
86
85
  getSubscribers(source).forEach((s) => s(source, changedAriaProperty));
87
86
  };
@@ -208,7 +207,16 @@ const AriaMixin = (Base) => {
208
207
  return AriaMixinElement;
209
208
  };
210
209
 
211
- const locateReplacedPropMetadata = fastElement.createMetadataLocator();
210
+ function createMetadataLocator() {
211
+ const metadataMap = /* @__PURE__ */ new WeakMap();
212
+ return (target) => {
213
+ if (!metadataMap.has(target)) {
214
+ metadataMap.set(target, []);
215
+ }
216
+ return metadataMap.get(target);
217
+ };
218
+ }
219
+ const locateReplacedPropMetadata = createMetadataLocator();
212
220
  const replaces = (config) => ($target, $prop) => {
213
221
  locateReplacedPropMetadata($target.constructor).push({
214
222
  newPropertyName: $prop,
@@ -260,7 +268,7 @@ const ReplacedPropHandling = (Base) => {
260
268
 
261
269
  class VividElement extends AriaMixin(ReplacedPropHandling(fastElement.FASTElement)) {
262
270
  static {
263
- this.VIVID_VERSION = "5.2.0";
271
+ this.VIVID_VERSION = "5.3.0";
264
272
  }
265
273
  /**
266
274
  * Add data-vvd-component attribute with component name globally,
@@ -280,4 +288,3 @@ exports.createRegisterFunction = createRegisterFunction;
280
288
  exports.defineVividComponent = defineVividComponent;
281
289
  exports.replaces = replaces;
282
290
  exports.subscribeToAriaPropertyChanges = subscribeToAriaPropertyChanges;
283
- exports.unsubscribeFromAriaPropertyChanges = unsubscribeFromAriaPropertyChanges;
@@ -1,4 +1,4 @@
1
- import { FASTElementDefinition, DOM, attr, createMetadataLocator, Observable, FASTElement } from '@microsoft/fast-element';
1
+ import { FASTElementDefinition, html, DOM, attr, Observable, FASTElement } from '@microsoft/fast-element';
2
2
 
3
3
  function resolve(templateOrResolveFunction, ctx) {
4
4
  if (templateOrResolveFunction instanceof Function) {
@@ -32,20 +32,22 @@ const createRegisterFunction = (definition) => (prefix = "vwc") => {
32
32
  (dependency) => [dependency.type, prefixed(dependency.name)]
33
33
  )
34
34
  ]);
35
+ const tagFor = (type2, convertToString) => {
36
+ if (!tagByDependencyType.has(type2)) {
37
+ throw new Error(
38
+ `Could not get tag for ${type2.name} as it is not a dependency of ${componentDefinition.name}.`
39
+ );
40
+ }
41
+ const tagNameStr = tagByDependencyType.get(type2);
42
+ return convertToString ? tagNameStr : html.partial(tagNameStr);
43
+ };
35
44
  const elementDefinitionContext = {
36
- tagFor(type2) {
37
- if (!tagByDependencyType.has(type2)) {
38
- throw new Error(
39
- `Could not get tag for ${type2.name} as it is not a dependency of ${componentDefinition.name}.`
40
- );
41
- }
42
- return tagByDependencyType.get(type2);
43
- },
45
+ tagFor,
44
46
  tagForNonDependency(name) {
45
47
  return prefixed(name);
46
48
  }
47
49
  };
48
- new FASTElementDefinition(type, {
50
+ FASTElementDefinition.compose(type, {
49
51
  ...componentDefinition.options,
50
52
  template: resolve(
51
53
  componentDefinition.template,
@@ -77,9 +79,6 @@ const getSubscribers = (source) => {
77
79
  const subscribeToAriaPropertyChanges = (source, listener) => {
78
80
  getSubscribers(source).push(listener);
79
81
  };
80
- const unsubscribeFromAriaPropertyChanges = (source, listener) => {
81
- getSubscribers(source).splice(getSubscribers(source).indexOf(listener), 1);
82
- };
83
82
  const publishAriaPropertyChange = (source, changedAriaProperty) => {
84
83
  getSubscribers(source).forEach((s) => s(source, changedAriaProperty));
85
84
  };
@@ -206,6 +205,15 @@ const AriaMixin = (Base) => {
206
205
  return AriaMixinElement;
207
206
  };
208
207
 
208
+ function createMetadataLocator() {
209
+ const metadataMap = /* @__PURE__ */ new WeakMap();
210
+ return (target) => {
211
+ if (!metadataMap.has(target)) {
212
+ metadataMap.set(target, []);
213
+ }
214
+ return metadataMap.get(target);
215
+ };
216
+ }
209
217
  const locateReplacedPropMetadata = createMetadataLocator();
210
218
  const replaces = (config) => ($target, $prop) => {
211
219
  locateReplacedPropMetadata($target.constructor).push({
@@ -258,7 +266,7 @@ const ReplacedPropHandling = (Base) => {
258
266
 
259
267
  class VividElement extends AriaMixin(ReplacedPropHandling(FASTElement)) {
260
268
  static {
261
- this.VIVID_VERSION = "5.2.0";
269
+ this.VIVID_VERSION = "5.3.0";
262
270
  }
263
271
  /**
264
272
  * Add data-vvd-component attribute with component name globally,
@@ -271,4 +279,4 @@ class VividElement extends AriaMixin(ReplacedPropHandling(FASTElement)) {
271
279
  }
272
280
  }
273
281
 
274
- export { VividElement as V, ariaAttributeName as a, ariaMixinProperties as b, createRegisterFunction as c, defineVividComponent as d, replaces as r, subscribeToAriaPropertyChanges as s, unsubscribeFromAriaPropertyChanges as u };
282
+ export { VividElement as V, ariaAttributeName as a, ariaMixinProperties as b, createRegisterFunction as c, defineVividComponent as d, replaces as r, subscribeToAriaPropertyChanges as s };