@taiga-ui/kit 3.41.0 → 3.41.1-canary.1db8e7a

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 (342) hide show
  1. package/bundles/taiga-ui-kit-classes.umd.js.map +1 -1
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js +2 -2
  3. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-arrow.umd.js +2 -2
  5. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-avatar.umd.js +1 -1
  7. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  9. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  11. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  13. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +1 -1
  15. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-carousel.umd.js +25 -25
  17. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +1 -1
  19. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
  23. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-combo-box.umd.js +1 -1
  25. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  27. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-elastic-container.umd.js +1 -1
  29. package/bundles/taiga-ui-kit-components-elastic-container.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-files.umd.js +3 -5
  31. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-copy.umd.js +2 -2
  33. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-count.umd.js +2 -2
  35. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +1 -1
  37. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-input-date.umd.js +1 -1
  41. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-input-files.umd.js +2 -2
  43. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-input-inline.umd.js +1 -1
  45. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  47. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  49. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-number.umd.js +2 -2
  51. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-password.umd.js +2 -2
  53. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +2 -2
  55. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  57. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-range.umd.js +1 -1
  59. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-slider.umd.js +19 -19
  61. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input-tag.umd.js +2 -2
  63. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
  65. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-year.umd.js +1 -1
  67. package/bundles/taiga-ui-kit-components-input-year.umd.js.map +1 -1
  68. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  69. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  70. package/bundles/taiga-ui-kit-components-items-with-more.umd.js +3 -3
  71. package/bundles/taiga-ui-kit-components-items-with-more.umd.js.map +1 -1
  72. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +5 -5
  73. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  74. package/bundles/taiga-ui-kit-components-multi-select.umd.js +4 -4
  75. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  77. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +2 -2
  79. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-progress.umd.js +2 -2
  81. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-prompt.umd.js +1 -1
  83. package/bundles/taiga-ui-kit-components-prompt.umd.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-push.umd.js +3 -3
  85. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-radio-block.umd.js +1 -1
  87. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +1 -1
  89. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-radio-list.umd.js +1 -1
  91. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
  93. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-range.umd.js +1 -1
  95. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-rating.umd.js +2 -2
  97. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-select.umd.js +4 -4
  99. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-slider.umd.js +2 -2
  101. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-tabs.umd.js +5 -5
  103. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
  105. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  106. package/bundles/taiga-ui-kit-components-textarea.umd.js +2 -2
  107. package/bundles/taiga-ui-kit-components-textarea.umd.js.map +1 -1
  108. package/bundles/taiga-ui-kit-components-tiles.umd.js +4 -4
  109. package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
  110. package/bundles/taiga-ui-kit-components-toggle.umd.js +2 -2
  111. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  112. package/bundles/taiga-ui-kit-components-tree.umd.js +6 -14
  113. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  114. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +1 -1
  115. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  116. package/bundles/taiga-ui-kit-tokens.umd.js +226 -234
  117. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  118. package/components/files/file/file-options.d.ts +1 -2
  119. package/components/items-with-more/items-with-more.service.d.ts +2 -2
  120. package/components/line-clamp/line-clamp.component.d.ts +2 -2
  121. package/components/tabs/underline/underline.component.d.ts +2 -2
  122. package/components/tiles/tile.component.d.ts +2 -2
  123. package/components/tree/misc/tree.tokens.d.ts +2 -2
  124. package/esm2015/classes/stringifiable-item.js +1 -1
  125. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +2 -2
  126. package/esm2015/components/accordion/accordion.component.js +2 -2
  127. package/esm2015/components/arrow/arrow.options.js +3 -3
  128. package/esm2015/components/arrow/arrow.providers.js +3 -3
  129. package/esm2015/components/avatar/avatar.options.js +3 -3
  130. package/esm2015/components/badged-content/badged-content.component.js +2 -2
  131. package/esm2015/components/breadcrumbs/breadcrumbs.options.js +3 -3
  132. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  133. package/esm2015/components/calendar-range/calendar-range.component.js +2 -2
  134. package/esm2015/components/carousel/carousel.component.js +4 -4
  135. package/esm2015/components/checkbox/checkbox.component.js +2 -2
  136. package/esm2015/components/checkbox-block/checkbox-block.component.js +2 -2
  137. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
  138. package/esm2015/components/combo-box/combo-box.component.js +2 -2
  139. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  140. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  141. package/esm2015/components/elastic-container/elastic-container.component.js +2 -2
  142. package/esm2015/components/files/file/file-options.js +3 -5
  143. package/esm2015/components/files/file/file.component.js +2 -2
  144. package/esm2015/components/files/files.component.js +2 -2
  145. package/esm2015/components/input/input.component.js +2 -2
  146. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  147. package/esm2015/components/input-copy/input-copy.options.js +3 -3
  148. package/esm2015/components/input-count/input-count.component.js +2 -2
  149. package/esm2015/components/input-count/input-count.options.js +3 -3
  150. package/esm2015/components/input-date/input-date.component.js +2 -2
  151. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  152. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  153. package/esm2015/components/input-files/input-files.component.js +2 -2
  154. package/esm2015/components/input-files/input-files.options.js +3 -3
  155. package/esm2015/components/input-inline/input-inline.component.js +2 -2
  156. package/esm2015/components/input-month/input-month.component.js +2 -2
  157. package/esm2015/components/input-month-range/input-month-range.component.js +2 -2
  158. package/esm2015/components/input-number/input-number.component.js +2 -2
  159. package/esm2015/components/input-number/input-number.options.js +3 -3
  160. package/esm2015/components/input-password/input-password.component.js +2 -2
  161. package/esm2015/components/input-password/input-password.options.js +3 -3
  162. package/esm2015/components/input-phone/input-phone.component.js +2 -2
  163. package/esm2015/components/input-phone/input-phone.options.js +3 -3
  164. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  165. package/esm2015/components/input-phone-international/input-phone-international.options.js +3 -3
  166. package/esm2015/components/input-range/input-range.component.js +2 -2
  167. package/esm2015/components/input-slider/input-slider.component.js +6 -6
  168. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  169. package/esm2015/components/input-tag/input-tag.options.js +3 -3
  170. package/esm2015/components/input-time/input-time.component.js +2 -2
  171. package/esm2015/components/input-time/input-time.options.js +3 -3
  172. package/esm2015/components/input-year/input-year.component.js +2 -2
  173. package/esm2015/components/items-with-more/items-with-more.service.js +4 -4
  174. package/esm2015/components/line-clamp/line-clamp.component.js +5 -5
  175. package/esm2015/components/line-clamp/line-clamp.options.js +3 -3
  176. package/esm2015/components/multi-select/multi-select.component.js +2 -2
  177. package/esm2015/components/multi-select/multi-select.options.js +3 -3
  178. package/esm2015/components/multi-select/native-multi-select/native-multi-select-group.component.js +2 -2
  179. package/esm2015/components/multi-select/native-multi-select/native-multi-select.component.js +2 -2
  180. package/esm2015/components/pagination/pagination.component.js +2 -2
  181. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +2 -2
  182. package/esm2015/components/pdf-viewer/pdf-viewer.options.js +3 -3
  183. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  184. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  185. package/esm2015/components/prompt/prompt.component.js +2 -2
  186. package/esm2015/components/push/push-alert.component.js +2 -2
  187. package/esm2015/components/push/push.component.js +2 -2
  188. package/esm2015/components/push/push.options.js +3 -3
  189. package/esm2015/components/radio/radio.component.js +2 -2
  190. package/esm2015/components/radio/radio.options.js +3 -3
  191. package/esm2015/components/radio-block/radio-block.component.js +2 -2
  192. package/esm2015/components/radio-labeled/radio-labeled.component.js +2 -2
  193. package/esm2015/components/radio-list/radio-list.component.js +2 -2
  194. package/esm2015/components/range/range.component.js +2 -2
  195. package/esm2015/components/rating/rating.component.js +2 -2
  196. package/esm2015/components/rating/rating.options.js +3 -3
  197. package/esm2015/components/select/native-select/native-select-group.component.js +2 -2
  198. package/esm2015/components/select/native-select/native-select.component.js +2 -2
  199. package/esm2015/components/select/select.component.js +2 -2
  200. package/esm2015/components/select/select.options.js +3 -3
  201. package/esm2015/components/slider/helpers/slider-thumb-label/slider-thumb-label.component.js +2 -2
  202. package/esm2015/components/slider/slider.options.js +3 -3
  203. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +2 -2
  204. package/esm2015/components/tabs/tabs.options.js +3 -3
  205. package/esm2015/components/tabs/underline/underline.component.js +4 -4
  206. package/esm2015/components/tag/tag.component.js +2 -2
  207. package/esm2015/components/tag/tag.options.js +3 -3
  208. package/esm2015/components/textarea/deprecated.js +2 -2
  209. package/esm2015/components/textarea/textarea.component.js +2 -2
  210. package/esm2015/components/tiles/tile.component.js +5 -5
  211. package/esm2015/components/toggle/toggle.component.js +2 -2
  212. package/esm2015/components/toggle/toggle.options.js +3 -3
  213. package/esm2015/components/tree/components/tree/tree.component.js +2 -2
  214. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +2 -2
  215. package/esm2015/components/tree/misc/tree.tokens.js +6 -13
  216. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  217. package/esm2015/tokens/countries-masks.js +218 -220
  218. package/esm2015/tokens/input-date-options.js +3 -3
  219. package/esm2015/tokens/items-handlers.js +3 -3
  220. package/esm2015/tokens/tab-margin.js +3 -5
  221. package/esm2015/tokens/validation-errors.js +3 -5
  222. package/fesm2015/taiga-ui-kit-classes.js.map +1 -1
  223. package/fesm2015/taiga-ui-kit-components-accordion.js +2 -2
  224. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  225. package/fesm2015/taiga-ui-kit-components-arrow.js +3 -3
  226. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  227. package/fesm2015/taiga-ui-kit-components-avatar.js +2 -2
  228. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  229. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  230. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  231. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +2 -2
  232. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  233. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  234. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  235. package/fesm2015/taiga-ui-kit-components-calendar-range.js +1 -1
  236. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  237. package/fesm2015/taiga-ui-kit-components-carousel.js +2 -2
  238. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  239. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +1 -1
  240. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  241. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +1 -1
  242. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  243. package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
  244. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  245. package/fesm2015/taiga-ui-kit-components-combo-box.js +1 -1
  246. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  247. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  248. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  249. package/fesm2015/taiga-ui-kit-components-elastic-container.js +1 -1
  250. package/fesm2015/taiga-ui-kit-components-elastic-container.js.map +1 -1
  251. package/fesm2015/taiga-ui-kit-components-files.js +5 -7
  252. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  253. package/fesm2015/taiga-ui-kit-components-input-copy.js +3 -3
  254. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  255. package/fesm2015/taiga-ui-kit-components-input-count.js +3 -3
  256. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  257. package/fesm2015/taiga-ui-kit-components-input-date-range.js +1 -1
  258. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  259. package/fesm2015/taiga-ui-kit-components-input-date-time.js +1 -1
  260. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  261. package/fesm2015/taiga-ui-kit-components-input-date.js +1 -1
  262. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  263. package/fesm2015/taiga-ui-kit-components-input-files.js +3 -3
  264. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  265. package/fesm2015/taiga-ui-kit-components-input-inline.js +1 -1
  266. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  267. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  268. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  269. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  270. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  271. package/fesm2015/taiga-ui-kit-components-input-number.js +3 -3
  272. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  273. package/fesm2015/taiga-ui-kit-components-input-password.js +3 -3
  274. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  275. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +3 -3
  276. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  277. package/fesm2015/taiga-ui-kit-components-input-phone.js +3 -3
  278. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  279. package/fesm2015/taiga-ui-kit-components-input-range.js +1 -1
  280. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  281. package/fesm2015/taiga-ui-kit-components-input-slider.js +5 -5
  282. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  283. package/fesm2015/taiga-ui-kit-components-input-tag.js +3 -3
  284. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  285. package/fesm2015/taiga-ui-kit-components-input-time.js +3 -3
  286. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  287. package/fesm2015/taiga-ui-kit-components-input-year.js +1 -1
  288. package/fesm2015/taiga-ui-kit-components-input-year.js.map +1 -1
  289. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  290. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  291. package/fesm2015/taiga-ui-kit-components-items-with-more.js +3 -3
  292. package/fesm2015/taiga-ui-kit-components-items-with-more.js.map +1 -1
  293. package/fesm2015/taiga-ui-kit-components-line-clamp.js +6 -6
  294. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  295. package/fesm2015/taiga-ui-kit-components-multi-select.js +5 -5
  296. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  297. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  298. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  299. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +3 -3
  300. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  301. package/fesm2015/taiga-ui-kit-components-progress.js +2 -2
  302. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  303. package/fesm2015/taiga-ui-kit-components-prompt.js +1 -1
  304. package/fesm2015/taiga-ui-kit-components-prompt.js.map +1 -1
  305. package/fesm2015/taiga-ui-kit-components-push.js +4 -4
  306. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
  307. package/fesm2015/taiga-ui-kit-components-radio-block.js +1 -1
  308. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  309. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +1 -1
  310. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  311. package/fesm2015/taiga-ui-kit-components-radio-list.js +1 -1
  312. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  313. package/fesm2015/taiga-ui-kit-components-radio.js +3 -3
  314. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  315. package/fesm2015/taiga-ui-kit-components-range.js +1 -1
  316. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  317. package/fesm2015/taiga-ui-kit-components-rating.js +3 -3
  318. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  319. package/fesm2015/taiga-ui-kit-components-select.js +5 -5
  320. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  321. package/fesm2015/taiga-ui-kit-components-slider.js +3 -3
  322. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  323. package/fesm2015/taiga-ui-kit-components-tabs.js +6 -6
  324. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  325. package/fesm2015/taiga-ui-kit-components-tag.js +3 -3
  326. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  327. package/fesm2015/taiga-ui-kit-components-textarea.js +2 -2
  328. package/fesm2015/taiga-ui-kit-components-textarea.js.map +1 -1
  329. package/fesm2015/taiga-ui-kit-components-tiles.js +4 -4
  330. package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
  331. package/fesm2015/taiga-ui-kit-components-toggle.js +3 -3
  332. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  333. package/fesm2015/taiga-ui-kit-components-tree.js +7 -15
  334. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  335. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  336. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  337. package/fesm2015/taiga-ui-kit-tokens.js +221 -227
  338. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  339. package/package.json +4 -4
  340. package/tokens/countries-masks.d.ts +1 -2
  341. package/tokens/tab-margin.d.ts +1 -2
  342. package/tokens/validation-errors.d.ts +1 -2
@@ -51,7 +51,7 @@ export class TuiBadgedContentComponent {
51
51
  }
52
52
  }
53
53
  TuiBadgedContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBadgedContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
- TuiBadgedContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiBadgedContentComponent, selector: "tui-badged-content", inputs: { contentTop: "contentTop", contentBottom: "contentBottom", size: "size", colorTop: "colorTop", colorBottom: "colorBottom", rounded: "rounded" }, host: { properties: { "class._with-top": "this.contentTop", "class._with-bottom": "this.contentBottom", "attr.data-size": "this.size", "class._rounded": "this.rounded" } }, ngImport: i0, template: "<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"content\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"content\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-container>\n</div>\n", styles: [":host{position:relative;display:inline-block;color:var(--tui-base-01);height:-webkit-min-content;height:min-content}.t-notification{position:absolute;border-radius:100%;box-shadow:0 0 0 2px currentColor;background-color:currentColor}:host[data-size=xs]:not(._rounded) .t-notification_top,:host[data-size=s]:not(._rounded) .t-notification_top,:host[data-size=m]:not(._rounded) .t-notification_top{top:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_top,:host[data-size=xl]:not(._rounded) .t-notification_top{top:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_top{top:-.5rem;right:-.5rem}:host[data-size=xs]._rounded .t-notification_top{top:0;right:0}:host[data-size=s]._rounded .t-notification_top{top:.0625rem;right:.0625rem}:host[data-size=m]._rounded .t-notification_top{top:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_top{top:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_top{top:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_top{top:.5rem;right:.5rem}:host[data-size=m]:not(._rounded) .t-notification_bottom{bottom:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_bottom,:host[data-size=xl]:not(._rounded) .t-notification_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=m]._rounded .t-notification_bottom{bottom:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_bottom{bottom:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_bottom{bottom:.5rem;right:.5rem}:host[data-size=xs] .t-notification,:host[data-size=s] .t-notification,:host[data-size=m] .t-notification{width:.5rem;height:.5rem}:host[data-size=l] .t-notification{width:.75rem;height:.75rem}:host[data-size=xl] .t-notification{width:1rem;height:1rem}:host[data-size=xxl] .t-notification{width:1.5rem;height:1.5rem}.t-icon{color:var(--tui-success-fill)}:host[data-size=xs] .t-icon{transform:scale(.66666667);margin:-.25rem}:host[data-size=s] .t-icon,:host[data-size=m] .t-icon{width:1.5rem;height:1.5rem;margin:-.125rem}:host[data-size=l] .t-icon,:host[data-size=xl] .t-icon{transform:scale(1.2)}:host[data-size=xxl] .t-icon{transform:scale(1.6)}.t-content{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:6.25rem;overflow:hidden;background-color:currentColor;box-shadow:0 0 0 2px currentColor}:host[data-size=xxl]._with-top:not(._rounded) .t-content_top,:host[data-size=l]._with-top:not(._rounded) .t-content_top{right:-.5rem;top:-.5rem}:host[data-size=xl]._with-top:not(._rounded) .t-content_top{right:-.375rem;top:-.375rem}:host[data-size=m]._with-top:not(._rounded) .t-content_top,:host[data-size=s]._with-top:not(._rounded) .t-content_top,:host[data-size=xs]._with-top:not(._rounded) .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-top._rounded .t-content_top{right:.25rem;top:.25rem}:host[data-size=xl]._with-top._rounded .t-content_top{right:.125rem;top:.125rem}:host[data-size=l]._with-top._rounded .t-content_top,:host[data-size=m]._with-top._rounded .t-content_top,:host[data-size=s]._with-top._rounded .t-content_top,:host[data-size=xs]._with-top._rounded .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-bottom:not(._rounded) .t-content_bottom,:host[data-size=l]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=xl]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.375rem;right:-.375rem}:host[data-size=m]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]._with-bottom._rounded .t-content_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._with-bottom._rounded .t-content_bottom{bottom:.125rem;right:.125rem}:host[data-size=l]._with-bottom._rounded .t-content_bottom,:host[data-size=m]._with-bottom._rounded .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl] .t-content{height:2rem;min-width:2rem}:host[data-size=xl] .t-content,:host[data-size=l] .t-content{height:1.5rem;min-width:1.5rem}:host[data-size=m] .t-content,:host[data-size=s] .t-content{height:1.25rem;min-width:1.25rem}:host[data-size=xs] .t-content{height:1rem;min-width:1rem}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
+ TuiBadgedContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiBadgedContentComponent, selector: "tui-badged-content", inputs: { contentTop: "contentTop", contentBottom: "contentBottom", size: "size", colorTop: "colorTop", colorBottom: "colorBottom", rounded: "rounded" }, host: { properties: { "class._with-top": "this.contentTop", "class._with-bottom": "this.contentBottom", "attr.data-size": "this.size", "class._rounded": "this.rounded" } }, ngImport: i0, template: "<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"t-notification t-notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"t-notification t-notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n class=\"t-content t-content_top\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentTop as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [size]=\"badgeSize\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [value]=\"content\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [src]=\"content\"\n [style.color]=\"colorTop\"\n ></tui-svg>\n </ng-container>\n</div>\n\n<div\n *ngIf=\"contentBottom && sizeBig\"\n class=\"t-content t-content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n>\n <ng-container *polymorpheusOutlet=\"contentBottom as content\">\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [size]=\"badgeSize\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [value]=\"content\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"t-icon\"\n [src]=\"content\"\n [style.color]=\"colorBottom\"\n ></tui-svg>\n </ng-container>\n</div>\n", styles: [":host{position:relative;display:inline-block;color:var(--tui-base-01);height:-webkit-min-content;height:min-content}.t-notification{position:absolute;border-radius:100%;box-shadow:0 0 0 2px currentColor;background-color:currentColor}:host[data-size=xs]:not(._rounded) .t-notification_top,:host[data-size=s]:not(._rounded) .t-notification_top,:host[data-size=m]:not(._rounded) .t-notification_top{top:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_top,:host[data-size=xl]:not(._rounded) .t-notification_top{top:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_top{top:-.5rem;right:-.5rem}:host[data-size=xs]._rounded .t-notification_top{top:0;right:0}:host[data-size=s]._rounded .t-notification_top{top:.0625rem;right:.0625rem}:host[data-size=m]._rounded .t-notification_top{top:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_top{top:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_top{top:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_top{top:.5rem;right:.5rem}:host[data-size=m]:not(._rounded) .t-notification_bottom{bottom:-.125rem;right:-.125rem}:host[data-size=l]:not(._rounded) .t-notification_bottom,:host[data-size=xl]:not(._rounded) .t-notification_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]:not(._rounded) .t-notification_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=m]._rounded .t-notification_bottom{bottom:.1875rem;right:.1875rem}:host[data-size=l]._rounded .t-notification_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._rounded .t-notification_bottom{bottom:.375rem;right:.375rem}:host[data-size=xxl]._rounded .t-notification_bottom{bottom:.5rem;right:.5rem}:host[data-size=xs] .t-notification,:host[data-size=s] .t-notification,:host[data-size=m] .t-notification{width:.5rem;height:.5rem}:host[data-size=l] .t-notification{width:.75rem;height:.75rem}:host[data-size=xl] .t-notification{width:1rem;height:1rem}:host[data-size=xxl] .t-notification{width:1.5rem;height:1.5rem}.t-icon{color:var(--tui-success-fill)}:host[data-size=xs] .t-icon{transform:scale(.66666667);margin:-.25rem}:host[data-size=s] .t-icon,:host[data-size=m] .t-icon{width:1.5rem;height:1.5rem;margin:-.125rem}:host[data-size=l] .t-icon,:host[data-size=xl] .t-icon{transform:scale(1.2)}:host[data-size=xxl] .t-icon{transform:scale(1.6)}.t-content{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:6.25rem;overflow:hidden;background-color:currentColor;box-shadow:0 0 0 2px currentColor}:host[data-size=xxl]._with-top:not(._rounded) .t-content_top,:host[data-size=l]._with-top:not(._rounded) .t-content_top{right:-.5rem;top:-.5rem}:host[data-size=xl]._with-top:not(._rounded) .t-content_top{right:-.375rem;top:-.375rem}:host[data-size=m]._with-top:not(._rounded) .t-content_top,:host[data-size=s]._with-top:not(._rounded) .t-content_top,:host[data-size=xs]._with-top:not(._rounded) .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-top._rounded .t-content_top{right:.25rem;top:.25rem}:host[data-size=xl]._with-top._rounded .t-content_top{right:.125rem;top:.125rem}:host[data-size=l]._with-top._rounded .t-content_top,:host[data-size=m]._with-top._rounded .t-content_top,:host[data-size=s]._with-top._rounded .t-content_top,:host[data-size=xs]._with-top._rounded .t-content_top{right:-.25rem;top:-.25rem}:host[data-size=xxl]._with-bottom:not(._rounded) .t-content_bottom,:host[data-size=l]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.5rem;right:-.5rem}:host[data-size=xl]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.375rem;right:-.375rem}:host[data-size=m]._with-bottom:not(._rounded) .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl]._with-bottom._rounded .t-content_bottom{bottom:.25rem;right:.25rem}:host[data-size=xl]._with-bottom._rounded .t-content_bottom{bottom:.125rem;right:.125rem}:host[data-size=l]._with-bottom._rounded .t-content_bottom,:host[data-size=m]._with-bottom._rounded .t-content_bottom{bottom:-.25rem;right:-.25rem}:host[data-size=xxl] .t-content{height:2rem;min-width:2rem}:host[data-size=xl] .t-content,:host[data-size=l] .t-content{height:1.5rem;min-width:1.5rem}:host[data-size=m] .t-content,:host[data-size=s] .t-content{height:1.25rem;min-width:1.25rem}:host[data-size=xs] .t-content{height:1rem;min-width:1rem}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiBadgedContentComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
85
85
  type: HostBinding,
86
86
  args: ['class._rounded']
87
87
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2VkLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYmFkZ2VkLWNvbnRlbnQvYmFkZ2VkLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYmFkZ2VkLWNvbnRlbnQvYmFkZ2VkLWNvbnRlbnQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyxhQUFhLEVBQWtDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUk5RSxNQUFNLFVBQVUsR0FBMEM7SUFDdEQsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsR0FBRztJQUNOLENBQUMsRUFBRSxHQUFHO0lBQ04sQ0FBQyxFQUFFLEdBQUc7SUFDTixFQUFFLEVBQUUsR0FBRztJQUNQLEdBQUcsRUFBRSxHQUFHO0NBQ1gsQ0FBQztBQVFGLE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFpQkksU0FBSSxHQUEyQixHQUFHLENBQUM7UUFHbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUdkLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBSWpCLFlBQU8sR0FBRyxLQUFLLENBQUM7S0F1Q25CO0lBckNHLElBQUksZUFBZTtRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNFLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekMsT0FBTyxTQUFTLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBNEI7UUFDeEMsT0FBTyxXQUFXLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGVBQWUsQ0FBQyxPQUE0QjtRQUN4QyxPQUFPLFdBQVcsQ0FBQyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDbkIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3hDLENBQUM7O3VIQTNEUSx5QkFBeUI7MkdBQXpCLHlCQUF5QixpWUNyQnRDLDJyREEyREE7NEZEdENhLHlCQUF5QjtrQkFOckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDMUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzhCQUlHLFVBQVU7c0JBRlQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBSzlCLGFBQWE7c0JBRlosS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBS2pDLElBQUk7c0JBRkgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBSTdCLFFBQVE7c0JBRFAsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sT0FBTztzQkFGTixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpSXNOdW1iZXIsIHR1aUlzU3RyaW5nLCB0dWlQeH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aVNpemVCaWdnZXIsIFR1aVNpemVMLCBUdWlTaXplWFMsIFR1aVNpemVYWEx9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpU3RhdHVzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuY29uc3QgQkFER0VfU0laRToge1trZXk6IHN0cmluZ106IFR1aVNpemVMIHwgVHVpU2l6ZVhTfSA9IHtcbiAgICB4czogJ3hzJyxcbiAgICBzOiAncycsXG4gICAgbTogJ3MnLFxuICAgIGw6ICdtJyxcbiAgICB4bDogJ20nLFxuICAgIHh4bDogJ2wnLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktYmFkZ2VkLWNvbnRlbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWRnZWQtY29udGVudC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYWRnZWQtY29udGVudC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUJhZGdlZENvbnRlbnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fd2l0aC10b3AnKVxuICAgIGNvbnRlbnRUb3A6IFBvbHltb3JwaGV1c0NvbnRlbnQ7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3dpdGgtYm90dG9tJylcbiAgICBjb250ZW50Qm90dG9tOiBQb2x5bW9ycGhldXNDb250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBzaXplOiBUdWlTaXplWFMgfCBUdWlTaXplWFhMID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBjb2xvclRvcCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBjb2xvckJvdHRvbSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9yb3VuZGVkJylcbiAgICByb3VuZGVkID0gZmFsc2U7XG5cbiAgICBnZXQgdG9wTm90aWZpY2F0aW9uKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAhdGhpcy5jb250ZW50VG9wICYmIHRoaXMuY29sb3JUb3AgPyB0aGlzLmNvbG9yVG9wIDogJyc7XG4gICAgfVxuXG4gICAgZ2V0IGJvdHRvbU5vdGlmaWNhdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gIXRoaXMuY29udGVudEJvdHRvbSAmJiB0aGlzLmNvbG9yQm90dG9tID8gdGhpcy5jb2xvckJvdHRvbSA6ICcnO1xuICAgIH1cblxuICAgIGdldCBiYWRnZVNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplWFMge1xuICAgICAgICByZXR1cm4gQkFER0VfU0laRVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBiYWRnZUhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ3hzJztcbiAgICB9XG5cbiAgICBnZXQgc2l6ZUJpZygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aVNpemVCaWdnZXIodGhpcy5zaXplKTtcbiAgICB9XG5cbiAgICBnZXQgYm94U2hhZG93KCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGJvcmRlcldpZHRoID0gdGhpcy5zaXplQmlnID8gMyA6IDI7XG5cbiAgICAgICAgcmV0dXJuIGAwIDAgMCAke3R1aVB4KGJvcmRlcldpZHRoKX1gO1xuICAgIH1cblxuICAgIGNvbnRlbnRJc051bWJlcihjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50KTogY29udGVudCBpcyBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpSXNOdW1iZXIoY29udGVudD8udmFsdWVPZigpKTtcbiAgICB9XG5cbiAgICBjb250ZW50SXNTdHJpbmcoY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudCk6IGNvbnRlbnQgaXMgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKGNvbnRlbnQ/LnZhbHVlT2YoKSk7XG4gICAgfVxuXG4gICAgZ2V0U3RhdHVzKGNvbG9yOiBzdHJpbmcpOiBUdWlTdGF0dXMge1xuICAgICAgICByZXR1cm4gY29sb3IgPyAnY3VzdG9tJyA6ICdwcmltYXJ5JztcbiAgICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjxkaXZcbiAgICAqbmdJZj1cInRvcE5vdGlmaWNhdGlvblwiXG4gICAgY2xhc3M9XCJ0LW5vdGlmaWNhdGlvbiB0LW5vdGlmaWNhdGlvbl90b3BcIlxuICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cInRvcE5vdGlmaWNhdGlvblwiXG4gICAgW3N0eWxlLmJveFNoYWRvd109XCJib3hTaGFkb3dcIlxuPjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJib3R0b21Ob3RpZmljYXRpb25cIlxuICAgIGNsYXNzPVwidC1ub3RpZmljYXRpb24gdC1ub3RpZmljYXRpb25fYm90dG9tXCJcbiAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJib3R0b21Ob3RpZmljYXRpb25cIlxuICAgIFtzdHlsZS5ib3hTaGFkb3ddPVwiYm94U2hhZG93XCJcbj48L2Rpdj5cblxuPGRpdlxuICAgICpuZ0lmPVwiY29udGVudFRvcFwiXG4gICAgY2xhc3M9XCJ0LWNvbnRlbnQgdC1jb250ZW50X3RvcFwiXG4gICAgW3N0eWxlLmJveFNoYWRvd109XCJib3hTaGFkb3dcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImNvbnRlbnRUb3AgYXMgY29udGVudFwiPlxuICAgICAgICA8dHVpLWJhZGdlXG4gICAgICAgICAgICAqbmdJZj1cImNvbnRlbnRJc051bWJlcihjb250ZW50KVwiXG4gICAgICAgICAgICBbc3RhdHVzXT1cImdldFN0YXR1cyhjb2xvclRvcClcIlxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJjb2xvclRvcFwiXG4gICAgICAgICAgICBbc2l6ZV09XCJiYWRnZVNpemVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImNvbnRlbnRcIlxuICAgICAgICA+PC90dWktYmFkZ2U+XG4gICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAqbmdJZj1cImNvbnRlbnRJc1N0cmluZyhjb250ZW50KVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiY29sb3JUb3BcIlxuICAgICAgICAgICAgW3NyY109XCJjb250ZW50XCJcbiAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJjb250ZW50Qm90dG9tICYmIHNpemVCaWdcIlxuICAgIGNsYXNzPVwidC1jb250ZW50IHQtY29udGVudF9ib3R0b21cIlxuICAgIFtzdHlsZS5ib3hTaGFkb3ddPVwiYm94U2hhZG93XCJcbj5cbiAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZW50Qm90dG9tIGFzIGNvbnRlbnRcIj5cbiAgICAgICAgPHR1aS1iYWRnZVxuICAgICAgICAgICAgKm5nSWY9XCJjb250ZW50SXNOdW1iZXIoY29udGVudClcIlxuICAgICAgICAgICAgW3N0YXR1c109XCJnZXRTdGF0dXMoY29sb3JCb3R0b20pXCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiY29sb3JCb3R0b21cIlxuICAgICAgICAgICAgW3NpemVdPVwiYmFkZ2VTaXplXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJjb250ZW50XCJcbiAgICAgICAgPjwvdHVpLWJhZGdlPlxuICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgKm5nSWY9XCJjb250ZW50SXNTdHJpbmcoY29udGVudClcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNvbG9yQm90dG9tXCJcbiAgICAgICAgICAgIFtzcmNdPVwiY29udGVudFwiXG4gICAgICAgID48L3R1aS1zdmc+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2VkLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYmFkZ2VkLWNvbnRlbnQvYmFkZ2VkLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvYmFkZ2VkLWNvbnRlbnQvYmFkZ2VkLWNvbnRlbnQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyxhQUFhLEVBQWtDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUk5RSxNQUFNLFVBQVUsR0FBMEM7SUFDdEQsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsR0FBRztJQUNOLENBQUMsRUFBRSxHQUFHO0lBQ04sQ0FBQyxFQUFFLEdBQUc7SUFDTixFQUFFLEVBQUUsR0FBRztJQUNQLEdBQUcsRUFBRSxHQUFHO0NBQ1gsQ0FBQztBQVFGLE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFpQkksU0FBSSxHQUEyQixHQUFHLENBQUM7UUFHbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUdkLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBSWpCLFlBQU8sR0FBRyxLQUFLLENBQUM7S0F1Q25CO0lBckNHLElBQUksZUFBZTtRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNFLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekMsT0FBTyxTQUFTLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBNEI7UUFDeEMsT0FBTyxXQUFXLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGVBQWUsQ0FBQyxPQUE0QjtRQUN4QyxPQUFPLFdBQVcsQ0FBQyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDbkIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3hDLENBQUM7O3VIQTNEUSx5QkFBeUI7MkdBQXpCLHlCQUF5QixpWUNyQnRDLDJyREEyREE7NEZEdENhLHlCQUF5QjtrQkFOckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDMUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzhCQUlHLFVBQVU7c0JBRlQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBSzlCLGFBQWE7c0JBRlosS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBS2pDLElBQUk7c0JBRkgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBSTdCLFFBQVE7c0JBRFAsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sT0FBTztzQkFGTixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpSXNOdW1iZXIsIHR1aUlzU3RyaW5nLCB0dWlQeH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aVNpemVCaWdnZXIsIFR1aVNpemVMLCBUdWlTaXplWFMsIFR1aVNpemVYWEx9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpU3RhdHVzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuY29uc3QgQkFER0VfU0laRToge1trZXk6IHN0cmluZ106IFR1aVNpemVMIHwgVHVpU2l6ZVhTfSA9IHtcbiAgICB4czogJ3hzJyxcbiAgICBzOiAncycsXG4gICAgbTogJ3MnLFxuICAgIGw6ICdtJyxcbiAgICB4bDogJ20nLFxuICAgIHh4bDogJ2wnLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktYmFkZ2VkLWNvbnRlbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWRnZWQtY29udGVudC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYWRnZWQtY29udGVudC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUJhZGdlZENvbnRlbnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fd2l0aC10b3AnKVxuICAgIGNvbnRlbnRUb3A6IFBvbHltb3JwaGV1c0NvbnRlbnQ7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3dpdGgtYm90dG9tJylcbiAgICBjb250ZW50Qm90dG9tOiBQb2x5bW9ycGhldXNDb250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBzaXplOiBUdWlTaXplWFMgfCBUdWlTaXplWFhMID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBjb2xvclRvcCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBjb2xvckJvdHRvbSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9yb3VuZGVkJylcbiAgICByb3VuZGVkID0gZmFsc2U7XG5cbiAgICBnZXQgdG9wTm90aWZpY2F0aW9uKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAhdGhpcy5jb250ZW50VG9wICYmIHRoaXMuY29sb3JUb3AgPyB0aGlzLmNvbG9yVG9wIDogJyc7XG4gICAgfVxuXG4gICAgZ2V0IGJvdHRvbU5vdGlmaWNhdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gIXRoaXMuY29udGVudEJvdHRvbSAmJiB0aGlzLmNvbG9yQm90dG9tID8gdGhpcy5jb2xvckJvdHRvbSA6ICcnO1xuICAgIH1cblxuICAgIGdldCBiYWRnZVNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplWFMge1xuICAgICAgICByZXR1cm4gQkFER0VfU0laRVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBiYWRnZUhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ3hzJztcbiAgICB9XG5cbiAgICBnZXQgc2l6ZUJpZygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aVNpemVCaWdnZXIodGhpcy5zaXplKTtcbiAgICB9XG5cbiAgICBnZXQgYm94U2hhZG93KCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGJvcmRlcldpZHRoID0gdGhpcy5zaXplQmlnID8gMyA6IDI7XG5cbiAgICAgICAgcmV0dXJuIGAwIDAgMCAke3R1aVB4KGJvcmRlcldpZHRoKX1gO1xuICAgIH1cblxuICAgIGNvbnRlbnRJc051bWJlcihjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50KTogY29udGVudCBpcyBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpSXNOdW1iZXIoY29udGVudD8udmFsdWVPZigpKTtcbiAgICB9XG5cbiAgICBjb250ZW50SXNTdHJpbmcoY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudCk6IGNvbnRlbnQgaXMgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKGNvbnRlbnQ/LnZhbHVlT2YoKSk7XG4gICAgfVxuXG4gICAgZ2V0U3RhdHVzKGNvbG9yOiBzdHJpbmcpOiBUdWlTdGF0dXMge1xuICAgICAgICByZXR1cm4gY29sb3IgPyAnY3VzdG9tJyA6ICdwcmltYXJ5JztcbiAgICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjxkaXZcbiAgICAqbmdJZj1cInRvcE5vdGlmaWNhdGlvblwiXG4gICAgY2xhc3M9XCJ0LW5vdGlmaWNhdGlvbiB0LW5vdGlmaWNhdGlvbl90b3BcIlxuICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cInRvcE5vdGlmaWNhdGlvblwiXG4gICAgW3N0eWxlLmJveFNoYWRvd109XCJib3hTaGFkb3dcIlxuPjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJib3R0b21Ob3RpZmljYXRpb25cIlxuICAgIGNsYXNzPVwidC1ub3RpZmljYXRpb24gdC1ub3RpZmljYXRpb25fYm90dG9tXCJcbiAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJib3R0b21Ob3RpZmljYXRpb25cIlxuICAgIFtzdHlsZS5ib3hTaGFkb3ddPVwiYm94U2hhZG93XCJcbj48L2Rpdj5cblxuPGRpdlxuICAgICpuZ0lmPVwiY29udGVudFRvcFwiXG4gICAgY2xhc3M9XCJ0LWNvbnRlbnQgdC1jb250ZW50X3RvcFwiXG4gICAgW3N0eWxlLmJveFNoYWRvd109XCJib3hTaGFkb3dcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImNvbnRlbnRUb3AgYXMgY29udGVudFwiPlxuICAgICAgICA8dHVpLWJhZGdlXG4gICAgICAgICAgICAqbmdJZj1cImNvbnRlbnRJc051bWJlcihjb250ZW50KVwiXG4gICAgICAgICAgICBbc2l6ZV09XCJiYWRnZVNpemVcIlxuICAgICAgICAgICAgW3N0YXR1c109XCJnZXRTdGF0dXMoY29sb3JUb3ApXCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiY29sb3JUb3BcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImNvbnRlbnRcIlxuICAgICAgICA+PC90dWktYmFkZ2U+XG4gICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAqbmdJZj1cImNvbnRlbnRJc1N0cmluZyhjb250ZW50KVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICBbc3JjXT1cImNvbnRlbnRcIlxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNvbG9yVG9wXCJcbiAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJjb250ZW50Qm90dG9tICYmIHNpemVCaWdcIlxuICAgIGNsYXNzPVwidC1jb250ZW50IHQtY29udGVudF9ib3R0b21cIlxuICAgIFtzdHlsZS5ib3hTaGFkb3ddPVwiYm94U2hhZG93XCJcbj5cbiAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZW50Qm90dG9tIGFzIGNvbnRlbnRcIj5cbiAgICAgICAgPHR1aS1iYWRnZVxuICAgICAgICAgICAgKm5nSWY9XCJjb250ZW50SXNOdW1iZXIoY29udGVudClcIlxuICAgICAgICAgICAgW3NpemVdPVwiYmFkZ2VTaXplXCJcbiAgICAgICAgICAgIFtzdGF0dXNdPVwiZ2V0U3RhdHVzKGNvbG9yQm90dG9tKVwiXG4gICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbG9yQm90dG9tXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJjb250ZW50XCJcbiAgICAgICAgPjwvdHVpLWJhZGdlPlxuICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgKm5nSWY9XCJjb250ZW50SXNTdHJpbmcoY29udGVudClcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICAgICAgW3NyY109XCJjb250ZW50XCJcbiAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjb2xvckJvdHRvbVwiXG4gICAgICAgID48L3R1aS1zdmc+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
@@ -1,11 +1,11 @@
1
- import { tuiCreateOptions, tuiProvideOptions } from '@taiga-ui/cdk';
1
+ import { tuiCreateToken, tuiProvideOptions } from '@taiga-ui/cdk';
2
2
  export const TUI_BREADCRUMBS_DEFAULT_OPTIONS = {
3
3
  icon: `tuiIconChevronRight`,
4
4
  size: `m`,
5
5
  mode: `onLight`,
6
6
  };
7
- export const TUI_BREADCRUMBS_OPTIONS = tuiCreateOptions(TUI_BREADCRUMBS_DEFAULT_OPTIONS);
7
+ export const TUI_BREADCRUMBS_OPTIONS = tuiCreateToken(TUI_BREADCRUMBS_DEFAULT_OPTIONS);
8
8
  export function tuiBreadcrumbsOptionsProvider(options) {
9
9
  return tuiProvideOptions(TUI_BREADCRUMBS_OPTIONS, options, TUI_BREADCRUMBS_DEFAULT_OPTIONS);
10
10
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWJzLm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBU2xFLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUEwQjtJQUNsRSxJQUFJLEVBQUUscUJBQXFCO0lBQzNCLElBQUksRUFBRSxHQUFHO0lBQ1QsSUFBSSxFQUFFLFNBQVM7Q0FDbEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLGdCQUFnQixDQUFDLCtCQUErQixDQUFDLENBQUM7QUFFekYsTUFBTSxVQUFVLDZCQUE2QixDQUN6QyxPQUF1QztJQUV2QyxPQUFPLGlCQUFpQixDQUNwQix1QkFBdUIsRUFDdkIsT0FBTyxFQUNQLCtCQUErQixDQUNsQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlDcmVhdGVPcHRpb25zLCB0dWlQcm92aWRlT3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUJyaWdodG5lc3MsIFR1aVNpemVMfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpQnJlYWRjcnVtYnNPcHRpb25zIHtcbiAgICByZWFkb25seSBpY29uOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgc2l6ZTogVHVpU2l6ZUw7XG4gICAgcmVhZG9ubHkgbW9kZTogVHVpQnJpZ2h0bmVzcyB8IG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQlJFQURDUlVNQlNfREVGQVVMVF9PUFRJT05TOiBUdWlCcmVhZGNydW1ic09wdGlvbnMgPSB7XG4gICAgaWNvbjogYHR1aUljb25DaGV2cm9uUmlnaHRgLFxuICAgIHNpemU6IGBtYCxcbiAgICBtb2RlOiBgb25MaWdodGAsXG59O1xuXG5leHBvcnQgY29uc3QgVFVJX0JSRUFEQ1JVTUJTX09QVElPTlMgPSB0dWlDcmVhdGVPcHRpb25zKFRVSV9CUkVBRENSVU1CU19ERUZBVUxUX09QVElPTlMpO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpQnJlYWRjcnVtYnNPcHRpb25zUHJvdmlkZXIoXG4gICAgb3B0aW9uczogUGFydGlhbDxUdWlCcmVhZGNydW1ic09wdGlvbnM+LFxuKTogUHJvdmlkZXIge1xuICAgIHJldHVybiB0dWlQcm92aWRlT3B0aW9ucyhcbiAgICAgICAgVFVJX0JSRUFEQ1JVTUJTX09QVElPTlMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIFRVSV9CUkVBRENSVU1CU19ERUZBVUxUX09QVElPTlMsXG4gICAgKTtcbn1cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWJzLm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQVNoRSxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBMEI7SUFDbEUsSUFBSSxFQUFFLHFCQUFxQjtJQUMzQixJQUFJLEVBQUUsR0FBRztJQUNULElBQUksRUFBRSxTQUFTO0NBQ2xCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxjQUFjLENBQUMsK0JBQStCLENBQUMsQ0FBQztBQUV2RixNQUFNLFVBQVUsNkJBQTZCLENBQ3pDLE9BQXVDO0lBRXZDLE9BQU8saUJBQWlCLENBQ3BCLHVCQUF1QixFQUN2QixPQUFPLEVBQ1AsK0JBQStCLENBQ2xDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aUNyZWF0ZVRva2VuLCB0dWlQcm92aWRlT3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUJyaWdodG5lc3MsIFR1aVNpemVMfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpQnJlYWRjcnVtYnNPcHRpb25zIHtcbiAgICByZWFkb25seSBpY29uOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgc2l6ZTogVHVpU2l6ZUw7XG4gICAgcmVhZG9ubHkgbW9kZTogVHVpQnJpZ2h0bmVzcyB8IG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQlJFQURDUlVNQlNfREVGQVVMVF9PUFRJT05TOiBUdWlCcmVhZGNydW1ic09wdGlvbnMgPSB7XG4gICAgaWNvbjogYHR1aUljb25DaGV2cm9uUmlnaHRgLFxuICAgIHNpemU6IGBtYCxcbiAgICBtb2RlOiBgb25MaWdodGAsXG59O1xuXG5leHBvcnQgY29uc3QgVFVJX0JSRUFEQ1JVTUJTX09QVElPTlMgPSB0dWlDcmVhdGVUb2tlbihUVUlfQlJFQURDUlVNQlNfREVGQVVMVF9PUFRJT05TKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUJyZWFkY3J1bWJzT3B0aW9uc1Byb3ZpZGVyKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpQnJlYWRjcnVtYnNPcHRpb25zPixcbik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4gdHVpUHJvdmlkZU9wdGlvbnMoXG4gICAgICAgIFRVSV9CUkVBRENSVU1CU19PUFRJT05TLFxuICAgICAgICBvcHRpb25zLFxuICAgICAgICBUVUlfQlJFQURDUlVNQlNfREVGQVVMVF9PUFRJT05TLFxuICAgICk7XG59XG4iXX0=
@@ -159,7 +159,7 @@ export class TuiCalendarMonthComponent {
159
159
  }
160
160
  }
161
161
  TuiCalendarMonthComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiCalendarMonthComponent, deps: [{ token: TUI_CALENDAR_MONTHS }], target: i0.ɵɵFactoryTarget.Component });
