@sbb-esta/lyne-elements 2.10.1 → 3.0.0-next.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 (804) hide show
  1. package/_index.scss +1 -1
  2. package/action-group/action-group.component.d.ts.map +1 -1
  3. package/alert/alert/alert.component.d.ts +2 -7
  4. package/alert/alert/alert.component.d.ts.map +1 -1
  5. package/alert/alert/alert.component.js +55 -67
  6. package/autocomplete/autocomplete-base-element.d.ts +26 -17
  7. package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  8. package/autocomplete/autocomplete-base-element.js +98 -70
  9. package/autocomplete/autocomplete.component.d.ts +3 -2
  10. package/autocomplete/autocomplete.component.d.ts.map +1 -1
  11. package/autocomplete/autocomplete.component.js +16 -19
  12. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
  13. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
  14. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +22 -25
  15. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
  16. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  17. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +6 -7
  18. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
  19. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  20. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +11 -13
  21. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
  22. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  23. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +25 -29
  24. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
  25. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  26. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +10 -12
  27. package/autocomplete.js +4 -5
  28. package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  29. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
  30. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
  31. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +9 -12
  32. package/button/accent-button/accent-button.component.d.ts +1 -0
  33. package/button/accent-button/accent-button.component.d.ts.map +1 -1
  34. package/button/button/button.component.d.ts +1 -0
  35. package/button/button/button.component.d.ts.map +1 -1
  36. package/button/common/button-common.d.ts +4 -6
  37. package/button/common/button-common.d.ts.map +1 -1
  38. package/button/mini-button/mini-button.component.d.ts +1 -0
  39. package/button/mini-button/mini-button.component.d.ts.map +1 -1
  40. package/button/secondary-button/secondary-button.component.d.ts +1 -0
  41. package/button/secondary-button/secondary-button.component.d.ts.map +1 -1
  42. package/button/transparent-button/transparent-button.component.d.ts +1 -0
  43. package/button/transparent-button/transparent-button.component.d.ts.map +1 -1
  44. package/calendar/calendar.component.d.ts +18 -14
  45. package/calendar/calendar.component.d.ts.map +1 -1
  46. package/calendar/calendar.component.js +137 -123
  47. package/card/card/card.component.d.ts +0 -6
  48. package/card/card/card.component.d.ts.map +1 -1
  49. package/card/card/card.component.js +11 -19
  50. package/card/card-badge/card-badge.component.d.ts +4 -1
  51. package/card/card-badge/card-badge.component.d.ts.map +1 -1
  52. package/card/card-badge/card-badge.component.js +8 -11
  53. package/card/card-button/card-button.component.d.ts +1 -0
  54. package/card/card-button/card-button.component.d.ts.map +1 -1
  55. package/card/common/card-action-common.d.ts.map +1 -1
  56. package/card/common/card-action-common.js +21 -24
  57. package/checkbox/checkbox/checkbox.component.d.ts +4 -1
  58. package/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
  59. package/checkbox/checkbox/checkbox.component.js +48 -38
  60. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
  61. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
  62. package/checkbox/checkbox-panel/checkbox-panel.component.js +46 -36
  63. package/checkbox/common/checkbox-common.d.ts +4 -2
  64. package/checkbox/common/checkbox-common.d.ts.map +1 -1
  65. package/chip/chip/chip.component.d.ts +5 -6
  66. package/chip/chip/chip.component.d.ts.map +1 -1
  67. package/chip/chip/chip.component.js +37 -50
  68. package/chip/chip-group/chip-group.component.d.ts +22 -10
  69. package/chip/chip-group/chip-group.component.d.ts.map +1 -1
  70. package/chip/chip-group/chip-group.component.js +131 -116
  71. package/clock/clock.component.d.ts +1 -1
  72. package/clock/clock.component.d.ts.map +1 -1
  73. package/clock/clock.component.js +2 -2
  74. package/container/sticky-bar/sticky-bar.component.d.ts +5 -0
  75. package/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
  76. package/container/sticky-bar/sticky-bar.component.js +48 -38
  77. package/core/a11y/focus.d.ts +0 -32
  78. package/core/a11y/focus.d.ts.map +1 -1
  79. package/core/a11y/focus.js +3 -65
  80. package/core/a11y/input-modality-detector.d.ts +0 -5
  81. package/core/a11y/input-modality-detector.d.ts.map +1 -1
  82. package/core/a11y/input-modality-detector.js +16 -27
  83. package/core/a11y/interactivity-checker.d.ts +0 -11
  84. package/core/a11y/interactivity-checker.d.ts.map +1 -1
  85. package/core/a11y/interactivity-checker.js +0 -1
  86. package/core/a11y/live-announcer.d.ts +62 -0
  87. package/core/a11y/live-announcer.d.ts.map +1 -0
  88. package/core/a11y/live-announcer.js +47 -0
  89. package/core/a11y.d.ts +1 -0
  90. package/core/a11y.d.ts.map +1 -1
  91. package/core/a11y.js +19 -21
  92. package/core/base-elements/action-base-element.d.ts +3 -1
  93. package/core/base-elements/action-base-element.d.ts.map +1 -1
  94. package/core/base-elements/action-base-element.js +12 -11
  95. package/core/base-elements/button-base-element.d.ts +25 -18
  96. package/core/base-elements/button-base-element.d.ts.map +1 -1
  97. package/core/base-elements/button-base-element.js +97 -65
  98. package/core/base-elements/open-close-base-element.d.ts +3 -1
  99. package/core/base-elements/open-close-base-element.d.ts.map +1 -1
  100. package/core/base-elements/open-close-base-element.js +2 -1
  101. package/core/base-elements.js +9 -8
  102. package/core/controllers/inert-controller.d.ts.map +1 -1
  103. package/core/controllers/inert-controller.js +3 -3
  104. package/core/controllers.d.ts +0 -1
  105. package/core/controllers.d.ts.map +1 -1
  106. package/core/controllers.js +17 -19
  107. package/core/datetime/date-adapter.d.ts +2 -2
  108. package/core/datetime/date-adapter.d.ts.map +1 -1
  109. package/core/datetime/date-adapter.js +1 -1
  110. package/core/datetime/native-date-adapter.d.ts +2 -3
  111. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  112. package/core/datetime/native-date-adapter.js +71 -75
  113. package/core/decorators/id-reference.d.ts +11 -0
  114. package/core/decorators/id-reference.d.ts.map +1 -0
  115. package/core/decorators/id-reference.js +79 -0
  116. package/core/decorators/plain-date.d.ts +23 -0
  117. package/core/decorators/plain-date.d.ts.map +1 -0
  118. package/core/decorators/plain-date.js +29 -0
  119. package/core/decorators.d.ts +2 -2
  120. package/core/decorators.d.ts.map +1 -1
  121. package/core/decorators.js +17 -16
  122. package/core/dom.d.ts +0 -2
  123. package/core/dom.d.ts.map +1 -1
  124. package/core/dom.js +22 -26
  125. package/core/eventing/forward-event.d.ts +0 -6
  126. package/core/eventing/forward-event.d.ts.map +1 -1
  127. package/core/eventing/forward-event.js +4 -6
  128. package/core/eventing.js +12 -13
  129. package/core/i18n/i18n.d.ts +4 -1
  130. package/core/i18n/i18n.d.ts.map +1 -1
  131. package/core/i18n/i18n.js +106 -88
  132. package/core/i18n.js +42 -39
  133. package/core/interfaces/types.d.ts +0 -1
  134. package/core/interfaces/types.d.ts.map +1 -1
  135. package/core/mixins/animation-complete-mixin.d.ts +1 -1
  136. package/core/mixins/animation-complete-mixin.d.ts.map +1 -1
  137. package/core/mixins/disabled-mixin.d.ts +2 -2
  138. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  139. package/core/mixins/element-internals-mixin.d.ts +15 -0
  140. package/core/mixins/element-internals-mixin.d.ts.map +1 -0
  141. package/core/mixins/element-internals-mixin.js +41 -0
  142. package/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
  143. package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  144. package/core/mixins/form-associated-checkbox-mixin.js +30 -26
  145. package/core/mixins/form-associated-input-mixin.d.ts +15 -9
  146. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  147. package/core/mixins/form-associated-input-mixin.js +65 -49
  148. package/core/mixins/form-associated-mixin.d.ts +8 -7
  149. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  150. package/core/mixins/form-associated-mixin.js +49 -41
  151. package/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
  152. package/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  153. package/core/mixins/form-associated-radio-button-mixin.js +32 -23
  154. package/core/mixins/readonly-mixin.d.ts +10 -0
  155. package/core/mixins/readonly-mixin.d.ts.map +1 -0
  156. package/core/mixins/readonly-mixin.js +30 -0
  157. package/core/mixins/required-mixin.d.ts +2 -2
  158. package/core/mixins/required-mixin.d.ts.map +1 -1
  159. package/core/mixins.d.ts +2 -0
  160. package/core/mixins.d.ts.map +1 -1
  161. package/core/mixins.js +25 -21
  162. package/core/styles/core.scss +38 -14
  163. package/core/styles/mixins/font-face.scss +6 -18
  164. package/core/styles/mixins/link.scss +3 -7
  165. package/core/styles/mixins/lists.scss +0 -63
  166. package/core/styles/mixins/overlay.scss +7 -1
  167. package/core/styles/mixins/table.scss +0 -7
  168. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +2 -0
  169. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +7 -1
  170. package/core/styles/table.scss +0 -4
  171. package/core/testing.d.ts +0 -1
  172. package/core/testing.d.ts.map +1 -1
  173. package/core/testing.js +8 -10
  174. package/core.css +48 -18
  175. package/custom-elements.json +13214 -6131
  176. package/date-input/date-input.component.d.ts +12 -14
  177. package/date-input/date-input.component.d.ts.map +1 -1
  178. package/date-input/date-input.component.js +53 -57
  179. package/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
  180. package/datepicker/common/datepicker-association-controllers.js +7 -7
  181. package/datepicker/common/datepicker-button.d.ts +0 -12
  182. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  183. package/datepicker/common/datepicker-button.js +45 -59
  184. package/datepicker/datepicker/datepicker.component.d.ts +3 -20
  185. package/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  186. package/datepicker/datepicker/datepicker.component.js +85 -95
  187. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
  188. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  189. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +12 -12
  190. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
  191. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  192. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +13 -13
  193. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
  194. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  195. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +51 -65
  196. package/datepicker/datepicker.js +2 -4
  197. package/datepicker.js +10 -12
  198. package/development/action-group/action-group.component.d.ts.map +1 -1
  199. package/development/action-group/action-group.component.js +1 -1
  200. package/development/alert/alert/alert.component.d.ts +2 -7
  201. package/development/alert/alert/alert.component.d.ts.map +1 -1
  202. package/development/alert/alert/alert.component.js +8 -26
  203. package/development/autocomplete/autocomplete-base-element.d.ts +26 -17
  204. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  205. package/development/autocomplete/autocomplete-base-element.js +69 -39
  206. package/development/autocomplete/autocomplete.component.d.ts +3 -2
  207. package/development/autocomplete/autocomplete.component.d.ts.map +1 -1
  208. package/development/autocomplete/autocomplete.component.js +5 -9
  209. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
  210. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
  211. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +5 -9
  212. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
  213. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  214. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +2 -3
  215. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
  216. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  217. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +5 -7
  218. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
  219. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  220. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +20 -19
  221. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
  222. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  223. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +5 -7
  224. package/development/autocomplete.js +2 -3
  225. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +2 -2
  226. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
  227. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
  228. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -8
  229. package/development/button/accent-button/accent-button.component.d.ts +1 -0
  230. package/development/button/accent-button/accent-button.component.d.ts.map +1 -1
  231. package/development/button/accent-button/accent-button.component.js +1 -1
  232. package/development/button/button/button.component.d.ts +1 -0
  233. package/development/button/button/button.component.d.ts.map +1 -1
  234. package/development/button/button/button.component.js +1 -1
  235. package/development/button/common/button-common.d.ts +4 -6
  236. package/development/button/common/button-common.d.ts.map +1 -1
  237. package/development/button/common/button-common.js +1 -1
  238. package/development/button/mini-button/mini-button.component.d.ts +1 -0
  239. package/development/button/mini-button/mini-button.component.d.ts.map +1 -1
  240. package/development/button/mini-button/mini-button.component.js +1 -1
  241. package/development/button/secondary-button/secondary-button.component.d.ts +1 -0
  242. package/development/button/secondary-button/secondary-button.component.d.ts.map +1 -1
  243. package/development/button/secondary-button/secondary-button.component.js +1 -1
  244. package/development/button/transparent-button/transparent-button.component.d.ts +1 -0
  245. package/development/button/transparent-button/transparent-button.component.d.ts.map +1 -1
  246. package/development/button/transparent-button/transparent-button.component.js +1 -1
  247. package/development/calendar/calendar.component.d.ts +18 -14
  248. package/development/calendar/calendar.component.d.ts.map +1 -1
  249. package/development/calendar/calendar.component.js +57 -36
  250. package/development/card/card/card.component.d.ts +0 -6
  251. package/development/card/card/card.component.d.ts.map +1 -1
  252. package/development/card/card/card.component.js +5 -13
  253. package/development/card/card-badge/card-badge.component.d.ts +4 -1
  254. package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
  255. package/development/card/card-badge/card-badge.component.js +6 -8
  256. package/development/card/card-button/card-button.component.d.ts +1 -0
  257. package/development/card/card-button/card-button.component.d.ts.map +1 -1
  258. package/development/card/card-button/card-button.component.js +1 -1
  259. package/development/card/common/card-action-common.d.ts.map +1 -1
  260. package/development/card/common/card-action-common.js +6 -15
  261. package/development/checkbox/checkbox/checkbox.component.d.ts +4 -1
  262. package/development/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
  263. package/development/checkbox/checkbox/checkbox.component.js +19 -4
  264. package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
  265. package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
  266. package/development/checkbox/checkbox-panel/checkbox-panel.component.js +20 -4
  267. package/development/checkbox/common/checkbox-common.d.ts +4 -2
  268. package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
  269. package/development/checkbox/common/checkbox-common.js +1 -1
  270. package/development/chip/chip/chip.component.d.ts +5 -6
  271. package/development/chip/chip/chip.component.d.ts.map +1 -1
  272. package/development/chip/chip/chip.component.js +12 -31
  273. package/development/chip/chip-group/chip-group.component.d.ts +22 -10
  274. package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
  275. package/development/chip/chip-group/chip-group.component.js +52 -27
  276. package/development/clock/clock.component.d.ts +1 -1
  277. package/development/clock/clock.component.d.ts.map +1 -1
  278. package/development/clock/clock.component.js +3 -3
  279. package/development/container/sticky-bar/sticky-bar.component.d.ts +5 -0
  280. package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
  281. package/development/container/sticky-bar/sticky-bar.component.js +30 -9
  282. package/development/core/a11y/focus.d.ts +0 -32
  283. package/development/core/a11y/focus.d.ts.map +1 -1
  284. package/development/core/a11y/focus.js +2 -82
  285. package/development/core/a11y/input-modality-detector.d.ts +0 -5
  286. package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
  287. package/development/core/a11y/input-modality-detector.js +2 -18
  288. package/development/core/a11y/interactivity-checker.d.ts +0 -11
  289. package/development/core/a11y/interactivity-checker.d.ts.map +1 -1
  290. package/development/core/a11y/interactivity-checker.js +1 -2
  291. package/development/core/a11y/live-announcer.d.ts +62 -0
  292. package/development/core/a11y/live-announcer.d.ts.map +1 -0
  293. package/development/core/a11y/live-announcer.js +87 -0
  294. package/development/core/a11y.d.ts +1 -0
  295. package/development/core/a11y.d.ts.map +1 -1
  296. package/development/core/a11y.js +7 -9
  297. package/development/core/base-elements/action-base-element.d.ts +3 -1
  298. package/development/core/base-elements/action-base-element.d.ts.map +1 -1
  299. package/development/core/base-elements/action-base-element.js +3 -2
  300. package/development/core/base-elements/button-base-element.d.ts +25 -18
  301. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  302. package/development/core/base-elements/button-base-element.js +105 -67
  303. package/development/core/base-elements/open-close-base-element.d.ts +3 -1
  304. package/development/core/base-elements/open-close-base-element.d.ts.map +1 -1
  305. package/development/core/base-elements/open-close-base-element.js +3 -2
  306. package/development/core/base-elements.js +2 -1
  307. package/development/core/controllers/inert-controller.d.ts.map +1 -1
  308. package/development/core/controllers/inert-controller.js +2 -2
  309. package/development/core/controllers.d.ts +0 -1
  310. package/development/core/controllers.d.ts.map +1 -1
  311. package/development/core/controllers.js +1 -3
  312. package/development/core/datetime/date-adapter.d.ts +2 -2
  313. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  314. package/development/core/datetime/date-adapter.js +2 -2
  315. package/development/core/datetime/native-date-adapter.d.ts +2 -3
  316. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  317. package/development/core/datetime/native-date-adapter.js +2 -6
  318. package/development/core/decorators/id-reference.d.ts +11 -0
  319. package/development/core/decorators/id-reference.d.ts.map +1 -0
  320. package/development/core/decorators/id-reference.js +123 -0
  321. package/development/core/decorators/plain-date.d.ts +23 -0
  322. package/development/core/decorators/plain-date.d.ts.map +1 -0
  323. package/development/core/decorators/plain-date.js +37 -0
  324. package/development/core/decorators.d.ts +2 -2
  325. package/development/core/decorators.d.ts.map +1 -1
  326. package/development/core/decorators.js +5 -4
  327. package/development/core/dom.d.ts +0 -2
  328. package/development/core/dom.d.ts.map +1 -1
  329. package/development/core/dom.js +1 -5
  330. package/development/core/eventing/forward-event.d.ts +0 -6
  331. package/development/core/eventing/forward-event.d.ts.map +1 -1
  332. package/development/core/eventing/forward-event.js +2 -4
  333. package/development/core/eventing.js +1 -2
  334. package/development/core/i18n/i18n.d.ts +4 -1
  335. package/development/core/i18n/i18n.d.ts.map +1 -1
  336. package/development/core/i18n/i18n.js +43 -22
  337. package/development/core/i18n.js +4 -1
  338. package/development/core/interfaces/types.d.ts +0 -1
  339. package/development/core/interfaces/types.d.ts.map +1 -1
  340. package/development/core/mixins/animation-complete-mixin.d.ts +1 -1
  341. package/development/core/mixins/animation-complete-mixin.d.ts.map +1 -1
  342. package/development/core/mixins/animation-complete-mixin.js +1 -1
  343. package/development/core/mixins/disabled-mixin.d.ts +2 -2
  344. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  345. package/development/core/mixins/disabled-mixin.js +1 -1
  346. package/development/core/mixins/element-internals-mixin.d.ts +15 -0
  347. package/development/core/mixins/element-internals-mixin.d.ts.map +1 -0
  348. package/development/core/mixins/element-internals-mixin.js +59 -0
  349. package/development/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
  350. package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  351. package/development/core/mixins/form-associated-checkbox-mixin.js +8 -6
  352. package/development/core/mixins/form-associated-input-mixin.d.ts +15 -9
  353. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  354. package/development/core/mixins/form-associated-input-mixin.js +39 -20
  355. package/development/core/mixins/form-associated-mixin.d.ts +8 -7
  356. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  357. package/development/core/mixins/form-associated-mixin.js +31 -17
  358. package/development/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
  359. package/development/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  360. package/development/core/mixins/form-associated-radio-button-mixin.js +20 -8
  361. package/development/core/mixins/readonly-mixin.d.ts +10 -0
  362. package/development/core/mixins/readonly-mixin.d.ts.map +1 -0
  363. package/development/core/mixins/readonly-mixin.js +40 -0
  364. package/development/core/mixins/required-mixin.d.ts +2 -2
  365. package/development/core/mixins/required-mixin.d.ts.map +1 -1
  366. package/development/core/mixins/required-mixin.js +1 -1
  367. package/development/core/mixins.d.ts +2 -0
  368. package/development/core/mixins.d.ts.map +1 -1
  369. package/development/core/mixins.js +5 -1
  370. package/development/core/testing.d.ts +0 -1
  371. package/development/core/testing.d.ts.map +1 -1
  372. package/development/core/testing.js +1 -3
  373. package/development/date-input/date-input.component.d.ts +12 -14
  374. package/development/date-input/date-input.component.d.ts.map +1 -1
  375. package/development/date-input/date-input.component.js +17 -22
  376. package/development/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
  377. package/development/datepicker/common/datepicker-association-controllers.js +3 -3
  378. package/development/datepicker/common/datepicker-button.d.ts +0 -12
  379. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  380. package/development/datepicker/common/datepicker-button.js +1 -23
  381. package/development/datepicker/datepicker/datepicker.component.d.ts +3 -20
  382. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  383. package/development/datepicker/datepicker/datepicker.component.js +24 -33
  384. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
  385. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  386. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -6
  387. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
  388. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  389. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -6
  390. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
  391. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  392. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +1 -21
  393. package/development/datepicker/datepicker.js +2 -4
  394. package/development/datepicker.js +2 -4
  395. package/development/divider/divider.component.d.ts +2 -1
  396. package/development/divider/divider.component.d.ts.map +1 -1
  397. package/development/divider/divider.component.js +5 -8
  398. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -1
  399. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
  400. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +9 -8
  401. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
  402. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  403. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +6 -5
  404. package/development/file-selector/common/file-selector-common.d.ts +6 -5
  405. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  406. package/development/file-selector/common/file-selector-common.js +4 -4
  407. package/development/file-selector/file-selector/file-selector.component.d.ts +1 -0
  408. package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  409. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  410. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
  411. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  412. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  413. package/development/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
  414. package/development/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
  415. package/development/flip-card/flip-card-details/flip-card-details.component.js +6 -5
  416. package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
  417. package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
  418. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +6 -5
  419. package/development/footer/footer.component.js +1 -1
  420. package/development/form-field/form-field/form-field.component.d.ts +9 -10
  421. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  422. package/development/form-field/form-field/form-field.component.js +169 -180
  423. package/development/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
  424. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  425. package/development/form-field/form-field-clear/form-field-clear.component.js +3 -5
  426. package/development/header/common/header-action-common.d.ts +3 -3
  427. package/development/header/common/header-action-common.d.ts.map +1 -1
  428. package/development/header/common/header-action-common.js +1 -1
  429. package/development/header/header/header.component.d.ts +8 -4
  430. package/development/header/header/header.component.d.ts.map +1 -1
  431. package/development/header/header/header.component.js +17 -10
  432. package/development/header/header-button/header-button.component.d.ts +1 -0
  433. package/development/header/header-button/header-button.component.d.ts.map +1 -1
  434. package/development/header/header-button/header-button.component.js +1 -1
  435. package/development/image/image.component.d.ts +1 -1
  436. package/development/image/image.component.d.ts.map +1 -1
  437. package/development/image/image.component.js +7 -6
  438. package/development/link/block-link-button/block-link-button.component.d.ts +1 -0
  439. package/development/link/block-link-button/block-link-button.component.d.ts.map +1 -1
  440. package/development/link/block-link-button/block-link-button.component.js +1 -1
  441. package/development/link/common/block-link-common.d.ts +3 -4
  442. package/development/link/common/block-link-common.d.ts.map +1 -1
  443. package/development/link/common/block-link-common.js +4 -4
  444. package/development/link/common/inline-link-common.d.ts +3 -2
  445. package/development/link/common/inline-link-common.d.ts.map +1 -1
  446. package/development/link/common/inline-link-common.js +2 -2
  447. package/development/link/common/link-common.d.ts +4 -2
  448. package/development/link/common/link-common.d.ts.map +1 -1
  449. package/development/link/common/link-common.js +1 -1
  450. package/development/link/common.js +1 -1
  451. package/development/link/link-button/link-button.component.d.ts +1 -0
  452. package/development/link/link-button/link-button.component.d.ts.map +1 -1
  453. package/development/link/link-button/link-button.component.js +1 -1
  454. package/development/{link-common-CJEWffDZ.js → link-common-DPLJx5Uo.js} +2 -2
  455. package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
  456. package/development/link.js +1 -1
  457. package/development/loading-indicator/loading-indicator.component.d.ts +5 -1
  458. package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
  459. package/development/loading-indicator/loading-indicator.component.js +9 -8
  460. package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -1
  461. package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
  462. package/development/loading-indicator-circle/loading-indicator-circle.component.js +9 -8
  463. package/development/menu/common/menu-action-common.d.ts +4 -8
  464. package/development/menu/common/menu-action-common.d.ts.map +1 -1
  465. package/development/menu/common/menu-action-common.js +5 -63
  466. package/development/menu/menu/menu.component.d.ts +5 -4
  467. package/development/menu/menu/menu.component.d.ts.map +1 -1
  468. package/development/menu/menu/menu.component.js +17 -13
  469. package/development/menu/menu-button/menu-button.component.d.ts +1 -0
  470. package/development/menu/menu-button/menu-button.component.d.ts.map +1 -1
  471. package/development/menu/menu-button/menu-button.component.js +1 -1
  472. package/development/navigation/navigation/navigation.component.d.ts +6 -4
  473. package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
  474. package/development/navigation/navigation/navigation.component.js +18 -15
  475. package/development/navigation/navigation-button/navigation-button.component.d.ts +1 -0
  476. package/development/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
  477. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  478. package/development/navigation/navigation-section/navigation-section.component.d.ts +5 -4
  479. package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  480. package/development/navigation/navigation-section/navigation-section.component.js +19 -16
  481. package/development/notification/notification.component.d.ts +4 -7
  482. package/development/notification/notification.component.d.ts.map +1 -1
  483. package/development/notification/notification.component.js +12 -29
  484. package/development/option/optgroup/optgroup-base-element.d.ts +2 -1
  485. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  486. package/development/option/optgroup/optgroup-base-element.js +16 -37
  487. package/development/option/option/option-base-element.d.ts +6 -12
  488. package/development/option/option/option-base-element.d.ts.map +1 -1
  489. package/development/option/option/option-base-element.js +25 -21
  490. package/development/option/option/option.component.d.ts +5 -2
  491. package/development/option/option/option.component.d.ts.map +1 -1
  492. package/development/option/option/option.component.js +24 -21
  493. package/development/overlay/overlay-base-element.d.ts +1 -8
  494. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  495. package/development/overlay/overlay-base-element.js +10 -30
  496. package/development/paginator/common/paginator-common.d.ts +3 -7
  497. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  498. package/development/paginator/common/paginator-common.js +16 -29
  499. package/development/paginator/paginator/paginator.component.d.ts +0 -5
  500. package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
  501. package/development/paginator/paginator/paginator.component.js +2 -14
  502. package/development/popover/popover/popover.component.d.ts +3 -3
  503. package/development/popover/popover/popover.component.d.ts.map +1 -1
  504. package/development/popover/popover/popover.component.js +18 -13
  505. package/development/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
  506. package/development/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
  507. package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
  508. package/development/radio-button/common/radio-button-common.d.ts +4 -2
  509. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  510. package/development/radio-button/common/radio-button-common.js +1 -1
  511. package/development/radio-button/radio-button/radio-button.component.d.ts +6 -2
  512. package/development/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
  513. package/development/radio-button/radio-button/radio-button.component.js +21 -4
  514. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
  515. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  516. package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -11
  517. package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
  518. package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
  519. package/development/radio-button/radio-button-panel/radio-button-panel.component.js +22 -4
  520. package/development/sbb-tokens-CVLcOi-S.js +1 -1
  521. package/development/select/select.component.d.ts +18 -12
  522. package/development/select/select.component.d.ts.map +1 -1
  523. package/development/select/select.component.js +122 -69
  524. package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
  525. package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
  526. package/development/sidebar/icon-sidebar/icon-sidebar.component.js +5 -6
  527. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
  528. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  529. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  530. package/development/sidebar/sidebar/sidebar.component.js +2 -2
  531. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
  532. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  533. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +6 -3
  534. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
  535. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  536. package/development/sidebar/sidebar-title/sidebar-title.component.js +6 -3
  537. package/development/slider/slider.component.d.ts +6 -15
  538. package/development/slider/slider.component.d.ts.map +1 -1
  539. package/development/slider/slider.component.js +37 -85
  540. package/development/stepper/step/step.component.d.ts +4 -1
  541. package/development/stepper/step/step.component.d.ts.map +1 -1
  542. package/development/stepper/step/step.component.js +6 -8
  543. package/development/stepper/step-label/step-label.component.d.ts +2 -0
  544. package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
  545. package/development/stepper/step-label/step-label.component.js +5 -8
  546. package/development/stepper/stepper/stepper.component.d.ts +1 -1
  547. package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
  548. package/development/stepper/stepper/stepper.component.js +9 -8
  549. package/development/table/table-wrapper/table-wrapper.component.d.ts +2 -1
  550. package/development/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
  551. package/development/table/table-wrapper/table-wrapper.component.js +4 -6
  552. package/development/tabs/tab/tab.component.d.ts +4 -1
  553. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  554. package/development/tabs/tab/tab.component.js +4 -3
  555. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  556. package/development/tabs/tab-group/tab-group.component.js +2 -4
  557. package/development/tabs/tab-label/tab-label.component.d.ts +2 -1
  558. package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  559. package/development/tabs/tab-label/tab-label.component.js +8 -5
  560. package/development/tag/tag/tag.component.d.ts +7 -3
  561. package/development/tag/tag/tag.component.d.ts.map +1 -1
  562. package/development/tag/tag/tag.component.js +26 -7
  563. package/development/tag/tag-group/tag-group.component.d.ts +7 -5
  564. package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
  565. package/development/tag/tag-group/tag-group.component.js +29 -21
  566. package/development/teaser-product/common/teaser-product-common.d.ts +4 -2
  567. package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  568. package/development/teaser-product/common/teaser-product-common.js +1 -1
  569. package/development/time-input/time-input.component.d.ts +29 -42
  570. package/development/time-input/time-input.component.d.ts.map +1 -1
  571. package/development/time-input/time-input.component.js +158 -205
  572. package/development/title/title-base.d.ts +4 -1
  573. package/development/title/title-base.d.ts.map +1 -1
  574. package/development/title/title-base.js +9 -17
  575. package/development/toast/toast.component.d.ts +3 -4
  576. package/development/toast/toast.component.d.ts.map +1 -1
  577. package/development/toast/toast.component.js +53 -73
  578. package/development/toggle/toggle/toggle.component.d.ts +13 -9
  579. package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
  580. package/development/toggle/toggle/toggle.component.js +29 -29
  581. package/development/toggle/toggle-option/toggle-option.component.d.ts +5 -3
  582. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  583. package/development/toggle/toggle-option/toggle-option.component.js +6 -8
  584. package/development/toggle-check/toggle-check.component.d.ts +5 -2
  585. package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
  586. package/development/toggle-check/toggle-check.component.js +19 -4
  587. package/divider/divider.component.d.ts +2 -1
  588. package/divider/divider.component.d.ts.map +1 -1
  589. package/divider/divider.component.js +26 -29
  590. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -1
  591. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
  592. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +14 -14
  593. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
  594. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  595. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +20 -20
  596. package/file-selector/common/file-selector-common.d.ts +6 -5
  597. package/file-selector/common/file-selector-common.d.ts.map +1 -1
  598. package/file-selector/common/file-selector-common.js +35 -35
  599. package/file-selector/file-selector/file-selector.component.d.ts +1 -0
  600. package/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  601. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
  602. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  603. package/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
  604. package/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
  605. package/flip-card/flip-card-details/flip-card-details.component.js +16 -16
  606. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
  607. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
  608. package/flip-card/flip-card-summary/flip-card-summary.component.js +13 -13
  609. package/font-characters-extension.css +3 -3
  610. package/footer/footer.component.js +1 -1
  611. package/form-field/form-field/form-field.component.d.ts +9 -10
  612. package/form-field/form-field/form-field.component.d.ts.map +1 -1
  613. package/form-field/form-field/form-field.component.js +194 -209
  614. package/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
  615. package/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  616. package/form-field/form-field-clear/form-field-clear.component.js +9 -12
  617. package/header/common/header-action-common.d.ts +3 -3
  618. package/header/common/header-action-common.d.ts.map +1 -1
  619. package/header/header/header.component.d.ts +8 -4
  620. package/header/header/header.component.d.ts.map +1 -1
  621. package/header/header/header.component.js +51 -46
  622. package/header/header-button/header-button.component.d.ts +1 -0
  623. package/header/header-button/header-button.component.d.ts.map +1 -1
  624. package/image/image.component.d.ts +1 -1
  625. package/image/image.component.d.ts.map +1 -1
  626. package/image/image.component.js +4 -2
  627. package/link/block-link-button/block-link-button.component.d.ts +1 -0
  628. package/link/block-link-button/block-link-button.component.d.ts.map +1 -1
  629. package/link/common/block-link-common.d.ts +3 -4
  630. package/link/common/block-link-common.d.ts.map +1 -1
  631. package/link/common/block-link-common.js +6 -6
  632. package/link/common/inline-link-common.d.ts +3 -2
  633. package/link/common/inline-link-common.d.ts.map +1 -1
  634. package/link/common/inline-link-common.js +1 -1
  635. package/link/common/link-common.d.ts +4 -2
  636. package/link/common/link-common.d.ts.map +1 -1
  637. package/link/common/link-common.js +1 -1
  638. package/link/common.js +1 -1
  639. package/link/link-button/link-button.component.d.ts +1 -0
  640. package/link/link-button/link-button.component.d.ts.map +1 -1
  641. package/{link-common-DZrQ-32d.js → link-common-BBKGg9HN.js} +1 -1
  642. package/link-list/link-list-anchor/link-list-anchor.component.js +4 -4
  643. package/link.js +1 -1
  644. package/loading-indicator/loading-indicator.component.d.ts +5 -1
  645. package/loading-indicator/loading-indicator.component.d.ts.map +1 -1
  646. package/loading-indicator/loading-indicator.component.js +9 -9
  647. package/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -1
  648. package/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
  649. package/loading-indicator-circle/loading-indicator-circle.component.js +14 -14
  650. package/menu/common/menu-action-common.d.ts +4 -8
  651. package/menu/common/menu-action-common.d.ts.map +1 -1
  652. package/menu/common/menu-action-common.js +16 -41
  653. package/menu/menu/menu.component.d.ts +5 -4
  654. package/menu/menu/menu.component.d.ts.map +1 -1
  655. package/menu/menu/menu.component.js +35 -34
  656. package/menu/menu-button/menu-button.component.d.ts +1 -0
  657. package/menu/menu-button/menu-button.component.d.ts.map +1 -1
  658. package/navigation/navigation/navigation.component.d.ts +6 -4
  659. package/navigation/navigation/navigation.component.d.ts.map +1 -1
  660. package/navigation/navigation/navigation.component.js +43 -43
  661. package/navigation/navigation-button/navigation-button.component.d.ts +1 -0
  662. package/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
  663. package/navigation/navigation-section/navigation-section.component.d.ts +5 -4
  664. package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  665. package/navigation/navigation-section/navigation-section.component.js +47 -47
  666. package/notification/notification.component.d.ts +4 -7
  667. package/notification/notification.component.d.ts.map +1 -1
  668. package/notification/notification.component.js +63 -73
  669. package/option/optgroup/optgroup-base-element.d.ts +2 -1
  670. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  671. package/option/optgroup/optgroup-base-element.js +43 -43
  672. package/option/option/option-base-element.d.ts +6 -12
  673. package/option/option/option-base-element.d.ts.map +1 -1
  674. package/option/option/option-base-element.js +57 -64
  675. package/option/option/option.component.d.ts +5 -2
  676. package/option/option/option.component.d.ts.map +1 -1
  677. package/option/option/option.component.js +18 -21
  678. package/overlay/overlay-base-element.d.ts +1 -8
  679. package/overlay/overlay-base-element.d.ts.map +1 -1
  680. package/overlay/overlay-base-element.js +44 -55
  681. package/package.json +1 -1
  682. package/paginator/common/paginator-common.d.ts +3 -7
  683. package/paginator/common/paginator-common.d.ts.map +1 -1
  684. package/paginator/common/paginator-common.js +49 -58
  685. package/paginator/paginator/paginator.component.d.ts +0 -5
  686. package/paginator/paginator/paginator.component.d.ts.map +1 -1
  687. package/paginator/paginator/paginator.component.js +40 -48
  688. package/popover/popover/popover.component.d.ts +3 -3
  689. package/popover/popover/popover.component.d.ts.map +1 -1
  690. package/popover/popover/popover.component.js +50 -47
  691. package/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
  692. package/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
  693. package/radio-button/common/radio-button-common.d.ts +4 -2
  694. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  695. package/radio-button/radio-button/radio-button.component.d.ts +6 -2
  696. package/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
  697. package/radio-button/radio-button/radio-button.component.js +43 -31
  698. package/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
  699. package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  700. package/radio-button/radio-button-group/radio-button-group.component.js +24 -26
  701. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
  702. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
  703. package/radio-button/radio-button-panel/radio-button-panel.component.js +46 -34
  704. package/select/select.component.d.ts +18 -12
  705. package/select/select.component.d.ts.map +1 -1
  706. package/select/select.component.js +140 -113
  707. package/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
  708. package/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
  709. package/sidebar/icon-sidebar/icon-sidebar.component.js +19 -20
  710. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
  711. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  712. package/sidebar/sidebar/sidebar.component.js +1 -1
  713. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
  714. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  715. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +11 -9
  716. package/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
  717. package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  718. package/sidebar/sidebar-title/sidebar-title.component.js +17 -15
  719. package/slider/slider.component.d.ts +6 -15
  720. package/slider/slider.component.d.ts.map +1 -1
  721. package/slider/slider.component.js +71 -98
  722. package/standard-theme.css +48 -18
  723. package/stepper/step/step.component.d.ts +4 -1
  724. package/stepper/step/step.component.d.ts.map +1 -1
  725. package/stepper/step/step.component.js +5 -8
  726. package/stepper/step-label/step-label.component.d.ts +2 -0
  727. package/stepper/step-label/step-label.component.d.ts.map +1 -1
  728. package/stepper/step-label/step-label.component.js +12 -17
  729. package/stepper/stepper/stepper.component.d.ts +1 -1
  730. package/stepper/stepper/stepper.component.d.ts.map +1 -1
  731. package/stepper/stepper/stepper.component.js +8 -6
  732. package/table/table-wrapper/table-wrapper.component.d.ts +2 -1
  733. package/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
  734. package/table/table-wrapper/table-wrapper.component.js +19 -21
  735. package/tabs/tab/tab.component.d.ts +4 -1
  736. package/tabs/tab/tab.component.d.ts.map +1 -1
  737. package/tabs/tab/tab.component.js +10 -9
  738. package/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  739. package/tabs/tab-group/tab-group.component.js +8 -8
  740. package/tabs/tab-label/tab-label.component.d.ts +2 -1
  741. package/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  742. package/tabs/tab-label/tab-label.component.js +18 -18
  743. package/tag/tag/tag.component.d.ts +7 -3
  744. package/tag/tag/tag.component.d.ts.map +1 -1
  745. package/tag/tag/tag.component.js +75 -62
  746. package/tag/tag-group/tag-group.component.d.ts +7 -5
  747. package/tag/tag-group/tag-group.component.d.ts.map +1 -1
  748. package/tag/tag-group/tag-group.component.js +69 -64
  749. package/teaser-product/common/teaser-product-common.d.ts +4 -2
  750. package/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  751. package/time-input/time-input.component.d.ts +29 -42
  752. package/time-input/time-input.component.d.ts.map +1 -1
  753. package/time-input/time-input.component.js +100 -143
  754. package/title/title-base.d.ts +4 -1
  755. package/title/title-base.d.ts.map +1 -1
  756. package/title/title-base.js +33 -34
  757. package/toast/toast.component.d.ts +3 -4
  758. package/toast/toast.component.d.ts.map +1 -1
  759. package/toast/toast.component.js +64 -70
  760. package/toggle/toggle/toggle.component.d.ts +13 -9
  761. package/toggle/toggle/toggle.component.d.ts.map +1 -1
  762. package/toggle/toggle/toggle.component.js +48 -49
  763. package/toggle/toggle-option/toggle-option.component.d.ts +5 -3
  764. package/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  765. package/toggle/toggle-option/toggle-option.component.js +37 -39
  766. package/toggle-check/toggle-check.component.d.ts +5 -2
  767. package/toggle-check/toggle-check.component.d.ts.map +1 -1
  768. package/toggle-check/toggle-check.component.js +53 -43
  769. package/core/controllers/connected-abort-controller.d.ts +0 -14
  770. package/core/controllers/connected-abort-controller.d.ts.map +0 -1
  771. package/core/controllers/connected-abort-controller.js +0 -19
  772. package/core/decorators/date-converter.d.ts +0 -8
  773. package/core/decorators/date-converter.d.ts.map +0 -1
  774. package/core/decorators/date-converter.js +0 -17
  775. package/core/decorators/date-only-type.d.ts +0 -8
  776. package/core/decorators/date-only-type.d.ts.map +0 -1
  777. package/core/decorators/date-only-type.js +0 -10
  778. package/core/dom/find-referenced-element.d.ts +0 -8
  779. package/core/dom/find-referenced-element.d.ts.map +0 -1
  780. package/core/dom/find-referenced-element.js +0 -7
  781. package/core/dom/input-element.d.ts +0 -12
  782. package/core/dom/input-element.d.ts.map +0 -1
  783. package/core/dom/input-element.js +0 -12
  784. package/core/testing/scroll.d.ts +0 -7
  785. package/core/testing/scroll.d.ts.map +0 -1
  786. package/core/testing/scroll.js +0 -6
  787. package/development/core/controllers/connected-abort-controller.d.ts +0 -14
  788. package/development/core/controllers/connected-abort-controller.d.ts.map +0 -1
  789. package/development/core/controllers/connected-abort-controller.js +0 -25
  790. package/development/core/decorators/date-converter.d.ts +0 -8
  791. package/development/core/decorators/date-converter.d.ts.map +0 -1
  792. package/development/core/decorators/date-converter.js +0 -18
  793. package/development/core/decorators/date-only-type.d.ts +0 -8
  794. package/development/core/decorators/date-only-type.d.ts.map +0 -1
  795. package/development/core/decorators/date-only-type.js +0 -11
  796. package/development/core/dom/find-referenced-element.d.ts +0 -8
  797. package/development/core/dom/find-referenced-element.d.ts.map +0 -1
  798. package/development/core/dom/find-referenced-element.js +0 -15
  799. package/development/core/dom/input-element.d.ts +0 -12
  800. package/development/core/dom/input-element.d.ts.map +0 -1
  801. package/development/core/dom/input-element.js +0 -13
  802. package/development/core/testing/scroll.d.ts +0 -7
  803. package/development/core/testing/scroll.d.ts.map +0 -1
  804. package/development/core/testing/scroll.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"native-date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/native-date-adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAoC,MAAM,mBAAmB,CAAC;AAUlF,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,IAAI,CAAC;IACtD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAExB,gBAAgB,GAAE,MAAW;IAKhD,uCAAuC;IAChC,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIlC,wCAAwC;IACjC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAInC,sCAAsC;IAC/B,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIlC,kDAAkD;IAC3C,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIvC,yCAAyC;IAClC,0BAA0B,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM;IAS9D;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAKlE,iGAAiG;IAC1F,YAAY,IAAI,MAAM,EAAE;IAK/B;;;;OAIG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAM/D,iBAAiB,IAAI,MAAM;IAIlC,6EAA6E;IACtE,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAI5C,4BAA4B;IACrB,KAAK,IAAI,IAAI;IAIpB,+FAA+F;IACxF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAmBlE,gDAAgD;IACzC,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO;IAIxC,uDAAuD;IAChD,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,IAAI;IAI3D,mDAAmD;IAC5C,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAI9B;;;;OAIG;IACI,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIxD;;;;OAIG;IACI,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ1D,yFAAyF;IAClF,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKtD,6EAA6E;IAC7D,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI;IAkB9E,+DAA+D;IACxD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,GAAE,IAAmB,GAAG,IAAI,GAAG,IAAI;IAuCrE,OAAO,IAAI,IAAI;IAI/B;;;;OAIG;IACH,OAAO,CAAC,MAAM;IAId,gEAAgE;IAChE,OAAO,CAAC,uBAAuB;CAShC;AAED,eAAO,MAAM,kBAAkB,mBAA0B,CAAC"}
