@taiga-ui/core 2.74.0 → 2.76.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 (584) hide show
  1. package/abstract/abstract-dropdown.d.ts +2 -2
  2. package/abstract/taiga-ui-core-abstract.metadata.json +1 -1
  3. package/bundles/taiga-ui-core-abstract.umd.js +49 -2
  4. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-core-components-alert.umd.js +55 -10
  7. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-button.umd.js +60 -15
  10. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-core-components-calendar.umd.js +47 -2
  13. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-calendar.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-data-list.umd.js +83 -39
  16. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
  18. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-dialog.umd.js +60 -15
  20. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-dropdown-box.umd.js +84 -39
  23. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-error.umd.js +50 -5
  26. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-core-components-expand.umd.js +58 -13
  29. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-group.umd.js +64 -19
  32. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-group.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-hints-host.umd.js +93 -48
  35. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +56 -11
  38. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-label.umd.js +51 -6
  41. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-label.umd.min.js +1 -1
  43. package/bundles/taiga-ui-core-components-label.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-core-components-link.umd.js +57 -12
  45. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-loader.umd.js +48 -3
  48. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-loader.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-core-components-notification.umd.js +54 -9
  51. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  52. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  53. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +48 -3
  54. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  55. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  56. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +49 -4
  57. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  58. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  59. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +48 -3
  60. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  61. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +97 -52
  63. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +48 -3
  66. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  67. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  68. package/bundles/taiga-ui-core-components-root.umd.js +50 -5
  69. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  70. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +72 -27
  72. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  73. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  74. package/bundles/taiga-ui-core-components-scrollbar.umd.js +54 -9
  75. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-core-components-svg.umd.js +61 -16
  78. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  79. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  80. package/bundles/taiga-ui-core-components-theme-night.umd.js +48 -3
  81. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  82. package/bundles/taiga-ui-core-components-theme-night.umd.min.js.map +1 -1
  83. package/bundles/taiga-ui-core-components-tooltip.umd.js +53 -8
  84. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  85. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  86. package/bundles/taiga-ui-core-directives-color.umd.js +52 -7
  87. package/bundles/taiga-ui-core-directives-color.umd.js.map +1 -1
  88. package/bundles/taiga-ui-core-directives-color.umd.min.js.map +1 -1
  89. package/bundles/taiga-ui-core-directives-described-by.umd.js +50 -5
  90. package/bundles/taiga-ui-core-directives-described-by.umd.js.map +1 -1
  91. package/bundles/taiga-ui-core-directives-described-by.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js +55 -10
  93. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.js.map +1 -1
  94. package/bundles/taiga-ui-core-directives-dropdown-controller.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-core-directives-dropdown.umd.js +48 -3
  96. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  97. package/bundles/taiga-ui-core-directives-dropdown.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-core-directives-hint-controller.umd.js +52 -7
  99. package/bundles/taiga-ui-core-directives-hint-controller.umd.js.map +1 -1
  100. package/bundles/taiga-ui-core-directives-hint-controller.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-core-directives-hint.umd.js +51 -6
  102. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  103. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-core-directives-manual-hint.umd.js +49 -4
  105. package/bundles/taiga-ui-core-directives-manual-hint.umd.js.map +1 -1
  106. package/bundles/taiga-ui-core-directives-manual-hint.umd.min.js.map +1 -1
  107. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +47 -2
  108. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  109. package/bundles/taiga-ui-core-directives-mask-accessor.umd.min.js.map +1 -1
  110. package/bundles/taiga-ui-core-directives-mode.umd.js +48 -3
  111. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  112. package/bundles/taiga-ui-core-directives-mode.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +50 -5
  114. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  115. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  116. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +47 -2
  117. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  118. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-core-directives-table-mode.umd.js +48 -3
  120. package/bundles/taiga-ui-core-directives-table-mode.umd.js.map +1 -1
  121. package/bundles/taiga-ui-core-directives-table-mode.umd.min.js.map +1 -1
  122. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +79 -34
  123. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  124. package/bundles/taiga-ui-core-directives-textfield-controller.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-core-directives-wrapper.umd.js +55 -10
  126. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  127. package/bundles/taiga-ui-core-directives-wrapper.umd.min.js.map +1 -1
  128. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +47 -2
  129. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  130. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +47 -2
  132. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  133. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.min.js.map +1 -1
  134. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +47 -2
  135. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  136. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.min.js.map +1 -1
  137. package/bundles/taiga-ui-core-pipes-format-date.umd.js +46 -1
  138. package/bundles/taiga-ui-core-pipes-format-date.umd.js.map +1 -1
  139. package/bundles/taiga-ui-core-pipes-format-date.umd.min.js.map +1 -1
  140. package/bundles/taiga-ui-core-pipes-format-number.umd.js +46 -1
  141. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  142. package/bundles/taiga-ui-core-pipes-format-number.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +46 -1
  144. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  145. package/bundles/taiga-ui-core-pipes-format-phone.umd.min.js.map +1 -1
  146. package/bundles/taiga-ui-core-pipes-month.umd.js +46 -1
  147. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  148. package/bundles/taiga-ui-core-pipes-month.umd.min.js.map +1 -1
  149. package/bundles/taiga-ui-core-pipes-pluralize.umd.js +46 -1
  150. package/bundles/taiga-ui-core-pipes-pluralize.umd.js.map +1 -1
  151. package/bundles/taiga-ui-core-pipes-pluralize.umd.min.js.map +1 -1
  152. package/bundles/taiga-ui-core-services.umd.js +46 -1
  153. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  154. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  155. package/bundles/taiga-ui-core-tokens.umd.js +46 -1
  156. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  157. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  158. package/bundles/taiga-ui-core-utils-dom.umd.js +1 -3
  159. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  160. package/bundles/taiga-ui-core-utils-dom.umd.min.js +1 -1
  161. package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
  162. package/bundles/taiga-ui-core-utils-format.umd.js +46 -1
  163. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  164. package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
  165. package/bundles/taiga-ui-core-utils-mask.umd.js +47 -2
  166. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  167. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  168. package/bundles/taiga-ui-core-utils-polyfills.umd.js.map +1 -1
  169. package/bundles/taiga-ui-core-utils-polyfills.umd.min.js.map +1 -1
  170. package/components/button/button-options.d.ts +3 -3
  171. package/components/button/button.component.d.ts +2 -2
  172. package/components/calendar/calendar.component.d.ts +1 -1
  173. package/components/data-list/option/option.component.d.ts +1 -1
  174. package/components/dropdown-box/dropdown-box.component.d.ts +3 -3
  175. package/components/label/taiga-ui-core-components-label.metadata.json +1 -1
  176. package/components/link/link.component.d.ts +1 -1
  177. package/components/loader/loader.component.d.ts +1 -1
  178. package/components/notification/notification.component.d.ts +1 -1
  179. package/components/primitive-calendar/primitive-calendar.component.d.ts +2 -2
  180. package/components/primitive-textfield/primitive-textfield.component.d.ts +2 -2
  181. package/components/primitive-year-picker/primitive-year-picker.component.d.ts +1 -1
  182. package/components/svg/svg.component.d.ts +1 -1
  183. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  184. package/constants/version.d.ts +1 -1
  185. package/directives/dropdown-controller/taiga-ui-core-directives-dropdown-controller.metadata.json +1 -1
  186. package/directives/textfield-controller/textfield-size.directive.d.ts +1 -1
  187. package/directives/textfield-controller/textfield.controller.d.ts +1 -1
  188. package/esm2015/abstract/abstract-dropdown.js +1 -1
  189. package/esm2015/abstract/abstract-textfield-host.js +7 -3
  190. package/esm2015/components/alert/alert.component.js +10 -10
  191. package/esm2015/components/button/button-options.js +1 -1
  192. package/esm2015/components/button/button.component.js +15 -15
  193. package/esm2015/components/calendar/calendar.component.js +2 -2
  194. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +9 -10
  195. package/esm2015/components/data-list/data-list.component.js +12 -12
  196. package/esm2015/components/data-list/data-list.directive.js +2 -2
  197. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  198. package/esm2015/components/data-list/option/option.component.js +13 -13
  199. package/esm2015/components/dialog/dialog.component.js +12 -12
  200. package/esm2015/components/dialog/dialog.directive.js +4 -4
  201. package/esm2015/components/dropdown-box/dropdown-box.component.js +39 -39
  202. package/esm2015/components/error/error.component.js +5 -5
  203. package/esm2015/components/expand/expand-content.directive.js +2 -2
  204. package/esm2015/components/expand/expand.component.js +12 -12
  205. package/esm2015/components/group/group-styles.component.js +2 -2
  206. package/esm2015/components/group/group.component.js +4 -4
  207. package/esm2015/components/group/group.directive.js +15 -15
  208. package/esm2015/components/hints-host/hint-box/hint-box.component.js +46 -46
  209. package/esm2015/components/hints-host/hints-host.component.js +3 -3
  210. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  211. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  212. package/esm2015/components/label/label.component.js +6 -6
  213. package/esm2015/components/link/link.component.js +12 -12
  214. package/esm2015/components/loader/loader.component.js +3 -3
  215. package/esm2015/components/notification/notification.component.js +9 -9
  216. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  217. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  218. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  219. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +28 -28
  220. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  221. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +13 -13
  222. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  223. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  224. package/esm2015/components/root/root.component.js +5 -5
  225. package/esm2015/components/scroll-controls/scroll-controls.component.js +4 -4
  226. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  227. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  228. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  229. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  230. package/esm2015/components/scrollbar/scrollbar.component.js +7 -7
  231. package/esm2015/components/svg/svg.component.js +16 -16
  232. package/esm2015/components/theme-night/theme-night.component.js +3 -3
  233. package/esm2015/components/tooltip/tooltip.component.js +8 -8
  234. package/esm2015/directives/color/color.directive.js +7 -7
  235. package/esm2015/directives/described-by/described-by.directive.js +5 -5
  236. package/esm2015/directives/dropdown/dropdown.directive.js +3 -3
  237. package/esm2015/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  238. package/esm2015/directives/hint/hint.directive.js +6 -6
  239. package/esm2015/directives/hint-controller/hint-controller.directive.js +7 -7
  240. package/esm2015/directives/manual-hint/manual-hint.directive.js +4 -4
  241. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  242. package/esm2015/directives/mode/mode.directive.js +3 -3
  243. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +5 -5
  244. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  245. package/esm2015/directives/table-mode/table-mode.directive.js +3 -3
  246. package/esm2015/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  247. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  248. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  249. package/esm2015/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  250. package/esm2015/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  251. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  252. package/esm2015/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  253. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  254. package/esm2015/directives/textfield-controller/textfield-type.directive.js +5 -5
  255. package/esm2015/directives/textfield-controller/textfield.controller.js +1 -1
  256. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  257. package/esm2015/interfaces/alert-options.js +1 -1
  258. package/esm2015/interfaces/dropdown-directive.js +1 -1
  259. package/esm2015/interfaces/hint.js +1 -1
  260. package/esm2015/interfaces/notification-options.js +1 -1
  261. package/esm2015/interfaces/number-format-settings.js +1 -1
  262. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  263. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  264. package/esm2015/mask/text-mask-list.js +1 -1
  265. package/esm2015/mask/text-mask-pipe-handler.js +1 -1
  266. package/esm2015/pipes/calendar-sheet/utils.js +2 -2
  267. package/esm2015/pipes/format-date/format-date.pipe.js +1 -1
  268. package/esm2015/types/brightness.js +1 -1
  269. package/esm2015/types/decimal-symbol.js +1 -1
  270. package/esm2015/types/decimal.js +1 -1
  271. package/esm2015/types/dialog-size.js +1 -1
  272. package/esm2015/types/direction.js +1 -1
  273. package/esm2015/types/dropdown-width.js +1 -1
  274. package/esm2015/types/marker-handler.js +1 -1
  275. package/esm2015/types/option-role.js +1 -1
  276. package/esm2015/types/orientation.js +1 -1
  277. package/esm2015/types/size.js +1 -1
  278. package/esm2015/utils/dom/get-safe-area-size.js +1 -1
  279. package/esm2015/utils/dom/process-icon.js +2 -4
  280. package/esm2015/utils/mask/create-number-mask.js +2 -2
  281. package/esm2015/utils/polyfills/inner-html.js +3 -3
  282. package/esm5/abstract/abstract-dropdown.js +1 -1
  283. package/esm5/abstract/abstract-textfield-host.js +4 -2
  284. package/esm5/components/alert/alert.component.js +10 -10
  285. package/esm5/components/button/button-options.js +1 -1
  286. package/esm5/components/button/button.component.js +15 -15
  287. package/esm5/components/calendar/calendar.component.js +2 -2
  288. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +10 -11
  289. package/esm5/components/data-list/data-list.component.js +12 -12
  290. package/esm5/components/data-list/data-list.directive.js +2 -2
  291. package/esm5/components/data-list/opt-group.directive.js +5 -5
  292. package/esm5/components/data-list/option/option.component.js +13 -13
  293. package/esm5/components/dialog/dialog.component.js +12 -12
  294. package/esm5/components/dialog/dialog.directive.js +4 -4
  295. package/esm5/components/dropdown-box/dropdown-box.component.js +39 -39
  296. package/esm5/components/error/error.component.js +5 -5
  297. package/esm5/components/expand/expand-content.directive.js +2 -2
  298. package/esm5/components/expand/expand.component.js +12 -12
  299. package/esm5/components/group/group-styles.component.js +2 -2
  300. package/esm5/components/group/group.component.js +4 -4
  301. package/esm5/components/group/group.directive.js +15 -15
  302. package/esm5/components/hints-host/hint-box/hint-box.component.js +46 -46
  303. package/esm5/components/hints-host/hints-host.component.js +3 -3
  304. package/esm5/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  305. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  306. package/esm5/components/label/label.component.js +6 -6
  307. package/esm5/components/link/link.component.js +12 -12
  308. package/esm5/components/loader/loader.component.js +3 -3
  309. package/esm5/components/notification/notification.component.js +9 -9
  310. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  311. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +4 -4
  312. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +3 -3
  313. package/esm5/components/primitive-textfield/primitive-textfield.component.js +28 -28
  314. package/esm5/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  315. package/esm5/components/primitive-textfield/textfield/textfield.component.js +13 -13
  316. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +12 -12
  317. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +3 -3
  318. package/esm5/components/root/root.component.js +5 -5
  319. package/esm5/components/scroll-controls/scroll-controls.component.js +4 -4
  320. package/esm5/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  321. package/esm5/components/scroll-controls/scrollbar.directive.js +23 -23
  322. package/esm5/components/scrollbar/scroll-ref.directive.js +2 -2
  323. package/esm5/components/scrollbar/scrollable.directive.js +2 -2
  324. package/esm5/components/scrollbar/scrollbar.component.js +7 -7
  325. package/esm5/components/svg/svg.component.js +16 -16
  326. package/esm5/components/theme-night/theme-night.component.js +3 -3
  327. package/esm5/components/tooltip/tooltip.component.js +8 -8
  328. package/esm5/directives/color/color.directive.js +7 -7
  329. package/esm5/directives/described-by/described-by.directive.js +5 -5
  330. package/esm5/directives/dropdown/dropdown.directive.js +3 -3
  331. package/esm5/directives/dropdown-controller/dropdown-controller.directive.js +10 -10
  332. package/esm5/directives/hint/hint.directive.js +6 -6
  333. package/esm5/directives/hint-controller/hint-controller.directive.js +7 -7
  334. package/esm5/directives/manual-hint/manual-hint.directive.js +4 -4
  335. package/esm5/directives/mask-accessor/mask-accessor.directive.js +2 -2
  336. package/esm5/directives/mode/mode.directive.js +3 -3
  337. package/esm5/directives/pointer-hint/pointer-hint.directive.js +5 -5
  338. package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  339. package/esm5/directives/table-mode/table-mode.directive.js +3 -3
  340. package/esm5/directives/textfield-controller/textfield-autocomplete.directive.js +5 -5
  341. package/esm5/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  342. package/esm5/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  343. package/esm5/directives/textfield-controller/textfield-example-text.directive.js +5 -5
  344. package/esm5/directives/textfield-controller/textfield-input-mode.directive.js +5 -5
  345. package/esm5/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  346. package/esm5/directives/textfield-controller/textfield-max-length.directive.js +4 -4
  347. package/esm5/directives/textfield-controller/textfield-size.directive.js +5 -5
  348. package/esm5/directives/textfield-controller/textfield-type.directive.js +5 -5
  349. package/esm5/directives/textfield-controller/textfield.controller.js +1 -1
  350. package/esm5/directives/wrapper/wrapper.directive.js +10 -10
  351. package/esm5/interfaces/alert-options.js +1 -1
  352. package/esm5/interfaces/dropdown-directive.js +1 -1
  353. package/esm5/interfaces/hint.js +1 -1
  354. package/esm5/interfaces/notification-options.js +1 -1
  355. package/esm5/interfaces/number-format-settings.js +1 -1
  356. package/esm5/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
  357. package/esm5/internal/svg-defs-host/svg-defs-host.component.js +2 -2
  358. package/esm5/mask/text-mask-list.js +1 -1
  359. package/esm5/mask/text-mask-pipe-handler.js +1 -1
  360. package/esm5/pipes/calendar-sheet/utils.js +2 -2
  361. package/esm5/pipes/format-date/format-date.pipe.js +1 -1
  362. package/esm5/types/brightness.js +1 -1
  363. package/esm5/types/decimal-symbol.js +1 -1
  364. package/esm5/types/decimal.js +1 -1
  365. package/esm5/types/dialog-size.js +1 -1
  366. package/esm5/types/direction.js +1 -1
  367. package/esm5/types/dropdown-width.js +1 -1
  368. package/esm5/types/marker-handler.js +1 -1
  369. package/esm5/types/option-role.js +1 -1
  370. package/esm5/types/orientation.js +1 -1
  371. package/esm5/types/size.js +1 -1
  372. package/esm5/utils/dom/get-safe-area-size.js +1 -1
  373. package/esm5/utils/dom/process-icon.js +2 -4
  374. package/esm5/utils/mask/create-number-mask.js +2 -2
  375. package/esm5/utils/polyfills/inner-html.js +1 -1
  376. package/fesm2015/taiga-ui-core-abstract.js +6 -2
  377. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  378. package/fesm2015/taiga-ui-core-components-alert.js +9 -9
  379. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  380. package/fesm2015/taiga-ui-core-components-button.js +14 -14
  381. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  382. package/fesm2015/taiga-ui-core-components-calendar.js +1 -1
  383. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  384. package/fesm2015/taiga-ui-core-components-data-list.js +36 -37
  385. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  386. package/fesm2015/taiga-ui-core-components-dialog.js +14 -14
  387. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  388. package/fesm2015/taiga-ui-core-components-dropdown-box.js +38 -38
  389. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  390. package/fesm2015/taiga-ui-core-components-error.js +4 -4
  391. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  392. package/fesm2015/taiga-ui-core-components-expand.js +12 -12
  393. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  394. package/fesm2015/taiga-ui-core-components-group.js +18 -18
  395. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  396. package/fesm2015/taiga-ui-core-components-hints-host.js +47 -47
  397. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  398. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  399. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  400. package/fesm2015/taiga-ui-core-components-label.js +5 -5
  401. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  402. package/fesm2015/taiga-ui-core-components-link.js +11 -11
  403. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  404. package/fesm2015/taiga-ui-core-components-loader.js +2 -2
  405. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  406. package/fesm2015/taiga-ui-core-components-notification.js +8 -8
  407. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  408. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +2 -2
  409. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  410. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +3 -3
  411. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  412. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +2 -2
  413. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  414. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +51 -51
  415. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  416. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +2 -2
  417. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  418. package/fesm2015/taiga-ui-core-components-root.js +4 -4
  419. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  420. package/fesm2015/taiga-ui-core-components-scroll-controls.js +26 -26
  421. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  422. package/fesm2015/taiga-ui-core-components-scrollbar.js +8 -8
  423. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  424. package/fesm2015/taiga-ui-core-components-svg.js +15 -15
  425. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  426. package/fesm2015/taiga-ui-core-components-theme-night.js +2 -2
  427. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  428. package/fesm2015/taiga-ui-core-components-tooltip.js +7 -7
  429. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  430. package/fesm2015/taiga-ui-core-directives-color.js +6 -6
  431. package/fesm2015/taiga-ui-core-directives-color.js.map +1 -1
  432. package/fesm2015/taiga-ui-core-directives-described-by.js +4 -4
  433. package/fesm2015/taiga-ui-core-directives-described-by.js.map +1 -1
  434. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js +9 -9
  435. package/fesm2015/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  436. package/fesm2015/taiga-ui-core-directives-dropdown.js +2 -2
  437. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  438. package/fesm2015/taiga-ui-core-directives-hint-controller.js +6 -6
  439. package/fesm2015/taiga-ui-core-directives-hint-controller.js.map +1 -1
  440. package/fesm2015/taiga-ui-core-directives-hint.js +5 -5
  441. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  442. package/fesm2015/taiga-ui-core-directives-manual-hint.js +3 -3
  443. package/fesm2015/taiga-ui-core-directives-manual-hint.js.map +1 -1
  444. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  445. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  446. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  447. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  448. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +4 -4
  449. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  450. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  451. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  452. package/fesm2015/taiga-ui-core-directives-table-mode.js +2 -2
  453. package/fesm2015/taiga-ui-core-directives-table-mode.js.map +1 -1
  454. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +33 -33
  455. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  456. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  457. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  458. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  459. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  460. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +1 -1
  461. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  462. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  463. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  464. package/fesm2015/taiga-ui-core-pipes-format-date.js.map +1 -1
  465. package/fesm2015/taiga-ui-core-utils-dom.js +1 -3
  466. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  467. package/fesm2015/taiga-ui-core-utils-mask.js +1 -1
  468. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  469. package/fesm2015/taiga-ui-core-utils-polyfills.js +2 -2
  470. package/fesm2015/taiga-ui-core-utils-polyfills.js.map +1 -1
  471. package/fesm5/taiga-ui-core-abstract.js +3 -1
  472. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  473. package/fesm5/taiga-ui-core-components-alert.js +9 -9
  474. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  475. package/fesm5/taiga-ui-core-components-button.js +14 -14
  476. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  477. package/fesm5/taiga-ui-core-components-calendar.js +1 -1
  478. package/fesm5/taiga-ui-core-components-calendar.js.map +1 -1
  479. package/fesm5/taiga-ui-core-components-data-list.js +37 -38
  480. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  481. package/fesm5/taiga-ui-core-components-dialog.js +14 -14
  482. package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
  483. package/fesm5/taiga-ui-core-components-dropdown-box.js +38 -38
  484. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  485. package/fesm5/taiga-ui-core-components-error.js +4 -4
  486. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  487. package/fesm5/taiga-ui-core-components-expand.js +12 -12
  488. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  489. package/fesm5/taiga-ui-core-components-group.js +18 -18
  490. package/fesm5/taiga-ui-core-components-group.js.map +1 -1
  491. package/fesm5/taiga-ui-core-components-hints-host.js +47 -47
  492. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  493. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +10 -10
  494. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  495. package/fesm5/taiga-ui-core-components-label.js +5 -5
  496. package/fesm5/taiga-ui-core-components-label.js.map +1 -1
  497. package/fesm5/taiga-ui-core-components-link.js +11 -11
  498. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  499. package/fesm5/taiga-ui-core-components-loader.js +2 -2
  500. package/fesm5/taiga-ui-core-components-loader.js.map +1 -1
  501. package/fesm5/taiga-ui-core-components-notification.js +8 -8
  502. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  503. package/fesm5/taiga-ui-core-components-primitive-calendar.js +2 -2
  504. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  505. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +3 -3
  506. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  507. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +2 -2
  508. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  509. package/fesm5/taiga-ui-core-components-primitive-textfield.js +51 -51
  510. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  511. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +2 -2
  512. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  513. package/fesm5/taiga-ui-core-components-root.js +4 -4
  514. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  515. package/fesm5/taiga-ui-core-components-scroll-controls.js +26 -26
  516. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  517. package/fesm5/taiga-ui-core-components-scrollbar.js +8 -8
  518. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  519. package/fesm5/taiga-ui-core-components-svg.js +15 -15
  520. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  521. package/fesm5/taiga-ui-core-components-theme-night.js +2 -2
  522. package/fesm5/taiga-ui-core-components-theme-night.js.map +1 -1
  523. package/fesm5/taiga-ui-core-components-tooltip.js +7 -7
  524. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  525. package/fesm5/taiga-ui-core-directives-color.js +6 -6
  526. package/fesm5/taiga-ui-core-directives-color.js.map +1 -1
  527. package/fesm5/taiga-ui-core-directives-described-by.js +4 -4
  528. package/fesm5/taiga-ui-core-directives-described-by.js.map +1 -1
  529. package/fesm5/taiga-ui-core-directives-dropdown-controller.js +9 -9
  530. package/fesm5/taiga-ui-core-directives-dropdown-controller.js.map +1 -1
  531. package/fesm5/taiga-ui-core-directives-dropdown.js +2 -2
  532. package/fesm5/taiga-ui-core-directives-dropdown.js.map +1 -1
  533. package/fesm5/taiga-ui-core-directives-hint-controller.js +6 -6
  534. package/fesm5/taiga-ui-core-directives-hint-controller.js.map +1 -1
  535. package/fesm5/taiga-ui-core-directives-hint.js +5 -5
  536. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  537. package/fesm5/taiga-ui-core-directives-manual-hint.js +3 -3
  538. package/fesm5/taiga-ui-core-directives-manual-hint.js.map +1 -1
  539. package/fesm5/taiga-ui-core-directives-mask-accessor.js +1 -1
  540. package/fesm5/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  541. package/fesm5/taiga-ui-core-directives-mode.js +2 -2
  542. package/fesm5/taiga-ui-core-directives-mode.js.map +1 -1
  543. package/fesm5/taiga-ui-core-directives-pointer-hint.js +4 -4
  544. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  545. package/fesm5/taiga-ui-core-directives-scroll-into-view.js +1 -1
  546. package/fesm5/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  547. package/fesm5/taiga-ui-core-directives-table-mode.js +2 -2
  548. package/fesm5/taiga-ui-core-directives-table-mode.js.map +1 -1
  549. package/fesm5/taiga-ui-core-directives-textfield-controller.js +33 -33
  550. package/fesm5/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  551. package/fesm5/taiga-ui-core-directives-wrapper.js +9 -9
  552. package/fesm5/taiga-ui-core-directives-wrapper.js.map +1 -1
  553. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
  554. package/fesm5/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  555. package/fesm5/taiga-ui-core-internal-svg-defs-host.js +1 -1
  556. package/fesm5/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  557. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js +1 -1
  558. package/fesm5/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  559. package/fesm5/taiga-ui-core-pipes-format-date.js.map +1 -1
  560. package/fesm5/taiga-ui-core-utils-dom.js +1 -3
  561. package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
  562. package/fesm5/taiga-ui-core-utils-mask.js +1 -1
  563. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  564. package/fesm5/taiga-ui-core-utils-polyfills.js.map +1 -1
  565. package/interfaces/alert-options.d.ts +1 -1
  566. package/interfaces/dropdown-directive.d.ts +2 -2
  567. package/interfaces/hint.d.ts +1 -1
  568. package/interfaces/notification-options.d.ts +1 -1
  569. package/interfaces/number-format-settings.d.ts +1 -2
  570. package/mask/text-mask-list.d.ts +1 -1
  571. package/mask/text-mask-pipe-handler.d.ts +1 -1
  572. package/package.json +4 -4
  573. package/pipes/format-date/format-date.pipe.d.ts +1 -1
  574. package/tokens/dropdown-directive.d.ts +1 -1
  575. package/types/brightness.d.ts +1 -1
  576. package/types/decimal-symbol.d.ts +1 -1
  577. package/types/decimal.d.ts +1 -1
  578. package/types/dialog-size.d.ts +1 -1
  579. package/types/direction.d.ts +2 -2
  580. package/types/dropdown-width.d.ts +1 -1
  581. package/types/marker-handler.d.ts +1 -1
  582. package/types/option-role.d.ts +1 -1
  583. package/types/orientation.d.ts +1 -1
  584. package/types/size.d.ts +2 -2
