@vonage/vivid 3.0.0 → 3.1.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 (337) hide show
  1. package/README.md +176 -4
  2. package/accordion/index.js +22 -61
  3. package/accordion-item/index.js +16 -118
  4. package/action-group/index.js +5 -0
  5. package/avatar/index.js +11 -0
  6. package/badge/index.js +9 -53
  7. package/banner/index.js +20 -210
  8. package/breadcrumb/index.js +7 -96
  9. package/breadcrumb-item/index.js +15 -46
  10. package/button/index.js +19 -751
  11. package/calendar/index.js +6 -1520
  12. package/calendar-event/index.js +9 -0
  13. package/card/index.js +10 -133
  14. package/checkbox/index.js +16 -0
  15. package/combobox/index.js +35 -0
  16. package/custom-elements.json +6214 -0
  17. package/data-grid/index.js +1104 -0
  18. package/dialog/index.js +24 -0
  19. package/divider/index.js +6 -0
  20. package/elevation/index.js +4 -30
  21. package/fab/index.js +22 -0
  22. package/focus/index.js +4 -2
  23. package/header/index.js +6 -0
  24. package/icon/index.js +8 -36
  25. package/index.js +77 -26
  26. package/layout/index.js +4 -52
  27. package/lib/accordion/accordion.d.ts +3 -7
  28. package/lib/accordion/accordion.template.d.ts +1 -2
  29. package/lib/accordion/definition.d.ts +1 -0
  30. package/lib/accordion/index.d.ts +1 -2
  31. package/lib/accordion-item/accordion-item.d.ts +2 -6
  32. package/lib/accordion-item/accordion-item.template.d.ts +4 -4
  33. package/lib/accordion-item/definition.d.ts +1 -0
  34. package/lib/accordion-item/index.d.ts +1 -3
  35. package/lib/action-group/action-group.d.ts +10 -0
  36. package/lib/{sidenav-item/sidenav-item.template.d.ts → action-group/action-group.template.d.ts} +2 -2
  37. package/lib/action-group/definition.d.ts +1 -0
  38. package/lib/action-group/index.d.ts +1 -0
  39. package/lib/avatar/avatar.d.ts +15 -0
  40. package/lib/avatar/avatar.template.d.ts +4 -0
  41. package/lib/avatar/definition.d.ts +1 -0
  42. package/lib/avatar/index.d.ts +1 -0
  43. package/lib/badge/badge.d.ts +2 -4
  44. package/lib/badge/definition.d.ts +3 -0
  45. package/lib/badge/index.d.ts +1 -3
  46. package/lib/banner/banner.d.ts +1 -1
  47. package/lib/banner/banner.template.d.ts +0 -2
  48. package/lib/banner/definition.d.ts +1 -0
  49. package/lib/banner/index.d.ts +1 -2
  50. package/lib/breadcrumb/breadcrumb.template.d.ts +4 -0
  51. package/lib/breadcrumb/definition.d.ts +1 -0
  52. package/lib/breadcrumb/index.d.ts +1 -2
  53. package/lib/breadcrumb-item/definition.d.ts +1 -0
  54. package/lib/breadcrumb-item/index.d.ts +1 -3
  55. package/lib/button/button.d.ts +3 -2
  56. package/lib/button/definition.d.ts +1 -0
  57. package/lib/button/index.d.ts +1 -21
  58. package/lib/calendar/calendar.d.ts +3 -1
  59. package/lib/calendar/definition.d.ts +1 -0
  60. package/lib/calendar/index.d.ts +1 -3
  61. package/lib/calendar-event/calendar-event.d.ts +14 -0
  62. package/lib/calendar-event/calendar-event.template.d.ts +4 -0
  63. package/lib/calendar-event/definition.d.ts +1 -0
  64. package/lib/calendar-event/index.d.ts +1 -0
  65. package/lib/card/card.d.ts +2 -2
  66. package/lib/card/definition.d.ts +1 -0
  67. package/lib/card/index.d.ts +1 -5
  68. package/lib/checkbox/checkbox.d.ts +5 -0
  69. package/lib/checkbox/checkbox.template.d.ts +4 -0
  70. package/lib/checkbox/definition.d.ts +1 -0
  71. package/lib/checkbox/index.d.ts +1 -0
  72. package/lib/combobox/combobox.d.ts +14 -0
  73. package/lib/combobox/combobox.template.d.ts +4 -0
  74. package/lib/combobox/definition.d.ts +3 -0
  75. package/lib/combobox/index.d.ts +1 -0
  76. package/lib/components.d.ts +44 -16
  77. package/lib/data-grid/data-grid-cell.d.ts +5 -0
  78. package/lib/data-grid/data-grid-cell.template.d.ts +4 -0
  79. package/lib/data-grid/data-grid-row.d.ts +3 -0
  80. package/lib/data-grid/data-grid-row.template.d.ts +3 -0
  81. package/lib/data-grid/data-grid.d.ts +3 -0
  82. package/lib/data-grid/data-grid.options.d.ts +31 -0
  83. package/lib/data-grid/data-grid.template.d.ts +3 -0
  84. package/lib/data-grid/definition.d.ts +6 -0
  85. package/lib/data-grid/index.d.ts +1 -0
  86. package/lib/dialog/definition.d.ts +1 -0
  87. package/lib/dialog/dialog.d.ts +23 -0
  88. package/lib/dialog/dialog.template.d.ts +4 -0
  89. package/lib/dialog/index.d.ts +1 -0
  90. package/lib/divider/definition.d.ts +1 -0
  91. package/lib/divider/divider.d.ts +3 -0
  92. package/lib/divider/divider.template.d.ts +4 -0
  93. package/lib/divider/index.d.ts +1 -0
  94. package/lib/elevation/definition.d.ts +1 -0
  95. package/lib/elevation/elevation.d.ts +1 -0
  96. package/lib/elevation/index.d.ts +1 -2
  97. package/lib/enums.d.ts +19 -6
  98. package/lib/fab/definition.d.ts +3 -0
  99. package/lib/fab/fab.d.ts +13 -0
  100. package/lib/fab/fab.template.d.ts +4 -0
  101. package/lib/fab/index.d.ts +1 -0
  102. package/lib/focus/definition.d.ts +3 -0
  103. package/lib/focus/index.d.ts +1 -2
  104. package/lib/{sidenav-item/index.d.ts → header/definition.d.ts} +2 -2
  105. package/lib/header/header.d.ts +5 -0
  106. package/lib/header/header.template.d.ts +4 -0
  107. package/lib/header/index.d.ts +1 -0
  108. package/lib/icon/definition.d.ts +3 -0
  109. package/lib/icon/icon.d.ts +5 -6
  110. package/lib/icon/index.d.ts +1 -2
  111. package/lib/layout/definition.d.ts +3 -0
  112. package/lib/layout/index.d.ts +1 -2
  113. package/lib/layout/layout.d.ts +4 -4
  114. package/lib/listbox/definition.d.ts +3 -0
  115. package/lib/listbox/index.d.ts +1 -0
  116. package/lib/listbox/listbox.d.ts +6 -0
  117. package/lib/listbox/listbox.template.d.ts +4 -0
  118. package/lib/menu/definition.d.ts +11 -0
  119. package/lib/menu/index.d.ts +1 -0
  120. package/lib/menu/menu.d.ts +10 -0
  121. package/lib/menu/menu.template.d.ts +3 -0
  122. package/lib/menu-item/definition.d.ts +3 -0
  123. package/lib/menu-item/index.d.ts +1 -0
  124. package/lib/menu-item/menu-item.d.ts +8 -0
  125. package/lib/menu-item/menu-item.template.d.ts +5 -0
  126. package/lib/nav/definition.d.ts +3 -0
  127. package/lib/nav/index.d.ts +1 -0
  128. package/lib/nav/nav.d.ts +3 -0
  129. package/lib/nav/nav.template.d.ts +4 -0
  130. package/lib/nav-disclosure/definition.d.ts +3 -0
  131. package/lib/nav-disclosure/index.d.ts +1 -0
  132. package/lib/nav-disclosure/nav-disclosure.d.ts +10 -0
  133. package/lib/nav-disclosure/nav-disclosure.template.d.ts +4 -0
  134. package/lib/nav-item/definition.d.ts +3 -0
  135. package/lib/nav-item/index.d.ts +1 -0
  136. package/lib/{sidenav-item/sidenav-item.d.ts → nav-item/nav-item.d.ts} +2 -2
  137. package/lib/nav-item/nav-item.template.d.ts +4 -0
  138. package/lib/note/definition.d.ts +3 -0
  139. package/lib/note/index.d.ts +1 -0
  140. package/lib/note/note.d.ts +10 -0
  141. package/lib/{text/text.template.d.ts → note/note.template.d.ts} +2 -2
  142. package/lib/number-field/definition.d.ts +4 -0
  143. package/lib/number-field/index.d.ts +1 -0
  144. package/lib/number-field/number-field.d.ts +14 -0
  145. package/lib/number-field/number-field.template.d.ts +4 -0
  146. package/lib/option/definition.d.ts +3 -0
  147. package/lib/option/index.d.ts +1 -0
  148. package/lib/option/option.d.ts +9 -0
  149. package/lib/option/option.template.d.ts +4 -0
  150. package/lib/popup/definition.d.ts +3 -0
  151. package/lib/popup/index.d.ts +1 -4
  152. package/lib/popup/popup.d.ts +8 -4
  153. package/lib/progress/definition.d.ts +3 -0
  154. package/lib/progress/index.d.ts +1 -2
  155. package/lib/progress/progress.d.ts +1 -1
  156. package/lib/progress-ring/definition.d.ts +3 -0
  157. package/lib/progress-ring/index.d.ts +1 -2
  158. package/lib/progress-ring/progress-ring.d.ts +2 -1
  159. package/lib/radio/definition.d.ts +3 -0
  160. package/lib/radio/index.d.ts +1 -0
  161. package/lib/radio/radio.d.ts +4 -0
  162. package/lib/radio/radio.template.d.ts +4 -0
  163. package/lib/radio-group/definition.d.ts +11 -0
  164. package/lib/radio-group/index.d.ts +1 -0
  165. package/lib/radio-group/radio-group.d.ts +4 -0
  166. package/lib/radio-group/radio-group.template.d.ts +4 -0
  167. package/lib/select/definition.d.ts +3 -0
  168. package/lib/select/index.d.ts +1 -0
  169. package/lib/select/select.d.ts +17 -0
  170. package/lib/select/select.template.d.ts +4 -0
  171. package/lib/side-drawer/definition.d.ts +3 -0
  172. package/lib/side-drawer/index.d.ts +1 -2
  173. package/lib/side-drawer/side-drawer.d.ts +3 -2
  174. package/lib/slider/definition.d.ts +3 -0
  175. package/lib/slider/index.d.ts +1 -0
  176. package/lib/slider/slider.d.ts +4 -0
  177. package/lib/slider/slider.template.d.ts +4 -0
  178. package/lib/switch/definition.d.ts +3 -0
  179. package/lib/switch/index.d.ts +1 -0
  180. package/lib/switch/switch.d.ts +7 -0
  181. package/lib/switch/switch.template.d.ts +4 -0
  182. package/lib/tab/definition.d.ts +3 -0
  183. package/lib/tab/index.d.ts +1 -0
  184. package/lib/tab/tab.d.ts +9 -0
  185. package/lib/tab/tab.template.d.ts +3 -0
  186. package/lib/tab-panel/definition.d.ts +3 -0
  187. package/lib/tab-panel/index.d.ts +1 -0
  188. package/lib/tab-panel/tab-panel.d.ts +3 -0
  189. package/lib/tab-panel/tab-panel.template.d.ts +2 -0
  190. package/lib/tabs/definition.d.ts +3 -0
  191. package/lib/tabs/index.d.ts +1 -0
  192. package/lib/tabs/tabs.d.ts +10 -0
  193. package/lib/tabs/tabs.template.d.ts +2 -0
  194. package/lib/text-anchor/definition.d.ts +3 -0
  195. package/lib/text-anchor/index.d.ts +1 -2
  196. package/lib/text-area/definition.d.ts +3 -0
  197. package/lib/text-area/index.d.ts +1 -0
  198. package/lib/text-area/text-area.d.ts +9 -0
  199. package/lib/text-area/text-area.template.d.ts +4 -0
  200. package/lib/text-field/definition.d.ts +3 -0
  201. package/lib/text-field/index.d.ts +1 -0
  202. package/lib/text-field/text-field.d.ts +14 -0
  203. package/lib/text-field/text-field.template.d.ts +4 -0
  204. package/lib/tooltip/definition.d.ts +3 -0
  205. package/lib/tooltip/index.d.ts +1 -3
  206. package/lib/tooltip/tooltip.d.ts +6 -6
  207. package/listbox/index.js +27 -0
  208. package/menu/index.js +30 -0
  209. package/menu-item/index.js +20 -0
  210. package/nav/index.js +4 -0
  211. package/nav-disclosure/index.js +17 -0
  212. package/nav-item/index.js +22 -0
  213. package/note/index.js +15 -0
  214. package/number-field/index.js +459 -0
  215. package/option/index.js +21 -0
  216. package/package.json +21 -11
  217. package/popup/index.js +21 -2062
  218. package/progress/index.js +6 -98
  219. package/progress-ring/index.js +6 -75
  220. package/radio/index.js +12 -0
  221. package/radio-group/index.js +11 -0
  222. package/select/index.js +34 -0
  223. package/shared/affix.js +2 -8
  224. package/shared/anchor.js +10 -2
  225. package/shared/apply-mixins.js +5 -4
  226. package/shared/aria-global.js +2 -86
  227. package/shared/aria.js +9 -0
  228. package/shared/base-progress.js +5 -0
  229. package/shared/breadcrumb-item.js +1 -1
  230. package/shared/button.js +200 -0
  231. package/shared/calendar-event.js +19 -0
  232. package/shared/definition.js +225 -0
  233. package/shared/definition10.js +99 -0
  234. package/shared/definition11.js +48 -0
  235. package/shared/definition12.js +763 -0
  236. package/shared/definition13.js +111 -0
  237. package/shared/definition14.js +114 -0
  238. package/shared/definition15.js +32 -0
  239. package/shared/definition16.js +172 -0
  240. package/shared/definition17.js +727 -0
  241. package/shared/definition18.js +1531 -0
  242. package/shared/definition19.js +261 -0
  243. package/shared/definition2.js +150 -0
  244. package/shared/definition20.js +221 -0
  245. package/shared/definition21.js +78 -0
  246. package/shared/definition22.js +87 -0
  247. package/shared/definition23.js +58 -0
  248. package/shared/definition24.js +44 -0
  249. package/shared/definition25.js +58 -0
  250. package/shared/definition26.js +348 -0
  251. package/shared/definition27.js +363 -0
  252. package/shared/definition28.js +21 -0
  253. package/shared/definition29.js +75 -0
  254. package/shared/definition3.js +29 -0
  255. package/shared/definition30.js +31 -0
  256. package/shared/definition31.js +49 -0
  257. package/shared/definition32.js +94 -0
  258. package/shared/definition33.js +77 -0
  259. package/shared/definition34.js +45 -0
  260. package/shared/definition35.js +435 -0
  261. package/shared/definition36.js +634 -0
  262. package/shared/definition37.js +86 -0
  263. package/shared/definition38.js +592 -0
  264. package/shared/definition39.js +147 -0
  265. package/shared/definition4.js +19 -0
  266. package/shared/definition40.js +67 -0
  267. package/shared/definition41.js +32 -0
  268. package/shared/definition42.js +440 -0
  269. package/shared/definition43.js +282 -0
  270. package/shared/definition44.js +119 -0
  271. package/shared/definition45.js +77 -0
  272. package/shared/definition5.js +38 -0
  273. package/shared/definition6.js +60 -0
  274. package/shared/definition7.js +45 -0
  275. package/shared/definition8.js +113 -0
  276. package/shared/definition9.js +107 -0
  277. package/shared/design-system/index.d.ts +1 -1
  278. package/shared/dialog-polyfill.esm.js +858 -0
  279. package/shared/direction.js +20 -0
  280. package/shared/dom.js +8 -0
  281. package/shared/enums.js +70 -0
  282. package/shared/es.object.assign.js +2 -3
  283. package/shared/es.regexp.to-string.js +59 -0
  284. package/shared/focus.js +5 -0
  285. package/shared/focus2.js +11 -0
  286. package/shared/form-associated.js +466 -0
  287. package/shared/form-elements.js +127 -0
  288. package/shared/icon.js +538 -567
  289. package/shared/index.js +1664 -83
  290. package/shared/key-codes.js +100 -0
  291. package/shared/listbox.js +995 -0
  292. package/shared/numbers.js +34 -0
  293. package/shared/patterns/affix.d.ts +1 -1
  294. package/shared/patterns/focus.d.ts +3 -0
  295. package/shared/patterns/form-elements/form-elements.d.ts +43 -0
  296. package/shared/patterns/form-elements/index.d.ts +1 -0
  297. package/shared/patterns/index.d.ts +2 -0
  298. package/shared/radio.js +127 -0
  299. package/shared/ref.js +41 -0
  300. package/shared/repeat.js +764 -0
  301. package/shared/select.options.js +10 -0
  302. package/shared/slotted.js +1 -1
  303. package/shared/start-end.js +50 -0
  304. package/shared/string-trim.js +40 -0
  305. package/shared/strings.js +9 -0
  306. package/shared/text-anchor.js +0 -2
  307. package/shared/text-anchor.template.js +6 -5
  308. package/shared/text-field.js +3 -0
  309. package/shared/text-field2.js +225 -0
  310. package/shared/to-string.js +51 -0
  311. package/side-drawer/index.js +5 -81
  312. package/slider/index.js +17 -0
  313. package/styles/core/all.css +83 -0
  314. package/styles/core/theme.css +11 -0
  315. package/styles/core/typography.css +77 -0
  316. package/styles/tokens/theme-dark.css +228 -0
  317. package/styles/tokens/theme-light.css +228 -0
  318. package/switch/index.js +18 -0
  319. package/tab/index.js +16 -0
  320. package/tab-panel/index.js +4 -0
  321. package/tabs/index.js +24 -0
  322. package/text-anchor/index.js +11 -6
  323. package/text-area/index.js +23 -0
  324. package/text-field/index.js +24 -0
  325. package/tooltip/index.js +18 -55
  326. package/vivid.api.json +3695 -0
  327. package/lib/text/index.d.ts +0 -2
  328. package/lib/text/text.d.ts +0 -10
  329. package/shared/index2.js +0 -21
  330. package/shared/object-set-prototype-of.js +0 -1009
  331. package/shared/style-inject.es.js +0 -28
  332. package/shared/web.dom-collections.iterator.js +0 -473
  333. package/sidenav-item/index.js +0 -39
  334. package/styles/fonts/spezia.css +0 -23
  335. package/styles/themes/dark.css +0 -205
  336. package/styles/themes/light.css +0 -205
  337. package/text/index.js +0 -46
