@taiga-ui/core 2.54.1 → 2.57.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 (756) hide show
  1. package/bundles/taiga-ui-core-abstract.umd.js +15 -15
  2. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-core-animations.umd.js +138 -138
  5. package/bundles/taiga-ui-core-animations.umd.js.map +1 -1
  6. package/bundles/taiga-ui-core-animations.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-alert.umd.js +12 -12
  8. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-alert.umd.min.js +1 -1
  10. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-button.umd.js +17 -17
  12. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-button.umd.min.js +1 -1
  14. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-calendar.umd.js +1 -1
  16. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-calendar.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-core-components-data-list.umd.js +34 -34
  19. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  20. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-dialog.umd.js +24 -24
  22. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-dropdown-box.umd.js +38 -38
  25. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-error.umd.js +4 -4
  28. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-expand.umd.js +12 -12
  31. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-group.umd.js +19 -19
  34. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-group.umd.min.js +1 -1
  36. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-hints-host.umd.js +47 -47
  38. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +10 -10
  41. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-label.umd.js +4 -4
  44. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-link.umd.js +11 -11
  47. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-loader.umd.js +4 -4
  50. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  51. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-core-components-notification.umd.js +8 -8
  53. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  54. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  55. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +2 -2
  56. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  57. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +7 -7
  59. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +2 -2
  62. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +54 -54
  65. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  66. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +2 -2
  68. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  69. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-core-components-root.umd.js +4 -4
  71. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +26 -26
  74. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  75. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-core-components-scrollbar.umd.js +8 -8
  77. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  78. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-core-components-svg.umd.js +15 -15
  80. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  81. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-core-components-theme-night.umd.js +2 -2
  83. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  84. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-core-components-tooltip.umd.js +7 -7
  86. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  87. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-core-constants.umd.js +17 -17
  89. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  90. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  91. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-core-directives-color.umd.js +6 -6
  93. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  94. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-directives-described-by.umd.js +8 -8
  96. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  97. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js +11 -11
  99. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  100. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-core-directives-dropdown.umd.js +2 -2
  102. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  103. package/bundles/taiga-ui-core-directives-dropdown.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +8 -8
  105. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  106. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  107. package/bundles/taiga-ui-core-directives-hint.umd.js +7 -7
  108. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  109. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  110. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +4 -4
  111. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  112. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +1 -1
  114. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  115. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  116. package/bundles/taiga-ui-core-directives-mode.umd.js +2 -2
  117. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  118. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +5 -5
  120. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  121. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  122. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +1 -1
  123. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  124. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-core-directives-table-mode.umd.js +2 -2
  126. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  127. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  128. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +35 -35
  129. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  130. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-core-directives-wrapper.umd.js +9 -9
  132. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  133. package/bundles/taiga-ui-core-directives-wrapper.umd.min.js.map +1 -1
  134. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  135. package/bundles/taiga-ui-core-enums.umd.min.js.map +1 -1
  136. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -1
  137. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  138. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +1 -1
  140. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  141. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  142. package/bundles/taiga-ui-core-observables.umd.js +2 -2
  143. package/bundles/taiga-ui-core-observables.umd.js.map +1 -1
  144. package/bundles/taiga-ui-core-observables.umd.min.js.map +1 -1
  145. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +1 -1
  146. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  147. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  148. package/bundles/taiga-ui-core-pipes-format-number.umd.js +1 -1
  149. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  150. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  151. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +3 -3
  152. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  153. package/bundles/taiga-ui-core-pipes-format-phone.umd.min.js.map +1 -1
  154. package/bundles/taiga-ui-core-pipes-month.umd.js +1 -1
  155. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  156. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  157. package/bundles/taiga-ui-core-pipes-pluralize.umd.js +1 -1
  158. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  159. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  160. package/bundles/taiga-ui-core-providers.umd.js +2 -2
  161. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  162. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  163. package/bundles/taiga-ui-core-services.umd.js +7 -7
  164. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  165. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-core-tokens.umd.js +40 -40
  167. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  168. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  169. package/bundles/taiga-ui-core-utils-dom.umd.js +16 -16
  170. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  171. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  172. package/bundles/taiga-ui-core-utils-format.umd.js +17 -17
  173. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  174. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  175. package/bundles/taiga-ui-core-utils-mask.umd.js +28 -28
  176. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  177. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  178. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +12 -12
  179. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  180. package/bundles/taiga-ui-core-utils-miscellaneous.umd.min.js.map +1 -1
  181. package/bundles/taiga-ui-core-utils-polyfills.umd.js +4 -4
  182. package/bundles/taiga-ui-core-utils-polyfills.umd.js.map +1 -1
  183. package/bundles/taiga-ui-core-utils-polyfills.umd.min.js.map +1 -1
  184. package/components/alert/taiga-ui-core-components-alert.metadata.json +1 -1
  185. package/components/button/taiga-ui-core-components-button.metadata.json +1 -1
  186. package/components/group/taiga-ui-core-components-group.metadata.json +1 -1
  187. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  188. package/constants/version.d.ts +1 -1
  189. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  190. package/esm2015/abstract/abstract-dropdown.js +12 -12
  191. package/esm2015/abstract/abstract-hint-options.js +2 -2
  192. package/esm2015/abstract/abstract-hint.js +4 -4
  193. package/esm2015/animations/animations.js +140 -140
  194. package/esm2015/components/alert/alert.component.js +11 -11
  195. package/esm2015/components/alert/alert.service.js +3 -3
  196. package/esm2015/components/button/button-options.js +3 -3
  197. package/esm2015/components/button/button.component.js +16 -16
  198. package/esm2015/components/calendar/calendar.component.js +2 -2
  199. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +7 -7
  200. package/esm2015/components/data-list/data-list.component.js +12 -12
  201. package/esm2015/components/data-list/data-list.directive.js +2 -2
  202. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  203. package/esm2015/components/data-list/option/option.component.js +12 -12
  204. package/esm2015/components/dialog/dialog.component.js +12 -12
  205. package/esm2015/components/dialog/dialog.directive.js +4 -4
  206. package/esm2015/components/dialog/dialog.providers.js +7 -7
  207. package/esm2015/components/dialog/dialog.service.js +5 -5
  208. package/esm2015/components/dropdown-box/dropdown-box.component.js +39 -39
  209. package/esm2015/components/error/error.component.js +5 -5
  210. package/esm2015/components/expand/expand-content.directive.js +2 -2
  211. package/esm2015/components/expand/expand.component.js +12 -12
  212. package/esm2015/components/group/group-styles.component.js +2 -2
  213. package/esm2015/components/group/group.component.js +7 -5
  214. package/esm2015/components/group/group.directive.js +15 -15
  215. package/esm2015/components/hints-host/hint-box/hint-box.component.js +46 -46
  216. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  217. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  218. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  219. package/esm2015/components/label/label.component.js +5 -5
  220. package/esm2015/components/link/link.component.js +12 -12
  221. package/esm2015/components/loader/loader-options.js +3 -3
  222. package/esm2015/components/loader/loader.component.js +3 -3
  223. package/esm2015/components/notification/notification.component.js +9 -9
  224. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  225. package/esm2015/components/primitive-checkbox/checkbox-options.js +5 -5
  226. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  227. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  228. package/esm2015/components/primitive-textfield/primitive-textfield-options.js +4 -4
  229. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +28 -28
  230. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  231. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +13 -13
  232. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  233. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  234. package/esm2015/components/root/root.component.js +5 -5
  235. package/esm2015/components/scroll-controls/scroll-controls.component.js +4 -4
  236. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  237. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  238. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  239. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  240. package/esm2015/components/scrollbar/scrollbar.component.js +7 -7
  241. package/esm2015/components/svg/svg.component.js +16 -16
  242. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  243. package/esm2015/components/tooltip/tooltip.component.js +8 -8
  244. package/esm2015/constants/decimal-symbols.js +2 -2
  245. package/esm2015/constants/default-icons-path.js +2 -2
  246. package/esm2015/constants/editing-keys.js +10 -10
  247. package/esm2015/constants/events.js +5 -5
  248. package/esm2015/constants/mask-caret-trap.js +2 -2
  249. package/esm2015/constants/version.js +2 -2
  250. package/esm2015/directives/color/color.directive.js +7 -7
  251. package/esm2015/directives/described-by/described-by.directive.js +5 -5
  252. package/esm2015/directives/described-by/described-by.providers.js +3 -3
  253. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  254. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  255. package/esm2015/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  256. package/esm2015/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  257. package/esm2015/directives/hint/hint-options.js +3 -3
  258. package/esm2015/directives/hint/hint.directive.js +6 -6
  259. package/esm2015/directives/hint-controller/hint-controller.directive.js +7 -7
  260. package/esm2015/directives/hint-controller/hint-controller.provider.js +2 -2
  261. package/esm2015/directives/hint-controller/hint-controller.token.js +2 -2
  262. package/esm2015/directives/manual-hint/manual-hint-options.js +2 -2
  263. package/esm2015/directives/manual-hint/manual-hint.directive.js +4 -4
  264. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  265. package/esm2015/directives/mode/mode.directive.js +3 -3
  266. package/esm2015/directives/pointer-hint/pointer-hint-options.js +2 -2
  267. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +5 -5
  268. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  269. package/esm2015/directives/table-mode/table-mode.directive.js +3 -3
  270. package/esm2015/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  271. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  272. package/esm2015/directives/textfield-controller/textfield-controller.provider.js +2 -2
  273. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  274. package/esm2015/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  275. package/esm2015/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  276. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  277. package/esm2015/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  278. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  279. package/esm2015/directives/textfield-controller/textfield-type.directive.js +5 -5
  280. package/esm2015/directives/textfield-controller/textfield.controller.js +2 -2
  281. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  282. package/esm2015/enums/appearance.js +1 -1
  283. package/esm2015/enums/base-color.js +1 -1
  284. package/esm2015/enums/button-shape.js +1 -1
  285. package/esm2015/enums/decimal.js +1 -1
  286. package/esm2015/enums/dropdown-animation.js +1 -1
  287. package/esm2015/enums/dropdown-width.js +1 -1
  288. package/esm2015/enums/hint-mode.js +1 -1
  289. package/esm2015/enums/interactive-state.js +1 -1
  290. package/esm2015/enums/link-mode.js +1 -1
  291. package/esm2015/enums/notification.js +1 -1
  292. package/esm2015/enums/orientation.js +1 -1
  293. package/esm2015/enums/range-state.js +1 -1
  294. package/esm2015/enums/support-color.js +1 -1
  295. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  296. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  297. package/esm2015/observables/smart-search.js +3 -3
  298. package/esm2015/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  299. package/esm2015/pipes/format-number/format-number.pipe.js +2 -2
  300. package/esm2015/pipes/format-phone/format-phone.pipe.js +4 -4
  301. package/esm2015/pipes/month/month.pipe.js +2 -2
  302. package/esm2015/pipes/pluralize/pluralize.pipe.js +2 -2
  303. package/esm2015/providers/is-mobile-resolution.provider.js +2 -2
  304. package/esm2015/providers/mode.provider.js +2 -2
  305. package/esm2015/services/hint.service.js +2 -2
  306. package/esm2015/services/night-theme.service.js +4 -4
  307. package/esm2015/services/svg.service.js +4 -4
  308. package/esm2015/tokens/animation-options.js +2 -2
  309. package/esm2015/tokens/animations-duration.js +2 -2
  310. package/esm2015/tokens/assert-enabled.js +2 -2
  311. package/esm2015/tokens/data-list-accessor.js +2 -2
  312. package/esm2015/tokens/data-list-host.js +2 -2
  313. package/esm2015/tokens/document-or-shadow-root.js +2 -2
  314. package/esm2015/tokens/dropdown-directive.js +2 -2
  315. package/esm2015/tokens/element-ref.js +2 -2
  316. package/esm2015/tokens/first-day-of-week.js +2 -2
  317. package/esm2015/tokens/i18n.js +10 -10
  318. package/esm2015/tokens/icon-place.js +3 -3
  319. package/esm2015/tokens/icons-path.js +2 -2
  320. package/esm2015/tokens/icons.js +2 -2
  321. package/esm2015/tokens/is-mobile-resolution.js +3 -3
  322. package/esm2015/tokens/media.js +2 -2
  323. package/esm2015/tokens/mode.js +2 -2
  324. package/esm2015/tokens/notification-options.js +3 -3
  325. package/esm2015/tokens/number-format.js +3 -3
  326. package/esm2015/tokens/option-content.js +2 -2
  327. package/esm2015/tokens/ordered-short-week-days.js +2 -2
  328. package/esm2015/tokens/scroll-ref.js +2 -2
  329. package/esm2015/tokens/svg-content-processor.js +2 -2
  330. package/esm2015/tokens/svg-src-processor.js +2 -2
  331. package/esm2015/tokens/textfield-appearance.js +2 -2
  332. package/esm2015/tokens/textfield-host.js +2 -2
  333. package/esm2015/tokens/theme.js +3 -3
  334. package/esm2015/tokens/value-accessor.js +2 -2
  335. package/esm2015/utils/dom/are-css-vars-supported.js +2 -2
  336. package/esm2015/utils/dom/check-fixed-position.js +3 -3
  337. package/esm2015/utils/dom/get-safe-area-size.js +4 -4
  338. package/esm2015/utils/dom/process-icon.js +11 -11
  339. package/esm2015/utils/format/format-number.js +5 -5
  340. package/esm2015/utils/format/format-phone.js +9 -9
  341. package/esm2015/utils/format/get-fractional-part-padded.js +3 -3
  342. package/esm2015/utils/format/number-to-string-without-exp.js +3 -3
  343. package/esm2015/utils/format/other-decimal-symbol.js +2 -2
  344. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +11 -11
  345. package/esm2015/utils/mask/create-correction-mask.js +3 -3
  346. package/esm2015/utils/mask/create-number-mask.js +13 -13
  347. package/esm2015/utils/mask/masked-money-value-is-empty.js +3 -3
  348. package/esm2015/utils/mask/masked-number-string-to-number.js +2 -2
  349. package/esm2015/utils/miscellaneous/color-fallback.js +8 -8
  350. package/esm2015/utils/miscellaneous/icons-path-factory.js +3 -3
  351. package/esm2015/utils/miscellaneous/is-presumed-html-string.js +2 -2
  352. package/esm2015/utils/miscellaneous/size-bigger.js +3 -3
  353. package/esm2015/utils/polyfills/inner-html.js +5 -5
  354. package/esm5/abstract/abstract-dropdown.js +12 -12
  355. package/esm5/abstract/abstract-hint-options.js +2 -2
  356. package/esm5/abstract/abstract-hint.js +4 -4
  357. package/esm5/animations/animations.js +140 -140
  358. package/esm5/components/alert/alert.component.js +11 -11
  359. package/esm5/components/alert/alert.service.js +3 -3
  360. package/esm5/components/button/button-options.js +3 -3
  361. package/esm5/components/button/button.component.js +16 -16
  362. package/esm5/components/calendar/calendar.component.js +2 -2
  363. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +8 -8
  364. package/esm5/components/data-list/data-list.component.js +12 -12
  365. package/esm5/components/data-list/data-list.directive.js +2 -2
  366. package/esm5/components/data-list/opt-group.directive.js +5 -5
  367. package/esm5/components/data-list/option/option.component.js +12 -12
  368. package/esm5/components/dialog/dialog.component.js +12 -12
  369. package/esm5/components/dialog/dialog.directive.js +4 -4
  370. package/esm5/components/dialog/dialog.providers.js +7 -7
  371. package/esm5/components/dialog/dialog.service.js +5 -5
  372. package/esm5/components/dropdown-box/dropdown-box.component.js +39 -39
  373. package/esm5/components/error/error.component.js +5 -5
  374. package/esm5/components/expand/expand-content.directive.js +2 -2
  375. package/esm5/components/expand/expand.component.js +12 -12
  376. package/esm5/components/group/group-styles.component.js +2 -2
  377. package/esm5/components/group/group.component.js +5 -5
  378. package/esm5/components/group/group.directive.js +15 -15
  379. package/esm5/components/hints-host/hint-box/hint-box.component.js +46 -46
  380. package/esm5/components/hints-host/hints-host.component.js +3 -3
  381. package/esm5/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  382. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  383. package/esm5/components/label/label.component.js +5 -5
  384. package/esm5/components/link/link.component.js +12 -12
  385. package/esm5/components/loader/loader-options.js +3 -3
  386. package/esm5/components/loader/loader.component.js +3 -3
  387. package/esm5/components/notification/notification.component.js +9 -9
  388. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  389. package/esm5/components/primitive-checkbox/checkbox-options.js +5 -5
  390. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  391. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  392. package/esm5/components/primitive-textfield/primitive-textfield-options.js +4 -4
  393. package/esm5/components/primitive-textfield/primitive-textfield.component.js +28 -28
  394. package/esm5/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  395. package/esm5/components/primitive-textfield/textfield/textfield.component.js +13 -13
  396. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  397. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  398. package/esm5/components/root/root.component.js +5 -5
  399. package/esm5/components/scroll-controls/scroll-controls.component.js +4 -4
  400. package/esm5/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  401. package/esm5/components/scroll-controls/scrollbar.directive.js +23 -23
  402. package/esm5/components/scrollbar/scroll-ref.directive.js +2 -2
  403. package/esm5/components/scrollbar/scrollable.directive.js +2 -2
  404. package/esm5/components/scrollbar/scrollbar.component.js +7 -7
  405. package/esm5/components/svg/svg.component.js +16 -16
  406. package/esm5/components/theme-night/theme-night.component.js +3 -3
  407. package/esm5/components/tooltip/tooltip.component.js +8 -8
  408. package/esm5/constants/decimal-symbols.js +2 -2
  409. package/esm5/constants/default-icons-path.js +2 -2
  410. package/esm5/constants/editing-keys.js +10 -10
  411. package/esm5/constants/events.js +5 -5
  412. package/esm5/constants/mask-caret-trap.js +2 -2
  413. package/esm5/constants/version.js +2 -2
  414. package/esm5/directives/color/color.directive.js +7 -7
  415. package/esm5/directives/described-by/described-by.directive.js +5 -5
  416. package/esm5/directives/described-by/described-by.providers.js +5 -5
  417. package/esm5/directives/dropdown/dropdown.directive.js +3 -3
  418. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  419. package/esm5/directives/dropdown-controller/dropdown-controller.provider.js +2 -2
  420. package/esm5/directives/dropdown-controller/dropdown-controller.token.js +2 -2
  421. package/esm5/directives/hint/hint-options.js +3 -3
  422. package/esm5/directives/hint/hint.directive.js +6 -6
  423. package/esm5/directives/hint-controller/hint-controller.directive.js +7 -7
  424. package/esm5/directives/hint-controller/hint-controller.provider.js +2 -2
  425. package/esm5/directives/hint-controller/hint-controller.token.js +2 -2
  426. package/esm5/directives/manual-hint/manual-hint-options.js +2 -2
  427. package/esm5/directives/manual-hint/manual-hint.directive.js +4 -4
  428. package/esm5/directives/mask-accessor/mask-accessor.directive.js +2 -2
  429. package/esm5/directives/mode/mode.directive.js +3 -3
  430. package/esm5/directives/pointer-hint/pointer-hint-options.js +2 -2
  431. package/esm5/directives/pointer-hint/pointer-hint.directive.js +5 -5
  432. package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  433. package/esm5/directives/table-mode/table-mode.directive.js +3 -3
  434. package/esm5/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  435. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  436. package/esm5/directives/textfield-controller/textfield-controller.provider.js +2 -2
  437. package/esm5/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  438. package/esm5/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  439. package/esm5/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  440. package/esm5/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  441. package/esm5/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  442. package/esm5/directives/textfield-controller/textfield-size.directive.js +5 -5
  443. package/esm5/directives/textfield-controller/textfield-type.directive.js +5 -5
  444. package/esm5/directives/textfield-controller/textfield.controller.js +2 -2
  445. package/esm5/directives/wrapper/wrapper.directive.js +10 -10
  446. package/esm5/enums/appearance.js +1 -1
  447. package/esm5/enums/base-color.js +1 -1
  448. package/esm5/enums/button-shape.js +1 -1
  449. package/esm5/enums/decimal.js +1 -1
  450. package/esm5/enums/dropdown-animation.js +1 -1
  451. package/esm5/enums/dropdown-width.js +1 -1
  452. package/esm5/enums/hint-mode.js +1 -1
  453. package/esm5/enums/interactive-state.js +1 -1
  454. package/esm5/enums/link-mode.js +1 -1
  455. package/esm5/enums/notification.js +1 -1
  456. package/esm5/enums/orientation.js +1 -1
  457. package/esm5/enums/range-state.js +1 -1
  458. package/esm5/enums/support-color.js +1 -1
  459. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  460. package/esm5/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  461. package/esm5/observables/smart-search.js +3 -3
  462. package/esm5/pipes/calendar-sheet/calendar-sheet.pipe.js +2 -2
  463. package/esm5/pipes/format-number/format-number.pipe.js +2 -2
  464. package/esm5/pipes/format-phone/format-phone.pipe.js +4 -4
  465. package/esm5/pipes/month/month.pipe.js +2 -2
  466. package/esm5/pipes/pluralize/pluralize.pipe.js +2 -2
  467. package/esm5/providers/is-mobile-resolution.provider.js +2 -2
  468. package/esm5/providers/mode.provider.js +2 -2
  469. package/esm5/services/hint.service.js +2 -2
  470. package/esm5/services/night-theme.service.js +4 -4
  471. package/esm5/services/svg.service.js +4 -4
  472. package/esm5/tokens/animation-options.js +2 -2
  473. package/esm5/tokens/animations-duration.js +2 -2
  474. package/esm5/tokens/assert-enabled.js +2 -2
  475. package/esm5/tokens/data-list-accessor.js +2 -2
  476. package/esm5/tokens/data-list-host.js +2 -2
  477. package/esm5/tokens/document-or-shadow-root.js +2 -2
  478. package/esm5/tokens/dropdown-directive.js +2 -2
  479. package/esm5/tokens/element-ref.js +2 -2
  480. package/esm5/tokens/first-day-of-week.js +2 -2
  481. package/esm5/tokens/i18n.js +10 -10
  482. package/esm5/tokens/icon-place.js +3 -3
  483. package/esm5/tokens/icons-path.js +2 -2
  484. package/esm5/tokens/icons.js +2 -2
  485. package/esm5/tokens/is-mobile-resolution.js +3 -3
  486. package/esm5/tokens/media.js +2 -2
  487. package/esm5/tokens/mode.js +2 -2
  488. package/esm5/tokens/notification-options.js +3 -3
  489. package/esm5/tokens/number-format.js +3 -3
  490. package/esm5/tokens/option-content.js +2 -2
  491. package/esm5/tokens/ordered-short-week-days.js +2 -2
  492. package/esm5/tokens/scroll-ref.js +2 -2
  493. package/esm5/tokens/svg-content-processor.js +2 -2
  494. package/esm5/tokens/svg-src-processor.js +2 -2
  495. package/esm5/tokens/textfield-appearance.js +2 -2
  496. package/esm5/tokens/textfield-host.js +2 -2
  497. package/esm5/tokens/theme.js +3 -3
  498. package/esm5/tokens/value-accessor.js +2 -2
  499. package/esm5/utils/dom/are-css-vars-supported.js +2 -2
  500. package/esm5/utils/dom/check-fixed-position.js +3 -3
  501. package/esm5/utils/dom/get-safe-area-size.js +4 -4
  502. package/esm5/utils/dom/process-icon.js +11 -11
  503. package/esm5/utils/format/format-number.js +5 -5
  504. package/esm5/utils/format/format-phone.js +9 -9
  505. package/esm5/utils/format/get-fractional-part-padded.js +3 -3
  506. package/esm5/utils/format/number-to-string-without-exp.js +3 -3
  507. package/esm5/utils/format/other-decimal-symbol.js +2 -2
  508. package/esm5/utils/mask/create-auto-corrected-money-pipe.js +12 -12
  509. package/esm5/utils/mask/create-correction-mask.js +3 -3
  510. package/esm5/utils/mask/create-number-mask.js +13 -13
  511. package/esm5/utils/mask/masked-money-value-is-empty.js +3 -3
  512. package/esm5/utils/mask/masked-number-string-to-number.js +2 -2
  513. package/esm5/utils/miscellaneous/color-fallback.js +8 -8
  514. package/esm5/utils/miscellaneous/icons-path-factory.js +3 -3
  515. package/esm5/utils/miscellaneous/is-presumed-html-string.js +2 -2
  516. package/esm5/utils/miscellaneous/size-bigger.js +3 -3
  517. package/esm5/utils/polyfills/inner-html.js +5 -5
  518. package/fesm2015/taiga-ui-core-abstract.js +15 -15
  519. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  520. package/fesm2015/taiga-ui-core-animations.js +138 -138
  521. package/fesm2015/taiga-ui-core-animations.js.map +1 -1
  522. package/fesm2015/taiga-ui-core-components-alert.js +12 -12
  523. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  524. package/fesm2015/taiga-ui-core-components-button.js +17 -17
  525. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  526. package/fesm2015/taiga-ui-core-components-calendar.js +1 -1
  527. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  528. package/fesm2015/taiga-ui-core-components-data-list.js +33 -33
  529. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  530. package/fesm2015/taiga-ui-core-components-dialog.js +24 -24
  531. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  532. package/fesm2015/taiga-ui-core-components-dropdown-box.js +38 -38
  533. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  534. package/fesm2015/taiga-ui-core-components-error.js +4 -4
  535. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  536. package/fesm2015/taiga-ui-core-components-expand.js +12 -12
  537. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  538. package/fesm2015/taiga-ui-core-components-group.js +21 -19
  539. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  540. package/fesm2015/taiga-ui-core-components-hints-host.js +47 -47
  541. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  542. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  543. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  544. package/fesm2015/taiga-ui-core-components-label.js +4 -4
  545. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  546. package/fesm2015/taiga-ui-core-components-link.js +11 -11
  547. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  548. package/fesm2015/taiga-ui-core-components-loader.js +4 -4
  549. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  550. package/fesm2015/taiga-ui-core-components-notification.js +8 -8
  551. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  552. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  553. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  554. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +7 -7
  555. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  556. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +2 -2
  557. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  558. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +54 -54
  559. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  560. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  561. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  562. package/fesm2015/taiga-ui-core-components-root.js +4 -4
  563. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  564. package/fesm2015/taiga-ui-core-components-scroll-controls.js +26 -26
  565. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  566. package/fesm2015/taiga-ui-core-components-scrollbar.js +8 -8
  567. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  568. package/fesm2015/taiga-ui-core-components-svg.js +15 -15
  569. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  570. package/fesm2015/taiga-ui-core-components-theme-night.js +2 -2
  571. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  572. package/fesm2015/taiga-ui-core-components-tooltip.js +7 -7
  573. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  574. package/fesm2015/taiga-ui-core-constants.js +17 -17
  575. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  576. package/fesm2015/taiga-ui-core-directives-color.js +6 -6
  577. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  578. package/fesm2015/taiga-ui-core-directives-described-by.js +6 -6
  579. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  580. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js +11 -11
  581. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  582. package/fesm2015/taiga-ui-core-directives-dropdown.js +2 -2
  583. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  584. package/fesm2015/taiga-ui-core-directives-hint-controller.js +8 -8
  585. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  586. package/fesm2015/taiga-ui-core-directives-hint.js +7 -7
  587. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  588. package/fesm2015/taiga-ui-core-directives-manual-hint.js +4 -4
  589. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  590. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  591. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  592. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  593. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  594. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +5 -5
  595. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  596. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  597. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  598. package/fesm2015/taiga-ui-core-directives-table-mode.js +2 -2
  599. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  600. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +35 -35
  601. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  602. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  603. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  604. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  605. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  606. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  607. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +1 -1
  608. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  609. package/fesm2015/taiga-ui-core-observables.js +2 -2
  610. package/fesm2015/taiga-ui-core-observables.js.map +1 -1
  611. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  612. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  613. package/fesm2015/taiga-ui-core-pipes-format-number.js +1 -1
  614. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  615. package/fesm2015/taiga-ui-core-pipes-format-phone.js +3 -3
  616. package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
  617. package/fesm2015/taiga-ui-core-pipes-month.js +1 -1
  618. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  619. package/fesm2015/taiga-ui-core-pipes-pluralize.js +1 -1
  620. package/fesm2015/taiga-ui-core-pipes-pluralize.js.map +1 -1
  621. package/fesm2015/taiga-ui-core-providers.js +2 -2
  622. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  623. package/fesm2015/taiga-ui-core-services.js +7 -7
  624. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  625. package/fesm2015/taiga-ui-core-tokens.js +40 -40
  626. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  627. package/fesm2015/taiga-ui-core-utils-dom.js +16 -16
  628. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  629. package/fesm2015/taiga-ui-core-utils-format.js +17 -17
  630. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  631. package/fesm2015/taiga-ui-core-utils-mask.js +27 -27
  632. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  633. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +12 -12
  634. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  635. package/fesm2015/taiga-ui-core-utils-polyfills.js +4 -4
  636. package/fesm2015/taiga-ui-core-utils-polyfills.js.map +1 -1
  637. package/fesm5/taiga-ui-core-abstract.js +15 -15
  638. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  639. package/fesm5/taiga-ui-core-animations.js +138 -138
  640. package/fesm5/taiga-ui-core-animations.js.map +1 -1
  641. package/fesm5/taiga-ui-core-components-alert.js +12 -12
  642. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  643. package/fesm5/taiga-ui-core-components-button.js +17 -17
  644. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  645. package/fesm5/taiga-ui-core-components-calendar.js +1 -1
  646. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  647. package/fesm5/taiga-ui-core-components-data-list.js +34 -34
  648. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  649. package/fesm5/taiga-ui-core-components-dialog.js +24 -24
  650. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  651. package/fesm5/taiga-ui-core-components-dropdown-box.js +38 -38
  652. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  653. package/fesm5/taiga-ui-core-components-error.js +4 -4
  654. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  655. package/fesm5/taiga-ui-core-components-expand.js +12 -12
  656. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  657. package/fesm5/taiga-ui-core-components-group.js +19 -19
  658. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  659. package/fesm5/taiga-ui-core-components-hints-host.js +47 -47
  660. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  661. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +10 -10
  662. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  663. package/fesm5/taiga-ui-core-components-label.js +4 -4
  664. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  665. package/fesm5/taiga-ui-core-components-link.js +11 -11
  666. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  667. package/fesm5/taiga-ui-core-components-loader.js +4 -4
  668. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  669. package/fesm5/taiga-ui-core-components-notification.js +8 -8
  670. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  671. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  672. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  673. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +7 -7
  674. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  675. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +2 -2
  676. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  677. package/fesm5/taiga-ui-core-components-primitive-textfield.js +54 -54
  678. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  679. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  680. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  681. package/fesm5/taiga-ui-core-components-root.js +4 -4
  682. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  683. package/fesm5/taiga-ui-core-components-scroll-controls.js +26 -26
  684. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  685. package/fesm5/taiga-ui-core-components-scrollbar.js +8 -8
  686. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  687. package/fesm5/taiga-ui-core-components-svg.js +15 -15
  688. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  689. package/fesm5/taiga-ui-core-components-theme-night.js +2 -2
  690. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  691. package/fesm5/taiga-ui-core-components-tooltip.js +7 -7
  692. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  693. package/fesm5/taiga-ui-core-constants.js +17 -17
  694. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  695. package/fesm5/taiga-ui-core-directives-color.js +6 -6
  696. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  697. package/fesm5/taiga-ui-core-directives-described-by.js +8 -8
  698. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  699. package/fesm5/taiga-ui-core-directives-dropdown-controller.js +11 -11
  700. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  701. package/fesm5/taiga-ui-core-directives-dropdown.js +2 -2
  702. package/fesm5/taiga-ui-core-directives-dropdown.js.map +1 -1
  703. package/fesm5/taiga-ui-core-directives-hint-controller.js +8 -8
  704. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  705. package/fesm5/taiga-ui-core-directives-hint.js +7 -7
  706. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  707. package/fesm5/taiga-ui-core-directives-manual-hint.js +4 -4
  708. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  709. package/fesm5/taiga-ui-core-directives-mask-accessor.js +1 -1
  710. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  711. package/fesm5/taiga-ui-core-directives-mode.js +2 -2
  712. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  713. package/fesm5/taiga-ui-core-directives-pointer-hint.js +5 -5
  714. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  715. package/fesm5/taiga-ui-core-directives-scroll-into-view.js +1 -1
  716. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  717. package/fesm5/taiga-ui-core-directives-table-mode.js +2 -2
  718. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  719. package/fesm5/taiga-ui-core-directives-textfield-controller.js +35 -35
  720. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  721. package/fesm5/taiga-ui-core-directives-wrapper.js +9 -9
  722. package/fesm5/taiga-ui-core-directives-wrapper.js.map +1 -1
  723. package/fesm5/taiga-ui-core-enums.js.map +1 -1
  724. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  725. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  726. package/fesm5/taiga-ui-core-internal-svg-defs-host.js +1 -1
  727. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  728. package/fesm5/taiga-ui-core-observables.js +2 -2
  729. package/fesm5/taiga-ui-core-observables.js.map +1 -1
  730. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  731. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  732. package/fesm5/taiga-ui-core-pipes-format-number.js +1 -1
  733. package/fesm5/taiga-ui-core-pipes-format-number.js.map +1 -1
  734. package/fesm5/taiga-ui-core-pipes-format-phone.js +3 -3
  735. package/fesm5/taiga-ui-core-pipes-format-phone.js.map +1 -1
  736. package/fesm5/taiga-ui-core-pipes-month.js +1 -1
  737. package/fesm5/taiga-ui-core-pipes-month.js.map +1 -1
  738. package/fesm5/taiga-ui-core-pipes-pluralize.js +1 -1
  739. package/fesm5/taiga-ui-core-pipes-pluralize.js.map +1 -1
  740. package/fesm5/taiga-ui-core-providers.js +2 -2
  741. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  742. package/fesm5/taiga-ui-core-services.js +7 -7
  743. package/fesm5/taiga-ui-core-services.js.map +1 -1
  744. package/fesm5/taiga-ui-core-tokens.js +40 -40
  745. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  746. package/fesm5/taiga-ui-core-utils-dom.js +16 -16
  747. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  748. package/fesm5/taiga-ui-core-utils-format.js +17 -17
  749. package/fesm5/taiga-ui-core-utils-format.js.map +1 -1
  750. package/fesm5/taiga-ui-core-utils-mask.js +28 -28
  751. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  752. package/fesm5/taiga-ui-core-utils-miscellaneous.js +12 -12
  753. package/fesm5/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  754. package/fesm5/taiga-ui-core-utils-polyfills.js +4 -4
  755. package/fesm5/taiga-ui-core-utils-polyfills.js.map +1 -1
  756. package/package.json +4 -4