162
- TuiCalendarMonthComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCalendarMonthComponent, selector: "tui-calendar-month", inputs: { value: "value", year: "year", disabledItemHandler: "disabledItemHandler", min: "min", max: "max" }, outputs: { monthClick: "monthClick", hoveredItemChange: "hoveredItemChange", yearChange: "yearChange" }, host: { properties: { "class._single": "this.isSingle" } }, ngImport: i0, template: "<tui-scrollbar\n *ngIf=\"isYearPickerShown; else monthSelect\"\n class=\"t-scrollbar\"\n>\n <tui-primitive-year-picker\n [min]=\"computedMin\"\n [max]=\"computedMax\"\n [initialItem]=\"year\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n tuiLink\n type=\"button\"\n automation-id=\"tui-calendar-month__active-year\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ year.formattedYear }}\n </button>\n </tui-primitive-spin-button>\n <div class=\"t-row\">\n <ng-container *ngFor=\"let month of months$ | async; let index = index\">\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"t-cell\"\n [class.t-cell_today]=\"isItemToday(item)\"\n [class.t-cell_interval]=\"isItemInsideRange(item)\"\n [attr.data-range]=\"getItemRange(item)\"\n [attr.data-state]=\"getItemState(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"t-item\">{{ month }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n", styles: [":host{display:block;font:var(--tui-font-text-m)}.t-row{position:relative;z-index:0;display:flex;justify-content:space-between;height:2.25rem}.t-item{position:relative;flex:1;line-height:2rem;border-radius:var(--tui-radius-m)}.t-item:before,.t-item:after{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-item:after{border-radius:.5rem}.t-cell{position:relative;display:flex;align-items:center;justify-content:center;width:3.9375rem;text-align:center;outline:none;cursor:pointer;background-clip:content-box;box-sizing:border-box;border:.125rem solid transparent}.t-cell:before{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-cell_today:after{position:absolute;left:50%;transform:translate(-50%);content:\"\";bottom:.3125rem;height:.125rem;width:.75rem;border-radius:.375rem;background-color:var(--tui-text-01)}.t-cell_interval:before{background:var(--tui-base-02)}:host._single .t-cell_interval:before{background:var(--tui-secondary-hover)}.t-cell_interval:not(:last-child):before{right:-.25rem;border-top-right-radius:0;border-bottom-right-radius:0}.t-cell_interval:not([data-range=\"start\"]):not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell_interval:last-child:first-child:before{right:0}.t-cell_interval:first-child>.t-item{border-top-left-radius:var(--tui-radius-m);border-bottom-left-radius:var(--tui-radius-m)}.t-cell_interval:last-child>.t-item{border-top-right-radius:var(--tui-radius-m);border-bottom-right-radius:var(--tui-radius-m)}.t-cell_interval>.t-item{border-radius:0}.t-cell[data-range]:after{background-color:var(--tui-primary-text)}.t-cell[data-range]>.t-item{color:var(--tui-primary-text)}.t-cell[data-range]>.t-item:before,.t-cell[data-range]>.t-item:after{background-color:var(--tui-primary)}.t-cell[data-range][data-state=hover]>.t-item:before,.t-cell[data-range][data-state=hover]>.t-item:after{background-color:var(--tui-primary-hover)}.t-cell[data-range][data-state=active]>.t-item:before,.t-cell[data-range][data-state=active]>.t-item:after{background-color:var(--tui-primary-active)}.t-cell[data-range=end]:before{background:var(--tui-base-02)}:host._single .t-cell[data-range=end]:before{background:var(--tui-secondary-hover)}.t-cell[data-range=end]:not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=end]>.t-item:before{left:.625rem;border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=end]>.t-item:after{left:-2rem;right:100%;transform:translate(1.6rem) scaleY(.83) scaleX(.5) rotate(45deg)}.t-cell[data-range=start]>.t-item:before{right:.625rem;border-top-right-radius:0;border-bottom-right-radius:0}.t-cell[data-range=start]>.t-item:after{left:100%;right:-2rem;transform:translate(-1.6rem) scaleY(.83) scaleX(.5) rotate(45deg)}.t-cell[data-range=single]>.t-item:after{display:none}.t-cell[data-state=disabled]{pointer-events:none}.t-cell[data-state=disabled]>.t-item{opacity:.36}.t-cell[data-state=hover]:hover:not([data-range])>.t-item{background-color:var(--tui-secondary-hover)}.t-cell[data-state=active]:hover:not([data-range])>.t-item{background-color:var(--tui-secondary-active)}:host{display:block;height:13.625rem;width:15.75rem;padding:1.125rem;box-sizing:content-box}.t-row{flex-wrap:wrap;margin-top:1.4375rem}.t-cell:nth-child(n + 5){margin-top:1.75rem}.t-cell_interval:nth-child(4n):before{right:0}.t-scrollbar{height:inherit;width:inherit}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiPrimitiveYearPickerComponent, selector: "tui-primitive-year-picker", inputs: ["value", "initialItem", "min", "max", "disabledItemHandler"], outputs: ["yearClick"] }, { type: i1.TuiPrimitiveSpinButtonComponent, selector: "tui-primitive-spin-button", inputs: ["disabled", "leftDisabled", "rightDisabled"], outputs: ["leftClick", "rightClick"] }, { type: i1.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i3.TuiHoveredDirective, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { type: i3.TuiPressedDirective, selector: "[tuiPressedChange]", outputs: ["tuiPressedChange"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
162
+ TuiCalendarMonthComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCalendarMonthComponent, selector: "tui-calendar-month", inputs: { value: "value", year: "year", disabledItemHandler: "disabledItemHandler", min: "min", max: "max" }, outputs: { monthClick: "monthClick", hoveredItemChange: "hoveredItemChange", yearChange: "yearChange" }, host: { properties: { "class._single": "this.isSingle" } }, ngImport: i0, template: "<tui-scrollbar\n *ngIf=\"isYearPickerShown; else monthSelect\"\n class=\"t-scrollbar\"\n>\n <tui-primitive-year-picker\n [initialItem]=\"year\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button\n automation-id=\"tui-calendar-month__active-year\"\n tuiLink\n type=\"button\"\n [tuiFocusable]=\"false\"\n (click)=\"onYearClick()\"\n >\n {{ year.formattedYear }}\n </button>\n </tui-primitive-spin-button>\n <div class=\"t-row\">\n <ng-container *ngFor=\"let month of months$ | async; let index = index\">\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"t-cell\"\n [attr.data-range]=\"getItemRange(item)\"\n [attr.data-state]=\"getItemState(item)\"\n [class.t-cell_interval]=\"isItemInsideRange(item)\"\n [class.t-cell_today]=\"isItemToday(item)\"\n (click)=\"onItemClick(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n >\n <div class=\"t-item\">{{ month }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n", styles: [":host{display:block;font:var(--tui-font-text-m)}.t-row{position:relative;z-index:0;display:flex;justify-content:space-between;height:2.25rem}.t-item{position:relative;flex:1;line-height:2rem;border-radius:var(--tui-radius-m)}.t-item:before,.t-item:after{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-item:after{border-radius:.5rem}.t-cell{position:relative;display:flex;align-items:center;justify-content:center;width:3.9375rem;text-align:center;outline:none;cursor:pointer;background-clip:content-box;box-sizing:border-box;border:.125rem solid transparent}.t-cell:before{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-cell_today:after{position:absolute;left:50%;transform:translate(-50%);content:\"\";bottom:.3125rem;height:.125rem;width:.75rem;border-radius:.375rem;background-color:var(--tui-text-01)}.t-cell_interval:before{background:var(--tui-base-02)}:host._single .t-cell_interval:before{background:var(--tui-secondary-hover)}.t-cell_interval:not(:last-child):before{right:-.25rem;border-top-right-radius:0;border-bottom-right-radius:0}.t-cell_interval:not([data-range=\"start\"]):not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell_interval:last-child:first-child:before{right:0}.t-cell_interval:first-child>.t-item{border-top-left-radius:var(--tui-radius-m);border-bottom-left-radius:var(--tui-radius-m)}.t-cell_interval:last-child>.t-item{border-top-right-radius:var(--tui-radius-m);border-bottom-right-radius:var(--tui-radius-m)}.t-cell_interval>.t-item{border-radius:0}.t-cell[data-range]:after{background-color:var(--tui-primary-text)}.t-cell[data-range]>.t-item{color:var(--tui-primary-text)}.t-cell[data-range]>.t-item:before,.t-cell[data-range]>.t-item:after{background-color:var(--tui-primary)}.t-cell[data-range][data-state=hover]>.t-item:before,.t-cell[data-range][data-state=hover]>.t-item:after{background-color:var(--tui-primary-hover)}.t-cell[data-range][data-state=active]>.t-item:before,.t-cell[data-range][data-state=active]>.t-item:after{background-color:var(--tui-primary-active)}.t-cell[data-range=end]:before{background:var(--tui-base-02)}:host._single .t-cell[data-range=end]:before{background:var(--tui-secondary-hover)}.t-cell[data-range=end]:not(:first-child):before{border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=end]>.t-item:before{left:.625rem;border-top-left-radius:0;border-bottom-left-radius:0}.t-cell[data-range=end]>.t-item:after{left:-2rem;right:100%;transform:translate(1.6rem) scaleY(.83) scaleX(.5) rotate(45deg)}.t-cell[data-range=start]>.t-item:before{right:.625rem;border-top-right-radius:0;border-bottom-right-radius:0}.t-cell[data-range=start]>.t-item:after{left:100%;right:-2rem;transform:translate(-1.6rem) scaleY(.83) scaleX(.5) rotate(45deg)}.t-cell[data-range=single]>.t-item:after{display:none}.t-cell[data-state=disabled]{pointer-events:none}.t-cell[data-state=disabled]>.t-item{opacity:.36}.t-cell[data-state=hover]:hover:not([data-range])>.t-item{background-color:var(--tui-secondary-hover)}.t-cell[data-state=active]:hover:not([data-range])>.t-item{background-color:var(--tui-secondary-active)}:host{display:block;height:13.625rem;width:15.75rem;padding:1.125rem;box-sizing:content-box}.t-row{flex-wrap:wrap;margin-top:1.4375rem}.t-cell:nth-child(n + 5){margin-top:1.75rem}.t-cell_interval:nth-child(4n):before{right:0}.t-scrollbar{height:inherit;width:inherit}\n"], components: [{ type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiPrimitiveYearPickerComponent, selector: "tui-primitive-year-picker", inputs: ["value", "initialItem", "min", "max", "disabledItemHandler"], outputs: ["yearClick"] }, { type: i1.TuiPrimitiveSpinButtonComponent, selector: "tui-primitive-spin-button", inputs: ["disabled", "leftDisabled", "rightDisabled"], outputs: ["leftClick", "rightClick"] }, { type: i1.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i3.TuiHoveredDirective, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { type: i3.TuiPressedDirective, selector: "[tuiPressedChange]", outputs: ["tuiPressedChange"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
163
163
  __decorate([
164
164
  tuiPure
165
165
  ], TuiCalendarMonthComponent.prototype, "calculateDisabledItemHandlerWithMinMax", null);
@@ -194,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
194
194
  type: HostBinding,
195
195
  args: ['class._single']
196
196
  }], calculateDisabledItemHandlerWithMinMax: [] } });
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItbW9udGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItbW9udGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItbW9udGgudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBRVosTUFBTSxFQUNOLFFBQVEsRUFDUixhQUFhLEVBQ2IsZUFBZSxFQUNmLE9BQU8sR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUUsYUFBYSxFQUF3QixNQUFNLGdCQUFnQixDQUFDO0FBRXpGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFJekQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0FBUXBDLE1BQU0sT0FBTyx5QkFBeUI7SUErQmxDLFlBQzBDLE9BQXNDO1FBQXRDLFlBQU8sR0FBUCxPQUFPLENBQStCO1FBOUJoRixVQUFLLEdBQW9DLElBQUksQ0FBQztRQUc5QyxTQUFJLEdBQVksS0FBSyxDQUFDO1FBR3RCLHdCQUFtQixHQUNmLG9CQUFvQixDQUFDO1FBR3pCLFFBQUcsR0FBb0IsYUFBYSxDQUFDO1FBR3JDLFFBQUcsR0FBb0IsWUFBWSxDQUFDO1FBRzNCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBRzFDLHNCQUFpQixHQUFH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ICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG4gICAgVFVJX0ZJUlNUX0RBWSxcbiAgICBUVUlfTEFTVF9EQVksXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpRGF5LFxuICAgIFR1aU1vbnRoLFxuICAgIFR1aU1vbnRoUmFuZ2UsXG4gICAgdHVpTnVsbGFibGVTYW1lLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpWWVhcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUludGVyYWN0aXZlU3RhdGUsIFR1aVJhbmdlU3RhdGUsIFR1aVdpdGhPcHRpb25hbE1pbk1heH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlNb250aENvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9raXQvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9DQUxFTkRBUl9NT05USFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7VHVpQm9vbGVhbkhhbmRsZXJXaXRoQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5jb25zdCBUT0RBWSA9IFR1aURheS5jdXJyZW50TG9jYWwoKTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktY2FsZW5kYXItbW9udGgnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci1tb250aC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci1tb250aC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNhbGVuZGFyTW9udGhDb21wb25lbnQgaW1wbGVtZW50cyBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpTW9udGg+IHtcbiAgICBASW5wdXQoKVxuICAgIHZhbHVlOiBUdWlNb250aCB8IFR1aU1vbnRoUmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgeWVhcjogVHVpWWVhciA9IFRPREFZO1xuXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlCb29sZWFuSGFuZGxlcldpdGhDb250ZXh0PFR1aU1vbnRoLCBUdWlNb250aENvbnRleHQ+ID1cbiAgICAgICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIG1pbjogVHVpTW9udGggfCBudWxsID0gVFVJX0ZJUlNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgbWF4OiBUdWlNb250aCB8IG51bGwgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBtb250aENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlNb250aD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGhvdmVyZWRJdGVtQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlNb250aCB8IG51bGw+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB5ZWFyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlZZWFyPigpO1xuXG4gICAgaXNZZWFyUGlja2VyU2hvd24gPSBmYWxzZTtcblxuICAgIGhvdmVyZWRJdGVtOiBUdWlNb250aCB8IG51bGwgPSBudWxsO1xuICAgIHByZXNzZWRJdGVtOiBUdWlNb250aCB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX0NBTEVOREFSX01PTlRIUykgcmVhZG9ubHkgbW9udGhzJDogT2JzZXJ2YWJsZTxyZWFkb25seSBzdHJpbmdbXT4sXG4gICAgKSB7fVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fc2luZ2xlJylcbiAgICBnZXQgaXNTaW5nbGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnZhbHVlICE9PSBudWxsICYmXG4gICAgICAgICAgICAodGhpcy52YWx1ZSBpbnN0YW5jZW9mIFR1aU1vbnRoIHx8IHRoaXMudmFsdWUuaXNTaW5nbGVNb250aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNaW4oKTogVHVpTW9udGgge1xuICAgICAgICByZXR1cm4gdGhpcy5taW4gPz8gVFVJX0ZJUlNUX0RBWTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNYXgoKTogVHVpTW9udGgge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXggPz8gVFVJX0xBU1RfREFZO1xuICAgIH1cblxuICAgIGdldCBwcmV2aW91c1llYXJEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMueWVhci55ZWFyU2FtZU9yQmVmb3JlKHRoaXMuY29tcHV0ZWRNaW4pO1xuICAgIH1cblxuICAgIGdldCBuZXh0WWVhckRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyLnllYXJTYW1lT3JBZnRlcih0aGlzLmNvbXB1dGVkTWF4KTtcbiAgICB9XG5cbiAgICBnZXRJdGVtU3RhdGUoaXRlbTogVHVpTW9udGgpOiBUdWlJbnRlcmFjdGl2ZVN0YXRlIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHtkaXNhYmxlZEl0ZW1IYW5kbGVyV2l0aE1pbk1heCwgcHJlc3NlZEl0ZW0sIGhvdmVyZWRJdGVtfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKGRpc2FibGVkSXRlbUhhbmRsZXJXaXRoTWluTWF4KGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5EaXNhYmxlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcmVzc2VkSXRlbT8ubW9udGhTYW1lKGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5BY3RpdmU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaG92ZXJlZEl0ZW0/Lm1vbnRoU2FtZShpdGVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aUludGVyYWN0aXZlU3RhdGUuSG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBnZXRJdGVtUmFuZ2UoaXRlbTogVHVpTW9udGgpOiBUdWlSYW5nZVN0YXRlIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZSwgaG92ZXJlZEl0ZW19ID0gdGhpcztcblxuICAgICAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgVHVpTW9udGgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5tb250aFNhbWUoaXRlbSkgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZSA6IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0aGVGaXJzdE9mUmFuZ2UgPSB2YWx1ZS5mcm9tLm1vbnRoU2FtZShpdGVtKSAmJiAhdmFsdWUuaXNTaW5nbGVNb250aDtcbiAgICAgICAgY29uc3QgaG92ZXJlZEl0ZW1BZnRlckZyb20gPVxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQWZ0ZXIodmFsdWUuZnJvbSkgJiZcbiAgICAgICAgICAgIHZhbHVlLmZyb20ubW9udGhTYW1lKGl0ZW0pICYmXG4gICAgICAgICAgICB2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuICAgICAgICBjb25zdCBob3ZlcmVkSXRlbUlzQ2FuZGlkYXRlVG9CZUZyb20gPVxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoU2FtZShpdGVtKSAmJlxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQmVmb3JlKHZhbHVlLmZyb20pICYmXG4gICAgICAgICAgICB2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuXG4gICAgICAgIGlmICh0aGVGaXJzdE9mUmFuZ2UgfHwgaG92ZXJlZEl0ZW1BZnRlckZyb20gfHwgaG92ZXJlZEl0ZW1Jc0NhbmRpZGF0ZVRvQmVGcm9tKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5TdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRoZUxhc3RPZlJhbmdlID0gdmFsdWUudG8ubW9udGhTYW1lKGl0ZW0pICYmICF2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuICAgICAgICBjb25zdCBob3ZlcmVkSXRlbUJlZm9yZVRvID1cbiAgICAgICAgICAgIHZhbHVlLnRvLm1vbnRoU2FtZShpdGVtKSAmJlxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQmVmb3JlKHZhbHVlLnRvKSAmJlxuICAgICAgICAgICAgdmFsdWUuaXNTaW5nbGVNb250aDtcbiAgICAgICAgY29uc3QgaG92ZXJlZEl0ZW1Jc0NhbmRpZGF0ZVRvQmVUbyA9XG4gICAgICAgICAgICBob3ZlcmVkSXRlbT8ubW9udGhTYW1lKGl0ZW0pICYmXG4gICAgICAgICAgICBob3ZlcmVkSXRlbT8ubW9udGhBZnRlcih2YWx1ZS5mcm9tKSAmJlxuICAgICAgICAgICAgdmFsdWUuaXNTaW5nbGVNb250aDtcblxuICAgICAgICBpZiAodGhlTGFzdE9mUmFuZ2UgfHwgaG92ZXJlZEl0ZW1CZWZvcmVUbyB8fCBob3ZlcmVkSXRlbUlzQ2FuZGlkYXRlVG9CZVRvKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5FbmQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFsdWUuaXNTaW5nbGVNb250aCAmJiB2YWx1ZS5mcm9tLm1vbnRoU2FtZShpdGVtKVxuICAgICAgICAgICAgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZVxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGdldFR1aU1vbnRoKG1vbnRoTnVtYmVyOiBudW1iZXIsIHllYXJOdW1iZXI6IG51bWJlcik6IFR1aU1vbnRoIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlNb250aCh5ZWFyTnVtYmVyLCBtb250aE51bWJlcik7XG4gICAgfVxuXG4gICAgaXNJdGVtVG9kYXkoaXRlbTogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFRPREFZLm1vbnRoU2FtZShpdGVtKTtcbiAgICB9XG5cbiAgICBpc0l0ZW1JbnNpZGVSYW5nZShtb250aDogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSBpbnN0YW5jZW9mIFR1aU1vbnRoKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXZhbHVlLmlzU2luZ2xlTW9udGgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5mcm9tLm1vbnRoU2FtZU9yQmVmb3JlKG1vbnRoKSAmJiB2YWx1ZS50by5tb250aEFmdGVyKG1vbnRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChob3ZlcmVkSXRlbSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmFuZ2UgPSBUdWlNb250aFJhbmdlLnNvcnQodmFsdWUuZnJvbSwgaG92ZXJlZEl0ZW0pO1xuXG4gICAgICAgIHJldHVybiByYW5nZS5mcm9tLm1vbnRoU2FtZU9yQmVmb3JlKG1vbnRoKSAmJiByYW5nZS50by5tb250aEFmdGVyKG1vbnRoKTtcbiAgICB9XG5cbiAgICBvblBpY2tlclllYXJDbGljayh5ZWFyOiBUdWlZZWFyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNZZWFyUGlja2VyU2hvd24gPSBmYWxzZTtcblxuICAgICAgICBpZiAodGhpcy55ZWFyLnllYXJTYW1lKHllYXIpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZVllYXIoeWVhcik7XG4gICAgfVxuXG4gICAgb25JdGVtQ2xpY2sobW9udGg6IFR1aU1vbnRoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXJXaXRoTWluTWF4KG1vbnRoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5tb250aENsaWNrLmVtaXQobW9udGgpO1xuICAgIH1cblxuICAgIG9uWWVhckNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzWWVhclBpY2tlclNob3duID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbk5leHRZZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZVllYXIodGhpcy55ZWFyLmFwcGVuZCh7eWVhcjogMX0pKTtcbiAgICB9XG5cbiAgICBvblByZXZpb3VzWWVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVZZWFyKHRoaXMueWVhci5hcHBlbmQoe3llYXI6IC0xfSkpO1xuICAgIH1cblxuICAgIG9uSXRlbUhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbiwgaXRlbTogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkSXRlbShob3ZlcmVkID8gaXRlbSA6IG51bGwpO1xuICAgIH1cblxuICAgIG9uSXRlbVByZXNzZWQocHJlc3NlZDogYm9vbGVhbiwgaXRlbTogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVQcmVzc2VkSXRlbShwcmVzc2VkID8gaXRlbSA6IG51bGwpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVEaXNhYmxlZEl0ZW1IYW5kbGVyV2l0aE1pbk1heChcbiAgICAgICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXJXaXRoQ29udGV4dDxUdWlNb250aCwgVHVpTW9udGhDb250ZXh0PixcbiAgICAgICAgdmFsdWU6IFR1aU1vbnRoIHwgVHVpTW9udGhSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbjogVHVpTW9udGgsXG4gICAgICAgIG1heDogVHVpTW9udGgsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpTW9udGg+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW0gPT5cbiAgICAgICAgICAgIGl0ZW0ubW9udGhCZWZvcmUobWluKSB8fFxuICAgICAgICAgICAgaXRlbS5tb250aEFmdGVyKG1heCkgfHxcbiAgICAgICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSwge3ZhbHVlfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZGlzYWJsZWRJdGVtSGFuZGxlcldpdGhNaW5NYXgoKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpTW9udGg+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlRGlzYWJsZWRJdGVtSGFuZGxlcldpdGhNaW5NYXgoXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIsXG4gICAgICAgICAgICB0aGlzLnZhbHVlLFxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZE1pbixcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRNYXgsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVIb3ZlcmVkSXRlbShtb250aDogVHVpTW9udGggfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlOdWxsYWJsZVNhbWUodGhpcy5ob3ZlcmVkSXRlbSwgbW9udGgsIChhLCBiKSA9PiBhLm1vbnRoU2FtZShiKSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaG92ZXJlZEl0ZW0gPSBtb250aDtcbiAgICAgICAgdGhpcy5ob3ZlcmVkSXRlbUNoYW5nZS5lbWl0KG1vbnRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVByZXNzZWRJdGVtKGl0ZW06IFR1aU1vbnRoIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByZXNzZWRJdGVtID0gaXRlbTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFjdGl2ZVllYXIoeWVhcjogVHVpWWVhcik6IHZvaWQge1xuICAgICAgICB0aGlzLnllYXIgPSB5ZWFyO1xuICAgICAgICB0aGlzLnllYXJDaGFuZ2UuZW1pdCh5ZWFyKTtcbiAgICB9XG59XG4iLCI8dHVpLXNjcm9sbGJhclxuICAgICpuZ0lmPVwiaXNZZWFyUGlja2VyU2hvd247IGVsc2UgbW9udGhTZWxlY3RcIlxuICAgIGNsYXNzPVwidC1zY3JvbGxiYXJcIlxuPlxuICAgIDx0dWktcHJpbWl0aXZlLXllYXItcGlja2VyXG4gICAgICAgIFttaW5dPVwiY29tcHV0ZWRNaW5cIlxuICAgICAgICBbbWF4XT1cImNvbXB1dGVkTWF4XCJcbiAgICAgICAgW2luaXRpYWxJdGVtXT1cInllYXJcIlxuICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAoeWVhckNsaWNrKT1cIm9uUGlja2VyWWVhckNsaWNrKCRldmVudClcIlxuICAgID48L3R1aS1wcmltaXRpdmUteWVhci1waWNrZXI+XG48L3R1aS1zY3JvbGxiYXI+XG48bmctdGVtcGxhdGUgI21vbnRoU2VsZWN0PlxuICAgIDx0dWktcHJpbWl0aXZlLXNwaW4tYnV0dG9uXG4gICAgICAgIFtmb2N1c2FibGVdPVwiZmFsc2VcIlxuICAgICAgICBbbGVmdERpc2FibGVkXT1cInByZXZpb3VzWWVhckRpc2FibGVkXCJcbiAgICAgICAgW3JpZ2h0RGlzYWJsZWRdPVwibmV4dFllYXJEaXNhYmxlZFwiXG4gICAgICAgIChsZWZ0Q2xpY2spPVwib25QcmV2aW91c1llYXIoKVwiXG4gICAgICAgIChyaWdodENsaWNrKT1cIm9uTmV4dFllYXIoKVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0dWlMaW5rXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktY2FsZW5kYXItbW9udGhfX2FjdGl2ZS15ZWFyXCJcbiAgICAgICAgICAgIFt0dWlGb2N1c2FibGVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uWWVhckNsaWNrKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB5ZWFyLmZvcm1hdHRlZFllYXIgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC90dWktcHJpbWl0aXZlLXNwaW4tYnV0dG9uPlxuICAgIDxkaXYgY2xhc3M9XCJ0LXJvd1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBtb250aCBvZiBtb250aHMkIHwgYXN5bmM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKnR1aUxldD1cImdldFR1aU1vbnRoKGluZGV4LCB5ZWFyLnllYXIpIGFzIGl0ZW1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jZWxsXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1jZWxsX3RvZGF5XT1cImlzSXRlbVRvZGF5KGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1jZWxsX2ludGVydmFsXT1cImlzSXRlbUluc2lkZVJhbmdlKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXJhbmdlXT1cImdldEl0ZW1SYW5nZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1zdGF0ZV09XCJnZXRJdGVtU3RhdGUoaXRlbSlcIlxuICAgICAgICAgICAgICAgICh0dWlIb3ZlcmVkQ2hhbmdlKT1cIm9uSXRlbUhvdmVyZWQoJGV2ZW50LCBpdGVtKVwiXG4gICAgICAgICAgICAgICAgKHR1aVByZXNzZWRDaGFuZ2UpPVwib25JdGVtSG92ZXJlZCgkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soaXRlbSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWl0ZW1cIj57eyBtb250aCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItbW9udGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItbW9udGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItbW9udGgvY2FsZW5kYXItbW9udGgudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBRVosTUFBTSxFQUNOLFFBQVEsRUFDUixhQUFhLEVBQ2IsZUFBZSxFQUNmLE9BQU8sR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUUsYUFBYSxFQUF3QixNQUFNLGdCQUFnQixDQUFDO0FBRXpGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFJekQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0FBUXBDLE1BQU0sT0FBTyx5QkFBeUI7SUErQmxDLFlBQzBDLE9BQXNDO1FBQXRDLFlBQU8sR0FBUCxPQUFPLENBQStCO1FBOUJoRixVQUFLLEdBQW9DLElBQUksQ0FBQztRQUc5QyxTQUFJLEdBQVksS0FBSyxDQUFDO1FBR3RCLHdCQUFtQixHQUNmLG9CQUFvQixDQUFDO1FBR3pCLFFBQUcsR0FBb0IsYUFBYSxDQUFDO1FBR3JDLFFBQUcsR0FBb0IsWUFBWSxDQUFDO1FBRzNCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBRzFDLHNCQUFpQixHQUFH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ICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG4gICAgVFVJX0ZJUlNUX0RBWSxcbiAgICBUVUlfTEFTVF9EQVksXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpRGF5LFxuICAgIFR1aU1vbnRoLFxuICAgIFR1aU1vbnRoUmFuZ2UsXG4gICAgdHVpTnVsbGFibGVTYW1lLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpWWVhcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUludGVyYWN0aXZlU3RhdGUsIFR1aVJhbmdlU3RhdGUsIFR1aVdpdGhPcHRpb25hbE1pbk1heH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlNb250aENvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9raXQvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9DQUxFTkRBUl9NT05USFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7VHVpQm9vbGVhbkhhbmRsZXJXaXRoQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5jb25zdCBUT0RBWSA9IFR1aURheS5jdXJyZW50TG9jYWwoKTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktY2FsZW5kYXItbW9udGgnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci1tb250aC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci1tb250aC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNhbGVuZGFyTW9udGhDb21wb25lbnQgaW1wbGVtZW50cyBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpTW9udGg+IHtcbiAgICBASW5wdXQoKVxuICAgIHZhbHVlOiBUdWlNb250aCB8IFR1aU1vbnRoUmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgeWVhcjogVHVpWWVhciA9IFRPREFZO1xuXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlCb29sZWFuSGFuZGxlcldpdGhDb250ZXh0PFR1aU1vbnRoLCBUdWlNb250aENvbnRleHQ+ID1cbiAgICAgICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIG1pbjogVHVpTW9udGggfCBudWxsID0gVFVJX0ZJUlNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgbWF4OiBUdWlNb250aCB8IG51bGwgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBtb250aENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlNb250aD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGhvdmVyZWRJdGVtQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlNb250aCB8IG51bGw+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB5ZWFyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlZZWFyPigpO1xuXG4gICAgaXNZZWFyUGlja2VyU2hvd24gPSBmYWxzZTtcblxuICAgIGhvdmVyZWRJdGVtOiBUdWlNb250aCB8IG51bGwgPSBudWxsO1xuICAgIHByZXNzZWRJdGVtOiBUdWlNb250aCB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX0NBTEVOREFSX01PTlRIUykgcmVhZG9ubHkgbW9udGhzJDogT2JzZXJ2YWJsZTxyZWFkb25seSBzdHJpbmdbXT4sXG4gICAgKSB7fVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fc2luZ2xlJylcbiAgICBnZXQgaXNTaW5nbGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnZhbHVlICE9PSBudWxsICYmXG4gICAgICAgICAgICAodGhpcy52YWx1ZSBpbnN0YW5jZW9mIFR1aU1vbnRoIHx8IHRoaXMudmFsdWUuaXNTaW5nbGVNb250aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNaW4oKTogVHVpTW9udGgge1xuICAgICAgICByZXR1cm4gdGhpcy5taW4gPz8gVFVJX0ZJUlNUX0RBWTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNYXgoKTogVHVpTW9udGgge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXggPz8gVFVJX0xBU1RfREFZO1xuICAgIH1cblxuICAgIGdldCBwcmV2aW91c1llYXJEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMueWVhci55ZWFyU2FtZU9yQmVmb3JlKHRoaXMuY29tcHV0ZWRNaW4pO1xuICAgIH1cblxuICAgIGdldCBuZXh0WWVhckRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyLnllYXJTYW1lT3JBZnRlcih0aGlzLmNvbXB1dGVkTWF4KTtcbiAgICB9XG5cbiAgICBnZXRJdGVtU3RhdGUoaXRlbTogVHVpTW9udGgpOiBUdWlJbnRlcmFjdGl2ZVN0YXRlIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHtkaXNhYmxlZEl0ZW1IYW5kbGVyV2l0aE1pbk1heCwgcHJlc3NlZEl0ZW0sIGhvdmVyZWRJdGVtfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKGRpc2FibGVkSXRlbUhhbmRsZXJXaXRoTWluTWF4KGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5EaXNhYmxlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcmVzc2VkSXRlbT8ubW9udGhTYW1lKGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5BY3RpdmU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaG92ZXJlZEl0ZW0/Lm1vbnRoU2FtZShpdGVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aUludGVyYWN0aXZlU3RhdGUuSG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBnZXRJdGVtUmFuZ2UoaXRlbTogVHVpTW9udGgpOiBUdWlSYW5nZVN0YXRlIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZSwgaG92ZXJlZEl0ZW19ID0gdGhpcztcblxuICAgICAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgVHVpTW9udGgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5tb250aFNhbWUoaXRlbSkgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZSA6IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0aGVGaXJzdE9mUmFuZ2UgPSB2YWx1ZS5mcm9tLm1vbnRoU2FtZShpdGVtKSAmJiAhdmFsdWUuaXNTaW5nbGVNb250aDtcbiAgICAgICAgY29uc3QgaG92ZXJlZEl0ZW1BZnRlckZyb20gPVxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQWZ0ZXIodmFsdWUuZnJvbSkgJiZcbiAgICAgICAgICAgIHZhbHVlLmZyb20ubW9udGhTYW1lKGl0ZW0pICYmXG4gICAgICAgICAgICB2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuICAgICAgICBjb25zdCBob3ZlcmVkSXRlbUlzQ2FuZGlkYXRlVG9CZUZyb20gPVxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoU2FtZShpdGVtKSAmJlxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQmVmb3JlKHZhbHVlLmZyb20pICYmXG4gICAgICAgICAgICB2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuXG4gICAgICAgIGlmICh0aGVGaXJzdE9mUmFuZ2UgfHwgaG92ZXJlZEl0ZW1BZnRlckZyb20gfHwgaG92ZXJlZEl0ZW1Jc0NhbmRpZGF0ZVRvQmVGcm9tKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5TdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRoZUxhc3RPZlJhbmdlID0gdmFsdWUudG8ubW9udGhTYW1lKGl0ZW0pICYmICF2YWx1ZS5pc1NpbmdsZU1vbnRoO1xuICAgICAgICBjb25zdCBob3ZlcmVkSXRlbUJlZm9yZVRvID1cbiAgICAgICAgICAgIHZhbHVlLnRvLm1vbnRoU2FtZShpdGVtKSAmJlxuICAgICAgICAgICAgaG92ZXJlZEl0ZW0/Lm1vbnRoQmVmb3JlKHZhbHVlLnRvKSAmJlxuICAgICAgICAgICAgdmFsdWUuaXNTaW5nbGVNb250aDtcbiAgICAgICAgY29uc3QgaG92ZXJlZEl0ZW1Jc0NhbmRpZGF0ZVRvQmVUbyA9XG4gICAgICAgICAgICBob3ZlcmVkSXRlbT8ubW9udGhTYW1lKGl0ZW0pICYmXG4gICAgICAgICAgICBob3ZlcmVkSXRlbT8ubW9udGhBZnRlcih2YWx1ZS5mcm9tKSAmJlxuICAgICAgICAgICAgdmFsdWUuaXNTaW5nbGVNb250aDtcblxuICAgICAgICBpZiAodGhlTGFzdE9mUmFuZ2UgfHwgaG92ZXJlZEl0ZW1CZWZvcmVUbyB8fCBob3ZlcmVkSXRlbUlzQ2FuZGlkYXRlVG9CZVRvKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5FbmQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFsdWUuaXNTaW5nbGVNb250aCAmJiB2YWx1ZS5mcm9tLm1vbnRoU2FtZShpdGVtKVxuICAgICAgICAgICAgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZVxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGdldFR1aU1vbnRoKG1vbnRoTnVtYmVyOiBudW1iZXIsIHllYXJOdW1iZXI6IG51bWJlcik6IFR1aU1vbnRoIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlNb250aCh5ZWFyTnVtYmVyLCBtb250aE51bWJlcik7XG4gICAgfVxuXG4gICAgaXNJdGVtVG9kYXkoaXRlbTogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFRPREFZLm1vbnRoU2FtZShpdGVtKTtcbiAgICB9XG5cbiAgICBpc0l0ZW1JbnNpZGVSYW5nZShtb250aDogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSBpbnN0YW5jZW9mIFR1aU1vbnRoKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXZhbHVlLmlzU2luZ2xlTW9udGgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5mcm9tLm1vbnRoU2FtZU9yQmVmb3JlKG1vbnRoKSAmJiB2YWx1ZS50by5tb250aEFmdGVyKG1vbnRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChob3ZlcmVkSXRlbSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmFuZ2UgPSBUdWlNb250aFJhbmdlLnNvcnQodmFsdWUuZnJvbSwgaG92ZXJlZEl0ZW0pO1xuXG4gICAgICAgIHJldHVybiByYW5nZS5mcm9tLm1vbnRoU2FtZU9yQmVmb3JlKG1vbnRoKSAmJiByYW5nZS50by5tb250aEFmdGVyKG1vbnRoKTtcbiAgICB9XG5cbiAgICBvblBpY2tlclllYXJDbGljayh5ZWFyOiBUdWlZZWFyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNZZWFyUGlja2VyU2hvd24gPSBmYWxzZTtcblxuICAgICAgICBpZiAodGhpcy55ZWFyLnllYXJTYW1lKHllYXIpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZVllYXIoeWVhcik7XG4gICAgfVxuXG4gICAgb25JdGVtQ2xpY2sobW9udGg6IFR1aU1vbnRoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXJXaXRoTWluTWF4KG1vbnRoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5tb250aENsaWNrLmVtaXQobW9udGgpO1xuICAgIH1cblxuICAgIG9uWWVhckNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzWWVhclBpY2tlclNob3duID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbk5leHRZZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZVllYXIodGhpcy55ZWFyLmFwcGVuZCh7eWVhcjogMX0pKTtcbiAgICB9XG5cbiAgICBvblByZXZpb3VzWWVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVZZWFyKHRoaXMueWVhci5hcHBlbmQoe3llYXI6IC0xfSkpO1xuICAgIH1cblxuICAgIG9uSXRlbUhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbiwgaXRlbTogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkSXRlbShob3ZlcmVkID8gaXRlbSA6IG51bGwpO1xuICAgIH1cblxuICAgIG9uSXRlbVByZXNzZWQocHJlc3NlZDogYm9vbGVhbiwgaXRlbTogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVQcmVzc2VkSXRlbShwcmVzc2VkID8gaXRlbSA6IG51bGwpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVEaXNhYmxlZEl0ZW1IYW5kbGVyV2l0aE1pbk1heChcbiAgICAgICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXJXaXRoQ29udGV4dDxUdWlNb250aCwgVHVpTW9udGhDb250ZXh0PixcbiAgICAgICAgdmFsdWU6IFR1aU1vbnRoIHwgVHVpTW9udGhSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbjogVHVpTW9udGgsXG4gICAgICAgIG1heDogVHVpTW9udGgsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpTW9udGg+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW0gPT5cbiAgICAgICAgICAgIGl0ZW0ubW9udGhCZWZvcmUobWluKSB8fFxuICAgICAgICAgICAgaXRlbS5tb250aEFmdGVyKG1heCkgfHxcbiAgICAgICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSwge3ZhbHVlfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZGlzYWJsZWRJdGVtSGFuZGxlcldpdGhNaW5NYXgoKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpTW9udGg+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlRGlzYWJsZWRJdGVtSGFuZGxlcldpdGhNaW5NYXgoXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIsXG4gICAgICAgICAgICB0aGlzLnZhbHVlLFxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZE1pbixcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRNYXgsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVIb3ZlcmVkSXRlbShtb250aDogVHVpTW9udGggfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlOdWxsYWJsZVNhbWUodGhpcy5ob3ZlcmVkSXRlbSwgbW9udGgsIChhLCBiKSA9PiBhLm1vbnRoU2FtZShiKSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaG92ZXJlZEl0ZW0gPSBtb250aDtcbiAgICAgICAgdGhpcy5ob3ZlcmVkSXRlbUNoYW5nZS5lbWl0KG1vbnRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVByZXNzZWRJdGVtKGl0ZW06IFR1aU1vbnRoIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByZXNzZWRJdGVtID0gaXRlbTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFjdGl2ZVllYXIoeWVhcjogVHVpWWVhcik6IHZvaWQge1xuICAgICAgICB0aGlzLnllYXIgPSB5ZWFyO1xuICAgICAgICB0aGlzLnllYXJDaGFuZ2UuZW1pdCh5ZWFyKTtcbiAgICB9XG59XG4iLCI8dHVpLXNjcm9sbGJhclxuICAgICpuZ0lmPVwiaXNZZWFyUGlja2VyU2hvd247IGVsc2UgbW9udGhTZWxlY3RcIlxuICAgIGNsYXNzPVwidC1zY3JvbGxiYXJcIlxuPlxuICAgIDx0dWktcHJpbWl0aXZlLXllYXItcGlja2VyXG4gICAgICAgIFtpbml0aWFsSXRlbV09XCJ5ZWFyXCJcbiAgICAgICAgW21heF09XCJjb21wdXRlZE1heFwiXG4gICAgICAgIFttaW5dPVwiY29tcHV0ZWRNaW5cIlxuICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAoeWVhckNsaWNrKT1cIm9uUGlja2VyWWVhckNsaWNrKCRldmVudClcIlxuICAgID48L3R1aS1wcmltaXRpdmUteWVhci1waWNrZXI+XG48L3R1aS1zY3JvbGxiYXI+XG48bmctdGVtcGxhdGUgI21vbnRoU2VsZWN0PlxuICAgIDx0dWktcHJpbWl0aXZlLXNwaW4tYnV0dG9uXG4gICAgICAgIFtmb2N1c2FibGVdPVwiZmFsc2VcIlxuICAgICAgICBbbGVmdERpc2FibGVkXT1cInByZXZpb3VzWWVhckRpc2FibGVkXCJcbiAgICAgICAgW3JpZ2h0RGlzYWJsZWRdPVwibmV4dFllYXJEaXNhYmxlZFwiXG4gICAgICAgIChsZWZ0Q2xpY2spPVwib25QcmV2aW91c1llYXIoKVwiXG4gICAgICAgIChyaWdodENsaWNrKT1cIm9uTmV4dFllYXIoKVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLW1vbnRoX19hY3RpdmUteWVhclwiXG4gICAgICAgICAgICB0dWlMaW5rXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIFt0dWlGb2N1c2FibGVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uWWVhckNsaWNrKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB5ZWFyLmZvcm1hdHRlZFllYXIgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC90dWktcHJpbWl0aXZlLXNwaW4tYnV0dG9uPlxuICAgIDxkaXYgY2xhc3M9XCJ0LXJvd1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBtb250aCBvZiBtb250aHMkIHwgYXN5bmM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKnR1aUxldD1cImdldFR1aU1vbnRoKGluZGV4LCB5ZWFyLnllYXIpIGFzIGl0ZW1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jZWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXJhbmdlXT1cImdldEl0ZW1SYW5nZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1zdGF0ZV09XCJnZXRJdGVtU3RhdGUoaXRlbSlcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWNlbGxfaW50ZXJ2YWxdPVwiaXNJdGVtSW5zaWRlUmFuZ2UoaXRlbSlcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LWNlbGxfdG9kYXldPVwiaXNJdGVtVG9kYXkoaXRlbSlcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiXG4gICAgICAgICAgICAgICAgKHR1aUhvdmVyZWRDaGFuZ2UpPVwib25JdGVtSG92ZXJlZCgkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAodHVpUHJlc3NlZENoYW5nZSk9XCJvbkl0ZW1Ib3ZlcmVkKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWl0ZW1cIj57eyBtb250aCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -110,7 +110,7 @@ export class TuiCalendarRangeComponent {
110
110
  }