package/shared/index.js CHANGED
@@ -1,3 +1,1556 @@
1
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
2
+
3
+ var fails$a = function (exec) {
4
+ try {
5
+ return !!exec();
6
+ } catch (error) {
7
+ return true;
8
+ }
9
+ };
10
+
11
+ var fails$9 = fails$a;
12
+
13
+ var functionBindNative = !fails$9(function () {
14
+ // eslint-disable-next-line es/no-function-prototype-bind -- safe
15
+ var test = (function () { /* empty */ }).bind();
16
+ // eslint-disable-next-line no-prototype-builtins -- safe
17
+ return typeof test != 'function' || test.hasOwnProperty('prototype');
18
+ });
19
+
20
+ var NATIVE_BIND$1 = functionBindNative;
21
+
22
+ var FunctionPrototype$1 = Function.prototype;
23
+ var call$5 = FunctionPrototype$1.call;
24
+ var uncurryThisWithBind = NATIVE_BIND$1 && FunctionPrototype$1.bind.bind(call$5, call$5);
25
+
26
+ var functionUncurryThisRaw = NATIVE_BIND$1 ? uncurryThisWithBind : function (fn) {
27
+ return function () {
28
+ return call$5.apply(fn, arguments);
29
+ };
30
+ };
31
+
32
+ var uncurryThisRaw$1 = functionUncurryThisRaw;
33
+
34
+ var toString$1 = uncurryThisRaw$1({}.toString);
35
+ var stringSlice = uncurryThisRaw$1(''.slice);
36
+
37
+ var classofRaw$1 = function (it) {
38
+ return stringSlice(toString$1(it), 8, -1);
39
+ };
40
+
41
+ var classofRaw = classofRaw$1;
42
+ var uncurryThisRaw = functionUncurryThisRaw;
43
+
44
+ var functionUncurryThis = function (fn) {
45
+ // Nashorn bug:
46
+ // https://github.com/zloirock/core-js/issues/1128
47
+ // https://github.com/zloirock/core-js/issues/1130
48
+ if (classofRaw(fn) === 'Function') return uncurryThisRaw(fn);
49
+ };
50
+
51
+ var uncurryThis$7 = functionUncurryThis;
52
+ var fails$8 = fails$a;
53
+ var classof = classofRaw$1;
54
+
55
+ var $Object$3 = Object;
56
+ var split = uncurryThis$7(''.split);
57
+
58
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
59
+ var indexedObject = fails$8(function () {
60
+ // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
61
+ // eslint-disable-next-line no-prototype-builtins -- safe
62
+ return !$Object$3('z').propertyIsEnumerable(0);
63
+ }) ? function (it) {
64
+ return classof(it) == 'String' ? split(it, '') : $Object$3(it);
65
+ } : $Object$3;
66
+
67
+ // we can't use just `it == null` since of `document.all` special case
68
+ // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
69
+ var isNullOrUndefined$2 = function (it) {
70
+ return it === null || it === undefined;
71
+ };
72
+
73
+ var isNullOrUndefined$1 = isNullOrUndefined$2;
74
+
75
+ var $TypeError$6 = TypeError;
76
+
77
+ // `RequireObjectCoercible` abstract operation
78
+ // https://tc39.es/ecma262/#sec-requireobjectcoercible
79
+ var requireObjectCoercible$2 = function (it) {
80
+ if (isNullOrUndefined$1(it)) throw $TypeError$6("Can't call method on " + it);
81
+ return it;
82
+ };
83
+
84
+ // toObject with fallback for non-array-like ES3 strings
85
+ var IndexedObject = indexedObject;
86
+ var requireObjectCoercible$1 = requireObjectCoercible$2;
87
+
88
+ var toIndexedObject$5 = function (it) {
89
+ return IndexedObject(requireObjectCoercible$1(it));
90
+ };
91
+
92
+ var check = function (it) {
93
+ return it && it.Math == Math && it;
94
+ };
95
+
96
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
97
+ var global$b =
98
+ // eslint-disable-next-line es/no-global-this -- safe
99
+ check(typeof globalThis == 'object' && globalThis) ||
100
+ check(typeof window == 'object' && window) ||
101
+ // eslint-disable-next-line no-restricted-globals -- safe
102
+ check(typeof self == 'object' && self) ||
103
+ check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
104
+ // eslint-disable-next-line no-new-func -- fallback
105
+ (function () { return this; })() || Function('return this')();
106
+
107
+ var shared$3 = {exports: {}};
108
+
109
+ var global$a = global$b;
110
+
111
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
112
+ var defineProperty$4 = Object.defineProperty;
113
+
114
+ var defineGlobalProperty$3 = function (key, value) {
115
+ try {
116
+ defineProperty$4(global$a, key, { value: value, configurable: true, writable: true });
117
+ } catch (error) {
118
+ global$a[key] = value;
119
+ } return value;
120
+ };
121
+
122
+ var global$9 = global$b;
123
+ var defineGlobalProperty$2 = defineGlobalProperty$3;
124
+
125
+ var SHARED = '__core-js_shared__';
126
+ var store$3 = global$9[SHARED] || defineGlobalProperty$2(SHARED, {});
127
+
128
+ var sharedStore = store$3;
129
+
130
+ var store$2 = sharedStore;
131
+
132
+ (shared$3.exports = function (key, value) {
133
+ return store$2[key] || (store$2[key] = value !== undefined ? value : {});
134
+ })('versions', []).push({
135
+ version: '3.26.0',
136
+ mode: 'global',
137
+ copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
138
+ license: 'https://github.com/zloirock/core-js/blob/v3.26.0/LICENSE',
139
+ source: 'https://github.com/zloirock/core-js'
140
+ });
141
+
142
+ var requireObjectCoercible = requireObjectCoercible$2;
143
+
144
+ var $Object$2 = Object;
145
+
146
+ // `ToObject` abstract operation
147
+ // https://tc39.es/ecma262/#sec-toobject
148
+ var toObject$2 = function (argument) {
149
+ return $Object$2(requireObjectCoercible(argument));
150
+ };
151
+
152
+ var uncurryThis$6 = functionUncurryThis;
153
+ var toObject$1 = toObject$2;
154
+
155
+ var hasOwnProperty = uncurryThis$6({}.hasOwnProperty);
156
+
157
+ // `HasOwnProperty` abstract operation
158
+ // https://tc39.es/ecma262/#sec-hasownproperty
159
+ // eslint-disable-next-line es/no-object-hasown -- safe
160
+ var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it, key) {
161
+ return hasOwnProperty(toObject$1(it), key);
162
+ };
163
+
164
+ var uncurryThis$5 = functionUncurryThis;
165
+
166
+ var id = 0;
167
+ var postfix = Math.random();
168
+ var toString = uncurryThis$5(1.0.toString);
169
+
170
+ var uid$2 = function (key) {
171
+ return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
172
+ };
173
+
174
+ var documentAll$2 = typeof document == 'object' && document.all;
175
+
176
+ // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
177
+ var IS_HTMLDDA = typeof documentAll$2 == 'undefined' && documentAll$2 !== undefined;
178
+
179
+ var documentAll_1 = {
180
+ all: documentAll$2,
181
+ IS_HTMLDDA: IS_HTMLDDA
182
+ };
183
+
184
+ var $documentAll$1 = documentAll_1;
185
+
186
+ var documentAll$1 = $documentAll$1.all;
187
+
188
+ // `IsCallable` abstract operation
189
+ // https://tc39.es/ecma262/#sec-iscallable
190
+ var isCallable$e = $documentAll$1.IS_HTMLDDA ? function (argument) {
191
+ return typeof argument == 'function' || argument === documentAll$1;
192
+ } : function (argument) {
193
+ return typeof argument == 'function';
194
+ };
195
+
196
+ var global$8 = global$b;
197
+ var isCallable$d = isCallable$e;
198
+
199
+ var aFunction = function (argument) {
200
+ return isCallable$d(argument) ? argument : undefined;
201
+ };
202
+
203
+ var getBuiltIn$4 = function (namespace, method) {
204
+ return arguments.length < 2 ? aFunction(global$8[namespace]) : global$8[namespace] && global$8[namespace][method];
205
+ };
206
+
207
+ var getBuiltIn$3 = getBuiltIn$4;
208
+
209
+ var engineUserAgent = getBuiltIn$3('navigator', 'userAgent') || '';
210
+
211
+ var global$7 = global$b;
212
+ var userAgent = engineUserAgent;
213
+
214
+ var process = global$7.process;
215
+ var Deno = global$7.Deno;
216
+ var versions = process && process.versions || Deno && Deno.version;
217
+ var v8 = versions && versions.v8;
218
+ var match, version;
219
+
220
+ if (v8) {
221
+ match = v8.split('.');
222
+ // in old Chrome, versions of V8 isn't V8 = Chrome / 10
223
+ // but their correct versions are not interesting for us
224
+ version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
225
+ }
226
+
227
+ // BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
228
+ // so check `userAgent` even if `.v8` exists, but 0
229
+ if (!version && userAgent) {
230
+ match = userAgent.match(/Edge\/(\d+)/);
231
+ if (!match || match[1] >= 74) {
232
+ match = userAgent.match(/Chrome\/(\d+)/);
233
+ if (match) version = +match[1];
234
+ }
235
+ }
236
+
237
+ var engineV8Version = version;
238
+
239
+ /* eslint-disable es/no-symbol -- required for testing */
240
+
241
+ var V8_VERSION = engineV8Version;
242
+ var fails$7 = fails$a;
243
+
244
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
245
+ var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$7(function () {
246
+ var symbol = Symbol();
247
+ // Chrome 38 Symbol has incorrect toString conversion
248
+ // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
249
+ return !String(symbol) || !(Object(symbol) instanceof Symbol) ||
250
+ // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
251
+ !Symbol.sham && V8_VERSION && V8_VERSION < 41;
252
+ });
253
+
254
+ /* eslint-disable es/no-symbol -- required for testing */
255
+
256
+ var NATIVE_SYMBOL$1 = symbolConstructorDetection;
257
+
258
+ var useSymbolAsUid = NATIVE_SYMBOL$1
259
+ && !Symbol.sham
260
+ && typeof Symbol.iterator == 'symbol';
261
+
262
+ var global$6 = global$b;
263
+ var shared$2 = shared$3.exports;
264
+ var hasOwn$8 = hasOwnProperty_1;
265
+ var uid$1 = uid$2;
266
+ var NATIVE_SYMBOL = symbolConstructorDetection;
267
+ var USE_SYMBOL_AS_UID$1 = useSymbolAsUid;
268
+
269
+ var WellKnownSymbolsStore = shared$2('wks');
270
+ var Symbol$1 = global$6.Symbol;
271
+ var symbolFor = Symbol$1 && Symbol$1['for'];
272
+ var createWellKnownSymbol = USE_SYMBOL_AS_UID$1 ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid$1;
273
+
274
+ var wellKnownSymbol$6 = function (name) {
275
+ if (!hasOwn$8(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {
276
+ var description = 'Symbol.' + name;
277
+ if (NATIVE_SYMBOL && hasOwn$8(Symbol$1, name)) {
278
+ WellKnownSymbolsStore[name] = Symbol$1[name];
279
+ } else if (USE_SYMBOL_AS_UID$1 && symbolFor) {
280
+ WellKnownSymbolsStore[name] = symbolFor(description);
281
+ } else {
282
+ WellKnownSymbolsStore[name] = createWellKnownSymbol(description);
283
+ }
284
+ } return WellKnownSymbolsStore[name];
285
+ };
286
+
287
+ var isCallable$c = isCallable$e;
288
+ var $documentAll = documentAll_1;
289
+
290
+ var documentAll = $documentAll.all;
291
+
292
+ var isObject$7 = $documentAll.IS_HTMLDDA ? function (it) {
293
+ return typeof it == 'object' ? it !== null : isCallable$c(it) || it === documentAll;
294
+ } : function (it) {
295
+ return typeof it == 'object' ? it !== null : isCallable$c(it);
296
+ };
297
+
298
+ var isObject$6 = isObject$7;
299
+
300
+ var $String$2 = String;
301
+ var $TypeError$5 = TypeError;
302
+
303
+ // `Assert: Type(argument) is Object`
304
+ var anObject$5 = function (argument) {
305
+ if (isObject$6(argument)) return argument;
306
+ throw $TypeError$5($String$2(argument) + ' is not an object');
307
+ };
308
+
309
+ var objectDefineProperties = {};
310
+
311
+ var fails$6 = fails$a;
312
+
313
+ // Detect IE8's incomplete defineProperty implementation
314
+ var descriptors = !fails$6(function () {
315
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
316
+ return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
317
+ });
318
+
319
+ var DESCRIPTORS$8 = descriptors;
320
+ var fails$5 = fails$a;
321
+
322
+ // V8 ~ Chrome 36-
323
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3334
324
+ var v8PrototypeDefineBug = DESCRIPTORS$8 && fails$5(function () {
325
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
326
+ return Object.defineProperty(function () { /* empty */ }, 'prototype', {
327
+ value: 42,
328
+ writable: false
329
+ }).prototype != 42;
330
+ });
331
+
332
+ var objectDefineProperty = {};
333
+
334
+ var global$5 = global$b;
335
+ var isObject$5 = isObject$7;
336
+
337
+ var document$1 = global$5.document;
338
+ // typeof document.createElement is 'object' in old IE
339
+ var EXISTS$1 = isObject$5(document$1) && isObject$5(document$1.createElement);
340
+
341
+ var documentCreateElement$2 = function (it) {
342
+ return EXISTS$1 ? document$1.createElement(it) : {};
343
+ };
344
+
345
+ var DESCRIPTORS$7 = descriptors;
346
+ var fails$4 = fails$a;
347
+ var createElement = documentCreateElement$2;
348
+
349
+ // Thanks to IE8 for its funny defineProperty
350
+ var ie8DomDefine = !DESCRIPTORS$7 && !fails$4(function () {
351
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
352
+ return Object.defineProperty(createElement('div'), 'a', {
353
+ get: function () { return 7; }
354
+ }).a != 7;
355
+ });
356
+
357
+ var NATIVE_BIND = functionBindNative;
358
+
359
+ var call$4 = Function.prototype.call;
360
+
361
+ var functionCall = NATIVE_BIND ? call$4.bind(call$4) : function () {
362
+ return call$4.apply(call$4, arguments);
363
+ };
364
+
365
+ var uncurryThis$4 = functionUncurryThis;
366
+
367
+ var objectIsPrototypeOf = uncurryThis$4({}.isPrototypeOf);
368
+
369
+ var getBuiltIn$2 = getBuiltIn$4;
370
+ var isCallable$b = isCallable$e;
371
+ var isPrototypeOf = objectIsPrototypeOf;
372
+ var USE_SYMBOL_AS_UID = useSymbolAsUid;
373
+
374
+ var $Object$1 = Object;
375
+
376
+ var isSymbol$2 = USE_SYMBOL_AS_UID ? function (it) {
377
+ return typeof it == 'symbol';
378
+ } : function (it) {
379
+ var $Symbol = getBuiltIn$2('Symbol');
380
+ return isCallable$b($Symbol) && isPrototypeOf($Symbol.prototype, $Object$1(it));
381
+ };
382
+
383
+ var $String$1 = String;
384
+
385
+ var tryToString$1 = function (argument) {
386
+ try {
387
+ return $String$1(argument);
388
+ } catch (error) {
389
+ return 'Object';
390
+ }
391
+ };
392
+
393
+ var isCallable$a = isCallable$e;
394
+ var tryToString = tryToString$1;
395
+
396
+ var $TypeError$4 = TypeError;
397
+
398
+ // `Assert: IsCallable(argument) is true`
399
+ var aCallable$1 = function (argument) {
400
+ if (isCallable$a(argument)) return argument;
401
+ throw $TypeError$4(tryToString(argument) + ' is not a function');
402
+ };
403
+
404
+ var aCallable = aCallable$1;
405
+ var isNullOrUndefined = isNullOrUndefined$2;
406
+
407
+ // `GetMethod` abstract operation
408
+ // https://tc39.es/ecma262/#sec-getmethod
409
+ var getMethod$1 = function (V, P) {
410
+ var func = V[P];
411
+ return isNullOrUndefined(func) ? undefined : aCallable(func);
412
+ };
413
+
414
+ var call$3 = functionCall;
415
+ var isCallable$9 = isCallable$e;
416
+ var isObject$4 = isObject$7;
417
+
418
+ var $TypeError$3 = TypeError;
419
+
420
+ // `OrdinaryToPrimitive` abstract operation
421
+ // https://tc39.es/ecma262/#sec-ordinarytoprimitive
422
+ var ordinaryToPrimitive$1 = function (input, pref) {
423
+ var fn, val;
424
+ if (pref === 'string' && isCallable$9(fn = input.toString) && !isObject$4(val = call$3(fn, input))) return val;
425
+ if (isCallable$9(fn = input.valueOf) && !isObject$4(val = call$3(fn, input))) return val;
426
+ if (pref !== 'string' && isCallable$9(fn = input.toString) && !isObject$4(val = call$3(fn, input))) return val;
427
+ throw $TypeError$3("Can't convert object to primitive value");
428
+ };
429
+
430
+ var call$2 = functionCall;
431
+ var isObject$3 = isObject$7;
432
+ var isSymbol$1 = isSymbol$2;
433
+ var getMethod = getMethod$1;
434
+ var ordinaryToPrimitive = ordinaryToPrimitive$1;
435
+ var wellKnownSymbol$5 = wellKnownSymbol$6;
436
+
437
+ var $TypeError$2 = TypeError;
438
+ var TO_PRIMITIVE = wellKnownSymbol$5('toPrimitive');
439
+
440
+ // `ToPrimitive` abstract operation
441
+ // https://tc39.es/ecma262/#sec-toprimitive
442
+ var toPrimitive$1 = function (input, pref) {
443
+ if (!isObject$3(input) || isSymbol$1(input)) return input;
444
+ var exoticToPrim = getMethod(input, TO_PRIMITIVE);
445
+ var result;
446
+ if (exoticToPrim) {
447
+ if (pref === undefined) pref = 'default';
448
+ result = call$2(exoticToPrim, input, pref);
449
+ if (!isObject$3(result) || isSymbol$1(result)) return result;
450
+ throw $TypeError$2("Can't convert object to primitive value");
451
+ }
452
+ if (pref === undefined) pref = 'number';
453
+ return ordinaryToPrimitive(input, pref);
454
+ };
455
+
456
+ var toPrimitive = toPrimitive$1;
457
+ var isSymbol = isSymbol$2;
458
+
459
+ // `ToPropertyKey` abstract operation
460
+ // https://tc39.es/ecma262/#sec-topropertykey
461
+ var toPropertyKey$2 = function (argument) {
462
+ var key = toPrimitive(argument, 'string');
463
+ return isSymbol(key) ? key : key + '';
464
+ };
465
+
466
+ var DESCRIPTORS$6 = descriptors;
467
+ var IE8_DOM_DEFINE$1 = ie8DomDefine;
468
+ var V8_PROTOTYPE_DEFINE_BUG$1 = v8PrototypeDefineBug;
469
+ var anObject$4 = anObject$5;
470
+ var toPropertyKey$1 = toPropertyKey$2;
471
+
472
+ var $TypeError$1 = TypeError;
473
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
474
+ var $defineProperty = Object.defineProperty;
475
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
476
+ var $getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
477
+ var ENUMERABLE = 'enumerable';
478
+ var CONFIGURABLE$1 = 'configurable';
479
+ var WRITABLE = 'writable';
480
+
481
+ // `Object.defineProperty` method
482
+ // https://tc39.es/ecma262/#sec-object.defineproperty
483
+ objectDefineProperty.f = DESCRIPTORS$6 ? V8_PROTOTYPE_DEFINE_BUG$1 ? function defineProperty(O, P, Attributes) {
484
+ anObject$4(O);
485
+ P = toPropertyKey$1(P);
486
+ anObject$4(Attributes);
487
+ if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
488
+ var current = $getOwnPropertyDescriptor$1(O, P);
489
+ if (current && current[WRITABLE]) {
490
+ O[P] = Attributes.value;
491
+ Attributes = {
492
+ configurable: CONFIGURABLE$1 in Attributes ? Attributes[CONFIGURABLE$1] : current[CONFIGURABLE$1],
493
+ enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
494
+ writable: false
495
+ };
496
+ }
497
+ } return $defineProperty(O, P, Attributes);
498
+ } : $defineProperty : function defineProperty(O, P, Attributes) {
499
+ anObject$4(O);
500
+ P = toPropertyKey$1(P);
501
+ anObject$4(Attributes);
502
+ if (IE8_DOM_DEFINE$1) try {
503
+ return $defineProperty(O, P, Attributes);
504
+ } catch (error) { /* empty */ }
505
+ if ('get' in Attributes || 'set' in Attributes) throw $TypeError$1('Accessors not supported');
506
+ if ('value' in Attributes) O[P] = Attributes.value;
507
+ return O;
508
+ };
509
+
510
+ var ceil = Math.ceil;
511
+ var floor = Math.floor;
512
+
513
+ // `Math.trunc` method
514
+ // https://tc39.es/ecma262/#sec-math.trunc
515
+ // eslint-disable-next-line es/no-math-trunc -- safe
516
+ var mathTrunc = Math.trunc || function trunc(x) {
517
+ var n = +x;
518
+ return (n > 0 ? floor : ceil)(n);
519
+ };
520
+
521
+ var trunc = mathTrunc;
522
+
523
+ // `ToIntegerOrInfinity` abstract operation
524
+ // https://tc39.es/ecma262/#sec-tointegerorinfinity
525
+ var toIntegerOrInfinity$2 = function (argument) {
526
+ var number = +argument;
527
+ // eslint-disable-next-line no-self-compare -- NaN check
528
+ return number !== number || number === 0 ? 0 : trunc(number);
529
+ };
530
+
531
+ var toIntegerOrInfinity$1 = toIntegerOrInfinity$2;
532
+
533
+ var max = Math.max;
534
+ var min$1 = Math.min;
535
+
536
+ // Helper for a popular repeating case of the spec:
537
+ // Let integer be ? ToInteger(index).
538
+ // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
539
+ var toAbsoluteIndex$1 = function (index, length) {
540
+ var integer = toIntegerOrInfinity$1(index);
541
+ return integer < 0 ? max(integer + length, 0) : min$1(integer, length);
542
+ };
543
+
544
+ var toIntegerOrInfinity = toIntegerOrInfinity$2;
545
+
546
+ var min = Math.min;
547
+
548
+ // `ToLength` abstract operation
549
+ // https://tc39.es/ecma262/#sec-tolength
550
+ var toLength$1 = function (argument) {
551
+ return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
552
+ };
553
+
554
+ var toLength = toLength$1;
555
+
556
+ // `LengthOfArrayLike` abstract operation
557
+ // https://tc39.es/ecma262/#sec-lengthofarraylike
558
+ var lengthOfArrayLike$1 = function (obj) {
559
+ return toLength(obj.length);
560
+ };
561
+
562
+ var toIndexedObject$4 = toIndexedObject$5;
563
+ var toAbsoluteIndex = toAbsoluteIndex$1;
564
+ var lengthOfArrayLike = lengthOfArrayLike$1;
565
+
566
+ // `Array.prototype.{ indexOf, includes }` methods implementation
567
+ var createMethod = function (IS_INCLUDES) {
568
+ return function ($this, el, fromIndex) {
569
+ var O = toIndexedObject$4($this);
570
+ var length = lengthOfArrayLike(O);
571
+ var index = toAbsoluteIndex(fromIndex, length);
572
+ var value;
573
+ // Array#includes uses SameValueZero equality algorithm
574
+ // eslint-disable-next-line no-self-compare -- NaN check
575
+ if (IS_INCLUDES && el != el) while (length > index) {
576
+ value = O[index++];
577
+ // eslint-disable-next-line no-self-compare -- NaN check
578
+ if (value != value) return true;
579
+ // Array#indexOf ignores holes, Array#includes - not
580
+ } else for (;length > index; index++) {
581
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
582
+ } return !IS_INCLUDES && -1;
583
+ };
584
+ };
585
+
586
+ var arrayIncludes = {
587
+ // `Array.prototype.includes` method
588
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
589
+ includes: createMethod(true),
590
+ // `Array.prototype.indexOf` method
591
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
592
+ indexOf: createMethod(false)
593
+ };
594
+
595
+ var hiddenKeys$4 = {};
596
+
597
+ var uncurryThis$3 = functionUncurryThis;
598
+ var hasOwn$7 = hasOwnProperty_1;
599
+ var toIndexedObject$3 = toIndexedObject$5;
600
+ var indexOf = arrayIncludes.indexOf;
601
+ var hiddenKeys$3 = hiddenKeys$4;
602
+
603
+ var push = uncurryThis$3([].push);
604
+
605
+ var objectKeysInternal = function (object, names) {
606
+ var O = toIndexedObject$3(object);
607
+ var i = 0;
608
+ var result = [];
609
+ var key;
610
+ for (key in O) !hasOwn$7(hiddenKeys$3, key) && hasOwn$7(O, key) && push(result, key);
611
+ // Don't enum bug & hidden keys
612
+ while (names.length > i) if (hasOwn$7(O, key = names[i++])) {
613
+ ~indexOf(result, key) || push(result, key);
614
+ }
615
+ return result;
616
+ };
617
+
618
+ // IE8- don't enum bug keys
619
+ var enumBugKeys$3 = [
620
+ 'constructor',
621
+ 'hasOwnProperty',
622
+ 'isPrototypeOf',
623
+ 'propertyIsEnumerable',
624
+ 'toLocaleString',
625
+ 'toString',
626
+ 'valueOf'
627
+ ];
628
+
629
+ var internalObjectKeys$1 = objectKeysInternal;
630
+ var enumBugKeys$2 = enumBugKeys$3;
631
+
632
+ // `Object.keys` method
633
+ // https://tc39.es/ecma262/#sec-object.keys
634
+ // eslint-disable-next-line es/no-object-keys -- safe
635
+ var objectKeys$1 = Object.keys || function keys(O) {
636
+ return internalObjectKeys$1(O, enumBugKeys$2);
637
+ };
638
+
639
+ var DESCRIPTORS$5 = descriptors;
640
+ var V8_PROTOTYPE_DEFINE_BUG = v8PrototypeDefineBug;
641
+ var definePropertyModule$3 = objectDefineProperty;
642
+ var anObject$3 = anObject$5;
643
+ var toIndexedObject$2 = toIndexedObject$5;
644
+ var objectKeys = objectKeys$1;
645
+
646
+ // `Object.defineProperties` method
647
+ // https://tc39.es/ecma262/#sec-object.defineproperties
648
+ // eslint-disable-next-line es/no-object-defineproperties -- safe
649
+ objectDefineProperties.f = DESCRIPTORS$5 && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
650
+ anObject$3(O);
651
+ var props = toIndexedObject$2(Properties);
652
+ var keys = objectKeys(Properties);
653
+ var length = keys.length;
654
+ var index = 0;
655
+ var key;
656
+ while (length > index) definePropertyModule$3.f(O, key = keys[index++], props[key]);
657
+ return O;
658
+ };
659
+
660
+ var getBuiltIn$1 = getBuiltIn$4;
661
+
662
+ var html$2 = getBuiltIn$1('document', 'documentElement');
663
+
664
+ var shared$1 = shared$3.exports;
665
+ var uid = uid$2;
666
+
667
+ var keys = shared$1('keys');
668
+
669
+ var sharedKey$3 = function (key) {
670
+ return keys[key] || (keys[key] = uid(key));
671
+ };
672
+
673
+ /* global ActiveXObject -- old IE, WSH */
674
+
675
+ var anObject$2 = anObject$5;
676
+ var definePropertiesModule = objectDefineProperties;
677
+ var enumBugKeys$1 = enumBugKeys$3;
678
+ var hiddenKeys$2 = hiddenKeys$4;
679
+ var html$1 = html$2;
680
+ var documentCreateElement$1 = documentCreateElement$2;
681
+ var sharedKey$2 = sharedKey$3;
682
+
683
+ var GT = '>';
684
+ var LT = '<';
685
+ var PROTOTYPE = 'prototype';
686
+ var SCRIPT = 'script';
687
+ var IE_PROTO$1 = sharedKey$2('IE_PROTO');
688
+
689
+ var EmptyConstructor = function () { /* empty */ };
690
+
691
+ var scriptTag = function (content) {
692
+ return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
693
+ };
694
+
695
+ // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
696
+ var NullProtoObjectViaActiveX = function (activeXDocument) {
697
+ activeXDocument.write(scriptTag(''));
698
+ activeXDocument.close();
699
+ var temp = activeXDocument.parentWindow.Object;
700
+ activeXDocument = null; // avoid memory leak
701
+ return temp;
702
+ };
703
+
704
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
705
+ var NullProtoObjectViaIFrame = function () {
706
+ // Thrash, waste and sodomy: IE GC bug
707
+ var iframe = documentCreateElement$1('iframe');
708
+ var JS = 'java' + SCRIPT + ':';
709
+ var iframeDocument;
710
+ iframe.style.display = 'none';
711
+ html$1.appendChild(iframe);
712
+ // https://github.com/zloirock/core-js/issues/475
713
+ iframe.src = String(JS);
714
+ iframeDocument = iframe.contentWindow.document;
715
+ iframeDocument.open();
716
+ iframeDocument.write(scriptTag('document.F=Object'));
717
+ iframeDocument.close();
718
+ return iframeDocument.F;
719
+ };
720
+
721
+ // Check for document.domain and active x support
722
+ // No need to use active x approach when document.domain is not set
723
+ // see https://github.com/es-shims/es5-shim/issues/150
724
+ // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
725
+ // avoid IE GC bug
726
+ var activeXDocument;
727
+ var NullProtoObject = function () {
728
+ try {
729
+ activeXDocument = new ActiveXObject('htmlfile');
730
+ } catch (error) { /* ignore */ }
731
+ NullProtoObject = typeof document != 'undefined'
732
+ ? document.domain && activeXDocument
733
+ ? NullProtoObjectViaActiveX(activeXDocument) // old IE
734
+ : NullProtoObjectViaIFrame()
735
+ : NullProtoObjectViaActiveX(activeXDocument); // WSH
736
+ var length = enumBugKeys$1.length;
737
+ while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys$1[length]];
738
+ return NullProtoObject();
739
+ };
740
+
741
+ hiddenKeys$2[IE_PROTO$1] = true;
742
+
743
+ // `Object.create` method
744
+ // https://tc39.es/ecma262/#sec-object.create
745
+ // eslint-disable-next-line es/no-object-create -- safe
746
+ var objectCreate = Object.create || function create(O, Properties) {
747
+ var result;
748
+ if (O !== null) {
749
+ EmptyConstructor[PROTOTYPE] = anObject$2(O);
750
+ result = new EmptyConstructor();
751
+ EmptyConstructor[PROTOTYPE] = null;
752
+ // add "__proto__" for Object.getPrototypeOf polyfill
753
+ result[IE_PROTO$1] = O;
754
+ } else result = NullProtoObject();
755
+ return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
756
+ };
757
+
758
+ var wellKnownSymbol$4 = wellKnownSymbol$6;
759
+ var create$2 = objectCreate;
760
+ var defineProperty$3 = objectDefineProperty.f;
761
+
762
+ var UNSCOPABLES = wellKnownSymbol$4('unscopables');
763
+ var ArrayPrototype = Array.prototype;
764
+
765
+ // Array.prototype[@@unscopables]
766
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
767
+ if (ArrayPrototype[UNSCOPABLES] == undefined) {
768
+ defineProperty$3(ArrayPrototype, UNSCOPABLES, {
769
+ configurable: true,
770
+ value: create$2(null)
771
+ });
772
+ }
773
+
774
+ // add a key to Array.prototype[@@unscopables]
775
+ var addToUnscopables$1 = function (key) {
776
+ ArrayPrototype[UNSCOPABLES][key] = true;
777
+ };
778
+
779
+ var iterators = {};
780
+
781
+ var global$4 = global$b;
782
+ var isCallable$8 = isCallable$e;
783
+
784
+ var WeakMap$2 = global$4.WeakMap;
785
+
786
+ var weakMapBasicDetection = isCallable$8(WeakMap$2) && /native code/.test(String(WeakMap$2));
787
+
788
+ var createPropertyDescriptor$3 = function (bitmap, value) {
789
+ return {
790
+ enumerable: !(bitmap & 1),
791
+ configurable: !(bitmap & 2),
792
+ writable: !(bitmap & 4),
793
+ value: value
794
+ };
795
+ };
796
+
797
+ var DESCRIPTORS$4 = descriptors;
798
+ var definePropertyModule$2 = objectDefineProperty;
799
+ var createPropertyDescriptor$2 = createPropertyDescriptor$3;
800
+
801
+ var createNonEnumerableProperty$4 = DESCRIPTORS$4 ? function (object, key, value) {
802
+ return definePropertyModule$2.f(object, key, createPropertyDescriptor$2(1, value));
803
+ } : function (object, key, value) {
804
+ object[key] = value;
805
+ return object;
806
+ };
807
+
808
+ var NATIVE_WEAK_MAP = weakMapBasicDetection;
809
+ var global$3 = global$b;
810
+ var isObject$2 = isObject$7;
811
+ var createNonEnumerableProperty$3 = createNonEnumerableProperty$4;
812
+ var hasOwn$6 = hasOwnProperty_1;
813
+ var shared = sharedStore;
814
+ var sharedKey$1 = sharedKey$3;
815
+ var hiddenKeys$1 = hiddenKeys$4;
816
+
817
+ var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
818
+ var TypeError$1 = global$3.TypeError;
819
+ var WeakMap$1 = global$3.WeakMap;
820
+ var set, get, has;
821
+
822
+ var enforce = function (it) {
823
+ return has(it) ? get(it) : set(it, {});
824
+ };
825
+
826
+ var getterFor = function (TYPE) {
827
+ return function (it) {
828
+ var state;
829
+ if (!isObject$2(it) || (state = get(it)).type !== TYPE) {
830
+ throw TypeError$1('Incompatible receiver, ' + TYPE + ' required');
831
+ } return state;
832
+ };
833
+ };
834
+
835
+ if (NATIVE_WEAK_MAP || shared.state) {
836
+ var store$1 = shared.state || (shared.state = new WeakMap$1());
837
+ /* eslint-disable no-self-assign -- prototype methods protection */
838
+ store$1.get = store$1.get;
839
+ store$1.has = store$1.has;
840
+ store$1.set = store$1.set;
841
+ /* eslint-enable no-self-assign -- prototype methods protection */
842
+ set = function (it, metadata) {
843
+ if (store$1.has(it)) throw TypeError$1(OBJECT_ALREADY_INITIALIZED);
844
+ metadata.facade = it;
845
+ store$1.set(it, metadata);
846
+ return metadata;
847
+ };
848
+ get = function (it) {
849
+ return store$1.get(it) || {};
850
+ };
851
+ has = function (it) {
852
+ return store$1.has(it);
853
+ };
854
+ } else {
855
+ var STATE = sharedKey$1('state');
856
+ hiddenKeys$1[STATE] = true;
857
+ set = function (it, metadata) {
858
+ if (hasOwn$6(it, STATE)) throw TypeError$1(OBJECT_ALREADY_INITIALIZED);
859
+ metadata.facade = it;
860
+ createNonEnumerableProperty$3(it, STATE, metadata);
861
+ return metadata;
862
+ };
863
+ get = function (it) {
864
+ return hasOwn$6(it, STATE) ? it[STATE] : {};
865
+ };
866
+ has = function (it) {
867
+ return hasOwn$6(it, STATE);
868
+ };
869
+ }
870
+
871
+ var internalState = {
872
+ set: set,
873
+ get: get,
874
+ has: has,
875
+ enforce: enforce,
876
+ getterFor: getterFor
877
+ };
878
+
879
+ var objectGetOwnPropertyDescriptor = {};
880
+
881
+ var objectPropertyIsEnumerable = {};
882
+
883
+ var $propertyIsEnumerable = {}.propertyIsEnumerable;
884
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
885
+ var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
886
+
887
+ // Nashorn ~ JDK8 bug
888
+ var NASHORN_BUG = getOwnPropertyDescriptor$1 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
889
+
890
+ // `Object.prototype.propertyIsEnumerable` method implementation
891
+ // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
892
+ objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
893
+ var descriptor = getOwnPropertyDescriptor$1(this, V);
894
+ return !!descriptor && descriptor.enumerable;
895
+ } : $propertyIsEnumerable;
896
+
897
+ var DESCRIPTORS$3 = descriptors;
898
+ var call$1 = functionCall;
899
+ var propertyIsEnumerableModule = objectPropertyIsEnumerable;
900
+ var createPropertyDescriptor$1 = createPropertyDescriptor$3;
901
+ var toIndexedObject$1 = toIndexedObject$5;
902
+ var toPropertyKey = toPropertyKey$2;
903
+ var hasOwn$5 = hasOwnProperty_1;
904
+ var IE8_DOM_DEFINE = ie8DomDefine;
905
+
906
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
907
+ var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
908
+
909
+ // `Object.getOwnPropertyDescriptor` method
910
+ // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
911
+ objectGetOwnPropertyDescriptor.f = DESCRIPTORS$3 ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
912
+ O = toIndexedObject$1(O);
913
+ P = toPropertyKey(P);
914
+ if (IE8_DOM_DEFINE) try {
915
+ return $getOwnPropertyDescriptor(O, P);
916
+ } catch (error) { /* empty */ }
917
+ if (hasOwn$5(O, P)) return createPropertyDescriptor$1(!call$1(propertyIsEnumerableModule.f, O, P), O[P]);
918
+ };
919
+
920
+ var makeBuiltIn$2 = {exports: {}};
921
+
922
+ var DESCRIPTORS$2 = descriptors;
923
+ var hasOwn$4 = hasOwnProperty_1;
924
+
925
+ var FunctionPrototype = Function.prototype;
926
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
927
+ var getDescriptor = DESCRIPTORS$2 && Object.getOwnPropertyDescriptor;
928
+
929
+ var EXISTS = hasOwn$4(FunctionPrototype, 'name');
930
+ // additional protection from minified / mangled / dropped function names
931
+ var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
932
+ var CONFIGURABLE = EXISTS && (!DESCRIPTORS$2 || (DESCRIPTORS$2 && getDescriptor(FunctionPrototype, 'name').configurable));
933
+
934
+ var functionName = {
935
+ EXISTS: EXISTS,
936
+ PROPER: PROPER,
937
+ CONFIGURABLE: CONFIGURABLE
938
+ };
939
+
940
+ var uncurryThis$2 = functionUncurryThis;
941
+ var isCallable$7 = isCallable$e;
942
+ var store = sharedStore;
943
+
944
+ var functionToString = uncurryThis$2(Function.toString);
945
+
946
+ // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
947
+ if (!isCallable$7(store.inspectSource)) {
948
+ store.inspectSource = function (it) {
949
+ return functionToString(it);
950
+ };
951
+ }
952
+
953
+ var inspectSource$1 = store.inspectSource;
954
+
955
+ var fails$3 = fails$a;
956
+ var isCallable$6 = isCallable$e;
957
+ var hasOwn$3 = hasOwnProperty_1;
958
+ var DESCRIPTORS$1 = descriptors;
959
+ var CONFIGURABLE_FUNCTION_NAME$1 = functionName.CONFIGURABLE;
960
+ var inspectSource = inspectSource$1;
961
+ var InternalStateModule$1 = internalState;
962
+
963
+ var enforceInternalState = InternalStateModule$1.enforce;
964
+ var getInternalState$1 = InternalStateModule$1.get;
965
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
966
+ var defineProperty$2 = Object.defineProperty;
967
+
968
+ var CONFIGURABLE_LENGTH = DESCRIPTORS$1 && !fails$3(function () {
969
+ return defineProperty$2(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
970
+ });
971
+
972
+ var TEMPLATE = String(String).split('String');
973
+
974
+ var makeBuiltIn$1 = makeBuiltIn$2.exports = function (value, name, options) {
975
+ if (String(name).slice(0, 7) === 'Symbol(') {
976
+ name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
977
+ }
978
+ if (options && options.getter) name = 'get ' + name;
979
+ if (options && options.setter) name = 'set ' + name;
980
+ if (!hasOwn$3(value, 'name') || (CONFIGURABLE_FUNCTION_NAME$1 && value.name !== name)) {
981
+ if (DESCRIPTORS$1) defineProperty$2(value, 'name', { value: name, configurable: true });
982
+ else value.name = name;
983
+ }
984
+ if (CONFIGURABLE_LENGTH && options && hasOwn$3(options, 'arity') && value.length !== options.arity) {
985
+ defineProperty$2(value, 'length', { value: options.arity });
986
+ }
987
+ try {
988
+ if (options && hasOwn$3(options, 'constructor') && options.constructor) {
989
+ if (DESCRIPTORS$1) defineProperty$2(value, 'prototype', { writable: false });
990
+ // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
991
+ } else if (value.prototype) value.prototype = undefined;
992
+ } catch (error) { /* empty */ }
993
+ var state = enforceInternalState(value);
994
+ if (!hasOwn$3(state, 'source')) {
995
+ state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
996
+ } return value;
997
+ };
998
+
999
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
1000
+ // eslint-disable-next-line no-extend-native -- required
1001
+ Function.prototype.toString = makeBuiltIn$1(function toString() {
1002
+ return isCallable$6(this) && getInternalState$1(this).source || inspectSource(this);
1003
+ }, 'toString');
1004
+
1005
+ var isCallable$5 = isCallable$e;
1006
+ var definePropertyModule$1 = objectDefineProperty;
1007
+ var makeBuiltIn = makeBuiltIn$2.exports;
1008
+ var defineGlobalProperty$1 = defineGlobalProperty$3;
1009
+
1010
+ var defineBuiltIn$3 = function (O, key, value, options) {
1011
+ if (!options) options = {};
1012
+ var simple = options.enumerable;
1013
+ var name = options.name !== undefined ? options.name : key;
1014
+ if (isCallable$5(value)) makeBuiltIn(value, name, options);
1015
+ if (options.global) {
1016
+ if (simple) O[key] = value;
1017
+ else defineGlobalProperty$1(key, value);
1018
+ } else {
1019
+ try {
1020
+ if (!options.unsafe) delete O[key];
1021
+ else if (O[key]) simple = true;
1022
+ } catch (error) { /* empty */ }
1023
+ if (simple) O[key] = value;
1024
+ else definePropertyModule$1.f(O, key, {
1025
+ value: value,
1026
+ enumerable: false,
1027
+ configurable: !options.nonConfigurable,
1028
+ writable: !options.nonWritable
1029
+ });
1030
+ } return O;
1031
+ };
1032
+
1033
+ var objectGetOwnPropertyNames = {};
1034
+
1035
+ var internalObjectKeys = objectKeysInternal;
1036
+ var enumBugKeys = enumBugKeys$3;
1037
+
1038
+ var hiddenKeys = enumBugKeys.concat('length', 'prototype');
1039
+
1040
+ // `Object.getOwnPropertyNames` method
1041
+ // https://tc39.es/ecma262/#sec-object.getownpropertynames
1042
+ // eslint-disable-next-line es/no-object-getownpropertynames -- safe
1043
+ objectGetOwnPropertyNames.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
1044
+ return internalObjectKeys(O, hiddenKeys);
1045
+ };
1046
+
1047
+ var objectGetOwnPropertySymbols = {};
1048
+
1049
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
1050
+ objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols;
1051
+
1052
+ var getBuiltIn = getBuiltIn$4;
1053
+ var uncurryThis$1 = functionUncurryThis;
1054
+ var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
1055
+ var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
1056
+ var anObject$1 = anObject$5;
1057
+
1058
+ var concat = uncurryThis$1([].concat);
1059
+
1060
+ // all object keys, includes non-enumerable and symbols
1061
+ var ownKeys$1 = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
1062
+ var keys = getOwnPropertyNamesModule.f(anObject$1(it));
1063
+ var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
1064
+ return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
1065
+ };
1066
+
1067
+ var hasOwn$2 = hasOwnProperty_1;
1068
+ var ownKeys = ownKeys$1;
1069
+ var getOwnPropertyDescriptorModule = objectGetOwnPropertyDescriptor;
1070
+ var definePropertyModule = objectDefineProperty;
1071
+
1072
+ var copyConstructorProperties$1 = function (target, source, exceptions) {
1073
+ var keys = ownKeys(source);
1074
+ var defineProperty = definePropertyModule.f;
1075
+ var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
1076
+ for (var i = 0; i < keys.length; i++) {
1077
+ var key = keys[i];
1078
+ if (!hasOwn$2(target, key) && !(exceptions && hasOwn$2(exceptions, key))) {
1079
+ defineProperty(target, key, getOwnPropertyDescriptor(source, key));
1080
+ }
1081
+ }
1082
+ };
1083
+
1084
+ var fails$2 = fails$a;
1085
+ var isCallable$4 = isCallable$e;
1086
+
1087
+ var replacement = /#|\.prototype\./;
1088
+
1089
+ var isForced$1 = function (feature, detection) {
1090
+ var value = data[normalize(feature)];
1091
+ return value == POLYFILL ? true
1092
+ : value == NATIVE ? false
1093
+ : isCallable$4(detection) ? fails$2(detection)
1094
+ : !!detection;
1095
+ };
1096
+
1097
+ var normalize = isForced$1.normalize = function (string) {
1098
+ return String(string).replace(replacement, '.').toLowerCase();
1099
+ };
1100
+
1101
+ var data = isForced$1.data = {};
1102
+ var NATIVE = isForced$1.NATIVE = 'N';
1103
+ var POLYFILL = isForced$1.POLYFILL = 'P';
1104
+
1105
+ var isForced_1 = isForced$1;
1106
+
1107
+ var global$2 = global$b;
1108
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
1109
+ var createNonEnumerableProperty$2 = createNonEnumerableProperty$4;
1110
+ var defineBuiltIn$2 = defineBuiltIn$3;
1111
+ var defineGlobalProperty = defineGlobalProperty$3;
1112
+ var copyConstructorProperties = copyConstructorProperties$1;
1113
+ var isForced = isForced_1;
1114
+
1115
+ /*
1116
+ options.target - name of the target object
1117
+ options.global - target is the global object
1118
+ options.stat - export as static methods of target
1119
+ options.proto - export as prototype methods of target
1120
+ options.real - real prototype method for the `pure` version
1121
+ options.forced - export even if the native feature is available
1122
+ options.bind - bind methods to the target, required for the `pure` version
1123
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
1124
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
1125
+ options.sham - add a flag to not completely full polyfills
1126
+ options.enumerable - export as enumerable property
1127
+ options.dontCallGetSet - prevent calling a getter on target
1128
+ options.name - the .name of the function if it does not match the key
1129
+ */
1130
+ var _export = function (options, source) {
1131
+ var TARGET = options.target;
1132
+ var GLOBAL = options.global;
1133
+ var STATIC = options.stat;
1134
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
1135
+ if (GLOBAL) {
1136
+ target = global$2;
1137
+ } else if (STATIC) {
1138
+ target = global$2[TARGET] || defineGlobalProperty(TARGET, {});
1139
+ } else {
1140
+ target = (global$2[TARGET] || {}).prototype;
1141
+ }
1142
+ if (target) for (key in source) {
1143
+ sourceProperty = source[key];
1144
+ if (options.dontCallGetSet) {
1145
+ descriptor = getOwnPropertyDescriptor(target, key);
1146
+ targetProperty = descriptor && descriptor.value;
1147
+ } else targetProperty = target[key];
1148
+ FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
1149
+ // contained in target
1150
+ if (!FORCED && targetProperty !== undefined) {
1151
+ if (typeof sourceProperty == typeof targetProperty) continue;
1152
+ copyConstructorProperties(sourceProperty, targetProperty);
1153
+ }
1154
+ // add a flag to not completely full polyfills
1155
+ if (options.sham || (targetProperty && targetProperty.sham)) {
1156
+ createNonEnumerableProperty$2(sourceProperty, 'sham', true);
1157
+ }
1158
+ defineBuiltIn$2(target, key, sourceProperty, options);
1159
+ }
1160
+ };
1161
+
1162
+ var fails$1 = fails$a;
1163
+
1164
+ var correctPrototypeGetter = !fails$1(function () {
1165
+ function F() { /* empty */ }
1166
+ F.prototype.constructor = null;
1167
+ // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
1168
+ return Object.getPrototypeOf(new F()) !== F.prototype;
1169
+ });
1170
+
1171
+ var hasOwn$1 = hasOwnProperty_1;
1172
+ var isCallable$3 = isCallable$e;
1173
+ var toObject = toObject$2;
1174
+ var sharedKey = sharedKey$3;
1175
+ var CORRECT_PROTOTYPE_GETTER = correctPrototypeGetter;
1176
+
1177
+ var IE_PROTO = sharedKey('IE_PROTO');
1178
+ var $Object = Object;
1179
+ var ObjectPrototype = $Object.prototype;
1180
+
1181
+ // `Object.getPrototypeOf` method
1182
+ // https://tc39.es/ecma262/#sec-object.getprototypeof
1183
+ // eslint-disable-next-line es/no-object-getprototypeof -- safe
1184
+ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
1185
+ var object = toObject(O);
1186
+ if (hasOwn$1(object, IE_PROTO)) return object[IE_PROTO];
1187
+ var constructor = object.constructor;
1188
+ if (isCallable$3(constructor) && object instanceof constructor) {
1189
+ return constructor.prototype;
1190
+ } return object instanceof $Object ? ObjectPrototype : null;
1191
+ };
1192
+
1193
+ var fails = fails$a;
1194
+ var isCallable$2 = isCallable$e;
1195
+ var isObject$1 = isObject$7;
1196
+ var getPrototypeOf$1 = objectGetPrototypeOf;
1197
+ var defineBuiltIn$1 = defineBuiltIn$3;
1198
+ var wellKnownSymbol$3 = wellKnownSymbol$6;
1199
+
1200
+ var ITERATOR$2 = wellKnownSymbol$3('iterator');
1201
+ var BUGGY_SAFARI_ITERATORS$1 = false;
1202
+
1203
+ // `%IteratorPrototype%` object
1204
+ // https://tc39.es/ecma262/#sec-%iteratorprototype%-object
1205
+ var IteratorPrototype$2, PrototypeOfArrayIteratorPrototype, arrayIterator;
1206
+
1207
+ /* eslint-disable es/no-array-prototype-keys -- safe */
1208
+ if ([].keys) {
1209
+ arrayIterator = [].keys();
1210
+ // Safari 8 has buggy iterators w/o `next`
1211
+ if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS$1 = true;
1212
+ else {
1213
+ PrototypeOfArrayIteratorPrototype = getPrototypeOf$1(getPrototypeOf$1(arrayIterator));
1214
+ if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype$2 = PrototypeOfArrayIteratorPrototype;
1215
+ }
1216
+ }
1217
+
1218
+ var NEW_ITERATOR_PROTOTYPE = !isObject$1(IteratorPrototype$2) || fails(function () {
1219
+ var test = {};
1220
+ // FF44- legacy iterators case
1221
+ return IteratorPrototype$2[ITERATOR$2].call(test) !== test;
1222
+ });
1223
+
1224
+ if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype$2 = {};
1225
+
1226
+ // `%IteratorPrototype%[@@iterator]()` method
1227
+ // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
1228
+ if (!isCallable$2(IteratorPrototype$2[ITERATOR$2])) {
1229
+ defineBuiltIn$1(IteratorPrototype$2, ITERATOR$2, function () {
1230
+ return this;
1231
+ });
1232
+ }
1233
+
1234
+ var iteratorsCore = {
1235
+ IteratorPrototype: IteratorPrototype$2,
1236
+ BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS$1
1237
+ };
1238
+
1239
+ var defineProperty$1 = objectDefineProperty.f;
1240
+ var hasOwn = hasOwnProperty_1;
1241
+ var wellKnownSymbol$2 = wellKnownSymbol$6;
1242
+
1243
+ var TO_STRING_TAG$1 = wellKnownSymbol$2('toStringTag');
1244
+
1245
+ var setToStringTag$2 = function (target, TAG, STATIC) {
1246
+ if (target && !STATIC) target = target.prototype;
1247
+ if (target && !hasOwn(target, TO_STRING_TAG$1)) {
1248
+ defineProperty$1(target, TO_STRING_TAG$1, { configurable: true, value: TAG });
1249
+ }
1250
+ };
1251
+
1252
+ var IteratorPrototype$1 = iteratorsCore.IteratorPrototype;
1253
+ var create$1 = objectCreate;
1254
+ var createPropertyDescriptor = createPropertyDescriptor$3;
1255
+ var setToStringTag$1 = setToStringTag$2;
1256
+ var Iterators$2 = iterators;
1257
+
1258
+ var returnThis$1 = function () { return this; };
1259
+
1260
+ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
1261
+ var TO_STRING_TAG = NAME + ' Iterator';
1262
+ IteratorConstructor.prototype = create$1(IteratorPrototype$1, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });
1263
+ setToStringTag$1(IteratorConstructor, TO_STRING_TAG, false);
1264
+ Iterators$2[TO_STRING_TAG] = returnThis$1;
1265
+ return IteratorConstructor;
1266
+ };
1267
+
1268
+ var isCallable$1 = isCallable$e;
1269
+
1270
+ var $String = String;
1271
+ var $TypeError = TypeError;
1272
+
1273
+ var aPossiblePrototype$1 = function (argument) {
1274
+ if (typeof argument == 'object' || isCallable$1(argument)) return argument;
1275
+ throw $TypeError("Can't set " + $String(argument) + ' as a prototype');
1276
+ };
1277
+
1278
+ /* eslint-disable no-proto -- safe */
1279
+
1280
+ var uncurryThis = functionUncurryThis;
1281
+ var anObject = anObject$5;
1282
+ var aPossiblePrototype = aPossiblePrototype$1;
1283
+
1284
+ // `Object.setPrototypeOf` method
1285
+ // https://tc39.es/ecma262/#sec-object.setprototypeof
1286
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
1287
+ // eslint-disable-next-line es/no-object-setprototypeof -- safe
1288
+ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? function () {
1289
+ var CORRECT_SETTER = false;
1290
+ var test = {};
1291
+ var setter;
1292
+ try {
1293
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
1294
+ setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);
1295
+ setter(test, []);
1296
+ CORRECT_SETTER = test instanceof Array;
1297
+ } catch (error) { /* empty */ }
1298
+ return function setPrototypeOf(O, proto) {
1299
+ anObject(O);
1300
+ aPossiblePrototype(proto);
1301
+ if (CORRECT_SETTER) setter(O, proto);
1302
+ else O.__proto__ = proto;
1303
+ return O;
1304
+ };
1305
+ }() : undefined);
1306
+
1307
+ var $ = _export;
1308
+ var call = functionCall;
1309
+ var FunctionName = functionName;
1310
+ var isCallable = isCallable$e;
1311
+ var createIteratorConstructor = iteratorCreateConstructor;
1312
+ var getPrototypeOf = objectGetPrototypeOf;
1313
+ var setPrototypeOf = objectSetPrototypeOf;
1314
+ var setToStringTag = setToStringTag$2;
1315
+ var createNonEnumerableProperty$1 = createNonEnumerableProperty$4;
1316
+ var defineBuiltIn = defineBuiltIn$3;
1317
+ var wellKnownSymbol$1 = wellKnownSymbol$6;
1318
+ var Iterators$1 = iterators;
1319
+ var IteratorsCore = iteratorsCore;
1320
+
1321
+ var PROPER_FUNCTION_NAME = FunctionName.PROPER;
1322
+ var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
1323
+ var IteratorPrototype = IteratorsCore.IteratorPrototype;
1324
+ var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
1325
+ var ITERATOR$1 = wellKnownSymbol$1('iterator');
1326
+ var KEYS = 'keys';
1327
+ var VALUES = 'values';
1328
+ var ENTRIES = 'entries';
1329
+
1330
+ var returnThis = function () { return this; };
1331
+
1332
+ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
1333
+ createIteratorConstructor(IteratorConstructor, NAME, next);
1334
+
1335
+ var getIterationMethod = function (KIND) {
1336
+ if (KIND === DEFAULT && defaultIterator) return defaultIterator;
1337
+ if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
1338
+ switch (KIND) {
1339
+ case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
1340
+ case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
1341
+ case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
1342
+ } return function () { return new IteratorConstructor(this); };
1343
+ };
1344
+
1345
+ var TO_STRING_TAG = NAME + ' Iterator';
1346
+ var INCORRECT_VALUES_NAME = false;
1347
+ var IterablePrototype = Iterable.prototype;
1348
+ var nativeIterator = IterablePrototype[ITERATOR$1]
1349
+ || IterablePrototype['@@iterator']
1350
+ || DEFAULT && IterablePrototype[DEFAULT];
1351
+ var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
1352
+ var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
1353
+ var CurrentIteratorPrototype, methods, KEY;
1354
+
1355
+ // fix native
1356
+ if (anyNativeIterator) {
1357
+ CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
1358
+ if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
1359
+ if (getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
1360
+ if (setPrototypeOf) {
1361
+ setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
1362
+ } else if (!isCallable(CurrentIteratorPrototype[ITERATOR$1])) {
1363
+ defineBuiltIn(CurrentIteratorPrototype, ITERATOR$1, returnThis);
1364
+ }
1365
+ }
1366
+ // Set @@toStringTag to native iterators
1367
+ setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true);
1368
+ }
1369
+ }
1370
+
1371
+ // fix Array.prototype.{ values, @@iterator }.name in V8 / FF
1372
+ if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
1373
+ if (CONFIGURABLE_FUNCTION_NAME) {
1374
+ createNonEnumerableProperty$1(IterablePrototype, 'name', VALUES);
1375
+ } else {
1376
+ INCORRECT_VALUES_NAME = true;
1377
+ defaultIterator = function values() { return call(nativeIterator, this); };
1378
+ }
1379
+ }
1380
+
1381
+ // export additional methods
1382
+ if (DEFAULT) {
1383
+ methods = {
1384
+ values: getIterationMethod(VALUES),
1385
+ keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
1386
+ entries: getIterationMethod(ENTRIES)
1387
+ };
1388
+ if (FORCED) for (KEY in methods) {
1389
+ if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
1390
+ defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
1391
+ }
1392
+ } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1393
+ }
1394
+
1395
+ // define iterator
1396
+ if (IterablePrototype[ITERATOR$1] !== defaultIterator) {
1397
+ defineBuiltIn(IterablePrototype, ITERATOR$1, defaultIterator, { name: DEFAULT });
1398
+ }
1399
+ Iterators$1[NAME] = defaultIterator;
1400
+
1401
+ return methods;
1402
+ };
1403
+
1404
+ // `CreateIterResultObject` abstract operation
1405
+ // https://tc39.es/ecma262/#sec-createiterresultobject
1406
+ var createIterResultObject$1 = function (value, done) {
1407
+ return { value: value, done: done };
1408
+ };
1409
+
1410
+ var toIndexedObject = toIndexedObject$5;
1411
+ var addToUnscopables = addToUnscopables$1;
1412
+ var Iterators = iterators;
1413
+ var InternalStateModule = internalState;
1414
+ var defineProperty = objectDefineProperty.f;
1415
+ var defineIterator = iteratorDefine;
1416
+ var createIterResultObject = createIterResultObject$1;
1417
+ var DESCRIPTORS = descriptors;
1418
+
1419
+ var ARRAY_ITERATOR = 'Array Iterator';
1420
+ var setInternalState = InternalStateModule.set;
1421
+ var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
1422
+
1423
+ // `Array.prototype.entries` method
1424
+ // https://tc39.es/ecma262/#sec-array.prototype.entries
1425
+ // `Array.prototype.keys` method
1426
+ // https://tc39.es/ecma262/#sec-array.prototype.keys
1427
+ // `Array.prototype.values` method
1428
+ // https://tc39.es/ecma262/#sec-array.prototype.values
1429
+ // `Array.prototype[@@iterator]` method
1430
+ // https://tc39.es/ecma262/#sec-array.prototype-@@iterator
1431
+ // `CreateArrayIterator` internal method
1432
+ // https://tc39.es/ecma262/#sec-createarrayiterator
1433
+ var es_array_iterator = defineIterator(Array, 'Array', function (iterated, kind) {
1434
+ setInternalState(this, {
1435
+ type: ARRAY_ITERATOR,
1436
+ target: toIndexedObject(iterated), // target
1437
+ index: 0, // next index
1438
+ kind: kind // kind
1439
+ });
1440
+ // `%ArrayIteratorPrototype%.next` method
1441
+ // https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
1442
+ }, function () {
1443
+ var state = getInternalState(this);
1444
+ var target = state.target;
1445
+ var kind = state.kind;
1446
+ var index = state.index++;
1447
+ if (!target || index >= target.length) {
1448
+ state.target = undefined;
1449
+ return createIterResultObject(undefined, true);
1450
+ }
1451
+ if (kind == 'keys') return createIterResultObject(index, false);
1452
+ if (kind == 'values') return createIterResultObject(target[index], false);
1453
+ return createIterResultObject([index, target[index]], false);
1454
+ }, 'values');
1455
+
1456
+ // argumentsList[@@iterator] is %ArrayProto_values%
1457
+ // https://tc39.es/ecma262/#sec-createunmappedargumentsobject
1458
+ // https://tc39.es/ecma262/#sec-createmappedargumentsobject
1459
+ var values = Iterators.Arguments = Iterators.Array;
1460
+
1461
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
1462
+ addToUnscopables('keys');
1463
+ addToUnscopables('values');
1464
+ addToUnscopables('entries');
1465
+
1466
+ // V8 ~ Chrome 45- bug
1467
+ if (DESCRIPTORS && values.name !== 'values') try {
1468
+ defineProperty(values, 'name', { value: 'values' });
1469
+ } catch (error) { /* empty */ }
1470
+
1471
+ // iterable DOM collections
1472
+ // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
1473
+ var domIterables = {
1474
+ CSSRuleList: 0,
1475
+ CSSStyleDeclaration: 0,
1476
+ CSSValueList: 0,
1477
+ ClientRectList: 0,
1478
+ DOMRectList: 0,
1479
+ DOMStringList: 0,
1480
+ DOMTokenList: 1,
1481
+ DataTransferItemList: 0,
1482
+ FileList: 0,
1483
+ HTMLAllCollection: 0,
1484
+ HTMLCollection: 0,
1485
+ HTMLFormElement: 0,
1486
+ HTMLSelectElement: 0,
1487
+ MediaList: 0,
1488
+ MimeTypeArray: 0,
1489
+ NamedNodeMap: 0,
1490
+ NodeList: 1,
1491
+ PaintRequestList: 0,
1492
+ Plugin: 0,
1493
+ PluginArray: 0,
1494
+ SVGLengthList: 0,
1495
+ SVGNumberList: 0,
1496
+ SVGPathSegList: 0,
1497
+ SVGPointList: 0,
1498
+ SVGStringList: 0,
1499
+ SVGTransformList: 0,
1500
+ SourceBufferList: 0,
1501
+ StyleSheetList: 0,
1502
+ TextTrackCueList: 0,
1503
+ TextTrackList: 0,
1504
+ TouchList: 0
1505
+ };
1506
+
1507
+ // in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`
1508
+ var documentCreateElement = documentCreateElement$2;
1509
+
1510
+ var classList = documentCreateElement('span').classList;
1511
+ var DOMTokenListPrototype$1 = classList && classList.constructor && classList.constructor.prototype;
1512
+
1513
+ var domTokenListPrototype = DOMTokenListPrototype$1 === Object.prototype ? undefined : DOMTokenListPrototype$1;
1514
+
1515
+ var global$1 = global$b;
1516
+ var DOMIterables = domIterables;
1517
+ var DOMTokenListPrototype = domTokenListPrototype;
1518
+ var ArrayIteratorMethods = es_array_iterator;
1519
+ var createNonEnumerableProperty = createNonEnumerableProperty$4;
1520
+ var wellKnownSymbol = wellKnownSymbol$6;
1521
+
1522
+ var ITERATOR = wellKnownSymbol('iterator');
1523
+ var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1524
+ var ArrayValues = ArrayIteratorMethods.values;
1525
+
1526
+ var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
1527
+ if (CollectionPrototype) {
1528
+ // some Chrome versions have non-configurable methods on DOMTokenList
1529
+ if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
1530
+ createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
1531
+ } catch (error) {
1532
+ CollectionPrototype[ITERATOR] = ArrayValues;
1533
+ }
1534
+ if (!CollectionPrototype[TO_STRING_TAG]) {
1535
+ createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
1536
+ }
1537
+ if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
1538
+ // some Chrome versions have non-configurable methods on DOMTokenList
1539
+ if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
1540
+ createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
1541
+ } catch (error) {
1542
+ CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
1543
+ }
1544
+ }
1545
+ }
1546
+ };
1547
+
1548
+ for (var COLLECTION_NAME in DOMIterables) {
1549
+ handlePrototype(global$1[COLLECTION_NAME] && global$1[COLLECTION_NAME].prototype, COLLECTION_NAME);
1550
+ }
1551
+
1552
+ handlePrototype(DOMTokenListPrototype, 'DOMTokenList');
1553
+
1
1554
  /**
2
1555
  * A reference to globalThis, with support
3
1556
  * for browsers that don't yet support the spec.
@@ -67,6 +1620,27 @@ if (FAST.getById === void 0) {
67
1620
  * @internal
68
1621
  */