1
+ {"version":3,"file":"native-date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/native-date-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAoC,MAAM,mBAAmB,CAAC;AAUlF,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,IAAI,CAAC;IACtD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAExB,gBAAgB,GAAE,MAAW;IAKhD,uCAAuC;IAChC,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIlC,wCAAwC;IACjC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAInC,sCAAsC;IAC/B,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIlC,kDAAkD;IAC3C,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAIvC,yCAAyC;IAClC,0BAA0B,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM;IAS9D;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAKlE,iGAAiG;IAC1F,YAAY,IAAI,MAAM,EAAE;IAK/B;;;;OAIG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAM/D,iBAAiB,IAAI,MAAM;IAIlC,6EAA6E;IACtE,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAI5C,4BAA4B;IACrB,KAAK,IAAI,IAAI;IAIpB,+FAA+F;IACxF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAmBlE,gDAAgD;IACzC,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO;IAIxC,uDAAuD;IAChD,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,IAAI;IAI3D,mDAAmD;IAC5C,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAI9B;;;;OAIG;IACI,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIxD;;;;OAIG;IACI,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ1D,yFAAyF;IAClF,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKtD,8DAA8D;IAC9C,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI;IAahF,+DAA+D;IACxD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,GAAE,IAAmB,GAAG,IAAI,GAAG,IAAI;IAuCrE,OAAO,IAAI,IAAI;IAI/B;;;;OAIG;IACH,OAAO,CAAC,MAAM;IAId,gEAAgE;IAChE,OAAO,CAAC,uBAAuB;CAShC;AAED,eAAO,MAAM,kBAAkB,mBAA0B,CAAC"}
@@ -116,18 +116,14 @@ class NativeDateAdapter extends DateAdapter {
116
116
  const targetDay = date.getDate() + days;
117
117
  return new Date(date.getFullYear(), date.getMonth(), targetDay, 0, 0, 0, 0);
118
118
  }