@@ -4,30 +4,30 @@ import { tuiDefaultProp, TuiDirectiveStylesService } from '@taiga-ui/cdk';
4
4
  import { TuiGroupStylesComponent } from './group-styles.component';
5
5
  var TuiGroupDirective = /** @class */ (function () {
6
6
  function TuiGroupDirective(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
  Object.defineProperty(TuiGroupDirective.prototype, "orientationHorizontal", {
15
15
  get: function () {
16
- return this.orientation === "horizontal";
16
+ return this.orientation === 'horizontal';
17
17
  },
18
18
  enumerable: true,
19
19
  configurable: true
20
20
  });
21
21
  Object.defineProperty(TuiGroupDirective.prototype, "orientationVertical", {
22
22
  get: function () {
23
- return this.orientation === "vertical";
23
+ return this.orientation === 'vertical';
24
24
  },
25
25
  enumerable: true,
26
26
  configurable: true
27
27
  });
28
28
  Object.defineProperty(TuiGroupDirective.prototype, "sizeLarge", {
29
29
  get: function () {
30
- return this.size === "l";
30
+ return this.size === 'l';
31
31
  },
32
32
  enumerable: true,
33
33
  configurable: true
@@ -41,17 +41,17 @@ var TuiGroupDirective = /** @class */ (function () {
41
41
  ], TuiGroupDirective.prototype, "orientation", void 0);
42
42
  __decorate([
43
43
  Input(),
44
- HostBinding("class.tui-group_adaptive"),
44
+ HostBinding('class.tui-group_adaptive'),
45
45
  tuiDefaultProp()
46
46
  ], TuiGroupDirective.prototype, "adaptive", void 0);
47
47
  __decorate([
48
48
  Input(),
49
- HostBinding("class.tui-group_collapsed"),
49
+ HostBinding('class.tui-group_collapsed'),
50
50
  tuiDefaultProp()
51
51
  ], TuiGroupDirective.prototype, "collapsed", void 0);
52
52
  __decorate([
53
53
  Input(),
54
- HostBinding("class.tui-group_rounded"),
54
+ HostBinding('class.tui-group_rounded'),
55
55
  tuiDefaultProp()
56
56
  ], TuiGroupDirective.prototype, "rounded", void 0);
57
57
  __decorate([
@@ -59,20 +59,20 @@ var TuiGroupDirective = /** @class */ (function () {
59
59
  tuiDefaultProp()
60
60
  ], TuiGroupDirective.prototype, "size", void 0);
61
61
  __decorate([
62
- HostBinding("class.tui-group_orientation_horizontal")
62
+ HostBinding('class.tui-group_orientation_horizontal')
63
63
  ], TuiGroupDirective.prototype, "orientationHorizontal", null);
64
64
  __decorate([
65
- HostBinding("class.tui-group_orientation_vertical")
65
+ HostBinding('class.tui-group_orientation_vertical')
66
66
  ], TuiGroupDirective.prototype, "orientationVertical", null);
67
67
  __decorate([
68
- HostBinding("class.tui-group_radius_large")
68
+ HostBinding('class.tui-group_radius_large')
69
69
  ], TuiGroupDirective.prototype, "sizeLarge", null);
70
70
  TuiGroupDirective = __decorate([
71
71
  Directive({
72
- selector: "[tuiGroup]:not(ng-container)",
72
+ selector: '[tuiGroup]:not(ng-container)',
73
73
  host: {
74
- class: "tui-group",
75
- role: "group",
74
+ class: 'tui-group',
75
+ role: 'group',
76
76
  },
77
77
  }),
78
78
  __param(0, Inject(TuiDirectiveStylesService))
@@ -80,4 +80,4 @@ var TuiGroupDirective = /** @class */ (function () {
80
80
  return TuiGroupDirective;
81
81
  }());
82
82
  export { TuiGroupDirective };
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9ncm91cC8iLCJzb3VyY2VzIjpbImdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFFLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBU2pFO0lBd0JJLDJCQUN1QyxlQUEwQztRQXRCakYsZ0JBQVcsR0FBb0IsWUFBWSxDQUFDO1FBSzVDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFLakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUtsQixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUtqQixlQUFlLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUdELHNCQUFJLG9EQUFxQjthQUF6QjtZQUNJLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUM7UUFDN0MsQ0FBQzs7O09BQUE7SUFHRCxzQkFBSSxrREFBbUI7YUFBdkI7WUFDSSxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssVUFBVSxDQUFDO1FBQzNDLENBQUM7OztPQUFBO0lBR0Qsc0JBQUksd0NBQVM7YUFBYjtZQUNJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUM7UUFDN0IsQ0FBQzs7O09BQUE7O2dCQWxCdUQseUJBQXlCLHVCQUE1RSxNQUFNLFNBQUMseUJBQXlCOztJQXRCckM7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQzJCO0lBSzVDO1FBSEMsS0FBSyxFQUFFO1FBQ1AsV0FBVyxDQUFDLDBCQUEwQixDQUFDO1FBQ3ZDLGNBQWMsRUFBRTt1REFDQTtJQUtqQjtRQUhDLEtBQUssRUFBRTtRQUNQLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztRQUN4QyxjQUFjLEVBQUU7d0RBQ0M7SUFLbEI7UUFIQyxLQUFLLEVBQUU7UUFDUCxXQUFXLENBQUMseUJBQXlCLENBQUM7UUFDdEMsY0FBYyxFQUFFO3NEQUNGO0lBSWY7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7bURBQ0k7SUFTckI7UUFEQyxXQUFXLENBQUMsd0NBQXdDLENBQUM7a0VBR3JEO0lBR0Q7UUFEQyxXQUFXLENBQUMsc0NBQXNDLENBQUM7Z0VBR25EO0lBR0Q7UUFEQyxXQUFXLENBQUMsOEJBQThCLENBQUM7c0RBRzNDO0lBM0NRLGlCQUFpQjtRQVA3QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsOEJBQThCO1lBQ3hDLElBQUksRUFBRTtnQkFDRixLQUFLLEVBQUUsV0FBVztnQkFDbEIsSUFBSSxFQUFFLE9BQU87YUFDaEI7U0FDSixDQUFDO1FBMEJPLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7T0F6QjdCLGlCQUFpQixDQTRDN0I7SUFBRCx3QkFBQztDQUFBLEFBNUNELElBNENDO1NBNUNZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5qZWN0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aURlZmF1bHRQcm9wLCBUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpT3JpZW50YXRpb25ULCBUdWlTaXplTH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQge1R1aUdyb3VwU3R5bGVzQ29tcG9uZW50fSBmcm9tICcuL2dyb3VwLXN0eWxlcy5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFt0dWlHcm91cF06bm90KG5nLWNvbnRhaW5lcilgLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6IGB0dWktZ3JvdXBgLFxuICAgICAgICByb2xlOiBgZ3JvdXBgLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUdyb3VwRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgb3JpZW50YXRpb246IFR1aU9yaWVudGF0aW9uVCA9IGBob3Jpem9udGFsYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy50dWktZ3JvdXBfYWRhcHRpdmVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWRhcHRpdmUgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy50dWktZ3JvdXBfY29sbGFwc2VkYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbGxhcHNlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLnR1aS1ncm91cF9yb3VuZGVkYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHJvdW5kZWQgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVMID0gYG1gO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpRGlyZWN0aXZlU3R5bGVzU2VydmljZSkgZGlyZWN0aXZlU3R5bGVzOiBUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBkaXJlY3RpdmVTdHlsZXMuYWRkQ29tcG9uZW50KFR1aUdyb3VwU3R5bGVzQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLnR1aS1ncm91cF9vcmllbnRhdGlvbl9ob3Jpem9udGFsYClcbiAgICBnZXQgb3JpZW50YXRpb25Ib3Jpem9udGFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gYGhvcml6b250YWxgO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MudHVpLWdyb3VwX29yaWVudGF0aW9uX3ZlcnRpY2FsYClcbiAgICBnZXQgb3JpZW50YXRpb25WZXJ0aWNhbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24gPT09IGB2ZXJ0aWNhbGA7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy50dWktZ3JvdXBfcmFkaXVzX2xhcmdlYClcbiAgICBnZXQgc2l6ZUxhcmdlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaXplID09PSBgbGA7XG4gICAgfVxufVxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9ncm91cC8iLCJzb3VyY2VzIjpbImdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFFLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBU2pFO0lBd0JJLDJCQUN1QyxlQUEwQztRQXRCakYsZ0JBQVcsR0FBb0IsWUFBWSxDQUFDO1FBSzVDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFLakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUtsQixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFhLEdBQUcsQ0FBQztRQUtqQixlQUFlLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUdELHNCQUFJLG9EQUFxQjthQUF6QjtZQUNJLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUM7UUFDN0MsQ0FBQzs7O09BQUE7SUFHRCxzQkFBSSxrREFBbUI7YUFBdkI7WUFDSSxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssVUFBVSxDQUFDO1FBQzNDLENBQUM7OztPQUFBO0lBR0Qsc0JBQUksd0NBQVM7YUFBYjtZQUNJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUM7UUFDN0IsQ0FBQzs7O09BQUE7O2dCQWxCdUQseUJBQXlCLHVCQUE1RSxNQUFNLFNBQUMseUJBQXlCOztJQXRCckM7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQzJCO0lBSzVDO1FBSEMsS0FBSyxFQUFFO1FBQ1AsV0FBVyxDQUFDLDBCQUEwQixDQUFDO1FBQ3ZDLGNBQWMsRUFBRTt1REFDQTtJQUtqQjtRQUhDLEtBQUssRUFBRTtRQUNQLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztRQUN4QyxjQUFjLEVBQUU7d0RBQ0M7SUFLbEI7UUFIQyxLQUFLLEVBQUU7UUFDUCxXQUFXLENBQUMseUJBQXlCLENBQUM7UUFDdEMsY0FBYyxFQUFFO3NEQUNGO0lBSWY7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7bURBQ0k7SUFTckI7UUFEQyxXQUFXLENBQUMsd0NBQXdDLENBQUM7a0VBR3JEO0lBR0Q7UUFEQyxXQUFXLENBQUMsc0NBQXNDLENBQUM7Z0VBR25EO0lBR0Q7UUFEQyxXQUFXLENBQUMsOEJBQThCLENBQUM7c0RBRzNDO0lBM0NRLGlCQUFpQjtRQVA3QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsOEJBQThCO1lBQ3hDLElBQUksRUFBRTtnQkFDRixLQUFLLEVBQUUsV0FBVztnQkFDbEIsSUFBSSxFQUFFLE9BQU87YUFDaEI7U0FDSixDQUFDO1FBMEJPLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7T0F6QjdCLGlCQUFpQixDQTRDN0I7SUFBRCx3QkFBQztDQUFBLEFBNUNELElBNENDO1NBNUNZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5qZWN0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aURlZmF1bHRQcm9wLCBUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpT3JpZW50YXRpb25ULCBUdWlTaXplTH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQge1R1aUdyb3VwU3R5bGVzQ29tcG9uZW50fSBmcm9tICcuL2dyb3VwLXN0eWxlcy5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlHcm91cF06bm90KG5nLWNvbnRhaW5lciknLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0dWktZ3JvdXAnLFxuICAgICAgICByb2xlOiAnZ3JvdXAnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUdyb3VwRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgb3JpZW50YXRpb246IFR1aU9yaWVudGF0aW9uVCA9ICdob3Jpem9udGFsJztcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50dWktZ3JvdXBfYWRhcHRpdmUnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWRhcHRpdmUgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50dWktZ3JvdXBfY29sbGFwc2VkJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbGxhcHNlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnR1aS1ncm91cF9yb3VuZGVkJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHJvdW5kZWQgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVMID0gJ20nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpRGlyZWN0aXZlU3R5bGVzU2VydmljZSkgZGlyZWN0aXZlU3R5bGVzOiBUdWlEaXJlY3RpdmVTdHlsZXNTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBkaXJlY3RpdmVTdHlsZXMuYWRkQ29tcG9uZW50KFR1aUdyb3VwU3R5bGVzQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnR1aS1ncm91cF9vcmllbnRhdGlvbl9ob3Jpem9udGFsJylcbiAgICBnZXQgb3JpZW50YXRpb25Ib3Jpem9udGFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudHVpLWdyb3VwX29yaWVudGF0aW9uX3ZlcnRpY2FsJylcbiAgICBnZXQgb3JpZW50YXRpb25WZXJ0aWNhbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50dWktZ3JvdXBfcmFkaXVzX2xhcmdlJylcbiAgICBnZXQgc2l6ZUxhcmdlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaXplID09PSAnbCc7XG4gICAgfVxufVxuIl19
@@ -19,24 +19,24 @@ var ARROW_SIZE = 8;
19
19
  var ARROW_OFFSET = 16;
20
20
  var ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;
21
21
  var 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
  var 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
@@ -50,7 +50,7 @@ var TuiHintBoxComponent = /** @class */ (function () {
50
50
  this.media = media;
51
51
  this.hintsHost = hintsHost;
52
52
  this.context = context;
53
- this.animation = __assign({ value: "" }, this.options);
53
+ this.animation = __assign({ value: '' }, this.options);
54
54
  animationFrame$
55
55
  .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
56
56
  .subscribe(function () { return _this.calculatePosition(); });
@@ -93,7 +93,7 @@ var TuiHintBoxComponent = /** @class */ (function () {
93
93
  * Styles are set directly to avoid visual shake of element
94
94
  */
95
95
  TuiHintBoxComponent.prototype.calculatePosition = function () {
96
- if (this.mode !== "overflow") {
96
+ if (this.mode !== 'overflow') {
97
97
  this.calculateCoordinates();
98
98
  }
99
99
  else {
@@ -112,14 +112,14 @@ var TuiHintBoxComponent = /** @class */ (function () {
112
112
  var tooltipRect = tooltip.getBoundingClientRect();
113
113
  var isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;
114
114
  var directions = [
115
- "left",
116
- "right",
117
- "bottom-left",
118
- "bottom-right",
119
- "bottom-middle",
120
- "top-left",
121
- "top-right",
122
- "top-middle",
115
+ 'left',
116
+ 'right',
117
+ 'bottom-left',
118
+ 'bottom-right',
119
+ 'bottom-middle',
120
+ 'top-left',
121
+ 'top-right',
122
+ 'top-middle',
123
123
  ];
124
124
  var top = 0;
125
125
  var left = 0;
@@ -144,35 +144,35 @@ var TuiHintBoxComponent = /** @class */ (function () {
144
144
  // eslint-disable-next-line no-constant-condition
145
145
  while (true) {
146
146
  switch (direction) {
147
- case "left":
147
+ case 'left':
148
148
  top = horizontalTop;
149
149
  left = horizontalLeft;
150
150
  break;
151
- case "right":
151
+ case 'right':
152
152
  top = horizontalTop;
153
153
  left = horizontalRight;
154
154
  break;
155
- case "top-right":
155
+ case 'top-right':
156
156
  top = verticalTop;
157
157
  left = verticalRight;
158
158
  break;
159
- case "top-left":
159
+ case 'top-left':
160
160
  top = verticalTop;
161
161
  left = verticalLeft;
162
162
  break;
163
- case "bottom-right":
163
+ case 'bottom-right':
164
164
  top = verticalBottom;
165
165
  left = verticalRight;
166
166
  break;
167
- case "bottom-left":
167
+ case 'bottom-left':
168
168
  top = verticalBottom;
169
169
  left = verticalLeft;
170
170
  break;
171
- case "bottom-middle":
171
+ case 'bottom-middle':
172
172
  top = verticalBottom;
173
173
  left = verticalMiddle;
174
174
  break;
175
- case "top-middle":
175
+ case 'top-middle':
176
176
  top = verticalTop;
177
177
  left = verticalMiddle;
178
178
  break;
@@ -193,7 +193,7 @@ var TuiHintBoxComponent = /** @class */ (function () {
193
193
  }
194
194
  style.top = px(top);
195
195
  style.left = px(left);
196
- tooltip.setAttribute("data-tui-host-direction", direction);
196
+ tooltip.setAttribute('data-tui-host-direction', direction);
197
197
  };
198
198
  TuiHintBoxComponent.prototype.calculateMobileCoordinates = function () {
199
199
  var hostRect = this.hint.getElementClientRect();
@@ -207,21 +207,21 @@ var TuiHintBoxComponent = /** @class */ (function () {
207
207
  hostRect.top < this.windowRef.innerHeight;
208
208
  var verticalBottomFit = hostRect.bottom > 0 &&
209
209
  hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;
210
- var direction = (this.hint.direction.includes("top") && verticalTopFit) || !verticalBottomFit
211
- ? "top"
212
- : "bottom";
210
+ var direction = (this.hint.direction.includes('top') && verticalTopFit) || !verticalBottomFit
211
+ ? 'top'
212
+ : 'bottom';
213
213
  var attemptedLeft = portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;
214
214
  var left = Math.max(attemptedLeft + tooltipRect.width + SPACE > portalRect.right
215
215
  ? portalRect.right - SPACE - tooltipRect.width
216
216
  : attemptedLeft, SPACE * 2);
217
217
  style.left = px(left);
218
- style.top = direction === "top" ? px(verticalTop) : px(verticalBottom);
218
+ style.top = direction === 'top' ? px(verticalTop) : px(verticalBottom);
219
219
  if (this.arrow) {
220
220
  this.arrow.nativeElement.style.left = px(hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2
221
221
  ? ARROW_OFFSET
222
222
  : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2);
223
223
  }
224
- tooltip.setAttribute("data-tui-host-direction", direction);
224
+ tooltip.setAttribute('data-tui-host-direction', direction);
225
225
  };
226
226
  TuiHintBoxComponent.prototype.setOverflowStyles = function () {
227
227
  var hostRect = this.hint.getElementClientRect();
@@ -242,21 +242,21 @@ var TuiHintBoxComponent = /** @class */ (function () {
242
242
  { type: undefined, decorators: [{ type: Inject, args: [POLYMORPHEUS_CONTEXT,] }] }
243
243
  ]; };
244
244
  __decorate([
245
- ViewChild("arrow")
245
+ ViewChild('arrow')
246
246
  ], TuiHintBoxComponent.prototype, "arrow", void 0);
247
247
  __decorate([
248
- HostBinding("@tuiFadeIn")
248
+ HostBinding('@tuiFadeIn')
249
249
  ], TuiHintBoxComponent.prototype, "animation", void 0);
250
250
  __decorate([
251
251
  tuiPure,
252
- HostBinding("class._untouchable")
252
+ HostBinding('class._untouchable')
253
253
  ], TuiHintBoxComponent.prototype, "isUntouchable", null);
254
254
  __decorate([
255
- HostBinding("attr.data-mode")
255
+ HostBinding('attr.data-mode')
256
256
  ], TuiHintBoxComponent.prototype, "mode", null);
257
257
  TuiHintBoxComponent = __decorate([
258
258
  Component({
259
- selector: "tui-hint-box[hint]",
259
+ selector: 'tui-hint-box[hint]',
260
260
  template: "<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div\n *ngIf=\"isMobile && mode !== 'overflow'\"\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",
261
261
  changeDetection: ChangeDetectionStrategy.OnPush,
262
262
  providers: [TuiDestroyService],
@@ -276,4 +276,4 @@ var TuiHintBoxComponent = /** @class */ (function () {
276
276
  return TuiHintBoxComponent;
277
277
  }());
278
278
  export { TuiHintBoxComponent };
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsSUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLElBQU0sWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2QixJQUFNLFlBQVksR0FBRyxF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IjpbImltcG9ydCB7QW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE5nWm9uZSxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUUsIFdJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIHB4LFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlab25lZnJlZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge0Fic3RyYWN0VHVpSGludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHt0dWlGYWRlSW59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7VHVpUG9pbnRlckhpbnREaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvcG9pbnRlci1oaW50JztcbmltcG9ydCB7VHVpTWVkaWF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlMsIFRVSV9NRURJQX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpRGlyZWN0aW9uLCBUdWlIaW50TW9kZVR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpSXNNb2JpbGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlIaW50c0hvc3RDb21wb25lbnR9IGZyb20gJy4uL2hpbnRzLWhvc3QuY29tcG9uZW50JztcblxuY29uc3QgU1BBQ0UgPSA4O1xuY29uc3QgQk9SREVSX1dJRFRIID0gMTtcbmNvbnN0IExFRlRfUEFERElORyA9IDE2O1xuY29uc3QgVE9QX1BBRERJTkcgPSAxMjtcbmNvbnN0IEFSUk9XX1NJWkUgPSA4O1xuY29uc3QgQVJST1dfT0ZGU0VUID0gMTY7XG5jb25zdCBBUlJPV0hFQURfT0ZGU0VUID0gQVJST1dfT0ZGU0VUICsgKEFSUk9XX1NJWkUgKiBNYXRoLnNxcnQoMikpIC8gMjtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zVmVydGljYWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogYGJvdHRvbS1sZWZ0YCxcbiAgICAndG9wLXJpZ2h0JzogYGJvdHRvbS1yaWdodGAsXG4gICAgJ2JvdHRvbS1sZWZ0JzogYHRvcC1sZWZ0YCxcbiAgICAnYm90dG9tLXJpZ2h0JzogYHRvcC1yaWdodGAsXG4gICAgbGVmdDogYHJpZ2h0YCxcbiAgICByaWdodDogYGxlZnRgLFxuICAgICd0b3AtbWlkZGxlJzogYGJvdHRvbS1taWRkbGVgLFxuICAgICdib3R0b20tbWlkZGxlJzogYHRvcC1taWRkbGVgLFxufTtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zSG9yaXpvbnRhbDoge1trZXkgaW4gVHVpRGlyZWN0aW9uXTogVHVpRGlyZWN0aW9ufSA9IHtcbiAgICAndG9wLWxlZnQnOiBgdG9wLXJpZ2h0YCxcbiAgICAndG9wLXJpZ2h0JzogYHRvcC1sZWZ0YCxcbiAgICAnYm90dG9tLWxlZnQnOiBgYm90dG9tLXJpZ2h0YCxcbiAgICAnYm90dG9tLXJpZ2h0JzogYGJvdHRvbS1sZWZ0YCxcbiAgICBsZWZ0OiBgcmlnaHRgLFxuICAgIHJpZ2h0OiBgbGVmdGAsXG4gICAgJ3RvcC1taWRkbGUnOiBgdG9wLW1pZGRsZWAsXG4gICAgJ2JvdHRvbS1taWRkbGUnOiBgYm90dG9tLW1pZGRsZWAsXG59O1xuXG4vLyBUT0RPOiBjb25zaWRlciBhYnN0cmFjdGluZyBVSSBhbmQgbW92ZSB0byBDREssIHNwbGl0IGhpbnQgYW5kIG92ZXJmbG93XG4vLyBBbWJpZW50IHR5cGUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBkeW5hbWljIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzIzMzk1XG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktaGludC1ib3hbaGludF1gLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9oaW50LWJveC50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9oaW50LWJveC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW5dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlIaW50Qm94Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKGBhcnJvd2ApXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcnJvdz86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQEhvc3RCaW5kaW5nKGBAdHVpRmFkZUluYClcbiAgICByZWFkb25seSBhbmltYXRpb24gPSB7dmFsdWU6IGBgLCAuLi50aGlzLm9wdGlvbnN9IGFzIGNvbnN0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfTUVESUEpIHByaXZhdGUgcmVhZG9ubHkgbWVkaWE6IFR1aU1lZGlhLFxuICAgICAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gVHVpSGludHNIb3N0Q29tcG9uZW50KSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaW50c0hvc3Q6IFR1aUhpbnRzSG9zdENvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChQT0xZTU9SUEhFVVNfQ09OVEVYVClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PEFic3RyYWN0VHVpSGludD4sXG4gICAgKSB7XG4gICAgICAgIGFuaW1hdGlvbkZyYW1lJFxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUobmdab25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxjdWxhdGVQb3NpdGlvbigpKTtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOiBBYnN0cmFjdFR1aUhpbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LiRpbXBsaWNpdDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX3VudG91Y2hhYmxlYClcbiAgICBnZXQgaXNVbnRvdWNoYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludCBpbnN0YW5jZW9mIFR1aVBvaW50ZXJIaW50RGlyZWN0aXZlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5kYXRhLW1vZGVgKVxuICAgIGdldCBtb2RlKCk6IFR1aUhpbnRNb2RlVCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Lm1vZGU7XG4gICAgfVxuXG4gICAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNNb2JpbGUodGhpcy53aW5kb3dSZWYsIHRoaXMubWVkaWEpO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhpbnQgaW5zdGFuY2VvZiBUdWlIaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnQuY29tcG9uZW50SG92ZXJlZCQubmV4dChob3ZlcmVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgd3JhcHBlciBwb3NpdGlvbi5cbiAgICAgKiBTdHlsZXMgYXJlIHNldCBkaXJlY3RseSB0byBhdm9pZCB2aXN1YWwgc2hha2Ugb2YgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vZGUgIT09IGBvdmVyZmxvd2ApIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0T3ZlcmZsb3dTdHlsZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZU1vYmlsZUNvb3JkaW5hdGVzKCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHBvcnRhbFJlY3QgPSB0aGlzLmhpbnRzSG9zdC5jbGllbnRSZWN0O1xuICAgICAgICBjb25zdCB0b29sdGlwID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0b29sdGlwO1xuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGlzSG9zdExvbmcgPSBob3N0UmVjdC53aWR0aCA+IEFSUk9XSEVBRF9PRkZTRVQgKiAyO1xuICAgICAgICBjb25zdCBkaXJlY3Rpb25zOiBUdWlEaXJlY3Rpb25bXSA9IFtcbiAgICAgICAgICAgIGBsZWZ0YCxcbiAgICAgICAgICAgIGByaWdodGAsXG4gICAgICAgICAgICBgYm90dG9tLWxlZnRgLFxuICAgICAgICAgICAgYGJvdHRvbS1yaWdodGAsXG4gICAgICAgICAgICBgYm90dG9tLW1pZGRsZWAsXG4gICAgICAgICAgICBgdG9wLWxlZnRgLFxuICAgICAgICAgICAgYHRvcC1yaWdodGAsXG4gICAgICAgICAgICBgdG9wLW1pZGRsZWAsXG4gICAgICAgIF07XG5cbiAgICAgICAgbGV0IHRvcCA9IDA7XG4gICAgICAgIGxldCBsZWZ0ID0gMDtcbiAgICAgICAgbGV0IHtkaXJlY3Rpb259ID0gdGhpcy5oaW50O1xuXG4gICAgICAgIGNvbnN0IGhvcml6b250YWxUb3AgPVxuICAgICAgICAgICAgaG9zdFJlY3QudG9wICsgaG9zdFJlY3QuaGVpZ2h0IC8gMiAtIHRvb2x0aXBSZWN0LmhlaWdodCAvIDIgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbExlZnQgPVxuICAgICAgICAgICAgaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gU1BBQ0UgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxSaWdodCA9IGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCArIFNQQUNFIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wID0gaG9zdFJlY3QudG9wIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxSaWdodCA9IGlzSG9zdExvbmdcbiAgICAgICAgICAgID8gaG9zdFJlY3QubGVmdCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gQVJST1dIRUFEX09GRlNFVCAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxMZWZ0ID0gaXNIb3N0TG9uZ1xuICAgICAgICAgICAgPyBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggKyBob3N0UmVjdC53aWR0aCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0IC1cbiAgICAgICAgICAgICAgdG9vbHRpcFJlY3Qud2lkdGggK1xuICAgICAgICAgICAgICBob3N0UmVjdC53aWR0aCAvIDIgK1xuICAgICAgICAgICAgICBBUlJPV0hFQURfT0ZGU0VUIC1cbiAgICAgICAgICAgICAgcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbE1pZGRsZSA9XG4gICAgICAgICAgICBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gcG9ydGFsUmVjdC5sZWZ0O1xuXG4gICAgICAgIGRpcmVjdGlvbnMuc3BsaWNlKGRpcmVjdGlvbnMuaW5kZXhPZihkaXJlY3Rpb24pLCAxKTtcblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc3RhbnQtY29uZGl0aW9uXG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRpcmVjdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgYGxlZnRgOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3Jpem9udGFsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gaG9yaXpvbnRhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgYHJpZ2h0YDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9yaXpvbnRhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvcml6b250YWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBgdG9wLXJpZ2h0YDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGB0b3AtbGVmdGA6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGBib3R0b20tcmlnaHRgOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgYGJvdHRvbS1sZWZ0YDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgYGJvdHRvbS1taWRkbGVgOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIGB0b3AtbWlkZGxlYDpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbE1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsRml0ID1cbiAgICAgICAgICAgICAgICB0b3AgKyBwb3J0YWxSZWN0LnRvcCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgdG9wICsgdG9vbHRpcFJlY3QuaGVpZ2h0ICsgU1BBQ0UgKyBwb3J0YWxSZWN0LnRvcCA8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbEZpdCA9XG4gICAgICAgICAgICAgICAgbGVmdCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgbGVmdCArIHRvb2x0aXBSZWN0LndpZHRoICsgU1BBQ0UgKyBwb3J0YWxSZWN0LmxlZnQgPCBwb3J0YWxSZWN0LndpZHRoO1xuXG4gICAgICAgICAgICBpZiAoZGlyZWN0aW9ucy5sZW5ndGggPT09IDAgfHwgKHZlcnRpY2FsRml0ICYmIGhvcml6b250YWxGaXQpKSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpcmVjdGlvbiA9IHZlcnRpY2FsRml0XG4gICAgICAgICAgICAgICAgPyByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWxbZGlyZWN0aW9uXVxuICAgICAgICAgICAgICAgIDogcmV2ZXJzZURpcmVjdGlvbnNWZXJ0aWNhbFtkaXJlY3Rpb25dO1xuICAgICAgICAgICAgZGlyZWN0aW9uID1cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb25zLnNwbGljZShkaXJlY3Rpb25zLmluZGV4T2YoZGlyZWN0aW9uKSwgMSlbMF0gfHwgZGlyZWN0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgc3R5bGUudG9wID0gcHgodG9wKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKGBkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbmAsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNb2JpbGVDb29yZGluYXRlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgcG9ydGFsUmVjdCA9IHRoaXMuaGludHNIb3N0LmNsaWVudFJlY3Q7XG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRvb2x0aXA7XG4gICAgICAgIGNvbnN0IHRvb2x0aXBSZWN0ID0gdG9vbHRpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgdmVydGljYWxUb3AgPSBob3N0UmVjdC50b3AgLSB0b29sdGlwUmVjdC5oZWlnaHQgLSBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wRml0ID1cbiAgICAgICAgICAgIHZlcnRpY2FsVG9wICsgcG9ydGFsUmVjdC50b3AgPiBTUEFDRSAmJlxuICAgICAgICAgICAgaG9zdFJlY3QudG9wIDwgdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQm90dG9tRml0ID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSA+IDAgJiZcbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSArIDIgKiBTUEFDRSArIHRvb2x0aXBSZWN0LmhlaWdodCA8IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPVxuICAgICAgICAgICAgKHRoaXMuaGludC5kaXJlY3Rpb24uaW5jbHVkZXMoYHRvcGApICYmIHZlcnRpY2FsVG9wRml0KSB8fCAhdmVydGljYWxCb3R0b21GaXRcbiAgICAgICAgICAgICAgICA/IGB0b3BgXG4gICAgICAgICAgICAgICAgOiBgYm90dG9tYDtcbiAgICAgICAgY29uc3QgYXR0ZW1wdGVkTGVmdCA9XG4gICAgICAgICAgICBwb3J0YWxSZWN0LmxlZnQgKyBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyO1xuICAgICAgICBjb25zdCBsZWZ0ID0gTWF0aC5tYXgoXG4gICAgICAgICAgICBhdHRlbXB0ZWRMZWZ0ICsgdG9vbHRpcFJlY3Qud2lkdGggKyBTUEFDRSA+IHBvcnRhbFJlY3QucmlnaHRcbiAgICAgICAgICAgICAgICA/IHBvcnRhbFJlY3QucmlnaHQgLSBTUEFDRSAtIHRvb2x0aXBSZWN0LndpZHRoXG4gICAgICAgICAgICAgICAgOiBhdHRlbXB0ZWRMZWZ0LFxuICAgICAgICAgICAgU1BBQ0UgKiAyLFxuICAgICAgICApO1xuXG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcbiAgICAgICAgc3R5bGUudG9wID0gZGlyZWN0aW9uID09PSBgdG9wYCA/IHB4KHZlcnRpY2FsVG9wKSA6IHB4KHZlcnRpY2FsQm90dG9tKTtcblxuICAgICAgICBpZiAodGhpcy5hcnJvdykge1xuICAgICAgICAgICAgdGhpcy5hcnJvdy5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSBweChcbiAgICAgICAgICAgICAgICBob3N0UmVjdC5sZWZ0IDw9IFNQQUNFICogMiAmJiBob3N0UmVjdC53aWR0aCA+IEFSUk9XX09GRlNFVCAqIDJcbiAgICAgICAgICAgICAgICAgICAgPyBBUlJPV19PRkZTRVRcbiAgICAgICAgICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gbGVmdCAtIEFSUk9XX1NJWkUgLyAyLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKGBkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbmAsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRPdmVyZmxvd1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHN0eWxlLnRvcCA9IHB4KGhvc3RSZWN0LnRvcCAtIHdpbmRvdy5pbm5lckhlaWdodCAtIFRPUF9QQURESU5HIC0gQk9SREVSX1dJRFRIKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGhvc3RSZWN0LmxlZnQgLSBMRUZUX1BBRERJTkcgLSBCT1JERVJfV0lEVEgpO1xuICAgICAgICBzdHlsZS53aWR0aCA9IHB4KGhvc3RSZWN0LndpZHRoICsgTEVGVF9QQURESU5HICogMiArIEJPUkRFUl9XSURUSCAqIDIpO1xuICAgIH1cbn1cbiJdfQ==
279
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsSUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLElBQU0sWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2QixJQUFNLFlBQVksR0FBRyxF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IjpbImltcG9ydCB7QW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE5nWm9uZSxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUUsIFdJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIHB4LFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlab25lZnJlZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge0Fic3RyYWN0VHVpSGludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHt0dWlGYWRlSW59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7VHVpUG9pbnRlckhpbnREaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvcG9pbnRlci1oaW50JztcbmltcG9ydCB7VHVpTWVkaWF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlMsIFRVSV9NRURJQX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpRGlyZWN0aW9uLCBUdWlIaW50TW9kZVR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpSXNNb2JpbGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlIaW50c0hvc3RDb21wb25lbnR9IGZyb20gJy4uL2hpbnRzLWhvc3QuY29tcG9uZW50JztcblxuY29uc3QgU1BBQ0UgPSA4O1xuY29uc3QgQk9SREVSX1dJRFRIID0gMTtcbmNvbnN0IExFRlRfUEFERElORyA9IDE2O1xuY29uc3QgVE9QX1BBRERJTkcgPSAxMjtcbmNvbnN0IEFSUk9XX1NJWkUgPSA4O1xuY29uc3QgQVJST1dfT0ZGU0VUID0gMTY7XG5jb25zdCBBUlJPV0hFQURfT0ZGU0VUID0gQVJST1dfT0ZGU0VUICsgKEFSUk9XX1NJWkUgKiBNYXRoLnNxcnQoMikpIC8gMjtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zVmVydGljYWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogJ2JvdHRvbS1sZWZ0JyxcbiAgICAndG9wLXJpZ2h0JzogJ2JvdHRvbS1yaWdodCcsXG4gICAgJ2JvdHRvbS1sZWZ0JzogJ3RvcC1sZWZ0JyxcbiAgICAnYm90dG9tLXJpZ2h0JzogJ3RvcC1yaWdodCcsXG4gICAgbGVmdDogJ3JpZ2h0JyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgICd0b3AtbWlkZGxlJzogJ2JvdHRvbS1taWRkbGUnLFxuICAgICdib3R0b20tbWlkZGxlJzogJ3RvcC1taWRkbGUnLFxufTtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zSG9yaXpvbnRhbDoge1trZXkgaW4gVHVpRGlyZWN0aW9uXTogVHVpRGlyZWN0aW9ufSA9IHtcbiAgICAndG9wLWxlZnQnOiAndG9wLXJpZ2h0JyxcbiAgICAndG9wLXJpZ2h0JzogJ3RvcC1sZWZ0JyxcbiAgICAnYm90dG9tLWxlZnQnOiAnYm90dG9tLXJpZ2h0JyxcbiAgICAnYm90dG9tLXJpZ2h0JzogJ2JvdHRvbS1sZWZ0JyxcbiAgICBsZWZ0OiAncmlnaHQnLFxuICAgIHJpZ2h0OiAnbGVmdCcsXG4gICAgJ3RvcC1taWRkbGUnOiAndG9wLW1pZGRsZScsXG4gICAgJ2JvdHRvbS1taWRkbGUnOiAnYm90dG9tLW1pZGRsZScsXG59O1xuXG4vLyBUT0RPOiBjb25zaWRlciBhYnN0cmFjdGluZyBVSSBhbmQgbW92ZSB0byBDREssIHNwbGl0IGhpbnQgYW5kIG92ZXJmbG93XG4vLyBBbWJpZW50IHR5cGUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBkeW5hbWljIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzIzMzk1XG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaGludC1ib3hbaGludF0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaW50LWJveC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9oaW50LWJveC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW5dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlIaW50Qm94Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKCdhcnJvdycpXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcnJvdz86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICByZWFkb25seSBhbmltYXRpb24gPSB7dmFsdWU6ICcnLCAuLi50aGlzLm9wdGlvbnN9IGFzIGNvbnN0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfTUVESUEpIHByaXZhdGUgcmVhZG9ubHkgbWVkaWE6IFR1aU1lZGlhLFxuICAgICAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gVHVpSGludHNIb3N0Q29tcG9uZW50KSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaW50c0hvc3Q6IFR1aUhpbnRzSG9zdENvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChQT0xZTU9SUEhFVVNfQ09OVEVYVClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PEFic3RyYWN0VHVpSGludD4sXG4gICAgKSB7XG4gICAgICAgIGFuaW1hdGlvbkZyYW1lJFxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUobmdab25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxjdWxhdGVQb3NpdGlvbigpKTtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOiBBYnN0cmFjdFR1aUhpbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LiRpbXBsaWNpdDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3VudG91Y2hhYmxlJylcbiAgICBnZXQgaXNVbnRvdWNoYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludCBpbnN0YW5jZW9mIFR1aVBvaW50ZXJIaW50RGlyZWN0aXZlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLW1vZGUnKVxuICAgIGdldCBtb2RlKCk6IFR1aUhpbnRNb2RlVCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Lm1vZGU7XG4gICAgfVxuXG4gICAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNNb2JpbGUodGhpcy53aW5kb3dSZWYsIHRoaXMubWVkaWEpO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhpbnQgaW5zdGFuY2VvZiBUdWlIaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnQuY29tcG9uZW50SG92ZXJlZCQubmV4dChob3ZlcmVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgd3JhcHBlciBwb3NpdGlvbi5cbiAgICAgKiBTdHlsZXMgYXJlIHNldCBkaXJlY3RseSB0byBhdm9pZCB2aXN1YWwgc2hha2Ugb2YgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vZGUgIT09ICdvdmVyZmxvdycpIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0T3ZlcmZsb3dTdHlsZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZU1vYmlsZUNvb3JkaW5hdGVzKCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHBvcnRhbFJlY3QgPSB0aGlzLmhpbnRzSG9zdC5jbGllbnRSZWN0O1xuICAgICAgICBjb25zdCB0b29sdGlwID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0b29sdGlwO1xuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGlzSG9zdExvbmcgPSBob3N0UmVjdC53aWR0aCA+IEFSUk9XSEVBRF9PRkZTRVQgKiAyO1xuICAgICAgICBjb25zdCBkaXJlY3Rpb25zOiBUdWlEaXJlY3Rpb25bXSA9IFtcbiAgICAgICAgICAgICdsZWZ0JyxcbiAgICAgICAgICAgICdyaWdodCcsXG4gICAgICAgICAgICAnYm90dG9tLWxlZnQnLFxuICAgICAgICAgICAgJ2JvdHRvbS1yaWdodCcsXG4gICAgICAgICAgICAnYm90dG9tLW1pZGRsZScsXG4gICAgICAgICAgICAndG9wLWxlZnQnLFxuICAgICAgICAgICAgJ3RvcC1yaWdodCcsXG4gICAgICAgICAgICAndG9wLW1pZGRsZScsXG4gICAgICAgIF07XG5cbiAgICAgICAgbGV0IHRvcCA9IDA7XG4gICAgICAgIGxldCBsZWZ0ID0gMDtcbiAgICAgICAgbGV0IHtkaXJlY3Rpb259ID0gdGhpcy5oaW50O1xuXG4gICAgICAgIGNvbnN0IGhvcml6b250YWxUb3AgPVxuICAgICAgICAgICAgaG9zdFJlY3QudG9wICsgaG9zdFJlY3QuaGVpZ2h0IC8gMiAtIHRvb2x0aXBSZWN0LmhlaWdodCAvIDIgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbExlZnQgPVxuICAgICAgICAgICAgaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gU1BBQ0UgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxSaWdodCA9IGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCArIFNQQUNFIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wID0gaG9zdFJlY3QudG9wIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxSaWdodCA9IGlzSG9zdExvbmdcbiAgICAgICAgICAgID8gaG9zdFJlY3QubGVmdCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gQVJST1dIRUFEX09GRlNFVCAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxMZWZ0ID0gaXNIb3N0TG9uZ1xuICAgICAgICAgICAgPyBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggKyBob3N0UmVjdC53aWR0aCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0IC1cbiAgICAgICAgICAgICAgdG9vbHRpcFJlY3Qud2lkdGggK1xuICAgICAgICAgICAgICBob3N0UmVjdC53aWR0aCAvIDIgK1xuICAgICAgICAgICAgICBBUlJPV0hFQURfT0ZGU0VUIC1cbiAgICAgICAgICAgICAgcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbE1pZGRsZSA9XG4gICAgICAgICAgICBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gcG9ydGFsUmVjdC5sZWZ0O1xuXG4gICAgICAgIGRpcmVjdGlvbnMuc3BsaWNlKGRpcmVjdGlvbnMuaW5kZXhPZihkaXJlY3Rpb24pLCAxKTtcblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc3RhbnQtY29uZGl0aW9uXG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRpcmVjdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3Jpem9udGFsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gaG9yaXpvbnRhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9yaXpvbnRhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvcml6b250YWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndG9wLXJpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AtbGVmdCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdib3R0b20tcmlnaHQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbS1sZWZ0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbS1taWRkbGUnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AtbWlkZGxlJzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbE1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsRml0ID1cbiAgICAgICAgICAgICAgICB0b3AgKyBwb3J0YWxSZWN0LnRvcCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgdG9wICsgdG9vbHRpcFJlY3QuaGVpZ2h0ICsgU1BBQ0UgKyBwb3J0YWxSZWN0LnRvcCA8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbEZpdCA9XG4gICAgICAgICAgICAgICAgbGVmdCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgbGVmdCArIHRvb2x0aXBSZWN0LndpZHRoICsgU1BBQ0UgKyBwb3J0YWxSZWN0LmxlZnQgPCBwb3J0YWxSZWN0LndpZHRoO1xuXG4gICAgICAgICAgICBpZiAoZGlyZWN0aW9ucy5sZW5ndGggPT09IDAgfHwgKHZlcnRpY2FsRml0ICYmIGhvcml6b250YWxGaXQpKSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpcmVjdGlvbiA9IHZlcnRpY2FsRml0XG4gICAgICAgICAgICAgICAgPyByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWxbZGlyZWN0aW9uXVxuICAgICAgICAgICAgICAgIDogcmV2ZXJzZURpcmVjdGlvbnNWZXJ0aWNhbFtkaXJlY3Rpb25dO1xuICAgICAgICAgICAgZGlyZWN0aW9uID1cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb25zLnNwbGljZShkaXJlY3Rpb25zLmluZGV4T2YoZGlyZWN0aW9uKSwgMSlbMF0gfHwgZGlyZWN0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgc3R5bGUudG9wID0gcHgodG9wKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKCdkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbicsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNb2JpbGVDb29yZGluYXRlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgcG9ydGFsUmVjdCA9IHRoaXMuaGludHNIb3N0LmNsaWVudFJlY3Q7XG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRvb2x0aXA7XG4gICAgICAgIGNvbnN0IHRvb2x0aXBSZWN0ID0gdG9vbHRpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgdmVydGljYWxUb3AgPSBob3N0UmVjdC50b3AgLSB0b29sdGlwUmVjdC5oZWlnaHQgLSBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wRml0ID1cbiAgICAgICAgICAgIHZlcnRpY2FsVG9wICsgcG9ydGFsUmVjdC50b3AgPiBTUEFDRSAmJlxuICAgICAgICAgICAgaG9zdFJlY3QudG9wIDwgdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQm90dG9tRml0ID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSA+IDAgJiZcbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSArIDIgKiBTUEFDRSArIHRvb2x0aXBSZWN0LmhlaWdodCA8IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPVxuICAgICAgICAgICAgKHRoaXMuaGludC5kaXJlY3Rpb24uaW5jbHVkZXMoJ3RvcCcpICYmIHZlcnRpY2FsVG9wRml0KSB8fCAhdmVydGljYWxCb3R0b21GaXRcbiAgICAgICAgICAgICAgICA/ICd0b3AnXG4gICAgICAgICAgICAgICAgOiAnYm90dG9tJztcbiAgICAgICAgY29uc3QgYXR0ZW1wdGVkTGVmdCA9XG4gICAgICAgICAgICBwb3J0YWxSZWN0LmxlZnQgKyBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyO1xuICAgICAgICBjb25zdCBsZWZ0ID0gTWF0aC5tYXgoXG4gICAgICAgICAgICBhdHRlbXB0ZWRMZWZ0ICsgdG9vbHRpcFJlY3Qud2lkdGggKyBTUEFDRSA+IHBvcnRhbFJlY3QucmlnaHRcbiAgICAgICAgICAgICAgICA/IHBvcnRhbFJlY3QucmlnaHQgLSBTUEFDRSAtIHRvb2x0aXBSZWN0LndpZHRoXG4gICAgICAgICAgICAgICAgOiBhdHRlbXB0ZWRMZWZ0LFxuICAgICAgICAgICAgU1BBQ0UgKiAyLFxuICAgICAgICApO1xuXG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcbiAgICAgICAgc3R5bGUudG9wID0gZGlyZWN0aW9uID09PSAndG9wJyA/IHB4KHZlcnRpY2FsVG9wKSA6IHB4KHZlcnRpY2FsQm90dG9tKTtcblxuICAgICAgICBpZiAodGhpcy5hcnJvdykge1xuICAgICAgICAgICAgdGhpcy5hcnJvdy5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSBweChcbiAgICAgICAgICAgICAgICBob3N0UmVjdC5sZWZ0IDw9IFNQQUNFICogMiAmJiBob3N0UmVjdC53aWR0aCA+IEFSUk9XX09GRlNFVCAqIDJcbiAgICAgICAgICAgICAgICAgICAgPyBBUlJPV19PRkZTRVRcbiAgICAgICAgICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gbGVmdCAtIEFSUk9XX1NJWkUgLyAyLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKCdkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbicsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRPdmVyZmxvd1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHN0eWxlLnRvcCA9IHB4KGhvc3RSZWN0LnRvcCAtIHdpbmRvdy5pbm5lckhlaWdodCAtIFRPUF9QQURESU5HIC0gQk9SREVSX1dJRFRIKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGhvc3RSZWN0LmxlZnQgLSBMRUZUX1BBRERJTkcgLSBCT1JERVJfV0lEVEgpO1xuICAgICAgICBzdHlsZS53aWR0aCA9IHB4KGhvc3RSZWN0LndpZHRoICsgTEVGVF9QQURESU5HICogMiArIEJPUkRFUl9XSURUSCAqIDIpO1xuICAgIH1cbn1cbiJdfQ==
@@ -24,12 +24,12 @@ var TuiHintsHostComponent = /** @class */ (function () {
24
24
  ]; };
25
25
  TuiHintsHostComponent = __decorate([
26
26
  Component({
27
- selector: "tui-hints-host",
27
+ selector: 'tui-hints-host',
28
28
  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",
29
29
  changeDetection: ChangeDetectionStrategy.OnPush,
30
30
  animations: [TUI_PARENT_ANIMATION],
31
31
  host: {
32
- 'aria-live': "polite",
32
+ 'aria-live': 'polite',
33
33
  },
34
34
  styles: [":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]
35
35
  }),
@@ -39,4 +39,4 @@ var TuiHintsHostComponent = /** @class */ (function () {
39
39
  return TuiHintsHostComponent;
40
40
  }());
41
41
  export { TuiHintsHostComponent };
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludHMtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hpbnRzLWhvc3QvIiwic291cmNlcyI6WyJoaW50cy1ob3N0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQVlsRTtJQUdJLCtCQUN5QyxVQUFtQyxFQUN2QyxNQUFzQztRQURsQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFnQztRQUpsRSxjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBS2pFLENBQUM7SUFFSixzQkFBSSw2Q0FBVTthQUFkO1lBQ0ksT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pFLENBQUM7OztPQUFBOztnQkFOb0QsVUFBVSx1QkFBMUQsTUFBTSxTQUFDLFVBQVU7Z0JBQ3VCLFVBQVUsdUJBQWxELE1BQU0sU0FBQyxjQUFjOztJQUxqQixxQkFBcUI7UUFWakMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQiw0U0FBeUM7WUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFDbEMsSUFBSSxFQUFFO2dCQUNGLFdBQVcsRUFBRSxRQUFRO2FBQ3hCOztTQUNKLENBQUM7UUFLTyxXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtPQUxsQixxQkFBcUIsQ0FXakM7SUFBRCw0QkFBQztDQUFBLEFBWEQsSUFXQztTQVhZLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX1BBUkVOVF9BTklNQVRJT059IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpSGludFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlIaW50Qm94Q29tcG9uZW50fSBmcm9tICcuL2hpbnQtYm94L2hpbnQtYm94LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWhpbnRzLWhvc3RgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9oaW50cy1ob3N0LnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2hpbnRzLWhvc3Quc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFtUVUlfUEFSRU5UX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnYXJpYS1saXZlJzogYHBvbGl0ZWAsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludHNIb3N0Q29tcG9uZW50IHtcbiAgICByZWFkb25seSBjb21wb25lbnQgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aUhpbnRCb3hDb21wb25lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlIaW50U2VydmljZSkgcmVhZG9ubHkgaGludHMkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFR1aUhpbnRbXT4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IGNsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludHMtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hpbnRzLWhvc3QvIiwic291cmNlcyI6WyJoaW50cy1ob3N0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQVlsRTtJQUdJLCtCQUN5QyxVQUFtQyxFQUN2QyxNQUFzQztRQURsQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFnQztRQUpsRSxjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBS2pFLENBQUM7SUFFSixzQkFBSSw2Q0FBVTthQUFkO1lBQ0ksT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pFLENBQUM7OztPQUFBOztnQkFOb0QsVUFBVSx1QkFBMUQsTUFBTSxTQUFDLFVBQVU7Z0JBQ3VCLFVBQVUsdUJBQWxELE1BQU0sU0FBQyxjQUFjOztJQUxqQixxQkFBcUI7UUFWakMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQiw0U0FBeUM7WUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFDbEMsSUFBSSxFQUFFO2dCQUNGLFdBQVcsRUFBRSxRQUFRO2FBQ3hCOztTQUNKLENBQUM7UUFLTyxXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtPQUxsQixxQkFBcUIsQ0FXakM7SUFBRCw0QkFBQztDQUFBLEFBWEQsSUFXQztTQVhZLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX1BBUkVOVF9BTklNQVRJT059IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpSGludFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlIaW50Qm94Q29tcG9uZW50fSBmcm9tICcuL2hpbnQtYm94L2hpbnQtYm94LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhpbnRzLWhvc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaW50cy1ob3N0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2hpbnRzLWhvc3Quc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFtUVUlfUEFSRU5UX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnYXJpYS1saXZlJzogJ3BvbGl0ZScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludHNIb3N0Q29tcG9uZW50IHtcbiAgICByZWFkb25seSBjb21wb25lbnQgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aUhpbnRCb3hDb21wb25lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlIaW50U2VydmljZSkgcmVhZG9ubHkgaGludHMkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFR1aUhpbnRbXT4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IGNsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG59XG4iXX0=
@@ -5,10 +5,10 @@ var TuiHostedDropdownConnectorDirective = /** @class */ (function () {
5
5
  }
6
6
  TuiHostedDropdownConnectorDirective = __decorate([
7
7
  Directive({
8
- selector: "[tuiHostedDropdownHost]",
8
+ selector: '[tuiHostedDropdownHost]',
9
9
  })
10
10
  ], TuiHostedDropdownConnectorDirective);
11
11
  return TuiHostedDropdownConnectorDirective;
12
12
  }());
13
13
  export { TuiHostedDropdownConnectorDirective };
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hvc3RlZC1kcm9wZG93bi8iLCJzb3VyY2VzIjpbImhvc3RlZC1kcm9wZG93bi1jb25uZWN0b3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3hDO0lBQUE7SUFBa0QsQ0FBQztJQUF0QyxtQ0FBbUM7UUFIL0MsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHlCQUF5QjtTQUN0QyxDQUFDO09BQ1csbUNBQW1DLENBQUc7SUFBRCwwQ0FBQztDQUFBLEFBQW5ELElBQW1EO1NBQXRDLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGBbdHVpSG9zdGVkRHJvcGRvd25Ib3N0XWAsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUhvc3RlZERyb3Bkb3duQ29ubmVjdG9yRGlyZWN0aXZlIHt9XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLWNvbm5lY3Rvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2hvc3RlZC1kcm9wZG93bi8iLCJzb3VyY2VzIjpbImhvc3RlZC1kcm9wZG93bi1jb25uZWN0b3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3hDO0lBQUE7SUFBa0QsQ0FBQztJQUF0QyxtQ0FBbUM7UUFIL0MsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHlCQUF5QjtTQUN0QyxDQUFDO09BQ1csbUNBQW1DLENBQUc7SUFBRCwwQ0FBQztDQUFBLEFBQW5ELElBQW1EO1NBQXRDLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpSG9zdGVkRHJvcGRvd25Ib3N0XScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUhvc3RlZERyb3Bkb3duQ29ubmVjdG9yRGlyZWN0aXZlIHt9XG4iXX0=
@@ -9,7 +9,7 @@ var TuiHostedDropdownComponent = /** @class */ (function () {
9
9
  function TuiHostedDropdownComponent(elementRef, controller) {
10
10
  this.elementRef = elementRef;
11
11
  this.controller = controller;
12
- this.content = "";
12
+ this.content = '';
13
13
  this.canOpen = true;
14
14
  this.open = false;
15
15
  this.openChange = new EventEmitter();
@@ -168,7 +168,7 @@ var TuiHostedDropdownComponent = /** @class */ (function () {
168
168
  ContentChild(TuiHostedDropdownConnectorDirective, { read: ElementRef })
169
169
  ], TuiHostedDropdownComponent.prototype, "dropdownHost", void 0);
170
170
  __decorate([
171
- ViewChild("wrapper", { read: ElementRef })
171
+ ViewChild('wrapper', { read: ElementRef })
172
172
  ], TuiHostedDropdownComponent.prototype, "wrapper", void 0);
173
173
  __decorate([
174
174
  ViewChild(TuiDropdownDirective)
@@ -192,24 +192,24 @@ var TuiHostedDropdownComponent = /** @class */ (function () {
192
192
  Output()
193
193
  ], TuiHostedDropdownComponent.prototype, "focusedChange", void 0);
194
194
  __decorate([
195
- HostBinding("class._hosted_dropdown_focused")
195
+ HostBinding('class._hosted_dropdown_focused')
196
196
  ], TuiHostedDropdownComponent.prototype, "focused", null);
197
197
  __decorate([
198
- HostListener("focusin", ["$event.target"])
198
+ HostListener('focusin', ['$event.target'])
199
199
  ], TuiHostedDropdownComponent.prototype, "onFocusIn", null);
200
200
  __decorate([
201
- HostListener("click", ["$event.target"])
201
+ HostListener('click', ['$event.target'])
202
202
  ], TuiHostedDropdownComponent.prototype, "onClick", null);
203
203
  __decorate([
204
- HostListener("keydown.esc", ["$event"])
204
+ HostListener('keydown.esc', ['$event'])
205
205
  ], TuiHostedDropdownComponent.prototype, "onKeyDownEsc", null);
206
206
  __decorate([
207
- HostListener("keydown.arrowDown", ["$event", "true"]),
208
- HostListener("keydown.arrowUp", ["$event", "false"])
207
+ HostListener('keydown.arrowDown', ['$event', 'true']),
208
+ HostListener('keydown.arrowUp', ['$event', 'false'])
209
209
  ], TuiHostedDropdownComponent.prototype, "onArrow", null);
210
210
  TuiHostedDropdownComponent = TuiHostedDropdownComponent_1 = __decorate([
211
211
  Component({
212
- selector: "tui-hosted-dropdown",
212
+ selector: 'tui-hosted-dropdown',
213
213
  template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"t-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",
214
214
  changeDetection: ChangeDetectionStrategy.OnPush,
215
215
  providers: [
@@ -227,4 +227,4 @@ var TuiHostedDropdownComponent = /** @class */ (function () {
227
227
  return TuiHostedDropdownComponent;
228
228
  }());
229
229
  export { TuiHostedDropdownComponent };
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaG9zdGVkLWRyb3Bkb3duLyIsInNvdXJjZXMiOlsiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsZ0JBQWdCLEVBQ2hCLDJCQUEyQixFQUczQixjQUFjLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFDSCw0QkFBNEIsRUFDNUIsK0JBQStCLEVBQy9CLDhCQUE4QixHQUNqQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUdoRSxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQWUxRjtJQTRCSSxvQ0FDeUMsVUFBc0IsRUFFbEQsVUFBMEM7UUFGZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBRWxELGVBQVUsR0FBVixVQUFVLENBQWdDO1FBbkJ2RCxZQUFPLEdBQXdFLEVBQUUsQ0FBQztRQUlsRixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdKLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBR3pDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJ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QUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckQsWUFBWSxDQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDOzZEQUdwRDtJQS9GUSwwQkFBMEI7UUFidEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHFCQUFxQjtZQUMvQixpcUNBQThDO1lBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSw0QkFBMEIsRUFBMUIsQ0FBMEIsQ0FBQztpQkFDNUQ7Z0JBQ0QsNEJBQTRCO2FBQy9COztTQUNKLENBQUM7UUE4Qk8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQTtPQTlCbkMsMEJBQTBCLENBNk10QztJQUFELGlDQUFDO0NBQUEsQUE3TUQsSUE2TUM7U0E3TVksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgZ2V0Q2xvc2VzdEZvY3VzYWJsZSxcbiAgICBpc0VsZW1lbnRFZGl0YWJsZSxcbiAgICBpc05hdGl2ZUZvY3VzZWRJbixcbiAgICBpc05hdGl2ZUtleWJvYXJkRm9jdXNhYmxlLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aURyb3Bkb3duRGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7XG4gICAgRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBUVUlfRFJPUERPV05fV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aURyb3Bkb3duQ29udHJvbGxlckRpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi1jb250cm9sbGVyJztcbmltcG9ydCB7aXNFZGl0aW5nS2V5fSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlIb3N0ZWREcm9wZG93bkNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9ob3N0ZWQtZHJvcGRvd24tY29ubmVjdG9yLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWhvc3RlZC1kcm9wZG93bmAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL2hvc3RlZC1kcm9wZG93bi50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9ob3N0ZWQtZHJvcGRvd24uc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIERST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3Ige1xuICAgIEBDb250ZW50Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duSG9zdD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZChgd3JhcHBlcmAsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpRHJvcGRvd25EaXJlY3RpdmUpXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkRpcmVjdGl2ZT86IFR1aURyb3Bkb3duRGlyZWN0aXZlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlBY3RpdmVab25lRGlyZWN0aXZlPj4gPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjYW5PcGVuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBvcGVuQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgZm9jdXNlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlEcm9wZG93bkNvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgKSB7fVxuXG4gICAgZ2V0IGhvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93bkhvc3RcbiAgICAgICAgICAgID8gdGhpcy5kcm9wZG93bkhvc3QubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZHJvcGRvd24oKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmRyb3Bkb3duRGlyZWN0aXZlIHx8IHRoaXMuZHJvcGRvd25EaXJlY3RpdmUuZHJvcGRvd25Cb3hSZWYgPT09IG51bGxcbiAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgOiB0aGlzLmRyb3Bkb3duRGlyZWN0aXZlLmRyb3Bkb3duQm94UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gaXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSh0aGlzLmhvc3QpXG4gICAgICAgICAgICA/IHRoaXMuaG9zdFxuICAgICAgICAgICAgOiBnZXRDbG9zZXN0Rm9jdXNhYmxlKHRoaXMuaG9zdCwgZmFsc2UsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9ob3N0ZWRfZHJvcGRvd25fZm9jdXNlZGApXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLmhvc3QpIHx8XG4gICAgICAgICAgICAodGhpcy5vcGVuICYmICEhdGhpcy53cmFwcGVyICYmIGlzTmF0aXZlRm9jdXNlZEluKHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50KSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBmb2N1c2luYCwgW2AkZXZlbnQudGFyZ2V0YF0pXG4gICAgb25Gb2N1c0luKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMuZHJvcGRvd25Ib3N0XG4gICAgICAgICAgICA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGlmICghaG9zdC5jb250YWlucyh0YXJnZXQpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgY2xpY2tgLCBbYCRldmVudC50YXJnZXRgXSlcbiAgICBvbkNsaWNrKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmhvc3Q7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duSG9zdCA9IHRoaXMuZHJvcGRvd25Ib3N0ID8gdGhpcy5kcm9wZG93bkhvc3QubmF0aXZlRWxlbWVudCA6IGhvc3Q7XG5cbiAgICAgICAgaWYgKCF0aGlzLmhvc3RFZGl0YWJsZSAmJiBkcm9wZG93bkhvc3QuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKCF0aGlzLm9wZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihga2V5ZG93bi5lc2NgLCBbYCRldmVudGBdKVxuICAgIG9uS2V5RG93bkVzYyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNhbk9wZW4gfHwgIXRoaXMub3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGtleWRvd24uYXJyb3dEb3duYCwgW2AkZXZlbnRgLCBgdHJ1ZWBdKVxuICAgIEBIb3N0TGlzdGVuZXIoYGtleWRvd24uYXJyb3dVcGAsIFtgJGV2ZW50YCwgYGZhbHNlYF0pXG4gICAgb25BcnJvdyhldmVudDogS2V5Ym9hcmRFdmVudCwgZG93bjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzRHJvcGRvd24oZXZlbnQsIGRvd24pO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bih7a2V5LCB0YXJnZXQsIGRlZmF1bHRQcmV2ZW50ZWR9OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFkZWZhdWx0UHJldmVudGVkICYmXG4gICAgICAgICAgICBpc0VkaXRpbmdLZXkoa2V5KSAmJlxuICAgICAgICAgICAgdGhpcy5ob3N0RWRpdGFibGUgJiZcbiAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICB0YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgICAgICAgIWlzRWxlbWVudEVkaXRhYmxlKHRhcmdldClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzSG9zdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3RpdmVab25lKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIWFjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSG9zdE9ic2N1cmVkKG9ic2N1cmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChvYnNjdXJlZCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVPcGVuKG9wZW46IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKG9wZW4gJiYgIXRoaXMuY2FuT3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuID0gb3BlbjtcbiAgICAgICAgdGhpcy5vcGVuQ2hhbmdlLmVtaXQob3Blbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaG9zdEVkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuaG9zdDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICByZXR1cm4gaG9zdCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGlzRWxlbWVudEVkaXRhYmxlKGhvc3QpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNEcm9wZG93bihldmVudDogS2V5Ym9hcmRFdmVudCwgZmlyc3Q6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaG9zdCB8fFxuICAgICAgICAgICAgIShob3N0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHx8XG4gICAgICAgICAgICAhKGV2ZW50LnRhcmdldCBpbnN0YW5jZW9mIE5vZGUpIHx8XG4gICAgICAgICAgICAhaG9zdC5jb250YWlucyhldmVudC50YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMud3JhcHBlciB8fFxuICAgICAgICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgICAgICAgdGhpcy5kcm9wZG93biA9PT0gbnVsbCB8fFxuICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICEodGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKHRydWUpO1xuXG4gICAgICAgICAgICBpZiAoIWlzRWxlbWVudEVkaXRhYmxlKGhvc3QpKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5pdGlhbCA9IGZpcnN0XG4gICAgICAgICAgICA/IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50XG4gICAgICAgICAgICA6IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZztcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlID0gZ2V0Q2xvc2VzdEZvY3VzYWJsZShcbiAgICAgICAgICAgIGluaXRpYWwsXG4gICAgICAgICAgICAhZmlyc3QsXG4gICAgICAgICAgICB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoZm9jdXNhYmxlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZXROYXRpdmVGb2N1c2VkKGZvY3VzYWJsZSk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZURyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5mb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzSG9zdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSG9zdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICBpZiAoaG9zdCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChob3N0LCB0cnVlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNlZENoYW5nZS5lbWl0KGZvY3VzZWQpO1xuICAgIH1cbn1cbiJdfQ==
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaG9zdGVkLWRyb3Bkb3duLyIsInNvdXJjZXMiOlsiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsZ0JBQWdCLEVBQ2hCLDJCQUEyQixFQUczQixjQUFjLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFDSCw0QkFBNEIsRUFDNUIsK0JBQStCLEVBQy9CLDhCQUE4QixHQUNqQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUdoRSxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQWUxRjtJQTRCSSxvQ0FDeUMsVUFBc0IsRUFFbEQsVUFBMEM7UUFGZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBRWxELGVBQVUsR0FBVixVQUFVLENBQWdDO1FBbkJ2RCxZQUFPLEdBQXdFLEVBQUUsQ0FBQztRQUlsRixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBSWYsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdKLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBR3pDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJ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QUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckQsWUFBWSxDQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDOzZEQUdwRDtJQS9GUSwwQkFBMEI7UUFidEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHFCQUFxQjtZQUMvQixpcUNBQThDO1lBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSw0QkFBMEIsRUFBMUIsQ0FBMEIsQ0FBQztpQkFDNUQ7Z0JBQ0QsNEJBQTRCO2FBQy9COztTQUNKLENBQUM7UUE4Qk8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQTtPQTlCbkMsMEJBQTBCLENBNk10QztJQUFELGlDQUFDO0NBQUEsQUE3TUQsSUE2TUM7U0E3TVksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgZ2V0Q2xvc2VzdEZvY3VzYWJsZSxcbiAgICBpc0VsZW1lbnRFZGl0YWJsZSxcbiAgICBpc05hdGl2ZUZvY3VzZWRJbixcbiAgICBpc05hdGl2ZUtleWJvYXJkRm9jdXNhYmxlLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aURyb3Bkb3duRGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7XG4gICAgRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBUVUlfRFJPUERPV05fV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aURyb3Bkb3duQ29udHJvbGxlckRpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi1jb250cm9sbGVyJztcbmltcG9ydCB7aXNFZGl0aW5nS2V5fSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlIb3N0ZWREcm9wZG93bkNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9ob3N0ZWQtZHJvcGRvd24tY29ubmVjdG9yLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhvc3RlZC1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2hvc3RlZC1kcm9wZG93bi50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ob3N0ZWQtZHJvcGRvd24uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIERST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3Ige1xuICAgIEBDb250ZW50Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duSG9zdD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnd3JhcHBlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpRHJvcGRvd25EaXJlY3RpdmUpXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkRpcmVjdGl2ZT86IFR1aURyb3Bkb3duRGlyZWN0aXZlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlBY3RpdmVab25lRGlyZWN0aXZlPj4gPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjYW5PcGVuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBvcGVuQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgZm9jdXNlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlEcm9wZG93bkNvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgKSB7fVxuXG4gICAgZ2V0IGhvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93bkhvc3RcbiAgICAgICAgICAgID8gdGhpcy5kcm9wZG93bkhvc3QubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZHJvcGRvd24oKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmRyb3Bkb3duRGlyZWN0aXZlIHx8IHRoaXMuZHJvcGRvd25EaXJlY3RpdmUuZHJvcGRvd25Cb3hSZWYgPT09IG51bGxcbiAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgOiB0aGlzLmRyb3Bkb3duRGlyZWN0aXZlLmRyb3Bkb3duQm94UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gaXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSh0aGlzLmhvc3QpXG4gICAgICAgICAgICA/IHRoaXMuaG9zdFxuICAgICAgICAgICAgOiBnZXRDbG9zZXN0Rm9jdXNhYmxlKHRoaXMuaG9zdCwgZmFsc2UsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9ob3N0ZWRfZHJvcGRvd25fZm9jdXNlZCcpXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLmhvc3QpIHx8XG4gICAgICAgICAgICAodGhpcy5vcGVuICYmICEhdGhpcy53cmFwcGVyICYmIGlzTmF0aXZlRm9jdXNlZEluKHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50KSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdmb2N1c2luJywgWyckZXZlbnQudGFyZ2V0J10pXG4gICAgb25Gb2N1c0luKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMuZHJvcGRvd25Ib3N0XG4gICAgICAgICAgICA/IHRoaXMuZHJvcGRvd25Ib3N0Lm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGlmICghaG9zdC5jb250YWlucyh0YXJnZXQpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgICBvbkNsaWNrKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLmhvc3Q7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duSG9zdCA9IHRoaXMuZHJvcGRvd25Ib3N0ID8gdGhpcy5kcm9wZG93bkhvc3QubmF0aXZlRWxlbWVudCA6IGhvc3Q7XG5cbiAgICAgICAgaWYgKCF0aGlzLmhvc3RFZGl0YWJsZSAmJiBkcm9wZG93bkhvc3QuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKCF0aGlzLm9wZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lc2MnLCBbJyRldmVudCddKVxuICAgIG9uS2V5RG93bkVzYyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNhbk9wZW4gfHwgIXRoaXMub3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dEb3duJywgWyckZXZlbnQnLCAndHJ1ZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dVcCcsIFsnJGV2ZW50JywgJ2ZhbHNlJ10pXG4gICAgb25BcnJvdyhldmVudDogS2V5Ym9hcmRFdmVudCwgZG93bjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzRHJvcGRvd24oZXZlbnQsIGRvd24pO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bih7a2V5LCB0YXJnZXQsIGRlZmF1bHRQcmV2ZW50ZWR9OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFkZWZhdWx0UHJldmVudGVkICYmXG4gICAgICAgICAgICBpc0VkaXRpbmdLZXkoa2V5KSAmJlxuICAgICAgICAgICAgdGhpcy5ob3N0RWRpdGFibGUgJiZcbiAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICB0YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgICAgICAgIWlzRWxlbWVudEVkaXRhYmxlKHRhcmdldClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzSG9zdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3RpdmVab25lKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIWFjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSG9zdE9ic2N1cmVkKG9ic2N1cmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChvYnNjdXJlZCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVPcGVuKG9wZW46IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKG9wZW4gJiYgIXRoaXMuY2FuT3Blbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuID0gb3BlbjtcbiAgICAgICAgdGhpcy5vcGVuQ2hhbmdlLmVtaXQob3Blbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaG9zdEVkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuaG9zdDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICByZXR1cm4gaG9zdCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGlzRWxlbWVudEVkaXRhYmxlKGhvc3QpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNEcm9wZG93bihldmVudDogS2V5Ym9hcmRFdmVudCwgZmlyc3Q6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaG9zdCB8fFxuICAgICAgICAgICAgIShob3N0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHx8XG4gICAgICAgICAgICAhKGV2ZW50LnRhcmdldCBpbnN0YW5jZW9mIE5vZGUpIHx8XG4gICAgICAgICAgICAhaG9zdC5jb250YWlucyhldmVudC50YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMud3JhcHBlciB8fFxuICAgICAgICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgICAgICAgdGhpcy5kcm9wZG93biA9PT0gbnVsbCB8fFxuICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICEodGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVPcGVuKHRydWUpO1xuXG4gICAgICAgICAgICBpZiAoIWlzRWxlbWVudEVkaXRhYmxlKGhvc3QpKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5pdGlhbCA9IGZpcnN0XG4gICAgICAgICAgICA/IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50XG4gICAgICAgICAgICA6IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZztcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlID0gZ2V0Q2xvc2VzdEZvY3VzYWJsZShcbiAgICAgICAgICAgIGluaXRpYWwsXG4gICAgICAgICAgICAhZmlyc3QsXG4gICAgICAgICAgICB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoZm9jdXNhYmxlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZXROYXRpdmVGb2N1c2VkKGZvY3VzYWJsZSk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZURyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5mb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzSG9zdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVPcGVuKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSG9zdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICBpZiAoaG9zdCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChob3N0LCB0cnVlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNlZENoYW5nZS5lbWl0KGZvY3VzZWQpO1xuICAgIH1cbn1cbiJdfQ==