69
1622
  const emptyArray = Object.freeze([]);
1623
+ /**
1624
+ * Creates a function capable of locating metadata associated with a type.
1625
+ * @returns A metadata locator function.
1626
+ * @internal
1627
+ */
1628
+ function createMetadataLocator() {
1629
+ const metadataLookup = new WeakMap();
1630
+ return function (target) {
1631
+ let metadata = metadataLookup.get(target);
1632
+ if (metadata === void 0) {
1633
+ let currentTarget = Reflect.getPrototypeOf(target);
1634
+ while (metadata === void 0 && currentTarget !== null) {
1635
+ metadata = metadataLookup.get(currentTarget);
1636
+ currentTarget = Reflect.getPrototypeOf(currentTarget);
1637
+ }
1638
+ metadata = metadata === void 0 ? [] : metadata.slice(0);
1639
+ metadataLookup.set(target, metadata);
1640
+ }
1641
+ return metadata;
1642
+ };
1643
+ }
70
1644
 
71
1645
  const updateQueue = $global.FAST.getById(1 /* updateQueue */, () => {
72
1646
  const tasks = [];
@@ -275,30 +1849,6 @@ const DOM = Object.freeze({
275
1849
  },
276
1850
  });
277
1851
 
278
- function spilloverSubscribe(subscriber) {
279
- const spillover = this.spillover;
280
- const index = spillover.indexOf(subscriber);
281
- if (index === -1) {
282
- spillover.push(subscriber);
283
- }
284
- }
285
- function spilloverUnsubscribe(subscriber) {
286
- const spillover = this.spillover;
287
- const index = spillover.indexOf(subscriber);
288
- if (index !== -1) {
289
- spillover.splice(index, 1);
290
- }
291
- }
292
- function spilloverNotifySubscribers(args) {
293
- const spillover = this.spillover;
294
- const source = this.source;
295
- for (let i = 0, ii = spillover.length; i < ii; ++i) {
296
- spillover[i].handleChange(source, args);
297
- }
298
- }
299
- function spilloverHas(subscriber) {
300
- return this.spillover.indexOf(subscriber) !== -1;
301
- }
302
1852
  /**
303
1853
  * An implementation of {@link Notifier} that efficiently keeps track of
304
1854
  * subscribers interested in a specific change notification on an
@@ -328,42 +1878,58 @@ class SubscriberSet {
328
1878
  * @param subscriber - The subscriber to test for inclusion in this set.
329
1879
  */
330
1880
  has(subscriber) {
331
- return this.sub1 === subscriber || this.sub2 === subscriber;
1881
+ return this.spillover === void 0
1882
+ ? this.sub1 === subscriber || this.sub2 === subscriber
1883
+ : this.spillover.indexOf(subscriber) !== -1;
332
1884
  }
333
1885
  /**
334
1886
  * Subscribes to notification of changes in an object's state.
335
1887
  * @param subscriber - The object that is subscribing for change notification.
336
1888
  */
337
1889
  subscribe(subscriber) {
338
- if (this.has(subscriber)) {
339
- return;
340
- }
341
- if (this.sub1 === void 0) {
342
- this.sub1 = subscriber;
343
- return;
1890
+ const spillover = this.spillover;
1891
+ if (spillover === void 0) {
1892
+ if (this.has(subscriber)) {
1893
+ return;
1894
+ }
1895
+ if (this.sub1 === void 0) {
1896
+ this.sub1 = subscriber;
1897
+ return;
1898
+ }
1899
+ if (this.sub2 === void 0) {
1900
+ this.sub2 = subscriber;
1901
+ return;
1902
+ }
1903
+ this.spillover = [this.sub1, this.sub2, subscriber];
1904
+ this.sub1 = void 0;
1905
+ this.sub2 = void 0;
344
1906
  }
345
- if (this.sub2 === void 0) {
346
- this.sub2 = subscriber;
347
- return;
1907
+ else {
1908
+ const index = spillover.indexOf(subscriber);
1909
+ if (index === -1) {
1910
+ spillover.push(subscriber);
1911
+ }
348
1912
  }
349
- this.spillover = [this.sub1, this.sub2, subscriber];
350
- this.subscribe = spilloverSubscribe;
351
- this.unsubscribe = spilloverUnsubscribe;
352
- this.notify = spilloverNotifySubscribers;
353
- this.has = spilloverHas;
354
- this.sub1 = void 0;
355
- this.sub2 = void 0;
356
1913
  }
357
1914
  /**
358
1915
  * Unsubscribes from notification of changes in an object's state.
359
1916
  * @param subscriber - The object that is unsubscribing from change notification.
360
1917
  */
361
1918
  unsubscribe(subscriber) {
362
- if (this.sub1 === subscriber) {
363
- this.sub1 = void 0;
1919
+ const spillover = this.spillover;
1920
+ if (spillover === void 0) {
1921
+ if (this.sub1 === subscriber) {
1922
+ this.sub1 = void 0;
1923
+ }
1924
+ else if (this.sub2 === subscriber) {
1925
+ this.sub2 = void 0;
1926
+ }
364
1927
  }
365
- else if (this.sub2 === subscriber) {
366
- this.sub2 = void 0;
1928
+ else {
1929
+ const index = spillover.indexOf(subscriber);
1930
+ if (index !== -1) {
1931
+ spillover.splice(index, 1);
1932
+ }
367
1933
  }
368
1934
  }
369
1935
  /**
@@ -371,14 +1937,22 @@ class SubscriberSet {
371
1937
  * @param args - Data passed along to subscribers during notification.
372
1938
  */
373
1939
  notify(args) {
374
- const sub1 = this.sub1;
375
- const sub2 = this.sub2;
1940
+ const spillover = this.spillover;
376
1941
  const source = this.source;
377
- if (sub1 !== void 0) {
378
- sub1.handleChange(source, args);
1942
+ if (spillover === void 0) {
1943
+ const sub1 = this.sub1;
1944
+ const sub2 = this.sub2;
1945
+ if (sub1 !== void 0) {
1946
+ sub1.handleChange(source, args);
1947
+ }
1948
+ if (sub2 !== void 0) {
1949
+ sub2.handleChange(source, args);
1950
+ }
379
1951
  }
380
- if (sub2 !== void 0) {
381
- sub2.handleChange(source, args);
1952
+ else {
1953
+ for (let i = 0, ii = spillover.length; i < ii; ++i) {
1954
+ spillover[i].handleChange(source, args);
1955
+ }
382
1956
  }
383
1957
  }
384
1958
  }
@@ -424,7 +1998,8 @@ class PropertyChangeNotifier {
424
1998
  subscribers.subscribe(subscriber);
425
1999
  }
426
2000
  else {
427
- this.sourceSubscribers = (_a = this.sourceSubscribers) !== null && _a !== void 0 ? _a : new SubscriberSet(this.source);
2001
+ this.sourceSubscribers =
2002
+ (_a = this.sourceSubscribers) !== null && _a !== void 0 ? _a : new SubscriberSet(this.source);
428
2003
  this.sourceSubscribers.subscribe(subscriber);
429
2004
  }
430
2005
  }
@@ -454,7 +2029,6 @@ class PropertyChangeNotifier {
454
2029
  const Observable = FAST.getById(2 /* observable */, () => {
455
2030
  const volatileRegex = /(:|&&|\|\||if)/;
456
2031
  const notifierLookup = new WeakMap();
457
- const accessorLookup = new WeakMap();
458
2032
  const queueUpdate = DOM.queueUpdate;
459
2033
  let watcher = void 0;
460
2034
  let createArrayObserver = (array) => {
@@ -472,24 +2046,7 @@ const Observable = FAST.getById(2 /* observable */, () => {
472
2046
  }
473
2047
  return found;
474
2048
  }
475
- function getAccessors(target) {
476
- let accessors = accessorLookup.get(target);
477
- if (accessors === void 0) {
478
- let currentTarget = Reflect.getPrototypeOf(target);
479
- while (accessors === void 0 && currentTarget !== null) {
480
- accessors = accessorLookup.get(currentTarget);
481
- currentTarget = Reflect.getPrototypeOf(currentTarget);
482
- }
483
- if (accessors === void 0) {
484
- accessors = [];
485
- }
486
- else {
487
- accessors = accessors.slice(0);
488
- }
489
- accessorLookup.set(target, accessors);
490
- }
491
- return accessors;
492
- }
2049
+ const getAccessors = createMetadataLocator();
493
2050
  class DefaultObservableAccessor {
494
2051
  constructor(name) {
495
2052
  this.name = name;
@@ -568,6 +2125,7 @@ const Observable = FAST.getById(2 /* observable */, () => {
568
2125
  watcher = void 0;
569
2126
  /* eslint-disable-next-line */
570
2127
  prevValue = prev.propertySource[prev.propertyName];
2128
+ /* eslint-disable-next-line @typescript-eslint/no-this-alias */
571
2129
  watcher = this;
572
2130
  if (propertySource === prevValue) {
573
2131
  this.needsRefresh = true;
@@ -707,6 +2265,21 @@ const Observable = FAST.getById(2 /* observable */, () => {
707
2265
  function observable(target, nameOrAccessor) {
708
2266
  Observable.defineProperty(target, nameOrAccessor);
709
2267
  }
2268
+ /**
2269
+ * Decorator: Marks a property getter as having volatile observable dependencies.
2270
+ * @param target - The target that the property is defined on.
2271
+ * @param name - The property name.
2272
+ * @param name - The existing descriptor.
2273
+ * @public
2274
+ */
2275
+ function volatile(target, name, descriptor) {
2276
+ return Object.assign({}, descriptor, {
2277
+ get: function () {
2278
+ Observable.trackVolatile();
2279
+ return descriptor.get.apply(this);
2280
+ },
2281
+ });
2282
+ }
710
2283
  const contextEvent = FAST.getById(3 /* contextEvent */, () => {
711
2284
  let current = null;
712
2285
  return {
@@ -1128,6 +2701,7 @@ class CompilationContext {
1128
2701
  this.targetIndex = -1;
1129
2702
  }
1130
2703
  release() {
2704
+ /* eslint-disable-next-line @typescript-eslint/no-this-alias */
1131
2705
  sharedContext = this;
1132
2706
  }
1133
2707
  static borrow(directives) {
@@ -1340,8 +2914,10 @@ class HTMLView {
1340
2914
  node.parentNode.insertBefore(this.fragment, node);
1341
2915
  }
1342
2916
  else {
1343
- const parentNode = node.parentNode;
1344
2917
  const end = this.lastChild;
2918
+ if (node.previousSibling === end)
2919
+ return;
2920
+ const parentNode = node.parentNode;
1345
2921
  let current = this.firstChild;
1346
2922
  let next;
1347
2923
  while (current !== end) {
@@ -1606,8 +3182,6 @@ function html(strings, ...values) {
1606
3182
  class ElementStyles {
1607
3183
  constructor() {
1608
3184
  this.targets = new WeakSet();
1609
- /** @internal */
1610
- this.behaviors = null;
1611
3185
  }
1612
3186
  /** @internal */
1613
3187
  addStylesTo(target) {
@@ -1749,6 +3323,16 @@ class StyleElementStyles extends ElementStyles {
1749
3323
  }
1750
3324
  }
1751
3325
 
3326
+ /**
3327
+ * Metadata used to configure a custom attribute's behavior.
3328
+ * @public
3329
+ */
3330
+ const AttributeConfiguration = Object.freeze({
3331
+ /**
3332
+ * Locates all attribute configurations associated with a type.
3333
+ */
3334
+ locate: createMetadataLocator(),
3335
+ });
1752
3336
  /**
1753
3337
  * A {@link ValueConverter} that converts to and from `boolean` values.
1754
3338
  * @remarks
@@ -1889,7 +3473,7 @@ class AttributeDefinition {
1889
3473
  */
1890
3474
  static collect(Owner, ...attributeLists) {
1891
3475
  const attributes = [];
1892
- attributeLists.push(Owner.attributes);
3476
+ attributeLists.push(AttributeConfiguration.locate(Owner));
1893
3477
  for (let i = 0, ii = attributeLists.length; i < ii; ++i) {
1894
3478
  const list = attributeLists[i];
1895
3479
  if (list === void 0) {
@@ -1919,9 +3503,7 @@ function attr(configOrTarget, prop) {
1919
3503
  // - @attr({...opts})
1920
3504
  config.property = $prop;
1921
3505
  }
1922
- const attributes = $target.constructor.attributes ||
1923
- ($target.constructor.attributes = []);
1924
- attributes.push(config);
3506
+ AttributeConfiguration.locate($target.constructor).push(config);
1925
3507
  }
1926
3508
  if (arguments.length > 1) {
1927
3509
  // Non invocation:
@@ -4990,9 +6572,8 @@ class ElementDefinitionEntry {
4990
6572
  }
4991
6573
  /* eslint-enable @typescript-eslint/no-non-null-assertion */
4992
6574
 
4993
- function provideVividDesignSystem(element) {
4994
- return DesignSystem.getOrCreate(element).withPrefix('vwc');
4995
- }
4996
- const designSystem = provideVividDesignSystem();
6575
+ const defaultPrefix = 'vwc';
6576
+ const designSystem = DesignSystem.getOrCreate();
6577
+ const registerFactory = registries => (prefix = defaultPrefix) => designSystem.withPrefix(prefix).register(...registries);
4997
6578
 
4998
- export { AttachedBehaviorHTMLDirective as A, DOM as D, FoundationElement as F, HTMLDirective as H, Observable as O, SubscriberSet as S, __decorate as _, attr as a, __metadata as b, __classPrivateFieldGet as c, designSystem as d, emptyArray as e, HTMLView as f, __classPrivateFieldSet as g, html as h, nullableNumberConverter as n, observable as o, provideVividDesignSystem as p };
6579
+ export { objectKeys$1 as $, AttachedBehaviorHTMLDirective as A, hasOwnProperty_1 as B, objectGetOwnPropertyDescriptor as C, isForced_1 as D, engineV8Version as E, FoundationElement as F, _export as G, defineBuiltIn$3 as H, objectSetPrototypeOf as I, setToStringTag$2 as J, functionCall as K, internalState as L, isObject$7 as M, iterators as N, Observable as O, getMethod$1 as P, lengthOfArrayLike$1 as Q, functionName as R, AttributeConfiguration as S, requireObjectCoercible$2 as T, __classPrivateFieldGet as U, booleanConverter as V, DOM as W, SubscriberSet as X, HTMLDirective as Y, HTMLView as Z, __decorate as _, attr as a, toObject$2 as a0, indexedObject as a1, objectGetOwnPropertySymbols as a2, objectPropertyIsEnumerable as a3, copyConstructorProperties$1 as a4, __classPrivateFieldSet as a5, volatile as a6, designSystem as a7, __metadata as b, classofRaw$1 as c, getBuiltIn$4 as d, emptyArray as e, objectDefineProperty as f, global$b as g, html as h, descriptors as i, objectIsPrototypeOf as j, functionUncurryThis as k, fails$a as l, isCallable$e as m, nullableNumberConverter as n, observable as o, inspectSource$1 as p, anObject$5 as q, registerFactory as r, isNullOrUndefined$2 as s, tryToString$1 as t, functionBindNative as u, aCallable$1 as v, wellKnownSymbol$6 as w, engineUserAgent as x, html$2 as y, documentCreateElement$2 as z };