119
- /** Creates a Date from a valid input (Date, string or number in seconds). */
119
+ /** Creates a Date from a valid input (Date or ISO string). */
120
120
  deserialize(date) {
121
121
  if (typeof date === "string") {
122
122
  if (!date) {
123
123
  return null;
124
- } else if (!Number.isNaN(+date)) {
125
- return this.getValidDateOrNull(new Date(+date * 1e3));
126
124
  } else if (ISO_8601_REGEX.test(date)) {
127
125
  return this.getValidDateOrNull(new Date(date.includes("T") ? date : date + "T00:00:00"));
128
126
  }
129
- } else if (typeof date === "number") {
130
- return this.getValidDateOrNull(new Date(date * 1e3));
131
127
  }
132
128
  return super.deserialize(date);
133
129
  }
@@ -182,4 +178,4 @@ export {
182
178
  NativeDateAdapter,
183
179
  defaultDateAdapter
184
180
  };
185
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUtYWRhcHRlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvZGF0ZXRpbWUvbmF0aXZlLWRhdGUtYWRhcHRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkRhdGVMaWtlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy5qcyc7XG5cbmltcG9ydCB7IERhdGVBZGFwdGVyLCBGT1JNQVRfREFURSwgSVNPODYwMV9GT1JNQVRfREFURSB9IGZyb20gJy4vZGF0ZS1hZGFwdGVyLmpzJztcblxuLyoqXG4gKiBNYXRjaGVzIHN0cmluZ3MgdGhhdCBoYXZlIHRoZSBmb3JtIG9mIGEgdmFsaWQgUkZDIDMzMzkgc3RyaW5nXG4gKiAoaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkpLiBOb3RlIHRoYXQgdGhlIHN0cmluZyBtYXkgbm90IGFjdHVhbGx5IGJlIGEgdmFsaWQgZGF0ZVxuICogYmVjYXVzZSB0aGUgcmVnZXggd2lsbCBtYXRjaCBzdHJpbmdzIGFuIHdpdGhvdXQgb2YgYm91bmRzIG1vbnRoLCBkYXRlLCBldGMuXG4gKi9cbmNvbnN0IElTT184NjAxX1JFR0VYID1cbiAgL15cXGR7NH0tXFxkezJ9LVxcZHsyfSg/OlRcXGR7Mn06XFxkezJ9OlxcZHsyfSg/OlxcLlxcZCspPyg/Olp8KD86KD86XFwrfC0pXFxkezJ9OlxcZHsyfSkpPyk/JC87XG5cbmV4cG9ydCBjbGFzcyBOYXRpdmVEYXRlQWRhcHRlciBleHRlbmRzIERhdGVBZGFwdGVyPERhdGU+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfY3V0b2ZmWWVhck9mZnNldDogbnVtYmVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihjdXRvZmZZZWFyT2Zmc2V0OiBudW1iZXIgPSAxNSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fY3V0b2ZmWWVhck9mZnNldCA9IGN1dG9mZlllYXJPZmZzZXQ7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgeWVhciBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldFllYXIoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBtb250aCBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldE1vbnRoKGRhdGU6IERhdGUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLmdldE1vbnRoKCkgKyAxO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGRheSBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldERhdGUoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGRhdGUuZ2V0RGF0ZSgpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldERheU9mV2VlayhkYXRlOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5nZXREYXkoKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBkYXRlIGluIHRoZSBsb2NhbCBmb3JtYXQuICovXG4gIHB1YmxpYyBnZXRBY2Nlc3NpYmlsaXR5Rm9ybWF0RGF0ZShkYXRlOiBEYXRlIHwgc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBvcHRpb25zOiBJbnRsLkRhdGVUaW1lRm9ybWF0T3B0aW9ucyA9IHtcbiAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgIG1vbnRoOiAnbG9uZycsXG4gICAgICBkYXk6ICdudW1lcmljJyxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgb3B0aW9ucykuZm9ybWF0KG5ldyBEYXRlKGRhdGUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGFycmF5IG9mIHN0cmluZ3Mgd2l0aCBsZW5ndGggPSAxMiwgZmlsbGVkIHdpdGggdGhlIG5hbWUgb2YgdGhlIG1vbnRocyBzdGFydGluZyBmcm9tIEphbnVhcnksIGluIHRoZSBkb2N1bWVudCBsYW5ndWFnZS5cbiAgICogQHBhcmFtIHN0eWxlIFNlZSBgbW9udGhgIGluIGBEYXRlVGltZUZvcm1hdE9wdGlvbnNgOiBgbG9uZ2AgZm9yIGZ1bGwgbmFtZSwgYHNob3J0YCBmb3Igc2hvcnQgbmFtZSwgYG5hcnJvd2AgZm9yIHNpbmdsZSBsZXR0ZXIsXG4gICAqIEUuZy4sIHdpdGggSmFudWFyeSBpbiBlbi1nYjogYGxvbmdgIHJldHVybnMgXCJKYW51YXJ5XCIsIGBzaG9ydGAgcmV0dXJucyBcIkphblwiLCBgbmFycm93YCByZXR1cm5zIFwiSlwiLlxuICAgKi9cbiAgcHVibGljIGdldE1vbnRoTmFtZXMoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93Jyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgeyBtb250aDogc3R5bGUgfSk7XG4gICAgcmV0dXJuIHRoaXMuX3JhbmdlKDEyLCAoaSkgPT4gZm9ybWF0dGVyLmZvcm1hdChuZXcgRGF0ZSgyMDE3LCBpLCAxKSkpO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBzdHJpbmcgYXJyYXkgd2l0aCBsZW5ndGggPSAzMSwgZmlsbGVkIHdpdGggdGhlIGRheXMgaW4gYSBtb250aCwgc3RhcnRpbmcgZnJvbSAxLiAqL1xuICBwdWJsaWMgZ2V0RGF0ZU5hbWVzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgeyBkYXk6ICdudW1lcmljJyB9KTtcbiAgICByZXR1cm4gdGhpcy5fcmFuZ2UoMzEsIChpKSA9PiBmb3JtYXR0ZXIuZm9ybWF0KG5ldyBEYXRlKDIwMTcsIDAsIGkgKyAxKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzdHJpbmcgYXJyYXkgd2l0aCBsZW5ndGggPSA3LCBmaWxsZWQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgZGF5cyBpbiBhIHdlZWsgc3RhcnRpbmcgZnJvbSBTdW5kYXksIGluIHRoZSBkb2N1bWVudCBsYW5ndWFnZS5cbiAgICogQHBhcmFtIHN0eWxlIFNlZSBgd2Vla2RheWAgaW4gYERhdGVUaW1lRm9ybWF0T3B0aW9uc2AgLSAnbG9uZycgZm9yIGZ1bGwgbmFtZSwgJ3Nob3J0JyBmb3Igc2hvcnQgbmFtZSwgJ25hcnJvdycgZm9yIHNpbmdsZSBsZXR0ZXI7XG4gICAqIEUuZy4sIHdpdGggTW9uZGF5IGluIGVuLWdiOiBgbG9uZ2AgcmV0dXJucyBcIk1vbmRheVwiLCBgc2hvcnRgIHJldHVybnMgXCJNb25cIiwgYG5hcnJvd2AgcmV0dXJucyBcIk1cIi5cbiAgICovXG4gIHB1YmxpYyBnZXREYXlPZldlZWtOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFNiYkxhbmd1YWdlQ29udHJvbGxlci5jdXJyZW50LCB7IHdlZWtkYXk6IHN0eWxlIH0pO1xuICAgIHJldHVybiB0aGlzLl9yYW5nZSg3LCAoaSkgPT4gZm9ybWF0dGVyLmZvcm1hdChuZXcgRGF0ZSgyMDE3LCAwLCBpICsgMSkpKTtcbiAgfVxuXG4gIC8qIERlZmluZXMgd2hpY2ggaXMgdGhlIGZpcnN0IGRheSBvZiB0aGUgd2VlayAoMDogc3VuZGF5OyAxOiBtb25kYXk7IGV0Yy4pLiAqL1xuICBwdWJsaWMgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIC8qKiBDYWxjdWxhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBpbiBhIG1vbnRoIGdpdmVuIHRoZSB5ZWFyIGFuZCB0aGUgbW9udGguICovXG4gIHB1YmxpYyBnZXROdW1EYXlzSW5Nb250aChkYXRlOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXREYXRlKHRoaXMuX2NyZWF0ZURhdGVXaXRoT3ZlcmZsb3codGhpcy5nZXRZZWFyKGRhdGUpLCB0aGlzLmdldE1vbnRoKGRhdGUpLCAwKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyB0b2RheSdzIGRhdGUuICovXG4gIHB1YmxpYyB0b2RheSgpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUobmV3IERhdGUoKS5zZXRIb3VycygwLCAwLCAwLCAwKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhIG5ldyBkYXRlLCBnaXZlbiBkYXksIG1vbnRoIGFuZCB5ZWFyOyB0aGUgbWV0aG9kIGRvZXNuJ3QgYWxsb3cgZGF0ZSdzIG92ZXJmbG93LiAqL1xuICBwdWJsaWMgY3JlYXRlRGF0ZSh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRhdGU6IG51bWJlcik6IERhdGUge1xuICAgIC8vIENoZWNrIGZvciBpbnZhbGlkIG1vbnRoIGFuZCBkYXRlIChleGNlcHQgdXBwZXIgYm91bmQgb24gZGF0ZSB3aGljaCB3ZSBoYXZlIHRvIGNoZWNrIGFmdGVyIGNyZWF0aW5nIHRoZSBEYXRlKS5cbiAgICBpZiAobW9udGggPCAxIHx8IG1vbnRoID4gMTIpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkIG1vbnRoIGluZGV4IFwiJHttb250aH1cIi4gTW9udGggaW5kZXggaGFzIHRvIGJlIGJldHdlZW4gMSBhbmQgMTIuYCk7XG4gICAgfVxuXG4gICAgaWYgKGRhdGUgPCAxKSB7XG4gICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCBkYXRlIFwiJHtkYXRlfVwiLiBEYXRlIGhhcyB0byBiZSBncmVhdGVyIHRoYW4gMC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9jcmVhdGVEYXRlV2l0aE92ZXJmbG93KHllYXIsIG1vbnRoIC0gMSwgZGF0ZSk7XG4gICAgLy8gQ2hlY2sgdGhhdCB0aGUgZGF0ZSB3YXNuJ3QgYWJvdmUgdGhlIHVwcGVyIGJvdW5kIGZvciB0aGUgbW9udGgsIGNhdXNpbmcgdGhlIG1vbnRoIHRvIG92ZXJmbG93XG4gICAgaWYgKHJlc3VsdC5nZXRNb250aCgpICsgMSAhPT0gbW9udGgpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkIGRhdGUgXCIke2RhdGV9XCIgZm9yIG1vbnRoIHdpdGggaW5kZXggXCIke21vbnRofVwiLmApO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGBvYmpgIGlzIGEgRGF0ZS4gKi9cbiAgcHVibGljIGlzRGF0ZUluc3RhbmNlKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIERhdGU7XG4gIH1cblxuICAvKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGBkYXRlYCBpcyBhIHZhbGlkIERhdGUuICovXG4gIHB1YmxpYyBpc1ZhbGlkKGRhdGU6IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkKTogZGF0ZSBpcyBEYXRlIHtcbiAgICByZXR1cm4gISFkYXRlICYmICFpc05hTihkYXRlLnZhbHVlT2YoKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhIG5ldyBkYXRlIGJ5IGNsb25pbmcgdGhlIGdpdmVuIG9uZS4gKi9cbiAgcHVibGljIGNsb25lKGRhdGU6IERhdGUpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZS52YWx1ZU9mKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgeWVhcnNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBzdGFydGluZyBkYXRlLlxuICAgKiBAcGFyYW0geWVhcnMgVGhlIG51bWJlciBvZiB5ZWFycyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWRkQ2FsZW5kYXJZZWFycyhkYXRlOiBEYXRlLCB5ZWFyczogbnVtYmVyKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkQ2FsZW5kYXJNb250aHMoZGF0ZSwgeWVhcnMgKiAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGFkZGluZyB0aGUgbnVtYmVyIG9mIHByb3ZpZGVkIGBtb250aHNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIElmIHRoZSBjYWxjdWxhdGVkIG1vbnRoIGhhcyBmZXdlciBkYXlzIHRoYW4gdGhlIG9yaWdpbmFsIG9uZSwgdGhlIGRhdGUgaXMgc2V0IHRvIHRoZSBsYXN0IGRheSBvZiB0aGUgbW9udGguXG4gICAqIEUuZy4sIHdpdGggYGRhdGVgID0gbmV3IERhdGUoMjAyMiwgMCwgMzEpIGFuZCBgbW9udGhzYCA9IDEsIGl0IHJldHVybnMgbmV3IERhdGUoMjAyMiwgMSwgMjgpLlxuICAgKi9cbiAgcHVibGljIGFkZENhbGVuZGFyTW9udGhzKGRhdGU6IERhdGUsIG1vbnRoczogbnVtYmVyKTogRGF0ZSB7XG4gICAgY29uc3QgdGFyZ2V0TW9udGggPSBkYXRlLmdldE1vbnRoKCkgKyBtb250aHM7XG4gICAgY29uc3QgZGF0ZVdpdGhDb3JyZWN0TW9udGggPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIHRhcmdldE1vbnRoLCAxLCAwLCAwLCAwLCAwKTtcbiAgICBjb25zdCBkYXlzSW5Nb250aCA9IHRoaXMuZ2V0TnVtRGF5c0luTW9udGgoZGF0ZVdpdGhDb3JyZWN0TW9udGgpO1xuICAgIC8vIEFkYXB0IHRoZSBsYXN0IGRheSBvZiBtb250aCBmb3Igc2hvcnRlciBtb250aHNcbiAgICByZXR1cm4gbmV3IERhdGUodGhpcy5jbG9uZShkYXRlKS5zZXRNb250aCh0YXJnZXRNb250aCwgTWF0aC5taW4oZGF5c0luTW9udGgsIGRhdGUuZ2V0RGF0ZSgpKSkpO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBuZXcgZGF0ZSBieSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgZGF5c2AgdG8gdGhlIHByb3ZpZGVkIGBkYXRlYC4gKi9cbiAgcHVibGljIGFkZENhbGVuZGFyRGF5cyhkYXRlOiBEYXRlLCBkYXlzOiBudW1iZXIpOiBEYXRlIHtcbiAgICBjb25zdCB0YXJnZXREYXkgPSBkYXRlLmdldERhdGUoKSArIGRheXM7XG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUuZ2V0RnVsbFllYXIoKSwgZGF0ZS5nZXRNb250aCgpLCB0YXJnZXREYXksIDAsIDAsIDAsIDApO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBEYXRlIGZyb20gYSB2YWxpZCBpbnB1dCAoRGF0ZSwgc3RyaW5nIG9yIG51bWJlciBpbiBzZWNvbmRzKS4gKi9cbiAgcHVibGljIG92ZXJyaWRlIGRlc2VyaWFsaXplKGRhdGU6IFNiYkRhdGVMaWtlIHwgbnVsbCB8IHVuZGVmaW5lZCk6IERhdGUgfCBudWxsIHtcbiAgICBpZiAodHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoIWRhdGUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9IGVsc2UgaWYgKCFOdW1iZXIuaXNOYU4oK2RhdGUpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbGlkRGF0ZU9yTnVsbChuZXcgRGF0ZSgrZGF0ZSAqIDEwMDApKTtcblxuICAgICAgICAvLyBUaGUgYERhdGVgIGNvbnN0cnVjdG9yIGFjY2VwdHMgZm9ybWF0cyBvdGhlciB0aGFuIElTTyA4NjAxLCBzbyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGVcbiAgICAgICAgLy8gc3RyaW5nIGlzIHRoZSByaWdodCBmb3JtYXQgZmlyc3QuXG4gICAgICB9IGVsc2UgaWYgKElTT184NjAxX1JFR0VYLnRlc3QoZGF0ZSkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsaWREYXRlT3JOdWxsKG5ldyBEYXRlKGRhdGUuaW5jbHVkZXMoJ1QnKSA/IGRhdGUgOiBkYXRlICsgJ1QwMDowMDowMCcpKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBkYXRlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsaWREYXRlT3JOdWxsKG5ldyBEYXRlKGRhdGUgKiAxMDAwKSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5kZXNlcmlhbGl6ZShkYXRlKTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSByaWdodCBmb3JtYXQgZm9yIHRoZSBgdmFsdWVBc0RhdGVgIHByb3BlcnR5LiAqL1xuICBwdWJsaWMgcGFyc2UodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsIG5vdzogRGF0ZSA9IHRoaXMudG9kYXkoKSk6IERhdGUgfCBudWxsIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgZGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICAgIGNvbnN0IGlzb01hdGNoID0gdmFsdWUubWF0Y2goSVNPODYwMV9GT1JNQVRfREFURSk7XG4gICAgdHJ5IHtcbiAgICAgIGRhdGUgPSBpc29NYXRjaCA/IHRoaXMuY3JlYXRlRGF0ZSgraXNvTWF0Y2hbMV0sICtpc29NYXRjaFsyXSwgK2lzb01hdGNoWzNdKSA6IG51bGw7XG4gICAgfSBjYXRjaCB7XG4gICAgICAvKiBlbXB0eSAqL1xuICAgIH1cbiAgICBpZiAodGhpcy5pc1ZhbGlkKGRhdGUpKSB7XG4gICAgICByZXR1cm4gZGF0ZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdHJpcHBlZFZhbHVlID0gdmFsdWUucmVwbGFjZSgvXFxEL2csICcgJykudHJpbSgpO1xuXG4gICAgY29uc3QgbWF0Y2g6IFJlZ0V4cE1hdGNoQXJyYXkgfCBudWxsIHwgdW5kZWZpbmVkID0gc3RyaXBwZWRWYWx1ZT8ubWF0Y2goRk9STUFUX0RBVEUpO1xuICAgIGlmIChcbiAgICAgICFtYXRjaCB8fFxuICAgICAgbWF0Y2guaW5kZXggIT09IDAgfHxcbiAgICAgIG1hdGNoLmxlbmd0aCA8PSAyIHx8XG4gICAgICBtYXRjaC5zb21lKChlKSA9PiBlID09PSB1bmRlZmluZWQpIHx8XG4gICAgICAhdGhpcy5pc1ZhbGlkKHRoaXMuY3JlYXRlRGF0ZSgrbWF0Y2hbM10sICttYXRjaFsyXSwgK21hdGNoWzFdKSlcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGxldCB5ZWFyID0gK21hdGNoWzNdO1xuXG4gICAgaWYgKHR5cGVvZiB5ZWFyID09PSAnbnVtYmVyJyAmJiB5ZWFyIDwgMTAwICYmIHllYXIgPj0gMCkge1xuICAgICAgY29uc3Qgc2hpZnQgPSBub3cuZ2V0RnVsbFllYXIoKSAtIDIwMDAgKyB0aGlzLl9jdXRvZmZZZWFyT2Zmc2V0O1xuICAgICAgeWVhciA9IHllYXIgPD0gc2hpZnQgPyAyMDAwICsgeWVhciA6IDE5MDAgKyB5ZWFyO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCArbWF0Y2hbMl0gLSAxLCArbWF0Y2hbMV0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGludmFsaWQoKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKE5hTik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBhcnJheSB3aXRoIHRoZSBnaXZlbiBsZW5ndGggYW5kIGZpbGxzIGl0IGJ5IG1hcHBpbmcgd2l0aCB0aGUgcHJvdmlkZWQgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBsZW5ndGggVGhlIGxlbmd0aCBvZiB0aGUgYXJyYXkgdG8gYmUgY3JlYXRlZC5cbiAgICogQHBhcmFtIHZhbHVlRnVuY3Rpb24gVGhlIGZ1bmN0aW9uIG9mIGFycmF5J3MgaW5kZXggdXNlZCB0byBmaWxsIHRoZSBhcnJheS5cbiAgICovXG4gIHByaXZhdGUgX3JhbmdlPFQ+KGxlbmd0aDogbnVtYmVyLCB2YWx1ZUZ1bmN0aW9uOiAoaW5kZXg6IG51bWJlcikgPT4gVCk6IFRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oeyBsZW5ndGggfSkubWFwKChfLCBpKSA9PiB2YWx1ZUZ1bmN0aW9uKGkpKTtcbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZGF0ZSBidXQgYWxsb3dzIHRoZSBtb250aCBhbmQgZGF0ZSB0byBvdmVyZmxvdy4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRGF0ZVdpdGhPdmVyZmxvdyh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRhdGU6IG51bWJlcik6IERhdGUge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXRlKTtcbiAgICAvLyBXZSBuZWVkIHRvIGNvcnJlY3QgZm9yIHRoZSBmYWN0IHRoYXQgSlMgbmF0aXZlIERhdGUgdHJlYXRzIHllYXJzIGluIHJhbmdlIFswLCA5OV0gYXNcbiAgICAvLyBhYmJyZXZpYXRpb25zIGZvciAxOXh4LlxuICAgIGlmICh5ZWFyID49IDAgJiYgeWVhciA8IDEwMCkge1xuICAgICAgcmVzdWx0LnNldEZ1bGxZZWFyKHRoaXMuZ2V0WWVhcihyZXN1bHQpIC0gMTkwMCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRlZmF1bHREYXRlQWRhcHRlciA9IG5ldyBOYXRpdmVEYXRlQWRhcHRlcigpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBVUEsTUFBTSxpQkFDSjtBQUVJLE1BQU8sMEJBQTBCLFlBQWlCO0FBQUEsRUFHdEQsWUFBbUIsbUJBQTJCLElBQUU7O0FBRTlDLFNBQUssb0JBQW9CO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJcEIsUUFBUSxNQUFVO0FBQ3ZCLFdBQU8sS0FBSyxZQUFXO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJbEIsU0FBUyxNQUFVO0FBQ2pCLFdBQUEsS0FBSyxhQUFhO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJcEIsUUFBUSxNQUFVO0FBQ3ZCLFdBQU8sS0FBSyxRQUFPO0FBQUEsRUFB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
181
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUtYWRhcHRlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvZGF0ZXRpbWUvbmF0aXZlLWRhdGUtYWRhcHRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb250cm9sbGVycy5qcyc7XG5cbmltcG9ydCB7IERhdGVBZGFwdGVyLCBGT1JNQVRfREFURSwgSVNPODYwMV9GT1JNQVRfREFURSB9IGZyb20gJy4vZGF0ZS1hZGFwdGVyLmpzJztcblxuLyoqXG4gKiBNYXRjaGVzIHN0cmluZ3MgdGhhdCBoYXZlIHRoZSBmb3JtIG9mIGEgdmFsaWQgUkZDIDMzMzkgc3RyaW5nXG4gKiAoaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkpLiBOb3RlIHRoYXQgdGhlIHN0cmluZyBtYXkgbm90IGFjdHVhbGx5IGJlIGEgdmFsaWQgZGF0ZVxuICogYmVjYXVzZSB0aGUgcmVnZXggd2lsbCBtYXRjaCBzdHJpbmdzIGFuIHdpdGhvdXQgb2YgYm91bmRzIG1vbnRoLCBkYXRlLCBldGMuXG4gKi9cbmNvbnN0IElTT184NjAxX1JFR0VYID1cbiAgL15cXGR7NH0tXFxkezJ9LVxcZHsyfSg/OlRcXGR7Mn06XFxkezJ9OlxcZHsyfSg/OlxcLlxcZCspPyg/Olp8KD86KD86XFwrfC0pXFxkezJ9OlxcZHsyfSkpPyk/JC87XG5cbmV4cG9ydCBjbGFzcyBOYXRpdmVEYXRlQWRhcHRlciBleHRlbmRzIERhdGVBZGFwdGVyPERhdGU+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfY3V0b2ZmWWVhck9mZnNldDogbnVtYmVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihjdXRvZmZZZWFyT2Zmc2V0OiBudW1iZXIgPSAxNSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fY3V0b2ZmWWVhck9mZnNldCA9IGN1dG9mZlllYXJPZmZzZXQ7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgeWVhciBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldFllYXIoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBtb250aCBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldE1vbnRoKGRhdGU6IERhdGUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLmdldE1vbnRoKCkgKyAxO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGRheSBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldERhdGUoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGRhdGUuZ2V0RGF0ZSgpO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgaW5wdXQgZGF0ZS4gKi9cbiAgcHVibGljIGdldERheU9mV2VlayhkYXRlOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5nZXREYXkoKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBkYXRlIGluIHRoZSBsb2NhbCBmb3JtYXQuICovXG4gIHB1YmxpYyBnZXRBY2Nlc3NpYmlsaXR5Rm9ybWF0RGF0ZShkYXRlOiBEYXRlIHwgc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBvcHRpb25zOiBJbnRsLkRhdGVUaW1lRm9ybWF0T3B0aW9ucyA9IHtcbiAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgIG1vbnRoOiAnbG9uZycsXG4gICAgICBkYXk6ICdudW1lcmljJyxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgb3B0aW9ucykuZm9ybWF0KG5ldyBEYXRlKGRhdGUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGFycmF5IG9mIHN0cmluZ3Mgd2l0aCBsZW5ndGggPSAxMiwgZmlsbGVkIHdpdGggdGhlIG5hbWUgb2YgdGhlIG1vbnRocyBzdGFydGluZyBmcm9tIEphbnVhcnksIGluIHRoZSBkb2N1bWVudCBsYW5ndWFnZS5cbiAgICogQHBhcmFtIHN0eWxlIFNlZSBgbW9udGhgIGluIGBEYXRlVGltZUZvcm1hdE9wdGlvbnNgOiBgbG9uZ2AgZm9yIGZ1bGwgbmFtZSwgYHNob3J0YCBmb3Igc2hvcnQgbmFtZSwgYG5hcnJvd2AgZm9yIHNpbmdsZSBsZXR0ZXIsXG4gICAqIEUuZy4sIHdpdGggSmFudWFyeSBpbiBlbi1nYjogYGxvbmdgIHJldHVybnMgXCJKYW51YXJ5XCIsIGBzaG9ydGAgcmV0dXJucyBcIkphblwiLCBgbmFycm93YCByZXR1cm5zIFwiSlwiLlxuICAgKi9cbiAgcHVibGljIGdldE1vbnRoTmFtZXMoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93Jyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgeyBtb250aDogc3R5bGUgfSk7XG4gICAgcmV0dXJuIHRoaXMuX3JhbmdlKDEyLCAoaSkgPT4gZm9ybWF0dGVyLmZvcm1hdChuZXcgRGF0ZSgyMDE3LCBpLCAxKSkpO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBzdHJpbmcgYXJyYXkgd2l0aCBsZW5ndGggPSAzMSwgZmlsbGVkIHdpdGggdGhlIGRheXMgaW4gYSBtb250aCwgc3RhcnRpbmcgZnJvbSAxLiAqL1xuICBwdWJsaWMgZ2V0RGF0ZU5hbWVzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChTYmJMYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudCwgeyBkYXk6ICdudW1lcmljJyB9KTtcbiAgICByZXR1cm4gdGhpcy5fcmFuZ2UoMzEsIChpKSA9PiBmb3JtYXR0ZXIuZm9ybWF0KG5ldyBEYXRlKDIwMTcsIDAsIGkgKyAxKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzdHJpbmcgYXJyYXkgd2l0aCBsZW5ndGggPSA3LCBmaWxsZWQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgZGF5cyBpbiBhIHdlZWsgc3RhcnRpbmcgZnJvbSBTdW5kYXksIGluIHRoZSBkb2N1bWVudCBsYW5ndWFnZS5cbiAgICogQHBhcmFtIHN0eWxlIFNlZSBgd2Vla2RheWAgaW4gYERhdGVUaW1lRm9ybWF0T3B0aW9uc2AgLSAnbG9uZycgZm9yIGZ1bGwgbmFtZSwgJ3Nob3J0JyBmb3Igc2hvcnQgbmFtZSwgJ25hcnJvdycgZm9yIHNpbmdsZSBsZXR0ZXI7XG4gICAqIEUuZy4sIHdpdGggTW9uZGF5IGluIGVuLWdiOiBgbG9uZ2AgcmV0dXJucyBcIk1vbmRheVwiLCBgc2hvcnRgIHJldHVybnMgXCJNb25cIiwgYG5hcnJvd2AgcmV0dXJucyBcIk1cIi5cbiAgICovXG4gIHB1YmxpYyBnZXREYXlPZldlZWtOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFNiYkxhbmd1YWdlQ29udHJvbGxlci5jdXJyZW50LCB7IHdlZWtkYXk6IHN0eWxlIH0pO1xuICAgIHJldHVybiB0aGlzLl9yYW5nZSg3LCAoaSkgPT4gZm9ybWF0dGVyLmZvcm1hdChuZXcgRGF0ZSgyMDE3LCAwLCBpICsgMSkpKTtcbiAgfVxuXG4gIC8qIERlZmluZXMgd2hpY2ggaXMgdGhlIGZpcnN0IGRheSBvZiB0aGUgd2VlayAoMDogc3VuZGF5OyAxOiBtb25kYXk7IGV0Yy4pLiAqL1xuICBwdWJsaWMgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIC8qKiBDYWxjdWxhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBpbiBhIG1vbnRoIGdpdmVuIHRoZSB5ZWFyIGFuZCB0aGUgbW9udGguICovXG4gIHB1YmxpYyBnZXROdW1EYXlzSW5Nb250aChkYXRlOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXREYXRlKHRoaXMuX2NyZWF0ZURhdGVXaXRoT3ZlcmZsb3codGhpcy5nZXRZZWFyKGRhdGUpLCB0aGlzLmdldE1vbnRoKGRhdGUpLCAwKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyB0b2RheSdzIGRhdGUuICovXG4gIHB1YmxpYyB0b2RheSgpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUobmV3IERhdGUoKS5zZXRIb3VycygwLCAwLCAwLCAwKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhIG5ldyBkYXRlLCBnaXZlbiBkYXksIG1vbnRoIGFuZCB5ZWFyOyB0aGUgbWV0aG9kIGRvZXNuJ3QgYWxsb3cgZGF0ZSdzIG92ZXJmbG93LiAqL1xuICBwdWJsaWMgY3JlYXRlRGF0ZSh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRhdGU6IG51bWJlcik6IERhdGUge1xuICAgIC8vIENoZWNrIGZvciBpbnZhbGlkIG1vbnRoIGFuZCBkYXRlIChleGNlcHQgdXBwZXIgYm91bmQgb24gZGF0ZSB3aGljaCB3ZSBoYXZlIHRvIGNoZWNrIGFmdGVyIGNyZWF0aW5nIHRoZSBEYXRlKS5cbiAgICBpZiAobW9udGggPCAxIHx8IG1vbnRoID4gMTIpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkIG1vbnRoIGluZGV4IFwiJHttb250aH1cIi4gTW9udGggaW5kZXggaGFzIHRvIGJlIGJldHdlZW4gMSBhbmQgMTIuYCk7XG4gICAgfVxuXG4gICAgaWYgKGRhdGUgPCAxKSB7XG4gICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCBkYXRlIFwiJHtkYXRlfVwiLiBEYXRlIGhhcyB0byBiZSBncmVhdGVyIHRoYW4gMC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9jcmVhdGVEYXRlV2l0aE92ZXJmbG93KHllYXIsIG1vbnRoIC0gMSwgZGF0ZSk7XG4gICAgLy8gQ2hlY2sgdGhhdCB0aGUgZGF0ZSB3YXNuJ3QgYWJvdmUgdGhlIHVwcGVyIGJvdW5kIGZvciB0aGUgbW9udGgsIGNhdXNpbmcgdGhlIG1vbnRoIHRvIG92ZXJmbG93XG4gICAgaWYgKHJlc3VsdC5nZXRNb250aCgpICsgMSAhPT0gbW9udGgpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkIGRhdGUgXCIke2RhdGV9XCIgZm9yIG1vbnRoIHdpdGggaW5kZXggXCIke21vbnRofVwiLmApO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGBvYmpgIGlzIGEgRGF0ZS4gKi9cbiAgcHVibGljIGlzRGF0ZUluc3RhbmNlKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIERhdGU7XG4gIH1cblxuICAvKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGBkYXRlYCBpcyBhIHZhbGlkIERhdGUuICovXG4gIHB1YmxpYyBpc1ZhbGlkKGRhdGU6IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkKTogZGF0ZSBpcyBEYXRlIHtcbiAgICByZXR1cm4gISFkYXRlICYmICFpc05hTihkYXRlLnZhbHVlT2YoKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhIG5ldyBkYXRlIGJ5IGNsb25pbmcgdGhlIGdpdmVuIG9uZS4gKi9cbiAgcHVibGljIGNsb25lKGRhdGU6IERhdGUpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZS52YWx1ZU9mKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgeWVhcnNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBzdGFydGluZyBkYXRlLlxuICAgKiBAcGFyYW0geWVhcnMgVGhlIG51bWJlciBvZiB5ZWFycyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWRkQ2FsZW5kYXJZZWFycyhkYXRlOiBEYXRlLCB5ZWFyczogbnVtYmVyKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkQ2FsZW5kYXJNb250aHMoZGF0ZSwgeWVhcnMgKiAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGFkZGluZyB0aGUgbnVtYmVyIG9mIHByb3ZpZGVkIGBtb250aHNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIElmIHRoZSBjYWxjdWxhdGVkIG1vbnRoIGhhcyBmZXdlciBkYXlzIHRoYW4gdGhlIG9yaWdpbmFsIG9uZSwgdGhlIGRhdGUgaXMgc2V0IHRvIHRoZSBsYXN0IGRheSBvZiB0aGUgbW9udGguXG4gICAqIEUuZy4sIHdpdGggYGRhdGVgID0gbmV3IERhdGUoMjAyMiwgMCwgMzEpIGFuZCBgbW9udGhzYCA9IDEsIGl0IHJldHVybnMgbmV3IERhdGUoMjAyMiwgMSwgMjgpLlxuICAgKi9cbiAgcHVibGljIGFkZENhbGVuZGFyTW9udGhzKGRhdGU6IERhdGUsIG1vbnRoczogbnVtYmVyKTogRGF0ZSB7XG4gICAgY29uc3QgdGFyZ2V0TW9udGggPSBkYXRlLmdldE1vbnRoKCkgKyBtb250aHM7XG4gICAgY29uc3QgZGF0ZVdpdGhDb3JyZWN0TW9udGggPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIHRhcmdldE1vbnRoLCAxLCAwLCAwLCAwLCAwKTtcbiAgICBjb25zdCBkYXlzSW5Nb250aCA9IHRoaXMuZ2V0TnVtRGF5c0luTW9udGgoZGF0ZVdpdGhDb3JyZWN0TW9udGgpO1xuICAgIC8vIEFkYXB0IHRoZSBsYXN0IGRheSBvZiBtb250aCBmb3Igc2hvcnRlciBtb250aHNcbiAgICByZXR1cm4gbmV3IERhdGUodGhpcy5jbG9uZShkYXRlKS5zZXRNb250aCh0YXJnZXRNb250aCwgTWF0aC5taW4oZGF5c0luTW9udGgsIGRhdGUuZ2V0RGF0ZSgpKSkpO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBuZXcgZGF0ZSBieSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgZGF5c2AgdG8gdGhlIHByb3ZpZGVkIGBkYXRlYC4gKi9cbiAgcHVibGljIGFkZENhbGVuZGFyRGF5cyhkYXRlOiBEYXRlLCBkYXlzOiBudW1iZXIpOiBEYXRlIHtcbiAgICBjb25zdCB0YXJnZXREYXkgPSBkYXRlLmdldERhdGUoKSArIGRheXM7XG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUuZ2V0RnVsbFllYXIoKSwgZGF0ZS5nZXRNb250aCgpLCB0YXJnZXREYXksIDAsIDAsIDAsIDApO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgYSBEYXRlIGZyb20gYSB2YWxpZCBpbnB1dCAoRGF0ZSBvciBJU08gc3RyaW5nKS4gKi9cbiAgcHVibGljIG92ZXJyaWRlIGRlc2VyaWFsaXplKGRhdGU6IERhdGUgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogRGF0ZSB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgZGF0ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICghZGF0ZSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH0gZWxzZSBpZiAoSVNPXzg2MDFfUkVHRVgudGVzdChkYXRlKSkge1xuICAgICAgICAvLyBUaGUgYERhdGVgIGNvbnN0cnVjdG9yIGFjY2VwdHMgZm9ybWF0cyBvdGhlciB0aGFuIElTTyA4NjAxLCBzbyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGVcbiAgICAgICAgLy8gc3RyaW5nIGlzIHRoZSByaWdodCBmb3JtYXQgZmlyc3QuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbGlkRGF0ZU9yTnVsbChuZXcgRGF0ZShkYXRlLmluY2x1ZGVzKCdUJykgPyBkYXRlIDogZGF0ZSArICdUMDA6MDA6MDAnKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5kZXNlcmlhbGl6ZShkYXRlKTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSByaWdodCBmb3JtYXQgZm9yIHRoZSBgdmFsdWVBc0RhdGVgIHByb3BlcnR5LiAqL1xuICBwdWJsaWMgcGFyc2UodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsIG5vdzogRGF0ZSA9IHRoaXMudG9kYXkoKSk6IERhdGUgfCBudWxsIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgZGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICAgIGNvbnN0IGlzb01hdGNoID0gdmFsdWUubWF0Y2goSVNPODYwMV9GT1JNQVRfREFURSk7XG4gICAgdHJ5IHtcbiAgICAgIGRhdGUgPSBpc29NYXRjaCA/IHRoaXMuY3JlYXRlRGF0ZSgraXNvTWF0Y2hbMV0sICtpc29NYXRjaFsyXSwgK2lzb01hdGNoWzNdKSA6IG51bGw7XG4gICAgfSBjYXRjaCB7XG4gICAgICAvKiBlbXB0eSAqL1xuICAgIH1cbiAgICBpZiAodGhpcy5pc1ZhbGlkKGRhdGUpKSB7XG4gICAgICByZXR1cm4gZGF0ZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdHJpcHBlZFZhbHVlID0gdmFsdWUucmVwbGFjZSgvXFxEL2csICcgJykudHJpbSgpO1xuXG4gICAgY29uc3QgbWF0Y2g6IFJlZ0V4cE1hdGNoQXJyYXkgfCBudWxsIHwgdW5kZWZpbmVkID0gc3RyaXBwZWRWYWx1ZT8ubWF0Y2goRk9STUFUX0RBVEUpO1xuICAgIGlmIChcbiAgICAgICFtYXRjaCB8fFxuICAgICAgbWF0Y2guaW5kZXggIT09IDAgfHxcbiAgICAgIG1hdGNoLmxlbmd0aCA8PSAyIHx8XG4gICAgICBtYXRjaC5zb21lKChlKSA9PiBlID09PSB1bmRlZmluZWQpIHx8XG4gICAgICAhdGhpcy5pc1ZhbGlkKHRoaXMuY3JlYXRlRGF0ZSgrbWF0Y2hbM10sICttYXRjaFsyXSwgK21hdGNoWzFdKSlcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGxldCB5ZWFyID0gK21hdGNoWzNdO1xuXG4gICAgaWYgKHR5cGVvZiB5ZWFyID09PSAnbnVtYmVyJyAmJiB5ZWFyIDwgMTAwICYmIHllYXIgPj0gMCkge1xuICAgICAgY29uc3Qgc2hpZnQgPSBub3cuZ2V0RnVsbFllYXIoKSAtIDIwMDAgKyB0aGlzLl9jdXRvZmZZZWFyT2Zmc2V0O1xuICAgICAgeWVhciA9IHllYXIgPD0gc2hpZnQgPyAyMDAwICsgeWVhciA6IDE5MDAgKyB5ZWFyO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCArbWF0Y2hbMl0gLSAxLCArbWF0Y2hbMV0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGludmFsaWQoKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKE5hTik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBhcnJheSB3aXRoIHRoZSBnaXZlbiBsZW5ndGggYW5kIGZpbGxzIGl0IGJ5IG1hcHBpbmcgd2l0aCB0aGUgcHJvdmlkZWQgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBsZW5ndGggVGhlIGxlbmd0aCBvZiB0aGUgYXJyYXkgdG8gYmUgY3JlYXRlZC5cbiAgICogQHBhcmFtIHZhbHVlRnVuY3Rpb24gVGhlIGZ1bmN0aW9uIG9mIGFycmF5J3MgaW5kZXggdXNlZCB0byBmaWxsIHRoZSBhcnJheS5cbiAgICovXG4gIHByaXZhdGUgX3JhbmdlPFQ+KGxlbmd0aDogbnVtYmVyLCB2YWx1ZUZ1bmN0aW9uOiAoaW5kZXg6IG51bWJlcikgPT4gVCk6IFRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oeyBsZW5ndGggfSkubWFwKChfLCBpKSA9PiB2YWx1ZUZ1bmN0aW9uKGkpKTtcbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGEgZGF0ZSBidXQgYWxsb3dzIHRoZSBtb250aCBhbmQgZGF0ZSB0byBvdmVyZmxvdy4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRGF0ZVdpdGhPdmVyZmxvdyh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRhdGU6IG51bWJlcik6IERhdGUge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXRlKTtcbiAgICAvLyBXZSBuZWVkIHRvIGNvcnJlY3QgZm9yIHRoZSBmYWN0IHRoYXQgSlMgbmF0aXZlIERhdGUgdHJlYXRzIHllYXJzIGluIHJhbmdlIFswLCA5OV0gYXNcbiAgICAvLyBhYmJyZXZpYXRpb25zIGZvciAxOXh4LlxuICAgIGlmICh5ZWFyID49IDAgJiYgeWVhciA8IDEwMCkge1xuICAgICAgcmVzdWx0LnNldEZ1bGxZZWFyKHRoaXMuZ2V0WWVhcihyZXN1bHQpIC0gMTkwMCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRlZmF1bHREYXRlQWRhcHRlciA9IG5ldyBOYXRpdmVEYXRlQWRhcHRlcigpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBU0EsTUFBTSxpQkFDSjtBQUVJLE1BQU8sMEJBQTBCLFlBQWlCO0FBQUEsRUFHdEQsWUFBbUIsbUJBQTJCLElBQUU7O0FBRTlDLFNBQUssb0JBQW9CO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJcEIsUUFBUSxNQUFVO0FBQ3ZCLFdBQU8sS0FBSyxZQUFXO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJbEIsU0FBUyxNQUFVO0FBQ2pCLFdBQUEsS0FBSyxhQUFhO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJcEIsUUFBUSxNQUFVO0FBQ3ZCLFdBQU8sS0FBSyxRQUFPO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFJZCxhQUFhLE1BQVU7QUFDNUIsV0FBTyxLQUFLLE9BQU07QUFBQSxFQUFBO0FBQUE7QUFBQSxFQUliLDJCQUEyQixNQUFtQjtBQUNuRCxVQUFNLFVBQXNDO0FBQUEsTUFDMUMsTUFBTTtBQUFBLE1BQ04sT0FBTztBQUFBLE1BQ1AsS0FBSztBQUFBO0FBRUEsV0FBQSxJQUFJLEtBQUssZUFBZSxzQkFBc0IsU0FBUyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDO0FBQUEsRUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVF2RixjQUFjLE9BQWtD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
@@ -0,0 +1,11 @@
1
+ import { ReactiveElement } from 'lit';
2
+ import { Interface } from './base.js';
3
+ /**
4
+ * Accessor decorator that resolves id references dynamically.
5
+ * If a string is passed (e.g. from an attribute), it will be resolved to the element with that id.
6
+ * This decorator observes the connected document fragment for changes to the id attribute
7
+ * and child elements and if any id reference is established or removed, it will
8
+ * update the associated property.
9
+ */
10
+ export declare const idReference: <C extends Interface<ReactiveElement>, V>() => (target: ClassAccessorDecoratorTarget<C, V>, context: ClassAccessorDecoratorContext<C, V>) => any;
11
+ //# sourceMappingURL=id-reference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-reference.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/decorators/id-reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,eAAe,EAAE,MAAM,KAAK,CAAC;AAE9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAgC3C;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,QAE/D,QAAQ,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,SAAS,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,KAC3C,GAkJJ,CAAC"}
@@ -0,0 +1,123 @@
1
+ import { isServer } from "lit";
2
+ const observers = /* @__PURE__ */ new WeakMap();
3
+ const idReferences = /* @__PURE__ */ new WeakMap();
4
+ const idReference = () => {
5
+ return (target, context) => {
6
+ var _a, _b;
7
+ const { kind, metadata, name } = context;
8
+ if (kind === "accessor") {
9
+ if (isServer) {
10
+ return {};
11
+ }
12
+ const attribute = (_b = (_a = globalThis.litPropertyMetadata.get(metadata)) == null ? void 0 : _a.get(name)) == null ? void 0 : _b.attribute;
13
+ const attributeName = typeof attribute === "string" ? attribute : name;
14
+ context.addInitializer(function() {
15
+ this.addController({
16
+ host: this,
17
+ rootNode: null,
18
+ checkIdReference(changedIds) {
19
+ var _a2, _b2;
20
+ const id = this.host.getAttribute(attributeName) ?? idReferences.get(this.host);
21
+ if (id && typeof id === "string" && (!changedIds || changedIds.has(id))) {
22
+ const value = ((_b2 = (_a2 = this.rootNode) == null ? void 0 : _a2.getElementById) == null ? void 0 : _b2.call(_a2, id)) ?? null;
23
+ if (context.access.get(this.host) !== value) {
24
+ context.access.set(this.host, value);
25
+ }
26
+ }
27
+ },
28
+ hostConnected() {
29
+ this.rootNode = this.host.getRootNode();
30
+ this.checkIdReference();
31
+ const observerContext = observers.get(this.rootNode);
32
+ if (observerContext) {
33
+ observerContext.controllers.add(this);
34
+ } else {
35
+ const controllers = /* @__PURE__ */ new Set([this]);
36
+ const observer = new MutationObserver((mutations) => {
37
+ const mutatedIds = /* @__PURE__ */ new Set();
38
+ for (const mutation of mutations) {
39
+ if (mutation.type === "attributes") {
40
+ if (mutation.oldValue) {
41
+ mutatedIds.add(mutation.oldValue);
42
+ }
43
+ if (mutation.target.id) {
44
+ mutatedIds.add(mutation.target.id);
45
+ }
46
+ } else if (mutation.type === "childList") {
47
+ for (const node of [...mutation.addedNodes, ...mutation.removedNodes]) {
48
+ if (node instanceof HTMLElement) {
49
+ if (node.id) {
50
+ mutatedIds.add(node.id);
51
+ }
52
+ node.querySelectorAll("[id]").forEach((e) => {
53
+ if (e.id) {
54
+ mutatedIds.add(e.id);
55
+ }
56
+ });
57
+ }
58
+ }
59
+ }
60
+ }
61
+ controllers.forEach((c) => c.checkIdReference(mutatedIds));
62
+ });
63
+ observer.observe(this.rootNode, {
64
+ attributeFilter: ["id"],
65
+ attributeOldValue: true,
66
+ childList: true,
67
+ subtree: true
68
+ });
69
+ observers.set(this.rootNode, { observer, controllers });
70
+ }
71
+ },
72
+ hostDisconnected() {
73
+ if (isServer || !this.rootNode) {
74
+ return;
75
+ }
76
+ const observerContext = observers.get(this.rootNode);
77
+ if (!observerContext) {
78
+ this.rootNode = null;
79
+ return;
80
+ }
81
+ observerContext.controllers.delete(this);
82
+ if (observerContext.controllers.size === 0) {
83
+ observerContext.observer.disconnect();
84
+ observers.delete(this.rootNode);
85
+ }
86
+ this.rootNode = null;
87
+ }
88
+ });
89
+ });
90
+ return {
91
+ set(value) {
92
+ var _a2, _b2, _c;
93
+ if (typeof value !== "string") {
94
+ idReferences.delete(this);
95
+ if (value instanceof HTMLElement && this.hasAttribute(attributeName) && value.id !== this.getAttribute(attributeName)) {
96
+ {
97
+ const elementIdentity = value.id ? `#${value.id}` : value.classList.value.split(" ").map((c) => `.${c}`).join("");
98
+ console.warn(`An element (${value.localName + elementIdentity}) was passed to the ${this.localName}.${name} property, which does not match the existing id reference attribute ${attributeName} with value ${this.getAttribute(attributeName)}. This will remove the current attribute value.`);
99
+ }
100
+ this.removeAttribute(attributeName);
101
+ }
102
+ } else if (this.hasAttribute(attributeName) && this.getAttribute(attributeName) !== value) {
103
+ return;
104
+ } else {
105
+ const element = value ? (_c = (_b2 = (_a2 = this.getRootNode) == null ? void 0 : _a2.call(this)) == null ? void 0 : _b2.getElementById) == null ? void 0 : _c.call(_b2, value) : null;
106
+ if (element) {
107
+ value = element;
108
+ } else if (value) {
109
+ idReferences.set(this, value);
110
+ value = null;
111
+ }
112
+ }
113
+ target.set.call(this, value);
114
+ }
115
+ };
116
+ }
117
+ throw new Error(`Unsupported decorator location: ${kind}`);
118
+ };
119
+ };
120
+ export {
121
+ idReference
122
+ };
123
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtcmVmZXJlbmNlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzL2lkLXJlZmVyZW5jZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1NlcnZlciwgdHlwZSBSZWFjdGl2ZUNvbnRyb2xsZXIsIHR5cGUgUmVhY3RpdmVFbGVtZW50IH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHR5cGUgeyBJbnRlcmZhY2UgfSBmcm9tICcuL2Jhc2UuanMnO1xuXG5pbnRlcmZhY2UgSWRSZWZlcmVuY2VDb250cm9sbGVyIGV4dGVuZHMgUmVhY3RpdmVDb250cm9sbGVyIHtcbiAgaG9zdDogSW50ZXJmYWNlPFJlYWN0aXZlRWxlbWVudD47XG4gIHJvb3ROb2RlOiBEb2N1bWVudCB8IFNoYWRvd1Jvb3QgfCBudWxsO1xuICBjaGVja0lkUmVmZXJlbmNlOiAoY2hhbmdlZElkcz86IFNldDxzdHJpbmc+KSA9PiB2b2lkO1xufVxuXG4vKipcbiAqIFdlIGtlZXAgdHJhY2sgb2YgdGhlIG9ic2VydmVycyBmb3IgZWFjaCByb290IG5vZGUsIHdoaWNoIGlzIGVpdGhlciBhIGRvY3VtZW50XG4gKiBvciBhIHNoYWRvdyByb290LlxuICogRWFjaCBvYnNlcnZlciBpcyBhc3NvY2lhdGVkIHdpdGggYSBzZXQgb2YgY29udHJvbGxlcnMgdGhhdCBlYWNoIHJlcHJlc2VudFxuICogYW4gaWQgcmVmZXJlbmNlLlxuICogV2hlbmV2ZXIgdGhlIE11dGF0aW9uT2JzZXJ2ZXIgZGV0ZWN0cyBhIGNoYW5nZSB0aGF0IGFmZmVjdHMgYSBwb3RlbnRpYWwgaWRcbiAqIHJlZmVyZW5jZSwgaXQgbm90aWZpZXMgYWxsIGNvbnRyb2xsZXJzIGFzc29jaWF0ZWQgd2l0aCB0aGF0IG9ic2VydmVyLlxuICovXG5jb25zdCBvYnNlcnZlcnMgPSBuZXcgV2Vha01hcDxcbiAgTm9kZSxcbiAge1xuICAgIG9ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyO1xuICAgIGNvbnRyb2xsZXJzOiBTZXQ8SWRSZWZlcmVuY2VDb250cm9sbGVyPjtcbiAgfVxuPigpO1xuLyoqXG4gKiBXaGVuZXZlciBhbiBpZCBzdHJpbmcgaXMgcGFzc2VkIHRvIHRoZSBzZXR0ZXIgYW5kIG5vIHJlZmVyZW5jZSBpcyBmb3VuZCxcbiAqIHdlIHN0b3JlIGl0IGluIHRoaXMgV2Vha01hcC5cbiAqIFRoZSBrZXkgaXMgdGhlIGhvc3QgZWxlbWVudCBhbmQgdGhlIHZhbHVlIGlzIHRoZSBpZCBzdHJpbmcuXG4gKiBQbGVhc2Ugbm90ZSB0aGF0IGlmIGFuIGlkIHJlZmVyZW5jZSBwcm9wZXJ0eSBoYXMgYm90aCBhbiBlbnRyeVxuICogaW4gdGhpcyBXZWFrTWFwIGFuZCBhbiBhc3NvY2lhdGVkIGF0dHJpYnV0ZSwgdGhlIGF0dHJpYnV0ZSB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAqL1xuY29uc3QgaWRSZWZlcmVuY2VzID0gbmV3IFdlYWtNYXA8b2JqZWN0LCBzdHJpbmcgfCBudWxsPigpO1xuXG4vKipcbiAqIEFjY2Vzc29yIGRlY29yYXRvciB0aGF0IHJlc29sdmVzIGlkIHJlZmVyZW5jZXMgZHluYW1pY2FsbHkuXG4gKiBJZiBhIHN0cmluZyBpcyBwYXNzZWQgKGUuZy4gZnJvbSBhbiBhdHRyaWJ1dGUpLCBpdCB3aWxsIGJlIHJlc29sdmVkIHRvIHRoZSBlbGVtZW50IHdpdGggdGhhdCBpZC5cbiAqIFRoaXMgZGVjb3JhdG9yIG9ic2VydmVzIHRoZSBjb25uZWN0ZWQgZG9jdW1lbnQgZnJhZ21lbnQgZm9yIGNoYW5nZXMgdG8gdGhlIGlkIGF0dHJpYnV0ZVxuICogYW5kIGNoaWxkIGVsZW1lbnRzIGFuZCBpZiBhbnkgaWQgcmVmZXJlbmNlIGlzIGVzdGFibGlzaGVkIG9yIHJlbW92ZWQsIGl0IHdpbGxcbiAqIHVwZGF0ZSB0aGUgYXNzb2NpYXRlZCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGNvbnN0IGlkUmVmZXJlbmNlID0gPEMgZXh0ZW5kcyBJbnRlcmZhY2U8UmVhY3RpdmVFbGVtZW50PiwgVj4oKSA9PiB7XG4gIHJldHVybiAoXG4gICAgdGFyZ2V0OiBDbGFzc0FjY2Vzc29yRGVjb3JhdG9yVGFyZ2V0PEMsIFY+LFxuICAgIGNvbnRleHQ6IENsYXNzQWNjZXNzb3JEZWNvcmF0b3JDb250ZXh0PEMsIFY+LFxuICApOiBhbnkgPT4ge1xuICAgIGNvbnN0IHsga2luZCwgbWV0YWRhdGEsIG5hbWUgfSA9IGNvbnRleHQ7XG4gICAgaWYgKGtpbmQgPT09ICdhY2Nlc3NvcicpIHtcbiAgICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgICByZXR1cm4ge307XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGF0dHJpYnV0ZSA9IGdsb2JhbFRoaXMubGl0UHJvcGVydHlNZXRhZGF0YS5nZXQobWV0YWRhdGEpPy5nZXQobmFtZSk/LmF0dHJpYnV0ZTtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSB0eXBlb2YgYXR0cmlidXRlID09PSAnc3RyaW5nJyA/IGF0dHJpYnV0ZSA6IChuYW1lIGFzIHN0cmluZyk7XG4gICAgICBjb250ZXh0LmFkZEluaXRpYWxpemVyKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhpcy5hZGRDb250cm9sbGVyKHtcbiAgICAgICAgICBob3N0OiB0aGlzLFxuICAgICAgICAgIHJvb3ROb2RlOiBudWxsLFxuICAgICAgICAgIGNoZWNrSWRSZWZlcmVuY2UoY2hhbmdlZElkcz86IFNldDxzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgICAgICBjb25zdCBpZCA9IHRoaXMuaG9zdC5nZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSkgPz8gaWRSZWZlcmVuY2VzLmdldCh0aGlzLmhvc3QpO1xuICAgICAgICAgICAgaWYgKGlkICYmIHR5cGVvZiBpZCA9PT0gJ3N0cmluZycgJiYgKCFjaGFuZ2VkSWRzIHx8IGNoYW5nZWRJZHMuaGFzKGlkKSkpIHtcbiAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSAodGhpcy5yb290Tm9kZT8uZ2V0RWxlbWVudEJ5SWQ/LihpZCkgPz8gbnVsbCkgYXMgdW5rbm93biBhcyBWO1xuICAgICAgICAgICAgICBpZiAoY29udGV4dC5hY2Nlc3MuZ2V0KHRoaXMuaG9zdCBhcyBDKSAhPT0gdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBjb250ZXh0LmFjY2Vzcy5zZXQodGhpcy5ob3N0IGFzIEMsIHZhbHVlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgaG9zdENvbm5lY3RlZCgpIHtcbiAgICAgICAgICAgIHRoaXMucm9vdE5vZGUgPSB0aGlzLmhvc3QuZ2V0Um9vdE5vZGUoKSBhcyBEb2N1bWVudCB8IFNoYWRvd1Jvb3Q7XG4gICAgICAgICAgICB0aGlzLmNoZWNrSWRSZWZlcmVuY2UoKTtcbiAgICAgICAgICAgIGNvbnN0IG9ic2VydmVyQ29udGV4dCA9IG9ic2VydmVycy5nZXQodGhpcy5yb290Tm9kZSk7XG5cbiAgICAgICAgICAgIGlmIChvYnNlcnZlckNvbnRleHQpIHtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXJDb250ZXh0LmNvbnRyb2xsZXJzLmFkZCh0aGlzKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbnRyb2xsZXJzID0gbmV3IFNldChbdGhpc10pO1xuICAgICAgICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKChtdXRhdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtdXRhdGVkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IG11dGF0aW9uIG9mIG11dGF0aW9ucykge1xuICAgICAgICAgICAgICAgICAgaWYgKG11dGF0aW9uLnR5cGUgPT09ICdhdHRyaWJ1dGVzJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAobXV0YXRpb24ub2xkVmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICBtdXRhdGVkSWRzLmFkZChtdXRhdGlvbi5vbGRWYWx1ZSEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICgobXV0YXRpb24udGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgIG11dGF0ZWRJZHMuYWRkKChtdXRhdGlvbi50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChtdXRhdGlvbi50eXBlID09PSAnY2hpbGRMaXN0Jykge1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgWy4uLm11dGF0aW9uLmFkZGVkTm9kZXMsIC4uLm11dGF0aW9uLnJlbW92ZWROb2Rlc10pIHtcbiAgICAgICAgICAgICAgICAgICAgICBpZiAobm9kZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobm9kZS5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtdXRhdGVkSWRzLmFkZChub2RlLmlkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGUucXVlcnlTZWxlY3RvckFsbCgnW2lkXScpLmZvckVhY2goKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUuaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdXRhdGVkSWRzLmFkZChlLmlkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29udHJvbGxlcnMuZm9yRWFjaCgoYykgPT4gYy5jaGVja0lkUmVmZXJlbmNlKG11dGF0ZWRJZHMpKTtcbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLnJvb3ROb2RlLCB7XG4gICAgICAgICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2lkJ10sXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlT2xkVmFsdWU6IHRydWUsXG4gICAgICAgICAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgIG9ic2VydmVycy5zZXQodGhpcy5yb290Tm9kZSwgeyBvYnNlcnZlciwgY29udHJvbGxlcnMgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBob3N0RGlzY29ubmVjdGVkKCkge1xuICAgICAgICAgICAgaWYgKGlzU2VydmVyIHx8ICF0aGlzLnJvb3ROb2RlKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3Qgb2JzZXJ2ZXJDb250ZXh0ID0gb2JzZXJ2ZXJzLmdldCh0aGlzLnJvb3ROb2RlKTtcbiAgICAgICAgICAgIGlmICghb2JzZXJ2ZXJDb250ZXh0KSB7XG4gICAgICAgICAgICAgIHRoaXMucm9vdE5vZGUgPSBudWxsO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG9ic2VydmVyQ29udGV4dC5jb250cm9sbGVycy5kZWxldGUodGhpcyk7XG4gICAgICAgICAgICBpZiAob2JzZXJ2ZXJDb250ZXh0LmNvbnRyb2xsZXJzLnNpemUgPT09IDApIHtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXJDb250ZXh0Lm9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLmRlbGV0ZSh0aGlzLnJvb3ROb2RlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5yb290Tm9kZSA9IG51bGw7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBJZFJlZmVyZW5jZUNvbnRyb2xsZXIpO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzZXQodGhpczogQywgdmFsdWUpIHtcbiAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgaWRSZWZlcmVuY2VzLmRlbGV0ZSh0aGlzKTtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgICAgICAgICB0aGlzLmhhc0F0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKSAmJlxuICAgICAgICAgICAgICB2YWx1ZS5pZCAhPT0gdGhpcy5nZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFVikge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRJZGVudGl0eSA9IHZhbHVlLmlkXG4gICAgICAgICAgICAgICAgICA/IGAjJHt2YWx1ZS5pZH1gXG4gICAgICAgICAgICAgICAgICA6IHZhbHVlLmNsYXNzTGlzdC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgIC5zcGxpdCgnICcpXG4gICAgICAgICAgICAgICAgICAgICAgLm1hcCgoYykgPT4gYC4ke2N9YClcbiAgICAgICAgICAgICAgICAgICAgICAuam9pbignJyk7XG4gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICAgYEFuIGVsZW1lbnQgKCR7dmFsdWUubG9jYWxOYW1lICsgZWxlbWVudElkZW50aXR5fSkgd2FzIGAgK1xuICAgICAgICAgICAgICAgICAgICBgcGFzc2VkIHRvIHRoZSAke3RoaXMubG9jYWxOYW1lfS4ke25hbWUgYXMgc3RyaW5nfSBwcm9wZXJ0eSwgYCArXG4gICAgICAgICAgICAgICAgICAgIGB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgZXhpc3RpbmcgaWQgcmVmZXJlbmNlIGF0dHJpYnV0ZSBgICtcbiAgICAgICAgICAgICAgICAgICAgYCR7YXR0cmlidXRlTmFtZX0gd2l0aCB2YWx1ZSAke3RoaXMuZ2V0QXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUpfS4gYCArXG4gICAgICAgICAgICAgICAgICAgIGBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBjdXJyZW50IGF0dHJpYnV0ZSB2YWx1ZS5gLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHRoaXMuaGFzQXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUpICYmXG4gICAgICAgICAgICB0aGlzLmdldEF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lKSAhPT0gdmFsdWVcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIC8vIFdoZW4gYSBzdHJpbmcgaXMgcGFzc2VkIHRvIHRoZSBzZXR0ZXIgYnV0IHRoZSBhdHRyaWJ1dGUgaXMgc2V0IHRvIGFcbiAgICAgICAgICAgIC8vIGRpZmZlcmVudCB2YWx1ZSwgd2UgaWdub3JlIHRoZSBwYXNzZWQgdmFsdWUuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSB2YWx1ZVxuICAgICAgICAgICAgICA/ICh0aGlzLmdldFJvb3ROb2RlPy4oKSBhcyBEb2N1bWVudCB8IFNoYWRvd1Jvb3QpPy5nZXRFbGVtZW50QnlJZD8uKHZhbHVlKVxuICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICAgICAgICB2YWx1ZSA9IGVsZW1lbnQgYXMgdW5rbm93biBhcyBWO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAvLyBJZiB3ZSBhcmUgdW5hYmxlIHRvIHJlc29sdmUgdGhlIGlkIHJlZmVyZW5jZSwgd2UgdGVtcG9yYXJpbHkgc3RvcmUgaXRcbiAgICAgICAgICAgICAgLy8gdG8gdHJ5IHRvIHJlc29sdmUgaXQgbGF0ZXIuXG4gICAgICAgICAgICAgIGlkUmVmZXJlbmNlcy5zZXQodGhpcywgdmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgICAgICAgdmFsdWUgPSBudWxsITtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAodGFyZ2V0IGFzIENsYXNzQWNjZXNzb3JEZWNvcmF0b3JUYXJnZXQ8QywgVj4pLnNldC5jYWxsKHRoaXMgYXMgdW5rbm93biBhcyBDLCB2YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICB9IHNhdGlzZmllcyBDbGFzc0FjY2Vzc29yRGVjb3JhdG9yUmVzdWx0PEMsIFY+O1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgZGVjb3JhdG9yIGxvY2F0aW9uOiAke2tpbmR9YCk7XG4gIH07XG59O1xuIl0sIm5hbWVzIjpbIl9iIiwiX2EiXSwibWFwcGluZ3MiOiI7QUFrQkEsTUFBTSxnQ0FBZ0I7QUFjdEIsTUFBTSxtQ0FBbUI7QUFTbEIsTUFBTSxjQUFjLE1BQThDO0FBQ2hFLFNBQUEsQ0FDTCxRQUNBLFlBQ087O0FBQ1AsVUFBTSxFQUFFLE1BQU0sVUFBVSxLQUFTLElBQUE7QUFDakMsUUFBSSxTQUFTLFlBQVk7QUFDdkIsVUFBSSxVQUFVO0FBQ1osZUFBTzs7QUFHSCxZQUFBLGFBQVksc0JBQVcsb0JBQW9CLElBQUksUUFBUSxNQUEzQyxtQkFBOEMsSUFBSSxVQUFsRCxtQkFBeUQ7QUFDM0UsWUFBTSxnQkFBZ0IsT0FBTyxjQUFjLFdBQVcsWUFBYTtBQUNuRSxjQUFRLGVBQWUsV0FBQTtBQUNyQixhQUFLLGNBQWM7QUFBQSxVQUNqQixN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
@@ -0,0 +1,23 @@
1
+ import { ComplexAttributeConverter, ReactiveElement } from 'lit';
2
+ import { DateAdapter } from '../datetime.js';
3
+ import { Interface } from './base.js';
4
+ /**
5
+ * Will convert date object values to ISO8601 formatted strings as attributes.
6
+ * Should be used together with the `plainDate` decorator.
7
+ */
8
+ export declare const plainDateConverter: ComplexAttributeConverter;
9
+ export interface SbbPlainDateConfiguration {
10
+ /**
11
+ * Provide a function that will be called if the internal value is null.
12
+ * @param dataAdapter The current date adapter.
13
+ * @returns A date object.
14
+ */
15
+ fallback?: <T>(dataAdapter: DateAdapter<T>) => T;
16
+ }
17
+ /**
18
+ * Decorator that tries to deserialize the given value to a date object
19
+ * and adapts the getter to only return a copy of the internal value,
20
+ * in order to avoid outside manipulation of date objects.
21
+ */
22
+ export declare const plainDate: <C extends Interface<ReactiveElement>, V>(config?: SbbPlainDateConfiguration) => (target: ClassAccessorDecoratorTarget<C, V>, context: ClassAccessorDecoratorContext<C, V>) => any;
23
+ //# sourceMappingURL=plain-date.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain-date.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/decorators/plain-date.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAGtE,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,gBAAgB,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,yBAKhC,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;CAClD;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,EAC/D,SAAS,yBAAyB,MAGhC,QAAQ,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,SAAS,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,KAC3C,GA8BJ,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { readConfig } from "../config.js";
2
+ import { defaultDateAdapter } from "../datetime.js";
3
+ const plainDateConverter = {
4
+ toAttribute(value, _type) {
5
+ var _a;
6
+ const dateAdapter = ((_a = readConfig().datetime) == null ? void 0 : _a.dateAdapter) ?? defaultDateAdapter;
7
+ return dateAdapter.isValid(value) ? dateAdapter.toIso8601(value) : null;
8
+ }
9
+ };
10
+ const plainDate = (config) => {
11
+ return (target, context) => {
12
+ const { kind } = context;
13
+ if (kind === "accessor") {
14
+ return {
15
+ set(value) {
16
+ var _a;
17
+ const dateAdapter = ((_a = readConfig().datetime) == null ? void 0 : _a.dateAdapter) ?? defaultDateAdapter;
18
+ value = dateAdapter.getValidDateOrNull(dateAdapter.deserialize(value));
19
+ value = value ? dateAdapter.createDate(dateAdapter.getYear(value), dateAdapter.getMonth(value), dateAdapter.getDate(value)) : null;
20
+ target.set.call(this, value);
21
+ },
22
+ get() {
23
+ var _a, _b;
24
+ const dateAdapter = ((_a = readConfig().datetime) == null ? void 0 : _a.dateAdapter) ?? defaultDateAdapter;
25
+ const value = target.get.call(this);
26
+ return dateAdapter.isValid(value) ? dateAdapter.clone(value) : (_b = config == null ? void 0 : config.fallback) == null ? void 0 : _b.call(config, dateAdapter);
27
+ }
28
+ };
29
+ }
30
+ throw new Error(`Unsupported decorator location: ${kind}`);
31
+ };
32
+ };
33
+ export {
34
+ plainDate,
35
+ plainDateConverter
36
+ };
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhaW4tZGF0ZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvZGVjb3JhdG9ycy9wbGFpbi1kYXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tcGxleEF0dHJpYnV0ZUNvbnZlcnRlciwgUmVhY3RpdmVFbGVtZW50IH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgcmVhZENvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy5qcyc7XG5pbXBvcnQgeyB0eXBlIERhdGVBZGFwdGVyLCBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi9kYXRldGltZS5qcyc7XG5cbmltcG9ydCB0eXBlIHsgSW50ZXJmYWNlIH0gZnJvbSAnLi9iYXNlLmpzJztcblxuLyoqXG4gKiBXaWxsIGNvbnZlcnQgZGF0ZSBvYmplY3QgdmFsdWVzIHRvIElTTzg2MDEgZm9ybWF0dGVkIHN0cmluZ3MgYXMgYXR0cmlidXRlcy5cbiAqIFNob3VsZCBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggdGhlIGBwbGFpbkRhdGVgIGRlY29yYXRvci5cbiAqL1xuZXhwb3J0IGNvbnN0IHBsYWluRGF0ZUNvbnZlcnRlcjogQ29tcGxleEF0dHJpYnV0ZUNvbnZlcnRlciA9IHtcbiAgdG9BdHRyaWJ1dGUodmFsdWUsIF90eXBlKSB7XG4gICAgY29uc3QgZGF0ZUFkYXB0ZXIgPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcbiAgICByZXR1cm4gZGF0ZUFkYXB0ZXIuaXNWYWxpZCh2YWx1ZSkgPyBkYXRlQWRhcHRlci50b0lzbzg2MDEodmFsdWUpIDogbnVsbDtcbiAgfSxcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2JiUGxhaW5EYXRlQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBQcm92aWRlIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCBpZiB0aGUgaW50ZXJuYWwgdmFsdWUgaXMgbnVsbC5cbiAgICogQHBhcmFtIGRhdGFBZGFwdGVyIFRoZSBjdXJyZW50IGRhdGUgYWRhcHRlci5cbiAgICogQHJldHVybnMgQSBkYXRlIG9iamVjdC5cbiAgICovXG4gIGZhbGxiYWNrPzogPFQ+KGRhdGFBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPikgPT4gVDtcbn1cblxuLyoqXG4gKiBEZWNvcmF0b3IgdGhhdCB0cmllcyB0byBkZXNlcmlhbGl6ZSB0aGUgZ2l2ZW4gdmFsdWUgdG8gYSBkYXRlIG9iamVjdFxuICogYW5kIGFkYXB0cyB0aGUgZ2V0dGVyIHRvIG9ubHkgcmV0dXJuIGEgY29weSBvZiB0aGUgaW50ZXJuYWwgdmFsdWUsXG4gKiBpbiBvcmRlciB0byBhdm9pZCBvdXRzaWRlIG1hbmlwdWxhdGlvbiBvZiBkYXRlIG9iamVjdHMuXG4gKi9cbmV4cG9ydCBjb25zdCBwbGFpbkRhdGUgPSA8QyBleHRlbmRzIEludGVyZmFjZTxSZWFjdGl2ZUVsZW1lbnQ+LCBWPihcbiAgY29uZmlnPzogU2JiUGxhaW5EYXRlQ29uZmlndXJhdGlvbixcbikgPT4ge1xuICByZXR1cm4gKFxuICAgIHRhcmdldDogQ2xhc3NBY2Nlc3NvckRlY29yYXRvclRhcmdldDxDLCBWPixcbiAgICBjb250ZXh0OiBDbGFzc0FjY2Vzc29yRGVjb3JhdG9yQ29udGV4dDxDLCBWPixcbiAgKTogYW55ID0+IHtcbiAgICBjb25zdCB7IGtpbmQgfSA9IGNvbnRleHQ7XG4gICAgaWYgKGtpbmQgPT09ICdhY2Nlc3NvcicpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNldCh0aGlzOiBDLCB2YWx1ZSkge1xuICAgICAgICAgIGNvbnN0IGRhdGVBZGFwdGVyID0gcmVhZENvbmZpZygpLmRhdGV0aW1lPy5kYXRlQWRhcHRlciA/PyBkZWZhdWx0RGF0ZUFkYXB0ZXI7XG4gICAgICAgICAgdmFsdWUgPSBkYXRlQWRhcHRlci5nZXRWYWxpZERhdGVPck51bGwoZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpKTtcbiAgICAgICAgICAvLyBXZSB3YW50IHRvIGNvcHkgdGhlIHZhbHVlIG9mIHRoZSBkYXRlIHdpdGhvdXQgdGhlIHRpbWUgcGFydC5cbiAgICAgICAgICAvLyBBcyBEYXRlQWRhcHRlci5jbG9uZSBkb2VzIG5vdCBndWFyYW50ZWUgdGhhdCwgd2UgdXNlIGNyZWF0ZURhdGUuXG4gICAgICAgICAgdmFsdWUgPSB2YWx1ZVxuICAgICAgICAgICAgPyBkYXRlQWRhcHRlci5jcmVhdGVEYXRlKFxuICAgICAgICAgICAgICAgIGRhdGVBZGFwdGVyLmdldFllYXIodmFsdWUpLFxuICAgICAgICAgICAgICAgIGRhdGVBZGFwdGVyLmdldE1vbnRoKHZhbHVlKSxcbiAgICAgICAgICAgICAgICBkYXRlQWRhcHRlci5nZXREYXRlKHZhbHVlKSxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgIHRhcmdldC5zZXQuY2FsbCh0aGlzLCB2YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCh0aGlzOiBDKSB7XG4gICAgICAgICAgY29uc3QgZGF0ZUFkYXB0ZXIgPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRhcmdldC5nZXQuY2FsbCh0aGlzKTtcbiAgICAgICAgICByZXR1cm4gZGF0ZUFkYXB0ZXIuaXNWYWxpZCh2YWx1ZSlcbiAgICAgICAgICAgID8gZGF0ZUFkYXB0ZXIuY2xvbmUodmFsdWUpXG4gICAgICAgICAgICA6IChjb25maWc/LmZhbGxiYWNrPy48Vj4oZGF0ZUFkYXB0ZXIpIGFzIFYpO1xuICAgICAgICB9LFxuICAgICAgfSBzYXRpc2ZpZXMgQ2xhc3NBY2Nlc3NvckRlY29yYXRvclJlc3VsdDxDLCBWPjtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGRlY29yYXRvciBsb2NhdGlvbjogJHtraW5kfWApO1xuICB9O1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVdPLE1BQU0scUJBQWdEO0FBQUEsRUFDM0QsWUFBWSxPQUFPLE9BQUs7O0FBQ3RCLFVBQU0sZ0JBQWMsZ0JBQUEsRUFBYSxhQUFiLG1CQUF1QixnQkFBZTtBQUMxRCxXQUFPLFlBQVksUUFBUSxLQUFLLElBQUksWUFBWSxVQUFVLEtBQUssSUFBSTtBQUFBLEVBQUE7O0FBa0IxRCxNQUFBLFlBQVksQ0FDdkIsV0FDRTtBQUNLLFNBQUEsQ0FDTCxRQUNBLFlBQ087QUFDRCxVQUFBLEVBQUUsU0FBUztBQUNqQixRQUFJLFNBQVMsWUFBWTtBQUNoQixhQUFBO0FBQUEsUUFDTCxJQUFhLE9BQUs7O0FBQ2hCLGdCQUFNLGdCQUFjLGdCQUFBLEVBQWEsYUFBYixtQkFBdUIsZ0JBQWU7QUFDMUQsa0JBQVEsWUFBWSxtQkFBbUIsWUFBWSxZQUFZLEtBQUssQ0FBQztBQUdyRSxrQkFBUSxRQUNKLFlBQVksV0FDVixZQUFZLFFBQVEsS0FBSyxHQUN6QixZQUFZLFNBQVMsS0FBSyxHQUMxQixZQUFZLFFBQVEsS0FBSyxDQUFDLElBRTVCO0FBQ0csaUJBQUEsSUFBSSxLQUFLLE1BQU0sS0FBSztBQUFBLFFBQzdCO0FBQUEsUUFDQSxNQUFHOztBQUNELGdCQUFNLGdCQUFjLGdCQUFBLEVBQWEsYUFBYixtQkFBdUIsZ0JBQWU7QUFDMUQsZ0JBQU0sUUFBUSxPQUFPLElBQUksS0FBSyxJQUFJO0FBQzNCLGlCQUFBLFlBQVksUUFBUSxLQUFLLElBQzVCLFlBQVksTUFBTSxLQUFLLEtBQ3RCLHNDQUFRLGFBQVIsZ0NBQXNCO0FBQUEsUUFBVztBQUFBOztBQUs1QyxVQUFNLElBQUksTUFBTSxtQ0FBbUMsSUFBSSxFQUFFO0FBQUEsRUFDM0Q7QUFDRjsifQ==
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * @entrypoint
3
3
  */