111
111
  }
112
112
  TuiCalendarRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiCalendarRangeComponent, deps: [{ token: TUI_CALENDAR_DATE_STREAM, optional: true }, { token: ChangeDetectorRef }, { token: TuiDestroyService, self: true }, { token: TUI_OTHER_DATE_TEXT }, { token: TUI_COMMON_ICONS }], target: i0.ɵɵFactoryTarget.Component });
113
- TuiCalendarRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCalendarRangeComponent, selector: "tui-calendar-range", inputs: { defaultViewedMonth: "defaultViewedMonth", disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", items: "items", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", value: "value" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown.capture": "onEsc($event)" } }, providers: [TuiDestroyService], ngImport: i0, template: "<tui-primitive-calendar-range\n *ngIf=\"!items.length; else presets\"\n automation-id=\"tui-calendar-range__calendars\"\n tuiPreventDefault=\"mousedown\"\n [markerHandler]=\"markerHandler\"\n [min]=\"computedMin | tuiMapper : maxLengthMapper : value : maxLength : true\"\n [max]=\"computedMax | tuiMapper : maxLengthMapper : value : maxLength : false\"\n [defaultViewedMonthFirst]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n></tui-primitive-calendar-range>\n<ng-template #presets>\n <div class=\"t-wrapper\">\n <tui-calendar\n automation-id=\"tui-calendar-range__calendar\"\n tuiPreventDefault=\"mousedown\"\n [value]=\"value\"\n [markerHandler]=\"markerHandler\"\n [min]=\"computedMin | tuiMapper : maxLengthMapper : value : maxLength : true\"\n [max]=\"computedMax | tuiMapper : maxLengthMapper : value : maxLength : false\"\n [month]=\"computedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n (dayClick)=\"onDayClick($event)\"\n ></tui-calendar>\n <tui-data-list\n role=\"menu\"\n automation-id=\"tui-calendar-range__menu\"\n class=\"t-menu\"\n >\n <button\n *ngFor=\"let item of items | tuiMapper : mapper : min : max : minLength : (otherDateText$ | async)\"\n tuiOption\n tuiPreventDefault=\"mousedown\"\n role=\"menuitemradio\"\n automation-id=\"tui-calendar-range__menu__item\"\n [attr.aria-checked]=\"isItemActive(item)\"\n (keydown.enter.prevent)=\"onItemSelect(item)\"\n (keydown.space.prevent)=\"onItemSelect(item)\"\n (click)=\"onItemSelect(item)\"\n >\n {{ item }}\n <tui-svg\n *ngIf=\"isItemActive(item)\"\n automation-id=\"tui-calendar-range__checkmark\"\n class=\"t-checkmark\"\n [src]=\"icons.check\"\n ></tui-svg>\n </button>\n </tui-data-list>\n </div>\n</ng-template>\n", styles: [":host{display:block}.t-wrapper{display:flex}.t-menu{width:11rem;border-left:1px solid var(--tui-base-03)}.t-checkmark{margin-left:auto;width:1rem;height:1rem}\n"], components: [{ type: i1.TuiPrimitiveCalendarRangeComponent, selector: "tui-primitive-calendar-range", inputs: ["disabledItemHandler", "markerHandler", "defaultViewedMonthFirst", "defaultViewedMonthSecond", "min", "max", "value"], outputs: ["dayClick"] }, { type: i2.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }, { type: i2.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent", "size"] }, { type: i2.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "tuiMapper": i4.TuiMapperPipe, "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
113
+ TuiCalendarRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCalendarRangeComponent, selector: "tui-calendar-range", inputs: { defaultViewedMonth: "defaultViewedMonth", disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", items: "items", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", value: "value" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown.capture": "onEsc($event)" } }, providers: [TuiDestroyService], ngImport: i0, template: "<tui-primitive-calendar-range\n *ngIf=\"!items.length; else presets\"\n automation-id=\"tui-calendar-range__calendars\"\n tuiPreventDefault=\"mousedown\"\n [defaultViewedMonthFirst]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax | tuiMapper: maxLengthMapper : value : maxLength : false\"\n [min]=\"computedMin | tuiMapper: maxLengthMapper : value : maxLength : true\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n></tui-primitive-calendar-range>\n<ng-template #presets>\n <div class=\"t-wrapper\">\n <tui-calendar\n automation-id=\"tui-calendar-range__calendar\"\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"calculatedDisabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax | tuiMapper: maxLengthMapper : value : maxLength : false\"\n [min]=\"computedMin | tuiMapper: maxLengthMapper : value : maxLength : true\"\n [month]=\"computedMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n ></tui-calendar>\n <tui-data-list\n automation-id=\"tui-calendar-range__menu\"\n role=\"menu\"\n class=\"t-menu\"\n >\n <button\n *ngFor=\"let item of items | tuiMapper: mapper : min : max : minLength : (otherDateText$ | async)\"\n automation-id=\"tui-calendar-range__menu__item\"\n role=\"menuitemradio\"\n tuiOption\n tuiPreventDefault=\"mousedown\"\n [attr.aria-checked]=\"isItemActive(item)\"\n (click)=\"onItemSelect(item)\"\n (keydown.enter.prevent)=\"onItemSelect(item)\"\n (keydown.space.prevent)=\"onItemSelect(item)\"\n >\n {{ item }}\n <tui-svg\n *ngIf=\"isItemActive(item)\"\n automation-id=\"tui-calendar-range__checkmark\"\n class=\"t-checkmark\"\n [src]=\"icons.check\"\n ></tui-svg>\n </button>\n </tui-data-list>\n </div>\n</ng-template>\n", styles: [":host{display:block}.t-wrapper{display:flex}.t-menu{width:11rem;border-left:1px solid var(--tui-base-03)}.t-checkmark{margin-left:auto;width:1rem;height:1rem}\n"], components: [{ type: i1.TuiPrimitiveCalendarRangeComponent, selector: "tui-primitive-calendar-range", inputs: ["disabledItemHandler", "markerHandler", "defaultViewedMonthFirst", "defaultViewedMonthSecond", "min", "max", "value"], outputs: ["dayClick"] }, { type: i2.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }, { type: i2.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent", "size"] }, { type: i2.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "tuiMapper": i4.TuiMapperPipe, "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
114
114
  __decorate([
115
115
  tuiPure
116
116
  ], TuiCalendarRangeComponent.prototype, "calculateDisabledItemHandler", null);
@@ -166,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
166
166
  type: HostListener,
167
167
  args: ['document:keydown.capture', ['$event']]
168
168
  }], calculateDisabledItemHandler: [] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBSVosV0FBVyxFQUNYLGlCQUFpQixFQUNqQixXQUFXLEVBRVgsUUFBUSxFQUNSLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLDBCQUEwQixHQUk3QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyx3QkFBd0IsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5GLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQVN6QyxNQUFNLE9BQU8seUJBQXlCO0lBMkNsQyxZQUdJLFlBQW1ELEVBQ3hCLEdBQXNCLEVBQ2QsUUFBMkIsRUFDeEIsY0FBa0MsRUFDckMsS0FBcUI7UUFEbEIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ3JDLFVBQUssR0FBTCxL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SztnQkFJRyxXQUFXO3NCQURuQixNQUFNO2dCQWtDUCxLQUFLO3NCQURKLFlBQVk7dUJBQUMsMEJBQTBCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBa0c1Qyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIFRVSV9GSVJTVF9EQVksXG4gICAgVFVJX0xBU1RfREFZLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aURheSxcbiAgICBUdWlEYXlMaWtlLFxuICAgIFR1aURheVJhbmdlLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aUlzU3RyaW5nLFxuICAgIFR1aU1hcHBlcixcbiAgICBUdWlNb250aCxcbiAgICB0dWlOdWxsYWJsZVNhbWUsXG4gICAgdHVpT2JqZWN0RnJvbUVudHJpZXMsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlXYXRjaCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFRVSV9DT01NT05fSUNPTlMsXG4gICAgVFVJX0RFRkFVTFRfTUFSS0VSX0hBTkRMRVIsXG4gICAgVHVpQ29tbW9uSWNvbnMsXG4gICAgVHVpTWFya2VySGFuZGxlcixcbiAgICBUdWlXaXRoT3B0aW9uYWxNaW5NYXgsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpRGF5UmFuZ2VQZXJpb2R9IGZyb20gJ0B0YWlnYS11aS9raXQvY2xhc3Nlcyc7XG5pbXBvcnQge01BWF9EQVlfUkFOR0VfTEVOR1RIX01BUFBFUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0sIFRVSV9PVEhFUl9EQVRFX1RFWFR9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1jYWxlbmRhci1yYW5nZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLXJhbmdlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLXJhbmdlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNhbGVuZGFyUmFuZ2VDb21wb25lbnQgaW1wbGVtZW50cyBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpRGF5PiB7XG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0Vmlld2VkTW9udGg6IFR1aU1vbnRoID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgbWFya2VySGFuZGxlcjogVHVpTWFya2VySGFuZGxlciA9IFRVSV9ERUZBVUxUX01BUktFUl9IQU5ETEVSO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtczogcmVhZG9ubHkgVHVpRGF5UmFuZ2VQZXJpb2RbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBtaW46IFR1aURheSB8IG51bGwgPSBUVUlfRklSU1RfREFZO1xuXG4gICAgQElucHV0KClcbiAgICBtYXg6IFR1aURheSB8IG51bGwgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBASW5wdXQoKVxuICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBtYXhMZW5ndGg6IFR1aURheUxpa2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgdmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCA9IG51bGw7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VHVpRGF5UmFuZ2UgfCBudWxsPigpO1xuXG4gICAgcHJldmlvdXNWYWx1ZTogVHVpRGF5UmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIHJlYWRvbmx5IG1heExlbmd0aE1hcHBlcjogVHVpTWFwcGVyPFR1aURheSwgVHVpRGF5PiA9IE1BWF9EQVlfUkFOR0VfTEVOR1RIX01BUFBFUjtcblxuICAgIGdldCBjb21wdXRlZE1pbigpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gdGhpcy5taW4gPz8gVFVJX0ZJUlNUX0RBWTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNYXgoKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWF4ID8/IFRVSV9MQVNUX0RBWTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0pXG4gICAgICAgIHZhbHVlQ2hhbmdlczogT2JzZXJ2YWJsZTxUdWlEYXlSYW5nZSB8IG51bGw+IHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVFVJX09USEVSX0RBVEVfVEVYVCkgcmVhZG9ubHkgb3RoZXJEYXRlVGV4dCQ6IE9ic2VydmFibGU8c3RyaW5nPixcbiAgICAgICAgQEluamVjdChUVUlfQ09NTU9OX0lDT05TKSByZWFkb25seSBpY29uczogVHVpQ29tbW9uSWNvbnMsXG4gICAgKSB7XG4gICAgICAgIGlmICghdmFsdWVDaGFuZ2VzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB2YWx1ZUNoYW5nZXMucGlwZSh0dWlXYXRjaChjZHIpLCB0YWtlVW50aWwoZGVzdHJveSQpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmNhcHR1cmUnLCBbJyRldmVudCddKVxuICAgIG9uRXNjKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC5rZXkgIT09ICdFc2NhcGUnIHx8ICF0aGlzLnZhbHVlPy5pc1NpbmdsZURheSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgcmVhZG9ubHkgbWFwcGVyOiBUdWlNYXBwZXI8XG4gICAgICAgIHJlYWRvbmx5IFR1aURheVJhbmdlUGVyaW9kW10sXG4gICAgICAgIFJlYWRvbmx5QXJyYXk8VHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmc+XG4gICAgPiA9IChcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIG1pbjogVHVpRGF5LFxuICAgICAgICBtYXg6IFR1aURheSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgICAgIG90aGVyRGF0ZVRleHQ6IHN0cmluZyxcbiAgICApID0+IFtcbiAgICAgICAgLi4uaXRlbXMuZmlsdGVyKFxuICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgIChtaW5MZW5ndGggPT09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5yYW5nZS5mcm9tLmFwcGVuZChtaW5MZW5ndGgpLmRheVNhbWVPckJlZm9yZShpdGVtLnJhbmdlLnRvKSkgJiZcbiAgICAgICAgICAgICAgICBpdGVtLnJhbmdlLnRvLmRheVNhbWVPckFmdGVyKG1pbikgJiZcbiAgICAgICAgICAgICAgICAobWF4ID09PSBudWxsIHx8IGl0ZW0ucmFuZ2UuZnJvbS5kYXlTYW1lT3JCZWZvcmUobWF4KSksXG4gICAgICAgICksXG4gICAgICAgIG90aGVyRGF0ZVRleHQsXG4gICAgXTtcblxuICAgIGdldCBjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlcigpOiBUdWlCb29sZWFuSGFuZGxlcjxUdWlEYXk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlRGlzYWJsZWRJdGVtSGFuZGxlcihcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWRJdGVtSGFuZGxlcixcbiAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICB0aGlzLm1pbkxlbmd0aCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNb250aCgpOiBUdWlNb250aCB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS50byA6IHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoO1xuICAgIH1cblxuICAgIGlzSXRlbUFjdGl2ZShpdGVtOiBUdWlEYXlSYW5nZVBlcmlvZCB8IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB7YWN0aXZlUGVyaW9kfSA9IHRoaXM7XG5cbiAgICAgICAgcmV0dXJuICh0dWlJc1N0cmluZyhpdGVtKSAmJiBhY3RpdmVQZXJpb2QgPT09IG51bGwpIHx8IGFjdGl2ZVBlcmlvZCA9PT0gaXRlbTtcbiAgICB9XG5cbiAgICBvblJhbmdlQ2hhbmdlKGRheVJhbmdlOiBUdWlEYXlSYW5nZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGRheVJhbmdlKTtcbiAgICB9XG5cbiAgICBvbkRheUNsaWNrKGRheTogVHVpRGF5KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSB0aGlzO1xuXG4gICAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCAhdmFsdWUuaXNTaW5nbGVEYXkpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXcgVHVpRGF5UmFuZ2UoZGF5LCBkYXkpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFR1aURheVJhbmdlLnNvcnQodmFsdWUuZnJvbSwgZGF5KSk7XG4gICAgfVxuXG4gICAgb25JdGVtU2VsZWN0KGl0ZW06IFR1aURheVJhbmdlUGVyaW9kIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0eXBlb2YgaXRlbSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUoaXRlbS5yYW5nZS5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlUGVyaW9kICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlVmFsdWUodmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgYWN0aXZlUGVyaW9kKCk6IFR1aURheVJhbmdlUGVyaW9kIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PlxuICAgICAgICAgICAgICAgIHR1aU51bGxhYmxlU2FtZTxUdWlEYXlSYW5nZT4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIChhLCBiKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYS5mcm9tLmRheVNhbWUoYi5mcm9tLmRheUxpbWl0KHRoaXMubWluLCB0aGlzLm1heCkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBhLnRvLmRheVNhbWUoYi50by5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSB8fCBudWxsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNhbGN1bGF0ZURpc2FibGVkSXRlbUhhbmRsZXIoXG4gICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4sXG4gICAgICAgIHZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiB7XG4gICAgICAgIHJldHVybiBpdGVtID0+IHtcbiAgICAgICAgICAgIGlmICghdmFsdWU/LmlzU2luZ2xlRGF5IHx8ICFtaW5MZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbmVnYXRpdmVNaW5MZW5ndGggPSB0dWlPYmplY3RGcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyhtaW5MZW5ndGgpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBba2V5LCAtdmFsdWVdKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZEJlZm9yZSA9IHZhbHVlLmZyb20uYXBwZW5kKG5lZ2F0aXZlTWluTGVuZ3RoKS5hcHBlbmQoe2RheTogMX0pO1xuICAgICAgICAgICAgY29uc3QgZGlzYWJsZWRBZnRlciA9IHZhbHVlLmZyb20uYXBwZW5kKG1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IC0xfSk7XG4gICAgICAgICAgICBjb25zdCBpbkRpc2FibGVkUmFuZ2UgPVxuICAgICAgICAgICAgICAgIGRpc2FibGVkQmVmb3JlLmRheUJlZm9yZShpdGVtKSAmJiBkaXNhYmxlZEFmdGVyLmRheUFmdGVyKGl0ZW0pO1xuXG4gICAgICAgICAgICByZXR1cm4gaW5EaXNhYmxlZFJhbmdlIHx8IGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSk7XG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPHR1aS1wcmltaXRpdmUtY2FsZW5kYXItcmFuZ2VcbiAgICAqbmdJZj1cIiFpdGVtcy5sZW5ndGg7IGVsc2UgcHJlc2V0c1wiXG4gICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fY2FsZW5kYXJzXCJcbiAgICB0dWlQcmV2ZW50RGVmYXVsdD1cIm1vdXNlZG93blwiXG4gICAgW21hcmtlckhhbmRsZXJdPVwibWFya2VySGFuZGxlclwiXG4gICAgW21pbl09XCJjb21wdXRlZE1pbiB8IHR1aU1hcHBlciA6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogdHJ1ZVwiXG4gICAgW21heF09XCJjb21wdXRlZE1heCB8IHR1aU1hcHBlciA6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogZmFsc2VcIlxuICAgIFtkZWZhdWx0Vmlld2VkTW9udGhGaXJzdF09XCJkZWZhdWx0Vmlld2VkTW9udGhcIlxuICAgIFtkaXNhYmxlZEl0ZW1IYW5kbGVyXT1cImNhbGN1bGF0ZWREaXNhYmxlZEl0ZW1IYW5kbGVyXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgIChkYXlDbGljayk9XCJvbkRheUNsaWNrKCRldmVudClcIlxuPjwvdHVpLXByaW1pdGl2ZS1jYWxlbmRhci1yYW5nZT5cbjxuZy10ZW1wbGF0ZSAjcHJlc2V0cz5cbiAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyXCI+XG4gICAgICAgIDx0dWktY2FsZW5kYXJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktY2FsZW5kYXItcmFuZ2VfX2NhbGVuZGFyXCJcbiAgICAgICAgICAgIHR1aVByZXZlbnREZWZhdWx0PVwibW91c2Vkb3duXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICBbbWFya2VySGFuZGxlcl09XCJtYXJrZXJIYW5kbGVyXCJcbiAgICAgICAgICAgIFttaW5dPVwiY29tcHV0ZWRNaW4gfCB0dWlNYXBwZXIgOiBtYXhMZW5ndGhNYXBwZXIgOiB2YWx1ZSA6IG1heExlbmd0aCA6IHRydWVcIlxuICAgICAgICAgICAgW21heF09XCJjb21wdXRlZE1heCB8IHR1aU1hcHBlciA6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogZmFsc2VcIlxuICAgICAgICAgICAgW21vbnRoXT1cImNvbXB1dGVkTW9udGhcIlxuICAgICAgICAgICAgW2Rpc2FibGVkSXRlbUhhbmRsZXJdPVwiY2FsY3VsYXRlZERpc2FibGVkSXRlbUhhbmRsZXJcIlxuICAgICAgICAgICAgKGRheUNsaWNrKT1cIm9uRGF5Q2xpY2soJGV2ZW50KVwiXG4gICAgICAgID48L3R1aS1jYWxlbmRhcj5cbiAgICAgICAgPHR1aS1kYXRhLWxpc3RcbiAgICAgICAgICAgIHJvbGU9XCJtZW51XCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktY2FsZW5kYXItcmFuZ2VfX21lbnVcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LW1lbnVcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXMgfCB0dWlNYXBwZXIgOiBtYXBwZXIgOiBtaW4gOiBtYXggOiBtaW5MZW5ndGggOiAob3RoZXJEYXRlVGV4dCQgfCBhc3luYylcIlxuICAgICAgICAgICAgICAgIHR1aU9wdGlvblxuICAgICAgICAgICAgICAgIHR1aVByZXZlbnREZWZhdWx0PVwibW91c2Vkb3duXCJcbiAgICAgICAgICAgICAgICByb2xlPVwibWVudWl0ZW1yYWRpb1wiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fbWVudV9faXRlbVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jaGVja2VkXT1cImlzSXRlbUFjdGl2ZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIucHJldmVudCk9XCJvbkl0ZW1TZWxlY3QoaXRlbSlcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLnNwYWNlLnByZXZlbnQpPVwib25JdGVtU2VsZWN0KGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtU2VsZWN0KGl0ZW0pXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtIH19XG4gICAgICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc0l0ZW1BY3RpdmUoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19jaGVja21hcmtcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtY2hlY2ttYXJrXCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpY29ucy5jaGVja1wiXG4gICAgICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L3R1aS1kYXRhLWxpc3Q+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItcmFuZ2UvY2FsZW5kYXItcmFuZ2UudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBSVosV0FBVyxFQUNYLGlCQUFpQixFQUNqQixXQUFXLEVBRVgsUUFBUSxFQUNSLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLDBCQUEwQixHQUk3QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyx3QkFBd0IsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5GLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQVN6QyxNQUFNLE9BQU8seUJBQXlCO0lBMkNsQyxZQUdJLFlBQW1ELEVBQ3hCLEdBQXNCLEVBQ2QsUUFBMkIsRUFDeEIsY0FBa0MsRUFDckMsS0FBcUI7UUFEbEIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ3JDLFVBQUssR0FBTCxL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SztnQkFJRyxXQUFXO3NCQURuQixNQUFNO2dCQWtDUCxLQUFLO3NCQURKLFlBQVk7dUJBQUMsMEJBQTBCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBa0c1Qyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIFRVSV9GSVJTVF9EQVksXG4gICAgVFVJX0xBU1RfREFZLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aURheSxcbiAgICBUdWlEYXlMaWtlLFxuICAgIFR1aURheVJhbmdlLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aUlzU3RyaW5nLFxuICAgIFR1aU1hcHBlcixcbiAgICBUdWlNb250aCxcbiAgICB0dWlOdWxsYWJsZVNhbWUsXG4gICAgdHVpT2JqZWN0RnJvbUVudHJpZXMsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlXYXRjaCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFRVSV9DT01NT05fSUNPTlMsXG4gICAgVFVJX0RFRkFVTFRfTUFSS0VSX0hBTkRMRVIsXG4gICAgVHVpQ29tbW9uSWNvbnMsXG4gICAgVHVpTWFya2VySGFuZGxlcixcbiAgICBUdWlXaXRoT3B0aW9uYWxNaW5NYXgsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpRGF5UmFuZ2VQZXJpb2R9IGZyb20gJ0B0YWlnYS11aS9raXQvY2xhc3Nlcyc7XG5pbXBvcnQge01BWF9EQVlfUkFOR0VfTEVOR1RIX01BUFBFUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0sIFRVSV9PVEhFUl9EQVRFX1RFWFR9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1jYWxlbmRhci1yYW5nZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLXJhbmdlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLXJhbmdlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNhbGVuZGFyUmFuZ2VDb21wb25lbnQgaW1wbGVtZW50cyBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpRGF5PiB7XG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0Vmlld2VkTW9udGg6IFR1aU1vbnRoID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgbWFya2VySGFuZGxlcjogVHVpTWFya2VySGFuZGxlciA9IFRVSV9ERUZBVUxUX01BUktFUl9IQU5ETEVSO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtczogcmVhZG9ubHkgVHVpRGF5UmFuZ2VQZXJpb2RbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBtaW46IFR1aURheSB8IG51bGwgPSBUVUlfRklSU1RfREFZO1xuXG4gICAgQElucHV0KClcbiAgICBtYXg6IFR1aURheSB8IG51bGwgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBASW5wdXQoKVxuICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBtYXhMZW5ndGg6IFR1aURheUxpa2UgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgdmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCA9IG51bGw7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VHVpRGF5UmFuZ2UgfCBudWxsPigpO1xuXG4gICAgcHJldmlvdXNWYWx1ZTogVHVpRGF5UmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICAgIHJlYWRvbmx5IG1heExlbmd0aE1hcHBlcjogVHVpTWFwcGVyPFR1aURheSwgVHVpRGF5PiA9IE1BWF9EQVlfUkFOR0VfTEVOR1RIX01BUFBFUjtcblxuICAgIGdldCBjb21wdXRlZE1pbigpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gdGhpcy5taW4gPz8gVFVJX0ZJUlNUX0RBWTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNYXgoKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWF4ID8/IFRVSV9MQVNUX0RBWTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0pXG4gICAgICAgIHZhbHVlQ2hhbmdlczogT2JzZXJ2YWJsZTxUdWlEYXlSYW5nZSB8IG51bGw+IHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVFVJX09USEVSX0RBVEVfVEVYVCkgcmVhZG9ubHkgb3RoZXJEYXRlVGV4dCQ6IE9ic2VydmFibGU8c3RyaW5nPixcbiAgICAgICAgQEluamVjdChUVUlfQ09NTU9OX0lDT05TKSByZWFkb25seSBpY29uczogVHVpQ29tbW9uSWNvbnMsXG4gICAgKSB7XG4gICAgICAgIGlmICghdmFsdWVDaGFuZ2VzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB2YWx1ZUNoYW5nZXMucGlwZSh0dWlXYXRjaChjZHIpLCB0YWtlVW50aWwoZGVzdHJveSQpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmNhcHR1cmUnLCBbJyRldmVudCddKVxuICAgIG9uRXNjKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC5rZXkgIT09ICdFc2NhcGUnIHx8ICF0aGlzLnZhbHVlPy5pc1NpbmdsZURheSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgcmVhZG9ubHkgbWFwcGVyOiBUdWlNYXBwZXI8XG4gICAgICAgIHJlYWRvbmx5IFR1aURheVJhbmdlUGVyaW9kW10sXG4gICAgICAgIFJlYWRvbmx5QXJyYXk8VHVpRGF5UmFuZ2VQZXJpb2QgfCBzdHJpbmc+XG4gICAgPiA9IChcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIG1pbjogVHVpRGF5LFxuICAgICAgICBtYXg6IFR1aURheSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgICAgIG90aGVyRGF0ZVRleHQ6IHN0cmluZyxcbiAgICApID0+IFtcbiAgICAgICAgLi4uaXRlbXMuZmlsdGVyKFxuICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgIChtaW5MZW5ndGggPT09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5yYW5nZS5mcm9tLmFwcGVuZChtaW5MZW5ndGgpLmRheVNhbWVPckJlZm9yZShpdGVtLnJhbmdlLnRvKSkgJiZcbiAgICAgICAgICAgICAgICBpdGVtLnJhbmdlLnRvLmRheVNhbWVPckFmdGVyKG1pbikgJiZcbiAgICAgICAgICAgICAgICAobWF4ID09PSBudWxsIHx8IGl0ZW0ucmFuZ2UuZnJvbS5kYXlTYW1lT3JCZWZvcmUobWF4KSksXG4gICAgICAgICksXG4gICAgICAgIG90aGVyRGF0ZVRleHQsXG4gICAgXTtcblxuICAgIGdldCBjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlcigpOiBUdWlCb29sZWFuSGFuZGxlcjxUdWlEYXk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlRGlzYWJsZWRJdGVtSGFuZGxlcihcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWRJdGVtSGFuZGxlcixcbiAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICB0aGlzLm1pbkxlbmd0aCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRNb250aCgpOiBUdWlNb250aCB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS50byA6IHRoaXMuZGVmYXVsdFZpZXdlZE1vbnRoO1xuICAgIH1cblxuICAgIGlzSXRlbUFjdGl2ZShpdGVtOiBUdWlEYXlSYW5nZVBlcmlvZCB8IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB7YWN0aXZlUGVyaW9kfSA9IHRoaXM7XG5cbiAgICAgICAgcmV0dXJuICh0dWlJc1N0cmluZyhpdGVtKSAmJiBhY3RpdmVQZXJpb2QgPT09IG51bGwpIHx8IGFjdGl2ZVBlcmlvZCA9PT0gaXRlbTtcbiAgICB9XG5cbiAgICBvblJhbmdlQ2hhbmdlKGRheVJhbmdlOiBUdWlEYXlSYW5nZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGRheVJhbmdlKTtcbiAgICB9XG5cbiAgICBvbkRheUNsaWNrKGRheTogVHVpRGF5KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSB0aGlzO1xuXG4gICAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCAhdmFsdWUuaXNTaW5nbGVEYXkpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXcgVHVpRGF5UmFuZ2UoZGF5LCBkYXkpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFR1aURheVJhbmdlLnNvcnQodmFsdWUuZnJvbSwgZGF5KSk7XG4gICAgfVxuXG4gICAgb25JdGVtU2VsZWN0KGl0ZW06IFR1aURheVJhbmdlUGVyaW9kIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0eXBlb2YgaXRlbSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUoaXRlbS5yYW5nZS5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlUGVyaW9kICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlVmFsdWUodmFsdWU6IFR1aURheVJhbmdlIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgYWN0aXZlUGVyaW9kKCk6IFR1aURheVJhbmdlUGVyaW9kIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PlxuICAgICAgICAgICAgICAgIHR1aU51bGxhYmxlU2FtZTxUdWlEYXlSYW5nZT4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIChhLCBiKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYS5mcm9tLmRheVNhbWUoYi5mcm9tLmRheUxpbWl0KHRoaXMubWluLCB0aGlzLm1heCkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBhLnRvLmRheVNhbWUoYi50by5kYXlMaW1pdCh0aGlzLm1pbiwgdGhpcy5tYXgpKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSB8fCBudWxsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNhbGN1bGF0ZURpc2FibGVkSXRlbUhhbmRsZXIoXG4gICAgICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4sXG4gICAgICAgIHZhbHVlOiBUdWlEYXlSYW5nZSB8IG51bGwsXG4gICAgICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4gICAgKTogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiB7XG4gICAgICAgIHJldHVybiBpdGVtID0+IHtcbiAgICAgICAgICAgIGlmICghdmFsdWU/LmlzU2luZ2xlRGF5IHx8ICFtaW5MZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbmVnYXRpdmVNaW5MZW5ndGggPSB0dWlPYmplY3RGcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyhtaW5MZW5ndGgpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBba2V5LCAtdmFsdWVdKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZEJlZm9yZSA9IHZhbHVlLmZyb20uYXBwZW5kKG5lZ2F0aXZlTWluTGVuZ3RoKS5hcHBlbmQoe2RheTogMX0pO1xuICAgICAgICAgICAgY29uc3QgZGlzYWJsZWRBZnRlciA9IHZhbHVlLmZyb20uYXBwZW5kKG1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IC0xfSk7XG4gICAgICAgICAgICBjb25zdCBpbkRpc2FibGVkUmFuZ2UgPVxuICAgICAgICAgICAgICAgIGRpc2FibGVkQmVmb3JlLmRheUJlZm9yZShpdGVtKSAmJiBkaXNhYmxlZEFmdGVyLmRheUFmdGVyKGl0ZW0pO1xuXG4gICAgICAgICAgICByZXR1cm4gaW5EaXNhYmxlZFJhbmdlIHx8IGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSk7XG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPHR1aS1wcmltaXRpdmUtY2FsZW5kYXItcmFuZ2VcbiAgICAqbmdJZj1cIiFpdGVtcy5sZW5ndGg7IGVsc2UgcHJlc2V0c1wiXG4gICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fY2FsZW5kYXJzXCJcbiAgICB0dWlQcmV2ZW50RGVmYXVsdD1cIm1vdXNlZG93blwiXG4gICAgW2RlZmF1bHRWaWV3ZWRNb250aEZpcnN0XT1cImRlZmF1bHRWaWV3ZWRNb250aFwiXG4gICAgW2Rpc2FibGVkSXRlbUhhbmRsZXJdPVwiY2FsY3VsYXRlZERpc2FibGVkSXRlbUhhbmRsZXJcIlxuICAgIFttYXJrZXJIYW5kbGVyXT1cIm1hcmtlckhhbmRsZXJcIlxuICAgIFttYXhdPVwiY29tcHV0ZWRNYXggfCB0dWlNYXBwZXI6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogZmFsc2VcIlxuICAgIFttaW5dPVwiY29tcHV0ZWRNaW4gfCB0dWlNYXBwZXI6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogdHJ1ZVwiXG4gICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAoZGF5Q2xpY2spPVwib25EYXlDbGljaygkZXZlbnQpXCJcbj48L3R1aS1wcmltaXRpdmUtY2FsZW5kYXItcmFuZ2U+XG48bmctdGVtcGxhdGUgI3ByZXNldHM+XG4gICAgPGRpdiBjbGFzcz1cInQtd3JhcHBlclwiPlxuICAgICAgICA8dHVpLWNhbGVuZGFyXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19jYWxlbmRhclwiXG4gICAgICAgICAgICB0dWlQcmV2ZW50RGVmYXVsdD1cIm1vdXNlZG93blwiXG4gICAgICAgICAgICBbZGlzYWJsZWRJdGVtSGFuZGxlcl09XCJjYWxjdWxhdGVkRGlzYWJsZWRJdGVtSGFuZGxlclwiXG4gICAgICAgICAgICBbbWFya2VySGFuZGxlcl09XCJtYXJrZXJIYW5kbGVyXCJcbiAgICAgICAgICAgIFttYXhdPVwiY29tcHV0ZWRNYXggfCB0dWlNYXBwZXI6IG1heExlbmd0aE1hcHBlciA6IHZhbHVlIDogbWF4TGVuZ3RoIDogZmFsc2VcIlxuICAgICAgICAgICAgW21pbl09XCJjb21wdXRlZE1pbiB8IHR1aU1hcHBlcjogbWF4TGVuZ3RoTWFwcGVyIDogdmFsdWUgOiBtYXhMZW5ndGggOiB0cnVlXCJcbiAgICAgICAgICAgIFttb250aF09XCJjb21wdXRlZE1vbnRoXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAoZGF5Q2xpY2spPVwib25EYXlDbGljaygkZXZlbnQpXCJcbiAgICAgICAgPjwvdHVpLWNhbGVuZGFyPlxuICAgICAgICA8dHVpLWRhdGEtbGlzdFxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fbWVudVwiXG4gICAgICAgICAgICByb2xlPVwibWVudVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtbWVudVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtcyB8IHR1aU1hcHBlcjogbWFwcGVyIDogbWluIDogbWF4IDogbWluTGVuZ3RoIDogKG90aGVyRGF0ZVRleHQkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNhbGVuZGFyLXJhbmdlX19tZW51X19pdGVtXCJcbiAgICAgICAgICAgICAgICByb2xlPVwibWVudWl0ZW1yYWRpb1wiXG4gICAgICAgICAgICAgICAgdHVpT3B0aW9uXG4gICAgICAgICAgICAgICAgdHVpUHJldmVudERlZmF1bHQ9XCJtb3VzZWRvd25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtY2hlY2tlZF09XCJpc0l0ZW1BY3RpdmUoaXRlbSlcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1TZWxlY3QoaXRlbSlcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyLnByZXZlbnQpPVwib25JdGVtU2VsZWN0KGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5zcGFjZS5wcmV2ZW50KT1cIm9uSXRlbVNlbGVjdChpdGVtKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgaXRlbSB9fVxuICAgICAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNJdGVtQWN0aXZlKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1jYWxlbmRhci1yYW5nZV9fY2hlY2ttYXJrXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWNoZWNrbWFya1wiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaWNvbnMuY2hlY2tcIlxuICAgICAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC90dWktZGF0YS1saXN0PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -5,8 +5,8 @@ import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  import * as i2 from "./carousel-scroll.directive";
7
7
  import * as i3 from "@ng-web-apis/intersection-observer";
8
- import * as i4 from "@taiga-ui/cdk";
9
- import * as i5 from "./carousel-autoscroll.directive";
8
+ import * as i4 from "./carousel-autoscroll.directive";
9
+ import * as i5 from "@taiga-ui/cdk";
10
10
  export class TuiCarouselComponent {
11
11
  constructor(cdr, el, isMobile) {
12
12
  this.cdr = cdr;
@@ -89,7 +89,7 @@ export class TuiCarouselComponent {
89
89
  }
90
90
  }
91
91
  TuiCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiCarouselComponent, deps: [{ token: ChangeDetectorRef }, { token: ElementRef }, { token: TUI_IS_MOBILE }], target: i0.ɵɵFactoryTarget.Component });
92
- TuiCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCarouselComponent, selector: "tui-carousel", inputs: { draggable: "draggable", itemsCount: "itemsCount", index: "index" }, outputs: { indexChange: "indexChange" }, host: { listeners: { "touchstart": "onTransitioned(false)", "touchend": "onTransitioned(true)", "mousedown": "onTransitioned(false)", "document:mouseup.silent": "onTransitioned(true)" }, properties: { "class._draggable": "this.draggable", "class._transitioned": "this.transitioned" } }, queries: [{ propertyName: "items", predicate: TuiItemDirective, read: TemplateRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<div\n class=\"t-scroller\"\n (tuiCarouselScroll)=\"onScroll($event)\"\n>\n <div\n waIntersectionRoot\n waIntersectionObserver\n waIntersectionThreshold=\"0,1\"\n waIntersectionRootMargin=\"100px 1000000px 100px -51%\"\n class=\"t-wrapper\"\n >\n <div\n class=\"t-items\"\n [style.transform]=\"transform\"\n (tuiPan)=\"onPan($event[0])\"\n (tuiSwipe)=\"onSwipe($event.direction)\"\n (tuiCarouselAutoscroll)=\"onAutoscroll()\"\n >\n <fieldset\n *ngFor=\"let item of items; let i = index\"\n class=\"t-item\"\n [disabled]=\"isDisabled(i)\"\n [ngStyle]=\"getStyle(itemsCount)\"\n (waIntersectionObservee)=\"onIntersection($event[0], i)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </fieldset>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._draggable{-webkit-user-select:none;-moz-user-select:none;user-select:none}:host._draggable:hover{cursor:grab}:host._draggable:active{cursor:grabbing}.t-items{display:flex}:host._transitioned .t-items{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-item{display:flex;flex-direction:column;justify-content:center;padding:var(--tui-carousel-padding, 0 1.25rem);flex:1;min-width:100%;max-width:100%;box-sizing:border-box;border:none;margin:0}.t-wrapper{position:-webkit-sticky;position:sticky;left:0;right:0;min-width:100%;overflow:hidden}.t-scroller{scrollbar-width:none;-ms-overflow-style:none;display:flex;overflow:auto;overscroll-behavior-x:none;padding-bottom:2rem;margin-bottom:-2rem}.t-scroller::-webkit-scrollbar,.t-scroller::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}.t-scroller:before,.t-scroller:after{content:\"\";display:block;min-width:1rem}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiCarouselScrollDirective, selector: "[tuiCarouselScroll]", outputs: ["tuiCarouselScroll"] }, { type: i3.IntersectionRootDirective, selector: "[waIntersectionRoot]" }, { type: i3.IntersectionObserverDirective, selector: "[waIntersectionObserver]", exportAs: ["IntersectionObserver"] }, { type: i4.TuiPanDirective, selector: "[tuiPan]", outputs: ["tuiPan"] }, { type: i4.TuiSwipeDirective, selector: "[tuiSwipe]", outputs: ["tuiSwipe"] }, { type: i5.TuiCarouselAutoscrollDirective, selector: "[tuiCarouselAutoscroll]", outputs: ["tuiCarouselAutoscroll"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.IntersectionObserveeDirective, selector: "[waIntersectionObservee]", outputs: ["waIntersectionObservee"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
92
+ TuiCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCarouselComponent, selector: "tui-carousel", inputs: { draggable: "draggable", itemsCount: "itemsCount", index: "index" }, outputs: { indexChange: "indexChange" }, host: { listeners: { "touchstart": "onTransitioned(false)", "touchend": "onTransitioned(true)", "mousedown": "onTransitioned(false)", "document:mouseup.silent": "onTransitioned(true)" }, properties: { "class._draggable": "this.draggable", "class._transitioned": "this.transitioned" } }, queries: [{ propertyName: "items", predicate: TuiItemDirective, read: TemplateRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<div\n class=\"t-scroller\"\n (tuiCarouselScroll)=\"onScroll($event)\"\n>\n <div\n waIntersectionObserver\n waIntersectionRoot\n waIntersectionRootMargin=\"100px 1000000px 100px -51%\"\n waIntersectionThreshold=\"0,1\"\n class=\"t-wrapper\"\n >\n <div\n class=\"t-items\"\n [style.transform]=\"transform\"\n (tuiCarouselAutoscroll)=\"onAutoscroll()\"\n (tuiPan)=\"onPan($event[0])\"\n (tuiSwipe)=\"onSwipe($event.direction)\"\n >\n <fieldset\n *ngFor=\"let item of items; let i = index\"\n class=\"t-item\"\n [disabled]=\"isDisabled(i)\"\n [ngStyle]=\"getStyle(itemsCount)\"\n (waIntersectionObservee)=\"onIntersection($event[0], i)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </fieldset>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._draggable{-webkit-user-select:none;-moz-user-select:none;user-select:none}:host._draggable:hover{cursor:grab}:host._draggable:active{cursor:grabbing}.t-items{display:flex}:host._transitioned .t-items{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-item{display:flex;flex-direction:column;justify-content:center;padding:var(--tui-carousel-padding, 0 1.25rem);flex:1;min-width:100%;max-width:100%;box-sizing:border-box;border:none;margin:0}.t-wrapper{position:-webkit-sticky;position:sticky;left:0;right:0;min-width:100%;overflow:hidden}.t-scroller{scrollbar-width:none;-ms-overflow-style:none;display:flex;overflow:auto;overscroll-behavior-x:none;padding-bottom:2rem;margin-bottom:-2rem}.t-scroller::-webkit-scrollbar,.t-scroller::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}.t-scroller:before,.t-scroller:after{content:\"\";display:block;min-width:1rem}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiCarouselScrollDirective, selector: "[tuiCarouselScroll]", outputs: ["tuiCarouselScroll"] }, { type: i3.IntersectionObserverDirective, selector: "[waIntersectionObserver]", exportAs: ["IntersectionObserver"] }, { type: i3.IntersectionRootDirective, selector: "[waIntersectionRoot]" }, { type: i4.TuiCarouselAutoscrollDirective, selector: "[tuiCarouselAutoscroll]", outputs: ["tuiCarouselAutoscroll"] }, { type: i5.TuiPanDirective, selector: "[tuiPan]", outputs: ["tuiPan"] }, { type: i5.TuiSwipeDirective, selector: "[tuiSwipe]", outputs: ["tuiSwipe"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.IntersectionObserveeDirective, selector: "[waIntersectionObservee]", outputs: ["waIntersectionObservee"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
93
93
  __decorate([
94
94
  tuiPure
95
95
  ], TuiCarouselComponent.prototype, "getStyle", null);
@@ -140,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
140
140
  type: HostListener,
141
141
  args: ['document:mouseup.silent', ['true']]
142
142
  }], getStyle: [] } });
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsYUFBYSxFQUNiLFFBQVEsRUFDUixnQkFBZ0IsRUFDaEIsT0FBTyxHQUVWLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUXZCLE1BQU0sT0FBTyxvQkFBb0I7SUFzQjdCLFlBQ2dELEdBQXNCLEVBQzdCLEVBQTJCLEVBQ3hCLFFBQWlCO1FBRmIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDN0IsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFDeEIsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQXhCckQsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUl0QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFHZixVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBR0QsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBR3pDLFVBQUssR0FBb0QsV0FBVyxDQUFDO1FBRzlFLGlCQUFZLEdBQUcsSUFBSSxDQUFDO0lBTWpCLENBQUM7SUFFSixJQUFJLFNBQVM7UUFDVCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FB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QWM7c0JBSmIsWUFBWTt1QkFBQyxZQUFZLEVBQUUsQ0FBQyxPQUFPLENBQUM7O3NCQUNwQyxZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLE1BQU0sQ0FBQzs7c0JBQ2pDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDOztzQkFDbkMsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLE1BQU0sQ0FBQztnQkFVakQsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBUVUlfSVNfTU9CSUxFLFxuICAgIHR1aUNsYW1wLFxuICAgIFR1aUl0ZW1EaXJlY3RpdmUsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlTd2lwZURpcmVjdGlvbixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWNhcm91c2VsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2Fyb3VzZWwudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlDYXJvdXNlbENvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSB0cmFuc2xhdGUgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kcmFnZ2FibGUnKVxuICAgIGRyYWdnYWJsZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtc0NvdW50ID0gMTtcblxuICAgIEBJbnB1dCgpXG4gICAgaW5kZXggPSAwO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgaW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oVHVpSXRlbURpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBpdGVtczogUXVlcnlMaXN0PFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+Pj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3RyYW5zaXRpb25lZCcpXG4gICAgdHJhbnNpdGlvbmVkID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSkgcHJpdmF0ZSByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbixcbiAgICApIHt9XG5cbiAgICBnZXQgdHJhbnNmb3JtKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHggPSB0aGlzLnRyYW5zaXRpb25lZCA/IHRoaXMuY29tcHV0ZWRUcmFuc2xhdGUgOiB0aGlzLnRyYW5zbGF0ZTtcblxuICAgICAgICByZXR1cm4gYHRyYW5zbGF0ZVgoJHsxMDAgKiB4fSUpYDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgWydmYWxzZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ3RvdWNoZW5kJywgWyd0cnVlJ10pXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWydmYWxzZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNldXAuc2lsZW50JywgWyd0cnVlJ10pXG4gICAgb25UcmFuc2l0aW9uZWQodHJhbnNpdGlvbmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJhbnNpdGlvbmVkID0gdHJhbnNpdGlvbmVkO1xuXG4gICAgICAgIGlmICghdHJhbnNpdGlvbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZSA9IHRoaXMuY29tcHV0ZWRUcmFuc2xhdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldFN0eWxlKGl0ZW1zQ291bnQ6IG51bWJlcik6IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj4ge1xuICAgICAgICBjb25zdCBwZXJjZW50ID0gYCR7MTAwIC8gaXRlbXNDb3VudH0lYDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZmxleEJhc2lzOiBwZXJjZW50LFxuICAgICAgICAgICAgbWluV2lkdGg6IHBlcmNlbnQsXG4gICAgICAgICAgICBtYXhXaWR0aDogcGVyY2VudCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZXh0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KHRoaXMuaW5kZXggKyAxKTtcbiAgICB9XG5cbiAgICBwcmV2KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KHRoaXMuaW5kZXggLSAxKTtcbiAgICB9XG5cbiAgICBpc0Rpc2FibGVkKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZGV4IDwgdGhpcy5pbmRleCB8fCBpbmRleCA+IHRoaXMuaW5kZXggKyB0aGlzLml0ZW1zQ291bnQ7XG4gICAgfVxuXG4gICAgb25JbnRlcnNlY3Rpb24oe2ludGVyc2VjdGlvblJhdGlvfTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaW50ZXJzZWN0aW9uUmF0aW8gJiYgaW50ZXJzZWN0aW9uUmF0aW8gIT09IDEgJiYgIXRoaXMudHJhbnNpdGlvbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KGluZGV4IC0gTWF0aC5mbG9vcih0aGlzLml0ZW1zQ291bnQgLyAyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNjcm9sbChkZWx0YTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVJbmRleCh0aGlzLmluZGV4ICsgZGVsdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25QYW4oeDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb21wdXRlZERyYWdnYWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge2NsaWVudFdpZHRofSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgbWluID0gMSAtIHRoaXMuaXRlbXMubGVuZ3RoIC8gdGhpcy5pdGVtc0NvdW50O1xuXG4gICAgICAgIHRoaXMudHJhbnNsYXRlID0gdHVpQ2xhbXAoeCAvIGNsaWVudFdpZHRoICsgdGhpcy50cmFuc2xhdGUsIG1pbiwgMCk7XG4gICAgfVxuXG4gICAgb25Td2lwZShkaXJlY3Rpb246IFR1aVN3aXBlRGlyZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICAgICAgICAgICAgdGhpcy5uZXh0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAncmlnaHQnKSB7XG4gICAgICAgICAgICB0aGlzLnByZXYoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQXV0b3Njcm9sbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVJbmRleCh0aGlzLmluZGV4ID09PSB0aGlzLml0ZW1zLmxlbmd0aCAtIDEgPyAwIDogdGhpcy5pbmRleCArIDEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkVHJhbnNsYXRlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAtdGhpcy5pbmRleCAvIHRoaXMuaXRlbXNDb3VudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBjb21wdXRlZERyYWdnYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgfHwgdGhpcy5kcmFnZ2FibGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVJbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5kZXggPSB0dWlDbGFtcChpbmRleCwgMCwgdGhpcy5pdGVtcy5sZW5ndGggLSAxKTtcbiAgICAgICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KHRoaXMuaW5kZXgpO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbXMuY2hhbmdlcyB8IGFzeW5jXCI+PC9uZy1jb250YWluZXI+XG48ZGl2XG4gICAgY2xhc3M9XCJ0LXNjcm9sbGVyXCJcbiAgICAodHVpQ2Fyb3VzZWxTY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50KVwiXG4+XG4gICAgPGRpdlxuICAgICAgICB3YUludGVyc2VjdGlvblJvb3RcbiAgICAgICAgd2FJbnRlcnNlY3Rpb25PYnNlcnZlclxuICAgICAgICB3YUludGVyc2VjdGlvblRocmVzaG9sZD1cIjAsMVwiXG4gICAgICAgIHdhSW50ZXJzZWN0aW9uUm9vdE1hcmdpbj1cIjEwMHB4IDEwMDAwMDBweCAxMDBweCAtNTElXCJcbiAgICAgICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWl0ZW1zXCJcbiAgICAgICAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwidHJhbnNmb3JtXCJcbiAgICAgICAgICAgICh0dWlQYW4pPVwib25QYW4oJGV2ZW50WzBdKVwiXG4gICAgICAgICAgICAodHVpU3dpcGUpPVwib25Td2lwZSgkZXZlbnQuZGlyZWN0aW9uKVwiXG4gICAgICAgICAgICAodHVpQ2Fyb3VzZWxBdXRvc2Nyb2xsKT1cIm9uQXV0b3Njcm9sbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGZpZWxkc2V0XG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pdGVtXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChpKVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwiZ2V0U3R5bGUoaXRlbXNDb3VudClcIlxuICAgICAgICAgICAgICAgICh3YUludGVyc2VjdGlvbk9ic2VydmVlKT1cIm9uSW50ZXJzZWN0aW9uKCRldmVudFswXSwgaSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2Fyb3VzZWwvY2Fyb3VzZWwudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsYUFBYSxFQUNiLFFBQVEsRUFDUixnQkFBZ0IsRUFDaEIsT0FBTyxHQUVWLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUXZCLE1BQU0sT0FBTyxvQkFBb0I7SUFzQjdCLFlBQ2dELEdBQXNCLEVBQzdCLEVBQTJCLEVBQ3hCLFFBQWlCO1FBRmIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDN0IsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFDeEIsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQXhCckQsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUl0QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFHZixVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBR0QsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBR3pDLFVBQUssR0FBb0QsV0FBVyxDQUFDO1FBRzlFLGlCQUFZLEdBQUcsSUFBSSxDQUFDO0lBTWpCLENBQUM7SUFFSixJQUFJLFNBQVM7UUFDVCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FB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QWM7c0JBSmIsWUFBWTt1QkFBQyxZQUFZLEVBQUUsQ0FBQyxPQUFPLENBQUM7O3NCQUNwQyxZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLE1BQU0sQ0FBQzs7c0JBQ2pDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDOztzQkFDbkMsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLE1BQU0sQ0FBQztnQkFVakQsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBUVUlfSVNfTU9CSUxFLFxuICAgIHR1aUNsYW1wLFxuICAgIFR1aUl0ZW1EaXJlY3RpdmUsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlTd2lwZURpcmVjdGlvbixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWNhcm91c2VsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2Fyb3VzZWwudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlDYXJvdXNlbENvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSB0cmFuc2xhdGUgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kcmFnZ2FibGUnKVxuICAgIGRyYWdnYWJsZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtc0NvdW50ID0gMTtcblxuICAgIEBJbnB1dCgpXG4gICAgaW5kZXggPSAwO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgaW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oVHVpSXRlbURpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBpdGVtczogUXVlcnlMaXN0PFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+Pj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3RyYW5zaXRpb25lZCcpXG4gICAgdHJhbnNpdGlvbmVkID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSkgcHJpdmF0ZSByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbixcbiAgICApIHt9XG5cbiAgICBnZXQgdHJhbnNmb3JtKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHggPSB0aGlzLnRyYW5zaXRpb25lZCA/IHRoaXMuY29tcHV0ZWRUcmFuc2xhdGUgOiB0aGlzLnRyYW5zbGF0ZTtcblxuICAgICAgICByZXR1cm4gYHRyYW5zbGF0ZVgoJHsxMDAgKiB4fSUpYDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgWydmYWxzZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ3RvdWNoZW5kJywgWyd0cnVlJ10pXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWydmYWxzZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNldXAuc2lsZW50JywgWyd0cnVlJ10pXG4gICAgb25UcmFuc2l0aW9uZWQodHJhbnNpdGlvbmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJhbnNpdGlvbmVkID0gdHJhbnNpdGlvbmVkO1xuXG4gICAgICAgIGlmICghdHJhbnNpdGlvbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZSA9IHRoaXMuY29tcHV0ZWRUcmFuc2xhdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldFN0eWxlKGl0ZW1zQ291bnQ6IG51bWJlcik6IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj4ge1xuICAgICAgICBjb25zdCBwZXJjZW50ID0gYCR7MTAwIC8gaXRlbXNDb3VudH0lYDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZmxleEJhc2lzOiBwZXJjZW50LFxuICAgICAgICAgICAgbWluV2lkdGg6IHBlcmNlbnQsXG4gICAgICAgICAgICBtYXhXaWR0aDogcGVyY2VudCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZXh0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KHRoaXMuaW5kZXggKyAxKTtcbiAgICB9XG5cbiAgICBwcmV2KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KHRoaXMuaW5kZXggLSAxKTtcbiAgICB9XG5cbiAgICBpc0Rpc2FibGVkKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZGV4IDwgdGhpcy5pbmRleCB8fCBpbmRleCA+IHRoaXMuaW5kZXggKyB0aGlzLml0ZW1zQ291bnQ7XG4gICAgfVxuXG4gICAgb25JbnRlcnNlY3Rpb24oe2ludGVyc2VjdGlvblJhdGlvfTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaW50ZXJzZWN0aW9uUmF0aW8gJiYgaW50ZXJzZWN0aW9uUmF0aW8gIT09IDEgJiYgIXRoaXMudHJhbnNpdGlvbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUluZGV4KGluZGV4IC0gTWF0aC5mbG9vcih0aGlzLml0ZW1zQ291bnQgLyAyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNjcm9sbChkZWx0YTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVJbmRleCh0aGlzLmluZGV4ICsgZGVsdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25QYW4oeDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb21wdXRlZERyYWdnYWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge2NsaWVudFdpZHRofSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgbWluID0gMSAtIHRoaXMuaXRlbXMubGVuZ3RoIC8gdGhpcy5pdGVtc0NvdW50O1xuXG4gICAgICAgIHRoaXMudHJhbnNsYXRlID0gdHVpQ2xhbXAoeCAvIGNsaWVudFdpZHRoICsgdGhpcy50cmFuc2xhdGUsIG1pbiwgMCk7XG4gICAgfVxuXG4gICAgb25Td2lwZShkaXJlY3Rpb246IFR1aVN3aXBlRGlyZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICAgICAgICAgICAgdGhpcy5uZXh0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAncmlnaHQnKSB7XG4gICAgICAgICAgICB0aGlzLnByZXYoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQXV0b3Njcm9sbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVJbmRleCh0aGlzLmluZGV4ID09PSB0aGlzLml0ZW1zLmxlbmd0aCAtIDEgPyAwIDogdGhpcy5pbmRleCArIDEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkVHJhbnNsYXRlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAtdGhpcy5pbmRleCAvIHRoaXMuaXRlbXNDb3VudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBjb21wdXRlZERyYWdnYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgfHwgdGhpcy5kcmFnZ2FibGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVJbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5kZXggPSB0dWlDbGFtcChpbmRleCwgMCwgdGhpcy5pdGVtcy5sZW5ndGggLSAxKTtcbiAgICAgICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KHRoaXMuaW5kZXgpO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbXMuY2hhbmdlcyB8IGFzeW5jXCI+PC9uZy1jb250YWluZXI+XG48ZGl2XG4gICAgY2xhc3M9XCJ0LXNjcm9sbGVyXCJcbiAgICAodHVpQ2Fyb3VzZWxTY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50KVwiXG4+XG4gICAgPGRpdlxuICAgICAgICB3YUludGVyc2VjdGlvbk9ic2VydmVyXG4gICAgICAgIHdhSW50ZXJzZWN0aW9uUm9vdFxuICAgICAgICB3YUludGVyc2VjdGlvblJvb3RNYXJnaW49XCIxMDBweCAxMDAwMDAwcHggMTAwcHggLTUxJVwiXG4gICAgICAgIHdhSW50ZXJzZWN0aW9uVGhyZXNob2xkPVwiMCwxXCJcbiAgICAgICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWl0ZW1zXCJcbiAgICAgICAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwidHJhbnNmb3JtXCJcbiAgICAgICAgICAgICh0dWlDYXJvdXNlbEF1dG9zY3JvbGwpPVwib25BdXRvc2Nyb2xsKClcIlxuICAgICAgICAgICAgKHR1aVBhbik9XCJvblBhbigkZXZlbnRbMF0pXCJcbiAgICAgICAgICAgICh0dWlTd2lwZSk9XCJvblN3aXBlKCRldmVudC5kaXJlY3Rpb24pXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGZpZWxkc2V0XG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pdGVtXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChpKVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwiZ2V0U3R5bGUoaXRlbXNDb3VudClcIlxuICAgICAgICAgICAgICAgICh3YUludGVyc2VjdGlvbk9ic2VydmVlKT1cIm9uSW50ZXJzZWN0aW9uKCRldmVudFswXSwgaSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -38,7 +38,7 @@ TuiCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", ver
38
38
  TuiCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiCheckboxComponent, selector: "tui-checkbox", inputs: { size: "size" }, host: { properties: { "attr.data-size": "this.size" } }, providers: [
39
39
  tuiAsFocusableItemAccessor(TuiCheckboxComponent),
40
40
  tuiAsControl(TuiCheckboxComponent),
41
- ], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-primitive-checkbox\n [size]=\"size\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"pseudoHover\"\n [pressed]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [value]=\"value\"\n>\n <input\n #focusableElement\n type=\"checkbox\"\n automation-id=\"tui-checkbox__native\"\n class=\"t-native\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [tuiFocusable]=\"computedFocusable\"\n [(tuiChecked)]=\"value\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n />\n</tui-primitive-checkbox>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0}:host[data-size=m]{width:1rem;height:1rem}:host[data-size=l]{width:1.5rem;height:1.5rem}:host._readonly tui-primitive-checkbox{pointer-events:none}.t-native{padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}\n"], components: [{ type: i1.TuiPrimitiveCheckboxComponent, selector: "tui-primitive-checkbox", inputs: ["size", "disabled", "focused", "hovered", "pressed", "invalid", "value"] }], directives: [{ type: i2.TuiCheckedDirective, selector: "input[tuiChecked], input[tuiCheckedChange]", inputs: ["tuiChecked"], outputs: ["tuiCheckedChange"] }, { type: i2.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i2.TuiFocusedDirective, selector: "[tuiFocusedChange]", outputs: ["tuiFocusedChange"] }, { type: i2.TuiFocusVisibleDirective, selector: "[tuiFocusVisibleChange]", outputs: ["tuiFocusVisibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ ], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-primitive-checkbox\n [disabled]=\"disabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [pressed]=\"pseudoActive\"\n [size]=\"size\"\n [value]=\"value\"\n>\n <input\n #focusableElement\n automation-id=\"tui-checkbox__native\"\n type=\"checkbox\"\n class=\"t-native\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [tuiFocusable]=\"computedFocusable\"\n [(tuiChecked)]=\"value\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n />\n</tui-primitive-checkbox>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0}:host[data-size=m]{width:1rem;height:1rem}:host[data-size=l]{width:1.5rem;height:1.5rem}:host._readonly tui-primitive-checkbox{pointer-events:none}.t-native{padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}\n"], components: [{ type: i1.TuiPrimitiveCheckboxComponent, selector: "tui-primitive-checkbox", inputs: ["size", "disabled", "focused", "hovered", "pressed", "invalid", "value"] }], directives: [{ type: i2.TuiCheckedDirective, selector: "input[tuiChecked], input[tuiCheckedChange]", inputs: ["tuiChecked"], outputs: ["tuiCheckedChange"] }, { type: i2.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i2.TuiFocusedDirective, selector: "[tuiFocusedChange]", outputs: ["tuiFocusedChange"] }, { type: i2.TuiFocusVisibleDirective, selector: "[tuiFocusVisibleChange]", outputs: ["tuiFocusVisibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiCheckboxComponent, decorators: [{
43
43
  type: Component,
44
44
  args: [{
@@ -73,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
73
73
  type: HostBinding,
74
74
  args: ['attr.data-size']
75
75
  }] } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3gudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLDBCQUEwQixFQUUxQixrQkFBa0IsR0FDckIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUErQixNQUFNLGdCQUFnQixDQUFDOzs7OztBQVlsRixNQUFNLE9BQU8sb0JBQ1QsU0FBUSwwQkFBbUM7SUFVM0MsWUFJSSxPQUF5QixFQUVSLE9BQTJCLEVBQ2pCLEdBQXNCO1FBRWpELEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFISCxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVJoRCxTQUFJLEdBQWEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFZbkMsQ0FBQztJQUVELElBQUksc0JBQXNCO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQjtZQUNsRCxDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUM5QyxDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLFNBQVMsQ0FBQyxPQUFnQjtRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQWdCO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxZQUFxQjtRQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7a0hBaERRLG9CQUFvQixrQkFjakIsU0FBUyx5Q0FFVCxvQkFBb0IsYUFFcEIsaUJBQWlCO3NHQWxCcEIsb0JBQW9CLDBIQUxsQjtRQUNQLDBCQUEwQixDQUFDLG9CQUFvQixDQUFDO1FBQ2hELFlBQVksQ0FBQyxvQkFBb0IsQ0FBQztLQUNyQyx1S0M5Qkwsc3BCQXNCQTs0RkRVYSxvQkFBb0I7a0JBVmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNwQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNQLDBCQUEwQixzQkFBc0I7d0JBQ2hELFlBQVksc0JBQXNCO3FCQUNyQztpQkFDSjs7MEJBYVEsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQyxTQUFTOzswQkFFaEIsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUUzQixNQUFNOzJCQUFDLGlCQUFpQjs0Q0FiWixnQkFBZ0I7c0JBRGhDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUs3QixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2wsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQ0hFQ0tCT1hfT1BUSU9OUywgVHVpQ2hlY2tib3hPcHRpb25zLCBUdWlTaXplTH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1jaGVja2JveCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NoZWNrYm94LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpQ2hlY2tib3hDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpQ2hlY2tib3hDb21wb25lbnQpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNoZWNrYm94Q29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbDxib29sZWFuPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZCgnZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgc2l6ZTogVHVpU2l6ZUwgPSB0aGlzLm9wdGlvbnMuc2l6ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9DSEVDS0JPWF9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aUNoZWNrYm94T3B0aW9ucyxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2RyKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5mb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNOYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZ2V0IGNvbXB1dGVkRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSAmJiB0aGlzLmZvY3VzYWJsZTtcbiAgICB9XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlICd2YWx1ZScgc2V0dGVyICovXG4gICAgb25DaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IGNoZWNrZWQ7XG4gICAgfVxuXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuICAgIH1cblxuICAgIG9uRm9jdXNWaXNpYmxlKGZvY3VzVmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzVmlzaWJsZShmb2N1c1Zpc2libGUpO1xuICAgIH1cbn1cbiIsIjx0dWktcHJpbWl0aXZlLWNoZWNrYm94XG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZm9jdXNlZF09XCJjb21wdXRlZEZvY3VzVmlzaWJsZVwiXG4gICAgW2hvdmVyZWRdPVwicHNldWRvSG92ZXJcIlxuICAgIFtwcmVzc2VkXT1cInBzZXVkb0FjdGl2ZVwiXG4gICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuPlxuICAgIDxpbnB1dFxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxuICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNoZWNrYm94X19uYXRpdmVcIlxuICAgICAgICBjbGFzcz1cInQtbmF0aXZlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgIFsodHVpQ2hlY2tlZCldPVwidmFsdWVcIlxuICAgICAgICAodHVpRm9jdXNlZENoYW5nZSk9XCJvbkZvY3VzZWQoJGV2ZW50KVwiXG4gICAgICAgICh0dWlGb2N1c1Zpc2libGVDaGFuZ2UpPVwib25Gb2N1c1Zpc2libGUoJGV2ZW50KVwiXG4gICAgLz5cbjwvdHVpLXByaW1pdGl2ZS1jaGVja2JveD5cbiJdfQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3gudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLDBCQUEwQixFQUUxQixrQkFBa0IsR0FDckIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUErQixNQUFNLGdCQUFnQixDQUFDOzs7OztBQVlsRixNQUFNLE9BQU8sb0JBQ1QsU0FBUSwwQkFBbUM7SUFVM0MsWUFJSSxPQUF5QixFQUVSLE9BQTJCLEVBQ2pCLEdBQXNCO1FBRWpELEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFISCxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVJoRCxTQUFJLEdBQWEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFZbkMsQ0FBQztJQUVELElBQUksc0JBQXNCO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQjtZQUNsRCxDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUM5QyxDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLFNBQVMsQ0FBQyxPQUFnQjtRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQWdCO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxZQUFxQjtRQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7a0hBaERRLG9CQUFvQixrQkFjakIsU0FBUyx5Q0FFVCxvQkFBb0IsYUFFcEIsaUJBQWlCO3NHQWxCcEIsb0JBQW9CLDBIQUxsQjtRQUNQLDBCQUEwQixDQUFDLG9CQUFvQixDQUFDO1FBQ2hELFlBQVksQ0FBQyxvQkFBb0IsQ0FBQztLQUNyQyx1S0M5Qkwsc3BCQXNCQTs0RkRVYSxvQkFBb0I7a0JBVmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNwQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNQLDBCQUEwQixzQkFBc0I7d0JBQ2hELFlBQVksc0JBQXNCO3FCQUNyQztpQkFDSjs7MEJBYVEsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQyxTQUFTOzswQkFFaEIsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUUzQixNQUFNOzJCQUFDLGlCQUFpQjs0Q0FiWixnQkFBZ0I7c0JBRGhDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUs3QixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2wsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQ0hFQ0tCT1hfT1BUSU9OUywgVHVpQ2hlY2tib3hPcHRpb25zLCBUdWlTaXplTH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1jaGVja2JveCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NoZWNrYm94LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpQ2hlY2tib3hDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpQ2hlY2tib3hDb21wb25lbnQpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUNoZWNrYm94Q29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbDxib29sZWFuPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZCgnZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgc2l6ZTogVHVpU2l6ZUwgPSB0aGlzLm9wdGlvbnMuc2l6ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9DSEVDS0JPWF9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aUNoZWNrYm94T3B0aW9ucyxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2RyKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5mb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNOYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZ2V0IGNvbXB1dGVkRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSAmJiB0aGlzLmZvY3VzYWJsZTtcbiAgICB9XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlICd2YWx1ZScgc2V0dGVyICovXG4gICAgb25DaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IGNoZWNrZWQ7XG4gICAgfVxuXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuICAgIH1cblxuICAgIG9uRm9jdXNWaXNpYmxlKGZvY3VzVmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzVmlzaWJsZShmb2N1c1Zpc2libGUpO1xuICAgIH1cbn1cbiIsIjx0dWktcHJpbWl0aXZlLWNoZWNrYm94XG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZm9jdXNlZF09XCJjb21wdXRlZEZvY3VzVmlzaWJsZVwiXG4gICAgW2hvdmVyZWRdPVwicHNldWRvSG92ZXJcIlxuICAgIFtpbnZhbGlkXT1cImNvbXB1dGVkSW52YWxpZFwiXG4gICAgW3ByZXNzZWRdPVwicHNldWRvQWN0aXZlXCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuPlxuICAgIDxpbnB1dFxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWNoZWNrYm94X19uYXRpdmVcIlxuICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICBjbGFzcz1cInQtbmF0aXZlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgIFsodHVpQ2hlY2tlZCldPVwidmFsdWVcIlxuICAgICAgICAodHVpRm9jdXNlZENoYW5nZSk9XCJvbkZvY3VzZWQoJGV2ZW50KVwiXG4gICAgICAgICh0dWlGb2N1c1Zpc2libGVDaGFuZ2UpPVwib25Gb2N1c1Zpc2libGUoJGV2ZW50KVwiXG4gICAgLz5cbjwvdHVpLXByaW1pdGl2ZS1jaGVja2JveD5cbiJdfQ==