@sbb-esta/lyne-elements 4.3.1 → 4.5.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 (1057) hide show
  1. package/autocomplete/autocomplete-base-element.js +88 -64
  2. package/autocomplete/autocomplete.component.js +12 -12
  3. package/button/common.js +1 -1
  4. package/button/mini-button-group/mini-button-group.component.js +14 -14
  5. package/button.js +1 -1
  6. package/carousel/carousel/carousel.component.js +15 -15
  7. package/carousel/carousel-item/carousel-item.component.js +1 -1
  8. package/chip/chip/chip.component.js +36 -38
  9. package/chip/chip-group/chip-group.component.js +13 -17
  10. package/core/a11y/focus-trap-controller.js +10 -10
  11. package/core/datetime/date-adapter.js +51 -17
  12. package/core/datetime/native-date-adapter.js +61 -86
  13. package/core/datetime/temporal-date-adapter.js +139 -0
  14. package/core/datetime.js +15 -12
  15. package/core/styles/core/mediaqueries.scss +1 -1
  16. package/core/styles/core.scss +29 -1
  17. package/core/styles/mixins/image.scss +7 -1
  18. package/core/styles/mixins/table.scss +24 -19
  19. package/core.css +80 -0
  20. package/custom-elements.json +1750 -779
  21. package/datepicker/common.js +5 -3
  22. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +13 -11
  23. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +12 -10
  24. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +21 -19
  25. package/datepicker-button-Debzp_As.js +5 -0
  26. package/datepicker.js +6 -4
  27. package/development/autocomplete/autocomplete-base-element.d.ts +17 -3
  28. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  29. package/development/autocomplete/autocomplete-base-element.js +57 -12
  30. package/development/autocomplete/autocomplete.component.d.ts +0 -1
  31. package/development/autocomplete/autocomplete.component.d.ts.map +1 -1
  32. package/development/autocomplete/autocomplete.component.js +9 -7
  33. package/development/button/common.js +1 -1
  34. package/development/button/mini-button-group/mini-button-group.component.js +10 -14
  35. package/development/button.js +1 -1
  36. package/development/carousel/carousel/carousel.component.js +3 -5
  37. package/development/carousel/carousel-item/carousel-item.component.js +5 -1
  38. package/development/chip/chip/chip.component.d.ts.map +1 -1
  39. package/development/chip/chip/chip.component.js +28 -48
  40. package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
  41. package/development/chip/chip-group/chip-group.component.js +22 -28
  42. package/development/core/a11y/focus-trap-controller.d.ts.map +1 -1
  43. package/development/core/a11y/focus-trap-controller.js +4 -6
  44. package/development/core/base-elements/action-base-element.js +1 -4
  45. package/development/core/controllers/inert-controller.js +1 -3
  46. package/development/core/controllers/overlay-position-controller.d.ts.map +1 -1
  47. package/development/core/controllers/overlay-position-controller.js +1 -20
  48. package/development/core/datetime/date-adapter.d.ts +11 -3
  49. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  50. package/development/core/datetime/date-adapter.js +39 -1
  51. package/development/core/datetime/native-date-adapter.d.ts +1 -5
  52. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  53. package/development/core/datetime/native-date-adapter.js +8 -39
  54. package/{core/datetime/native-date-adapter.d.ts → development/core/datetime/temporal-date-adapter.d.ts} +23 -28
  55. package/development/core/datetime/temporal-date-adapter.d.ts.map +1 -0
  56. package/development/core/datetime/temporal-date-adapter.js +144 -0
  57. package/development/core/datetime.d.ts +1 -0
  58. package/development/core/datetime.d.ts.map +1 -1
  59. package/development/core/datetime.js +5 -2
  60. package/development/core/decorators/id-reference.js +1 -5
  61. package/development/datepicker/common.d.ts.map +1 -1
  62. package/development/datepicker/common.js +4 -2
  63. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  64. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -8
  65. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  66. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -8
  67. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  68. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +7 -12
  69. package/development/datepicker-button-BDlxIp9r.js +9 -0
  70. package/development/datepicker.js +4 -2
  71. package/development/form-field/form-field/form-field.component.js +1 -4
  72. package/development/image/image.component.d.ts +0 -1
  73. package/development/image/image.component.d.ts.map +1 -1
  74. package/development/image/image.component.js +1 -15
  75. package/development/{mini-button-label-common-0DeEC1qs.js → mini-button-label-common-BaMSfSTe.js} +13 -63
  76. package/development/radio-button/common.js +1 -1
  77. package/development/radio-button/radio-button/radio-button.component.js +4 -3
  78. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  79. package/development/radio-button/radio-button-group/radio-button-group.component.js +1 -1
  80. package/development/{radio-button-common-B3kVD7QV.js → radio-button-common-4_yg7r8b.js} +3 -2
  81. package/development/radio-button.js +1 -1
  82. package/development/select/select.component.d.ts +1 -1
  83. package/development/select/select.component.d.ts.map +1 -1
  84. package/development/select/select.component.js +17 -8
  85. package/development/tabs/common.js +3 -2
  86. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  87. package/development/tabs/tab/tab.component.js +2 -1
  88. package/development/tabs/tab-group/tab-group.component.d.ts +12 -7
  89. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  90. package/development/tabs/tab-group/tab-group.component.js +48 -23
  91. package/development/tabs/tab-label/tab-label.component.js +1 -7
  92. package/development/tag/tag-group/tag-group.component.js +1 -3
  93. package/development/toggle/toggle/toggle.component.js +1 -4
  94. package/image/image.component.js +30 -36
  95. package/index.d.ts +155 -156
  96. package/index.js +155 -155
  97. package/mini-button-label-common-Dx9JhmQ6.js +11 -0
  98. package/off-brand-theme.css +114 -59
  99. package/package.json +19 -19
  100. package/radio-button/common.js +1 -1
  101. package/radio-button/radio-button/radio-button.component.js +10 -10
  102. package/{radio-button-common-1Yg7p8dc.js → radio-button-common-Bf2b18jm.js} +1 -1
  103. package/radio-button.js +1 -1
  104. package/safety-theme.css +114 -59
  105. package/select/select.component.js +20 -20
  106. package/standard-theme.css +114 -59
  107. package/table.css +26 -58
  108. package/tabs/common.js +1 -1
  109. package/tabs/tab/tab.component.js +4 -4
  110. package/tabs/tab-group/tab-group.component.js +67 -54
  111. package/accordion/accordion.component.d.ts +0 -38
  112. package/accordion/accordion.component.d.ts.map +0 -1
  113. package/accordion.d.ts +0 -5
  114. package/accordion.d.ts.map +0 -1
  115. package/action-group/action-group.component.d.ts +0 -46
  116. package/action-group/action-group.component.d.ts.map +0 -1
  117. package/action-group.d.ts +0 -5
  118. package/action-group.d.ts.map +0 -1
  119. package/alert/alert/alert.component.d.ts +0 -51
  120. package/alert/alert/alert.component.d.ts.map +0 -1
  121. package/alert/alert-group/alert-group.component.d.ts +0 -39
  122. package/alert/alert-group/alert-group.component.d.ts.map +0 -1
  123. package/alert/alert-group.d.ts +0 -5
  124. package/alert/alert-group.d.ts.map +0 -1
  125. package/alert/alert.d.ts +0 -5
  126. package/alert/alert.d.ts.map +0 -1
  127. package/alert.d.ts +0 -6
  128. package/alert.d.ts.map +0 -1
  129. package/autocomplete/autocomplete-base-element.d.ts +0 -123
  130. package/autocomplete/autocomplete-base-element.d.ts.map +0 -1
  131. package/autocomplete/autocomplete.component.d.ts +0 -31
  132. package/autocomplete/autocomplete.component.d.ts.map +0 -1
  133. package/autocomplete.d.ts +0 -6
  134. package/autocomplete.d.ts.map +0 -1
  135. package/breadcrumb/breadcrumb/breadcrumb.component.d.ts +0 -20
  136. package/breadcrumb/breadcrumb/breadcrumb.component.d.ts.map +0 -1
  137. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +0 -50
  138. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +0 -1
  139. package/breadcrumb/breadcrumb-group.d.ts +0 -5
  140. package/breadcrumb/breadcrumb-group.d.ts.map +0 -1
  141. package/breadcrumb/breadcrumb.d.ts +0 -5
  142. package/breadcrumb/breadcrumb.d.ts.map +0 -1
  143. package/breadcrumb.d.ts +0 -6
  144. package/breadcrumb.d.ts.map +0 -1
  145. package/button/accent-button/accent-button.component.d.ts +0 -20
  146. package/button/accent-button/accent-button.component.d.ts.map +0 -1
  147. package/button/accent-button-link/accent-button-link.component.d.ts +0 -20
  148. package/button/accent-button-link/accent-button-link.component.d.ts.map +0 -1
  149. package/button/accent-button-link.d.ts +0 -5
  150. package/button/accent-button-link.d.ts.map +0 -1
  151. package/button/accent-button-static/accent-button-static.component.d.ts +0 -20
  152. package/button/accent-button-static/accent-button-static.component.d.ts.map +0 -1
  153. package/button/accent-button-static.d.ts +0 -5
  154. package/button/accent-button-static.d.ts.map +0 -1
  155. package/button/accent-button.d.ts +0 -5
  156. package/button/accent-button.d.ts.map +0 -1
  157. package/button/button/button.component.d.ts +0 -20
  158. package/button/button/button.component.d.ts.map +0 -1
  159. package/button/button-link/button-link.component.d.ts +0 -20
  160. package/button/button-link/button-link.component.d.ts.map +0 -1
  161. package/button/button-link.d.ts +0 -5
  162. package/button/button-link.d.ts.map +0 -1
  163. package/button/button-static/button-static.component.d.ts +0 -20
  164. package/button/button-static/button-static.component.d.ts.map +0 -1
  165. package/button/button-static.d.ts +0 -5
  166. package/button/button-static.d.ts.map +0 -1
  167. package/button/button.d.ts +0 -5
  168. package/button/button.d.ts.map +0 -1
  169. package/button/common/button-common.d.ts +0 -11
  170. package/button/common/button-common.d.ts.map +0 -1
  171. package/button/common.d.ts +0 -5
  172. package/button/common.d.ts.map +0 -1
  173. package/button/mini-button/mini-button.component.d.ts +0 -21
  174. package/button/mini-button/mini-button.component.d.ts.map +0 -1
  175. package/button/mini-button-group/mini-button-group.component.d.ts +0 -31
  176. package/button/mini-button-group/mini-button-group.component.d.ts.map +0 -1
  177. package/button/mini-button-group.d.ts +0 -5
  178. package/button/mini-button-group.d.ts.map +0 -1
  179. package/button/mini-button-link/mini-button-link.component.d.ts +0 -21
  180. package/button/mini-button-link/mini-button-link.component.d.ts.map +0 -1
  181. package/button/mini-button-link.d.ts +0 -5
  182. package/button/mini-button-link.d.ts.map +0 -1
  183. package/button/mini-button.d.ts +0 -5
  184. package/button/mini-button.d.ts.map +0 -1
  185. package/button/secondary-button/secondary-button.component.d.ts +0 -20
  186. package/button/secondary-button/secondary-button.component.d.ts.map +0 -1
  187. package/button/secondary-button-link/secondary-button-link.component.d.ts +0 -20
  188. package/button/secondary-button-link/secondary-button-link.component.d.ts.map +0 -1
  189. package/button/secondary-button-link.d.ts +0 -5
  190. package/button/secondary-button-link.d.ts.map +0 -1
  191. package/button/secondary-button-static/secondary-button-static.component.d.ts +0 -20
  192. package/button/secondary-button-static/secondary-button-static.component.d.ts.map +0 -1
  193. package/button/secondary-button-static.d.ts +0 -5
  194. package/button/secondary-button-static.d.ts.map +0 -1
  195. package/button/secondary-button.d.ts +0 -5
  196. package/button/secondary-button.d.ts.map +0 -1
  197. package/button/transparent-button/transparent-button.component.d.ts +0 -20
  198. package/button/transparent-button/transparent-button.component.d.ts.map +0 -1
  199. package/button/transparent-button-link/transparent-button-link.component.d.ts +0 -20
  200. package/button/transparent-button-link/transparent-button-link.component.d.ts.map +0 -1
  201. package/button/transparent-button-link.d.ts +0 -5
  202. package/button/transparent-button-link.d.ts.map +0 -1
  203. package/button/transparent-button-static/transparent-button-static.component.d.ts +0 -20
  204. package/button/transparent-button-static/transparent-button-static.component.d.ts.map +0 -1
  205. package/button/transparent-button-static.d.ts +0 -5
  206. package/button/transparent-button-static.d.ts.map +0 -1
  207. package/button/transparent-button.d.ts +0 -5
  208. package/button/transparent-button.d.ts.map +0 -1
  209. package/button.d.ts +0 -20
  210. package/button.d.ts.map +0 -1
  211. package/calendar/calendar.component.d.ts +0 -310
  212. package/calendar/calendar.component.d.ts.map +0 -1
  213. package/calendar.d.ts +0 -5
  214. package/calendar.d.ts.map +0 -1
  215. package/card/card/card.component.d.ts +0 -22
  216. package/card/card/card.component.d.ts.map +0 -1
  217. package/card/card-badge/card-badge.component.d.ts +0 -23
  218. package/card/card-badge/card-badge.component.d.ts.map +0 -1
  219. package/card/card-badge.d.ts +0 -5
  220. package/card/card-badge.d.ts.map +0 -1
  221. package/card/card-button/card-button.component.d.ts +0 -18
  222. package/card/card-button/card-button.component.d.ts.map +0 -1
  223. package/card/card-button.d.ts +0 -5
  224. package/card/card-button.d.ts.map +0 -1
  225. package/card/card-link/card-link.component.d.ts +0 -18
  226. package/card/card-link/card-link.component.d.ts.map +0 -1
  227. package/card/card-link.d.ts +0 -5
  228. package/card/card-link.d.ts.map +0 -1
  229. package/card/card.d.ts +0 -5
  230. package/card/card.d.ts.map +0 -1
  231. package/card/common/card-action-common.d.ts +0 -8
  232. package/card/common/card-action-common.d.ts.map +0 -1
  233. package/card/common.d.ts +0 -5
  234. package/card/common.d.ts.map +0 -1
  235. package/card.d.ts +0 -9
  236. package/card.d.ts.map +0 -1
  237. package/carousel/carousel/carousel.component.d.ts +0 -34
  238. package/carousel/carousel/carousel.component.d.ts.map +0 -1
  239. package/carousel/carousel-item/carousel-item.component.d.ts +0 -29
  240. package/carousel/carousel-item/carousel-item.component.d.ts.map +0 -1
  241. package/carousel/carousel-item.d.ts +0 -5
  242. package/carousel/carousel-item.d.ts.map +0 -1
  243. package/carousel/carousel-list/carousel-list.component.d.ts +0 -35
  244. package/carousel/carousel-list/carousel-list.component.d.ts.map +0 -1
  245. package/carousel/carousel-list.d.ts +0 -5
  246. package/carousel/carousel-list.d.ts.map +0 -1
  247. package/carousel/carousel.d.ts +0 -5
  248. package/carousel/carousel.d.ts.map +0 -1
  249. package/carousel.d.ts +0 -7
  250. package/carousel.d.ts.map +0 -1
  251. package/checkbox/checkbox/checkbox.component.d.ts +0 -33
  252. package/checkbox/checkbox/checkbox.component.d.ts.map +0 -1
  253. package/checkbox/checkbox-group/checkbox-group.component.d.ts +0 -39
  254. package/checkbox/checkbox-group/checkbox-group.component.d.ts.map +0 -1
  255. package/checkbox/checkbox-group.d.ts +0 -5
  256. package/checkbox/checkbox-group.d.ts.map +0 -1
  257. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts +0 -27
  258. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +0 -1
  259. package/checkbox/checkbox-panel.d.ts +0 -5
  260. package/checkbox/checkbox-panel.d.ts.map +0 -1
  261. package/checkbox/checkbox.d.ts +0 -5
  262. package/checkbox/checkbox.d.ts.map +0 -1
  263. package/checkbox/common/checkbox-common.d.ts +0 -12
  264. package/checkbox/common/checkbox-common.d.ts.map +0 -1
  265. package/checkbox/common.d.ts +0 -5
  266. package/checkbox/common.d.ts.map +0 -1
  267. package/checkbox.d.ts +0 -8
  268. package/checkbox.d.ts.map +0 -1
  269. package/chip/chip/chip.component.d.ts +0 -30
  270. package/chip/chip/chip.component.d.ts.map +0 -1
  271. package/chip/chip-group/chip-group.component.d.ts +0 -102
  272. package/chip/chip-group/chip-group.component.d.ts.map +0 -1
  273. package/chip/chip-group.d.ts +0 -5
  274. package/chip/chip-group.d.ts.map +0 -1
  275. package/chip/chip.d.ts +0 -5
  276. package/chip/chip.d.ts.map +0 -1
  277. package/chip-label/chip-label.component.d.ts +0 -20
  278. package/chip-label/chip-label.component.d.ts.map +0 -1
  279. package/chip-label.d.ts +0 -5
  280. package/chip-label.d.ts.map +0 -1
  281. package/chip.d.ts +0 -6
  282. package/chip.d.ts.map +0 -1
  283. package/clock/clock.component.d.ts +0 -77
  284. package/clock/clock.component.d.ts.map +0 -1
  285. package/clock.d.ts +0 -5
  286. package/clock.d.ts.map +0 -1
  287. package/container/container/container.component.d.ts +0 -27
  288. package/container/container/container.component.d.ts.map +0 -1
  289. package/container/container.d.ts +0 -5
  290. package/container/container.d.ts.map +0 -1
  291. package/container/sticky-bar/sticky-bar.component.d.ts +0 -58
  292. package/container/sticky-bar/sticky-bar.component.d.ts.map +0 -1
  293. package/container/sticky-bar.d.ts +0 -5
  294. package/container/sticky-bar.d.ts.map +0 -1
  295. package/container.d.ts +0 -6
  296. package/container.d.ts.map +0 -1
  297. package/core/a11y/arrow-navigation.d.ts +0 -32
  298. package/core/a11y/arrow-navigation.d.ts.map +0 -1
  299. package/core/a11y/fake-event-detection.d.ts +0 -5
  300. package/core/a11y/fake-event-detection.d.ts.map +0 -1
  301. package/core/a11y/focus-trap-controller.d.ts +0 -35
  302. package/core/a11y/focus-trap-controller.d.ts.map +0 -1
  303. package/core/a11y/focus-visible-within-controller.d.ts +0 -11
  304. package/core/a11y/focus-visible-within-controller.d.ts.map +0 -1
  305. package/core/a11y/focus.d.ts +0 -2
  306. package/core/a11y/focus.d.ts.map +0 -1
  307. package/core/a11y/input-modality-detector.d.ts +0 -58
  308. package/core/a11y/input-modality-detector.d.ts.map +0 -1
  309. package/core/a11y/interactivity-checker.d.ts +0 -52
  310. package/core/a11y/interactivity-checker.d.ts.map +0 -1
  311. package/core/a11y/live-announcer.d.ts +0 -62
  312. package/core/a11y/live-announcer.d.ts.map +0 -1
  313. package/core/a11y.d.ts +0 -12
  314. package/core/a11y.d.ts.map +0 -1
  315. package/core/base-elements/action-base-element.d.ts +0 -15
  316. package/core/base-elements/action-base-element.d.ts.map +0 -1
  317. package/core/base-elements/button-base-element.d.ts +0 -66
  318. package/core/base-elements/button-base-element.d.ts.map +0 -1
  319. package/core/base-elements/link-base-element.d.ts +0 -34
  320. package/core/base-elements/link-base-element.d.ts.map +0 -1
  321. package/core/base-elements/open-close-base-element.d.ts +0 -41
  322. package/core/base-elements/open-close-base-element.d.ts.map +0 -1
  323. package/core/base-elements.d.ts +0 -8
  324. package/core/base-elements.d.ts.map +0 -1
  325. package/core/config/config.d.ts +0 -40
  326. package/core/config/config.d.ts.map +0 -1
  327. package/core/config.d.ts +0 -5
  328. package/core/config.d.ts.map +0 -1
  329. package/core/controllers/escapable-overlay-controller.d.ts +0 -14
  330. package/core/controllers/escapable-overlay-controller.d.ts.map +0 -1
  331. package/core/controllers/id-reference-controller.d.ts +0 -21
  332. package/core/controllers/id-reference-controller.d.ts.map +0 -1
  333. package/core/controllers/inert-controller.d.ts +0 -27
  334. package/core/controllers/inert-controller.d.ts.map +0 -1
  335. package/core/controllers/language-controller.d.ts +0 -32
  336. package/core/controllers/language-controller.d.ts.map +0 -1
  337. package/core/controllers/media-matchers-controller.d.ts +0 -65
  338. package/core/controllers/media-matchers-controller.d.ts.map +0 -1
  339. package/core/controllers/overlay-position-controller.d.ts +0 -61
  340. package/core/controllers/overlay-position-controller.d.ts.map +0 -1
  341. package/core/controllers/property-watcher-controller.d.ts +0 -16
  342. package/core/controllers/property-watcher-controller.d.ts.map +0 -1
  343. package/core/controllers/slot-state-controller.d.ts +0 -45
  344. package/core/controllers/slot-state-controller.d.ts.map +0 -1
  345. package/core/controllers.d.ts +0 -12
  346. package/core/controllers.d.ts.map +0 -1
  347. package/core/datetime/date-adapter.d.ts +0 -173
  348. package/core/datetime/date-adapter.d.ts.map +0 -1
  349. package/core/datetime/native-date-adapter.d.ts.map +0 -1
  350. package/core/datetime.d.ts +0 -6
  351. package/core/datetime.d.ts.map +0 -1
  352. package/core/decorators/base.d.ts +0 -14
  353. package/core/decorators/base.d.ts.map +0 -1
  354. package/core/decorators/force-type.d.ts +0 -8
  355. package/core/decorators/force-type.d.ts.map +0 -1
  356. package/core/decorators/get-override.d.ts +0 -7
  357. package/core/decorators/get-override.d.ts.map +0 -1
  358. package/core/decorators/handle-distinct-change.d.ts +0 -8
  359. package/core/decorators/handle-distinct-change.d.ts.map +0 -1
  360. package/core/decorators/host-attributes.d.ts +0 -21
  361. package/core/decorators/host-attributes.d.ts.map +0 -1
  362. package/core/decorators/id-reference.d.ts +0 -11
  363. package/core/decorators/id-reference.d.ts.map +0 -1
  364. package/core/decorators/omit-empty-converter.d.ts +0 -8
  365. package/core/decorators/omit-empty-converter.d.ts.map +0 -1
  366. package/core/decorators/plain-date.d.ts +0 -23
  367. package/core/decorators/plain-date.d.ts.map +0 -1
  368. package/core/decorators.d.ts +0 -11
  369. package/core/decorators.d.ts.map +0 -1
  370. package/core/dom/animation.d.ts +0 -2
  371. package/core/dom/animation.d.ts.map +0 -1
  372. package/core/dom/contains-pierce-shadow-dom.d.ts +0 -3
  373. package/core/dom/contains-pierce-shadow-dom.d.ts.map +0 -1
  374. package/core/dom/lean-context.d.ts +0 -5
  375. package/core/dom/lean-context.d.ts.map +0 -1
  376. package/core/dom/platform.d.ts +0 -28
  377. package/core/dom/platform.d.ts.map +0 -1
  378. package/core/dom/queue-dom-content-loaded.d.ts +0 -5
  379. package/core/dom/queue-dom-content-loaded.d.ts.map +0 -1
  380. package/core/dom/scroll.d.ts +0 -14
  381. package/core/dom/scroll.d.ts.map +0 -1
  382. package/core/dom/set-or-remove-attribute.d.ts +0 -8
  383. package/core/dom/set-or-remove-attribute.d.ts.map +0 -1
  384. package/core/dom.d.ts +0 -11
  385. package/core/dom.d.ts.map +0 -1
  386. package/core/eventing/composed-path-has-attribute.d.ts +0 -10
  387. package/core/eventing/composed-path-has-attribute.d.ts.map +0 -1
  388. package/core/eventing/event-target.d.ts +0 -3
  389. package/core/eventing/event-target.d.ts.map +0 -1
  390. package/core/eventing/form-element-handlers.d.ts +0 -6
  391. package/core/eventing/form-element-handlers.d.ts.map +0 -1
  392. package/core/eventing/forward-event.d.ts +0 -6
  393. package/core/eventing/forward-event.d.ts.map +0 -1
  394. package/core/eventing/is-event-prevented.d.ts +0 -3
  395. package/core/eventing/is-event-prevented.d.ts.map +0 -1
  396. package/core/eventing/throttle.d.ts +0 -2
  397. package/core/eventing/throttle.d.ts.map +0 -1
  398. package/core/eventing.d.ts +0 -10
  399. package/core/eventing.d.ts.map +0 -1
  400. package/core/i18n/i18n.d.ts +0 -103
  401. package/core/i18n/i18n.d.ts.map +0 -1
  402. package/core/i18n.d.ts +0 -5
  403. package/core/i18n.d.ts.map +0 -1
  404. package/core/images.d.ts +0 -7
  405. package/core/images.d.ts.map +0 -1
  406. package/core/interfaces/overlay-close-details.d.ts +0 -6
  407. package/core/interfaces/overlay-close-details.d.ts.map +0 -1
  408. package/core/interfaces/paginator-page.d.ts +0 -7
  409. package/core/interfaces/paginator-page.d.ts.map +0 -1
  410. package/core/interfaces/types.d.ts +0 -9
  411. package/core/interfaces/types.d.ts.map +0 -1
  412. package/core/interfaces.d.ts +0 -7
  413. package/core/interfaces.d.ts.map +0 -1
  414. package/core/mixins/animation-complete-mixin.d.ts +0 -13
  415. package/core/mixins/animation-complete-mixin.d.ts.map +0 -1
  416. package/core/mixins/constructor.d.ts +0 -8
  417. package/core/mixins/constructor.d.ts.map +0 -1
  418. package/core/mixins/disabled-mixin.d.ts +0 -20
  419. package/core/mixins/disabled-mixin.d.ts.map +0 -1
  420. package/core/mixins/element-internals-mixin.d.ts +0 -49
  421. package/core/mixins/element-internals-mixin.d.ts.map +0 -1
  422. package/core/mixins/form-associated-checkbox-mixin.d.ts +0 -20
  423. package/core/mixins/form-associated-checkbox-mixin.d.ts.map +0 -1
  424. package/core/mixins/form-associated-input-mixin.d.ts +0 -32
  425. package/core/mixins/form-associated-input-mixin.d.ts.map +0 -1
  426. package/core/mixins/form-associated-mixin.d.ts +0 -53
  427. package/core/mixins/form-associated-mixin.d.ts.map +0 -1
  428. package/core/mixins/form-associated-radio-button-mixin.d.ts +0 -28
  429. package/core/mixins/form-associated-radio-button-mixin.d.ts.map +0 -1
  430. package/core/mixins/hydration-mixin.d.ts +0 -23
  431. package/core/mixins/hydration-mixin.d.ts.map +0 -1
  432. package/core/mixins/named-slot-list-mixin.d.ts +0 -36
  433. package/core/mixins/named-slot-list-mixin.d.ts.map +0 -1
  434. package/core/mixins/negative-mixin.d.ts +0 -10
  435. package/core/mixins/negative-mixin.d.ts.map +0 -1
  436. package/core/mixins/panel-mixin.d.ts +0 -21
  437. package/core/mixins/panel-mixin.d.ts.map +0 -1
  438. package/core/mixins/readonly-mixin.d.ts +0 -10
  439. package/core/mixins/readonly-mixin.d.ts.map +0 -1
  440. package/core/mixins/required-mixin.d.ts +0 -12
  441. package/core/mixins/required-mixin.d.ts.map +0 -1
  442. package/core/mixins/selection-panel-mixin.d.ts +0 -17
  443. package/core/mixins/selection-panel-mixin.d.ts.map +0 -1
  444. package/core/mixins/update-scheduler-mixin.d.ts +0 -13
  445. package/core/mixins/update-scheduler-mixin.d.ts.map +0 -1
  446. package/core/mixins.d.ts +0 -20
  447. package/core/mixins.d.ts.map +0 -1
  448. package/core/overlay/overlay-option-panel.d.ts +0 -12
  449. package/core/overlay/overlay-option-panel.d.ts.map +0 -1
  450. package/core/overlay/overlay-outside-pointer-event-listener.d.ts +0 -26
  451. package/core/overlay/overlay-outside-pointer-event-listener.d.ts.map +0 -1
  452. package/core/overlay/overlay-trigger-attributes.d.ts +0 -18
  453. package/core/overlay/overlay-trigger-attributes.d.ts.map +0 -1
  454. package/core/overlay/overlay.d.ts +0 -7
  455. package/core/overlay/overlay.d.ts.map +0 -1
  456. package/core/overlay/position.d.ts +0 -63
  457. package/core/overlay/position.d.ts.map +0 -1
  458. package/core/overlay.d.ts +0 -9
  459. package/core/overlay.d.ts.map +0 -1
  460. package/core/styles.d.ts +0 -4
  461. package/core/styles.d.ts.map +0 -1
  462. package/core/testing/event-spy.d.ts +0 -22
  463. package/core/testing/event-spy.d.ts.map +0 -1
  464. package/core/testing/mocha-extensions.d.ts +0 -10
  465. package/core/testing/mocha-extensions.d.ts.map +0 -1
  466. package/core/testing/wait-for-condition.d.ts +0 -2
  467. package/core/testing/wait-for-condition.d.ts.map +0 -1
  468. package/core/testing/wait-for-image-ready.d.ts +0 -3
  469. package/core/testing/wait-for-image-ready.d.ts.map +0 -1
  470. package/core/testing/wait-for-render.d.ts +0 -17
  471. package/core/testing/wait-for-render.d.ts.map +0 -1
  472. package/core/testing.d.ts +0 -9
  473. package/core/testing.d.ts.map +0 -1
  474. package/date-input/date-input.component.d.ts +0 -88
  475. package/date-input/date-input.component.d.ts.map +0 -1
  476. package/date-input.d.ts +0 -5
  477. package/date-input.d.ts.map +0 -1
  478. package/datepicker/common/datepicker-button.d.ts +0 -42
  479. package/datepicker/common/datepicker-button.d.ts.map +0 -1
  480. package/datepicker/common.d.ts +0 -5
  481. package/datepicker/common.d.ts.map +0 -1
  482. package/datepicker/datepicker/datepicker.component.d.ts +0 -41
  483. package/datepicker/datepicker/datepicker.component.d.ts.map +0 -1
  484. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +0 -19
  485. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +0 -1
  486. package/datepicker/datepicker-next-day.d.ts +0 -5
  487. package/datepicker/datepicker-next-day.d.ts.map +0 -1
  488. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +0 -19
  489. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +0 -1
  490. package/datepicker/datepicker-previous-day.d.ts +0 -5
  491. package/datepicker/datepicker-previous-day.d.ts.map +0 -1
  492. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -21
  493. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +0 -1
  494. package/datepicker/datepicker-toggle.d.ts +0 -5
  495. package/datepicker/datepicker-toggle.d.ts.map +0 -1
  496. package/datepicker/datepicker.d.ts +0 -5
  497. package/datepicker/datepicker.d.ts.map +0 -1
  498. package/datepicker.d.ts +0 -9
  499. package/datepicker.d.ts.map +0 -1
  500. package/dialog/dialog/dialog.component.d.ts +0 -51
  501. package/dialog/dialog/dialog.component.d.ts.map +0 -1
  502. package/dialog/dialog-actions/dialog-actions.component.d.ts +0 -17
  503. package/dialog/dialog-actions/dialog-actions.component.d.ts.map +0 -1
  504. package/dialog/dialog-actions.d.ts +0 -5
  505. package/dialog/dialog-actions.d.ts.map +0 -1
  506. package/dialog/dialog-close-button/dialog-close-button.component.d.ts +0 -22
  507. package/dialog/dialog-close-button/dialog-close-button.component.d.ts.map +0 -1
  508. package/dialog/dialog-close-button.d.ts +0 -5
  509. package/dialog/dialog-close-button.d.ts.map +0 -1
  510. package/dialog/dialog-content/dialog-content.component.d.ts +0 -17
  511. package/dialog/dialog-content/dialog-content.component.d.ts.map +0 -1
  512. package/dialog/dialog-content.d.ts +0 -5
  513. package/dialog/dialog-content.d.ts.map +0 -1
  514. package/dialog/dialog-title/dialog-title.component.d.ts +0 -19
  515. package/dialog/dialog-title/dialog-title.component.d.ts.map +0 -1
  516. package/dialog/dialog-title.d.ts +0 -5
  517. package/dialog/dialog-title.d.ts.map +0 -1
  518. package/dialog/dialog.d.ts +0 -5
  519. package/dialog/dialog.d.ts.map +0 -1
  520. package/dialog.d.ts +0 -9
  521. package/dialog.d.ts.map +0 -1
  522. package/divider/divider.component.d.ts +0 -21
  523. package/divider/divider.component.d.ts.map +0 -1
  524. package/divider.d.ts +0 -5
  525. package/divider.d.ts.map +0 -1
  526. package/expansion-panel/expansion-panel/expansion-panel.component.d.ts +0 -64
  527. package/expansion-panel/expansion-panel/expansion-panel.component.d.ts.map +0 -1
  528. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +0 -22
  529. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +0 -1
  530. package/expansion-panel/expansion-panel-content.d.ts +0 -5
  531. package/expansion-panel/expansion-panel-content.d.ts.map +0 -1
  532. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +0 -36
  533. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +0 -1
  534. package/expansion-panel/expansion-panel-header.d.ts +0 -5
  535. package/expansion-panel/expansion-panel-header.d.ts.map +0 -1
  536. package/expansion-panel/expansion-panel.d.ts +0 -5
  537. package/expansion-panel/expansion-panel.d.ts.map +0 -1
  538. package/expansion-panel.d.ts +0 -7
  539. package/expansion-panel.d.ts.map +0 -1
  540. package/file-selector/common/file-selector-common.d.ts +0 -25
  541. package/file-selector/common/file-selector-common.d.ts.map +0 -1
  542. package/file-selector/common.d.ts +0 -5
  543. package/file-selector/common.d.ts.map +0 -1
  544. package/file-selector/file-selector/file-selector.component.d.ts +0 -21
  545. package/file-selector/file-selector/file-selector.component.d.ts.map +0 -1
  546. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +0 -23
  547. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +0 -1
  548. package/file-selector/file-selector-dropzone.d.ts +0 -5
  549. package/file-selector/file-selector-dropzone.d.ts.map +0 -1
  550. package/file-selector/file-selector.d.ts +0 -5
  551. package/file-selector/file-selector.d.ts.map +0 -1
  552. package/file-selector.d.ts +0 -7
  553. package/file-selector.d.ts.map +0 -1
  554. package/flip-card/flip-card/flip-card.component.d.ts +0 -47
  555. package/flip-card/flip-card/flip-card.component.d.ts.map +0 -1
  556. package/flip-card/flip-card-details/flip-card-details.component.d.ts +0 -21
  557. package/flip-card/flip-card-details/flip-card-details.component.d.ts.map +0 -1
  558. package/flip-card/flip-card-details.d.ts +0 -5
  559. package/flip-card/flip-card-details.d.ts.map +0 -1
  560. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts +0 -21
  561. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +0 -1
  562. package/flip-card/flip-card-summary.d.ts +0 -5
  563. package/flip-card/flip-card-summary.d.ts.map +0 -1
  564. package/flip-card/flip-card.d.ts +0 -5
  565. package/flip-card/flip-card.d.ts.map +0 -1
  566. package/flip-card.d.ts +0 -7
  567. package/flip-card.d.ts.map +0 -1
  568. package/footer/footer.component.d.ts +0 -34
  569. package/footer/footer.component.d.ts.map +0 -1
  570. package/footer.d.ts +0 -5
  571. package/footer.d.ts.map +0 -1
  572. package/form-field/error/error.component.d.ts +0 -20
  573. package/form-field/error/error.component.d.ts.map +0 -1
  574. package/form-field/error.d.ts +0 -5
  575. package/form-field/error.d.ts.map +0 -1
  576. package/form-field/form-field/form-field.component.d.ts +0 -125
  577. package/form-field/form-field/form-field.component.d.ts.map +0 -1
  578. package/form-field/form-field-clear/form-field-clear.component.d.ts +0 -23
  579. package/form-field/form-field-clear/form-field-clear.component.d.ts.map +0 -1
  580. package/form-field/form-field-clear.d.ts +0 -5
  581. package/form-field/form-field-clear.d.ts.map +0 -1
  582. package/form-field/form-field.d.ts +0 -5
  583. package/form-field/form-field.d.ts.map +0 -1
  584. package/form-field.d.ts +0 -7
  585. package/form-field.d.ts.map +0 -1
  586. package/header/common/header-action-common.d.ts +0 -10
  587. package/header/common/header-action-common.d.ts.map +0 -1
  588. package/header/common.d.ts +0 -5
  589. package/header/common.d.ts.map +0 -1
  590. package/header/header/header.component.d.ts +0 -65
  591. package/header/header/header.component.d.ts.map +0 -1
  592. package/header/header-button/header-button.component.d.ts +0 -17
  593. package/header/header-button/header-button.component.d.ts.map +0 -1
  594. package/header/header-button.d.ts +0 -5
  595. package/header/header-button.d.ts.map +0 -1
  596. package/header/header-environment/header-environment.component.d.ts +0 -24
  597. package/header/header-environment/header-environment.component.d.ts.map +0 -1
  598. package/header/header-environment.d.ts +0 -5
  599. package/header/header-environment.d.ts.map +0 -1
  600. package/header/header-link/header-link.component.d.ts +0 -17
  601. package/header/header-link/header-link.component.d.ts.map +0 -1
  602. package/header/header-link.d.ts +0 -5
  603. package/header/header-link.d.ts.map +0 -1
  604. package/header/header.d.ts +0 -5
  605. package/header/header.d.ts.map +0 -1
  606. package/header.d.ts +0 -8
  607. package/header.d.ts.map +0 -1
  608. package/icon/icon-base.d.ts +0 -29
  609. package/icon/icon-base.d.ts.map +0 -1
  610. package/icon/icon-name-mixin.d.ts +0 -12
  611. package/icon/icon-name-mixin.d.ts.map +0 -1
  612. package/icon/icon-request.d.ts +0 -3
  613. package/icon/icon-request.d.ts.map +0 -1
  614. package/icon/icon-validate.d.ts +0 -12
  615. package/icon/icon-validate.d.ts.map +0 -1
  616. package/icon/icon.component.d.ts +0 -36
  617. package/icon/icon.component.d.ts.map +0 -1
  618. package/icon-sidebar/icon-sidebar/icon-sidebar.component.d.ts +0 -25
  619. package/icon-sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +0 -1
  620. package/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +0 -22
  621. package/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +0 -1
  622. package/icon-sidebar/icon-sidebar-button.d.ts +0 -5
  623. package/icon-sidebar/icon-sidebar-button.d.ts.map +0 -1
  624. package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.d.ts +0 -23
  625. package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.d.ts.map +0 -1
  626. package/icon-sidebar/icon-sidebar-container.d.ts +0 -5
  627. package/icon-sidebar/icon-sidebar-container.d.ts.map +0 -1
  628. package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.d.ts +0 -17
  629. package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.d.ts.map +0 -1
  630. package/icon-sidebar/icon-sidebar-content.d.ts +0 -5
  631. package/icon-sidebar/icon-sidebar-content.d.ts.map +0 -1
  632. package/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +0 -22
  633. package/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +0 -1
  634. package/icon-sidebar/icon-sidebar-link.d.ts +0 -5
  635. package/icon-sidebar/icon-sidebar-link.d.ts.map +0 -1
  636. package/icon-sidebar/icon-sidebar.d.ts +0 -5
  637. package/icon-sidebar/icon-sidebar.d.ts.map +0 -1
  638. package/icon-sidebar.d.ts +0 -9
  639. package/icon-sidebar.d.ts.map +0 -1
  640. package/icon.d.ts +0 -9
  641. package/icon.d.ts.map +0 -1
  642. package/image/image.component.d.ts +0 -215
  643. package/image/image.component.d.ts.map +0 -1
  644. package/image.d.ts +0 -5
  645. package/image.d.ts.map +0 -1
  646. package/journey-header/journey-header.component.d.ts +0 -32
  647. package/journey-header/journey-header.component.d.ts.map +0 -1
  648. package/journey-header.d.ts +0 -5
  649. package/journey-header.d.ts.map +0 -1
  650. package/lead-container/lead-container.component.d.ts +0 -21
  651. package/lead-container/lead-container.component.d.ts.map +0 -1
  652. package/lead-container.d.ts +0 -5
  653. package/lead-container.d.ts.map +0 -1
  654. package/link/block-link/block-link.component.d.ts +0 -17
  655. package/link/block-link/block-link.component.d.ts.map +0 -1
  656. package/link/block-link-button/block-link-button.component.d.ts +0 -17
  657. package/link/block-link-button/block-link-button.component.d.ts.map +0 -1
  658. package/link/block-link-button.d.ts +0 -5
  659. package/link/block-link-button.d.ts.map +0 -1
  660. package/link/block-link-static/block-link-static.component.d.ts +0 -17
  661. package/link/block-link-static/block-link-static.component.d.ts.map +0 -1
  662. package/link/block-link-static.d.ts +0 -5
  663. package/link/block-link-static.d.ts.map +0 -1
  664. package/link/block-link.d.ts +0 -5
  665. package/link/block-link.d.ts.map +0 -1
  666. package/link/common/block-link-common.d.ts +0 -10
  667. package/link/common/block-link-common.d.ts.map +0 -1
  668. package/link/common/inline-link-common.d.ts +0 -8
  669. package/link/common/inline-link-common.d.ts.map +0 -1
  670. package/link/common/link-common.d.ts +0 -10
  671. package/link/common/link-common.d.ts.map +0 -1
  672. package/link/common.d.ts +0 -7
  673. package/link/common.d.ts.map +0 -1
  674. package/link/link/link.component.d.ts +0 -16
  675. package/link/link/link.component.d.ts.map +0 -1
  676. package/link/link-button/link-button.component.d.ts +0 -16
  677. package/link/link-button/link-button.component.d.ts.map +0 -1
  678. package/link/link-button.d.ts +0 -5
  679. package/link/link-button.d.ts.map +0 -1
  680. package/link/link-static/link-static.component.d.ts +0 -16
  681. package/link/link-static/link-static.component.d.ts.map +0 -1
  682. package/link/link-static.d.ts +0 -5
  683. package/link/link-static.d.ts.map +0 -1
  684. package/link/link.d.ts +0 -5
  685. package/link/link.d.ts.map +0 -1
  686. package/link-list/common/link-list-base.d.ts +0 -28
  687. package/link-list/common/link-list-base.d.ts.map +0 -1
  688. package/link-list/common.d.ts +0 -5
  689. package/link-list/common.d.ts.map +0 -1
  690. package/link-list/link-list/link-list.component.d.ts +0 -22
  691. package/link-list/link-list/link-list.component.d.ts.map +0 -1
  692. package/link-list/link-list-anchor/link-list-anchor.component.d.ts +0 -17
  693. package/link-list/link-list-anchor/link-list-anchor.component.d.ts.map +0 -1
  694. package/link-list/link-list-anchor.d.ts +0 -5
  695. package/link-list/link-list-anchor.d.ts.map +0 -1
  696. package/link-list/link-list.d.ts +0 -5
  697. package/link-list/link-list.d.ts.map +0 -1
  698. package/link-list.d.ts +0 -7
  699. package/link-list.d.ts.map +0 -1
  700. package/link.d.ts +0 -11
  701. package/link.d.ts.map +0 -1
  702. package/loading-indicator/loading-indicator.component.d.ts +0 -22
  703. package/loading-indicator/loading-indicator.component.d.ts.map +0 -1
  704. package/loading-indicator-circle/loading-indicator-circle.component.d.ts +0 -20
  705. package/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +0 -1
  706. package/loading-indicator-circle.d.ts +0 -5
  707. package/loading-indicator-circle.d.ts.map +0 -1
  708. package/loading-indicator.d.ts +0 -5
  709. package/loading-indicator.d.ts.map +0 -1
  710. package/logo/logo.component.d.ts +0 -23
  711. package/logo/logo.component.d.ts.map +0 -1
  712. package/logo.d.ts +0 -5
  713. package/logo.d.ts.map +0 -1
  714. package/map-container/map-container.component.d.ts +0 -47
  715. package/map-container/map-container.component.d.ts.map +0 -1
  716. package/map-container.d.ts +0 -5
  717. package/map-container.d.ts.map +0 -1
  718. package/menu/common/menu-action-common.d.ts +0 -8
  719. package/menu/common/menu-action-common.d.ts.map +0 -1
  720. package/menu/common.d.ts +0 -5
  721. package/menu/common.d.ts.map +0 -1
  722. package/menu/menu/menu.component.d.ts +0 -79
  723. package/menu/menu/menu.component.d.ts.map +0 -1
  724. package/menu/menu-button/menu-button.component.d.ts +0 -20
  725. package/menu/menu-button/menu-button.component.d.ts.map +0 -1
  726. package/menu/menu-button.d.ts +0 -5
  727. package/menu/menu-button.d.ts.map +0 -1
  728. package/menu/menu-link/menu-link.component.d.ts +0 -20
  729. package/menu/menu-link/menu-link.component.d.ts.map +0 -1
  730. package/menu/menu-link.d.ts +0 -5
  731. package/menu/menu-link.d.ts.map +0 -1
  732. package/menu/menu.d.ts +0 -5
  733. package/menu/menu.d.ts.map +0 -1
  734. package/menu.d.ts +0 -8
  735. package/menu.d.ts.map +0 -1
  736. package/message/message.component.d.ts +0 -21
  737. package/message/message.component.d.ts.map +0 -1
  738. package/message.d.ts +0 -5
  739. package/message.d.ts.map +0 -1
  740. package/mini-button-label-common-BOB7JQKi.js +0 -11
  741. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts +0 -35
  742. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +0 -1
  743. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts +0 -23
  744. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +0 -1
  745. package/mini-calendar/mini-calendar-day.d.ts +0 -5
  746. package/mini-calendar/mini-calendar-day.d.ts.map +0 -1
  747. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts +0 -25
  748. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +0 -1
  749. package/mini-calendar/mini-calendar-month.d.ts +0 -5
  750. package/mini-calendar/mini-calendar-month.d.ts.map +0 -1
  751. package/mini-calendar/mini-calendar.d.ts +0 -5
  752. package/mini-calendar/mini-calendar.d.ts.map +0 -1
  753. package/mini-calendar.d.ts +0 -7
  754. package/mini-calendar.d.ts.map +0 -1
  755. package/navigation/common/navigation-action-common.d.ts +0 -13
  756. package/navigation/common/navigation-action-common.d.ts.map +0 -1
  757. package/navigation/common.d.ts +0 -5
  758. package/navigation/common.d.ts.map +0 -1
  759. package/navigation/navigation/navigation.component.d.ts +0 -73
  760. package/navigation/navigation/navigation.component.d.ts.map +0 -1
  761. package/navigation/navigation-button/navigation-button.component.d.ts +0 -16
  762. package/navigation/navigation-button/navigation-button.component.d.ts.map +0 -1
  763. package/navigation/navigation-button.d.ts +0 -5
  764. package/navigation/navigation-button.d.ts.map +0 -1
  765. package/navigation/navigation-link/navigation-link.component.d.ts +0 -16
  766. package/navigation/navigation-link/navigation-link.component.d.ts.map +0 -1
  767. package/navigation/navigation-link.d.ts +0 -5
  768. package/navigation/navigation-link.d.ts.map +0 -1
  769. package/navigation/navigation-list/navigation-list.component.d.ts +0 -28
  770. package/navigation/navigation-list/navigation-list.component.d.ts.map +0 -1
  771. package/navigation/navigation-list.d.ts +0 -5
  772. package/navigation/navigation-list.d.ts.map +0 -1
  773. package/navigation/navigation-marker/navigation-marker.component.d.ts +0 -37
  774. package/navigation/navigation-marker/navigation-marker.component.d.ts.map +0 -1
  775. package/navigation/navigation-marker.d.ts +0 -5
  776. package/navigation/navigation-marker.d.ts.map +0 -1
  777. package/navigation/navigation-section/navigation-section.component.d.ts +0 -77
  778. package/navigation/navigation-section/navigation-section.component.d.ts.map +0 -1
  779. package/navigation/navigation-section.d.ts +0 -5
  780. package/navigation/navigation-section.d.ts.map +0 -1
  781. package/navigation/navigation.d.ts +0 -5
  782. package/navigation/navigation.d.ts.map +0 -1
  783. package/navigation.d.ts +0 -11
  784. package/navigation.d.ts.map +0 -1
  785. package/notification/notification.component.d.ts +0 -60
  786. package/notification/notification.component.d.ts.map +0 -1
  787. package/notification.d.ts +0 -5
  788. package/notification.d.ts.map +0 -1
  789. package/option/optgroup/optgroup-base-element.d.ts +0 -22
  790. package/option/optgroup/optgroup-base-element.d.ts.map +0 -1
  791. package/option/optgroup/optgroup.component.d.ts +0 -21
  792. package/option/optgroup/optgroup.component.d.ts.map +0 -1
  793. package/option/optgroup.d.ts +0 -6
  794. package/option/optgroup.d.ts.map +0 -1
  795. package/option/option/option-base-element.d.ts +0 -63
  796. package/option/option/option-base-element.d.ts.map +0 -1
  797. package/option/option/option.component.d.ts +0 -45
  798. package/option/option/option.component.d.ts.map +0 -1
  799. package/option/option-hint/option-hint.component.d.ts +0 -18
  800. package/option/option-hint/option-hint.component.d.ts.map +0 -1
  801. package/option/option-hint.d.ts +0 -5
  802. package/option/option-hint.d.ts.map +0 -1
  803. package/option/option.d.ts +0 -6
  804. package/option/option.d.ts.map +0 -1
  805. package/option.d.ts +0 -7
  806. package/option.d.ts.map +0 -1
  807. package/overlay/overlay-base-element.d.ts +0 -93
  808. package/overlay/overlay-base-element.d.ts.map +0 -1
  809. package/overlay/overlay.component.d.ts +0 -43
  810. package/overlay/overlay.component.d.ts.map +0 -1
  811. package/overlay.d.ts +0 -6
  812. package/overlay.d.ts.map +0 -1
  813. package/paginator/common/paginator-common.d.ts +0 -35
  814. package/paginator/common/paginator-common.d.ts.map +0 -1
  815. package/paginator/common.d.ts +0 -5
  816. package/paginator/common.d.ts.map +0 -1
  817. package/paginator/compact-paginator/compact-paginator.component.d.ts +0 -18
  818. package/paginator/compact-paginator/compact-paginator.component.d.ts.map +0 -1
  819. package/paginator/compact-paginator.d.ts +0 -5
  820. package/paginator/compact-paginator.d.ts.map +0 -1
  821. package/paginator/paginator/paginator.component.d.ts +0 -45
  822. package/paginator/paginator/paginator.component.d.ts.map +0 -1
  823. package/paginator/paginator.d.ts +0 -5
  824. package/paginator/paginator.d.ts.map +0 -1
  825. package/paginator.d.ts +0 -7
  826. package/paginator.d.ts.map +0 -1
  827. package/popover/popover.component.d.ts +0 -109
  828. package/popover/popover.component.d.ts.map +0 -1
  829. package/popover.d.ts +0 -5
  830. package/popover.d.ts.map +0 -1
  831. package/radio-button/common/radio-button-common.d.ts +0 -14
  832. package/radio-button/common/radio-button-common.d.ts.map +0 -1
  833. package/radio-button/common.d.ts +0 -5
  834. package/radio-button/common.d.ts.map +0 -1
  835. package/radio-button/radio-button/radio-button.component.d.ts +0 -35
  836. package/radio-button/radio-button/radio-button.component.d.ts.map +0 -1
  837. package/radio-button/radio-button-group/radio-button-group.component.d.ts +0 -78
  838. package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +0 -1
  839. package/radio-button/radio-button-group.d.ts +0 -5
  840. package/radio-button/radio-button-group.d.ts.map +0 -1
  841. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts +0 -44
  842. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +0 -1
  843. package/radio-button/radio-button-panel.d.ts +0 -5
  844. package/radio-button/radio-button-panel.d.ts.map +0 -1
  845. package/radio-button/radio-button.d.ts +0 -5
  846. package/radio-button/radio-button.d.ts.map +0 -1
  847. package/radio-button.d.ts +0 -8
  848. package/radio-button.d.ts.map +0 -1
  849. package/screen-reader-only/screen-reader-only.component.d.ts +0 -16
  850. package/screen-reader-only/screen-reader-only.component.d.ts.map +0 -1
  851. package/screen-reader-only.d.ts +0 -5
  852. package/screen-reader-only.d.ts.map +0 -1
  853. package/select/select.component.d.ts +0 -171
  854. package/select/select.component.d.ts.map +0 -1
  855. package/select.d.ts +0 -5
  856. package/select.d.ts.map +0 -1
  857. package/selection-action-panel/selection-action-panel.component.d.ts +0 -22
  858. package/selection-action-panel/selection-action-panel.component.d.ts.map +0 -1
  859. package/selection-action-panel.d.ts +0 -5
  860. package/selection-action-panel.d.ts.map +0 -1
  861. package/selection-expansion-panel/selection-expansion-panel.component.d.ts +0 -45
  862. package/selection-expansion-panel/selection-expansion-panel.component.d.ts.map +0 -1
  863. package/selection-expansion-panel.d.ts +0 -5
  864. package/selection-expansion-panel.d.ts.map +0 -1
  865. package/sidebar/common.d.ts +0 -4
  866. package/sidebar/common.d.ts.map +0 -1
  867. package/sidebar/sidebar/sidebar.component.d.ts +0 -66
  868. package/sidebar/sidebar/sidebar.component.d.ts.map +0 -1
  869. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +0 -23
  870. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +0 -1
  871. package/sidebar/sidebar-close-button.d.ts +0 -5
  872. package/sidebar/sidebar-close-button.d.ts.map +0 -1
  873. package/sidebar/sidebar-container/sidebar-container.component.d.ts +0 -34
  874. package/sidebar/sidebar-container/sidebar-container.component.d.ts.map +0 -1
  875. package/sidebar/sidebar-container.d.ts +0 -5
  876. package/sidebar/sidebar-container.d.ts.map +0 -1
  877. package/sidebar/sidebar-content/sidebar-content.component.d.ts +0 -18
  878. package/sidebar/sidebar-content/sidebar-content.component.d.ts.map +0 -1
  879. package/sidebar/sidebar-content.d.ts +0 -5
  880. package/sidebar/sidebar-content.d.ts.map +0 -1
  881. package/sidebar/sidebar-title/sidebar-title.component.d.ts +0 -20
  882. package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +0 -1
  883. package/sidebar/sidebar-title.d.ts +0 -5
  884. package/sidebar/sidebar-title.d.ts.map +0 -1
  885. package/sidebar/sidebar.d.ts +0 -5
  886. package/sidebar/sidebar.d.ts.map +0 -1
  887. package/sidebar.d.ts +0 -10
  888. package/sidebar.d.ts.map +0 -1
  889. package/signet/signet.component.d.ts +0 -22
  890. package/signet/signet.component.d.ts.map +0 -1
  891. package/signet.d.ts +0 -5
  892. package/signet.d.ts.map +0 -1
  893. package/skiplink-list/skiplink-list.component.d.ts +0 -33
  894. package/skiplink-list/skiplink-list.component.d.ts.map +0 -1
  895. package/skiplink-list.d.ts +0 -5
  896. package/skiplink-list.d.ts.map +0 -1
  897. package/slider/slider.component.d.ts +0 -79
  898. package/slider/slider.component.d.ts.map +0 -1
  899. package/slider.d.ts +0 -5
  900. package/slider.d.ts.map +0 -1
  901. package/status/status.component.d.ts +0 -31
  902. package/status/status.component.d.ts.map +0 -1
  903. package/status.d.ts +0 -5
  904. package/status.d.ts.map +0 -1
  905. package/stepper/step/step.component.d.ts +0 -75
  906. package/stepper/step/step.component.d.ts.map +0 -1
  907. package/stepper/step-label/step-label.component.d.ts +0 -56
  908. package/stepper/step-label/step-label.component.d.ts.map +0 -1
  909. package/stepper/step-label.d.ts +0 -5
  910. package/stepper/step-label.d.ts.map +0 -1
  911. package/stepper/step.d.ts +0 -5
  912. package/stepper/step.d.ts.map +0 -1
  913. package/stepper/stepper/stepper.component.d.ts +0 -96
  914. package/stepper/stepper/stepper.component.d.ts.map +0 -1
  915. package/stepper/stepper.d.ts +0 -5
  916. package/stepper/stepper.d.ts.map +0 -1
  917. package/stepper.d.ts +0 -7
  918. package/stepper.d.ts.map +0 -1
  919. package/table/table-wrapper/table-wrapper.component.d.ts +0 -31
  920. package/table/table-wrapper/table-wrapper.component.d.ts.map +0 -1
  921. package/table/table-wrapper.d.ts +0 -5
  922. package/table/table-wrapper.d.ts.map +0 -1
  923. package/table.d.ts +0 -5
  924. package/table.d.ts.map +0 -1
  925. package/tabs/common.d.ts +0 -4
  926. package/tabs/common.d.ts.map +0 -1
  927. package/tabs/tab/tab.component.d.ts +0 -36
  928. package/tabs/tab/tab.component.d.ts.map +0 -1
  929. package/tabs/tab-group/tab-group.component.d.ts +0 -76
  930. package/tabs/tab-group/tab-group.component.d.ts.map +0 -1
  931. package/tabs/tab-group.d.ts +0 -5
  932. package/tabs/tab-group.d.ts.map +0 -1
  933. package/tabs/tab-label/tab-label.component.d.ts +0 -51
  934. package/tabs/tab-label/tab-label.component.d.ts.map +0 -1
  935. package/tabs/tab-label.d.ts +0 -5
  936. package/tabs/tab-label.d.ts.map +0 -1
  937. package/tabs/tab-nav-bar/tab-nav-bar.component.d.ts +0 -30
  938. package/tabs/tab-nav-bar/tab-nav-bar.component.d.ts.map +0 -1
  939. package/tabs/tab-nav-bar.d.ts +0 -5
  940. package/tabs/tab-nav-bar.d.ts.map +0 -1
  941. package/tabs/tab.d.ts +0 -5
  942. package/tabs/tab.d.ts.map +0 -1
  943. package/tabs.d.ts +0 -8
  944. package/tabs.d.ts.map +0 -1
  945. package/tag/tag/tag.component.d.ts +0 -58
  946. package/tag/tag/tag.component.d.ts.map +0 -1
  947. package/tag/tag-group/tag-group.component.d.ts +0 -50
  948. package/tag/tag-group/tag-group.component.d.ts.map +0 -1
  949. package/tag/tag-group.d.ts +0 -5
  950. package/tag/tag-group.d.ts.map +0 -1
  951. package/tag/tag.d.ts +0 -5
  952. package/tag/tag.d.ts.map +0 -1
  953. package/tag.d.ts +0 -6
  954. package/tag.d.ts.map +0 -1
  955. package/teaser/teaser.component.d.ts +0 -26
  956. package/teaser/teaser.component.d.ts.map +0 -1
  957. package/teaser-hero/teaser-hero.component.d.ts +0 -23
  958. package/teaser-hero/teaser-hero.component.d.ts.map +0 -1
  959. package/teaser-hero.d.ts +0 -5
  960. package/teaser-hero.d.ts.map +0 -1
  961. package/teaser-product/common/teaser-product-common.d.ts +0 -9
  962. package/teaser-product/common/teaser-product-common.d.ts.map +0 -1
  963. package/teaser-product/common.d.ts +0 -5
  964. package/teaser-product/common.d.ts.map +0 -1
  965. package/teaser-product/teaser-product/teaser-product.component.d.ts +0 -23
  966. package/teaser-product/teaser-product/teaser-product.component.d.ts.map +0 -1
  967. package/teaser-product/teaser-product-static/teaser-product-static.component.d.ts +0 -22
  968. package/teaser-product/teaser-product-static/teaser-product-static.component.d.ts.map +0 -1
  969. package/teaser-product/teaser-product-static.d.ts +0 -5
  970. package/teaser-product/teaser-product-static.d.ts.map +0 -1
  971. package/teaser-product/teaser-product.d.ts +0 -5
  972. package/teaser-product/teaser-product.d.ts.map +0 -1
  973. package/teaser-product.d.ts +0 -7
  974. package/teaser-product.d.ts.map +0 -1
  975. package/teaser.d.ts +0 -5
  976. package/teaser.d.ts.map +0 -1
  977. package/time-input/time-input.component.d.ts +0 -49
  978. package/time-input/time-input.component.d.ts.map +0 -1
  979. package/time-input.d.ts +0 -5
  980. package/time-input.d.ts.map +0 -1
  981. package/timetable-form/timetable-form/timetable-form.component.d.ts +0 -17
  982. package/timetable-form/timetable-form/timetable-form.component.d.ts.map +0 -1
  983. package/timetable-form/timetable-form-details/timetable-form-details.component.d.ts +0 -16
  984. package/timetable-form/timetable-form-details/timetable-form-details.component.d.ts.map +0 -1
  985. package/timetable-form/timetable-form-details.d.ts +0 -5
  986. package/timetable-form/timetable-form-details.d.ts.map +0 -1
  987. package/timetable-form/timetable-form-field/timetable-form-field.component.d.ts +0 -18
  988. package/timetable-form/timetable-form-field/timetable-form-field.component.d.ts.map +0 -1
  989. package/timetable-form/timetable-form-field.d.ts +0 -5
  990. package/timetable-form/timetable-form-field.d.ts.map +0 -1
  991. package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts +0 -24
  992. package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts.map +0 -1
  993. package/timetable-form/timetable-form-swap-button.d.ts +0 -5
  994. package/timetable-form/timetable-form-swap-button.d.ts.map +0 -1
  995. package/timetable-form/timetable-form.d.ts +0 -5
  996. package/timetable-form/timetable-form.d.ts.map +0 -1
  997. package/timetable-form.d.ts +0 -8
  998. package/timetable-form.d.ts.map +0 -1
  999. package/timetable-occupancy/timetable-occupancy.component.d.ts +0 -22
  1000. package/timetable-occupancy/timetable-occupancy.component.d.ts.map +0 -1
  1001. package/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts +0 -28
  1002. package/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +0 -1
  1003. package/timetable-occupancy-icon.d.ts +0 -5
  1004. package/timetable-occupancy-icon.d.ts.map +0 -1
  1005. package/timetable-occupancy.d.ts +0 -5
  1006. package/timetable-occupancy.d.ts.map +0 -1
  1007. package/title/title-base.d.ts +0 -18
  1008. package/title/title-base.d.ts.map +0 -1
  1009. package/title/title.component.d.ts +0 -20
  1010. package/title/title.component.d.ts.map +0 -1
  1011. package/title.d.ts +0 -6
  1012. package/title.d.ts.map +0 -1
  1013. package/toast/toast.component.d.ts +0 -73
  1014. package/toast/toast.component.d.ts.map +0 -1
  1015. package/toast.d.ts +0 -5
  1016. package/toast.d.ts.map +0 -1
  1017. package/toggle/toggle/toggle.component.d.ts +0 -72
  1018. package/toggle/toggle/toggle.component.d.ts.map +0 -1
  1019. package/toggle/toggle-option/toggle-option.component.d.ts +0 -35
  1020. package/toggle/toggle-option/toggle-option.component.d.ts.map +0 -1
  1021. package/toggle/toggle-option.d.ts +0 -5
  1022. package/toggle/toggle-option.d.ts.map +0 -1
  1023. package/toggle/toggle.d.ts +0 -5
  1024. package/toggle/toggle.d.ts.map +0 -1
  1025. package/toggle-check/toggle-check.component.d.ts +0 -33
  1026. package/toggle-check/toggle-check.component.d.ts.map +0 -1
  1027. package/toggle-check.d.ts +0 -5
  1028. package/toggle-check.d.ts.map +0 -1
  1029. package/toggle.d.ts +0 -6
  1030. package/toggle.d.ts.map +0 -1
  1031. package/tooltip/tooltip.component.d.ts +0 -96
  1032. package/tooltip/tooltip.component.d.ts.map +0 -1
  1033. package/tooltip.d.ts +0 -5
  1034. package/tooltip.d.ts.map +0 -1
  1035. package/train/train/train.component.d.ts +0 -42
  1036. package/train/train/train.component.d.ts.map +0 -1
  1037. package/train/train-blocked-passage/train-blocked-passage.component.d.ts +0 -14
  1038. package/train/train-blocked-passage/train-blocked-passage.component.d.ts.map +0 -1
  1039. package/train/train-blocked-passage.d.ts +0 -5
  1040. package/train/train-blocked-passage.d.ts.map +0 -1
  1041. package/train/train-formation/train-formation.component.d.ts +0 -29
  1042. package/train/train-formation/train-formation.component.d.ts.map +0 -1
  1043. package/train/train-formation.d.ts +0 -5
  1044. package/train/train-formation.d.ts.map +0 -1
  1045. package/train/train-wagon/train-wagon.component.d.ts +0 -44
  1046. package/train/train-wagon/train-wagon.component.d.ts.map +0 -1
  1047. package/train/train-wagon.d.ts +0 -5
  1048. package/train/train-wagon.d.ts.map +0 -1
  1049. package/train/train.d.ts +0 -5
  1050. package/train/train.d.ts.map +0 -1
  1051. package/train.d.ts +0 -8
  1052. package/train.d.ts.map +0 -1
  1053. package/visual-checkbox/visual-checkbox.component.d.ts +0 -26
  1054. package/visual-checkbox/visual-checkbox.component.d.ts.map +0 -1
  1055. package/visual-checkbox.d.ts +0 -5
  1056. package/visual-checkbox.d.ts.map +0 -1
  1057. /package/core/styles/{node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss → core/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss} +0 -0