4
- export * from './decorators/date-converter.js';
5
- export * from './decorators/date-only-type.js';
6
4
  export * from './decorators/force-type.js';
7
5
  export * from './decorators/get-override.js';
8
6
  export * from './decorators/handle-distinct-change.js';
9
7
  export * from './decorators/host-attributes.js';
8
+ export * from './decorators/id-reference.js';
10
9
  export * from './decorators/omit-empty-converter.js';
10
+ export * from './decorators/plain-date.js';
11
11
  export * from './decorators/slot-state.js';
12
12
  //# sourceMappingURL=decorators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/decorators.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/decorators.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC"}
@@ -1,19 +1,20 @@
1
- import { dateConverter } from "./decorators/date-converter.js";
2
- import { DateOnlyType } from "./decorators/date-only-type.js";
3
1
  import { forceType } from "./decorators/force-type.js";
4
2
  import { getOverride } from "./decorators/get-override.js";
5
3
  import { handleDistinctChange } from "./decorators/handle-distinct-change.js";
6
4
  import { hostAttributes } from "./decorators/host-attributes.js";
5
+ import { idReference } from "./decorators/id-reference.js";
7
6
  import { omitEmptyConverter } from "./decorators/omit-empty-converter.js";
7
+ import { plainDate, plainDateConverter } from "./decorators/plain-date.js";
8
8
  import { slotState } from "./decorators/slot-state.js";