@@ -4,21 +4,21 @@ import { tuiDefaultProp, TuiDirectiveStylesService } from '@taiga-ui/cdk';
4
4
  import { TuiGroupStylesComponent } from './group-styles.component';
5
5
  let TuiGroupDirective = class TuiGroupDirective {
6
6
  constructor(directiveStyles) {
7
- this.orientation = 'horizontal';
7
+ this.orientation = `horizontal`;
8
8
  this.adaptive = false;
9
9
  this.collapsed = false;
10
10
  this.rounded = true;
11
- this.size = 'm';
11
+ this.size = `m`;
12
12
  directiveStyles.addComponent(TuiGroupStylesComponent);
13
13
  }
14
14
  get orientationHorizontal() {
15
- return this.orientation === 'horizontal';
15
+ return this.orientation === `horizontal`;
16
16
  }
17
17
  get orientationVertical() {
18
- return this.orientation === 'vertical';
18
+ return this.orientation === `vertical`;
19
19
  }
20
20
  get sizeLarge() {
21
- return this.size === 'l';
21
+ return this.size === `l`;
22
22
  }
23
23
  };
24
24
  TuiGroupDirective.ctorParameters = () => [
@@ -30,17 +30,17 @@ __decorate([
30
30
  ], TuiGroupDirective.prototype, "orientation", void 0);
31
31
  __decorate([
32
32
  Input(),
33
- HostBinding('class.tui-group_adaptive'),
33
+ HostBinding(`class.tui-group_adaptive`),
34
34
  tuiDefaultProp()
35
35
  ], TuiGroupDirective.prototype, "adaptive", void 0);
36
36
  __decorate([
37
37
  Input(),
38
- HostBinding('class.tui-group_collapsed'),
38
+ HostBinding(`class.tui-group_collapsed`),
39
39
  tuiDefaultProp()
40
40
  ], TuiGroupDirective.prototype, "collapsed", void 0);
41
41
  __decorate([
42
42
  Input(),
43
- HostBinding('class.tui-group_rounded'),
43
+ HostBinding(`class.tui-group_rounded`),
44
44
  tuiDefaultProp()
45
45
  ], TuiGroupDirective.prototype, "rounded", void 0);
46
46
  __decorate([
@@ -48,23 +48,23 @@ __decorate([
48
48
  tuiDefaultProp()
49
49
  ], TuiGroupDirective.prototype, "size", void 0);
50
50
  __decorate([
51
- HostBinding('class.tui-group_orientation_horizontal')
51
+ HostBinding(`class.tui-group_orientation_horizontal`)
52
52
  ], TuiGroupDirective.prototype, "orientationHorizontal", null);
53
53
  __decorate([
54
- HostBinding('class.tui-group_orientation_vertical')
54
+ HostBinding(`class.tui-group_orientation_vertical`)
55
55
  ], TuiGroupDirective.prototype, "orientationVertical", null);
56
56
  __decorate([
57
- HostBinding('class.tui-group_radius_large')
57
+ HostBinding(`class.tui-group_radius_large`)
58
58
  ], TuiGroupDirective.prototype, "sizeLarge", null);
59
59
  TuiGroupDirective = __decorate([
60
60
  Directive({
61
- selector: '[tuiGroup]:not(ng-container)',
61
+ selector: `[tuiGroup]:not(ng-container)`,
62
62
  host: {
63
- class: 'tui-group',
64
- role: 'group',
63
+ class: `tui-group`,
64
+ role: `group`,
65
65
  },
66
66
  }),
67
67
  __param(0, Inject(TuiDirectiveStylesService))
68
68
  ], TuiGroupDirective);
69
69
  export { TuiGroupDirective };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9ncm91cC8iLCJzb3VyY2VzIjpbImdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFFLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBU2pFLElBQWEsaUJBQWlCLEdBQTlCLE1BQWEsaUJBQWlCO0lBd0IxQixZQUN1QyxlQUEwQztRQXRCakYsZ0JBQVcsR0FBb0IsWUFBWSxDQUFDO1FBSzVDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFLakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUtsQixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUtqQixlQUFlLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUdELElBQUkscUJBQXFCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUM7SUFDN0MsQ0FBQztJQUdELElBQUksbUJBQW1CO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxVQUFVLENBQUM7SUFDM0MsQ0FBQztJQUdELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUM7SUFDN0IsQ0FBQztDQUNKLENBQUE7O1lBbkIyRCx5QkFBeUIsdUJBQTVFLE1BQU0sU0FBQyx5QkFBeUI7O0FBdEJyQztJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTtzREFDMkI7QUFLNUM7SUFIQyxLQUFLLEVBQUU7SUFDUCxXQUFXLENBQUMsMEJBQTBCLENBQUM7SUFDdkMsY0FBYyxFQUFFO21EQUNBO0FBS2pCO0lBSEMsS0FBSyxFQUFFO0lBQ1AsV0FBVyxDQUFDLDJCQUEyQixDQUFDO0lBQ3hDLGNBQWMsRUFBRTtvREFDQztBQUtsQjtJQUhDLEtBQUssRUFBRTtJQUNQLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQztJQUN0QyxjQUFjLEVBQUU7a0RBQ0Y7QUFJZjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTsrQ0FDSTtBQVNyQjtJQURDLFdBQVcsQ0FBQyx3Q0FBd0MsQ0FBQzs4REFHckQ7QUFHRDtJQURDLFdBQVcsQ0FBQyxzQ0FBc0MsQ0FBQzs0REFHbkQ7QUFHRDtJQURDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQztrREFHM0M7QUEzQ1EsaUJBQWlCO0lBUDdCLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSw4QkFBOEI7UUFDeEMsSUFBSSxFQUFFO1lBQ0YsS0FBSyxFQUFFLFdBQVc7WUFDbEIsSUFBSSxFQUFFLE9BQU87U0FDaEI7S0FDSixDQUFDO0lBMEJPLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7R0F6QjdCLGlCQUFpQixDQTRDN0I7U0E1Q1ksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpRGVmYXVsdFByb3AsIFR1aURpcmVjdGl2ZVN0eWxlc1NlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlPcmllbnRhdGlvblQsIFR1aVNpemVMfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5cbmltcG9ydCB7VHVpR3JvdXBTdHlsZXNDb21wb25lbnR9IGZyb20gJy4vZ3JvdXAtc3R5bGVzLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3R1aUdyb3VwXTpub3QobmctY29udGFpbmVyKScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3R1aS1ncm91cCcsXG4gICAgICAgIHJvbGU6ICdncm91cCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpR3JvdXBEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBvcmllbnRhdGlvbjogVHVpT3JpZW50YXRpb25UID0gJ2hvcml6b250YWwnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnR1aS1ncm91cF9hZGFwdGl2ZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhZGFwdGl2ZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnR1aS1ncm91cF9jb2xsYXBzZWQnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudHVpLWdyb3VwX3JvdW5kZWQnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcm91bmRlZCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZUwgPSAnbSc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlKSBkaXJlY3RpdmVTdHlsZXM6IFR1aURpcmVjdGl2ZVN0eWxlc1NlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIGRpcmVjdGl2ZVN0eWxlcy5hZGRDb21wb25lbnQoVHVpR3JvdXBTdHlsZXNDb21wb25lbnQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudHVpLWdyb3VwX29yaWVudGF0aW9uX2hvcml6b250YWwnKVxuICAgIGdldCBvcmllbnRhdGlvbkhvcml6b250YWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50dWktZ3JvdXBfb3JpZW50YXRpb25fdmVydGljYWwnKVxuICAgIGdldCBvcmllbnRhdGlvblZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnR1aS1ncm91cF9yYWRpdXNfbGFyZ2UnKVxuICAgIGdldCBzaXplTGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgPT09ICdsJztcbiAgICB9XG59XG4iXX0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9ncm91cC8iLCJzb3VyY2VzIjpbImdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFFLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBU2pFLElBQWEsaUJBQWlCLEdBQTlCLE1BQWEsaUJBQWlCO0lBd0IxQixZQUN1QyxlQUEwQztRQXRCakYsZ0JBQVcsR0FBb0IsWUFBWSxDQUFDO1FBSzVDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFLakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUtsQixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUtqQixlQUFlLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUdELElBQUkscUJBQXFCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUM7SUFDN0MsQ0FBQztJQUdELElBQUksbUJBQW1CO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxVQUFVLENBQUM7SUFDM0MsQ0FBQztJQUdELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUM7SUFDN0IsQ0FBQztDQUNKLENBQUE7O1lBbkIyRCx5QkFBeUIsdUJBQTVFLE1BQU0sU0FBQyx5QkFBeUI7O0FBdEJyQztJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTtzREFDMkI7QUFLNUM7SUFIQyxLQUFLLEVBQUU7SUFDUCxXQUFXLENBQUMsMEJBQTBCLENBQUM7SUFDdkMsY0FBYyxFQUFFO21EQUNBO0FBS2pCO0lBSEMsS0FBSyxFQUFFO0lBQ1AsV0FBVyxDQUFDLDJCQUEyQixDQUFDO0lBQ3hDLGNBQWMsRUFBRTtvREFDQztBQUtsQjtJQUhDLEtBQUssRUFBRTtJQUNQLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQztJQUN0QyxjQUFjLEVBQUU7a0RBQ0Y7QUFJZjtJQUZDLEtBQUssRUFBRTtJQUNQLGNBQWMsRUFBRTsrQ0FDSTtBQVNyQjtJQURDLFdBQVcsQ0FBQyx3Q0FBd0MsQ0FBQzs4REFHckQ7QUFHRDtJQURDLFdBQVcsQ0FBQyxzQ0FBc0MsQ0FBQzs0REFHbkQ7QUFHRDtJQURDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQztrREFHM0M7QUEzQ1EsaUJBQWlCO0lBUDdCLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSw4QkFBOEI7UUFDeEMsSUFBSSxFQUFFO1lBQ0YsS0FBSyxFQUFFLFdBQVc7WUFDbEIsSUFBSSxFQUFFLE9BQU87U0FDaEI7S0FDSixDQUFDO0lBMEJPLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7R0F6QjdCLGlCQUFpQixDQTRDN0I7U0E1Q1ksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpRGVmYXVsdFByb3AsIFR1aURpcmVjdGl2ZVN0eWxlc1NlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlPcmllbnRhdGlvblQsIFR1aVNpemVMfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5cbmltcG9ydCB7VHVpR3JvdXBTdHlsZXNDb21wb25lbnR9IGZyb20gJy4vZ3JvdXAtc3R5bGVzLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3R1aUdyb3VwXTpub3QobmctY29udGFpbmVyKWAsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogYHR1aS1ncm91cGAsXG4gICAgICAgIHJvbGU6IGBncm91cGAsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpR3JvdXBEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBvcmllbnRhdGlvbjogVHVpT3JpZW50YXRpb25UID0gYGhvcml6b250YWxgO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLnR1aS1ncm91cF9hZGFwdGl2ZWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhZGFwdGl2ZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLnR1aS1ncm91cF9jb2xsYXBzZWRgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MudHVpLWdyb3VwX3JvdW5kZWRgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcm91bmRlZCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZUwgPSBgbWA7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlKSBkaXJlY3RpdmVTdHlsZXM6IFR1aURpcmVjdGl2ZVN0eWxlc1NlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIGRpcmVjdGl2ZVN0eWxlcy5hZGRDb21wb25lbnQoVHVpR3JvdXBTdHlsZXNDb21wb25lbnQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MudHVpLWdyb3VwX29yaWVudGF0aW9uX2hvcml6b250YWxgKVxuICAgIGdldCBvcmllbnRhdGlvbkhvcml6b250YWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9yaWVudGF0aW9uID09PSBgaG9yaXpvbnRhbGA7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy50dWktZ3JvdXBfb3JpZW50YXRpb25fdmVydGljYWxgKVxuICAgIGdldCBvcmllbnRhdGlvblZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gYHZlcnRpY2FsYDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLnR1aS1ncm91cF9yYWRpdXNfbGFyZ2VgKVxuICAgIGdldCBzaXplTGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgPT09IGBsYDtcbiAgICB9XG59XG4iXX0=
@@ -19,24 +19,24 @@ const ARROW_SIZE = 8;
19
19
  const ARROW_OFFSET = 16;
20
20
  const ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;
21
21
  const reverseDirectionsVertical = {
22
- 'top-left': 'bottom-left',
23
- 'top-right': 'bottom-right',
24
- 'bottom-left': 'top-left',
25
- 'bottom-right': 'top-right',
26
- left: 'right',
27
- right: 'left',
28
- 'top-middle': 'bottom-middle',
29
- 'bottom-middle': 'top-middle',
22
+ 'top-left': `bottom-left`,
23
+ 'top-right': `bottom-right`,
24
+ 'bottom-left': `top-left`,
25
+ 'bottom-right': `top-right`,
26
+ left: `right`,
27
+ right: `left`,
28
+ 'top-middle': `bottom-middle`,
29
+ 'bottom-middle': `top-middle`,
30
30
  };
31
31
  const reverseDirectionsHorizontal = {
32
- 'top-left': 'top-right',
33
- 'top-right': 'top-left',
34
- 'bottom-left': 'bottom-right',
35
- 'bottom-right': 'bottom-left',
36
- left: 'right',
37
- right: 'left',
38
- 'top-middle': 'top-middle',
39
- 'bottom-middle': 'bottom-middle',
32
+ 'top-left': `top-right`,
33
+ 'top-right': `top-left`,
34
+ 'bottom-left': `bottom-right`,
35
+ 'bottom-right': `bottom-left`,
36
+ left: `right`,
37
+ right: `left`,
38
+ 'top-middle': `top-middle`,
39
+ 'bottom-middle': `bottom-middle`,
40
40
  };
41
41
  // TODO: consider abstracting UI and move to CDK, split hint and overflow
42
42
  // Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395
@@ -49,7 +49,7 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
49
49
  this.media = media;
50
50
  this.hintsHost = hintsHost;
51
51
  this.context = context;
52
- this.animation = Object.assign({ value: '' }, this.options);
52
+ this.animation = Object.assign({ value: `` }, this.options);
53
53
  animationFrame$
54
54
  .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
55
55
  .subscribe(() => this.calculatePosition());
@@ -76,7 +76,7 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
76
76
  * Styles are set directly to avoid visual shake of element
77
77
  */
78
78
  calculatePosition() {
79
- if (this.mode !== 'overflow') {
79
+ if (this.mode !== `overflow`) {
80
80
  this.calculateCoordinates();
81
81
  }
82
82
  else {
@@ -95,14 +95,14 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
95
95
  const tooltipRect = tooltip.getBoundingClientRect();
96
96
  const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;
97
97
  const directions = [
98
- 'left',
99
- 'right',
100
- 'bottom-left',
101
- 'bottom-right',
102
- 'bottom-middle',
103
- 'top-left',
104
- 'top-right',
105
- 'top-middle',
98
+ `left`,
99
+ `right`,
100
+ `bottom-left`,
101
+ `bottom-right`,
102
+ `bottom-middle`,
103
+ `top-left`,
104
+ `top-right`,
105
+ `top-middle`,
106
106
  ];
107
107
  let top = 0;
108
108
  let left = 0;
@@ -127,35 +127,35 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
127
127
  // eslint-disable-next-line no-constant-condition
128
128
  while (true) {
129
129
  switch (direction) {
130
- case 'left':
130
+ case `left`:
131
131
  top = horizontalTop;
132
132
  left = horizontalLeft;
133
133
  break;
134
- case 'right':
134
+ case `right`:
135
135
  top = horizontalTop;
136
136
  left = horizontalRight;
137
137
  break;
138
- case 'top-right':
138
+ case `top-right`:
139
139
  top = verticalTop;
140
140
  left = verticalRight;
141
141
  break;
142
- case 'top-left':
142
+ case `top-left`:
143
143
  top = verticalTop;
144
144
  left = verticalLeft;
145
145
  break;
146
- case 'bottom-right':
146
+ case `bottom-right`:
147
147
  top = verticalBottom;
148
148
  left = verticalRight;
149
149
  break;
150
- case 'bottom-left':
150
+ case `bottom-left`:
151
151
  top = verticalBottom;
152
152
  left = verticalLeft;
153
153
  break;
154
- case 'bottom-middle':
154
+ case `bottom-middle`:
155
155
  top = verticalBottom;
156
156
  left = verticalMiddle;
157
157
  break;
158
- case 'top-middle':
158
+ case `top-middle`:
159
159
  top = verticalTop;
160
160
  left = verticalMiddle;
161
161
  break;
@@ -176,7 +176,7 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
176
176
  }
177
177
  style.top = px(top);
178
178
  style.left = px(left);
179
- tooltip.setAttribute('data-tui-host-direction', direction);
179
+ tooltip.setAttribute(`data-tui-host-direction`, direction);
180
180
  }
181
181
  calculateMobileCoordinates() {
182
182
  const hostRect = this.hint.getElementClientRect();
@@ -190,21 +190,21 @@ let TuiHintBoxComponent = class TuiHintBoxComponent {
190
190
  hostRect.top < this.windowRef.innerHeight;
191
191
  const verticalBottomFit = hostRect.bottom > 0 &&
192
192
  hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;
193
- const direction = (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit
194
- ? 'top'
195
- : 'bottom';
193
+ const direction = (this.hint.direction.includes(`top`) && verticalTopFit) || !verticalBottomFit
194
+ ? `top`
195
+ : `bottom`;
196
196
  const attemptedLeft = portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;
197
197
  const left = Math.max(attemptedLeft + tooltipRect.width + SPACE > portalRect.right
198
198
  ? portalRect.right - SPACE - tooltipRect.width
199
199
  : attemptedLeft, SPACE * 2);
200
200
  style.left = px(left);
201
- style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);
201
+ style.top = direction === `top` ? px(verticalTop) : px(verticalBottom);
202
202
  if (this.arrow) {
203
203
  this.arrow.nativeElement.style.left = px(hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2
204
204
  ? ARROW_OFFSET
205
205
  : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2);
206
206
  }
207
- tooltip.setAttribute('data-tui-host-direction', direction);
207
+ tooltip.setAttribute(`data-tui-host-direction`, direction);
208
208
  }
209
209
  setOverflowStyles() {
210
210
  const hostRect = this.hint.getElementClientRect();
@@ -226,21 +226,21 @@ TuiHintBoxComponent.ctorParameters = () => [
226
226
  { type: undefined, decorators: [{ type: Inject, args: [POLYMORPHEUS_CONTEXT,] }] }
227
227
  ];
228
228
  __decorate([
229
- ViewChild('arrow')
229
+ ViewChild(`arrow`)
230
230
  ], TuiHintBoxComponent.prototype, "arrow", void 0);
231
231
  __decorate([
232
- HostBinding('@tuiFadeIn')
232
+ HostBinding(`@tuiFadeIn`)
233
233
  ], TuiHintBoxComponent.prototype, "animation", void 0);
234
234
  __decorate([
235
235
  tuiPure,
236
- HostBinding('class._untouchable')
236
+ HostBinding(`class._untouchable`)
237
237
  ], TuiHintBoxComponent.prototype, "isUntouchable", null);
238
238
  __decorate([
239
- HostBinding('attr.data-mode')
239
+ HostBinding(`attr.data-mode`)
240
240
  ], TuiHintBoxComponent.prototype, "mode", null);
241
241
  TuiHintBoxComponent = __decorate([
242
242
  Component({
243
- selector: 'tui-hint-box[hint]',
243
+ selector: `tui-hint-box[hint]`,
244
244
  template: "<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div\n *ngIf=\"isMobile\"\n #arrow\n class=\"t-arrow\"\n></div>\n<div\n automation-id=\"tui-hint-box__tooltip\"\n polymorpheus-outlet\n class=\"t-tooltip\"\n [content]=\"hint.content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n>\n <ng-template let-text>\n <span class=\"t-text\">{{ text }}</span>\n </ng-template>\n</div>\n",
245
245
  changeDetection: ChangeDetectionStrategy.OnPush,
246
246
  providers: [TuiDestroyService],
@@ -258,4 +258,4 @@ TuiHintBoxComponent = __decorate([
258
258
  __param(8, Inject(POLYMORPHEUS_CONTEXT))
259
259
  ], TuiHintBoxComponent);
260
260
  export { TuiHintBoxComponent };
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2QixNQUFNLFlBQVksR0FBRyxF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bXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FLCBXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBweCxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUhpbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpRmFkZUlufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpSGludERpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcyc7XG5pbXBvcnQge1R1aVBvaW50ZXJIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL3BvaW50ZXItaGludCc7XG5pbXBvcnQge1R1aU1lZGlhfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TLCBUVUlfTUVESUF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURpcmVjdGlvbiwgVHVpSGludE1vZGVUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge3R1aUlzTW9iaWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscyc7XG5pbXBvcnQge1BPTFlNT1JQSEVVU19DT05URVhUfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpSGludHNIb3N0Q29tcG9uZW50fSBmcm9tICcuLi9oaW50cy1ob3N0LmNvbXBvbmVudCc7XG5cbmNvbnN0IFNQQUNFID0gODtcbmNvbnN0IEJPUkRFUl9XSURUSCA9IDE7XG5jb25zdCBMRUZUX1BBRERJTkcgPSAxNjtcbmNvbnN0IFRPUF9QQURESU5HID0gMTI7XG5jb25zdCBBUlJPV19TSVpFID0gODtcbmNvbnN0IEFSUk9XX09GRlNFVCA9IDE2O1xuY29uc3QgQVJST1dIRUFEX09GRlNFVCA9IEFSUk9XX09GRlNFVCArIChBUlJPV19TSVpFICogTWF0aC5zcXJ0KDIpKSAvIDI7XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc1ZlcnRpY2FsOiB7W2tleSBpbiBUdWlEaXJlY3Rpb25dOiBUdWlEaXJlY3Rpb259ID0ge1xuICAgICd0b3AtbGVmdCc6ICdib3R0b20tbGVmdCcsXG4gICAgJ3RvcC1yaWdodCc6ICdib3R0b20tcmlnaHQnLFxuICAgICdib3R0b20tbGVmdCc6ICd0b3AtbGVmdCcsXG4gICAgJ2JvdHRvbS1yaWdodCc6ICd0b3AtcmlnaHQnLFxuICAgIGxlZnQ6ICdyaWdodCcsXG4gICAgcmlnaHQ6ICdsZWZ0JyxcbiAgICAndG9wLW1pZGRsZSc6ICdib3R0b20tbWlkZGxlJyxcbiAgICAnYm90dG9tLW1pZGRsZSc6ICd0b3AtbWlkZGxlJyxcbn07XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogJ3RvcC1yaWdodCcsXG4gICAgJ3RvcC1yaWdodCc6ICd0b3AtbGVmdCcsXG4gICAgJ2JvdHRvbS1sZWZ0JzogJ2JvdHRvbS1yaWdodCcsXG4gICAgJ2JvdHRvbS1yaWdodCc6ICdib3R0b20tbGVmdCcsXG4gICAgbGVmdDogJ3JpZ2h0JyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgICd0b3AtbWlkZGxlJzogJ3RvcC1taWRkbGUnLFxuICAgICdib3R0b20tbWlkZGxlJzogJ2JvdHRvbS1taWRkbGUnLFxufTtcblxuLy8gVE9ETzogY29uc2lkZXIgYWJzdHJhY3RpbmcgVUkgYW5kIG1vdmUgdG8gQ0RLLCBzcGxpdCBoaW50IGFuZCBvdmVyZmxvd1xuLy8gQW1iaWVudCB0eXBlIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgZHluYW1pYyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yMzM5NVxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhpbnQtYm94W2hpbnRdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGludC1ib3gudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaGludC1ib3guc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpRmFkZUluXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludEJveENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnYXJyb3cnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXJyb3c/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBIb3N0QmluZGluZygnQHR1aUZhZGVJbicpXG4gICAgcmVhZG9ubHkgYW5pbWF0aW9uID0ge3ZhbHVlOiAnJywgLi4udGhpcy5vcHRpb25zfSBhcyBjb25zdDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX01FRElBKSBwcml2YXRlIHJlYWRvbmx5IG1lZGlhOiBUdWlNZWRpYSxcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IFR1aUhpbnRzSG9zdENvbXBvbmVudCkpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludHNIb3N0OiBUdWlIaW50c0hvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoUE9MWU1PUlBIRVVTX0NPTlRFWFQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxBYnN0cmFjdFR1aUhpbnQ+LFxuICAgICkge1xuICAgICAgICBhbmltYXRpb25GcmFtZSRcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKG5nWm9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2FsY3VsYXRlUG9zaXRpb24oKSk7XG4gICAgfVxuXG4gICAgZ2V0IGhpbnQoKTogQWJzdHJhY3RUdWlIaW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC4kaW1wbGljaXQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl91bnRvdWNoYWJsZScpXG4gICAgZ2V0IGlzVW50b3VjaGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnQgaW5zdGFuY2VvZiBUdWlQb2ludGVySGludERpcmVjdGl2ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1tb2RlJylcbiAgICBnZXQgbW9kZSgpOiBUdWlIaW50TW9kZVQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludC5tb2RlO1xuICAgIH1cblxuICAgIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzTW9iaWxlKHRoaXMud2luZG93UmVmLCB0aGlzLm1lZGlhKTtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oaW50IGluc3RhbmNlb2YgVHVpSGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50LmNvbXBvbmVudEhvdmVyZWQkLm5leHQoaG92ZXJlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxjdWxhdGVzIHdyYXBwZXIgcG9zaXRpb24uXG4gICAgICogU3R5bGVzIGFyZSBzZXQgZGlyZWN0bHkgdG8gYXZvaWQgdmlzdWFsIHNoYWtlIG9mIGVsZW1lbnRcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb2RlICE9PSAnb3ZlcmZsb3cnKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUNvb3JkaW5hdGVzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldE92ZXJmbG93U3R5bGVzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUNvb3JkaW5hdGVzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVNb2JpbGVDb29yZGluYXRlcygpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuaGludC5nZXRFbGVtZW50Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBwb3J0YWxSZWN0ID0gdGhpcy5oaW50c0hvc3QuY2xpZW50UmVjdDtcbiAgICAgICAgY29uc3QgdG9vbHRpcCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdG9vbHRpcDtcbiAgICAgICAgY29uc3QgdG9vbHRpcFJlY3QgPSB0b29sdGlwLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBpc0hvc3RMb25nID0gaG9zdFJlY3Qud2lkdGggPiBBUlJPV0hFQURfT0ZGU0VUICogMjtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uczogVHVpRGlyZWN0aW9uW10gPSBbXG4gICAgICAgICAgICAnbGVmdCcsXG4gICAgICAgICAgICAncmlnaHQnLFxuICAgICAgICAgICAgJ2JvdHRvbS1sZWZ0JyxcbiAgICAgICAgICAgICdib3R0b20tcmlnaHQnLFxuICAgICAgICAgICAgJ2JvdHRvbS1taWRkbGUnLFxuICAgICAgICAgICAgJ3RvcC1sZWZ0JyxcbiAgICAgICAgICAgICd0b3AtcmlnaHQnLFxuICAgICAgICAgICAgJ3RvcC1taWRkbGUnLFxuICAgICAgICBdO1xuXG4gICAgICAgIGxldCB0b3AgPSAwO1xuICAgICAgICBsZXQgbGVmdCA9IDA7XG4gICAgICAgIGxldCB7ZGlyZWN0aW9ufSA9IHRoaXMuaGludDtcblxuICAgICAgICBjb25zdCBob3Jpem9udGFsVG9wID1cbiAgICAgICAgICAgIGhvc3RSZWN0LnRvcCArIGhvc3RSZWN0LmhlaWdodCAvIDIgLSB0b29sdGlwUmVjdC5oZWlnaHQgLyAyIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxMZWZ0ID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmxlZnQgLSB0b29sdGlwUmVjdC53aWR0aCAtIFNQQUNFIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCBob3Jpem9udGFsUmlnaHQgPSBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggKyBTUEFDRSAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxCb3R0b20gPSBob3N0UmVjdC5ib3R0b20gKyBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFRvcCA9IGhvc3RSZWN0LnRvcCAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsUmlnaHQgPSBpc0hvc3RMb25nXG4gICAgICAgICAgICA/IGhvc3RSZWN0LmxlZnQgLSBwb3J0YWxSZWN0LmxlZnRcbiAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIEFSUk9XSEVBRF9PRkZTRVQgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsTGVmdCA9IGlzSG9zdExvbmdcbiAgICAgICAgICAgID8gaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoICsgaG9zdFJlY3Qud2lkdGggLSBwb3J0YWxSZWN0LmxlZnRcbiAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCAtXG4gICAgICAgICAgICAgIHRvb2x0aXBSZWN0LndpZHRoICtcbiAgICAgICAgICAgICAgaG9zdFJlY3Qud2lkdGggLyAyICtcbiAgICAgICAgICAgICAgQVJST1dIRUFEX09GRlNFVCAtXG4gICAgICAgICAgICAgIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxNaWRkbGUgPVxuICAgICAgICAgICAgaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoIC8gMiArIGhvc3RSZWN0LndpZHRoIC8gMiAtIHBvcnRhbFJlY3QubGVmdDtcblxuICAgICAgICBkaXJlY3Rpb25zLnNwbGljZShkaXJlY3Rpb25zLmluZGV4T2YoZGlyZWN0aW9uKSwgMSk7XG5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnN0YW50LWNvbmRpdGlvblxuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgc3dpdGNoIChkaXJlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9yaXpvbnRhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvcml6b250YWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IGhvcml6b250YWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3Jpem9udGFsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3RvcC1yaWdodCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndG9wLWxlZnQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTGVmdDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYm90dG9tLXJpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdib3R0b20tbGVmdCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsQm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdib3R0b20tbWlkZGxlJzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbE1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndG9wLW1pZGRsZSc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxNaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbEZpdCA9XG4gICAgICAgICAgICAgICAgdG9wICsgcG9ydGFsUmVjdC50b3AgPiBTUEFDRSAmJlxuICAgICAgICAgICAgICAgIHRvcCArIHRvb2x0aXBSZWN0LmhlaWdodCArIFNQQUNFICsgcG9ydGFsUmVjdC50b3AgPFxuICAgICAgICAgICAgICAgICAgICB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IGhvcml6b250YWxGaXQgPVxuICAgICAgICAgICAgICAgIGxlZnQgPiBTUEFDRSAmJlxuICAgICAgICAgICAgICAgIGxlZnQgKyB0b29sdGlwUmVjdC53aWR0aCArIFNQQUNFICsgcG9ydGFsUmVjdC5sZWZ0IDwgcG9ydGFsUmVjdC53aWR0aDtcblxuICAgICAgICAgICAgaWYgKGRpcmVjdGlvbnMubGVuZ3RoID09PSAwIHx8ICh2ZXJ0aWNhbEZpdCAmJiBob3Jpem9udGFsRml0KSkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXJlY3Rpb24gPSB2ZXJ0aWNhbEZpdFxuICAgICAgICAgICAgICAgID8gcmV2ZXJzZURpcmVjdGlvbnNIb3Jpem9udGFsW2RpcmVjdGlvbl1cbiAgICAgICAgICAgICAgICA6IHJldmVyc2VEaXJlY3Rpb25zVmVydGljYWxbZGlyZWN0aW9uXTtcbiAgICAgICAgICAgIGRpcmVjdGlvbiA9XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9ucy5zcGxpY2UoZGlyZWN0aW9ucy5pbmRleE9mKGRpcmVjdGlvbiksIDEpWzBdIHx8IGRpcmVjdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0eWxlLnRvcCA9IHB4KHRvcCk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcblxuICAgICAgICB0b29sdGlwLnNldEF0dHJpYnV0ZSgnZGF0YS10dWktaG9zdC1kaXJlY3Rpb24nLCBkaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlTW9iaWxlQ29vcmRpbmF0ZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHBvcnRhbFJlY3QgPSB0aGlzLmhpbnRzSG9zdC5jbGllbnRSZWN0O1xuICAgICAgICBjb25zdCB0b29sdGlwID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0b29sdGlwO1xuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wID0gaG9zdFJlY3QudG9wIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxCb3R0b20gPSBob3N0UmVjdC5ib3R0b20gKyBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFRvcEZpdCA9XG4gICAgICAgICAgICB2ZXJ0aWNhbFRvcCArIHBvcnRhbFJlY3QudG9wID4gU1BBQ0UgJiZcbiAgICAgICAgICAgIGhvc3RSZWN0LnRvcCA8IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbUZpdCA9XG4gICAgICAgICAgICBob3N0UmVjdC5ib3R0b20gPiAwICYmXG4gICAgICAgICAgICBob3N0UmVjdC5ib3R0b20gKyAyICogU1BBQ0UgKyB0b29sdGlwUmVjdC5oZWlnaHQgPCB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID1cbiAgICAgICAgICAgICh0aGlzLmhpbnQuZGlyZWN0aW9uLmluY2x1ZGVzKCd0b3AnKSAmJiB2ZXJ0aWNhbFRvcEZpdCkgfHwgIXZlcnRpY2FsQm90dG9tRml0XG4gICAgICAgICAgICAgICAgPyAndG9wJ1xuICAgICAgICAgICAgICAgIDogJ2JvdHRvbSc7XG4gICAgICAgIGNvbnN0IGF0dGVtcHRlZExlZnQgPVxuICAgICAgICAgICAgcG9ydGFsUmVjdC5sZWZ0ICsgaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIHRvb2x0aXBSZWN0LndpZHRoIC8gMjtcbiAgICAgICAgY29uc3QgbGVmdCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgYXR0ZW1wdGVkTGVmdCArIHRvb2x0aXBSZWN0LndpZHRoICsgU1BBQ0UgPiBwb3J0YWxSZWN0LnJpZ2h0XG4gICAgICAgICAgICAgICAgPyBwb3J0YWxSZWN0LnJpZ2h0IC0gU1BBQ0UgLSB0b29sdGlwUmVjdC53aWR0aFxuICAgICAgICAgICAgICAgIDogYXR0ZW1wdGVkTGVmdCxcbiAgICAgICAgICAgIFNQQUNFICogMixcbiAgICAgICAgKTtcblxuICAgICAgICBzdHlsZS5sZWZ0ID0gcHgobGVmdCk7XG4gICAgICAgIHN0eWxlLnRvcCA9IGRpcmVjdGlvbiA9PT0gJ3RvcCcgPyBweCh2ZXJ0aWNhbFRvcCkgOiBweCh2ZXJ0aWNhbEJvdHRvbSk7XG5cbiAgICAgICAgaWYgKHRoaXMuYXJyb3cpIHtcbiAgICAgICAgICAgIHRoaXMuYXJyb3cubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gcHgoXG4gICAgICAgICAgICAgICAgaG9zdFJlY3QubGVmdCA8PSBTUEFDRSAqIDIgJiYgaG9zdFJlY3Qud2lkdGggPiBBUlJPV19PRkZTRVQgKiAyXG4gICAgICAgICAgICAgICAgICAgID8gQVJST1dfT0ZGU0VUXG4gICAgICAgICAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIGxlZnQgLSBBUlJPV19TSVpFIC8gMixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICB0b29sdGlwLnNldEF0dHJpYnV0ZSgnZGF0YS10dWktaG9zdC1kaXJlY3Rpb24nLCBkaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0T3ZlcmZsb3dTdHlsZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBzdHlsZS50b3AgPSBweChob3N0UmVjdC50b3AgLSB3aW5kb3cuaW5uZXJIZWlnaHQgLSBUT1BfUEFERElORyAtIEJPUkRFUl9XSURUSCk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChob3N0UmVjdC5sZWZ0IC0gTEVGVF9QQURESU5HIC0gQk9SREVSX1dJRFRIKTtcbiAgICAgICAgc3R5bGUud2lkdGggPSBweChob3N0UmVjdC53aWR0aCArIExFRlRfUEFERElORyAqIDIgKyBCT1JERVJfV0lEVEggKiAyKTtcbiAgICB9XG59XG4iXX0=
261
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2QixNQUFNLFlBQVksR0FBRyxF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bXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FLCBXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBweCxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUhpbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpRmFkZUlufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpSGludERpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcyc7XG5pbXBvcnQge1R1aVBvaW50ZXJIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL3BvaW50ZXItaGludCc7XG5pbXBvcnQge1R1aU1lZGlhfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TLCBUVUlfTUVESUF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURpcmVjdGlvbiwgVHVpSGludE1vZGVUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge3R1aUlzTW9iaWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscyc7XG5pbXBvcnQge1BPTFlNT1JQSEVVU19DT05URVhUfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpSGludHNIb3N0Q29tcG9uZW50fSBmcm9tICcuLi9oaW50cy1ob3N0LmNvbXBvbmVudCc7XG5cbmNvbnN0IFNQQUNFID0gODtcbmNvbnN0IEJPUkRFUl9XSURUSCA9IDE7XG5jb25zdCBMRUZUX1BBRERJTkcgPSAxNjtcbmNvbnN0IFRPUF9QQURESU5HID0gMTI7XG5jb25zdCBBUlJPV19TSVpFID0gODtcbmNvbnN0IEFSUk9XX09GRlNFVCA9IDE2O1xuY29uc3QgQVJST1dIRUFEX09GRlNFVCA9IEFSUk9XX09GRlNFVCArIChBUlJPV19TSVpFICogTWF0aC5zcXJ0KDIpKSAvIDI7XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc1ZlcnRpY2FsOiB7W2tleSBpbiBUdWlEaXJlY3Rpb25dOiBUdWlEaXJlY3Rpb259ID0ge1xuICAgICd0b3AtbGVmdCc6IGBib3R0b20tbGVmdGAsXG4gICAgJ3RvcC1yaWdodCc6IGBib3R0b20tcmlnaHRgLFxuICAgICdib3R0b20tbGVmdCc6IGB0b3AtbGVmdGAsXG4gICAgJ2JvdHRvbS1yaWdodCc6IGB0b3AtcmlnaHRgLFxuICAgIGxlZnQ6IGByaWdodGAsXG4gICAgcmlnaHQ6IGBsZWZ0YCxcbiAgICAndG9wLW1pZGRsZSc6IGBib3R0b20tbWlkZGxlYCxcbiAgICAnYm90dG9tLW1pZGRsZSc6IGB0b3AtbWlkZGxlYCxcbn07XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogYHRvcC1yaWdodGAsXG4gICAgJ3RvcC1yaWdodCc6IGB0b3AtbGVmdGAsXG4gICAgJ2JvdHRvbS1sZWZ0JzogYGJvdHRvbS1yaWdodGAsXG4gICAgJ2JvdHRvbS1yaWdodCc6IGBib3R0b20tbGVmdGAsXG4gICAgbGVmdDogYHJpZ2h0YCxcbiAgICByaWdodDogYGxlZnRgLFxuICAgICd0b3AtbWlkZGxlJzogYHRvcC1taWRkbGVgLFxuICAgICdib3R0b20tbWlkZGxlJzogYGJvdHRvbS1taWRkbGVgLFxufTtcblxuLy8gVE9ETzogY29uc2lkZXIgYWJzdHJhY3RpbmcgVUkgYW5kIG1vdmUgdG8gQ0RLLCBzcGxpdCBoaW50IGFuZCBvdmVyZmxvd1xuLy8gQW1iaWVudCB0eXBlIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgZHluYW1pYyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yMzM5NVxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWhpbnQtYm94W2hpbnRdYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vaGludC1ib3gudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vaGludC1ib3guc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpRmFkZUluXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludEJveENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZChgYXJyb3dgKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXJyb3c/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBIb3N0QmluZGluZyhgQHR1aUZhZGVJbmApXG4gICAgcmVhZG9ubHkgYW5pbWF0aW9uID0ge3ZhbHVlOiBgYCwgLi4udGhpcy5vcHRpb25zfSBhcyBjb25zdDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX01FRElBKSBwcml2YXRlIHJlYWRvbmx5IG1lZGlhOiBUdWlNZWRpYSxcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IFR1aUhpbnRzSG9zdENvbXBvbmVudCkpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludHNIb3N0OiBUdWlIaW50c0hvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoUE9MWU1PUlBIRVVTX0NPTlRFWFQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxBYnN0cmFjdFR1aUhpbnQ+LFxuICAgICkge1xuICAgICAgICBhbmltYXRpb25GcmFtZSRcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKG5nWm9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2FsY3VsYXRlUG9zaXRpb24oKSk7XG4gICAgfVxuXG4gICAgZ2V0IGhpbnQoKTogQWJzdHJhY3RUdWlIaW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC4kaW1wbGljaXQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl91bnRvdWNoYWJsZWApXG4gICAgZ2V0IGlzVW50b3VjaGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnQgaW5zdGFuY2VvZiBUdWlQb2ludGVySGludERpcmVjdGl2ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1tb2RlYClcbiAgICBnZXQgbW9kZSgpOiBUdWlIaW50TW9kZVQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludC5tb2RlO1xuICAgIH1cblxuICAgIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzTW9iaWxlKHRoaXMud2luZG93UmVmLCB0aGlzLm1lZGlhKTtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oaW50IGluc3RhbmNlb2YgVHVpSGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50LmNvbXBvbmVudEhvdmVyZWQkLm5leHQoaG92ZXJlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxjdWxhdGVzIHdyYXBwZXIgcG9zaXRpb24uXG4gICAgICogU3R5bGVzIGFyZSBzZXQgZGlyZWN0bHkgdG8gYXZvaWQgdmlzdWFsIHNoYWtlIG9mIGVsZW1lbnRcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb2RlICE9PSBgb3ZlcmZsb3dgKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUNvb3JkaW5hdGVzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldE92ZXJmbG93U3R5bGVzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUNvb3JkaW5hdGVzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVNb2JpbGVDb29yZGluYXRlcygpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuaGludC5nZXRFbGVtZW50Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBwb3J0YWxSZWN0ID0gdGhpcy5oaW50c0hvc3QuY2xpZW50UmVjdDtcbiAgICAgICAgY29uc3QgdG9vbHRpcCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdG9vbHRpcDtcbiAgICAgICAgY29uc3QgdG9vbHRpcFJlY3QgPSB0b29sdGlwLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBpc0hvc3RMb25nID0gaG9zdFJlY3Qud2lkdGggPiBBUlJPV0hFQURfT0ZGU0VUICogMjtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uczogVHVpRGlyZWN0aW9uW10gPSBbXG4gICAgICAgICAgICBgbGVmdGAsXG4gICAgICAgICAgICBgcmlnaHRgLFxuICAgICAgICAgICAgYGJvdHRvbS1sZWZ0YCxcbiAgICAgICAgICAgIGBib3R0b20tcmlnaHRgLFxuICAgICAgICAgICAgYGJvdHRvbS1taWRkbGVgLFxuICAgICAgICAgICAgYHRvcC1sZWZ0YCxcbiAgICAgICAgICAgIGB0b3AtcmlnaHRgLFxuICAgICAgICAgICAgYHRvcC1taWRkbGVgLFxuICAgICAgICBdO1xuXG4gICAgICAgIGxldCB0b3AgPSAwO1xuICAgICAgICBsZXQgbGVmdCA9IDA7XG4gICAgICAgIGxldCB7ZGlyZWN0aW9ufSA9IHRoaXMuaGludDtcblxuICAgICAgICBjb25zdCBob3Jpem9udGFsVG9wID1cbiAgICAgICAgICAgIGhvc3RSZWN0LnRvcCArIGhvc3RSZWN0LmhlaWdodCAvIDIgLSB0b29sdGlwUmVjdC5oZWlnaHQgLyAyIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxMZWZ0ID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmxlZnQgLSB0b29sdGlwUmVjdC53aWR0aCAtIFNQQUNFIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCBob3Jpem9udGFsUmlnaHQgPSBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggKyBTUEFDRSAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxCb3R0b20gPSBob3N0UmVjdC5ib3R0b20gKyBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFRvcCA9IGhvc3RSZWN0LnRvcCAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsUmlnaHQgPSBpc0hvc3RMb25nXG4gICAgICAgICAgICA/IGhvc3RSZWN0LmxlZnQgLSBwb3J0YWxSZWN0LmxlZnRcbiAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIEFSUk9XSEVBRF9PRkZTRVQgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsTGVmdCA9IGlzSG9zdExvbmdcbiAgICAgICAgICAgID8gaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoICsgaG9zdFJlY3Qud2lkdGggLSBwb3J0YWxSZWN0LmxlZnRcbiAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCAtXG4gICAgICAgICAgICAgIHRvb2x0aXBSZWN0LndpZHRoICtcbiAgICAgICAgICAgICAgaG9zdFJlY3Qud2lkdGggLyAyICtcbiAgICAgICAgICAgICAgQVJST1dIRUFEX09GRlNFVCAtXG4gICAgICAgICAgICAgIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxNaWRkbGUgPVxuICAgICAgICAgICAgaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoIC8gMiArIGhvc3RSZWN0LndpZHRoIC8gMiAtIHBvcnRhbFJlY3QubGVmdDtcblxuICAgICAgICBkaXJlY3Rpb25zLnNwbGljZShkaXJlY3Rpb25zLmluZGV4T2YoZGlyZWN0aW9uKSwgMSk7XG5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnN0YW50LWNvbmRpdGlvblxuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgc3dpdGNoIChkaXJlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBjYXNlIGBsZWZ0YDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9yaXpvbnRhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvcml6b250YWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGByaWdodGA6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IGhvcml6b250YWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3Jpem9udGFsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgYHRvcC1yaWdodGA6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBgdG9wLWxlZnRgOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTGVmdDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBgYm90dG9tLXJpZ2h0YDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGBib3R0b20tbGVmdGA6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsQm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGBib3R0b20tbWlkZGxlYDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbE1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBgdG9wLW1pZGRsZWA6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxNaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbEZpdCA9XG4gICAgICAgICAgICAgICAgdG9wICsgcG9ydGFsUmVjdC50b3AgPiBTUEFDRSAmJlxuICAgICAgICAgICAgICAgIHRvcCArIHRvb2x0aXBSZWN0LmhlaWdodCArIFNQQUNFICsgcG9ydGFsUmVjdC50b3AgPFxuICAgICAgICAgICAgICAgICAgICB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IGhvcml6b250YWxGaXQgPVxuICAgICAgICAgICAgICAgIGxlZnQgPiBTUEFDRSAmJlxuICAgICAgICAgICAgICAgIGxlZnQgKyB0b29sdGlwUmVjdC53aWR0aCArIFNQQUNFICsgcG9ydGFsUmVjdC5sZWZ0IDwgcG9ydGFsUmVjdC53aWR0aDtcblxuICAgICAgICAgICAgaWYgKGRpcmVjdGlvbnMubGVuZ3RoID09PSAwIHx8ICh2ZXJ0aWNhbEZpdCAmJiBob3Jpem9udGFsRml0KSkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXJlY3Rpb24gPSB2ZXJ0aWNhbEZpdFxuICAgICAgICAgICAgICAgID8gcmV2ZXJzZURpcmVjdGlvbnNIb3Jpem9udGFsW2RpcmVjdGlvbl1cbiAgICAgICAgICAgICAgICA6IHJldmVyc2VEaXJlY3Rpb25zVmVydGljYWxbZGlyZWN0aW9uXTtcbiAgICAgICAgICAgIGRpcmVjdGlvbiA9XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9ucy5zcGxpY2UoZGlyZWN0aW9ucy5pbmRleE9mKGRpcmVjdGlvbiksIDEpWzBdIHx8IGRpcmVjdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0eWxlLnRvcCA9IHB4KHRvcCk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcblxuICAgICAgICB0b29sdGlwLnNldEF0dHJpYnV0ZShgZGF0YS10dWktaG9zdC1kaXJlY3Rpb25gLCBkaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlTW9iaWxlQ29vcmRpbmF0ZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHBvcnRhbFJlY3QgPSB0aGlzLmhpbnRzSG9zdC5jbGllbnRSZWN0O1xuICAgICAgICBjb25zdCB0b29sdGlwID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0b29sdGlwO1xuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wID0gaG9zdFJlY3QudG9wIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxCb3R0b20gPSBob3N0UmVjdC5ib3R0b20gKyBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFRvcEZpdCA9XG4gICAgICAgICAgICB2ZXJ0aWNhbFRvcCArIHBvcnRhbFJlY3QudG9wID4gU1BBQ0UgJiZcbiAgICAgICAgICAgIGhvc3RSZWN0LnRvcCA8IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbUZpdCA9XG4gICAgICAgICAgICBob3N0UmVjdC5ib3R0b20gPiAwICYmXG4gICAgICAgICAgICBob3N0UmVjdC5ib3R0b20gKyAyICogU1BBQ0UgKyB0b29sdGlwUmVjdC5oZWlnaHQgPCB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID1cbiAgICAgICAgICAgICh0aGlzLmhpbnQuZGlyZWN0aW9uLmluY2x1ZGVzKGB0b3BgKSAmJiB2ZXJ0aWNhbFRvcEZpdCkgfHwgIXZlcnRpY2FsQm90dG9tRml0XG4gICAgICAgICAgICAgICAgPyBgdG9wYFxuICAgICAgICAgICAgICAgIDogYGJvdHRvbWA7XG4gICAgICAgIGNvbnN0IGF0dGVtcHRlZExlZnQgPVxuICAgICAgICAgICAgcG9ydGFsUmVjdC5sZWZ0ICsgaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIHRvb2x0aXBSZWN0LndpZHRoIC8gMjtcbiAgICAgICAgY29uc3QgbGVmdCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgYXR0ZW1wdGVkTGVmdCArIHRvb2x0aXBSZWN0LndpZHRoICsgU1BBQ0UgPiBwb3J0YWxSZWN0LnJpZ2h0XG4gICAgICAgICAgICAgICAgPyBwb3J0YWxSZWN0LnJpZ2h0IC0gU1BBQ0UgLSB0b29sdGlwUmVjdC53aWR0aFxuICAgICAgICAgICAgICAgIDogYXR0ZW1wdGVkTGVmdCxcbiAgICAgICAgICAgIFNQQUNFICogMixcbiAgICAgICAgKTtcblxuICAgICAgICBzdHlsZS5sZWZ0ID0gcHgobGVmdCk7XG4gICAgICAgIHN0eWxlLnRvcCA9IGRpcmVjdGlvbiA9PT0gYHRvcGAgPyBweCh2ZXJ0aWNhbFRvcCkgOiBweCh2ZXJ0aWNhbEJvdHRvbSk7XG5cbiAgICAgICAgaWYgKHRoaXMuYXJyb3cpIHtcbiAgICAgICAgICAgIHRoaXMuYXJyb3cubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gcHgoXG4gICAgICAgICAgICAgICAgaG9zdFJlY3QubGVmdCA8PSBTUEFDRSAqIDIgJiYgaG9zdFJlY3Qud2lkdGggPiBBUlJPV19PRkZTRVQgKiAyXG4gICAgICAgICAgICAgICAgICAgID8gQVJST1dfT0ZGU0VUXG4gICAgICAgICAgICAgICAgICAgIDogaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoIC8gMiAtIGxlZnQgLSBBUlJPV19TSVpFIC8gMixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICB0b29sdGlwLnNldEF0dHJpYnV0ZShgZGF0YS10dWktaG9zdC1kaXJlY3Rpb25gLCBkaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0T3ZlcmZsb3dTdHlsZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBzdHlsZS50b3AgPSBweChob3N0UmVjdC50b3AgLSB3aW5kb3cuaW5uZXJIZWlnaHQgLSBUT1BfUEFERElORyAtIEJPUkRFUl9XSURUSCk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChob3N0UmVjdC5sZWZ0IC0gTEVGVF9QQURESU5HIC0gQk9SREVSX1dJRFRIKTtcbiAgICAgICAgc3R5bGUud2lkdGggPSBweChob3N0UmVjdC53aWR0aCArIExFRlRfUEFERElORyAqIDIgKyBCT1JERVJfV0lEVEggKiAyKTtcbiAgICB9XG59XG4iXX0=
@@ -21,12 +21,12 @@ TuiHintsHostComponent.ctorParameters = () => [
21
21
  ];
22
22
  TuiHintsHostComponent = __decorate([
23
23
  Component({
24
- selector: 'tui-hints-host',
24
+ selector: `tui-hints-host`,
25
25
  template: "<div\n *ngFor=\"let hint of hints$ | async\"\n role=\"tooltip\"\n polymorpheus-outlet\n @tuiParentAnimation\n [attr.id]=\"hint.id\"\n [content]=\"hint.component || component\"\n [context]=\"{$implicit: hint}\"\n [tuiActiveZoneParent]=\"hint.activeZone\"\n></div>\n",
26
26
  changeDetection: ChangeDetectionStrategy.OnPush,
27
27
  animations: [TUI_PARENT_ANIMATION],
28
28
  host: {
29
- 'aria-live': 'polite',
29
+ 'aria-live': `polite`,
30
30
  },
31
31
  styles: [":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]
32
32
  }),
@@ -34,4 +34,4 @@ TuiHintsHostComponent = __decorate([
34
34
  __param(1, Inject(TuiHintService))
35
35
  ], TuiHintsHostComponent);
36
36
  export { TuiHintsHostComponent };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludHMtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hpbnRzLWhvc3QvIiwic291cmNlcyI6WyJoaW50cy1ob3N0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQVlsRSxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUc5QixZQUN5QyxVQUFtQyxFQUN2QyxNQUFzQztRQURsQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFnQztRQUpsRSxjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBS2pFLENBQUM7SUFFSixJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDakUsQ0FBQztDQUNKLENBQUE7O1lBUHdELFVBQVUsdUJBQTFELE1BQU0sU0FBQyxVQUFVO1lBQ3VCLFVBQVUsdUJBQWxELE1BQU0sU0FBQyxjQUFjOztBQUxqQixxQkFBcUI7SUFWakMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGdCQUFnQjtRQUMxQiw0U0FBeUM7UUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07UUFDL0MsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDbEMsSUFBSSxFQUFFO1lBQ0YsV0FBVyxFQUFFLFFBQVE7U0FDeEI7O0tBQ0osQ0FBQztJQUtPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0dBTGxCLHFCQUFxQixDQVdqQztTQVhZLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX1BBUkVOVF9BTklNQVRJT059IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpSGludFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlIaW50Qm94Q29tcG9uZW50fSBmcm9tICcuL2hpbnQtYm94L2hpbnQtYm94LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhpbnRzLWhvc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaW50cy1ob3N0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2hpbnRzLWhvc3Quc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFtUVUlfUEFSRU5UX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnYXJpYS1saXZlJzogJ3BvbGl0ZScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludHNIb3N0Q29tcG9uZW50IHtcbiAgICByZWFkb25seSBjb21wb25lbnQgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aUhpbnRCb3hDb21wb25lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlIaW50U2VydmljZSkgcmVhZG9ubHkgaGludHMkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFR1aUhpbnRbXT4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IGNsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG59XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludHMtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hpbnRzLWhvc3QvIiwic291cmNlcyI6WyJoaW50cy1ob3N0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQVlsRSxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUc5QixZQUN5QyxVQUFtQyxFQUN2QyxNQUFzQztRQURsQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFnQztRQUpsRSxjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBS2pFLENBQUM7SUFFSixJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDakUsQ0FBQztDQUNKLENBQUE7O1lBUHdELFVBQVUsdUJBQTFELE1BQU0sU0FBQyxVQUFVO1lBQ3VCLFVBQVUsdUJBQWxELE1BQU0sU0FBQyxjQUFjOztBQUxqQixxQkFBcUI7SUFWakMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGdCQUFnQjtRQUMxQiw0U0FBeUM7UUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07UUFDL0MsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDbEMsSUFBSSxFQUFFO1lBQ0YsV0FBVyxFQUFFLFFBQVE7U0FDeEI7O0tBQ0osQ0FBQztJQUtPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0dBTGxCLHFCQUFxQixDQVdqQztTQVhZLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX1BBUkVOVF9BTklNQVRJT059IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpSGludFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlIaW50Qm94Q29tcG9uZW50fSBmcm9tICcuL2hpbnQtYm94L2hpbnQtYm94LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWhpbnRzLWhvc3RgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9oaW50cy1ob3N0LnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2hpbnRzLWhvc3Quc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFtUVUlfUEFSRU5UX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnYXJpYS1saXZlJzogYHBvbGl0ZWAsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludHNIb3N0Q29tcG9uZW50IHtcbiAgICByZWFkb25seSBjb21wb25lbnQgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aUhpbnRCb3hDb21wb25lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlIaW50U2VydmljZSkgcmVhZG9ubHkgaGludHMkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFR1aUhpbnRbXT4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IGNsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG59XG4iXX0=
@@ -4,8 +4,8 @@ let TuiHostedDropdownConnectorDirective = class TuiHostedDropdownConnectorDirect
4
4
  };
5
5
  TuiHostedDropdownConnectorDirective = __decorate([
6
6
  Directive({
7
- selector: '[tuiHostedDropdownHost]',
7
+ selector: `[tuiHostedDropdownHost]`,
8
8
  })
9
9
  ], TuiHostedDropdownConnectorDirective);
10
10
  export { TuiHostedDropdownConnectorDirective };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hvc3RlZC1kcm9wZG93bi8iLCJzb3VyY2VzIjpbImhvc3RlZC1kcm9wZG93bi1jb25uZWN0b3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3hDLElBQWEsbUNBQW1DLEdBQWhELE1BQWEsbUNBQW1DO0NBQUcsQ0FBQTtBQUF0QyxtQ0FBbUM7SUFIL0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLHlCQUF5QjtLQUN0QyxDQUFDO0dBQ1csbUNBQW1DLENBQUc7U0FBdEMsbUNBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlIb3N0ZWREcm9wZG93bkhvc3RdJyxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUge31cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hvc3RlZC1kcm9wZG93bi8iLCJzb3VyY2VzIjpbImhvc3RlZC1kcm9wZG93bi1jb25uZWN0b3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3hDLElBQWEsbUNBQW1DLEdBQWhELE1BQWEsbUNBQW1DO0NBQUcsQ0FBQTtBQUF0QyxtQ0FBbUM7SUFIL0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLHlCQUF5QjtLQUN0QyxDQUFDO0dBQ1csbUNBQW1DLENBQUc7U0FBdEMsbUNBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFt0dWlIb3N0ZWREcm9wZG93bkhvc3RdYCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUge31cbiJdfQ==
@@ -10,7 +10,7 @@ let TuiHostedDropdownComponent = TuiHostedDropdownComponent_1 = class TuiHostedD
10
10
  constructor(elementRef, controller) {
11
11
  this.elementRef = elementRef;
12
12
  this.controller = controller;
13
- this.content = '';
13
+ this.content = ``;
14
14
  this.canOpen = true;
15
15
  this.open = false;
16
16
  this.openChange = new EventEmitter();
@@ -147,7 +147,7 @@ __decorate([
147
147
  ContentChild(TuiHostedDropdownConnectorDirective, { read: ElementRef })
148
148
  ], TuiHostedDropdownComponent.prototype, "dropdownHost", void 0);
149
149
  __decorate([
150
- ViewChild('wrapper', { read: ElementRef })
150
+ ViewChild(`wrapper`, { read: ElementRef })
151
151
  ], TuiHostedDropdownComponent.prototype, "wrapper", void 0);
152
152
  __decorate([
153
153
  ViewChild(TuiDropdownDirective)
@@ -171,24 +171,24 @@ __decorate([
171
171
  Output()
172
172
  ], TuiHostedDropdownComponent.prototype, "focusedChange", void 0);
173
173
  __decorate([
174
- HostBinding('class._hosted_dropdown_focused')
174
+ HostBinding(`class._hosted_dropdown_focused`)
175
175
  ], TuiHostedDropdownComponent.prototype, "focused", null);
176
176
  __decorate([
177
- HostListener('focusin', ['$event.target'])
177
+ HostListener(`focusin`, [`$event.target`])
178
178
  ], TuiHostedDropdownComponent.prototype, "onFocusIn", null);
179
179
  __decorate([
180
- HostListener('click', ['$event.target'])
180
+ HostListener(`click`, [`$event.target`])
181
181
  ], TuiHostedDropdownComponent.prototype, "onClick", null);
182
182
  __decorate([
183
- HostListener('keydown.esc', ['$event'])
183
+ HostListener(`keydown.esc`, [`$event`])
184
184
  ], TuiHostedDropdownComponent.prototype, "onKeyDownEsc", null);
185
185
  __decorate([
186
- HostListener('keydown.arrowDown', ['$event', 'true']),
187
- HostListener('keydown.arrowUp', ['$event', 'false'])
186
+ HostListener(`keydown.arrowDown`, [`$event`, `true`]),
187
+ HostListener(`keydown.arrowUp`, [`$event`, `false`])
188
188
  ], TuiHostedDropdownComponent.prototype, "onArrow", null);
189
189
  TuiHostedDropdownComponent = TuiHostedDropdownComponent_1 = __decorate([
190
190
  Component({
191
- selector: 'tui-hosted-dropdown',
191
+ selector: `tui-hosted-dropdown`,
192
192
  template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"wrapper\"\n [tuiDropdownAlign]=\"controller.align\"\n [tuiDropdownDirection]=\"controller.direction\"\n [tuiDropdownHost]=\"nativeFocusableElement\"\n [tuiDropdownLimitWidth]=\"controller.limitWidth\"\n [tuiDropdownMinHeight]=\"controller.minHeight\"\n [tuiDropdownMaxHeight]=\"controller.maxHeight\"\n [tuiDropdownSided]=\"controller.sided\"\n [tuiDropdownContent]=\"dropdown\"\n [tuiDropdown]=\"open && canOpen\"\n [tuiObscuredEnabled]=\"open\"\n (tuiObscured)=\"onHostObscured($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <ng-content></ng-content>\n <ng-template\n #dropdown=\"polymorpheus\"\n polymorpheus\n >\n <div\n #wrapper\n polymorpheus-outlet\n [content]=\"content\"\n [context]=\"{$implicit: activeZone}\"\n (keydown.esc)=\"onKeyDownEsc($event)\"\n (keydown)=\"onKeydown($event)\"\n ></div>\n <!--This DIV is here to start backwards TreeWalker for focusing last focusable item on ArrowUp-->\n <div></div>\n </ng-template>\n</div>\n",
193
193
  changeDetection: ChangeDetectionStrategy.OnPush,
194
194
  providers: [
@@ -204,4 +204,4 @@ TuiHostedDropdownComponent = TuiHostedDropdownComponent_1 = __decorate([
204
204
  __param(1, Inject(TUI_DROPDOWN_WATCHED_CONTROLLER))
205
205
  ], TuiHostedDropdownComponent);
206
206
  export { TuiHostedDropdownComponent };
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaG9zdGVkLWRyb3Bkb3duLyIsInNvdXJjZXMiOlsiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIseUJBQXlCLEVBQ3pCLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFHM0IsY0FBYyxHQUdqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQ0gsNEJBQTRCLEVBQzVCLCtCQUErQixFQUMvQiw4QkFBOEIsR0FDakMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN2RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFHaEUsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFlMUYsSUFBYSwwQkFBMEIsa0NBQXZDLE1BQWEsMEJBQTBCO0lBNEJuQyxZQUN5QyxVQUFzQixFQUVsRCxVQUEwQztRQUZkLGVBQVUsR0FBVixVQUFVLENBQVk7UUFFbEQsZUFBVSxHQUFWLFVBQVUsQ0FBZ0M7UUFuQnZELFlBQU8sR0FBd0UsRUFBRSxDQUFDO1FBSWxGLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFJZixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBR0osZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFHekMs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UyxDQUFDO1FBQ1AsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQiwrcENBQThDO1FBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1FBQy9DLFNBQVMsRUFBRTtZQUNQO2dCQUNJLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNEJBQTBCLENBQUM7YUFDNUQ7WUFDRCw0QkFBNEI7U0FDL0I7O0tBQ0osQ0FBQztJQThCTyxXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUNsQixXQUFBLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0dBOUJuQywwQkFBMEIsQ0E2TXRDO1NBN01ZLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIGdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgaXNFbGVtZW50RWRpdGFibGUsXG4gICAgaXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgaXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSxcbiAgICBzZXROYXRpdmVGb2N1c2VkLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge1xuICAgIERST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX0RST1BET1dOX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlEcm9wZG93bkNvbnRyb2xsZXJEaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24tY29udHJvbGxlcic7XG5pbXBvcnQge2lzRWRpdGluZ0tleX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmV9IGZyb20gJy4vaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1ob3N0ZWQtZHJvcGRvd24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ob3N0ZWQtZHJvcGRvd24udGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaG9zdGVkLWRyb3Bkb3duLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICBEUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIHtcbiAgICBAQ29udGVudENoaWxkKFR1aUhvc3RlZERyb3Bkb3duQ29ubmVjdG9yRGlyZWN0aXZlLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkhvc3Q/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ3dyYXBwZXInLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSB3cmFwcGVyPzogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBAVmlld0NoaWxkKFR1aURyb3Bkb3duRGlyZWN0aXZlKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25EaXJlY3RpdmU/OiBUdWlEcm9wZG93bkRpcmVjdGl2ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY2FuT3BlbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgb3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGZvY3VzZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpRHJvcGRvd25Db250cm9sbGVyRGlyZWN0aXZlLFxuICAgICkge31cblxuICAgIGdldCBob3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Ib3N0XG4gICAgICAgICAgICA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGRyb3Bkb3duKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5kcm9wZG93bkRpcmVjdGl2ZSB8fCB0aGlzLmRyb3Bkb3duRGlyZWN0aXZlLmRyb3Bkb3duQm94UmVmID09PSBudWxsXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5kcm9wZG93bkRpcmVjdGl2ZS5kcm9wZG93bkJveFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIGlzTmF0aXZlS2V5Ym9hcmRGb2N1c2FibGUodGhpcy5ob3N0KVxuICAgICAgICAgICAgPyB0aGlzLmhvc3RcbiAgICAgICAgICAgIDogZ2V0Q2xvc2VzdEZvY3VzYWJsZSh0aGlzLmhvc3QsIGZhbHNlLCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5faG9zdGVkX2Ryb3Bkb3duX2ZvY3VzZWQnKVxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgaXNOYXRpdmVGb2N1c2VkSW4odGhpcy5ob3N0KSB8fFxuICAgICAgICAgICAgKHRoaXMub3BlbiAmJiAhIXRoaXMud3JhcHBlciAmJiBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIG9uRm9jdXNJbih0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLmRyb3Bkb3duSG9zdFxuICAgICAgICAgICAgPyB0aGlzLmRyb3Bkb3duSG9zdC5uYXRpdmVFbGVtZW50XG4gICAgICAgICAgICA6IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBpZiAoIWhvc3QuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXG4gICAgb25DbGljayh0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgdGhpcy5ob3N0O1xuICAgICAgICBjb25zdCBkcm9wZG93bkhvc3QgPSB0aGlzLmRyb3Bkb3duSG9zdCA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnQgOiBob3N0O1xuXG4gICAgICAgIGlmICghdGhpcy5ob3N0RWRpdGFibGUgJiYgZHJvcGRvd25Ib3N0LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZXNjJywgWyckZXZlbnQnXSlcbiAgICBvbktleURvd25Fc2MoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jYW5PcGVuIHx8ICF0aGlzLm9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50JywgJ3RydWUnXSlcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCcsICdmYWxzZSddKVxuICAgIG9uQXJyb3coZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGRvd246IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0Ryb3Bkb3duKGV2ZW50LCBkb3duKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oe2tleSwgdGFyZ2V0LCBkZWZhdWx0UHJldmVudGVkfTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhZGVmYXVsdFByZXZlbnRlZCAmJlxuICAgICAgICAgICAgaXNFZGl0aW5nS2V5KGtleSkgJiZcbiAgICAgICAgICAgIHRoaXMuaG9zdEVkaXRhYmxlICYmXG4gICAgICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICAgICAgdGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgICAgICFpc0VsZW1lbnRFZGl0YWJsZSh0YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKCFhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvc3RPYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAob2JzY3VyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlT3BlbihvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChvcGVuICYmICF0aGlzLmNhbk9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KG9wZW4pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGhvc3RFZGl0YWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmhvc3Q7XG5cbiAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgcmV0dXJuIGhvc3QgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJiBpc0VsZW1lbnRFZGl0YWJsZShob3N0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzRHJvcGRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGZpcnN0OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWhvc3QgfHxcbiAgICAgICAgICAgICEoaG9zdCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB8fFxuICAgICAgICAgICAgIShldmVudC50YXJnZXQgaW5zdGFuY2VvZiBOb2RlKSB8fFxuICAgICAgICAgICAgIWhvc3QuY29udGFpbnMoZXZlbnQudGFyZ2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLndyYXBwZXIgfHxcbiAgICAgICAgICAgICF0aGlzLm9wZW4gfHxcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd24gPT09IG51bGwgfHxcbiAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICAhKHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3Blbih0cnVlKTtcblxuICAgICAgICAgICAgaWYgKCFpc0VsZW1lbnRFZGl0YWJsZShob3N0KSkge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluaXRpYWwgPSBmaXJzdFxuICAgICAgICAgICAgPyB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmc7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZSA9IGdldENsb3Nlc3RGb2N1c2FibGUoXG4gICAgICAgICAgICBpbml0aWFsLFxuICAgICAgICAgICAgIWZpcnN0LFxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGZvY3VzYWJsZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChmb2N1c2FibGUpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xvc2VEcm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0hvc3QoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGhvc3QgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZUZvY3VzZWQoaG9zdCwgdHJ1ZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzZWRDaGFuZ2UuZW1pdChmb2N1c2VkKTtcbiAgICB9XG59XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaG9zdGVkLWRyb3Bkb3duLyIsInNvdXJjZXMiOlsiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIseUJBQXlCLEVBQ3pCLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFHM0IsY0FBYyxHQUdqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQ0gsNEJBQTRCLEVBQzVCLCtCQUErQixFQUMvQiw4QkFBOEIsR0FDakMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN2RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFHaEUsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFlMUYsSUFBYSwwQkFBMEIsa0NBQXZDLE1BQWEsMEJBQTBCO0lBNEJuQyxZQUN5QyxVQUFzQixFQUVsRCxVQUEwQztRQUZkLGVBQVUsR0FBVixVQUFVLENBQVk7UUFFbEQsZUFBVSxHQUFWLFVBQVUsQ0FBZ0M7UUFuQnZELFlBQU8sR0FBd0UsRUFBRSxDQUFDO1FBSWxGLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFJZixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBR0osZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFHekMs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UyxDQUFDO1FBQ1AsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQiwrcENBQThDO1FBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1FBQy9DLFNBQVMsRUFBRTtZQUNQO2dCQUNJLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNEJBQTBCLENBQUM7YUFDNUQ7WUFDRCw0QkFBNEI7U0FDL0I7O0tBQ0osQ0FBQztJQThCTyxXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUNsQixXQUFBLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO0dBOUJuQywwQkFBMEIsQ0E2TXRDO1NBN01ZLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIGdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgaXNFbGVtZW50RWRpdGFibGUsXG4gICAgaXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgaXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSxcbiAgICBzZXROYXRpdmVGb2N1c2VkLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge1xuICAgIERST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX0RST1BET1dOX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlEcm9wZG93bkNvbnRyb2xsZXJEaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24tY29udHJvbGxlcic7XG5pbXBvcnQge2lzRWRpdGluZ0tleX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmV9IGZyb20gJy4vaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1ob3N0ZWQtZHJvcGRvd25gLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9ob3N0ZWQtZHJvcGRvd24udGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vaG9zdGVkLWRyb3Bkb3duLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICBEUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIHtcbiAgICBAQ29udGVudENoaWxkKFR1aUhvc3RlZERyb3Bkb3duQ29ubmVjdG9yRGlyZWN0aXZlLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkhvc3Q/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoYHdyYXBwZXJgLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSB3cmFwcGVyPzogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBAVmlld0NoaWxkKFR1aURyb3Bkb3duRGlyZWN0aXZlKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25EaXJlY3RpdmU/OiBUdWlEcm9wZG93bkRpcmVjdGl2ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+ID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgY2FuT3BlbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgb3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGZvY3VzZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpRHJvcGRvd25Db250cm9sbGVyRGlyZWN0aXZlLFxuICAgICkge31cblxuICAgIGdldCBob3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Ib3N0XG4gICAgICAgICAgICA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGRyb3Bkb3duKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5kcm9wZG93bkRpcmVjdGl2ZSB8fCB0aGlzLmRyb3Bkb3duRGlyZWN0aXZlLmRyb3Bkb3duQm94UmVmID09PSBudWxsXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5kcm9wZG93bkRpcmVjdGl2ZS5kcm9wZG93bkJveFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIGlzTmF0aXZlS2V5Ym9hcmRGb2N1c2FibGUodGhpcy5ob3N0KVxuICAgICAgICAgICAgPyB0aGlzLmhvc3RcbiAgICAgICAgICAgIDogZ2V0Q2xvc2VzdEZvY3VzYWJsZSh0aGlzLmhvc3QsIGZhbHNlLCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faG9zdGVkX2Ryb3Bkb3duX2ZvY3VzZWRgKVxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgaXNOYXRpdmVGb2N1c2VkSW4odGhpcy5ob3N0KSB8fFxuICAgICAgICAgICAgKHRoaXMub3BlbiAmJiAhIXRoaXMud3JhcHBlciAmJiBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNpbmAsIFtgJGV2ZW50LnRhcmdldGBdKVxuICAgIG9uRm9jdXNJbih0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLmRyb3Bkb3duSG9zdFxuICAgICAgICAgICAgPyB0aGlzLmRyb3Bkb3duSG9zdC5uYXRpdmVFbGVtZW50XG4gICAgICAgICAgICA6IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBpZiAoIWhvc3QuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGNsaWNrYCwgW2AkZXZlbnQudGFyZ2V0YF0pXG4gICAgb25DbGljayh0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgdGhpcy5ob3N0O1xuICAgICAgICBjb25zdCBkcm9wZG93bkhvc3QgPSB0aGlzLmRyb3Bkb3duSG9zdCA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnQgOiBob3N0O1xuXG4gICAgICAgIGlmICghdGhpcy5ob3N0RWRpdGFibGUgJiYgZHJvcGRvd25Ib3N0LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGtleWRvd24uZXNjYCwgW2AkZXZlbnRgXSlcbiAgICBvbktleURvd25Fc2MoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jYW5PcGVuIHx8ICF0aGlzLm9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBrZXlkb3duLmFycm93RG93bmAsIFtgJGV2ZW50YCwgYHRydWVgXSlcbiAgICBASG9zdExpc3RlbmVyKGBrZXlkb3duLmFycm93VXBgLCBbYCRldmVudGAsIGBmYWxzZWBdKVxuICAgIG9uQXJyb3coZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGRvd246IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0Ryb3Bkb3duKGV2ZW50LCBkb3duKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oe2tleSwgdGFyZ2V0LCBkZWZhdWx0UHJldmVudGVkfTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhZGVmYXVsdFByZXZlbnRlZCAmJlxuICAgICAgICAgICAgaXNFZGl0aW5nS2V5KGtleSkgJiZcbiAgICAgICAgICAgIHRoaXMuaG9zdEVkaXRhYmxlICYmXG4gICAgICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICAgICAgdGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgICAgICFpc0VsZW1lbnRFZGl0YWJsZSh0YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKCFhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvc3RPYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAob2JzY3VyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlT3BlbihvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChvcGVuICYmICF0aGlzLmNhbk9wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KG9wZW4pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGhvc3RFZGl0YWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmhvc3Q7XG5cbiAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgcmV0dXJuIGhvc3QgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJiBpc0VsZW1lbnRFZGl0YWJsZShob3N0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzRHJvcGRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGZpcnN0OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWhvc3QgfHxcbiAgICAgICAgICAgICEoaG9zdCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB8fFxuICAgICAgICAgICAgIShldmVudC50YXJnZXQgaW5zdGFuY2VvZiBOb2RlKSB8fFxuICAgICAgICAgICAgIWhvc3QuY29udGFpbnMoZXZlbnQudGFyZ2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLndyYXBwZXIgfHxcbiAgICAgICAgICAgICF0aGlzLm9wZW4gfHxcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd24gPT09IG51bGwgfHxcbiAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICAhKHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3Blbih0cnVlKTtcblxuICAgICAgICAgICAgaWYgKCFpc0VsZW1lbnRFZGl0YWJsZShob3N0KSkge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluaXRpYWwgPSBmaXJzdFxuICAgICAgICAgICAgPyB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmc7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZSA9IGdldENsb3Nlc3RGb2N1c2FibGUoXG4gICAgICAgICAgICBpbml0aWFsLFxuICAgICAgICAgICAgIWZpcnN0LFxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGZvY3VzYWJsZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChmb2N1c2FibGUpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xvc2VEcm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0hvc3QoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGhvc3QgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZUZvY3VzZWQoaG9zdCwgdHJ1ZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzZWRDaGFuZ2UuZW1pdChmb2N1c2VkKTtcbiAgICB9XG59XG4iXX0=