@@ -14,9 +14,6 @@ class SbbActionBaseElement extends SbbElementInternalsMixin(LitElement) {
14
14
  }
15
15
  connectedCallback() {
16
16
  super.connectedCallback();
17
- if ((this.matches(":is(:state(link),[state--link])") || this.matches(":is(:state(button),[state--button])")) && this.parentElement?.closest(":is(:state(link),[state--link]), :is(:state(button),[state--button]), a, button")) {
18
- console.warn(`Nested action element detected (${this.localName} inside ${this.parentElement.closest(":is(:state(link),[state--link]), :is(:state(button),[state--button]), a, button").localName}). Maybe use a static variant for the inner action element?`, this);
19
- }
20
17
  }
21
18
  setupBaseEventHandlers() {
22
19
  this.addEventListener(
@@ -44,4 +41,4 @@ class SbbActionBaseElement extends SbbElementInternalsMixin(LitElement) {
44
41
  export {
45
42
  SbbActionBaseElement
46
43
  };
47
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhc2UtZWxlbWVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYmFzZS1lbGVtZW50cy9hY3Rpb24tYmFzZS1lbGVtZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4gfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG4vKipcbiAqIFdoZW5ldmVyIGFuIGVsZW1lbnQgY2FuIGJlIGRpc2FibGVkIGl0IGhhcyBkaXNhYmxlZCBwcm9wZXJ0eVxuICogb3IgZm9ybURpc2FibGVkIGlmIGl0J3MgYSBmb3JtIGVsZW1lbnQuXG4gKiBCZWNhdXNlIHdlIGNhbid0IHVzZSB0eXBlcyBoZXJlIGRpcmVjdGx5IHdlIGNyZWF0ZWQgdGhpcyBoZWxwZXIgdHlwZS5cbiAqL1xudHlwZSBNYXliZURpc2FibGVkID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGZvcm1EaXNhYmxlZD86IGJvb2xlYW47XG4gIGRpc2FibGVkSW50ZXJhY3RpdmU/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNiYkFjdGlvbkJhc2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudEludGVybmFsc01peGluKExpdEVsZW1lbnQpIHtcbiAgcHJvdGVjdGVkIGdldCBtYXliZURpc2FibGVkKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IG1heWJlRGlzYWJsZWQgPSB0aGlzIGFzIE1heWJlRGlzYWJsZWQ7XG4gICAgcmV0dXJuIG1heWJlRGlzYWJsZWQuZGlzYWJsZWQgfHwgbWF5YmVEaXNhYmxlZC5mb3JtRGlzYWJsZWQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IG1heWJlRGlzYWJsZWRJbnRlcmFjdGl2ZSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHRoaXMgYXMgTWF5YmVEaXNhYmxlZCkuZGlzYWJsZWRJbnRlcmFjdGl2ZTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2FjdGlvbicpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICBpZiAoXG4gICAgICBpbXBvcnQubWV0YS5lbnYuREVWICYmXG4gICAgICAodGhpcy5tYXRjaGVzKCc6c3RhdGUobGluayknKSB8fCB0aGlzLm1hdGNoZXMoJzpzdGF0ZShidXR0b24pJykpICYmXG4gICAgICB0aGlzLnBhcmVudEVsZW1lbnQ/LmNsb3Nlc3QoJzpzdGF0ZShsaW5rKSwgOnN0YXRlKGJ1dHRvbiksIGEsIGJ1dHRvbicpXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBOZXN0ZWQgYWN0aW9uIGVsZW1lbnQgZGV0ZWN0ZWQgKCR7dGhpcy5sb2NhbE5hbWV9IGluc2lkZSAke3RoaXMucGFyZW50RWxlbWVudCEuY2xvc2VzdCgnOnN0YXRlKGxpbmspLCA6c3RhdGUoYnV0dG9uKSwgYSwgYnV0dG9uJykhLmxvY2FsTmFtZX0pLiBNYXliZSB1c2UgYSBzdGF0aWMgdmFyaWFudCBmb3IgdGhlIGlubmVyIGFjdGlvbiBlbGVtZW50P2AsXG4gICAgICAgIHRoaXMsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzZXR1cEJhc2VFdmVudEhhbmRsZXJzKCk6IHZvaWQge1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdjbGljaycsXG4gICAgICAoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubWF5YmVEaXNhYmxlZCAmJiAhdGhpcy5tYXliZURpc2FibGVkSW50ZXJhY3RpdmUpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgLy8gY2FwdHVyZSBpcyBuZWNlc3NhcnkgaGVyZSwgYXMgdGhpcyBldmVudCBoYW5kbGVyIG5lZWRzIHRvIGJlIGV4ZWN1dGVkIGJlZm9yZSBhbnkgb3RoZXJcbiAgICAgIC8vIGluIG9yZGVyIHRvIHN0b3AgaW1tZWRpYXRlIHByb3BhZ2F0aW9uIGluIHRoZSBkaXNhYmxlZCBjYXNlLlxuICAgICAgeyBjYXB0dXJlOiB0cnVlIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBPdmVycmlkZSB0aGlzIG1ldGhvZCB0byByZW5kZXIgdGhlIGNvbXBvbmVudCB0ZW1wbGF0ZS4gKi9cbiAgcHJvdGVjdGVkIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ltcGxlbWVudGF0aW9uIG5lZWRlZCEnKTtcbiAgfVxuXG4gIC8qKiBEZWZhdWx0IHJlbmRlciBtZXRob2QgZm9yIGJ1dHRvbi1saWtlIGNvbXBvbmVudHMuICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLWFjdGlvbi1iYXNlICR7dGhpcy5sb2NhbE5hbWV9XCI+JHt0aGlzLnJlbmRlclRlbXBsYXRlKCl9PC9zcGFuPmA7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztNQWVzQiw2QkFBNkIseUJBQXlCLFVBQVUsRUFBQztBQUFBLEVBQ3JGLElBQWMsZ0JBQWE7QUFDekIsVUFBTSxnQkFBZ0I7QUFDdEIsV0FBTyxjQUFjLFlBQVksY0FBYztBQUFBLEVBQ2pEO0FBQUEsRUFFQSxJQUFjLDJCQUF3QjtBQUNwQyxXQUFRLEtBQXVCO0FBQUEsRUFDakM7QUFBQSxFQUVBLGNBQUE7QUFDRSxVQUFBO0FBQ0EsU0FBSyxVQUFVLE9BQU8sSUFBSSxRQUFRO0FBQUEsRUFDcEM7QUFBQSxFQUVnQixvQkFBaUI7QUFDL0IsVUFBTSxrQkFBQTtBQUVOLFNBRUcsS0FBSyxRQUFRLGlDQUFjLEtBQUssS0FBSyxRQUFRLHFDQUFnQixNQUM5RCxLQUFLLGVBQWUsUUFBUSxpRkFBeUMsR0FDckU7QUFDQSxjQUFRLEtBQ04sbUNBQW1DLEtBQUssU0FBUyxXQUFXLEtBQUssY0FBZSxRQUFRLGlGQUF5QyxFQUFHLFNBQVMsK0RBQzdJLElBQUk7QUFBQSxJQUVSO0FBQUEsRUFDRjtBQUFBLEVBRVUseUJBQXNCO0FBQzlCLFNBQUs7QUFBQSxNQUNIO0FBQUEsTUFDQSxDQUFDLFVBQVM7QUFDUixZQUFJLEtBQUssaUJBQWlCLENBQUMsS0FBSywwQkFBMEI7QUFDeEQsZ0JBQU0sZUFBQTtBQUNOLGdCQUFNLHlCQUFBO0FBQUEsUUFDUjtBQUFBLE1BQ0Y7QUFBQTtBQUFBO0FBQUEsTUFHQSxFQUFFLFNBQVMsS0FBQTtBQUFBLElBQUk7QUFBQSxFQUVuQjtBQUFBO0FBQUEsRUFHVSxpQkFBYztBQUN0QixVQUFNLElBQUksTUFBTSx3QkFBd0I7QUFBQSxFQUMxQztBQUFBO0FBQUEsRUFHbUIsU0FBTTtBQUN2QixXQUFPLG9DQUFvQyxLQUFLLFNBQVMsS0FBSyxLQUFLLGdCQUFnQjtBQUFBLEVBQ3JGO0FBQ0Q7In0=
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhc2UtZWxlbWVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYmFzZS1lbGVtZW50cy9hY3Rpb24tYmFzZS1lbGVtZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4gfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG4vKipcbiAqIFdoZW5ldmVyIGFuIGVsZW1lbnQgY2FuIGJlIGRpc2FibGVkIGl0IGhhcyBkaXNhYmxlZCBwcm9wZXJ0eVxuICogb3IgZm9ybURpc2FibGVkIGlmIGl0J3MgYSBmb3JtIGVsZW1lbnQuXG4gKiBCZWNhdXNlIHdlIGNhbid0IHVzZSB0eXBlcyBoZXJlIGRpcmVjdGx5IHdlIGNyZWF0ZWQgdGhpcyBoZWxwZXIgdHlwZS5cbiAqL1xudHlwZSBNYXliZURpc2FibGVkID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGZvcm1EaXNhYmxlZD86IGJvb2xlYW47XG4gIGRpc2FibGVkSW50ZXJhY3RpdmU/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNiYkFjdGlvbkJhc2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudEludGVybmFsc01peGluKExpdEVsZW1lbnQpIHtcbiAgcHJvdGVjdGVkIGdldCBtYXliZURpc2FibGVkKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IG1heWJlRGlzYWJsZWQgPSB0aGlzIGFzIE1heWJlRGlzYWJsZWQ7XG4gICAgcmV0dXJuIG1heWJlRGlzYWJsZWQuZGlzYWJsZWQgfHwgbWF5YmVEaXNhYmxlZC5mb3JtRGlzYWJsZWQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IG1heWJlRGlzYWJsZWRJbnRlcmFjdGl2ZSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHRoaXMgYXMgTWF5YmVEaXNhYmxlZCkuZGlzYWJsZWRJbnRlcmFjdGl2ZTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2FjdGlvbicpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICBpZiAoXG4gICAgICBpbXBvcnQubWV0YS5lbnYuREVWICYmXG4gICAgICAodGhpcy5tYXRjaGVzKCc6c3RhdGUobGluayknKSB8fCB0aGlzLm1hdGNoZXMoJzpzdGF0ZShidXR0b24pJykpICYmXG4gICAgICB0aGlzLnBhcmVudEVsZW1lbnQ/LmNsb3Nlc3QoJzpzdGF0ZShsaW5rKSwgOnN0YXRlKGJ1dHRvbiksIGEsIGJ1dHRvbicpXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBOZXN0ZWQgYWN0aW9uIGVsZW1lbnQgZGV0ZWN0ZWQgKCR7dGhpcy5sb2NhbE5hbWV9IGluc2lkZSAke3RoaXMucGFyZW50RWxlbWVudCEuY2xvc2VzdCgnOnN0YXRlKGxpbmspLCA6c3RhdGUoYnV0dG9uKSwgYSwgYnV0dG9uJykhLmxvY2FsTmFtZX0pLiBNYXliZSB1c2UgYSBzdGF0aWMgdmFyaWFudCBmb3IgdGhlIGlubmVyIGFjdGlvbiBlbGVtZW50P2AsXG4gICAgICAgIHRoaXMsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzZXR1cEJhc2VFdmVudEhhbmRsZXJzKCk6IHZvaWQge1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdjbGljaycsXG4gICAgICAoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubWF5YmVEaXNhYmxlZCAmJiAhdGhpcy5tYXliZURpc2FibGVkSW50ZXJhY3RpdmUpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgLy8gY2FwdHVyZSBpcyBuZWNlc3NhcnkgaGVyZSwgYXMgdGhpcyBldmVudCBoYW5kbGVyIG5lZWRzIHRvIGJlIGV4ZWN1dGVkIGJlZm9yZSBhbnkgb3RoZXJcbiAgICAgIC8vIGluIG9yZGVyIHRvIHN0b3AgaW1tZWRpYXRlIHByb3BhZ2F0aW9uIGluIHRoZSBkaXNhYmxlZCBjYXNlLlxuICAgICAgeyBjYXB0dXJlOiB0cnVlIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBPdmVycmlkZSB0aGlzIG1ldGhvZCB0byByZW5kZXIgdGhlIGNvbXBvbmVudCB0ZW1wbGF0ZS4gKi9cbiAgcHJvdGVjdGVkIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ltcGxlbWVudGF0aW9uIG5lZWRlZCEnKTtcbiAgfVxuXG4gIC8qKiBEZWZhdWx0IHJlbmRlciBtZXRob2QgZm9yIGJ1dHRvbi1saWtlIGNvbXBvbmVudHMuICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLWFjdGlvbi1iYXNlICR7dGhpcy5sb2NhbE5hbWV9XCI+JHt0aGlzLnJlbmRlclRlbXBsYXRlKCl9PC9zcGFuPmA7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztNQWVzQiw2QkFBNkIseUJBQXlCLFVBQVUsRUFBQztBQUFBLEVBQ3JGLElBQWMsZ0JBQWE7QUFDekIsVUFBTSxnQkFBZ0I7QUFDdEIsV0FBTyxjQUFjLFlBQVksY0FBYztBQUFBLEVBQ2pEO0FBQUEsRUFFQSxJQUFjLDJCQUF3QjtBQUNwQyxXQUFRLEtBQXVCO0FBQUEsRUFDakM7QUFBQSxFQUVBLGNBQUE7QUFDRSxVQUFBO0FBQ0EsU0FBSyxVQUFVLE9BQU8sSUFBSSxRQUFRO0FBQUEsRUFDcEM7QUFBQSxFQUVnQixvQkFBaUI7QUFDL0IsVUFBTSxrQkFBQTtBQUFBLEVBWVI7QUFBQSxFQUVVLHlCQUFzQjtBQUM5QixTQUFLO0FBQUEsTUFDSDtBQUFBLE1BQ0EsQ0FBQyxVQUFTO0FBQ1IsWUFBSSxLQUFLLGlCQUFpQixDQUFDLEtBQUssMEJBQTBCO0FBQ3hELGdCQUFNLGVBQUE7QUFDTixnQkFBTSx5QkFBQTtBQUFBLFFBQ1I7QUFBQSxNQUNGO0FBQUE7QUFBQTtBQUFBLE1BR0EsRUFBRSxTQUFTLEtBQUE7QUFBQSxJQUFJO0FBQUEsRUFFbkI7QUFBQTtBQUFBLEVBR1UsaUJBQWM7QUFDdEIsVUFBTSxJQUFJLE1BQU0sd0JBQXdCO0FBQUEsRUFDMUM7QUFBQTtBQUFBLEVBR21CLFNBQU07QUFDdkIsV0FBTyxvQ0FBb0MsS0FBSyxTQUFTLEtBQUssS0FBSyxnQkFBZ0I7QUFBQSxFQUNyRjtBQUNEOyJ9
@@ -33,8 +33,6 @@ class SbbInertController {
33
33
  if (this._currentOverlay() !== this._host) {
34
34
  if (this._inertOverlays.has(this._host)) {
35
35
  this._inertOverlays.delete(this._host);
36
- } else {
37
- console.warn("Trying to remove inert state of an overlay which never had an applied inert state.", this._host);
38
36
  }
39
37
  return;
40
38
  }
@@ -105,4 +103,4 @@ class SbbInertController {
105
103
  export {
106
104
  SbbInertController
107
105
  };
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5lcnQtY29udHJvbGxlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvY29udHJvbGxlcnMvaW5lcnQtY29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlYWN0aXZlQ29udHJvbGxlciwgUmVhY3RpdmVDb250cm9sbGVySG9zdCB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCB0eXBlIHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi9iYXNlLWVsZW1lbnRzLnRzJztcblxuY29uc3QgSUdOT1JFRF9FTEVNRU5UUyA9IFsnc2NyaXB0JywgJ2hlYWQnLCAndGVtcGxhdGUnLCAnc3R5bGUnXTtcbmNvbnN0IGluZXJ0RWxlbWVudHMgPSBuZXcgU2V0PEhUTUxFbGVtZW50PigpO1xuY29uc3QgZXhlbXB0ZWRFbGVtZW50cyA9IG5ldyBTZXQ8SFRNTEVsZW1lbnQ+KCk7XG5jb25zdCBpbmVydE92ZXJsYXlzID0gbmV3IFNldDxIVE1MRWxlbWVudD4oKTtcblxuZXhwb3J0IGNsYXNzIFNiYkluZXJ0Q29udHJvbGxlciBpbXBsZW1lbnRzIFJlYWN0aXZlQ29udHJvbGxlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9ob3N0OiBSZWFjdGl2ZUNvbnRyb2xsZXJIb3N0ICYgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQsXG4gICAgcHJpdmF0ZSBfaW5lcnRFbGVtZW50cyA9IGluZXJ0RWxlbWVudHMsXG4gICAgcHJpdmF0ZSBfaW5lcnRPdmVybGF5cyA9IGluZXJ0T3ZlcmxheXMsXG4gICAgcHJpdmF0ZSBfZXhlbXB0ZWRFbGVtZW50cyA9IGV4ZW1wdGVkRWxlbWVudHMsXG4gICkge1xuICAgIHRoaXMuX2hvc3QuYWRkQ29udHJvbGxlcj8uKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIGhvc3RDb25uZWN0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2hvc3QuaXNPcGVuKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhvc3REaXNjb25uZWN0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNJbmVydCgpKSB7XG4gICAgICB0aGlzLmRlYWN0aXZhdGUoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQXBwbGllcyBpbmVydCBzdGF0ZSB0byBldmVyeSBvdGhlciBlbGVtZW50IG9uIHRoZSBwYWdlIGV4Y2VwdCB0aGUgb3ZlcmxheS4gKi9cbiAgcHVibGljIGFjdGl2YXRlKCk6IHZvaWQge1xuICAgIC8vIFJlbW92ZSBpbmVydCBzdGF0ZSBmcm9tIHByZXZpb3VzIG9wZW5lZCBvdmVybGF5XG4gICAgaWYgKHRoaXMuX2luZXJ0T3ZlcmxheXMuc2l6ZSkge1xuICAgICAgdGhpcy5fcmVtb3ZlQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gICAgfVxuXG4gICAgdGhpcy5faW5lcnRPdmVybGF5cy5hZGQodGhpcy5faG9zdCk7XG4gICAgdGhpcy5fYWRkQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gIH1cblxuICAvKiogUmVtb3ZlcyBpbmVydCBzdGF0ZS4gKi9cbiAgcHVibGljIGRlYWN0aXZhdGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRPdmVybGF5KCkgIT09IHRoaXMuX2hvc3QpIHtcbiAgICAgIC8vIElmIGUuZy4gYSBjb21wb25lbnQgZ2V0cyBkaXNjb25uZWN0ZWQsIGl0IGNvdWxkIGJlIHRoYXQgaXQgaXMgbm90IHRoZSB0b3AgbW9zdC5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSwgd2UgY2FuIGRpcmVjdGx5IHJlbW92ZSBpdCwgYXMgdGhlcmUgaXMgY3VycmVudGx5IG5vIGluZXJ0IHN0YXRlIGFwcGxpZWQuXG4gICAgICBpZiAodGhpcy5faW5lcnRPdmVybGF5cy5oYXModGhpcy5faG9zdCkpIHtcbiAgICAgICAgdGhpcy5faW5lcnRPdmVybGF5cy5kZWxldGUodGhpcy5faG9zdCk7XG4gICAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdUcnlpbmcgdG8gcmVtb3ZlIGluZXJ0IHN0YXRlIG9mIGFuIG92ZXJsYXkgd2hpY2ggbmV2ZXIgaGFkIGFuIGFwcGxpZWQgaW5lcnQgc3RhdGUuJyxcbiAgICAgICAgICB0aGlzLl9ob3N0LFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcmVtb3ZlQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gICAgdGhpcy5faW5lcnRPdmVybGF5cy5kZWxldGUodGhpcy5faG9zdCk7XG5cbiAgICAvLyBJZiB0aGVyZSBpcyBhcyBwcmV2aW91cyBvcGVuZWQgb3ZlcmxheSwgc2V0IGl0cyBpbmVydCBzdGF0ZSBhZ2Fpbi5cbiAgICBpZiAodGhpcy5faW5lcnRPdmVybGF5cy5zaXplKSB7XG4gICAgICB0aGlzLl9hZGRBbGxJbmVydEF0dHJpYnV0ZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgYXNzaWduZWQgaG9zdCBpcyBjdXJyZW50bHkgaW5lcnQgKi9cbiAgcHVibGljIGlzSW5lcnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2luZXJ0T3ZlcmxheXMuaGFzKHRoaXMuX2hvc3QpO1xuICB9XG5cbiAgLyoqIFRlbXBvcmFyaWx5IHJlbW92ZXMgYWxsIGluZXJ0IGF0dHJpYnV0ZXMgZnJvbSBhIGdpdmVuIGVsZW1lbnQuICovXG4gIHB1YmxpYyBleGVtcHQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faW5lcnRFbGVtZW50cy5oYXMoZWxlbWVudCkgJiYgIXRoaXMuX2V4ZW1wdGVkRWxlbWVudHMuaGFzKGVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl9yZW1vdmVJbmVydEF0dHJpYnV0ZXMoZWxlbWVudCk7XG4gICAgICB0aGlzLl9pbmVydEVsZW1lbnRzLmRlbGV0ZShlbGVtZW50KTtcbiAgICAgIHRoaXMuX2V4ZW1wdGVkRWxlbWVudHMuYWRkKGVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBJbmVydHMgYW4gZWxlbWVudCBjdXJyZW50bHkgZXhlbXB0ZWQgZnJvbSBpbmVydC4gKi9cbiAgcHVibGljIHJlc3RvcmVBbGxFeGVtcHRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9leGVtcHRlZEVsZW1lbnRzLmZvckVhY2goKGUpID0+IHRoaXMuX2FkZEluZXJ0QXR0cmlidXRlcyhlKSk7XG4gICAgdGhpcy5fZXhlbXB0ZWRFbGVtZW50cy5jbGVhcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3VycmVudE92ZXJsYXkoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX2luZXJ0T3ZlcmxheXNdLnBvcCgpID8/IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9yZW1vdmVBbGxJbmVydEF0dHJpYnV0ZXMoKTogdm9pZCB7XG4gICAgdGhpcy5faW5lcnRFbGVtZW50cy5mb3JFYWNoKChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQgPT5cbiAgICAgIHRoaXMuX3JlbW92ZUluZXJ0QXR0cmlidXRlcyhlbGVtZW50KSxcbiAgICApO1xuICAgIHRoaXMuX2luZXJ0RWxlbWVudHMuY2xlYXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZUluZXJ0QXR0cmlidXRlcyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGlmICghZWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGF0YS1zYmItaW5lcnQnKSkge1xuICAgICAgZWxlbWVudC5pbmVydCA9IGZhbHNlO1xuICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtc2JiLWluZXJ0Jyk7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQuaGFzQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicpKSB7XG4gICAgICBlbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKTtcbiAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZEFsbEluZXJ0QXR0cmlidXRlcygpOiB2b2lkIHtcbiAgICBsZXQgZWxlbWVudDogRWxlbWVudCB8IG51bGwgPSB0aGlzLl9jdXJyZW50T3ZlcmxheSgpO1xuXG4gICAgd2hpbGUgKGVsZW1lbnQgIT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiBlbGVtZW50ICE9PSBudWxsKSB7XG4gICAgICBBcnJheS5mcm9tKChlbGVtZW50Py5wYXJlbnRFbGVtZW50ID8/IGVsZW1lbnQ/LmdldFJvb3ROb2RlKCkpPy5jaGlsZE5vZGVzID8/IFtdKVxuICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgIChjaGlsZCk6IGNoaWxkIGlzIEhUTUxFbGVtZW50ID0+XG4gICAgICAgICAgICBjaGlsZCAhPT0gZWxlbWVudCAmJlxuICAgICAgICAgICAgY2hpbGQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgICAgICFJR05PUkVEX0VMRU1FTlRTLmluY2x1ZGVzKGNoaWxkLmxvY2FsTmFtZSkgJiZcbiAgICAgICAgICAgICFjaGlsZC5jbGFzc0xpc3QuY29udGFpbnMoJ3NiYi1saXZlLWFubm91bmNlci1lbGVtZW50JyksXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICB0aGlzLl9hZGRJbmVydEF0dHJpYnV0ZXMoZWxlbWVudCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAvLyBXZSBuZWVkIHRvIHBpZXJjZSB0aHJvdWdoIFNoYWRvdyBET00gYm91bmRhcnlcbiAgICAgIGVsZW1lbnQgPSBlbGVtZW50Py5wYXJlbnRFbGVtZW50ID8/IChlbGVtZW50Py5nZXRSb290Tm9kZSgpIGFzIFNoYWRvd1Jvb3QpPy5ob3N0ID8/IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYWRkSW5lcnRBdHRyaWJ1dGVzKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5faW5lcnRFbGVtZW50cy5hZGQoZWxlbWVudCk7XG5cbiAgICBpZiAoIWVsZW1lbnQuaW5lcnQpIHtcbiAgICAgIGVsZW1lbnQuaW5lcnQgPSB0cnVlO1xuICAgICAgZWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtc2JiLWluZXJ0JywgdHJ1ZSk7XG4gICAgfVxuXG4gICAgaWYgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKSkge1xuICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGlkZGVuJywgJ3RydWUnKTtcbiAgICAgIGVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicsIHRydWUpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbImVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sbUJBQW1CLENBQUMsVUFBVSxRQUFRLFlBQVksT0FBTztBQUMvRCxNQUFNLG9DQUFvQixJQUFBO0FBQzFCLE1BQU0sdUNBQXVCLElBQUE7QUFDN0IsTUFBTSxvQ0FBb0IsSUFBQTtNQUViLG1CQUFrQjtBQUFBLEVBQzdCLFlBQ1UsT0FDQSxpQkFBaUIsZUFDakIsaUJBQWlCLGVBQ2pCLG9CQUFvQixrQkFBZ0I7QUFIcEMsU0FBQSxRQUFBO0FBQ0EsU0FBQSxpQkFBQTtBQUNBLFNBQUEsaUJBQUE7QUFDQSxTQUFBLG9CQUFBO0FBRVIsU0FBSyxNQUFNLGdCQUFnQixJQUFJO0FBQUEsRUFDakM7QUFBQSxFQUVPLGdCQUFhO0FBQ2xCLFFBQUksS0FBSyxNQUFNLFFBQVE7QUFDckIsV0FBSyxTQUFBO0FBQUEsSUFDUDtBQUFBLEVBQ0Y7QUFBQSxFQUVPLG1CQUFnQjtBQUNyQixRQUFJLEtBQUssV0FBVztBQUNsQixXQUFLLFdBQUE7QUFBQSxJ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
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5lcnQtY29udHJvbGxlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvY29udHJvbGxlcnMvaW5lcnQtY29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlYWN0aXZlQ29udHJvbGxlciwgUmVhY3RpdmVDb250cm9sbGVySG9zdCB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCB0eXBlIHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi9iYXNlLWVsZW1lbnRzLnRzJztcblxuY29uc3QgSUdOT1JFRF9FTEVNRU5UUyA9IFsnc2NyaXB0JywgJ2hlYWQnLCAndGVtcGxhdGUnLCAnc3R5bGUnXTtcbmNvbnN0IGluZXJ0RWxlbWVudHMgPSBuZXcgU2V0PEhUTUxFbGVtZW50PigpO1xuY29uc3QgZXhlbXB0ZWRFbGVtZW50cyA9IG5ldyBTZXQ8SFRNTEVsZW1lbnQ+KCk7XG5jb25zdCBpbmVydE92ZXJsYXlzID0gbmV3IFNldDxIVE1MRWxlbWVudD4oKTtcblxuZXhwb3J0IGNsYXNzIFNiYkluZXJ0Q29udHJvbGxlciBpbXBsZW1lbnRzIFJlYWN0aXZlQ29udHJvbGxlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9ob3N0OiBSZWFjdGl2ZUNvbnRyb2xsZXJIb3N0ICYgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQsXG4gICAgcHJpdmF0ZSBfaW5lcnRFbGVtZW50cyA9IGluZXJ0RWxlbWVudHMsXG4gICAgcHJpdmF0ZSBfaW5lcnRPdmVybGF5cyA9IGluZXJ0T3ZlcmxheXMsXG4gICAgcHJpdmF0ZSBfZXhlbXB0ZWRFbGVtZW50cyA9IGV4ZW1wdGVkRWxlbWVudHMsXG4gICkge1xuICAgIHRoaXMuX2hvc3QuYWRkQ29udHJvbGxlcj8uKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIGhvc3RDb25uZWN0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2hvc3QuaXNPcGVuKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhvc3REaXNjb25uZWN0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNJbmVydCgpKSB7XG4gICAgICB0aGlzLmRlYWN0aXZhdGUoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQXBwbGllcyBpbmVydCBzdGF0ZSB0byBldmVyeSBvdGhlciBlbGVtZW50IG9uIHRoZSBwYWdlIGV4Y2VwdCB0aGUgb3ZlcmxheS4gKi9cbiAgcHVibGljIGFjdGl2YXRlKCk6IHZvaWQge1xuICAgIC8vIFJlbW92ZSBpbmVydCBzdGF0ZSBmcm9tIHByZXZpb3VzIG9wZW5lZCBvdmVybGF5XG4gICAgaWYgKHRoaXMuX2luZXJ0T3ZlcmxheXMuc2l6ZSkge1xuICAgICAgdGhpcy5fcmVtb3ZlQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gICAgfVxuXG4gICAgdGhpcy5faW5lcnRPdmVybGF5cy5hZGQodGhpcy5faG9zdCk7XG4gICAgdGhpcy5fYWRkQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gIH1cblxuICAvKiogUmVtb3ZlcyBpbmVydCBzdGF0ZS4gKi9cbiAgcHVibGljIGRlYWN0aXZhdGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRPdmVybGF5KCkgIT09IHRoaXMuX2hvc3QpIHtcbiAgICAgIC8vIElmIGUuZy4gYSBjb21wb25lbnQgZ2V0cyBkaXNjb25uZWN0ZWQsIGl0IGNvdWxkIGJlIHRoYXQgaXQgaXMgbm90IHRoZSB0b3AgbW9zdC5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSwgd2UgY2FuIGRpcmVjdGx5IHJlbW92ZSBpdCwgYXMgdGhlcmUgaXMgY3VycmVudGx5IG5vIGluZXJ0IHN0YXRlIGFwcGxpZWQuXG4gICAgICBpZiAodGhpcy5faW5lcnRPdmVybGF5cy5oYXModGhpcy5faG9zdCkpIHtcbiAgICAgICAgdGhpcy5faW5lcnRPdmVybGF5cy5kZWxldGUodGhpcy5faG9zdCk7XG4gICAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdUcnlpbmcgdG8gcmVtb3ZlIGluZXJ0IHN0YXRlIG9mIGFuIG92ZXJsYXkgd2hpY2ggbmV2ZXIgaGFkIGFuIGFwcGxpZWQgaW5lcnQgc3RhdGUuJyxcbiAgICAgICAgICB0aGlzLl9ob3N0LFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcmVtb3ZlQWxsSW5lcnRBdHRyaWJ1dGVzKCk7XG4gICAgdGhpcy5faW5lcnRPdmVybGF5cy5kZWxldGUodGhpcy5faG9zdCk7XG5cbiAgICAvLyBJZiB0aGVyZSBpcyBhcyBwcmV2aW91cyBvcGVuZWQgb3ZlcmxheSwgc2V0IGl0cyBpbmVydCBzdGF0ZSBhZ2Fpbi5cbiAgICBpZiAodGhpcy5faW5lcnRPdmVybGF5cy5zaXplKSB7XG4gICAgICB0aGlzLl9hZGRBbGxJbmVydEF0dHJpYnV0ZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgYXNzaWduZWQgaG9zdCBpcyBjdXJyZW50bHkgaW5lcnQgKi9cbiAgcHVibGljIGlzSW5lcnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2luZXJ0T3ZlcmxheXMuaGFzKHRoaXMuX2hvc3QpO1xuICB9XG5cbiAgLyoqIFRlbXBvcmFyaWx5IHJlbW92ZXMgYWxsIGluZXJ0IGF0dHJpYnV0ZXMgZnJvbSBhIGdpdmVuIGVsZW1lbnQuICovXG4gIHB1YmxpYyBleGVtcHQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faW5lcnRFbGVtZW50cy5oYXMoZWxlbWVudCkgJiYgIXRoaXMuX2V4ZW1wdGVkRWxlbWVudHMuaGFzKGVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl9yZW1vdmVJbmVydEF0dHJpYnV0ZXMoZWxlbWVudCk7XG4gICAgICB0aGlzLl9pbmVydEVsZW1lbnRzLmRlbGV0ZShlbGVtZW50KTtcbiAgICAgIHRoaXMuX2V4ZW1wdGVkRWxlbWVudHMuYWRkKGVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBJbmVydHMgYW4gZWxlbWVudCBjdXJyZW50bHkgZXhlbXB0ZWQgZnJvbSBpbmVydC4gKi9cbiAgcHVibGljIHJlc3RvcmVBbGxFeGVtcHRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9leGVtcHRlZEVsZW1lbnRzLmZvckVhY2goKGUpID0+IHRoaXMuX2FkZEluZXJ0QXR0cmlidXRlcyhlKSk7XG4gICAgdGhpcy5fZXhlbXB0ZWRFbGVtZW50cy5jbGVhcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3VycmVudE92ZXJsYXkoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX2luZXJ0T3ZlcmxheXNdLnBvcCgpID8/IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9yZW1vdmVBbGxJbmVydEF0dHJpYnV0ZXMoKTogdm9pZCB7XG4gICAgdGhpcy5faW5lcnRFbGVtZW50cy5mb3JFYWNoKChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQgPT5cbiAgICAgIHRoaXMuX3JlbW92ZUluZXJ0QXR0cmlidXRlcyhlbGVtZW50KSxcbiAgICApO1xuICAgIHRoaXMuX2luZXJ0RWxlbWVudHMuY2xlYXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZUluZXJ0QXR0cmlidXRlcyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGlmICghZWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGF0YS1zYmItaW5lcnQnKSkge1xuICAgICAgZWxlbWVudC5pbmVydCA9IGZhbHNlO1xuICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtc2JiLWluZXJ0Jyk7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQuaGFzQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicpKSB7XG4gICAgICBlbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKTtcbiAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZEFsbEluZXJ0QXR0cmlidXRlcygpOiB2b2lkIHtcbiAgICBsZXQgZWxlbWVudDogRWxlbWVudCB8IG51bGwgPSB0aGlzLl9jdXJyZW50T3ZlcmxheSgpO1xuXG4gICAgd2hpbGUgKGVsZW1lbnQgIT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiBlbGVtZW50ICE9PSBudWxsKSB7XG4gICAgICBBcnJheS5mcm9tKChlbGVtZW50Py5wYXJlbnRFbGVtZW50ID8/IGVsZW1lbnQ/LmdldFJvb3ROb2RlKCkpPy5jaGlsZE5vZGVzID8/IFtdKVxuICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgIChjaGlsZCk6IGNoaWxkIGlzIEhUTUxFbGVtZW50ID0+XG4gICAgICAgICAgICBjaGlsZCAhPT0gZWxlbWVudCAmJlxuICAgICAgICAgICAgY2hpbGQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgICAgICFJR05PUkVEX0VMRU1FTlRTLmluY2x1ZGVzKGNoaWxkLmxvY2FsTmFtZSkgJiZcbiAgICAgICAgICAgICFjaGlsZC5jbGFzc0xpc3QuY29udGFpbnMoJ3NiYi1saXZlLWFubm91bmNlci1lbGVtZW50JyksXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICB0aGlzLl9hZGRJbmVydEF0dHJpYnV0ZXMoZWxlbWVudCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAvLyBXZSBuZWVkIHRvIHBpZXJjZSB0aHJvdWdoIFNoYWRvdyBET00gYm91bmRhcnlcbiAgICAgIGVsZW1lbnQgPSBlbGVtZW50Py5wYXJlbnRFbGVtZW50ID8/IChlbGVtZW50Py5nZXRSb290Tm9kZSgpIGFzIFNoYWRvd1Jvb3QpPy5ob3N0ID8/IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYWRkSW5lcnRBdHRyaWJ1dGVzKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5faW5lcnRFbGVtZW50cy5hZGQoZWxlbWVudCk7XG5cbiAgICBpZiAoIWVsZW1lbnQuaW5lcnQpIHtcbiAgICAgIGVsZW1lbnQuaW5lcnQgPSB0cnVlO1xuICAgICAgZWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtc2JiLWluZXJ0JywgdHJ1ZSk7XG4gICAgfVxuXG4gICAgaWYgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKSkge1xuICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGlkZGVuJywgJ3RydWUnKTtcbiAgICAgIGVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLXNiYi1hcmlhLWhpZGRlbicsIHRydWUpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbImVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sbUJBQW1CLENBQUMsVUFBVSxRQUFRLFlBQVksT0FBTztBQUMvRCxNQUFNLG9DQUFvQixJQUFBO0FBQzFCLE1BQU0sdUNBQXVCLElBQUE7QUFDN0IsTUFBTSxvQ0FBb0IsSUFBQTtNQUViLG1CQUFrQjtBQUFBLEVBQzdCLFlBQ1UsT0FDQSxpQkFBaUIsZUFDakIsaUJBQWlCLGVBQ2pCLG9CQUFvQixrQkFBZ0I7QUFIcEMsU0FBQSxRQUFBO0FBQ0EsU0FBQSxpQkFBQTtBQUNBLFNBQUEsaUJBQUE7QUFDQSxTQUFBLG9CQUFBO0FBRVIsU0FBSyxNQUFNLGdCQUFnQixJQUFJO0FBQUEsRUFDakM7QUFBQSxFQUVPLGdCQUFhO0FBQ2xCLFFBQUksS0FBSyxNQUFNLFFBQVE7QUFDckIsV0FBSyxTQUFBO0FBQUEsSUFDUDtBQUFBLEVBQ0Y7QUFBQSxFQUVPLG1CQUFnQjtBQUNyQixRQUFJLEtBQUssV0FBVztBQUNsQixXQUFLLFdBQUE7QUFBQSxJ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
@@ -1 +1 @@
1
- {"version":3,"file":"overlay-position-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/overlay-position-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAqDjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IAyBnE,OAAO,CAAC,YAAY;IAxBtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAEtB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAC/F,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,CAA2C;IAC1D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,oEAAoE;IACpE,IAAW,eAAe,IAAI,MAAM,CAOnC;gBAGC,IAAI,EAAE,sBAAsB,GAAG,WAAW,GAAG,4BAA4B,EACjE,YAAY,UAA8B;IAM7C,aAAa,IAAI,IAAI;IASrB,UAAU,IAAI,IAAI;IAOzB;;;;OAIG;IACI,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAmClC,UAAU,IAAI,IAAI;IAOzB,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAiL3B,OAAO,CAAC,qBAAqB;IAM7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CA6B9B"}
1
+ {"version":3,"file":"overlay-position-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/overlay-position-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAqDjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IAyBnE,OAAO,CAAC,YAAY;IAxBtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAEtB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAC/F,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,CAA2C;IAC1D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,oEAAoE;IACpE,IAAW,eAAe,IAAI,MAAM,CAOnC;gBAGC,IAAI,EAAE,sBAAsB,GAAG,WAAW,GAAG,4BAA4B,EACjE,YAAY,UAA8B;IAM7C,aAAa,IAAI,IAAI;IASrB,UAAU,IAAI,IAAI;IAOzB;;;;OAIG;IACI,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAmClC,UAAU,IAAI,IAAI;IAOzB,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAkL3B,OAAO,CAAC,qBAAqB;IAM7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CA6B9B"}
@@ -1,19 +1,5 @@
1
1
  import { isServer } from "lit";
2
2
  const cssAnchorPositionSupported = !isServer && CSS.supports("anchor-name", "--test");
3
- const physicalSupportedPositions = [
4
- "top",
5
- "bottom",
6
- "left",
7
- "right",
8
- "top span-left",
9
- "top span-right",
10
- "bottom span-left",
11
- "bottom span-right",
12
- "left span-top",
13
- "left span-bottom",
14
- "right span-top",
15
- "right span-bottom"
16
- ];
17
3
  const logicalSupportedPositions = [
18
4
  "block-start",
19
5
  "block-end",
@@ -42,7 +28,6 @@ const rtlPositionMapping = {
42
28
  "inline-end span-block-start": "inline-start span-block-start",
43
29
  "inline-end span-block-end": "inline-start span-block-end"
44
30
  };
45
- const supportedPositions = [...physicalSupportedPositions, ...logicalSupportedPositions];
46
31
  let nextId = 0;
47
32
  class SbbOverlayPositionController {
48
33
  /** Get the current position. (e.g. block-end, block-start, etc.) */
@@ -290,10 +275,6 @@ class SbbOverlayPositionController {
290
275
  this._overlayStyles.getPropertyValue("--sbb-overlay-position-area") || "block-end",
291
276
  ...this._overlayStyles.getPropertyValue("--sbb-overlay-position-try-fallbacks").split(",").map((f) => f.trim()).filter((f) => !!f)
292
277
  ];
293
- if (positions.some((p) => !supportedPositions.includes(p))) {
294
- const unsupportedPositions = positions.filter((p) => !supportedPositions.includes(p)).sort().join(", ");
295
- throw new Error(`Unsupported position-try-fallbacks ${unsupportedPositions} (Supported: ${supportedPositions.join(", ")})`);
296
- }
297
278
  this._positions = positions;
298
279
  if (this._lastPosition && !this._positions.includes(this._lastPosition)) {
299
280
  this._lastPosition = void 0;
@@ -303,4 +284,4 @@ class SbbOverlayPositionController {
303
284
  export {
304
285
  SbbOverlayPositionController
305
286
  };
306
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9jb250cm9sbGVycy9vdmVybGF5LXBvc2l0aW9uLWNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTZXJ2ZXIsIHR5cGUgUmVhY3RpdmVDb250cm9sbGVyLCB0eXBlIFJlYWN0aXZlQ29udHJvbGxlckhvc3QgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUgfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG5jb25zdCBjc3NBbmNob3JQb3NpdGlvblN1cHBvcnRlZCA9ICFpc1NlcnZlciAmJiBDU1Muc3VwcG9ydHMoJ2FuY2hvci1uYW1lJywgJy0tdGVzdCcpO1xuXG5jb25zdCBwaHlzaWNhbFN1cHBvcnRlZFBvc2l0aW9ucyA9IFtcbiAgJ3RvcCcsXG4gICdib3R0b20nLFxuICAnbGVmdCcsXG4gICdyaWdodCcsXG4gICd0b3Agc3Bhbi1sZWZ0JyxcbiAgJ3RvcCBzcGFuLXJpZ2h0JyxcbiAgJ2JvdHRvbSBzcGFuLWxlZnQnLFxuICAnYm90dG9tIHNwYW4tcmlnaHQnLFxuICAnbGVmdCBzcGFuLXRvcCcsXG4gICdsZWZ0IHNwYW4tYm90dG9tJyxcbiAgJ3JpZ2h0IHNwYW4tdG9wJyxcbiAgJ3JpZ2h0IHNwYW4tYm90dG9tJyxcbl07XG5cbi8vIE5vdGU6IGlmIHlvdSBhZGQgbmV3IGxvZ2ljYWwgc3VwcG9ydGVkIHBvc2l0aW9ucywgdXBkYXRlIGFsc28gdGhlICdydGxQb3NpdGlvbk1hcHBpbmcnXG5jb25zdCBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zID0gW1xuICAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJyxcbiAgJ2lubGluZS1zdGFydCcsXG4gICdpbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCcsXG4gICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnLFxuICAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JyxcbiAgJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1lbmQnLFxuXTtcblxuY29uc3QgcnRsUG9zaXRpb25NYXBwaW5nOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAnYmxvY2stc3RhcnQnOiAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJzogJ2Jsb2NrLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQnOiAnaW5saW5lLWVuZCcsXG4gICdpbmxpbmUtZW5kJzogJ2lubGluZS1zdGFydCcsXG4gICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnLFxuICAnYmxvY2stc3RhcnQgc3Bhbi1pbmxpbmUtZW5kJzogJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOiAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2lubGluZS1zdGFydCBzcGFuLWJsb2NrLXN0YXJ0JzogJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOiAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCcsXG4gICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOiAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6ICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxufTtcblxuY29uc3Qgc3VwcG9ydGVkUG9zaXRpb25zID0gWy4uLnBoeXNpY2FsU3VwcG9ydGVkUG9zaXRpb25zLCAuLi5sb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zXTtcbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIENvbnRyb2xsZXIgZm9yIG1hbmFnaW5nIG92ZXJsYXlzIHBvc2l0aW9uaW5nLiBBbHNvIGFjdHMgYXMgYSBwb2x5ZmlsbCB3aGVuIG5hdGl2ZVxuICogQ1NTIEFuY2hvciBQb3NpdGlvbmluZyBpcyBub3Qgc3VwcG9ydGVkIChlbm91Z2gpLlxuICogQXBwbGllcyB1bmlxdWUgYW5jaG9yIG5hbWVzIHdoZW4gdXNpbmcgbmF0aXZlIENTUyBBbmNob3IgUG9zaXRpb25pbmdcbiAqIG9yIGNhbGN1bGF0ZXMgYW5kIGFwcGxpZXMgY29ycmVjdCBwb3NpdGlvbnMgaW4gcG9seWZpbGwgbW9kZS5cbiAqXG4gKiBBbHNvLCB0aGUgY29udHJvbGxlciBzZXRzIHRoZSAnZGF0YS1wb3NpdGlvbicgYXR0cmlidXRlIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQuXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGFwcGx5IHNwZWNpZmljIHN0eWxlcyBiYXNlZCBvbiB0aGUgY3VycmVudCBwb3NpdGlvbiBvZiB0aGUgb3ZlcmxheS5cbiAqXG4gKiAjIyMgSW1wbGVtZW50YXRpb25cbiAqIERlZmluZSBhbmQgYXBwbHkgdGhlIGZvbGxvd2luZyBDU1MgdmFyaWFibGVzIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQ6XG4gKiBgYGBzY3NzXG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tYXJlYTogYmxvY2stZW5kOyAvLyBEZWZhdWx0XG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogYmxvY2stc3RhcnQsIGlubGluZS1lbmQsIGlubGluZS1zdGFydDsgLy8gRmFsbGJhY2tzXG4gKlxuICogICBwb3NpdGlvbi1hcmVhOiB2YXIoLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhKTtcbiAqICAgcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogdmFyKC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk92ZXJsYXlQb3NpdGlvbkNvbnRyb2xsZXIgaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVPYnNlcnZlciA9ICFpc1NlcnZlclxuICAgID8gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX3JlcXVlc3RDYWxjdWxhdGVQb3NpdGlvbigpKVxuICAgIDogbnVsbCE7XG4gIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXk6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGU7XG4gIHByaXZhdGUgX2Fib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfYW5jaG9yPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX292ZXJsYXlTdHlsZXM/OiBDU1NTdHlsZURlY2xhcmF0aW9uO1xuICBwcml2YXRlIF9mcmFtZT86IFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT47XG4gIHByaXZhdGUgX2FuY2hvck5hbWUgPSBgLS1zYmItb3ZlcmxheS1hbmNob3ItJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9wb3NpdGlvbnM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX2xhc3RQb3NpdGlvbj86IHN0cmluZztcblxuICAvKiogR2V0IHRoZSBjdXJyZW50IHBvc2l0aW9uLiAoZS5nLiBibG9jay1lbmQsIGJsb2NrLXN0YXJ0LCBldGMuKSAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnRQb3NpdGlvbigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhc3RQb3NpdGlvbiA/PyB0aGlzLl9wb3NpdGlvbnNbMF0gPz8gJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCdwb3NpdGlvbi1hcmVhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGhvc3Q6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUsXG4gICAgcHJpdmF0ZSBfdXNlUG9seWZpbGwgPSAhY3NzQW5jaG9yUG9zaXRpb25TdXBwb3J0ZWQsXG4gICkge1xuICAgIGhvc3QuYWRkQ29udHJvbGxlcih0aGlzKTtcbiAgICB0aGlzLl9vdmVybGF5ID0gaG9zdDtcbiAgfVxuXG4gIHB1YmxpYyBob3N0Q29ubmVjdGVkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFuY2hvcicsIHRoaXMuX2FuY2hvck5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZXNldCB0aGUgJ3Bvc2l0aW9uLWFyZWEnIHZhbHVlIHRvIGF2b2lkIGFueSB1bndhbnRlZCBzaWRlIGVmZmVjdCB3aGVuIHVzaW5nIHRoZSBwb2x5ZmlsbC5cbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFyZWEnLCAnaW5pdGlhbCcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBob3N0VXBkYXRlKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbm5lY3RzIHRoZSBvdmVybGF5IHRvIHRoZSBnaXZlbiB0cmlnZ2VyIGVsZW1lbnQgYW5kIGRldGVybWluZXMgdGhlIG9wdGltYWwgcG9zaXRpb24uXG4gICAqIFVzdWFsbHksIHRoaXMgaXMgY2FsbGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgb3BlbmVkLlxuICAgKiBAcGFyYW0gYW5jaG9yIFRoZSBhbmNob3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBjb25uZWN0KGFuY2hvcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fYW5jaG9yKSB7XG4gICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gICAgdGhpcy5fYW5jaG9yID0gYW5jaG9yO1xuXG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgdGhpcy5fYW5jaG9yLnN0eWxlLnNldFByb3BlcnR5KCdhbmNob3ItbmFtZScsIHRoaXMuX2FuY2hvck5hbWUhKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICAgIHRoaXMuX2NhbGN1bGF0ZVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gdXNlIGNhcHR1cmUgaGVyZSB0byByZWFjdCB0byBhbGwgc2Nyb2xsIGV2ZW50cy5cbiAgICAvLyBJZiBjYXB0dXJlIHdhcyBub3QgdXNlZCwgdGhlbiBzY3JvbGwgZXZlbnRzIGluc2lkZSBzZXBhcmF0ZSBzY3JvbGxcbiAgICAvLyBjb250YWluZXJzIHdvdWxkIG5vdCBiZSBjYXVnaHQuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCksIHtcbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9hYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9yZXF1ZXN0Q2FsY3VsYXRlUG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKGFuY2hvciwgeyBib3g6ICdib3JkZXItYm94JyB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX292ZXJsYXksIHsgYm94OiAnYm9yZGVyLWJveCcgfSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY29ubmVjdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hbmNob3I/LnN0eWxlLnJlbW92ZVByb3BlcnR5KCdhbmNob3ItbmFtZScpO1xuICAgIHRoaXMuX2FuY2hvciA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZyYW1lID8/PSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy5fY2FsY3VsYXRlUG9zaXRpb24oKTtcbiAgICAgIHRoaXMuX2ZyYW1lID0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9hbmNob3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5fZ2V0T3B0aW1hbFBvc2l0aW9uKHRoaXMuX3Bvc2l0aW9ucyk7XG4gICAgICB0aGlzLl9hcHBseU92ZXJsYXlQb3NpdGlvbihwb3NpdGlvbi5wb3NpdGlvbiwgcG9zaXRpb24ubGVmdCwgcG9zaXRpb24udG9wKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vdmVybGF5LnNldEF0dHJpYnV0ZSgnZGF0YS1wb3NpdGlvbicsIHRoaXMuY3VycmVudFBvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBvcHRpbWFsIHBvc2l0aW9uIHRoYXQgZml0cyB0aGUgb3ZlcmxheS5cbiAgICogQHBhcmFtIHBvc2l0aW9ucyBUaGUgbGlzdCBvZiBwb3NpdGlvbnMgdG8gY2hlY2suXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9nZXRPcHRpbWFsUG9zaXRpb24ocG9zaXRpb25zOiBzdHJpbmdbXSk6IHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG4gICAgcG9zaXRpb246IHN0cmluZztcbiAgICBmaXRzPzogYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgeyBvZmZzZXRIZWlnaHQ6IG92ZXJsYXlIZWlnaHQsIG9mZnNldFdpZHRoOiBvdmVybGF5V2lkdGggfSA9IHRoaXMuX292ZXJsYXk7XG4gICAgY29uc3QgeyBpbm5lckhlaWdodDogdmlld3BvcnRIZWlnaHQsIGlubmVyV2lkdGg6IHZpZXdwb3J0V2lkdGggfSA9IHdpbmRvdztcbiAgICBjb25zdCB7XG4gICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgIGhlaWdodDogdHJpZ2dlckhlaWdodCxcbiAgICAgIHdpZHRoOiB0cmlnZ2VyV2lkdGgsXG4gICAgfSA9IHRoaXMuX2FuY2hvciEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICBjb25zdCBpc1J0bCA9IHRoaXMuX292ZXJsYXkubWF0Y2hlcygnOmRpcihydGwpJyk7XG4gICAgY29uc3QgdG9wU3BhY2UgPSB0cmlnZ2VyT2Zmc2V0VG9wO1xuICAgIGNvbnN0IGJvdHRvbVNwYWNlID0gdmlld3BvcnRIZWlnaHQgLSB0cmlnZ2VySGVpZ2h0IC0gdHJpZ2dlck9mZnNldFRvcDtcbiAgICBjb25zdCBsZWZ0U3BhY2UgPSB0cmlnZ2VyT2Zmc2V0TGVmdDtcbiAgICBjb25zdCByaWdodFNwYWNlID0gdmlld3BvcnRXaWR0aCAtIHRyaWdnZXJXaWR0aCAtIHRyaWdnZXJPZmZzZXRMZWZ0O1xuXG4gICAgLy8gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgb3ZlcmxheSBhbmQgdGhlIHRyaWdnZXIgd2lkdGgvaGVpZ2h0LlxuICAgIGNvbnN0IG92ZXJsYXlXaWR0aE5ldCA9IG92ZXJsYXlXaWR0aCAtIHRyaWdnZXJXaWR0aDtcbiAgICBjb25zdCBvdmVybGF5SGVpZ2h0TmV0ID0gb3ZlcmxheUhlaWdodCAtIHRyaWdnZXJIZWlnaHQ7XG5cbiAgICAvLyBUaGUgYW1vdW50IHRoYXQgd291bGQgZXhjZWVkIHRoZSB0cmlnZ2VyIGlmIHRoZSBvdmVybGF5IHdlcmUgY2VudGVyZWQgb24gaXQuXG4gICAgY29uc3Qgb3ZlcmxheVdpZHRoT3ZlcmxhcCA9IG92ZXJsYXlXaWR0aE5ldCAvIDI7XG4gICAgY29uc3Qgb3ZlcmxheUhlaWdodE92ZXJsYXAgPSBvdmVybGF5SGVpZ2h0TmV0IC8gMjtcblxuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItaGVpZ2h0JyxcbiAgICAgIGAke3RyaWdnZXJIZWlnaHR9cHhgLFxuICAgICk7XG4gICAgdGhpcy5fb3ZlcmxheS5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItd2lkdGgnLCBgJHt0cmlnZ2VyV2lkdGh9cHhgKTtcblxuICAgIGxldCByZXN1bHQ6IFJldHVyblR5cGU8dHlwZW9mIHRoaXMuX2dldE9wdGltYWxQb3NpdGlvbj4gPSB7IGxlZnQ6IDAsIHRvcDogMCwgcG9zaXRpb246ICcnIH07XG4gICAgbGV0IGZpcnN0UG9zaXRpb246IFJldHVyblR5cGU8dHlwZW9mIHRoaXMuX2dldE9wdGltYWxQb3NpdGlvbj4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgZm9yIChjb25zdCBwb3NpdGlvbiBvZiBwb3NpdGlvbnMpIHtcbiAgICAgIC8vIElmIHJ0bCBpcyBlbmFibGVkLCB3ZSBtYXAgdGhlIGxvZ2ljYWwgcG9zaXRpb24gdG8gdGhlaXIgUlRMIGVxdWl2YWxlbnQuIChlLmcuICdpbmxpbmUtc3RhcnQnIC0+ICdpbmxpbmUtZW5kJylcbiAgICAgIGNvbnN0IHBoeXNpY2FsUG9zaXRpb24gPVxuICAgICAgICBpc1J0bCAmJiBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zLmluY2x1ZGVzKHBvc2l0aW9uKVxuICAgICAgICAgID8gcnRsUG9zaXRpb25NYXBwaW5nW3Bvc2l0aW9uXVxuICAgICAgICAgIDogcG9zaXRpb247XG5cbiAgICAgIHN3aXRjaCAocGh5c2ljYWxQb3NpdGlvbikge1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICBjYXNlICdibG9jay1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGhPdmVybGFwLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHQgPD0gYm90dG9tU3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheVdpZHRoT3ZlcmxhcCA8PSBsZWZ0U3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheVdpZHRoT3ZlcmxhcCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoT3ZlcmxhcCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgIGNhc2UgJ2lubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgKyB0cmlnZ2VyV2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0T3ZlcmxhcCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0T3ZlcmxhcCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aCA8PSBsZWZ0U3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodE92ZXJsYXAgPD0gdG9wU3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodE92ZXJsYXAgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndG9wIHNwYW4tbGVmdCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoTmV0LFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlIZWlnaHQgPD0gdG9wU3BhY2UgJiYgb3ZlcmxheVdpZHRoTmV0IDw9IGxlZnRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0b3Agc3Bhbi1yaWdodCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JvdHRvbSBzcGFuLWxlZnQnOlxuICAgICAgICBjYXNlICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGhOZXQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSBib3R0b21TcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gbGVmdFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JvdHRvbSBzcGFuLXJpZ2h0JzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IGJvdHRvbVNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQgc3Bhbi10b3AnOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IGxlZnRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IHRvcFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQgc3Bhbi1ib3R0b20nOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5V2lkdGggPD0gbGVmdFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQgc3Bhbi10b3AnOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgKyB0cmlnZ2VyV2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0IC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gdG9wU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQgc3Bhbi1ib3R0b20nOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wLFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IHJpZ2h0U3BhY2UgJiYgb3ZlcmxheUhlaWdodE5ldCA8PSBib3R0b21TcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgaWYgKHJlc3VsdC5maXRzKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBmaXJzdFBvc2l0aW9uID8/PSByZXN1bHQ7XG4gICAgfVxuXG4gICAgLy8gSWYgbm8gcG9zaXRpb24gZml0cywgd2UgcmV0dXJuIHRoZSBmaXJzdCBvbmUuXG4gICAgcmV0dXJuIGZpcnN0UG9zaXRpb24hO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlPdmVybGF5UG9zaXRpb24ocG9zaXRpb246IHN0cmluZywgbGVmdDogbnVtYmVyLCB0b3A6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2xhc3RQb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUubGVmdCA9IGAke2xlZnR9cHhgO1xuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUudG9wID0gYCR7dG9wfXB4YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbmx5IHVzZWQgaW4gcG9seWZpbGwgbW9kZS5cbiAgICogUmVhZHMgdGhlIGxpc3Qgb2YgdGhlIGNvbmZpZ3VyZWQgcG9zaXRpb25zIGZyb20gdGhlIENTUyB2YXJpYWJsZXMuXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9yZWFkUG9zaXRpb25zRnJvbUNzcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3VzZVBvbHlmaWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgY29uc3QgcG9zaXRpb25zID0gW1xuICAgICAgdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1vdmVybGF5LXBvc2l0aW9uLWFyZWEnKSB8fCAnYmxvY2stZW5kJyxcbiAgICAgIC4uLnRoaXMuX292ZXJsYXlTdHlsZXNcbiAgICAgICAgLmdldFByb3BlcnR5VmFsdWUoJy0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcycpXG4gICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgIC5tYXAoKGYpID0+IGYudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKChmKSA9PiAhIWYpLFxuICAgIF07XG5cbiAgICBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFViAmJiBwb3NpdGlvbnMuc29tZSgocCkgPT4gIXN1cHBvcnRlZFBvc2l0aW9ucy5pbmNsdWRlcyhwKSkpIHtcbiAgICAgIGNvbnN0IHVuc3VwcG9ydGVkUG9zaXRpb25zID0gcG9zaXRpb25zXG4gICAgICAgIC5maWx0ZXIoKHApID0+ICFzdXBwb3J0ZWRQb3NpdGlvbnMuaW5jbHVkZXMocCkpXG4gICAgICAgIC5zb3J0KClcbiAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbnN1cHBvcnRlZCBwb3NpdGlvbi10cnktZmFsbGJhY2tzICR7dW5zdXBwb3J0ZWRQb3NpdGlvbnN9IChTdXBwb3J0ZWQ6ICR7c3VwcG9ydGVkUG9zaXRpb25zLmpvaW4oJywgJyl9KWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuX3Bvc2l0aW9ucyA9IHBvc2l0aW9ucztcbiAgICBpZiAodGhpcy5fbGFzdFBvc2l0aW9uICYmICF0aGlzLl9wb3NpdGlvbnMuaW5jbHVkZXModGhpcy5fbGFzdFBvc2l0aW9uKSkge1xuICAgICAgdGhpcy5fbGFzdFBvc2l0aW9uID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFJQSxNQUFNLDZCQUE2QixDQUFDLFlBQVksSUFBSSxTQUFTLGVBQWUsUUFBUTtBQUVwRixNQUFNLDZCQUE2QjtBQUFBLEVBQ2pDO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7O0FBSUYsTUFBTSw0QkFBNEI7QUFBQSxFQUNoQztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBOztBQUdGLE1BQU0scUJBQWdEO0FBQUEsRUFDcEQsZUFBZTtBQUFBLEVBQ2YsYUFBYTtBQUFBLEVBQ2IsZ0JBQWdCO0FBQUEsRUFDaEIsY0FBYztBQUFBLEVBQ2QsaUNBQWlDO0FBQUEsRUFDakMsK0JBQStCO0FBQUEsRUFDL0IsK0JBQStCO0FBQUEsRUFDL0IsNkJBQTZCO0FBQUEsRUFDN0IsaUNBQWlDO0FBQUEsRUFDakMsK0JBQStCO0FBQUEsRUFDL0IsK0JBQStCO0FBQUEsRUFDL0IsNkJBQTZCOztBQUcvQixNQUFNLHFCQUFxQixDQUFDLEdBQUcsNEJBQTRCLEdBQUcseUJBQXlCO0FBQ3ZGLElBQUksU0FBUztNQXFCQSw2QkFBNEI7QUFBQTtBQUFBLEVBY3ZDLElBQVcsa0JBQWU7QUFDeEIsUUFBSSxLQUFLLGNB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
287
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9jb250cm9sbGVycy9vdmVybGF5LXBvc2l0aW9uLWNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTZXJ2ZXIsIHR5cGUgUmVhY3RpdmVDb250cm9sbGVyLCB0eXBlIFJlYWN0aXZlQ29udHJvbGxlckhvc3QgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUgfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG5jb25zdCBjc3NBbmNob3JQb3NpdGlvblN1cHBvcnRlZCA9ICFpc1NlcnZlciAmJiBDU1Muc3VwcG9ydHMoJ2FuY2hvci1uYW1lJywgJy0tdGVzdCcpO1xuXG5jb25zdCBwaHlzaWNhbFN1cHBvcnRlZFBvc2l0aW9ucyA9IFtcbiAgJ3RvcCcsXG4gICdib3R0b20nLFxuICAnbGVmdCcsXG4gICdyaWdodCcsXG4gICd0b3Agc3Bhbi1sZWZ0JyxcbiAgJ3RvcCBzcGFuLXJpZ2h0JyxcbiAgJ2JvdHRvbSBzcGFuLWxlZnQnLFxuICAnYm90dG9tIHNwYW4tcmlnaHQnLFxuICAnbGVmdCBzcGFuLXRvcCcsXG4gICdsZWZ0IHNwYW4tYm90dG9tJyxcbiAgJ3JpZ2h0IHNwYW4tdG9wJyxcbiAgJ3JpZ2h0IHNwYW4tYm90dG9tJyxcbl07XG5cbi8vIE5vdGU6IGlmIHlvdSBhZGQgbmV3IGxvZ2ljYWwgc3VwcG9ydGVkIHBvc2l0aW9ucywgdXBkYXRlIGFsc28gdGhlICdydGxQb3NpdGlvbk1hcHBpbmcnXG5jb25zdCBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zID0gW1xuICAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJyxcbiAgJ2lubGluZS1zdGFydCcsXG4gICdpbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCcsXG4gICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnLFxuICAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JyxcbiAgJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1lbmQnLFxuXTtcblxuY29uc3QgcnRsUG9zaXRpb25NYXBwaW5nOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAnYmxvY2stc3RhcnQnOiAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJzogJ2Jsb2NrLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQnOiAnaW5saW5lLWVuZCcsXG4gICdpbmxpbmUtZW5kJzogJ2lubGluZS1zdGFydCcsXG4gICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnLFxuICAnYmxvY2stc3RhcnQgc3Bhbi1pbmxpbmUtZW5kJzogJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOiAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2lubGluZS1zdGFydCBzcGFuLWJsb2NrLXN0YXJ0JzogJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOiAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCcsXG4gICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOiAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6ICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxufTtcblxuY29uc3Qgc3VwcG9ydGVkUG9zaXRpb25zID0gWy4uLnBoeXNpY2FsU3VwcG9ydGVkUG9zaXRpb25zLCAuLi5sb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zXTtcbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIENvbnRyb2xsZXIgZm9yIG1hbmFnaW5nIG92ZXJsYXlzIHBvc2l0aW9uaW5nLiBBbHNvIGFjdHMgYXMgYSBwb2x5ZmlsbCB3aGVuIG5hdGl2ZVxuICogQ1NTIEFuY2hvciBQb3NpdGlvbmluZyBpcyBub3Qgc3VwcG9ydGVkIChlbm91Z2gpLlxuICogQXBwbGllcyB1bmlxdWUgYW5jaG9yIG5hbWVzIHdoZW4gdXNpbmcgbmF0aXZlIENTUyBBbmNob3IgUG9zaXRpb25pbmdcbiAqIG9yIGNhbGN1bGF0ZXMgYW5kIGFwcGxpZXMgY29ycmVjdCBwb3NpdGlvbnMgaW4gcG9seWZpbGwgbW9kZS5cbiAqXG4gKiBBbHNvLCB0aGUgY29udHJvbGxlciBzZXRzIHRoZSAnZGF0YS1wb3NpdGlvbicgYXR0cmlidXRlIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQuXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGFwcGx5IHNwZWNpZmljIHN0eWxlcyBiYXNlZCBvbiB0aGUgY3VycmVudCBwb3NpdGlvbiBvZiB0aGUgb3ZlcmxheS5cbiAqXG4gKiAjIyMgSW1wbGVtZW50YXRpb25cbiAqIERlZmluZSBhbmQgYXBwbHkgdGhlIGZvbGxvd2luZyBDU1MgdmFyaWFibGVzIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQ6XG4gKiBgYGBzY3NzXG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tYXJlYTogYmxvY2stZW5kOyAvLyBEZWZhdWx0XG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogYmxvY2stc3RhcnQsIGlubGluZS1lbmQsIGlubGluZS1zdGFydDsgLy8gRmFsbGJhY2tzXG4gKlxuICogICBwb3NpdGlvbi1hcmVhOiB2YXIoLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhKTtcbiAqICAgcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogdmFyKC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk92ZXJsYXlQb3NpdGlvbkNvbnRyb2xsZXIgaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVPYnNlcnZlciA9ICFpc1NlcnZlclxuICAgID8gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX3JlcXVlc3RDYWxjdWxhdGVQb3NpdGlvbigpKVxuICAgIDogbnVsbCE7XG4gIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXk6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGU7XG4gIHByaXZhdGUgX2Fib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfYW5jaG9yPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX292ZXJsYXlTdHlsZXM/OiBDU1NTdHlsZURlY2xhcmF0aW9uO1xuICBwcml2YXRlIF9mcmFtZT86IFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT47XG4gIHByaXZhdGUgX2FuY2hvck5hbWUgPSBgLS1zYmItb3ZlcmxheS1hbmNob3ItJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9wb3NpdGlvbnM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX2xhc3RQb3NpdGlvbj86IHN0cmluZztcblxuICAvKiogR2V0IHRoZSBjdXJyZW50IHBvc2l0aW9uLiAoZS5nLiBibG9jay1lbmQsIGJsb2NrLXN0YXJ0LCBldGMuKSAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnRQb3NpdGlvbigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhc3RQb3NpdGlvbiA/PyB0aGlzLl9wb3NpdGlvbnNbMF0gPz8gJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCdwb3NpdGlvbi1hcmVhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGhvc3Q6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUsXG4gICAgcHJpdmF0ZSBfdXNlUG9seWZpbGwgPSAhY3NzQW5jaG9yUG9zaXRpb25TdXBwb3J0ZWQsXG4gICkge1xuICAgIGhvc3QuYWRkQ29udHJvbGxlcih0aGlzKTtcbiAgICB0aGlzLl9vdmVybGF5ID0gaG9zdDtcbiAgfVxuXG4gIHB1YmxpYyBob3N0Q29ubmVjdGVkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFuY2hvcicsIHRoaXMuX2FuY2hvck5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZXNldCB0aGUgJ3Bvc2l0aW9uLWFyZWEnIHZhbHVlIHRvIGF2b2lkIGFueSB1bndhbnRlZCBzaWRlIGVmZmVjdCB3aGVuIHVzaW5nIHRoZSBwb2x5ZmlsbC5cbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFyZWEnLCAnaW5pdGlhbCcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBob3N0VXBkYXRlKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbm5lY3RzIHRoZSBvdmVybGF5IHRvIHRoZSBnaXZlbiB0cmlnZ2VyIGVsZW1lbnQgYW5kIGRldGVybWluZXMgdGhlIG9wdGltYWwgcG9zaXRpb24uXG4gICAqIFVzdWFsbHksIHRoaXMgaXMgY2FsbGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgb3BlbmVkLlxuICAgKiBAcGFyYW0gYW5jaG9yIFRoZSBhbmNob3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBjb25uZWN0KGFuY2hvcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fYW5jaG9yKSB7XG4gICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gICAgdGhpcy5fYW5jaG9yID0gYW5jaG9yO1xuXG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgdGhpcy5fYW5jaG9yLnN0eWxlLnNldFByb3BlcnR5KCdhbmNob3ItbmFtZScsIHRoaXMuX2FuY2hvck5hbWUhKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICAgIHRoaXMuX2NhbGN1bGF0ZVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gdXNlIGNhcHR1cmUgaGVyZSB0byByZWFjdCB0byBhbGwgc2Nyb2xsIGV2ZW50cy5cbiAgICAvLyBJZiBjYXB0dXJlIHdhcyBub3QgdXNlZCwgdGhlbiBzY3JvbGwgZXZlbnRzIGluc2lkZSBzZXBhcmF0ZSBzY3JvbGxcbiAgICAvLyBjb250YWluZXJzIHdvdWxkIG5vdCBiZSBjYXVnaHQuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCksIHtcbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9hYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9yZXF1ZXN0Q2FsY3VsYXRlUG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKGFuY2hvciwgeyBib3g6ICdib3JkZXItYm94JyB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX292ZXJsYXksIHsgYm94OiAnYm9yZGVyLWJveCcgfSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY29ubmVjdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hbmNob3I/LnN0eWxlLnJlbW92ZVByb3BlcnR5KCdhbmNob3ItbmFtZScpO1xuICAgIHRoaXMuX2FuY2hvciA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZyYW1lID8/PSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy5fY2FsY3VsYXRlUG9zaXRpb24oKTtcbiAgICAgIHRoaXMuX2ZyYW1lID0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9hbmNob3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5fZ2V0T3B0aW1hbFBvc2l0aW9uKHRoaXMuX3Bvc2l0aW9ucyk7XG4gICAgICB0aGlzLl9hcHBseU92ZXJsYXlQb3NpdGlvbihwb3NpdGlvbi5wb3NpdGlvbiwgcG9zaXRpb24ubGVmdCwgcG9zaXRpb24udG9wKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vdmVybGF5LnNldEF0dHJpYnV0ZSgnZGF0YS1wb3NpdGlvbicsIHRoaXMuY3VycmVudFBvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBvcHRpbWFsIHBvc2l0aW9uIHRoYXQgZml0cyB0aGUgb3ZlcmxheS5cbiAgICogQHBhcmFtIHBvc2l0aW9ucyBUaGUgbGlzdCBvZiBwb3NpdGlvbnMgdG8gY2hlY2suXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9nZXRPcHRpbWFsUG9zaXRpb24ocG9zaXRpb25zOiBzdHJpbmdbXSk6IHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG4gICAgcG9zaXRpb246IHN0cmluZztcbiAgICBmaXRzPzogYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgeyBvZmZzZXRIZWlnaHQ6IG92ZXJsYXlIZWlnaHQsIG9mZnNldFdpZHRoOiBvdmVybGF5V2lkdGggfSA9IHRoaXMuX292ZXJsYXk7XG4gICAgY29uc3QgeyBpbm5lckhlaWdodDogdmlld3BvcnRIZWlnaHQsIGlubmVyV2lkdGg6IHZpZXdwb3J0V2lkdGggfSA9IHdpbmRvdztcbiAgICBjb25zdCB7XG4gICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgIGhlaWdodDogdHJpZ2dlckhlaWdodCxcbiAgICAgIHdpZHRoOiB0cmlnZ2VyV2lkdGgsXG4gICAgfSA9IHRoaXMuX2FuY2hvciEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICBjb25zdCBpc1J0bCA9IHRoaXMuX292ZXJsYXkubWF0Y2hlcygnOmRpcihydGwpJyk7XG4gICAgY29uc3QgdG9wU3BhY2UgPSB0cmlnZ2VyT2Zmc2V0VG9wO1xuICAgIGNvbnN0IGJvdHRvbVNwYWNlID0gdmlld3BvcnRIZWlnaHQgLSB0cmlnZ2VySGVpZ2h0IC0gdHJpZ2dlck9mZnNldFRvcDtcbiAgICBjb25zdCBsZWZ0U3BhY2UgPSB0cmlnZ2VyT2Zmc2V0TGVmdDtcbiAgICBjb25zdCByaWdodFNwYWNlID0gdmlld3BvcnRXaWR0aCAtIHRyaWdnZXJXaWR0aCAtIHRyaWdnZXJPZmZzZXRMZWZ0O1xuXG4gICAgLy8gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgb3ZlcmxheSBhbmQgdGhlIHRyaWdnZXIgd2lkdGgvaGVpZ2h0LlxuICAgIGNvbnN0IG92ZXJsYXlXaWR0aE5ldCA9IG92ZXJsYXlXaWR0aCAtIHRyaWdnZXJXaWR0aDtcbiAgICBjb25zdCBvdmVybGF5SGVpZ2h0TmV0ID0gb3ZlcmxheUhlaWdodCAtIHRyaWdnZXJIZWlnaHQ7XG5cbiAgICAvLyBUaGUgYW1vdW50IHRoYXQgd291bGQgZXhjZWVkIHRoZSB0cmlnZ2VyIGlmIHRoZSBvdmVybGF5IHdlcmUgY2VudGVyZWQgb24gaXQuXG4gICAgY29uc3Qgb3ZlcmxheVdpZHRoT3ZlcmxhcCA9IG92ZXJsYXlXaWR0aE5ldCAvIDI7XG4gICAgY29uc3Qgb3ZlcmxheUhlaWdodE92ZXJsYXAgPSBvdmVybGF5SGVpZ2h0TmV0IC8gMjtcblxuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItaGVpZ2h0JyxcbiAgICAgIGAke3RyaWdnZXJIZWlnaHR9cHhgLFxuICAgICk7XG4gICAgdGhpcy5fb3ZlcmxheS5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItd2lkdGgnLCBgJHt0cmlnZ2VyV2lkdGh9cHhgKTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWFzc2lnbm1lbnRcbiAgICBsZXQgcmVzdWx0OiBSZXR1cm5UeXBlPHR5cGVvZiB0aGlzLl9nZXRPcHRpbWFsUG9zaXRpb24+ID0geyBsZWZ0OiAwLCB0b3A6IDAsIHBvc2l0aW9uOiAnJyB9O1xuICAgIGxldCBmaXJzdFBvc2l0aW9uOiBSZXR1cm5UeXBlPHR5cGVvZiB0aGlzLl9nZXRPcHRpbWFsUG9zaXRpb24+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgcG9zaXRpb24gb2YgcG9zaXRpb25zKSB7XG4gICAgICAvLyBJZiBydGwgaXMgZW5hYmxlZCwgd2UgbWFwIHRoZSBsb2dpY2FsIHBvc2l0aW9uIHRvIHRoZWlyIFJUTCBlcXVpdmFsZW50LiAoZS5nLiAnaW5saW5lLXN0YXJ0JyAtPiAnaW5saW5lLWVuZCcpXG4gICAgICBjb25zdCBwaHlzaWNhbFBvc2l0aW9uID1cbiAgICAgICAgaXNSdGwgJiYgbG9naWNhbFN1cHBvcnRlZFBvc2l0aW9ucy5pbmNsdWRlcyhwb3NpdGlvbilcbiAgICAgICAgICA/IHJ0bFBvc2l0aW9uTWFwcGluZ1twb3NpdGlvbl1cbiAgICAgICAgICA6IHBvc2l0aW9uO1xuXG4gICAgICBzd2l0Y2ggKHBoeXNpY2FsUG9zaXRpb24pIHtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoT3ZlcmxhcCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0IDw9IGJvdHRvbVNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aE92ZXJsYXAsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czpcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodCA8PSB0b3BTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGhPdmVybGFwIDw9IGxlZnRTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGhPdmVybGFwIDw9IHJpZ2h0U3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodE92ZXJsYXAsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGggPD0gcmlnaHRTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0T3ZlcmxhcCA8PSB0b3BTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0T3ZlcmxhcCA8PSBib3R0b21TcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodE92ZXJsYXAsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGggPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3RvcCBzcGFuLWxlZnQnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aE5ldCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSBsZWZ0U3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndG9wIHNwYW4tcmlnaHQnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSB0b3BTcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdib3R0b20gc3Bhbi1sZWZ0JzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoTmV0LFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlIZWlnaHQgPD0gYm90dG9tU3BhY2UgJiYgb3ZlcmxheVdpZHRoTmV0IDw9IGxlZnRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdib3R0b20gc3Bhbi1yaWdodCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSBib3R0b21TcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0IHNwYW4tdG9wJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0IC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSBsZWZ0U3BhY2UgJiYgb3ZlcmxheUhlaWdodE5ldCA8PSB0b3BTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0IHNwYW4tYm90dG9tJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wLFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IGxlZnRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JpZ2h0IHNwYW4tdG9wJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5V2lkdGggPD0gcmlnaHRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IHRvcFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JpZ2h0IHNwYW4tYm90dG9tJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCArIHRyaWdnZXJXaWR0aCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGlmIChyZXN1bHQuZml0cykge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgZmlyc3RQb3NpdGlvbiA/Pz0gcmVzdWx0O1xuICAgIH1cblxuICAgIC8vIElmIG5vIHBvc2l0aW9uIGZpdHMsIHdlIHJldHVybiB0aGUgZmlyc3Qgb25lLlxuICAgIHJldHVybiBmaXJzdFBvc2l0aW9uITtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5T3ZlcmxheVBvc2l0aW9uKHBvc2l0aW9uOiBzdHJpbmcsIGxlZnQ6IG51bWJlciwgdG9wOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9sYXN0UG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB0aGlzLl9vdmVybGF5LnN0eWxlLmxlZnQgPSBgJHtsZWZ0fXB4YDtcbiAgICB0aGlzLl9vdmVybGF5LnN0eWxlLnRvcCA9IGAke3RvcH1weGA7XG4gIH1cblxuICAvKipcbiAgICogT25seSB1c2VkIGluIHBvbHlmaWxsIG1vZGUuXG4gICAqIFJlYWRzIHRoZSBsaXN0IG9mIHRoZSBjb25maWd1cmVkIHBvc2l0aW9ucyBmcm9tIHRoZSBDU1MgdmFyaWFibGVzLlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfcmVhZFBvc2l0aW9uc0Zyb21Dc3MoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vdmVybGF5U3R5bGVzID8/PSBnZXRDb21wdXRlZFN0eWxlKHRoaXMuX292ZXJsYXkpO1xuICAgIGNvbnN0IHBvc2l0aW9ucyA9IFtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMuZ2V0UHJvcGVydHlWYWx1ZSgnLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhJykgfHwgJ2Jsb2NrLWVuZCcsXG4gICAgICAuLi50aGlzLl9vdmVybGF5U3R5bGVzXG4gICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1vdmVybGF5LXBvc2l0aW9uLXRyeS1mYWxsYmFja3MnKVxuICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAubWFwKChmKSA9PiBmLnRyaW0oKSlcbiAgICAgICAgLmZpbHRlcigoZikgPT4gISFmKSxcbiAgICBdO1xuXG4gICAgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYgJiYgcG9zaXRpb25zLnNvbWUoKHApID0+ICFzdXBwb3J0ZWRQb3NpdGlvbnMuaW5jbHVkZXMocCkpKSB7XG4gICAgICBjb25zdCB1bnN1cHBvcnRlZFBvc2l0aW9ucyA9IHBvc2l0aW9uc1xuICAgICAgICAuZmlsdGVyKChwKSA9PiAhc3VwcG9ydGVkUG9zaXRpb25zLmluY2x1ZGVzKHApKVxuICAgICAgICAuc29ydCgpXG4gICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVW5zdXBwb3J0ZWQgcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyAke3Vuc3VwcG9ydGVkUG9zaXRpb25zfSAoU3VwcG9ydGVkOiAke3N1cHBvcnRlZFBvc2l0aW9ucy5qb2luKCcsICcpfSlgLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLl9wb3NpdGlvbnMgPSBwb3NpdGlvbnM7XG4gICAgaWYgKHRoaXMuX2xhc3RQb3NpdGlvbiAmJiAhdGhpcy5fcG9zaXRpb25zLmluY2x1ZGVzKHRoaXMuX2xhc3RQb3NpdGlvbikpIHtcbiAgICAgIHRoaXMuX2xhc3RQb3NpdGlvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBSUEsTUFBTSw2QkFBNkIsQ0FBQyxZQUFZLElBQUksU0FBUyxlQUFlLFFBQVE7QUFrQnBGLE1BQU0sNEJBQTRCO0FBQUEsRUFDaEM7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTs7QUFHRixNQUFNLHFCQUFnRDtBQUFBLEVBQ3BELGVBQWU7QUFBQSxFQUNmLGFBQWE7QUFBQSxFQUNiLGdCQUFnQjtBQUFBLEVBQ2hCLGNBQWM7QUFBQSxFQUNkLGlDQUFpQztBQUFBLEVBQ2pDLCtCQUErQjtBQUFBLEVBQy9CLCtCQUErQjtBQUFBLEVBQy9CLDZCQUE2QjtBQUFBLEVBQzdCLGlDQUFpQztBQUFBLEVBQ2pDLCtCQUErQjtBQUFBLEVBQy9CLCtCQUErQjtBQUFBLEVBQy9CLDZCQUE2Qjs7QUFJL0IsSUFBSSxTQUFTO01BcUJBLDZCQUE0QjtBQUFBO0FBQUEsRUFjdkMsSUFBVyxrQkFBZTtBQUN4QixRQUFJLEtBQUssY0FBYztBQUNyQixhQUFPLEtBQUssaUJBQWlCLEtBQUssV0FBVyxDQUFDLEtBQUs7QUFBQSxJQUNyRCxPQUFPO0FBQ0wsV0FBSyxtQkFBbUIsaUJBQWlCLEtBQUssUUFBUTtBQUN0RCxhQUFPLEtBQUssZUFBZSxpQkFBaUIsZUFBZTtB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
@@ -11,6 +11,14 @@ export declare const ISO8601_FORMAT_DATE: RegExp;
11
11
  * Adapted from https://github.com/angular/components/blob/main/src/material/core/datetime/date-adapter.ts
12
12
  */
13
13
  export declare abstract class DateAdapter<T = any> {
14
+ private readonly _cutoffYearOffset;
15
+ /**
16
+ * @param cutoffYearOffset The threshold on whether a two-digit year
17
+ * should be treated as belonging to 2000 or 1900. e.g. with 15 (default)
18
+ * the current year plus 15 will be treated as belonging to 2000, and the rest to 1900.
19
+ * So e.g. with the current year 2025, 40 will be treated as 2040, while 41 will be treated as 1941.
20
+ */
21
+ constructor(cutoffYearOffset?: number);
14
22
  /**
15
23
  * Get the year as a number.
16
24
  * @param date
@@ -67,9 +75,9 @@ export declare abstract class DateAdapter<T = any> {
67
75
  * Creates a new date, given day, month and year; without date's overflow.
68
76
  * @param year
69
77
  * @param month The month of the date (1-indexed, 1 = January). Must be an integer 1 - 12.
70
- * @param date
78
+ * @param day
71
79
  */
72
- abstract createDate(year: number, month: number, date: number): T;
80
+ abstract createDate(year: number, month: number, day: number): T;
73
81
  /**
74
82
  * Attempts to deserialize a value to a valid date object. This is different from parsing in that
75
83
  * deserialize should only accept non-ambiguous, locale-independent formats (e.g. a ISO 8601
@@ -109,7 +117,7 @@ export declare abstract class DateAdapter<T = any> {
109
117
  * Get the given string as Date.
110
118
  * @param value The date in the format DD.MM.YYYY.
111
119
  */
112
- abstract parse(value: string | null | undefined): T | null;
120
+ parse(value: string | null | undefined): T | null;
113
121
  /**
114
122
  * Format the given date as string.
115
123
  * @param date The date to format.
@@ -1 +1 @@
1
- {"version":3,"file":"date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/date-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/date-adapter.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,15 @@ const YEARS_PER_PAGE = 24;
6
6
  const FORMAT_DATE = /(0?[1-9]|[12][0-9]|3[01])[.,\\/\-\s](0?[1-9]|1[0-2])[.,\\/\-\s]([0-9]{1,4}$)?/;
7
7
  const ISO8601_FORMAT_DATE = /^([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-3][0-9])$/;
8
8
  class DateAdapter {
9
+ /**
10
+ * @param cutoffYearOffset The threshold on whether a two-digit year
11
+ * should be treated as belonging to 2000 or 1900. e.g. with 15 (default)
12
+ * the current year plus 15 will be treated as belonging to 2000, and the rest to 1900.
13
+ * So e.g. with the current year 2025, 40 will be treated as 2040, while 41 will be treated as 1941.
14
+ */
15
+ constructor(cutoffYearOffset = 15) {
16
+ this._cutoffYearOffset = cutoffYearOffset;
17
+ }
9
18
  /**
10
19
  * Attempts to deserialize a value to a valid date object. This is different from parsing in that
11
20
  * deserialize should only accept non-ambiguous, locale-independent formats (e.g. a ISO 8601
@@ -20,6 +29,35 @@ class DateAdapter {
20
29
  }
21
30
  return this.invalid();
22
31
  }
32
+ /**
33
+ * Get the given string as Date.
34
+ * @param value The date in the format DD.MM.YYYY.
35
+ */
36
+ parse(value) {
37
+ if (!value) {
38
+ return null;
39
+ }
40
+ let date = null;
41
+ const isoMatch = value.match(ISO8601_FORMAT_DATE);
42
+ try {
43
+ date = isoMatch ? this.createDate(+isoMatch[1], +isoMatch[2], +isoMatch[3]) : null;
44
+ } catch {
45
+ }
46
+ if (this.isValid(date)) {
47
+ return date;
48
+ }
49
+ const strippedValue = value.replace(/\D/g, " ").trim();
50
+ const match = strippedValue?.match(FORMAT_DATE);
51
+ if (!match || match.index !== 0 || match.length <= 2 || match.some((e) => e === void 0) || !this.isValid(this.createDate(+match[3], +match[2], +match[1]))) {
52
+ return null;
53
+ }
54
+ let year = +match[3];
55
+ if (typeof year === "number" && year < 100 && year >= 0) {
56
+ const shift = this.getYear(this.today()) - 2e3 + this._cutoffYearOffset;
57
+ year = year <= shift ? 2e3 + year : 1900 + year;
58
+ }
59
+ return this.createDate(year, +match[2], +match[1]);
60
+ }
23
61
  /**
24
62
  * Format the given date as string.
25
63
  * @param date The date to format.
@@ -126,4 +164,4 @@ export {
126
164
  YEARS_PER_PAGE,
127
165
  YEARS_PER_ROW
128
166
  };
129
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1hZGFwdGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERBWVNfUEVSX1JPVzogbnVtYmVyID0gNztcbmV4cG9ydCBjb25zdCBNT05USFNfUEVSX1JPVzogbnVtYmVyID0gNDtcbmV4cG9ydCBjb25zdCBZRUFSU19QRVJfUk9XOiBudW1iZXIgPSA0O1xuZXhwb3J0IGNvbnN0IE1PTlRIU19QRVJfUEFHRTogbnVtYmVyID0gMTI7XG5leHBvcnQgY29uc3QgWUVBUlNfUEVSX1BBR0U6IG51bWJlciA9IDI0O1xuZXhwb3J0IGNvbnN0IEZPUk1BVF9EQVRFID1cbiAgLygwP1sxLTldfFsxMl1bMC05XXwzWzAxXSlbLixcXFxcL1xcLVxcc10oMD9bMS05XXwxWzAtMl0pWy4sXFxcXC9cXC1cXHNdKFswLTldezEsNH0kKT8vO1xuZXhwb3J0IGNvbnN0IElTTzg2MDFfRk9STUFUX0RBVEUgPSAvXihbMC05XXs0fSktKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEtM11bMC05XSkkLztcblxuLyoqXG4gKiBBYnN0cmFjdCBkYXRlIGZ1bmN0aW9uYWxpdHkuXG4gKlxuICogQWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYWluL3NyYy9tYXRlcmlhbC9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50c1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0ZUFkYXB0ZXI8VCA9IGFueT4ge1xuICAvKipcbiAgICogR2V0IHRoZSB5ZWFyIGFzIGEgbnVtYmVyLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldFllYXIoZGF0ZTogVCk6IG51bWJlcjtcblxuICAvKipcbiAgICogR2V0IHRoZSBtb250aCBhcyBhIG51bWJlci5cbiAgICogQXR0ZW50aW9uOiBUaGlzIHJldHVybnMgMS0xMiBhbmQgbWl0aWdhdGVzIHRoZSBkZWZhdWx0IEphdmFTY3JpcHQgRGF0ZSBiZWhhdmlvci5cbiAgICogQHBhcmFtIGRhdGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRNb250aChkYXRlOiBUKTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGRheSBvZiB0aGUgbW9udGggYXMgYSBudW1iZXIuXG4gICAqIEBwYXJhbSBkYXRlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RGF0ZShkYXRlOiBUKTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIERheSBvZiB0aGUgd2VlayBhcyBhIG51bWJlci5cbiAgICogQHBhcmFtIGRhdGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXREYXlPZldlZWsoZGF0ZTogVCk6IG51bWJlcjtcblxuICAvKiogR2V0IHRoZSBmaXJzdCBkYXkgb2YgdGhlIHdlZWsgKDA6IHN1bmRheTsgMTogbW9uZGF5OyBldGMuKS4gKi9cbiAgcHVibGljIGFic3RyYWN0IGdldEZpcnN0RGF5T2ZXZWVrKCk6IG51bWJlcjtcblxuICAvKipcbiAgICogR2V0IHRoZSBudW1iZXIgb2YgZGF5cyBpbiBhIG1vbnRoLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE51bURheXNJbk1vbnRoKGRhdGU6IFQpOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEdldCBhIGxpc3Qgb2YgYWxsIHRoZSBtb250aHMgaW4gYSBnaXZlbiBzdHlsZS5cbiAgICogQHBhcmFtIHN0eWxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0TW9udGhOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW107XG5cbiAgLyoqIEdldCBhIHN0cmluZyBhcnJheSB3aXRoIGxlbmd0aCA9IDMxLCBmaWxsZWQgd2l0aCB0aGUgZGF5cyBpbiBhIG1vbnRoLCBzdGFydGluZyBmcm9tIDEuICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXREYXRlTmFtZXMoKTogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEdldCBhIGxpc3Qgb2YgYWxsIHRoZSB3ZWVrIGRheXMgaW4gYSBnaXZlbiBzdHlsZS5cbiAgICogQHBhcmFtIHN0eWxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RGF5T2ZXZWVrTmFtZXMoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93Jyk6IHN0cmluZ1tdO1xuXG4gIC8qKiBDcmVhdGVzIHRvZGF5J3MgZGF0ZS4gKi9cbiAgcHVibGljIGFic3RyYWN0IHRvZGF5KCk6IFQ7XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3aGV0aGVyIGEgZ2l2ZW4gYGRhdGVgIGlzIHZhbGlkLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGlzVmFsaWQoZGF0ZTogVCB8IG51bGwgfCB1bmRlZmluZWQpOiBkYXRlIGlzIFQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBieSBjbG9uaW5nIHRoZSBnaXZlbiBvbmUuXG4gICAqIEBwYXJhbSBkYXRlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgY2xvbmUoZGF0ZTogVCk6IFQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSwgZ2l2ZW4gZGF5LCBtb250aCBhbmQgeWVhcjsgd2l0aG91dCBkYXRlJ3Mgb3ZlcmZsb3cuXG4gICAqIEBwYXJhbSB5ZWFyXG4gICAqIEBwYXJhbSBtb250aCBUaGUgbW9udGggb2YgdGhlIGRhdGUgKDEtaW5kZXhlZCwgMSA9IEphbnVhcnkpLiBNdXN0IGJlIGFuIGludGVnZXIgMSAtIDEyLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNyZWF0ZURhdGUoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXRlOiBudW1iZXIpOiBUO1xuXG4gIC8qKlxuICAgKiBBdHRlbXB0cyB0byBkZXNlcmlhbGl6ZSBhIHZhbHVlIHRvIGEgdmFsaWQgZGF0ZSBvYmplY3QuIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gcGFyc2luZyBpbiB0aGF0XG4gICAqIGRlc2VyaWFsaXplIHNob3VsZCBvbmx5IGFjY2VwdCBub24tYW1iaWd1b3VzLCBsb2NhbGUtaW5kZXBlbmRlbnQgZm9ybWF0cyAoZS5nLiBhIElTTyA4NjAxXG4gICAqIHN0cmluZykuIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGRvZXMgbm90IGFsbG93IGFueSBkZXNlcmlhbGl6YXRpb24sIGl0IHNpbXBseSBjaGVja3MgdGhhdFxuICAgKiB0aGUgZ2l2ZW4gdmFsdWUgaXMgYWxyZWFkeSBhIHZhbGlkIGRhdGUgb2JqZWN0IG9yIG51bGwuXG4gICAqIEBwYXJhbSB2YWx1ZSBFaXRoZXIgYSBkYXRlIG9iamVjdCwgSVNPIHN0cmluZyBvciBhbiBlbXB0eSB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIGRhdGUgaWYgdGhlIGlucHV0IGlzIHZhbGlkLCBgbnVsbGAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIGRlc2VyaWFsaXplKHZhbHVlOiBUIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IFQgfCBudWxsIHtcbiAgICBpZiAoXG4gICAgICB2YWx1ZSA9PSBudWxsIHx8XG4gICAgICAodGhpcy5pc0RhdGVJbnN0YW5jZSh2YWx1ZSkgJiYgdGhpcy5pc1ZhbGlkKHZhbHVlIGFzIFQgfCBudWxsIHwgdW5kZWZpbmVkKSlcbiAgICApIHtcbiAgICAgIHJldHVybiB2YWx1ZSBhcyBUIHwgbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaW52YWxpZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgeWVhcnNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBzdGFydGluZyBkYXRlLlxuICAgKiBAcGFyYW0geWVhcnMgVGhlIG51bWJlciBvZiB5ZWFycyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgYWRkQ2FsZW5kYXJZZWFycyhkYXRlOiBULCB5ZWFyczogbnVtYmVyKTogVDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGFkZGluZyB0aGUgbnVtYmVyIG9mIHByb3ZpZGVkIGBtb250aHNgIHRvIHRoZSBwcm92aWRlZCBgZGF0ZWAuXG4gICAqIElmIHRoZSBjYWxjdWxhdGVkIG1vbnRoIGhhcyBmZXdlciBkYXlzIHRoYW4gdGhlIG9yaWdpbmFsIG9uZSwgdGhlIGRhdGUgaXMgc2V0IHRvIHRoZSBsYXN0IGRheSBvZiB0aGUgbW9udGguXG4gICAqIEUuZy4gd2l0aCBgZGF0ZWAgPSBuZXcgRGF0ZSgyMDIyLCAwLCAzMSkgYW5kIGBtb250aHNgID0gMSwgaXQgcmV0dXJucyBuZXcgRGF0ZSgyMDIyLCAxLCAyOCkuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBzdGFydGluZyBkYXRlLlxuICAgKiBAcGFyYW0gbW9udGhzIFRoZSBudW1iZXIgb2YgbW9udGhzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBhZGRDYWxlbmRhck1vbnRocyhkYXRlOiBULCBtb250aHM6IG51bWJlcik6IFQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBieSBhZGRpbmcgdGhlIG51bWJlciBvZiBwcm92aWRlZCBgZGF5c2AgdG8gdGhlIHByb3ZpZGVkIGBkYXRlYC5cbiAgICogQHBhcmFtIGRhdGUgVGhlIHN0YXJ0aW5nIGRhdGUuXG4gICAqIEBwYXJhbSBkYXlzIFRoZSBudW1iZXIgb2YgZGF5cyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgYWRkQ2FsZW5kYXJEYXlzKGRhdGU6IFQsIGRheXM6IG51bWJlcik6IFQ7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgZGF0ZSBpbiB0aGUgbG9jYWwgZm9ybWF0LlxuICAgKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBmb3JtYXRcbiAgICogQHJldHVybnMgVGhlIGBkYXRlYCBpbiB0aGUgbG9jYWwgZm9ybWF0IGFzIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRBY2Nlc3NpYmlsaXR5Rm9ybWF0RGF0ZShkYXRlOiBUIHwgc3RyaW5nKTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGdpdmVuIHN0cmluZyBhcyBEYXRlLlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIGRhdGUgaW4gdGhlIGZvcm1hdCBERC5NTS5ZWVlZLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHBhcnNlKHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogVCB8IG51bGw7XG5cbiAgLyoqXG4gICAqIEZvcm1hdCB0aGUgZ2l2ZW4gZGF0ZSBhcyBzdHJpbmcuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBkYXRlIHRvIGZvcm1hdC5cbiAgICogQHBhcmFtIG9wdGlvbnMgb3B0aW9ucyBvYmplY3Qgd2l0aCB3ZWVrZGF5U3R5bGUgYXMgcHJvcGVydHlcbiAgICovXG4gIHB1YmxpYyBmb3JtYXQoXG4gICAgZGF0ZTogVCB8IG51bGwgfCB1bmRlZmluZWQsXG4gICAgb3B0aW9ucz86IHsgd2Vla2RheVN0eWxlPzogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnIHwgJ25vbmUnIH0sXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLmlzVmFsaWQoZGF0ZSkpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IG5ldyBEYXRlKHRoaXMudG9Jc284NjAxKGRhdGUhKSArICdUMDA6MDA6MDAnKTtcbiAgICBjb25zdCBkYXRlRm9ybWF0dGVyID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoJ2RlLUNIJywge1xuICAgICAgZGF5OiAnMi1kaWdpdCcsXG4gICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgeWVhcjogJ251bWVyaWMnLFxuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnM/LndlZWtkYXlTdHlsZSA9PT0gJ25vbmUnKSB7XG4gICAgICByZXR1cm4gZGF0ZUZvcm1hdHRlci5mb3JtYXQodmFsdWUpO1xuICAgIH1cblxuICAgIGNvbnN0IHdlZWtkYXlTdHlsZSA9IG9wdGlvbnM/LndlZWtkYXlTdHlsZSA/PyAnc2hvcnQnO1xuICAgIGxldCB3ZWVrZGF5ID0gdGhpcy5nZXREYXlPZldlZWtOYW1lcyh3ZWVrZGF5U3R5bGUpW3RoaXMuZ2V0RGF5T2ZXZWVrKGRhdGUhKV07XG4gICAgd2Vla2RheSA9IHdlZWtkYXkuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3ZWVrZGF5LnN1YnN0cmluZygxKTtcbiAgICAvLyBXZSBoYXZlIHRoZSBzcGVjaWFsIHJlcXVpcmVtZW50IGZvciBkYXRlIGZvcm1hdHMgYXQgU0JCLCB3aGVyZSB0aGUgc2hvcnQgZm9ybVxuICAgIC8vIGZvciB3ZWVrZGF5cyBzaG91bGQgYmUgdHdvIGNoYXJhY3RlcnMgaW4gbGVuZ3RoLlxuICAgIGlmICh3ZWVrZGF5U3R5bGUgPT09ICdzaG9ydCcpIHtcbiAgICAgIHdlZWtkYXkgPSB3ZWVrZGF5LnN1YnN0cmluZygwLCAyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYCR7d2Vla2RheX0sICR7ZGF0ZUZvcm1hdHRlci5mb3JtYXQodmFsdWUpfWA7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGBvYmpgIGlzIGEgRGF0ZS5cbiAgICogQHBhcmFtIG9iaiBUaGUgb2JqZWN0IHRvIGNoZWNrLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGlzRGF0ZUluc3RhbmNlKG9iajogYW55KTogYm9vbGVhbjtcblxuICAvKipcbiAgICogR2V0cyBkYXRlIGluc3RhbmNlIHRoYXQgaXMgbm90IHZhbGlkLlxuICAgKiBAcmV0dXJucyBBbiBpbnZhbGlkIGRhdGUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgaW52YWxpZCgpOiBUO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGdpdmVuIGRhdGUgYXMgSVNPIFN0cmluZy5cbiAgICogQHBhcmFtIGRhdGUgVGhlIGRhdGUgdG8gY29udmVydCB0byBJU08gU3RyaW5nLlxuICAgKi9cbiAgcHVibGljIHRvSXNvODYwMShkYXRlOiBUKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYWQgPSAodmFsdWU6IG51bWJlciwgbGVuZ3RoID0gMik6IHN0cmluZyA9PiBgJHt2YWx1ZX1gLnBhZFN0YXJ0KGxlbmd0aCwgJzAnKTtcbiAgICByZXR1cm4gYCR7cGFkKHRoaXMuZ2V0WWVhcihkYXRlKSwgNCl9LSR7cGFkKHRoaXMuZ2V0TW9udGgoZGF0ZSkpfS0ke3BhZCh0aGlzLmdldERhdGUoZGF0ZSkpfWA7XG4gIH1cblxuICAvKipcbiAgICogR2l2ZW4gYSBwb3RlbnRpYWwgZGF0ZSBvYmplY3QsIHJldHVybnMgdGhhdCBzYW1lIGRhdGUgb2JqZWN0IGlmIGl0IGlzXG4gICAqIGEgdmFsaWQgZGF0ZSwgb3IgYG51bGxgIGlmIGl0J3Mgbm90IGEgdmFsaWQgZGF0ZS5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBvYmplY3QgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIEEgZGF0ZSBvciBgbnVsbGAuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsaWREYXRlT3JOdWxsKHZhbHVlOiB1bmtub3duKTogVCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmlzRGF0ZUluc3RhbmNlKHZhbHVlKSAmJiB0aGlzLmlzVmFsaWQodmFsdWUgYXMgVCkgPyAodmFsdWUgYXMgVCkgOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCwgYW5kIHRoZW4gaXRzIG9mZnNldCBmcm9tIHRoZSBmaXJzdCBkYXkgb2YgdGhlIHdlZWsuXG4gICAqL1xuICBwdWJsaWMgZ2V0Rmlyc3RXZWVrT2Zmc2V0KGRhdGU6IFQpOiBudW1iZXIge1xuICAgIGNvbnN0IGZpcnN0T2ZNb250aCA9IHRoaXMuY3JlYXRlRGF0ZSh0aGlzLmdldFllYXIoZGF0ZSksIHRoaXMuZ2V0TW9udGgoZGF0ZSksIDEpITtcbiAgICByZXR1cm4gKFxuICAgICAgKERBWVNfUEVSX1JPVyArIHRoaXMuZ2V0RGF5T2ZXZWVrKGZpcnN0T2ZNb250aCkgLSB0aGlzLmdldEZpcnN0RGF5T2ZXZWVrKCkpICUgREFZU19QRVJfUk9XXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wYXJlcyB0d28gZGF0ZXMuXG4gICAqIEBwYXJhbSBmaXJzdCBUaGUgZmlyc3QgZGF0ZSB0byBjb21wYXJlLlxuICAgKiBAcGFyYW0gc2Vjb25kIFRoZSBzZWNvbmQgZGF0ZSB0byBjb21wYXJlLlxuICAgKiBAcmV0dXJucyAwIGlmIHRoZSBkYXRlcyBhcmUgZXF1YWwsIGEgbnVtYmVyIGxlc3MgdGhhbiAwIGlmIHRoZSBmaXJzdCBkYXRlIGlzIGVhcmxpZXIsXG4gICAqICAgICBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBpZiB0aGUgZmlyc3QgZGF0ZSBpcyBsYXRlci5cbiAgICovXG4gIHB1YmxpYyBjb21wYXJlRGF0ZShmaXJzdDogVCwgc2Vjb25kOiBUKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5nZXRZZWFyKGZpcnN0KSAtIHRoaXMuZ2V0WWVhcihzZWNvbmQpIHx8XG4gICAgICB0aGlzLmdldE1vbnRoKGZpcnN0KSAtIHRoaXMuZ2V0TW9udGgoc2Vjb25kKSB8fFxuICAgICAgdGhpcy5nZXREYXRlKGZpcnN0KSAtIHRoaXMuZ2V0RGF0ZShzZWNvbmQpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdHdvIGRhdGVzIGFyZSBlcXVhbC5cbiAgICogQHBhcmFtIGZpcnN0IFRoZSBmaXJzdCBkYXRlIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0gc2Vjb25kIFRoZSBzZWNvbmQgZGF0ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgdHdvIGRhdGVzIGFyZSBlcXVhbC5cbiAgICogICAgIE51bGwgZGF0ZXMgYXJlIGNvbnNpZGVyZWQgZXF1YWwgdG8gb3RoZXIgbnVsbCBkYXRlcy5cbiAgICovXG4gIHB1YmxpYyBzYW1lRGF0ZShmaXJzdDogVCB8IG51bGwsIHNlY29uZDogVCB8IG51bGwpOiBib29sZWFuIHtcbiAgICBpZiAoZmlyc3QgJiYgc2Vjb25kKSB7XG4gICAgICBjb25zdCBmaXJzdFZhbGlkID0gdGhpcy5pc1ZhbGlkKGZpcnN0KTtcbiAgICAgIGNvbnN0IHNlY29uZFZhbGlkID0gdGhpcy5pc1ZhbGlkKHNlY29uZCk7XG4gICAgICBpZiAoZmlyc3RWYWxpZCAmJiBzZWNvbmRWYWxpZCkge1xuICAgICAgICByZXR1cm4gIXRoaXMuY29tcGFyZURhdGUoZmlyc3QsIHNlY29uZCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmlyc3RWYWxpZCA9PSBzZWNvbmRWYWxpZDtcbiAgICB9XG4gICAgcmV0dXJuIGZpcnN0ID09IHNlY29uZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGFtcCB0aGUgZ2l2ZW4gZGF0ZSBiZXR3ZWVuIG1pbiBhbmQgbWF4IGRhdGVzLlxuICAgKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBjbGFtcC5cbiAgICogQHBhcmFtIG1pbiBUaGUgbWluaW11bSB2YWx1ZSB0byBhbGxvdy4gSWYgbnVsbCBvciBvbWl0dGVkIG5vIG1pbiBpcyBlbmZvcmNlZC5cbiAgICogQHBhcmFtIG1heCBUaGUgbWF4aW11bSB2YWx1ZSB0byBhbGxvdy4gSWYgbnVsbCBvciBvbWl0dGVkIG5vIG1heCBpcyBlbmZvcmNlZC5cbiAgICogQHJldHVybnMgYG1pbmAgaWYgYGRhdGVgIGlzIGxlc3MgdGhhbiBgbWluYCwgYG1heGAgaWYgZGF0ZSBpcyBncmVhdGVyIHRoYW4gYG1heGAsXG4gICAqICAgICBvdGhlcndpc2UgYGRhdGVgLlxuICAgKi9cbiAgcHVibGljIGNsYW1wRGF0ZShkYXRlOiBULCBtaW4/OiBUIHwgbnVsbCwgbWF4PzogVCB8IG51bGwpOiBUIHtcbiAgICBpZiAobWluICYmIHRoaXMuY29tcGFyZURhdGUoZGF0ZSwgbWluKSA8IDApIHtcbiAgICAgIHJldHVybiBtaW47XG4gICAgfVxuICAgIGlmIChtYXggJiYgdGhpcy5jb21wYXJlRGF0ZShkYXRlLCBtYXgpID4gMCkge1xuICAgICAgcmV0dXJuIG1heDtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBTyxNQUFNLGVBQXVCO0FBQzdCLE1BQU0saUJBQXlCO0FBQy9CLE1BQU0sZ0JBQXdCO0FBQzlCLE1BQU0sa0JBQTBCO0FBQ2hDLE1BQU0saUJBQXlCO0FBQy9CLE1BQU0sY0FDWDtBQUNLLE1BQU0sc0JBQXNCO01BT2IsWUFBVztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWlGeEIsWUFBWSxPQUFvQztBQUNyRCxRQUNFLFNBQVMsUUFDUixLQUFLLGVBQWUsS0FBSyxLQUFLLEtBQUssUUFBUSxLQUE2QixHQUN6RTtBQUNBLGFBQU87QUFBQSxJQUNUO0FBQ0EsV0FBTyxLQUFLLFFBQUE7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBMkNPLE9BQ0wsTUFDQSxTQUFpRTtBQUVqRSxRQUFJLENBQUMsS0FBSyxRQUFRLElBQUksR0FBRztBQUN2QixhQUFPO0FBQUEsSUFDVDtBQUVBLFVBQU0sUUFBUSxvQkFBSSxLQUFLLEtBQUssVUFBVSxJQUFLLElBQUksV0FBVztBQUMxRCxVQUFNLGdCQUFnQixJQUFJLEtBQUssZUFBZSxTQUFTO0FBQUEsTUFDckQsS0FBSztBQUFBLE1BQ0wsT0FBTztBQUFBLE1BQ1AsTUFBTTtBQUFBLElBQUEsQ0FDUDtBQUVELFFBQUksU0FBUyxpQkFBaUIsUUFBUTtBQUNwQyxhQUFPLGNBQWMsT0FBTyxLQUFLO0FBQUEsSUFDbkM7QUFFQSxVQUFNLGVBQWUsU0FBUyxnQkFBZ0I7QUFDOUMsUUFBSSxVQUFVLEtBQUssa0JBQWtCLFlBQVksRUFBRSxLQUFLLGFBQWEsSUFBSyxDQUFDO0FBQzNFLGNBQVUsUUFBUSxPQUFPLENBQUMsRUFBRSxnQkFBZ0IsUUFBUSxVQUFVLENBQUM7QUFHL0QsUUFBSSxpQkFBaUIsU0FBUztBQUM1QixnQkFBVSxRQUFRLFVBQVUsR0FBRyxDQUFDO0FBQUEsSUFDbEM7QUFFQSxXQUFPLEdBQUcsT0FBTyxLQUFLLGNBQWMsT0FBTyxLQUFLLENBQUM7QUFBQSxFQUNuRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFrQk8sVUFBVSxNQUFPO0FBQ3RCLFVBQU0sTUFBTSxDQUFDLE9BQWUsU0FBUyxNQUFjLEdBQUcsS0FBSyxHQUFHLFNBQVMsUUFBUSxHQUFHO0FBQ2xGLFdBQU8sR0FBRyxJQUFJLEtBQUssUUFBUSxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQztBQUFBLEVBQzdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxtQkFBbUIsT0FBYztBQUN0QyxXQUFPLEtBQUssZUFBZSxLQUFLLEtBQUssS0FBSyxRQUFRLEtBQVUsSUFBSyxRQUFjO0FBQUEsRUFDakY7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLG1CQUFtQixNQUFPO0FBQy9CLFVBQU0sZUFBZSxLQUFLLFdBQVcsS0FBSyxRQUFRLElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxHQUFHLENBQUM7QUFDL0UsWUFDRyxlQUFlLEtBQUssYUFBYSxZQUFZLElBQUksS0FBSyx1QkFBdUI7QUFBQSxFQUVsRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxZQUFZLE9BQVUsUUFBUztBQUNwQyxXQUNFLEtBQUssUUFBUSxLQUFLLElBQUksS0FBSyxRQUFRLE1BQU0sS0FDekMsS0FBSyxTQUFTLEtBQUssSUFBSSxLQUFLLFNBQVMsTUFBTSxLQUMzQyxLQUFLLFFBQVEsS0FBSyxJQUFJLEtBQUssUUFBUSxNQUFNO0FBQUEsRUFFN0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sU0FBUyxPQUFpQixRQUFnQjtBQUMvQyxRQUFJLFNBQVMsUUFBUTtBQUNuQixZQUFNLGFBQWEsS0FBSyxRQUFRLEtBQUs7QUFDckMsWUFBTSxjQUFjLEtBQUssUUFBUSxNQUFNO0FBQ3ZDLFVBQUksY0FBYyxhQUFhO0FBQzdCLGVBQU8sQ0FBQyxLQUFLLFlBQVksT0FBTyxNQUFNO0FBQUEsTUFDeEM7QUFDQSxhQUFPLGNBQWM7QUFBQSxJQUN2QjtBQUNBLFdBQU8sU0FBUztBQUFBLEVBQ2xCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVU8sVUFBVSxNQUFTLEtBQWdCLEtBQWM7QUFDdEQsUUFBSSxPQUFPLEtBQUssWUFBWSxNQUFNLEdBQUcsSUFBSSxHQUFHO0FBQzFDLGFBQU87QUFBQSxJQUNUO0FBQ0EsUUFBSSxPQUFPLEtBQUssWUFBWSxNQUFNLEdBQUcsSUFBSSxHQUFHO0FBQzFDLGFBQU87QUFBQSxJQUNUO0FBQ0EsV0FBTztBQUFBLEVBQ1Q7QUFDRDsifQ==
167
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1hZGFwdGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERBWVNfUEVSX1JPVzogbnVtYmVyID0gNztcbmV4cG9ydCBjb25zdCBNT05USFNfUEVSX1JPVzogbnVtYmVyID0gNDtcbmV4cG9ydCBjb25zdCBZRUFSU19QRVJfUk9XOiBudW1iZXIgPSA0O1xuZXhwb3J0IGNvbnN0IE1PTlRIU19QRVJfUEFHRTogbnVtYmVyID0gMTI7XG5leHBvcnQgY29uc3QgWUVBUlNfUEVSX1BBR0U6IG51bWJlciA9IDI0O1xuZXhwb3J0IGNvbnN0IEZPUk1BVF9EQVRFID1cbiAgLygwP1sxLTldfFsxMl1bMC05XXwzWzAxXSlbLixcXFxcL1xcLVxcc10oMD9bMS05XXwxWzAtMl0pWy4sXFxcXC9cXC1cXHNdKFswLTldezEsNH0kKT8vO1xuZXhwb3J0IGNvbnN0IElTTzg2MDFfRk9STUFUX0RBVEUgPSAvXihbMC05XXs0fSktKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEtM11bMC05XSkkLztcblxuLyoqXG4gKiBBYnN0cmFjdCBkYXRlIGZ1bmN0aW9uYWxpdHkuXG4gKlxuICogQWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYWluL3NyYy9tYXRlcmlhbC9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50c1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0ZUFkYXB0ZXI8VCA9IGFueT4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jdXRvZmZZZWFyT2Zmc2V0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBjdXRvZmZZZWFyT2Zmc2V0IFRoZSB0aHJlc2hvbGQgb24gd2hldGhlciBhIHR3by1kaWdpdCB5ZWFyXG4gICAqIHNob3VsZCBiZSB0cmVhdGVkIGFzIGJlbG9uZ2luZyB0byAyMDAwIG9yIDE5MDAuIGUuZy4gd2l0aCAxNSAoZGVmYXVsdClcbiAgICogdGhlIGN1cnJlbnQgeWVhciBwbHVzIDE1IHdpbGwgYmUgdHJlYXRlZCBhcyBiZWxvbmdpbmcgdG8gMjAwMCwgYW5kIHRoZSByZXN0IHRvIDE5MDAuXG4gICAqIFNvIGUuZy4gd2l0aCB0aGUgY3VycmVudCB5ZWFyIDIwMjUsIDQwIHdpbGwgYmUgdHJlYXRlZCBhcyAyMDQwLCB3aGlsZSA0MSB3aWxsIGJlIHRyZWF0ZWQgYXMgMTk0MS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihjdXRvZmZZZWFyT2Zmc2V0OiBudW1iZXIgPSAxNSkge1xuICAgIHRoaXMuX2N1dG9mZlllYXJPZmZzZXQgPSBjdXRvZmZZZWFyT2Zmc2V0O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgeWVhciBhcyBhIG51bWJlci5cbiAgICogQHBhcmFtIGRhdGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRZZWFyKGRhdGU6IFQpOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbW9udGggYXMgYSBudW1iZXIuXG4gICAqIEF0dGVudGlvbjogVGhpcyByZXR1cm5zIDEtMTIgYW5kIG1pdGlnYXRlcyB0aGUgZGVmYXVsdCBKYXZhU2NyaXB0IERhdGUgYmVoYXZpb3IuXG4gICAqIEBwYXJhbSBkYXRlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0TW9udGgoZGF0ZTogVCk6IG51bWJlcjtcblxuICAvKipcbiAgICogR2V0IHRoZSBkYXkgb2YgdGhlIG1vbnRoIGFzIGEgbnVtYmVyLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldERhdGUoZGF0ZTogVCk6IG51bWJlcjtcblxuICAvKipcbiAgICogR2V0IHRoZSBEYXkgb2YgdGhlIHdlZWsgYXMgYSBudW1iZXIuXG4gICAqIEBwYXJhbSBkYXRlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RGF5T2ZXZWVrKGRhdGU6IFQpOiBudW1iZXI7XG5cbiAgLyoqIEdldCB0aGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrICgwOiBzdW5kYXk7IDE6IG1vbmRheTsgZXRjLikuICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRGaXJzdERheU9mV2VlaygpOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbnVtYmVyIG9mIGRheXMgaW4gYSBtb250aC5cbiAgICogQHBhcmFtIGRhdGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXROdW1EYXlzSW5Nb250aChkYXRlOiBUKTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBHZXQgYSBsaXN0IG9mIGFsbCB0aGUgbW9udGhzIGluIGEgZ2l2ZW4gc3R5bGUuXG4gICAqIEBwYXJhbSBzdHlsZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE1vbnRoTmFtZXMoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93Jyk6IHN0cmluZ1tdO1xuXG4gIC8qKiBHZXQgYSBzdHJpbmcgYXJyYXkgd2l0aCBsZW5ndGggPSAzMSwgZmlsbGVkIHdpdGggdGhlIGRheXMgaW4gYSBtb250aCwgc3RhcnRpbmcgZnJvbSAxLiAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0RGF0ZU5hbWVzKCk6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBHZXQgYSBsaXN0IG9mIGFsbCB0aGUgd2VlayBkYXlzIGluIGEgZ2l2ZW4gc3R5bGUuXG4gICAqIEBwYXJhbSBzdHlsZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldERheU9mV2Vla05hbWVzKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnIHwgJ25hcnJvdycpOiBzdHJpbmdbXTtcblxuICAvKiogQ3JlYXRlcyB0b2RheSdzIGRhdGUuICovXG4gIHB1YmxpYyBhYnN0cmFjdCB0b2RheSgpOiBUO1xuXG4gIC8qKlxuICAgKiBDaGVja3Mgd2hldGhlciBhIGdpdmVuIGBkYXRlYCBpcyB2YWxpZC5cbiAgICogQHBhcmFtIGRhdGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBpc1ZhbGlkKGRhdGU6IFQgfCBudWxsIHwgdW5kZWZpbmVkKTogZGF0ZSBpcyBUO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGRhdGUgYnkgY2xvbmluZyB0aGUgZ2l2ZW4gb25lLlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNsb25lKGRhdGU6IFQpOiBUO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGRhdGUsIGdpdmVuIGRheSwgbW9udGggYW5kIHllYXI7IHdpdGhvdXQgZGF0ZSdzIG92ZXJmbG93LlxuICAgKiBAcGFyYW0geWVhclxuICAgKiBAcGFyYW0gbW9udGggVGhlIG1vbnRoIG9mIHRoZSBkYXRlICgxLWluZGV4ZWQsIDEgPSBKYW51YXJ5KS4gTXVzdCBiZSBhbiBpbnRlZ2VyIDEgLSAxMi5cbiAgICogQHBhcmFtIGRheVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNyZWF0ZURhdGUoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IFQ7XG5cbiAgLyoqXG4gICAqIEF0dGVtcHRzIHRvIGRlc2VyaWFsaXplIGEgdmFsdWUgdG8gYSB2YWxpZCBkYXRlIG9iamVjdC4gVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBwYXJzaW5nIGluIHRoYXRcbiAgICogZGVzZXJpYWxpemUgc2hvdWxkIG9ubHkgYWNjZXB0IG5vbi1hbWJpZ3VvdXMsIGxvY2FsZS1pbmRlcGVuZGVudCBmb3JtYXRzIChlLmcuIGEgSVNPIDg2MDFcbiAgICogc3RyaW5nKS4gVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgYWxsb3cgYW55IGRlc2VyaWFsaXphdGlvbiwgaXQgc2ltcGx5IGNoZWNrcyB0aGF0XG4gICAqIHRoZSBnaXZlbiB2YWx1ZSBpcyBhbHJlYWR5IGEgdmFsaWQgZGF0ZSBvYmplY3Qgb3IgbnVsbC5cbiAgICogQHBhcmFtIHZhbHVlIEVpdGhlciBhIGRhdGUgb2JqZWN0LCBJU08gc3RyaW5nIG9yIGFuIGVtcHR5IHZhbHVlLlxuICAgKiBAcmV0dXJucyBUaGUgZGF0ZSBpZiB0aGUgaW5wdXQgaXMgdmFsaWQsIGBudWxsYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgZGVzZXJpYWxpemUodmFsdWU6IFQgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogVCB8IG51bGwge1xuICAgIGlmIChcbiAgICAgIHZhbHVlID09IG51bGwgfHxcbiAgICAgICh0aGlzLmlzRGF0ZUluc3RhbmNlKHZhbHVlKSAmJiB0aGlzLmlzVmFsaWQodmFsdWUgYXMgVCB8IG51bGwgfCB1bmRlZmluZWQpKVxuICAgICkge1xuICAgICAgcmV0dXJuIHZhbHVlIGFzIFQgfCBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkKCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGFkZGluZyB0aGUgbnVtYmVyIG9mIHByb3ZpZGVkIGB5ZWFyc2AgdG8gdGhlIHByb3ZpZGVkIGBkYXRlYC5cbiAgICogQHBhcmFtIGRhdGUgVGhlIHN0YXJ0aW5nIGRhdGUuXG4gICAqIEBwYXJhbSB5ZWFycyBUaGUgbnVtYmVyIG9mIHllYXJzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBhZGRDYWxlbmRhclllYXJzKGRhdGU6IFQsIHllYXJzOiBudW1iZXIpOiBUO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGRhdGUgYWRkaW5nIHRoZSBudW1iZXIgb2YgcHJvdmlkZWQgYG1vbnRoc2AgdG8gdGhlIHByb3ZpZGVkIGBkYXRlYC5cbiAgICogSWYgdGhlIGNhbGN1bGF0ZWQgbW9udGggaGFzIGZld2VyIGRheXMgdGhhbiB0aGUgb3JpZ2luYWwgb25lLCB0aGUgZGF0ZSBpcyBzZXQgdG8gdGhlIGxhc3QgZGF5IG9mIHRoZSBtb250aC5cbiAgICogRS5nLiB3aXRoIGBkYXRlYCA9IG5ldyBEYXRlKDIwMjIsIDAsIDMxKSBhbmQgYG1vbnRoc2AgPSAxLCBpdCByZXR1cm5zIG5ldyBEYXRlKDIwMjIsIDEsIDI4KS5cbiAgICogQHBhcmFtIGRhdGUgVGhlIHN0YXJ0aW5nIGRhdGUuXG4gICAqIEBwYXJhbSBtb250aHMgVGhlIG51bWJlciBvZiBtb250aHMgdG8gYWRkLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGFkZENhbGVuZGFyTW9udGhzKGRhdGU6IFQsIG1vbnRoczogbnVtYmVyKTogVDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGJ5IGFkZGluZyB0aGUgbnVtYmVyIG9mIHByb3ZpZGVkIGBkYXlzYCB0byB0aGUgcHJvdmlkZWQgYGRhdGVgLlxuICAgKiBAcGFyYW0gZGF0ZSBUaGUgc3RhcnRpbmcgZGF0ZS5cbiAgICogQHBhcmFtIGRheXMgVGhlIG51bWJlciBvZiBkYXlzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBhZGRDYWxlbmRhckRheXMoZGF0ZTogVCwgZGF5czogbnVtYmVyKTogVDtcblxuICAvKipcbiAgICogR2V0IHRoZSBkYXRlIGluIHRoZSBsb2NhbCBmb3JtYXQuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBkYXRlIHRvIGZvcm1hdFxuICAgKiBAcmV0dXJucyBUaGUgYGRhdGVgIGluIHRoZSBsb2NhbCBmb3JtYXQgYXMgc3RyaW5nLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldEFjY2Vzc2liaWxpdHlGb3JtYXREYXRlKGRhdGU6IFQgfCBzdHJpbmcpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgZ2l2ZW4gc3RyaW5nIGFzIERhdGUuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgZGF0ZSBpbiB0aGUgZm9ybWF0IERELk1NLllZWVkuXG4gICAqL1xuICBwdWJsaWMgcGFyc2UodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBUIHwgbnVsbCB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IGRhdGU6IFQgfCBudWxsID0gbnVsbDtcbiAgICBjb25zdCBpc29NYXRjaCA9IHZhbHVlLm1hdGNoKElTTzg2MDFfRk9STUFUX0RBVEUpO1xuICAgIHRyeSB7XG4gICAgICBkYXRlID0gaXNvTWF0Y2ggPyB0aGlzLmNyZWF0ZURhdGUoK2lzb01hdGNoWzFdLCAraXNvTWF0Y2hbMl0sICtpc29NYXRjaFszXSkgOiBudWxsO1xuICAgIH0gY2F0Y2gge1xuICAgICAgLyogZW1wdHkgKi9cbiAgICB9XG4gICAgaWYgKHRoaXMuaXNWYWxpZChkYXRlKSkge1xuICAgICAgcmV0dXJuIGRhdGU7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RyaXBwZWRWYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcRC9nLCAnICcpLnRyaW0oKTtcblxuICAgIGNvbnN0IG1hdGNoOiBSZWdFeHBNYXRjaEFycmF5IHwgbnVsbCB8IHVuZGVmaW5lZCA9IHN0cmlwcGVkVmFsdWU/Lm1hdGNoKEZPUk1BVF9EQVRFKTtcbiAgICBpZiAoXG4gICAgICAhbWF0Y2ggfHxcbiAgICAgIG1hdGNoLmluZGV4ICE9PSAwIHx8XG4gICAgICBtYXRjaC5sZW5ndGggPD0gMiB8fFxuICAgICAgbWF0Y2guc29tZSgoZSkgPT4gZSA9PT0gdW5kZWZpbmVkKSB8fFxuICAgICAgIXRoaXMuaXNWYWxpZCh0aGlzLmNyZWF0ZURhdGUoK21hdGNoWzNdLCArbWF0Y2hbMl0sICttYXRjaFsxXSkpXG4gICAgKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgeWVhciA9ICttYXRjaFszXTtcblxuICAgIGlmICh0eXBlb2YgeWVhciA9PT0gJ251bWJlcicgJiYgeWVhciA8IDEwMCAmJiB5ZWFyID49IDApIHtcbiAgICAgIGNvbnN0IHNoaWZ0ID0gdGhpcy5nZXRZZWFyKHRoaXMudG9kYXkoKSkgLSAyMDAwICsgdGhpcy5fY3V0b2ZmWWVhck9mZnNldDtcbiAgICAgIHllYXIgPSB5ZWFyIDw9IHNoaWZ0ID8gMjAwMCArIHllYXIgOiAxOTAwICsgeWVhcjtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVEYXRlKHllYXIsICttYXRjaFsyXSwgK21hdGNoWzFdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JtYXQgdGhlIGdpdmVuIGRhdGUgYXMgc3RyaW5nLlxuICAgKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBmb3JtYXQuXG4gICAqIEBwYXJhbSBvcHRpb25zIG9wdGlvbnMgb2JqZWN0IHdpdGggd2Vla2RheVN0eWxlIGFzIHByb3BlcnR5XG4gICAqL1xuICBwdWJsaWMgZm9ybWF0KFxuICAgIGRhdGU6IFQgfCBudWxsIHwgdW5kZWZpbmVkLFxuICAgIG9wdGlvbnM/OiB7IHdlZWtkYXlTdHlsZT86ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93JyB8ICdub25lJyB9LFxuICApOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5pc1ZhbGlkKGRhdGUpKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBuZXcgRGF0ZSh0aGlzLnRvSXNvODYwMShkYXRlISkgKyAnVDAwOjAwOjAwJyk7XG4gICAgY29uc3QgZGF0ZUZvcm1hdHRlciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdkZS1DSCcsIHtcbiAgICAgIGRheTogJzItZGlnaXQnLFxuICAgICAgbW9udGg6ICcyLWRpZ2l0JyxcbiAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICB9KTtcblxuICAgIGlmIChvcHRpb25zPy53ZWVrZGF5U3R5bGUgPT09ICdub25lJykge1xuICAgICAgcmV0dXJuIGRhdGVGb3JtYXR0ZXIuZm9ybWF0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCB3ZWVrZGF5U3R5bGUgPSBvcHRpb25zPy53ZWVrZGF5U3R5bGUgPz8gJ3Nob3J0JztcbiAgICBsZXQgd2Vla2RheSA9IHRoaXMuZ2V0RGF5T2ZXZWVrTmFtZXMod2Vla2RheVN0eWxlKVt0aGlzLmdldERheU9mV2VlayhkYXRlISldO1xuICAgIHdlZWtkYXkgPSB3ZWVrZGF5LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgd2Vla2RheS5zdWJzdHJpbmcoMSk7XG4gICAgLy8gV2UgaGF2ZSB0aGUgc3BlY2lhbCByZXF1aXJlbWVudCBmb3IgZGF0ZSBmb3JtYXRzIGF0IFNCQiwgd2hlcmUgdGhlIHNob3J0IGZvcm1cbiAgICAvLyBmb3Igd2Vla2RheXMgc2hvdWxkIGJlIHR3byBjaGFyYWN0ZXJzIGluIGxlbmd0aC5cbiAgICBpZiAod2Vla2RheVN0eWxlID09PSAnc2hvcnQnKSB7XG4gICAgICB3ZWVrZGF5ID0gd2Vla2RheS5zdWJzdHJpbmcoMCwgMik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGAke3dlZWtkYXl9LCAke2RhdGVGb3JtYXR0ZXIuZm9ybWF0KHZhbHVlKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBgb2JqYCBpcyBhIERhdGUuXG4gICAqIEBwYXJhbSBvYmogVGhlIG9iamVjdCB0byBjaGVjay5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBpc0RhdGVJbnN0YW5jZShvYmo6IGFueSk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEdldHMgZGF0ZSBpbnN0YW5jZSB0aGF0IGlzIG5vdCB2YWxpZC5cbiAgICogQHJldHVybnMgQW4gaW52YWxpZCBkYXRlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGludmFsaWQoKTogVDtcblxuICAvKipcbiAgICogR2V0IHRoZSBnaXZlbiBkYXRlIGFzIElTTyBTdHJpbmcuXG4gICAqIEBwYXJhbSBkYXRlIFRoZSBkYXRlIHRvIGNvbnZlcnQgdG8gSVNPIFN0cmluZy5cbiAgICovXG4gIHB1YmxpYyB0b0lzbzg2MDEoZGF0ZTogVCk6IHN0cmluZyB7XG4gICAgY29uc3QgcGFkID0gKHZhbHVlOiBudW1iZXIsIGxlbmd0aCA9IDIpOiBzdHJpbmcgPT4gYCR7dmFsdWV9YC5wYWRTdGFydChsZW5ndGgsICcwJyk7XG4gICAgcmV0dXJuIGAke3BhZCh0aGlzLmdldFllYXIoZGF0ZSksIDQpfS0ke3BhZCh0aGlzLmdldE1vbnRoKGRhdGUpKX0tJHtwYWQodGhpcy5nZXREYXRlKGRhdGUpKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEdpdmVuIGEgcG90ZW50aWFsIGRhdGUgb2JqZWN0LCByZXR1cm5zIHRoYXQgc2FtZSBkYXRlIG9iamVjdCBpZiBpdCBpc1xuICAgKiBhIHZhbGlkIGRhdGUsIG9yIGBudWxsYCBpZiBpdCdzIG5vdCBhIHZhbGlkIGRhdGUuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgb2JqZWN0IHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBIGRhdGUgb3IgYG51bGxgLlxuICAgKi9cbiAgcHVibGljIGdldFZhbGlkRGF0ZU9yTnVsbCh2YWx1ZTogdW5rbm93bik6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5pc0RhdGVJbnN0YW5jZSh2YWx1ZSkgJiYgdGhpcy5pc1ZhbGlkKHZhbHVlIGFzIFQpID8gKHZhbHVlIGFzIFQpIDogbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBkYXkgb2YgdGhlIHdlZWsgb2YgdGhlIGZpcnN0IGRheSBvZiB0aGUgbW9udGgsIGFuZCB0aGVuIGl0cyBvZmZzZXQgZnJvbSB0aGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrLlxuICAgKi9cbiAgcHVibGljIGdldEZpcnN0V2Vla09mZnNldChkYXRlOiBUKTogbnVtYmVyIHtcbiAgICBjb25zdCBmaXJzdE9mTW9udGggPSB0aGlzLmNyZWF0ZURhdGUodGhpcy5nZXRZZWFyKGRhdGUpLCB0aGlzLmdldE1vbnRoKGRhdGUpLCAxKSE7XG4gICAgcmV0dXJuIChcbiAgICAgIChEQVlTX1BFUl9ST1cgKyB0aGlzLmdldERheU9mV2VlayhmaXJzdE9mTW9udGgpIC0gdGhpcy5nZXRGaXJzdERheU9mV2VlaygpKSAlIERBWVNfUEVSX1JPV1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGFyZXMgdHdvIGRhdGVzLlxuICAgKiBAcGFyYW0gZmlyc3QgVGhlIGZpcnN0IGRhdGUgdG8gY29tcGFyZS5cbiAgICogQHBhcmFtIHNlY29uZCBUaGUgc2Vjb25kIGRhdGUgdG8gY29tcGFyZS5cbiAgICogQHJldHVybnMgMCBpZiB0aGUgZGF0ZXMgYXJlIGVxdWFsLCBhIG51bWJlciBsZXNzIHRoYW4gMCBpZiB0aGUgZmlyc3QgZGF0ZSBpcyBlYXJsaWVyLFxuICAgKiAgICAgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgaWYgdGhlIGZpcnN0IGRhdGUgaXMgbGF0ZXIuXG4gICAqL1xuICBwdWJsaWMgY29tcGFyZURhdGUoZmlyc3Q6IFQsIHNlY29uZDogVCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuZ2V0WWVhcihmaXJzdCkgLSB0aGlzLmdldFllYXIoc2Vjb25kKSB8fFxuICAgICAgdGhpcy5nZXRNb250aChmaXJzdCkgLSB0aGlzLmdldE1vbnRoKHNlY29uZCkgfHxcbiAgICAgIHRoaXMuZ2V0RGF0ZShmaXJzdCkgLSB0aGlzLmdldERhdGUoc2Vjb25kKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHR3byBkYXRlcyBhcmUgZXF1YWwuXG4gICAqIEBwYXJhbSBmaXJzdCBUaGUgZmlyc3QgZGF0ZSB0byBjaGVjay5cbiAgICogQHBhcmFtIHNlY29uZCBUaGUgc2Vjb25kIGRhdGUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIHR3byBkYXRlcyBhcmUgZXF1YWwuXG4gICAqICAgICBOdWxsIGRhdGVzIGFyZSBjb25zaWRlcmVkIGVxdWFsIHRvIG90aGVyIG51bGwgZGF0ZXMuXG4gICAqL1xuICBwdWJsaWMgc2FtZURhdGUoZmlyc3Q6IFQgfCBudWxsLCBzZWNvbmQ6IFQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgaWYgKGZpcnN0ICYmIHNlY29uZCkge1xuICAgICAgY29uc3QgZmlyc3RWYWxpZCA9IHRoaXMuaXNWYWxpZChmaXJzdCk7XG4gICAgICBjb25zdCBzZWNvbmRWYWxpZCA9IHRoaXMuaXNWYWxpZChzZWNvbmQpO1xuICAgICAgaWYgKGZpcnN0VmFsaWQgJiYgc2Vjb25kVmFsaWQpIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmNvbXBhcmVEYXRlKGZpcnN0LCBzZWNvbmQpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZpcnN0VmFsaWQgPT0gc2Vjb25kVmFsaWQ7XG4gICAgfVxuICAgIHJldHVybiBmaXJzdCA9PSBzZWNvbmQ7XG4gIH1cblxuICAvKipcbiAgICogQ2xhbXAgdGhlIGdpdmVuIGRhdGUgYmV0d2VlbiBtaW4gYW5kIG1heCBkYXRlcy5cbiAgICogQHBhcmFtIGRhdGUgVGhlIGRhdGUgdG8gY2xhbXAuXG4gICAqIEBwYXJhbSBtaW4gVGhlIG1pbmltdW0gdmFsdWUgdG8gYWxsb3cuIElmIG51bGwgb3Igb21pdHRlZCBubyBtaW4gaXMgZW5mb3JjZWQuXG4gICAqIEBwYXJhbSBtYXggVGhlIG1heGltdW0gdmFsdWUgdG8gYWxsb3cuIElmIG51bGwgb3Igb21pdHRlZCBubyBtYXggaXMgZW5mb3JjZWQuXG4gICAqIEByZXR1cm5zIGBtaW5gIGlmIGBkYXRlYCBpcyBsZXNzIHRoYW4gYG1pbmAsIGBtYXhgIGlmIGRhdGUgaXMgZ3JlYXRlciB0aGFuIGBtYXhgLFxuICAgKiAgICAgb3RoZXJ3aXNlIGBkYXRlYC5cbiAgICovXG4gIHB1YmxpYyBjbGFtcERhdGUoZGF0ZTogVCwgbWluPzogVCB8IG51bGwsIG1heD86IFQgfCBudWxsKTogVCB7XG4gICAgaWYgKG1pbiAmJiB0aGlzLmNvbXBhcmVEYXRlKGRhdGUsIG1pbikgPCAwKSB7XG4gICAgICByZXR1cm4gbWluO1xuICAgIH1cbiAgICBpZiAobWF4ICYmIHRoaXMuY29tcGFyZURhdGUoZGF0ZSwgbWF4KSA+IDApIHtcbiAgICAgIHJldHVybiBtYXg7XG4gICAgfVxuICAgIHJldHVybiBkYXRlO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQU8sTUFBTSxlQUF1QjtBQUM3QixNQUFNLGlCQUF5QjtBQUMvQixNQUFNLGdCQUF3QjtBQUM5QixNQUFNLGtCQUEwQjtBQUNoQyxNQUFNLGlCQUF5QjtBQUMvQixNQUFNLGNBQ1g7QUFDSyxNQUFNLHNCQUFzQjtNQU9iLFlBQVc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVMvQixZQUFtQixtQkFBMkIsSUFBRTtBQUM5QyxTQUFLLG9CQUFvQjtBQUFBLEVBQzNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBa0ZPLFlBQVksT0FBb0M7QUFDckQsUUFDRSxTQUFTLFFBQ1IsS0FBSyxlQUFlLEtBQUssS0FBSyxLQUFLLFFBQVEsS0FBNkIsR0FDekU7QUFDQSxhQUFPO0FBQUEsSUFDVDtBQUNBLFdBQU8sS0FBSyxRQUFBO0FBQUEsRUFDZDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFvQ08sTUFBTSxPQUFnQztBQUMzQyxRQUFJLENBQUMsT0FBTztBQUNWLGFBQU87QUFBQSxJQUNUO0FBRUEsUUFBSSxPQUFpQjtBQUNyQixVQUFNLFdBQVcsTUFBTSxNQUFNLG1CQUFtQjtBQUNoRCxRQUFJO0FBQ0YsYUFBTyxXQUFXLEtBQUssV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJO0FBQUEsSUFDaEYsUUFBUTtBQUFBLElBRVI7QUFDQSxRQUFJLEtBQUssUUFBUSxJQUFJLEdBQUc7QUFDdEIsYUFBTztBQUFBLElBQ1Q7QUFFQSxVQUFNLGdCQUFnQixNQUFNLFFBQVEsT0FBTyxHQUFHLEVBQUUsS0FBQTtBQUVoRCxVQUFNLFFBQTZDLGVBQWUsTUFBTSxXQUFXO0FBQ25GLFFBQ0UsQ0FBQyxTQUNELE1BQU0sVUFBVSxLQUNoQixNQUFNLFVBQVUsS0FDaEIsTUFBTSxLQUFLLENBQUMsTUFBTSxNQUFNLE1BQVMsS0FDakMsQ0FBQyxLQUFLLFFBQVEsS0FBSyxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FDOUQ7QUFDQSxhQUFPO0FBQUEsSUFDVDtBQUVBLFFBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztBQUVuQixRQUFJLE9BQU8sU0FBUyxZQUFZLE9BQU8sT0FBTyxRQUFRLEdBQUc7QUFDdkQsWUFBTSxRQUFRLEtBQUssUUFBUSxLQUFLLE9BQU8sSUFBSSxNQUFPLEtBQUs7QUFDdkQsYUFBTyxRQUFRLFFBQVEsTUFBTyxPQUFPLE9BQU87QUFBQSxJQUM5QztBQUVBLFdBQU8sS0FBSyxXQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQUEsRUFDbkQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxPQUNMLE1BQ0EsU0FBaUU7QUFFakUsUUFBSSxDQUFDLEtBQUssUUFBUSxJQUFJLEdBQUc7QUFDdkIsYUFBTztBQUFBLElBQ1Q7QUFFQSxVQUFNLFFBQVEsb0JBQUksS0FBSyxLQUFLLFVBQVUsSUFBSyxJQUFJLFdBQVc7QUFDMUQsVUFBTSxnQkFBZ0IsSUFBSSxLQUFLLGVBQWUsU0FBUztBQUFBLE1BQ3JELEtBQUs7QUFBQSxNQUNMLE9BQU87QUFBQSxNQUNQLE1BQU07QUFBQSxJQUFBLENBQ1A7QUFFRCxRQUFJLFNBQVMsaUJBQWlCLFFBQVE7QUFDcEMsYUFBTyxjQUFjLE9BQU8sS0FBSztBQUFBLElBQ25DO0FBRUEsVUFBTSxlQUFlLFNBQVMsZ0JBQWdCO0FBQzlDLFFBQUksVUFBVSxLQUFLLGtCQUFrQixZQUFZLEVBQUUsS0FBSyxhQUFhLElBQUssQ0FBQztBQUMzRSxjQUFVLFFBQVEsT0FBTyxDQUFDLEVBQUUsZ0JBQWdCLFFBQVEsVUFBVSxDQUFDO0FBRy9ELFFBQUksaUJBQWlCLFNBQVM7QUFDNUIsZ0JBQVUsUUFBUSxVQUFVLEdBQUcsQ0FBQztBQUFBLElBQ2xDO0FBRUEsV0FBTyxHQUFHLE9BQU8sS0FBSyxjQUFjLE9BQU8sS0FBSyxDQUFDO0FBQUEsRUFDbkQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBa0JPLFVBQVUsTUFBTztBQUN0QixVQUFNLE1BQU0sQ0FBQyxPQUFlLFNBQVMsTUFBYyxHQUFHLEtBQUssR0FBRyxTQUFTLFFBQVEsR0FBRztBQUNsRixXQUFPLEdBQUcsSUFBSSxLQUFLLFFBQVEsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUM7QUFBQSxFQUM3RjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sbUJBQW1CLE9BQWM7QUFDdEMsV0FBTyxLQUFLLGVBQWUsS0FBSyxLQUFLLEtBQUssUUFBUSxLQUFVLElBQUssUUFBYztBQUFBLEVBQ2pGO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxtQkFBbUIsTUFBTztBQUMvQixVQUFNLGVBQWUsS0FBSyxXQUFXLEtBQUssUUFBUSxJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxDQUFDO0FBQy9FLFlBQ0csZUFBZSxLQUFLLGFBQWEsWUFBWSxJQUFJLEtBQUssdUJBQXVCO0FBQUEsRUFFbEY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sWUFBWSxPQUFVLFFBQVM7QUFDcEMsV0FDRSxLQUFLLFFBQVEsS0FBSyxJQUFJLEtBQUssUUFBUSxNQUFNLEtBQ3pDLEtBQUssU0FBUyxLQUFLLElBQUksS0FBSyxTQUFTLE1BQU0sS0FDM0MsS0FBSyxRQUFRLEtBQUssSUFBSSxLQUFLLFFBQVEsTUFBTTtBQUFBLEVBRTdDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNPLFNBQVMsT0FBaUIsUUFBZ0I7QUFDL0MsUUFBSSxTQUFTLFFBQVE7QUFDbkIsWUFBTSxhQUFhLEtBQUssUUFBUSxLQUFLO0FBQ3JDLFlBQU0sY0FBYyxLQUFLLFFBQVEsTUFBTTtBQUN2QyxVQUFJLGNBQWMsYUFBYTtBQUM3QixlQUFPLENBQUMsS0FBSyxZQUFZLE9BQU8sTUFBTTtBQUFBLE1BQ3hDO0FBQ0EsYUFBTyxjQUFjO0FBQUEsSUFDdkI7QUFDQSxXQUFPLFNBQVM7QUFBQSxFQUNsQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVPLFVBQVUsTUFBUyxLQUFnQixLQUFjO0FBQ3RELFFBQUksT0FBTyxLQUFLLFlBQVksTUFBTSxHQUFHLElBQUksR0FBRztBQUMxQyxhQUFPO0FBQUEsSUFDVDtBQUNBLFFBQUksT0FBTyxLQUFLLFlBQVksTUFBTSxHQUFHLElBQUksR0FBRztBQUMxQyxhQUFPO0FBQUEsSUFDVDtBQUNBLFdBQU87QUFBQSxFQUNUO0FBQ0Q7In0=
@@ -1,7 +1,5 @@
1
1
  import { DateAdapter } from './date-adapter.ts';
2
2
  export declare class NativeDateAdapter extends DateAdapter<Date> {
3
- private readonly _cutoffYearOffset;
4
- constructor(cutoffYearOffset?: number);
5
3
  /** Gets the year of the input date. */
6
4
  getYear(date: Date): number;
7
5
  /** Gets the month of the input date. */
@@ -33,7 +31,7 @@ export declare class NativeDateAdapter extends DateAdapter<Date> {
33
31
  /** Creates today's date. */
34
32
  today(): Date;
35
33
  /** Creates a new date, given day, month and year; the method doesn't allow date's overflow. */
36
- createDate(year: number, month: number, date: number): Date;
34
+ createDate(year: number, month: number, day: number): Date;
37
35
  /** Checks whether the given `obj` is a Date. */
38
36
  isDateInstance(obj: any): boolean;
39
37
  /** Checks whether the given `date` is a valid Date. */
@@ -56,8 +54,6 @@ export declare class NativeDateAdapter extends DateAdapter<Date> {
56
54
  addCalendarDays(date: Date, days: number): Date;
57
55
  /** Creates a Date from a valid input (Date or ISO string). */
58
56
  deserialize(date: Date | string | null | undefined): Date | null;
59
- /** Returns the right format for the `valueAsDate` property. */
60
- parse(value: string | null | undefined): Date | null;
61
57
  invalid(): Date;
62
58
  /**
63
59
  * Creates an array with the given length and fills it by mapping with the provided function.
@@ -1 +1 @@
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;IAKtE,+EAA+E;IACxE,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,GAAG,IAAI,GAAG,IAAI;IAuC3C,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,EAAE,MAAM,mBAAmB,CAAC;AAUhD,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,IAAI,CAAC;IACtD,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;IAKtE,+EAA+E;IACxE,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,GAAG,EAAE,MAAM,GAAG,IAAI;IAiBjE,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;IAahE,OAAO,IAAI,IAAI;IAI/B;;;;OAIG;IACH,OAAO,CAAC,MAAM;IAId,gEAAgE;IAChE,OAAO,CAAC,uBAAuB;CAShC;AAED,eAAO,MAAM,kBAAkB,mBAA0B,CAAC"}