9
9
  export {
10
- DateOnlyType,
11
- dateConverter,
12
10
  forceType,
13
11
  getOverride,
14
12
  handleDistinctChange,
15
13
  hostAttributes,
14
+ idReference,
16
15
  omitEmptyConverter,
16
+ plainDate,
17
+ plainDateConverter,
17
18
  slotState
18
19
  };
19
20
  //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OyJ9
@@ -3,9 +3,7 @@
3
3
  */
4
4
  export * from './dom/animation.js';
5
5
  export * from './dom/breakpoint.js';
6
- export * from './dom/find-referenced-element.js';
7
6
  export * from './dom/host-context.js';
8
- export * from './dom/input-element.js';
9
7
  export * from './dom/lean-context.js';
10
8
  export * from './dom/set-or-remove-attribute.js';
11
9
  export * from './dom/platform.js';
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/dom.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/dom.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
@@ -1,8 +1,6 @@
1
1
  import { isZeroAnimationDuration } from "./dom/animation.js";
2
2
  import { breakpoints, isBreakpoint } from "./dom/breakpoint.js";
3
- import { findReferencedElement } from "./dom/find-referenced-element.js";
4
3
  import { ACTION_ELEMENTS, hostContext } from "./dom/host-context.js";
5
- import { findInput } from "./dom/input-element.js";
6
4
  import { isLean } from "./dom/lean-context.js";
7
5
  import { setOrRemoveAttribute } from "./dom/set-or-remove-attribute.js";
8
6
  import { isAndroid, isBlink, isChromium, isEdge, isFirefox, isIOS, isMacOS, isNextjs, isSafari, isTrident, isWebkit } from "./dom/platform.js";
@@ -11,8 +9,6 @@ export {
11
9
  ACTION_ELEMENTS,
12
10
  SbbScrollHandler,
13
11
  breakpoints,
14
- findInput,
15
- findReferencedElement,
16
12
  hostContext,
17
13
  isAndroid,
18
14
  isBlink,
@@ -31,4 +27,4 @@ export {
31
27
  pageScrollDisabled,
32
28
  setOrRemoveAttribute
33
29
  };
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OyJ9
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OzsifQ==
@@ -3,10 +3,4 @@
3
3
  * This way, an event triggered in the Shadow DOM can cross its boundary and can be listened on e.g. the host component.
4
4
  */
5
5
  export declare function forwardEvent(event: Event, element: HTMLElement | Document): void;
6
- /**
7
- * Forwards an event to the host element provided.
8
- * This way, an event triggered in the ShadowDOM can cross its boundary and can be listened on the host component.
9
- * @deprecated will be removed with next major version, use forwardEvent as alternative
10
- */
11
- export declare const forwardEventToHost: typeof forwardEvent;
12
6
  //# sourceMappingURL=forward-event.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"forward-event.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/eventing/forward-event.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,IAAI,CAIhF;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,qBAAe,CAAC"}
1
+ {"version":3,"file":"forward-event.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/eventing/forward-event.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,GAAG,QAAQ,GAAG,IAAI,CAIhF"}
@@ -3,9 +3,7 @@ function forwardEvent(event, element) {
3
3
  const copiedEvent = new eventConstructor(event.type, event);
4
4
  element.dispatchEvent(copiedEvent);
5
5
  }
6
- const forwardEventToHost = forwardEvent;
7
6
  export {
8
- forwardEvent,
9
- forwardEventToHost
7
+ forwardEvent
10
8
  };
11
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yd2FyZC1ldmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvZXZlbnRpbmcvZm9yd2FyZC1ldmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEZvcndhcmRzIGFuIGV2ZW50IHRvIHRoZSBlbGVtZW50IHByb3ZpZGVkLlxuICogVGhpcyB3YXksIGFuIGV2ZW50IHRyaWdnZXJlZCBpbiB0aGUgU2hhZG93IERPTSBjYW4gY3Jvc3MgaXRzIGJvdW5kYXJ5IGFuZCBjYW4gYmUgbGlzdGVuZWQgb24gZS5nLiB0aGUgaG9zdCBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3J3YXJkRXZlbnQoZXZlbnQ6IEV2ZW50LCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IERvY3VtZW50KTogdm9pZCB7XG4gIGNvbnN0IGV2ZW50Q29uc3RydWN0b3IgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoZXZlbnQpLmNvbnN0cnVjdG9yO1xuICBjb25zdCBjb3BpZWRFdmVudDogRXZlbnQgPSBuZXcgZXZlbnRDb25zdHJ1Y3RvcihldmVudC50eXBlLCBldmVudCk7XG4gIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjb3BpZWRFdmVudCk7XG59XG5cbi8qKlxuICogRm9yd2FyZHMgYW4gZXZlbnQgdG8gdGhlIGhvc3QgZWxlbWVudCBwcm92aWRlZC5cbiAqIFRoaXMgd2F5LCBhbiBldmVudCB0cmlnZ2VyZWQgaW4gdGhlIFNoYWRvd0RPTSBjYW4gY3Jvc3MgaXRzIGJvdW5kYXJ5IGFuZCBjYW4gYmUgbGlzdGVuZWQgb24gdGhlIGhvc3QgY29tcG9uZW50LlxuICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIHdpdGggbmV4dCBtYWpvciB2ZXJzaW9uLCB1c2UgZm9yd2FyZEV2ZW50IGFzIGFsdGVybmF0aXZlXG4gKi9cbmV4cG9ydCBjb25zdCBmb3J3YXJkRXZlbnRUb0hvc3QgPSBmb3J3YXJkRXZlbnQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSWdCLFNBQUEsYUFBYSxPQUFjLFNBQStCO0FBQ3hFLFFBQU0sbUJBQW1CLE9BQU8sZUFBZSxLQUFLLEVBQUU7QUFDdEQsUUFBTSxjQUFxQixJQUFJLGlCQUFpQixNQUFNLE1BQU0sS0FBSztBQUNqRSxVQUFRLGNBQWMsV0FBVztBQUNuQztBQU9PLE1BQU0scUJBQXFCOyJ9
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yd2FyZC1ldmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvZXZlbnRpbmcvZm9yd2FyZC1ldmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEZvcndhcmRzIGFuIGV2ZW50IHRvIHRoZSBlbGVtZW50IHByb3ZpZGVkLlxuICogVGhpcyB3YXksIGFuIGV2ZW50IHRyaWdnZXJlZCBpbiB0aGUgU2hhZG93IERPTSBjYW4gY3Jvc3MgaXRzIGJvdW5kYXJ5IGFuZCBjYW4gYmUgbGlzdGVuZWQgb24gZS5nLiB0aGUgaG9zdCBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3J3YXJkRXZlbnQoZXZlbnQ6IEV2ZW50LCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IERvY3VtZW50KTogdm9pZCB7XG4gIGNvbnN0IGV2ZW50Q29uc3RydWN0b3IgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoZXZlbnQpLmNvbnN0cnVjdG9yO1xuICBjb25zdCBjb3BpZWRFdmVudDogRXZlbnQgPSBuZXcgZXZlbnRDb25zdHJ1Y3RvcihldmVudC50eXBlLCBldmVudCk7XG4gIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjb3BpZWRFdmVudCk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSWdCLFNBQUEsYUFBYSxPQUFjLFNBQStCO0FBQ3hFLFFBQU0sbUJBQW1CLE9BQU8sZUFBZSxLQUFLLEVBQUU7QUFDdEQsUUFBTSxjQUFxQixJQUFJLGlCQUFpQixNQUFNLE1BQU0sS0FBSztBQUNqRSxVQUFRLGNBQWMsV0FBVztBQUNuQzsifQ==
@@ -2,14 +2,13 @@ import { composedPathHasAttribute } from "./eventing/composed-path-has-attribute
2
2
  import { EventEmitter } from "./eventing/event-emitter.js";
3
3
  import { getEventTarget } from "./eventing/event-target.js";
4
4
  import { preventScrollOnSpacebarPress } from "./eventing/form-element-handlers.js";
5
- import { forwardEvent, forwardEventToHost } from "./eventing/forward-event.js";
5
+ import { forwardEvent } from "./eventing/forward-event.js";
6
6
  import { isEventPrevented } from "./eventing/is-event-prevented.js";
7
7
  import { throttle } from "./eventing/throttle.js";
8
8
  export {
9
9
  EventEmitter,
10
10
  composedPathHasAttribute,
11
11
  forwardEvent,
12
- forwardEventToHost,
13
12
  getEventTarget,
14
13
  isEventPrevented,
15
14
  preventScrollOnSpacebarPress,
@@ -66,7 +66,6 @@ export declare const i18nExpanded: Record<string, string>;
66
66
  export declare const i18nCollapsed: Record<string, string>;
67
67
  export declare const i18nMapContainerButtonLabel: Record<string, string>;
68
68
  export declare const i18nBreadcrumbEllipsisButtonLabel: Record<string, string>;
69
- export declare const i18nTimeInputChange: Record<string, string>;
70
69
  export declare const i18nClearInput: Record<string, string>;
71
70
  export declare const i18nFlipCard: Record<string, string>;
72
71
  export declare const i18nReverseCard: Record<string, string>;
@@ -85,6 +84,10 @@ export declare const i18nInputRequired: Record<string, string>;
85
84
  export declare const i18nDateInvalid: Record<string, string>;
86
85
  export declare const i18nDateMin: (min: string) => Record<string, string>;
87
86
  export declare const i18nDateMax: (max: string) => Record<string, string>;
87
+ export declare const i18nTimeInputChange: (value: string) => Record<string, string>;
88
+ export declare const i18nTimeInvalid: Record<string, string>;
89
+ export declare const i18nTimeMax: Record<string, string>;
90
+ export declare const i18nTimeMaxLength: Record<string, string>;
88
91
  export declare const i18nChipDelete: Record<string, string>;
89
92
  export declare const i18nChipGroupInputDescription: Record<string, string>;
90
93
  //# sourceMappingURL=i18n.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/i18n/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/i18n/i18n.ts"],"names":[],"mappings":"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"}