@clr/angular 17.12.1 → 18.0.0-beta.1

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 (1157) hide show
  1. package/README.md +1 -5
  2. package/fesm2022/clr-angular-accordion.mjs +355 -0
  3. package/fesm2022/clr-angular-accordion.mjs.map +1 -0
  4. package/fesm2022/clr-angular-button.mjs +713 -0
  5. package/fesm2022/clr-angular-button.mjs.map +1 -0
  6. package/fesm2022/clr-angular-collapsible-panel.mjs +201 -0
  7. package/fesm2022/clr-angular-collapsible-panel.mjs.map +1 -0
  8. package/fesm2022/clr-angular-data-datagrid.mjs +7601 -0
  9. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -0
  10. package/fesm2022/clr-angular-data-stack-view.mjs +442 -0
  11. package/fesm2022/clr-angular-data-stack-view.mjs.map +1 -0
  12. package/fesm2022/clr-angular-data-tree-view.mjs +1106 -0
  13. package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -0
  14. package/fesm2022/clr-angular-data.mjs +9145 -0
  15. package/fesm2022/clr-angular-data.mjs.map +1 -0
  16. package/fesm2022/clr-angular-emphasis-alert.mjs +624 -0
  17. package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -0
  18. package/fesm2022/clr-angular-emphasis-badge.mjs +69 -0
  19. package/fesm2022/clr-angular-emphasis-badge.mjs.map +1 -0
  20. package/fesm2022/clr-angular-emphasis-common.mjs +25 -0
  21. package/fesm2022/clr-angular-emphasis-common.mjs.map +1 -0
  22. package/fesm2022/clr-angular-emphasis-label.mjs +105 -0
  23. package/fesm2022/clr-angular-emphasis-label.mjs.map +1 -0
  24. package/fesm2022/clr-angular-emphasis.mjs +807 -0
  25. package/fesm2022/clr-angular-emphasis.mjs.map +1 -0
  26. package/fesm2022/clr-angular-forms-checkbox.mjs +301 -0
  27. package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -0
  28. package/fesm2022/clr-angular-forms-combobox.mjs +1445 -0
  29. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -0
  30. package/fesm2022/clr-angular-forms-common.mjs +1235 -0
  31. package/fesm2022/clr-angular-forms-common.mjs.map +1 -0
  32. package/fesm2022/clr-angular-forms-datalist.mjs +275 -0
  33. package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -0
  34. package/fesm2022/clr-angular-forms-datepicker.mjs +3230 -0
  35. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -0
  36. package/fesm2022/clr-angular-forms-file-input.mjs +810 -0
  37. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -0
  38. package/fesm2022/clr-angular-forms-input.mjs +167 -0
  39. package/fesm2022/clr-angular-forms-input.mjs.map +1 -0
  40. package/fesm2022/clr-angular-forms-number-input.mjs +249 -0
  41. package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -0
  42. package/fesm2022/clr-angular-forms-password.mjs +245 -0
  43. package/fesm2022/clr-angular-forms-password.mjs.map +1 -0
  44. package/fesm2022/clr-angular-forms-radio.mjs +262 -0
  45. package/fesm2022/clr-angular-forms-radio.mjs.map +1 -0
  46. package/fesm2022/clr-angular-forms-range.mjs +199 -0
  47. package/fesm2022/clr-angular-forms-range.mjs.map +1 -0
  48. package/fesm2022/clr-angular-forms-select.mjs +166 -0
  49. package/fesm2022/clr-angular-forms-select.mjs.map +1 -0
  50. package/fesm2022/clr-angular-forms-textarea.mjs +149 -0
  51. package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -0
  52. package/fesm2022/clr-angular-forms.mjs +8592 -0
  53. package/fesm2022/clr-angular-forms.mjs.map +1 -0
  54. package/fesm2022/clr-angular-icon.mjs +7387 -0
  55. package/fesm2022/clr-angular-icon.mjs.map +1 -0
  56. package/fesm2022/clr-angular-layout-breadcrumbs.mjs +120 -0
  57. package/fesm2022/clr-angular-layout-breadcrumbs.mjs.map +1 -0
  58. package/fesm2022/clr-angular-layout-main-container.mjs +100 -0
  59. package/fesm2022/clr-angular-layout-main-container.mjs.map +1 -0
  60. package/fesm2022/clr-angular-layout-nav.mjs +580 -0
  61. package/fesm2022/clr-angular-layout-nav.mjs.map +1 -0
  62. package/fesm2022/clr-angular-layout-tabs.mjs +807 -0
  63. package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -0
  64. package/fesm2022/clr-angular-layout-vertical-nav.mjs +507 -0
  65. package/fesm2022/clr-angular-layout-vertical-nav.mjs.map +1 -0
  66. package/fesm2022/clr-angular-layout.mjs +2086 -0
  67. package/fesm2022/clr-angular-layout.mjs.map +1 -0
  68. package/fesm2022/clr-angular-modal.mjs +618 -0
  69. package/fesm2022/clr-angular-modal.mjs.map +1 -0
  70. package/fesm2022/clr-angular-popover-common.mjs +1027 -0
  71. package/fesm2022/clr-angular-popover-common.mjs.map +1 -0
  72. package/fesm2022/clr-angular-popover-dropdown.mjs +489 -0
  73. package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -0
  74. package/fesm2022/clr-angular-popover-signpost.mjs +478 -0
  75. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -0
  76. package/fesm2022/clr-angular-popover-tooltip.mjs +293 -0
  77. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -0
  78. package/fesm2022/clr-angular-popover.mjs +2271 -0
  79. package/fesm2022/clr-angular-popover.mjs.map +1 -0
  80. package/fesm2022/clr-angular-progress-progress-bars.mjs +217 -0
  81. package/fesm2022/clr-angular-progress-progress-bars.mjs.map +1 -0
  82. package/fesm2022/clr-angular-progress-spinner.mjs +132 -0
  83. package/fesm2022/clr-angular-progress-spinner.mjs.map +1 -0
  84. package/fesm2022/clr-angular-stepper.mjs +688 -0
  85. package/fesm2022/clr-angular-stepper.mjs.map +1 -0
  86. package/fesm2022/clr-angular-timeline.mjs +316 -0
  87. package/fesm2022/clr-angular-timeline.mjs.map +1 -0
  88. package/fesm2022/clr-angular-utils-conditional.mjs +351 -0
  89. package/fesm2022/clr-angular-utils-conditional.mjs.map +1 -0
  90. package/fesm2022/clr-angular-utils-loading.mjs +107 -0
  91. package/fesm2022/clr-angular-utils-loading.mjs.map +1 -0
  92. package/fesm2022/clr-angular-utils.mjs +2544 -0
  93. package/fesm2022/clr-angular-utils.mjs.map +1 -0
  94. package/fesm2022/clr-angular-wizard.mjs +2863 -0
  95. package/fesm2022/clr-angular-wizard.mjs.map +1 -0
  96. package/fesm2022/clr-angular.mjs +38771 -0
  97. package/fesm2022/clr-angular.mjs.map +1 -0
  98. package/package.json +197 -18
  99. package/popover/common/README.md +110 -0
  100. package/types/clr-angular-accordion.d.ts +100 -0
  101. package/types/clr-angular-button.d.ts +169 -0
  102. package/types/clr-angular-collapsible-panel.d.ts +73 -0
  103. package/types/clr-angular-data-datagrid.d.ts +1850 -0
  104. package/types/clr-angular-data-stack-view.d.ts +87 -0
  105. package/types/clr-angular-data-tree-view.d.ts +220 -0
  106. package/types/clr-angular-data.d.ts +2147 -0
  107. package/types/clr-angular-emphasis-alert.d.ts +175 -0
  108. package/types/clr-angular-emphasis-badge.d.ts +25 -0
  109. package/types/clr-angular-emphasis-common.d.ts +6 -0
  110. package/types/clr-angular-emphasis-label.d.ts +29 -0
  111. package/types/clr-angular-emphasis.d.ts +231 -0
  112. package/types/clr-angular-forms-checkbox.d.ts +69 -0
  113. package/types/clr-angular-forms-combobox.d.ts +300 -0
  114. package/types/clr-angular-forms-common.d.ts +336 -0
  115. package/types/clr-angular-forms-datalist.d.ts +59 -0
  116. package/types/clr-angular-forms-datepicker.d.ts +951 -0
  117. package/types/clr-angular-forms-file-input.d.ts +190 -0
  118. package/types/clr-angular-forms-input.d.ts +29 -0
  119. package/types/clr-angular-forms-number-input.d.ts +43 -0
  120. package/types/clr-angular-forms-password.d.ts +52 -0
  121. package/types/clr-angular-forms-radio.d.ts +50 -0
  122. package/types/clr-angular-forms-range.d.ts +37 -0
  123. package/types/clr-angular-forms-select.d.ts +36 -0
  124. package/types/clr-angular-forms-textarea.d.ts +29 -0
  125. package/types/clr-angular-forms.d.ts +2072 -0
  126. package/types/clr-angular-icon.d.ts +1498 -0
  127. package/types/clr-angular-layout-breadcrumbs.d.ts +45 -0
  128. package/types/clr-angular-layout-main-container.d.ts +28 -0
  129. package/types/clr-angular-layout-nav.d.ts +138 -0
  130. package/types/clr-angular-layout-tabs.d.ts +158 -0
  131. package/types/clr-angular-layout-vertical-nav.d.ts +128 -0
  132. package/types/clr-angular-layout.d.ts +476 -0
  133. package/types/clr-angular-modal.d.ts +160 -0
  134. package/types/clr-angular-popover-common.d.ts +230 -0
  135. package/types/clr-angular-popover-dropdown.d.ts +122 -0
  136. package/types/clr-angular-popover-signpost.d.ts +149 -0
  137. package/types/clr-angular-popover-tooltip.d.ts +83 -0
  138. package/types/clr-angular-popover.d.ts +568 -0
  139. package/{progress/progress-bars/progress-bar.d.ts → types/clr-angular-progress-progress-bars.d.ts} +15 -3
  140. package/{progress/spinner/spinner.d.ts → types/clr-angular-progress-spinner.d.ts} +15 -3
  141. package/types/clr-angular-stepper.d.ts +179 -0
  142. package/types/clr-angular-timeline.d.ts +86 -0
  143. package/types/clr-angular-utils-conditional.d.ts +132 -0
  144. package/types/clr-angular-utils-loading.d.ts +38 -0
  145. package/types/clr-angular-utils.d.ts +1075 -0
  146. package/types/clr-angular-wizard.d.ts +1451 -0
  147. package/types/clr-angular.d.ts +10257 -0
  148. package/accordion/accordion-content.d.ts +0 -5
  149. package/accordion/accordion-description.d.ts +0 -5
  150. package/accordion/accordion-panel.d.ts +0 -45
  151. package/accordion/accordion-title.d.ts +0 -5
  152. package/accordion/accordion.d.ts +0 -20
  153. package/accordion/accordion.module.d.ts +0 -16
  154. package/accordion/chocolate/accordion-oompa-loompa.d.ts +0 -12
  155. package/accordion/chocolate/accordion-willy-wonka.d.ts +0 -6
  156. package/accordion/enums/accordion-status.enum.d.ts +0 -5
  157. package/accordion/enums/accordion-strategy.enum.d.ts +0 -4
  158. package/accordion/index.d.ts +0 -10
  159. package/accordion/models/accordion.model.d.ts +0 -27
  160. package/accordion/providers/accordion.service.d.ts +0 -17
  161. package/accordion/stepper/chocolate/stepper-oompa-loompa.d.ts +0 -12
  162. package/accordion/stepper/chocolate/stepper-willy-wonka.d.ts +0 -6
  163. package/accordion/stepper/index.d.ts +0 -4
  164. package/accordion/stepper/models/stepper.model.d.ts +0 -29
  165. package/accordion/stepper/providers/stepper.service.d.ts +0 -23
  166. package/accordion/stepper/step-button.d.ts +0 -21
  167. package/accordion/stepper/stepper-panel.d.ts +0 -28
  168. package/accordion/stepper/stepper.d.ts +0 -26
  169. package/accordion/stepper/stepper.module.d.ts +0 -14
  170. package/accordion/utils/animation.d.ts +0 -2
  171. package/button/button-group/button-group.d.ts +0 -60
  172. package/button/button-group/button-group.module.d.ts +0 -13
  173. package/button/button-group/button.d.ts +0 -40
  174. package/button/button-group/index.d.ts +0 -3
  175. package/button/button-loading/index.d.ts +0 -2
  176. package/button/button-loading/loading-button.d.ts +0 -17
  177. package/button/button-loading/loading-button.module.d.ts +0 -10
  178. package/button/button.module.d.ts +0 -9
  179. package/button/index.d.ts +0 -3
  180. package/button/providers/button-group-focus-handler.service.d.ts +0 -32
  181. package/button/providers/button-group-focus.enum.d.ts +0 -4
  182. package/button/providers/button-in-group.service.d.ts +0 -10
  183. package/clr-angular.module.d.ts +0 -25
  184. package/data/data.module.d.ts +0 -9
  185. package/data/datagrid/built-in/comparators/datagrid-property-comparator.d.ts +0 -7
  186. package/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.d.ts +0 -37
  187. package/data/datagrid/built-in/filters/datagrid-numeric-filter.d.ts +0 -58
  188. package/data/datagrid/built-in/filters/datagrid-property-numeric-filter.d.ts +0 -8
  189. package/data/datagrid/built-in/filters/datagrid-property-string-filter.d.ts +0 -8
  190. package/data/datagrid/built-in/filters/datagrid-string-filter-impl.d.ts +0 -39
  191. package/data/datagrid/built-in/filters/datagrid-string-filter.d.ts +0 -60
  192. package/data/datagrid/built-in/nested-property.d.ts +0 -10
  193. package/data/datagrid/chocolate/actionable-oompa-loompa.d.ts +0 -12
  194. package/data/datagrid/chocolate/datagrid-willy-wonka.d.ts +0 -6
  195. package/data/datagrid/chocolate/expandable-oompa-loompa.d.ts +0 -12
  196. package/data/datagrid/datagrid-action-bar.d.ts +0 -5
  197. package/data/datagrid/datagrid-action-overflow.d.ts +0 -28
  198. package/data/datagrid/datagrid-cell.d.ts +0 -21
  199. package/data/datagrid/datagrid-column-separator.d.ts +0 -36
  200. package/data/datagrid/datagrid-column-toggle-button.d.ts +0 -16
  201. package/data/datagrid/datagrid-column-toggle-trackby.d.ts +0 -6
  202. package/data/datagrid/datagrid-column-toggle.d.ts +0 -30
  203. package/data/datagrid/datagrid-column.d.ts +0 -92
  204. package/data/datagrid/datagrid-detail-body.d.ts +0 -5
  205. package/data/datagrid/datagrid-detail-header.d.ts +0 -14
  206. package/data/datagrid/datagrid-detail-registerer.d.ts +0 -9
  207. package/data/datagrid/datagrid-detail.d.ts +0 -17
  208. package/data/datagrid/datagrid-filter.d.ts +0 -40
  209. package/data/datagrid/datagrid-footer.d.ts +0 -17
  210. package/data/datagrid/datagrid-hideable-column.d.ts +0 -41
  211. package/data/datagrid/datagrid-if-detail.d.ts +0 -28
  212. package/data/datagrid/datagrid-if-expanded.service.d.ts +0 -18
  213. package/data/datagrid/datagrid-items.d.ts +0 -28
  214. package/data/datagrid/datagrid-page-size.d.ts +0 -13
  215. package/data/datagrid/datagrid-pagination.d.ts +0 -73
  216. package/data/datagrid/datagrid-placeholder.d.ts +0 -12
  217. package/data/datagrid/datagrid-row-detail.d.ts +0 -34
  218. package/data/datagrid/datagrid-row.d.ts +0 -109
  219. package/data/datagrid/datagrid-selection-cell.directive.d.ts +0 -9
  220. package/data/datagrid/datagrid-single-selection.directive.d.ts +0 -21
  221. package/data/datagrid/datagrid-virtual-scroll.directive.d.ts +0 -80
  222. package/data/datagrid/datagrid.d.ts +0 -149
  223. package/data/datagrid/datagrid.module.d.ts +0 -60
  224. package/data/datagrid/enums/column-changes.enum.d.ts +0 -6
  225. package/data/datagrid/enums/display-mode.enum.d.ts +0 -4
  226. package/data/datagrid/enums/render-step.enum.d.ts +0 -7
  227. package/data/datagrid/enums/selection-type.d.ts +0 -5
  228. package/data/datagrid/enums/sort-order.enum.d.ts +0 -12
  229. package/data/datagrid/index.d.ts +0 -50
  230. package/data/datagrid/interfaces/column-state.interface.d.ts +0 -14
  231. package/data/datagrid/interfaces/comparator.interface.d.ts +0 -3
  232. package/data/datagrid/interfaces/filter.interface.d.ts +0 -8
  233. package/data/datagrid/interfaces/key-nav-grid-strategy.interface.d.ts +0 -11
  234. package/data/datagrid/interfaces/numeric-filter.interface.d.ts +0 -3
  235. package/data/datagrid/interfaces/state.interface.d.ts +0 -14
  236. package/data/datagrid/interfaces/string-filter.interface.d.ts +0 -3
  237. package/data/datagrid/interfaces/virtual-scroll-data-range.interface.d.ts +0 -5
  238. package/data/datagrid/providers/column-resizer.service.d.ts +0 -22
  239. package/data/datagrid/providers/column-state.provider.d.ts +0 -9
  240. package/data/datagrid/providers/columns.service.d.ts +0 -18
  241. package/data/datagrid/providers/custom-filter.d.ts +0 -2
  242. package/data/datagrid/providers/detail.service.d.ts +0 -28
  243. package/data/datagrid/providers/display-mode.service.d.ts +0 -14
  244. package/data/datagrid/providers/filters.d.ts +0 -44
  245. package/data/datagrid/providers/global-expandable-rows.d.ts +0 -16
  246. package/data/datagrid/providers/items.d.ts +0 -84
  247. package/data/datagrid/providers/page.d.ts +0 -62
  248. package/data/datagrid/providers/row-action-service.d.ts +0 -12
  249. package/data/datagrid/providers/selection.d.ts +0 -105
  250. package/data/datagrid/providers/sort.d.ts +0 -44
  251. package/data/datagrid/providers/state-debouncer.provider.d.ts +0 -14
  252. package/data/datagrid/providers/state.provider.d.ts +0 -24
  253. package/data/datagrid/providers/table-size.service.d.ts +0 -17
  254. package/data/datagrid/render/cell-renderer.d.ts +0 -18
  255. package/data/datagrid/render/constants.d.ts +0 -4
  256. package/data/datagrid/render/header-renderer.d.ts +0 -34
  257. package/data/datagrid/render/main-renderer.d.ts +0 -71
  258. package/data/datagrid/render/noop-dom-adapter.d.ts +0 -13
  259. package/data/datagrid/render/render-organizer.d.ts +0 -12
  260. package/data/datagrid/render/row-detail-renderer.d.ts +0 -11
  261. package/data/datagrid/render/row-renderer.d.ts +0 -17
  262. package/data/datagrid/utils/datagrid-filter-registrar.d.ts +0 -18
  263. package/data/datagrid/utils/key-navigation-grid.controller.d.ts +0 -32
  264. package/data/datagrid/utils/key-navigation-strategies/default.d.ts +0 -15
  265. package/data/datagrid/utils/key-navigation-strategies/expanded-columns-row.d.ts +0 -12
  266. package/data/datagrid/utils/key-navigation-strategies/expanded-row.d.ts +0 -12
  267. package/data/datagrid/utils/key-navigation-utils.d.ts +0 -24
  268. package/data/datagrid/wrapped-cell.d.ts +0 -10
  269. package/data/datagrid/wrapped-column.d.ts +0 -10
  270. package/data/datagrid/wrapped-row.d.ts +0 -10
  271. package/data/index.d.ts +0 -4
  272. package/data/stack-view/index.d.ts +0 -6
  273. package/data/stack-view/stack-block.d.ts +0 -37
  274. package/data/stack-view/stack-content-input.d.ts +0 -6
  275. package/data/stack-view/stack-header.d.ts +0 -8
  276. package/data/stack-view/stack-view-custom-tags.d.ts +0 -15
  277. package/data/stack-view/stack-view.d.ts +0 -5
  278. package/data/stack-view/stack-view.module.d.ts +0 -18
  279. package/data/tree-view/index.d.ts +0 -6
  280. package/data/tree-view/models/async-array.d.ts +0 -3
  281. package/data/tree-view/models/declarative-tree-node.model.d.ts +0 -9
  282. package/data/tree-view/models/recursive-tree-node.model.d.ts +0 -18
  283. package/data/tree-view/models/selected-state.enum.d.ts +0 -5
  284. package/data/tree-view/models/tree-node.model.d.ts +0 -23
  285. package/data/tree-view/recursive-children.d.ts +0 -22
  286. package/data/tree-view/recursive-for-of.d.ts +0 -22
  287. package/data/tree-view/tree-features.service.d.ts +0 -22
  288. package/data/tree-view/tree-focus-manager.service.d.ts +0 -32
  289. package/data/tree-view/tree-node-link.d.ts +0 -10
  290. package/data/tree-view/tree-node.d.ts +0 -59
  291. package/data/tree-view/tree-view.module.d.ts +0 -17
  292. package/data/tree-view/tree.d.ts +0 -22
  293. package/emphasis/alert/alert-item.d.ts +0 -8
  294. package/emphasis/alert/alert-text.d.ts +0 -9
  295. package/emphasis/alert/alert.d.ts +0 -40
  296. package/emphasis/alert/alert.module.d.ts +0 -18
  297. package/emphasis/alert/alerts-pager.d.ts +0 -31
  298. package/emphasis/alert/alerts.d.ts +0 -32
  299. package/emphasis/alert/index.d.ts +0 -6
  300. package/emphasis/alert/providers/icon-and-types.service.d.ts +0 -18
  301. package/emphasis/alert/providers/multi-alert.service.d.ts +0 -28
  302. package/emphasis/alert/utils/alert-info-object.d.ts +0 -5
  303. package/emphasis/alert/utils/alert-types.d.ts +0 -1
  304. package/emphasis/emphasis.module.d.ts +0 -7
  305. package/emphasis/index.d.ts +0 -2
  306. package/esm2020/accordion/accordion-content.mjs +0 -21
  307. package/esm2020/accordion/accordion-description.mjs +0 -22
  308. package/esm2020/accordion/accordion-panel.mjs +0 -141
  309. package/esm2020/accordion/accordion-title.mjs +0 -22
  310. package/esm2020/accordion/accordion.mjs +0 -62
  311. package/esm2020/accordion/accordion.module.mjs +0 -56
  312. package/esm2020/accordion/chocolate/accordion-oompa-loompa.mjs +0 -34
  313. package/esm2020/accordion/chocolate/accordion-willy-wonka.mjs +0 -20
  314. package/esm2020/accordion/enums/accordion-status.enum.mjs +0 -13
  315. package/esm2020/accordion/enums/accordion-strategy.enum.mjs +0 -12
  316. package/esm2020/accordion/index.mjs +0 -17
  317. package/esm2020/accordion/models/accordion.model.mjs +0 -61
  318. package/esm2020/accordion/providers/accordion.service.mjs +0 -48
  319. package/esm2020/accordion/stepper/chocolate/stepper-oompa-loompa.mjs +0 -34
  320. package/esm2020/accordion/stepper/chocolate/stepper-willy-wonka.mjs +0 -20
  321. package/esm2020/accordion/stepper/index.mjs +0 -11
  322. package/esm2020/accordion/stepper/models/stepper.model.mjs +0 -146
  323. package/esm2020/accordion/stepper/providers/stepper.service.mjs +0 -75
  324. package/esm2020/accordion/stepper/step-button.mjs +0 -62
  325. package/esm2020/accordion/stepper/stepper-panel.mjs +0 -96
  326. package/esm2020/accordion/stepper/stepper.mjs +0 -105
  327. package/esm2020/accordion/stepper/stepper.module.mjs +0 -31
  328. package/esm2020/accordion/utils/animation.mjs +0 -31
  329. package/esm2020/button/button-group/button-group.mjs +0 -164
  330. package/esm2020/button/button-group/button-group.module.mjs +0 -28
  331. package/esm2020/button/button-group/button.mjs +0 -175
  332. package/esm2020/button/button-group/index.mjs +0 -10
  333. package/esm2020/button/button-loading/index.mjs +0 -9
  334. package/esm2020/button/button-loading/loading-button.mjs +0 -164
  335. package/esm2020/button/button-loading/loading-button.module.mjs +0 -25
  336. package/esm2020/button/button.module.mjs +0 -26
  337. package/esm2020/button/index.mjs +0 -10
  338. package/esm2020/button/providers/button-group-focus-handler.service.mjs +0 -97
  339. package/esm2020/button/providers/button-group-focus.enum.mjs +0 -12
  340. package/esm2020/button/providers/button-in-group.service.mjs +0 -26
  341. package/esm2020/clr-angular.mjs +0 -5
  342. package/esm2020/clr-angular.module.mjs +0 -93
  343. package/esm2020/data/data.module.mjs +0 -23
  344. package/esm2020/data/datagrid/built-in/comparators/datagrid-property-comparator.mjs +0 -46
  345. package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs +0 -93
  346. package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +0 -259
  347. package/esm2020/data/datagrid/built-in/filters/datagrid-property-numeric-filter.mjs +0 -28
  348. package/esm2020/data/datagrid/built-in/filters/datagrid-property-string-filter.mjs +0 -27
  349. package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs +0 -82
  350. package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +0 -185
  351. package/esm2020/data/datagrid/built-in/nested-property.mjs +0 -38
  352. package/esm2020/data/datagrid/chocolate/actionable-oompa-loompa.mjs +0 -34
  353. package/esm2020/data/datagrid/chocolate/datagrid-willy-wonka.mjs +0 -20
  354. package/esm2020/data/datagrid/chocolate/expandable-oompa-loompa.mjs +0 -34
  355. package/esm2020/data/datagrid/datagrid-action-bar.mjs +0 -21
  356. package/esm2020/data/datagrid/datagrid-action-overflow.mjs +0 -166
  357. package/esm2020/data/datagrid/datagrid-cell.mjs +0 -40
  358. package/esm2020/data/datagrid/datagrid-column-separator.mjs +0 -171
  359. package/esm2020/data/datagrid/datagrid-column-toggle-button.mjs +0 -65
  360. package/esm2020/data/datagrid/datagrid-column-toggle-trackby.mjs +0 -8
  361. package/esm2020/data/datagrid/datagrid-column-toggle.mjs +0 -204
  362. package/esm2020/data/datagrid/datagrid-column.mjs +0 -420
  363. package/esm2020/data/datagrid/datagrid-detail-body.mjs +0 -31
  364. package/esm2020/data/datagrid/datagrid-detail-header.mjs +0 -67
  365. package/esm2020/data/datagrid/datagrid-detail-registerer.mjs +0 -37
  366. package/esm2020/data/datagrid/datagrid-detail.mjs +0 -98
  367. package/esm2020/data/datagrid/datagrid-filter.mjs +0 -186
  368. package/esm2020/data/datagrid/datagrid-footer.mjs +0 -78
  369. package/esm2020/data/datagrid/datagrid-hideable-column.mjs +0 -106
  370. package/esm2020/data/datagrid/datagrid-if-detail.mjs +0 -96
  371. package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +0 -55
  372. package/esm2020/data/datagrid/datagrid-items.mjs +0 -72
  373. package/esm2020/data/datagrid/datagrid-page-size.mjs +0 -63
  374. package/esm2020/data/datagrid/datagrid-pagination.mjs +0 -388
  375. package/esm2020/data/datagrid/datagrid-placeholder.mjs +0 -42
  376. package/esm2020/data/datagrid/datagrid-row-detail.mjs +0 -116
  377. package/esm2020/data/datagrid/datagrid-row.mjs +0 -372
  378. package/esm2020/data/datagrid/datagrid-selection-cell.directive.mjs +0 -37
  379. package/esm2020/data/datagrid/datagrid-single-selection.directive.mjs +0 -74
  380. package/esm2020/data/datagrid/datagrid-virtual-scroll.directive.mjs +0 -340
  381. package/esm2020/data/datagrid/datagrid.mjs +0 -556
  382. package/esm2020/data/datagrid/datagrid.module.mjs +0 -238
  383. package/esm2020/data/datagrid/enums/column-changes.enum.mjs +0 -16
  384. package/esm2020/data/datagrid/enums/display-mode.enum.mjs +0 -12
  385. package/esm2020/data/datagrid/enums/render-step.enum.mjs +0 -15
  386. package/esm2020/data/datagrid/enums/selection-type.mjs +0 -13
  387. package/esm2020/data/datagrid/enums/sort-order.enum.mjs +0 -20
  388. package/esm2020/data/datagrid/index.mjs +0 -56
  389. package/esm2020/data/datagrid/interfaces/column-state.interface.mjs +0 -8
  390. package/esm2020/data/datagrid/interfaces/comparator.interface.mjs +0 -8
  391. package/esm2020/data/datagrid/interfaces/filter.interface.mjs +0 -8
  392. package/esm2020/data/datagrid/interfaces/key-nav-grid-strategy.interface.mjs +0 -8
  393. package/esm2020/data/datagrid/interfaces/numeric-filter.interface.mjs +0 -8
  394. package/esm2020/data/datagrid/interfaces/state.interface.mjs +0 -8
  395. package/esm2020/data/datagrid/interfaces/string-filter.interface.mjs +0 -8
  396. package/esm2020/data/datagrid/interfaces/virtual-scroll-data-range.interface.mjs +0 -8
  397. package/esm2020/data/datagrid/providers/column-resizer.service.mjs +0 -58
  398. package/esm2020/data/datagrid/providers/column-state.provider.mjs +0 -19
  399. package/esm2020/data/datagrid/providers/columns.service.mjs +0 -63
  400. package/esm2020/data/datagrid/providers/custom-filter.mjs +0 -9
  401. package/esm2020/data/datagrid/providers/detail.service.mjs +0 -76
  402. package/esm2020/data/datagrid/providers/display-mode.service.mjs +0 -36
  403. package/esm2020/data/datagrid/providers/filters.mjs +0 -112
  404. package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +0 -34
  405. package/esm2020/data/datagrid/providers/items.mjs +0 -177
  406. package/esm2020/data/datagrid/providers/page.mjs +0 -156
  407. package/esm2020/data/datagrid/providers/row-action-service.mjs +0 -31
  408. package/esm2020/data/datagrid/providers/selection.mjs +0 -365
  409. package/esm2020/data/datagrid/providers/sort.mjs +0 -86
  410. package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +0 -43
  411. package/esm2020/data/datagrid/providers/state.provider.mjs +0 -75
  412. package/esm2020/data/datagrid/providers/table-size.service.mjs +0 -45
  413. package/esm2020/data/datagrid/render/cell-renderer.mjs +0 -59
  414. package/esm2020/data/datagrid/render/constants.mjs +0 -13
  415. package/esm2020/data/datagrid/render/header-renderer.mjs +0 -117
  416. package/esm2020/data/datagrid/render/main-renderer.mjs +0 -285
  417. package/esm2020/data/datagrid/render/noop-dom-adapter.mjs +0 -48
  418. package/esm2020/data/datagrid/render/render-organizer.mjs +0 -39
  419. package/esm2020/data/datagrid/render/row-detail-renderer.mjs +0 -31
  420. package/esm2020/data/datagrid/render/row-renderer.mjs +0 -62
  421. package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +0 -43
  422. package/esm2020/data/datagrid/utils/key-navigation-grid.controller.mjs +0 -155
  423. package/esm2020/data/datagrid/utils/key-navigation-strategies/default.mjs +0 -132
  424. package/esm2020/data/datagrid/utils/key-navigation-strategies/expanded-columns-row.mjs +0 -129
  425. package/esm2020/data/datagrid/utils/key-navigation-strategies/expanded-row.mjs +0 -165
  426. package/esm2020/data/datagrid/utils/key-navigation-utils.mjs +0 -121
  427. package/esm2020/data/datagrid/wrapped-cell.mjs +0 -37
  428. package/esm2020/data/datagrid/wrapped-column.mjs +0 -38
  429. package/esm2020/data/datagrid/wrapped-row.mjs +0 -38
  430. package/esm2020/data/index.mjs +0 -11
  431. package/esm2020/data/stack-view/index.mjs +0 -13
  432. package/esm2020/data/stack-view/stack-block.mjs +0 -236
  433. package/esm2020/data/stack-view/stack-content-input.mjs +0 -27
  434. package/esm2020/data/stack-view/stack-header.mjs +0 -37
  435. package/esm2020/data/stack-view/stack-view-custom-tags.mjs +0 -57
  436. package/esm2020/data/stack-view/stack-view.mjs +0 -23
  437. package/esm2020/data/stack-view/stack-view.module.mjs +0 -53
  438. package/esm2020/data/tree-view/index.mjs +0 -13
  439. package/esm2020/data/tree-view/models/async-array.mjs +0 -11
  440. package/esm2020/data/tree-view/models/declarative-tree-node.model.mjs +0 -37
  441. package/esm2020/data/tree-view/models/recursive-tree-node.model.mjs +0 -77
  442. package/esm2020/data/tree-view/models/selected-state.enum.mjs +0 -17
  443. package/esm2020/data/tree-view/models/tree-node.model.mjs +0 -116
  444. package/esm2020/data/tree-view/recursive-children.mjs +0 -88
  445. package/esm2020/data/tree-view/recursive-for-of.mjs +0 -57
  446. package/esm2020/data/tree-view/tree-features.service.mjs +0 -38
  447. package/esm2020/data/tree-view/tree-focus-manager.service.mjs +0 -190
  448. package/esm2020/data/tree-view/tree-node-link.mjs +0 -30
  449. package/esm2020/data/tree-view/tree-node.mjs +0 -348
  450. package/esm2020/data/tree-view/tree-view.module.mjs +0 -35
  451. package/esm2020/data/tree-view/tree.mjs +0 -102
  452. package/esm2020/emphasis/alert/alert-item.mjs +0 -52
  453. package/esm2020/emphasis/alert/alert-text.mjs +0 -23
  454. package/esm2020/emphasis/alert/alert.mjs +0 -142
  455. package/esm2020/emphasis/alert/alert.module.mjs +0 -36
  456. package/esm2020/emphasis/alert/alerts-pager.mjs +0 -87
  457. package/esm2020/emphasis/alert/alerts.mjs +0 -102
  458. package/esm2020/emphasis/alert/index.mjs +0 -13
  459. package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +0 -90
  460. package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +0 -97
  461. package/esm2020/emphasis/alert/utils/alert-info-object.mjs +0 -8
  462. package/esm2020/emphasis/alert/utils/alert-types.mjs +0 -9
  463. package/esm2020/emphasis/emphasis.module.mjs +0 -21
  464. package/esm2020/emphasis/index.mjs +0 -9
  465. package/esm2020/forms/checkbox/checkbox-container.mjs +0 -136
  466. package/esm2020/forms/checkbox/checkbox-wrapper.mjs +0 -70
  467. package/esm2020/forms/checkbox/checkbox.mjs +0 -53
  468. package/esm2020/forms/checkbox/checkbox.module.mjs +0 -33
  469. package/esm2020/forms/checkbox/index.mjs +0 -11
  470. package/esm2020/forms/combobox/combobox-container.mjs +0 -106
  471. package/esm2020/forms/combobox/combobox.mjs +0 -360
  472. package/esm2020/forms/combobox/combobox.module.mjs +0 -97
  473. package/esm2020/forms/combobox/index.mjs +0 -15
  474. package/esm2020/forms/combobox/model/combobox.model.mjs +0 -9
  475. package/esm2020/forms/combobox/model/multi-select-combobox.model.mjs +0 -82
  476. package/esm2020/forms/combobox/model/pseudo-focus.model.mjs +0 -24
  477. package/esm2020/forms/combobox/model/single-select-combobox.model.mjs +0 -39
  478. package/esm2020/forms/combobox/option-group.mjs +0 -42
  479. package/esm2020/forms/combobox/option-items.directive.mjs +0 -110
  480. package/esm2020/forms/combobox/option-selected.directive.mjs +0 -25
  481. package/esm2020/forms/combobox/option.mjs +0 -103
  482. package/esm2020/forms/combobox/options.mjs +0 -156
  483. package/esm2020/forms/combobox/providers/combobox-container.service.mjs +0 -19
  484. package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +0 -222
  485. package/esm2020/forms/combobox/providers/option-selection.service.mjs +0 -85
  486. package/esm2020/forms/common/abstract-container.mjs +0 -135
  487. package/esm2020/forms/common/abstract-control.mjs +0 -51
  488. package/esm2020/forms/common/common.module.mjs +0 -78
  489. package/esm2020/forms/common/control-container.mjs +0 -84
  490. package/esm2020/forms/common/control.mjs +0 -31
  491. package/esm2020/forms/common/error.mjs +0 -38
  492. package/esm2020/forms/common/form.mjs +0 -54
  493. package/esm2020/forms/common/helper.mjs +0 -37
  494. package/esm2020/forms/common/if-control-state/abstract-if-state.mjs +0 -46
  495. package/esm2020/forms/common/if-control-state/if-control-state.service.mjs +0 -57
  496. package/esm2020/forms/common/if-control-state/if-error.mjs +0 -75
  497. package/esm2020/forms/common/if-control-state/if-success.mjs +0 -48
  498. package/esm2020/forms/common/index.mjs +0 -21
  499. package/esm2020/forms/common/label.mjs +0 -102
  500. package/esm2020/forms/common/layout.mjs +0 -32
  501. package/esm2020/forms/common/providers/container-id.service.mjs +0 -39
  502. package/esm2020/forms/common/providers/control-class.service.mjs +0 -53
  503. package/esm2020/forms/common/providers/control-id.service.mjs +0 -32
  504. package/esm2020/forms/common/providers/focus.service.mjs +0 -26
  505. package/esm2020/forms/common/providers/layout.service.mjs +0 -58
  506. package/esm2020/forms/common/providers/mark-control.service.mjs +0 -26
  507. package/esm2020/forms/common/providers/ng-control.service.mjs +0 -53
  508. package/esm2020/forms/common/success.mjs +0 -38
  509. package/esm2020/forms/common/wrapped-control.mjs +0 -191
  510. package/esm2020/forms/datalist/datalist-container.mjs +0 -121
  511. package/esm2020/forms/datalist/datalist-input.mjs +0 -63
  512. package/esm2020/forms/datalist/datalist.mjs +0 -49
  513. package/esm2020/forms/datalist/datalist.module.mjs +0 -32
  514. package/esm2020/forms/datalist/index.mjs +0 -11
  515. package/esm2020/forms/datalist/providers/datalist-id.service.mjs +0 -32
  516. package/esm2020/forms/datepicker/calendar.mjs +0 -175
  517. package/esm2020/forms/datepicker/date-container.mjs +0 -365
  518. package/esm2020/forms/datepicker/date-end-input.mjs +0 -60
  519. package/esm2020/forms/datepicker/date-input.mjs +0 -294
  520. package/esm2020/forms/datepicker/date-input.validator.mjs +0 -100
  521. package/esm2020/forms/datepicker/date-single-input.mjs +0 -63
  522. package/esm2020/forms/datepicker/date-start-input.mjs +0 -61
  523. package/esm2020/forms/datepicker/datepicker-action-buttons.mjs +0 -59
  524. package/esm2020/forms/datepicker/datepicker-view-manager.mjs +0 -74
  525. package/esm2020/forms/datepicker/datepicker.module.mjs +0 -111
  526. package/esm2020/forms/datepicker/day.mjs +0 -145
  527. package/esm2020/forms/datepicker/daypicker.mjs +0 -81
  528. package/esm2020/forms/datepicker/index.mjs +0 -21
  529. package/esm2020/forms/datepicker/interfaces/date-range.interface.mjs +0 -8
  530. package/esm2020/forms/datepicker/interfaces/day-of-week.interface.mjs +0 -8
  531. package/esm2020/forms/datepicker/model/calendar-view.model.mjs +0 -182
  532. package/esm2020/forms/datepicker/model/calendar.model.mjs +0 -79
  533. package/esm2020/forms/datepicker/model/day-view.model.mjs +0 -25
  534. package/esm2020/forms/datepicker/model/day.model.mjs +0 -72
  535. package/esm2020/forms/datepicker/model/year-range.model.mjs +0 -61
  536. package/esm2020/forms/datepicker/monthpicker.mjs +0 -325
  537. package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +0 -37
  538. package/esm2020/forms/datepicker/providers/date-io.service.mjs +0 -195
  539. package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +0 -195
  540. package/esm2020/forms/datepicker/providers/datepicker-enabled.service.mjs +0 -47
  541. package/esm2020/forms/datepicker/providers/datepicker-focus.service.mjs +0 -48
  542. package/esm2020/forms/datepicker/providers/locale-helper.service.mjs +0 -102
  543. package/esm2020/forms/datepicker/providers/view-manager.service.mjs +0 -42
  544. package/esm2020/forms/datepicker/utils/constants.mjs +0 -38
  545. package/esm2020/forms/datepicker/utils/date-utils.mjs +0 -50
  546. package/esm2020/forms/datepicker/yearpicker.mjs +0 -304
  547. package/esm2020/forms/file-input/file-input-container.mjs +0 -245
  548. package/esm2020/forms/file-input/file-input-validator-errors.mjs +0 -8
  549. package/esm2020/forms/file-input/file-input-validator.mjs +0 -64
  550. package/esm2020/forms/file-input/file-input-value-accessor.mjs +0 -53
  551. package/esm2020/forms/file-input/file-input.helpers.mjs +0 -22
  552. package/esm2020/forms/file-input/file-input.mjs +0 -77
  553. package/esm2020/forms/file-input/file-input.module.mjs +0 -74
  554. package/esm2020/forms/file-input/file-list.mjs +0 -160
  555. package/esm2020/forms/file-input/file-messages-template.mjs +0 -26
  556. package/esm2020/forms/file-input/file-messages.mjs +0 -61
  557. package/esm2020/forms/file-input/index.mjs +0 -16
  558. package/esm2020/forms/forms.module.mjs +0 -73
  559. package/esm2020/forms/index.mjs +0 -21
  560. package/esm2020/forms/input/index.mjs +0 -10
  561. package/esm2020/forms/input/input-container.mjs +0 -92
  562. package/esm2020/forms/input/input.mjs +0 -40
  563. package/esm2020/forms/input/input.module.mjs +0 -33
  564. package/esm2020/forms/number-input/index.mjs +0 -10
  565. package/esm2020/forms/number-input/number-input-container.mjs +0 -148
  566. package/esm2020/forms/number-input/number-input.mjs +0 -79
  567. package/esm2020/forms/number-input/number-input.module.mjs +0 -32
  568. package/esm2020/forms/password/index.mjs +0 -10
  569. package/esm2020/forms/password/password-container.mjs +0 -180
  570. package/esm2020/forms/password/password.mjs +0 -64
  571. package/esm2020/forms/password/password.module.mjs +0 -32
  572. package/esm2020/forms/radio/index.mjs +0 -11
  573. package/esm2020/forms/radio/radio-container.mjs +0 -150
  574. package/esm2020/forms/radio/radio-wrapper.mjs +0 -44
  575. package/esm2020/forms/radio/radio.mjs +0 -29
  576. package/esm2020/forms/radio/radio.module.mjs +0 -33
  577. package/esm2020/forms/range/index.mjs +0 -10
  578. package/esm2020/forms/range/range-container.mjs +0 -137
  579. package/esm2020/forms/range/range.mjs +0 -30
  580. package/esm2020/forms/range/range.module.mjs +0 -32
  581. package/esm2020/forms/select/index.mjs +0 -10
  582. package/esm2020/forms/select/select-container.mjs +0 -114
  583. package/esm2020/forms/select/select.mjs +0 -31
  584. package/esm2020/forms/select/select.module.mjs +0 -32
  585. package/esm2020/forms/textarea/index.mjs +0 -10
  586. package/esm2020/forms/textarea/textarea-container.mjs +0 -84
  587. package/esm2020/forms/textarea/textarea.mjs +0 -31
  588. package/esm2020/forms/textarea/textarea.module.mjs +0 -32
  589. package/esm2020/icon/icon.mjs +0 -29
  590. package/esm2020/icon/icon.module.mjs +0 -25
  591. package/esm2020/icon/index.mjs +0 -9
  592. package/esm2020/index.mjs +0 -23
  593. package/esm2020/layout/breadcrumbs/breadcrumb-item.mjs +0 -24
  594. package/esm2020/layout/breadcrumbs/breadcrumbs.constants.mjs +0 -8
  595. package/esm2020/layout/breadcrumbs/breadcrumbs.mjs +0 -46
  596. package/esm2020/layout/breadcrumbs/breadcrumbs.module.mjs +0 -28
  597. package/esm2020/layout/breadcrumbs/index.mjs +0 -11
  598. package/esm2020/layout/breadcrumbs/model/breadcrumbs.model.mjs +0 -8
  599. package/esm2020/layout/index.mjs +0 -13
  600. package/esm2020/layout/layout.module.mjs +0 -25
  601. package/esm2020/layout/main-container/index.mjs +0 -9
  602. package/esm2020/layout/main-container/main-container.mjs +0 -62
  603. package/esm2020/layout/main-container/main-container.module.mjs +0 -26
  604. package/esm2020/layout/nav/aria-current-link.mjs +0 -32
  605. package/esm2020/layout/nav/chocolate/index.mjs +0 -9
  606. package/esm2020/layout/nav/chocolate/main-container-willy-wonka.mjs +0 -20
  607. package/esm2020/layout/nav/chocolate/nav-detection-oompa-loompa.mjs +0 -36
  608. package/esm2020/layout/nav/header.mjs +0 -154
  609. package/esm2020/layout/nav/index.mjs +0 -12
  610. package/esm2020/layout/nav/nav-level.mjs +0 -197
  611. package/esm2020/layout/nav/navigation.module.mjs +0 -45
  612. package/esm2020/layout/nav/providers/responsive-navigation.service.mjs +0 -61
  613. package/esm2020/layout/nav/responsive-nav-codes.mjs +0 -21
  614. package/esm2020/layout/nav/responsive-nav-control-message.mjs +0 -19
  615. package/esm2020/layout/tabs/chocolate/active-oompa-loompa.mjs +0 -39
  616. package/esm2020/layout/tabs/chocolate/tabs-willy-wonka.mjs +0 -20
  617. package/esm2020/layout/tabs/enums/tabs-layout.enum.mjs +0 -12
  618. package/esm2020/layout/tabs/index.mjs +0 -17
  619. package/esm2020/layout/tabs/providers/tabs.service.mjs +0 -46
  620. package/esm2020/layout/tabs/tab-action.directive.mjs +0 -22
  621. package/esm2020/layout/tabs/tab-content.mjs +0 -87
  622. package/esm2020/layout/tabs/tab-link.directive.mjs +0 -105
  623. package/esm2020/layout/tabs/tab-overflow-content.mjs +0 -23
  624. package/esm2020/layout/tabs/tab.mjs +0 -47
  625. package/esm2020/layout/tabs/tabs-actions.mjs +0 -39
  626. package/esm2020/layout/tabs/tabs-id.provider.mjs +0 -17
  627. package/esm2020/layout/tabs/tabs.mjs +0 -327
  628. package/esm2020/layout/tabs/tabs.module.mjs +0 -67
  629. package/esm2020/layout/vertical-nav/index.mjs +0 -13
  630. package/esm2020/layout/vertical-nav/providers/vertical-nav-group-registration.service.mjs +0 -25
  631. package/esm2020/layout/vertical-nav/providers/vertical-nav-group.service.mjs +0 -26
  632. package/esm2020/layout/vertical-nav/providers/vertical-nav-icon.service.mjs +0 -28
  633. package/esm2020/layout/vertical-nav/providers/vertical-nav.service.mjs +0 -55
  634. package/esm2020/layout/vertical-nav/vertical-nav-group-children.mjs +0 -20
  635. package/esm2020/layout/vertical-nav/vertical-nav-group.mjs +0 -162
  636. package/esm2020/layout/vertical-nav/vertical-nav-icon.mjs +0 -28
  637. package/esm2020/layout/vertical-nav/vertical-nav-link.mjs +0 -57
  638. package/esm2020/layout/vertical-nav/vertical-nav.mjs +0 -85
  639. package/esm2020/layout/vertical-nav/vertical-nav.module.mjs +0 -50
  640. package/esm2020/modal/index.mjs +0 -14
  641. package/esm2020/modal/modal-body.mjs +0 -65
  642. package/esm2020/modal/modal-configuration.service.mjs +0 -21
  643. package/esm2020/modal/modal-host.component.mjs +0 -29
  644. package/esm2020/modal/modal-stack.service.mjs +0 -53
  645. package/esm2020/modal/modal.mjs +0 -185
  646. package/esm2020/modal/modal.module.mjs +0 -33
  647. package/esm2020/modal/side-panel.mjs +0 -227
  648. package/esm2020/modal/side-panel.module.mjs +0 -28
  649. package/esm2020/popover/common/abstract-popover.mjs +0 -138
  650. package/esm2020/popover/common/popover-host-anchor.token.mjs +0 -9
  651. package/esm2020/popover/common/popover-options.interface.mjs +0 -8
  652. package/esm2020/popover/common/popover.mjs +0 -267
  653. package/esm2020/popover/dropdown/dropdown-item.mjs +0 -105
  654. package/esm2020/popover/dropdown/dropdown-menu.mjs +0 -115
  655. package/esm2020/popover/dropdown/dropdown-trigger.mjs +0 -51
  656. package/esm2020/popover/dropdown/dropdown.mjs +0 -53
  657. package/esm2020/popover/dropdown/dropdown.module.mjs +0 -30
  658. package/esm2020/popover/dropdown/index.mjs +0 -13
  659. package/esm2020/popover/dropdown/menu-positions.mjs +0 -17
  660. package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +0 -186
  661. package/esm2020/popover/dropdown/providers/dropdown.service.mjs +0 -34
  662. package/esm2020/popover/index.mjs +0 -11
  663. package/esm2020/popover/popover.module.mjs +0 -23
  664. package/esm2020/popover/signpost/index.mjs +0 -12
  665. package/esm2020/popover/signpost/providers/signpost-focus-manager.service.mjs +0 -24
  666. package/esm2020/popover/signpost/providers/signpost-id.service.mjs +0 -26
  667. package/esm2020/popover/signpost/signpost-content.mjs +0 -179
  668. package/esm2020/popover/signpost/signpost-positions.mjs +0 -23
  669. package/esm2020/popover/signpost/signpost-title.mjs +0 -21
  670. package/esm2020/popover/signpost/signpost-trigger.mjs +0 -90
  671. package/esm2020/popover/signpost/signpost.mjs +0 -94
  672. package/esm2020/popover/signpost/signpost.module.mjs +0 -46
  673. package/esm2020/popover/tooltip/index.mjs +0 -11
  674. package/esm2020/popover/tooltip/providers/tooltip-id.service.mjs +0 -26
  675. package/esm2020/popover/tooltip/providers/tooltip-mouse.service.mjs +0 -44
  676. package/esm2020/popover/tooltip/tooltip-content.mjs +0 -135
  677. package/esm2020/popover/tooltip/tooltip-trigger.mjs +0 -62
  678. package/esm2020/popover/tooltip/tooltip.mjs +0 -29
  679. package/esm2020/popover/tooltip/tooltip.module.mjs +0 -29
  680. package/esm2020/progress/progress-bars/index.mjs +0 -9
  681. package/esm2020/progress/progress-bars/progress-bar.mjs +0 -177
  682. package/esm2020/progress/progress-bars/progress-bar.module.mjs +0 -25
  683. package/esm2020/progress/spinner/index.mjs +0 -9
  684. package/esm2020/progress/spinner/spinner.mjs +0 -95
  685. package/esm2020/progress/spinner/spinner.module.mjs +0 -25
  686. package/esm2020/timeline/enums/timeline-layout.enum.mjs +0 -12
  687. package/esm2020/timeline/enums/timeline-step-state.enum.mjs +0 -15
  688. package/esm2020/timeline/index.mjs +0 -15
  689. package/esm2020/timeline/interface/icon-attribute.interface.mjs +0 -8
  690. package/esm2020/timeline/providers/timeline-icon-attribute.service.mjs +0 -55
  691. package/esm2020/timeline/timeline-step-description.mjs +0 -21
  692. package/esm2020/timeline/timeline-step-header.mjs +0 -21
  693. package/esm2020/timeline/timeline-step-title.mjs +0 -31
  694. package/esm2020/timeline/timeline-step.mjs +0 -97
  695. package/esm2020/timeline/timeline.mjs +0 -36
  696. package/esm2020/timeline/timeline.module.mjs +0 -49
  697. package/esm2020/utils/animations/collapse/collapse.mjs +0 -17
  698. package/esm2020/utils/animations/collapse/index.mjs +0 -8
  699. package/esm2020/utils/animations/constants.mjs +0 -14
  700. package/esm2020/utils/animations/expandable-animation/base-expandable-animation.mjs +0 -46
  701. package/esm2020/utils/animations/expandable-animation/expandable-animation.directive.mjs +0 -56
  702. package/esm2020/utils/animations/expandable-animation/expandable-animation.mjs +0 -49
  703. package/esm2020/utils/animations/expandable-animation/expandable-animation.module.mjs +0 -26
  704. package/esm2020/utils/animations/expandable-animation/index.mjs +0 -12
  705. package/esm2020/utils/animations/fade/fade.mjs +0 -15
  706. package/esm2020/utils/animations/fade/index.mjs +0 -8
  707. package/esm2020/utils/animations/fade-slide/fade-slide.mjs +0 -31
  708. package/esm2020/utils/animations/fade-slide/index.mjs +0 -8
  709. package/esm2020/utils/animations/index.mjs +0 -12
  710. package/esm2020/utils/animations/slide/index.mjs +0 -8
  711. package/esm2020/utils/animations/slide/slide.mjs +0 -31
  712. package/esm2020/utils/assert/assert.helpers.mjs +0 -10
  713. package/esm2020/utils/breakpoints/breakpoints.mjs +0 -24
  714. package/esm2020/utils/cdk/cdk-drag.module.mjs +0 -58
  715. package/esm2020/utils/cdk/cdk-trap-focus.module.mjs +0 -53
  716. package/esm2020/utils/chocolate/oompa-loompa.mjs +0 -33
  717. package/esm2020/utils/chocolate/willy-wonka.mjs +0 -37
  718. package/esm2020/utils/component/is-boolean-attribute-set.mjs +0 -19
  719. package/esm2020/utils/conditional/conditional.module.mjs +0 -27
  720. package/esm2020/utils/conditional/if-active.directive.mjs +0 -98
  721. package/esm2020/utils/conditional/if-active.service.mjs +0 -71
  722. package/esm2020/utils/conditional/if-expanded.directive.mjs +0 -96
  723. package/esm2020/utils/conditional/if-expanded.service.mjs +0 -60
  724. package/esm2020/utils/conditional/if-open.directive.mjs +0 -81
  725. package/esm2020/utils/conditional/index.mjs +0 -11
  726. package/esm2020/utils/destroy/destroy.service.mjs +0 -45
  727. package/esm2020/utils/destroy/index.mjs +0 -8
  728. package/esm2020/utils/dom-adapter/dom-adapter.mjs +0 -62
  729. package/esm2020/utils/enums/keys.enum.mjs +0 -33
  730. package/esm2020/utils/focus/arrow-key-direction.enum.mjs +0 -14
  731. package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.mjs +0 -90
  732. package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.module.mjs +0 -27
  733. package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.provider.mjs +0 -15
  734. package/esm2020/utils/focus/focus-on-view-init/index.mjs +0 -10
  735. package/esm2020/utils/focus/focus-trap/index.mjs +0 -8
  736. package/esm2020/utils/focus/focus-trap/standalone-cdk-trap-focus.directive.mjs +0 -35
  737. package/esm2020/utils/focus/focus.service.mjs +0 -95
  738. package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +0 -55
  739. package/esm2020/utils/focus/focusable-item/custom-focusable-item-provider.mjs +0 -17
  740. package/esm2020/utils/focus/focusable-item/focusable-item.mjs +0 -9
  741. package/esm2020/utils/focus/focusable-item/linkers.mjs +0 -35
  742. package/esm2020/utils/focus/key-focus/enums/focus-direction.enum.mjs +0 -13
  743. package/esm2020/utils/focus/key-focus/index.mjs +0 -9
  744. package/esm2020/utils/focus/key-focus/interfaces.mjs +0 -8
  745. package/esm2020/utils/focus/key-focus/key-focus-item.mjs +0 -35
  746. package/esm2020/utils/focus/key-focus/key-focus.mjs +0 -199
  747. package/esm2020/utils/focus/key-focus/key-focus.module.mjs +0 -27
  748. package/esm2020/utils/focus/key-focus/roving-tabindex.mjs +0 -103
  749. package/esm2020/utils/focus/key-focus/util.mjs +0 -45
  750. package/esm2020/utils/focus/wrap-observable.mjs +0 -20
  751. package/esm2020/utils/forms/validation.mjs +0 -21
  752. package/esm2020/utils/host-wrapping/empty-anchor.mjs +0 -19
  753. package/esm2020/utils/host-wrapping/host-wrapper.mjs +0 -42
  754. package/esm2020/utils/host-wrapping/host-wrapping.module.mjs +0 -25
  755. package/esm2020/utils/i18n/common-strings.default.mjs +0 -137
  756. package/esm2020/utils/i18n/common-strings.interface.mjs +0 -8
  757. package/esm2020/utils/i18n/common-strings.service.mjs +0 -48
  758. package/esm2020/utils/i18n/index.mjs +0 -10
  759. package/esm2020/utils/id-generator/id-generator.service.mjs +0 -11
  760. package/esm2020/utils/index.mjs +0 -15
  761. package/esm2020/utils/loading/index.mjs +0 -10
  762. package/esm2020/utils/loading/loading-listener.mjs +0 -13
  763. package/esm2020/utils/loading/loading.mjs +0 -58
  764. package/esm2020/utils/loading/loading.module.mjs +0 -25
  765. package/esm2020/utils/outside-click/index.mjs +0 -10
  766. package/esm2020/utils/outside-click/outside-click.mjs +0 -49
  767. package/esm2020/utils/outside-click/outside-click.module.mjs +0 -25
  768. package/esm2020/utils/popover/enums/alignment.enum.mjs +0 -13
  769. package/esm2020/utils/popover/enums/axis.enum.mjs +0 -12
  770. package/esm2020/utils/popover/enums/positions.enum.mjs +0 -60
  771. package/esm2020/utils/popover/enums/side.enum.mjs +0 -12
  772. package/esm2020/utils/popover/enums/viewport-violation.enum.mjs +0 -14
  773. package/esm2020/utils/popover/index.mjs +0 -21
  774. package/esm2020/utils/popover/interfaces/popover-content-offset.interface.mjs +0 -8
  775. package/esm2020/utils/popover/interfaces/popover-position.interface.mjs +0 -8
  776. package/esm2020/utils/popover/interfaces/visibility-coords.interface.mjs +0 -8
  777. package/esm2020/utils/popover/popover-anchor.mjs +0 -26
  778. package/esm2020/utils/popover/popover-close-button.mjs +0 -52
  779. package/esm2020/utils/popover/popover-content.mjs +0 -161
  780. package/esm2020/utils/popover/popover-host.directive.mjs +0 -37
  781. package/esm2020/utils/popover/popover-open-close-button.mjs +0 -43
  782. package/esm2020/utils/popover/popover.module.mjs +0 -26
  783. package/esm2020/utils/popover/position-operators.mjs +0 -180
  784. package/esm2020/utils/popover/providers/popover-events.service.mjs +0 -142
  785. package/esm2020/utils/popover/providers/popover-position.service.mjs +0 -230
  786. package/esm2020/utils/popover/providers/popover-toggle.service.mjs +0 -75
  787. package/esm2020/utils/popover/stop-escape-propagation.directive.mjs +0 -43
  788. package/esm2020/utils/scrolling/scrolling-service.mjs +0 -31
  789. package/esm2020/utils/template-ref/index.mjs +0 -10
  790. package/esm2020/utils/template-ref/template-ref-container.mjs +0 -30
  791. package/esm2020/utils/template-ref/template-ref.module.mjs +0 -25
  792. package/esm2020/wizard/heading-level.mjs +0 -8
  793. package/esm2020/wizard/index.mjs +0 -20
  794. package/esm2020/wizard/providers/button-hub.service.mjs +0 -64
  795. package/esm2020/wizard/providers/header-actions.service.mjs +0 -36
  796. package/esm2020/wizard/providers/page-collection.service.mjs +0 -360
  797. package/esm2020/wizard/providers/wizard-navigation.service.mjs +0 -575
  798. package/esm2020/wizard/wizard-button.mjs +0 -188
  799. package/esm2020/wizard/wizard-header-action.mjs +0 -77
  800. package/esm2020/wizard/wizard-page-buttons.mjs +0 -22
  801. package/esm2020/wizard/wizard-page-header-actions.mjs +0 -22
  802. package/esm2020/wizard/wizard-page-navtitle.mjs +0 -22
  803. package/esm2020/wizard/wizard-page-title.mjs +0 -25
  804. package/esm2020/wizard/wizard-page.mjs +0 -652
  805. package/esm2020/wizard/wizard-stepnav-item.mjs +0 -204
  806. package/esm2020/wizard/wizard-stepnav.mjs +0 -55
  807. package/esm2020/wizard/wizard-title.mjs +0 -22
  808. package/esm2020/wizard/wizard.mjs +0 -525
  809. package/esm2020/wizard/wizard.module.mjs +0 -73
  810. package/fesm2015/clr-angular.mjs +0 -31490
  811. package/fesm2015/clr-angular.mjs.map +0 -1
  812. package/fesm2020/clr-angular.mjs +0 -31306
  813. package/fesm2020/clr-angular.mjs.map +0 -1
  814. package/forms/checkbox/checkbox-container.d.ts +0 -25
  815. package/forms/checkbox/checkbox-wrapper.d.ts +0 -22
  816. package/forms/checkbox/checkbox.d.ts +0 -20
  817. package/forms/checkbox/checkbox.module.d.ts +0 -14
  818. package/forms/checkbox/index.d.ts +0 -4
  819. package/forms/combobox/combobox-container.d.ts +0 -18
  820. package/forms/combobox/combobox.d.ts +0 -87
  821. package/forms/combobox/combobox.module.d.ts +0 -22
  822. package/forms/combobox/index.d.ts +0 -8
  823. package/forms/combobox/model/combobox.model.d.ts +0 -9
  824. package/forms/combobox/model/multi-select-combobox.model.d.ts +0 -12
  825. package/forms/combobox/model/pseudo-focus.model.d.ts +0 -7
  826. package/forms/combobox/model/single-select-combobox.model.d.ts +0 -10
  827. package/forms/combobox/option-group.d.ts +0 -9
  828. package/forms/combobox/option-items.directive.d.ts +0 -28
  829. package/forms/combobox/option-selected.directive.d.ts +0 -13
  830. package/forms/combobox/option.d.ts +0 -25
  831. package/forms/combobox/options.d.ts +0 -36
  832. package/forms/combobox/providers/combobox-container.service.d.ts +0 -7
  833. package/forms/combobox/providers/combobox-focus-handler.service.d.ts +0 -48
  834. package/forms/combobox/providers/option-selection.service.d.ts +0 -24
  835. package/forms/common/abstract-container.d.ts +0 -47
  836. package/forms/common/abstract-control.d.ts +0 -18
  837. package/forms/common/common.module.d.ts +0 -19
  838. package/forms/common/control-container.d.ts +0 -6
  839. package/forms/common/control.d.ts +0 -11
  840. package/forms/common/error.d.ts +0 -12
  841. package/forms/common/form.d.ts +0 -16
  842. package/forms/common/helper.d.ts +0 -12
  843. package/forms/common/if-control-state/abstract-if-state.d.ts +0 -18
  844. package/forms/common/if-control-state/if-control-state.service.d.ts +0 -17
  845. package/forms/common/if-control-state/if-error.d.ts +0 -19
  846. package/forms/common/if-control-state/if-success.d.ts +0 -16
  847. package/forms/common/index.d.ts +0 -14
  848. package/forms/common/label.d.ts +0 -32
  849. package/forms/common/layout.d.ts +0 -11
  850. package/forms/common/providers/container-id.service.d.ts +0 -18
  851. package/forms/common/providers/control-class.service.d.ts +0 -13
  852. package/forms/common/providers/control-id.service.d.ts +0 -11
  853. package/forms/common/providers/focus.service.d.ts +0 -9
  854. package/forms/common/providers/layout.service.d.ts +0 -23
  855. package/forms/common/providers/mark-control.service.d.ts +0 -9
  856. package/forms/common/providers/ng-control.service.d.ts +0 -27
  857. package/forms/common/success.d.ts +0 -12
  858. package/forms/common/wrapped-control.d.ts +0 -46
  859. package/forms/datalist/datalist-container.d.ts +0 -14
  860. package/forms/datalist/datalist-input.d.ts +0 -18
  861. package/forms/datalist/datalist.d.ts +0 -14
  862. package/forms/datalist/datalist.module.d.ts +0 -13
  863. package/forms/datalist/index.d.ts +0 -4
  864. package/forms/datalist/providers/datalist-id.service.d.ts +0 -11
  865. package/forms/datepicker/calendar.d.ts +0 -65
  866. package/forms/datepicker/date-container.d.ts +0 -72
  867. package/forms/datepicker/date-end-input.d.ts +0 -15
  868. package/forms/datepicker/date-input.d.ts +0 -67
  869. package/forms/datepicker/date-input.validator.d.ts +0 -27
  870. package/forms/datepicker/date-single-input.d.ts +0 -15
  871. package/forms/datepicker/date-start-input.d.ts +0 -15
  872. package/forms/datepicker/datepicker-action-buttons.d.ts +0 -16
  873. package/forms/datepicker/datepicker-view-manager.d.ts +0 -30
  874. package/forms/datepicker/datepicker.module.d.ts +0 -29
  875. package/forms/datepicker/day.d.ts +0 -40
  876. package/forms/datepicker/daypicker.d.ts +0 -44
  877. package/forms/datepicker/index.d.ts +0 -14
  878. package/forms/datepicker/interfaces/date-range.interface.d.ts +0 -13
  879. package/forms/datepicker/interfaces/day-of-week.interface.d.ts +0 -4
  880. package/forms/datepicker/model/calendar-view.model.d.ts +0 -74
  881. package/forms/datepicker/model/calendar.model.d.ts +0 -35
  882. package/forms/datepicker/model/day-view.model.d.ts +0 -16
  883. package/forms/datepicker/model/day.model.d.ts +0 -30
  884. package/forms/datepicker/model/year-range.model.d.ts +0 -34
  885. package/forms/datepicker/monthpicker.d.ts +0 -87
  886. package/forms/datepicker/providers/date-form-control.service.d.ts +0 -14
  887. package/forms/datepicker/providers/date-io.service.d.ts +0 -39
  888. package/forms/datepicker/providers/date-navigation.service.d.ts +0 -94
  889. package/forms/datepicker/providers/datepicker-enabled.service.d.ts +0 -15
  890. package/forms/datepicker/providers/datepicker-focus.service.d.ts +0 -16
  891. package/forms/datepicker/providers/locale-helper.service.d.ts +0 -46
  892. package/forms/datepicker/providers/view-manager.service.d.ts +0 -17
  893. package/forms/datepicker/utils/constants.d.ts +0 -24
  894. package/forms/datepicker/utils/date-utils.d.ts +0 -16
  895. package/forms/datepicker/yearpicker.d.ts +0 -78
  896. package/forms/file-input/file-input-container.d.ts +0 -27
  897. package/forms/file-input/file-input-validator-errors.d.ts +0 -52
  898. package/forms/file-input/file-input-validator.d.ts +0 -12
  899. package/forms/file-input/file-input-value-accessor.d.ts +0 -15
  900. package/forms/file-input/file-input.d.ts +0 -23
  901. package/forms/file-input/file-input.helpers.d.ts +0 -3
  902. package/forms/file-input/file-input.module.d.ts +0 -17
  903. package/forms/file-input/file-list.d.ts +0 -18
  904. package/forms/file-input/file-messages-template.d.ts +0 -19
  905. package/forms/file-input/file-messages.d.ts +0 -17
  906. package/forms/file-input/index.d.ts +0 -9
  907. package/forms/forms.module.d.ts +0 -20
  908. package/forms/index.d.ts +0 -14
  909. package/forms/input/index.d.ts +0 -3
  910. package/forms/input/input-container.d.ts +0 -6
  911. package/forms/input/input.d.ts +0 -11
  912. package/forms/input/input.module.d.ts +0 -13
  913. package/forms/number-input/index.d.ts +0 -3
  914. package/forms/number-input/number-input-container.d.ts +0 -17
  915. package/forms/number-input/number-input.d.ts +0 -22
  916. package/forms/number-input/number-input.module.d.ts +0 -13
  917. package/forms/password/index.d.ts +0 -3
  918. package/forms/password/password-container.d.ts +0 -32
  919. package/forms/password/password.d.ts +0 -16
  920. package/forms/password/password.module.d.ts +0 -13
  921. package/forms/radio/index.d.ts +0 -4
  922. package/forms/radio/radio-container.d.ts +0 -28
  923. package/forms/radio/radio-wrapper.d.ts +0 -9
  924. package/forms/radio/radio.d.ts +0 -10
  925. package/forms/radio/radio.module.d.ts +0 -14
  926. package/forms/range/index.d.ts +0 -3
  927. package/forms/range/range-container.d.ts +0 -22
  928. package/forms/range/range.d.ts +0 -10
  929. package/forms/range/range.module.d.ts +0 -13
  930. package/forms/select/index.d.ts +0 -3
  931. package/forms/select/select-container.d.ts +0 -20
  932. package/forms/select/select.d.ts +0 -11
  933. package/forms/select/select.module.d.ts +0 -13
  934. package/forms/textarea/index.d.ts +0 -3
  935. package/forms/textarea/textarea-container.d.ts +0 -6
  936. package/forms/textarea/textarea.d.ts +0 -11
  937. package/forms/textarea/textarea.module.d.ts +0 -13
  938. package/icon/icon.d.ts +0 -9
  939. package/icon/icon.module.d.ts +0 -10
  940. package/icon/index.d.ts +0 -2
  941. package/index.d.ts +0 -16
  942. package/layout/breadcrumbs/breadcrumb-item.d.ts +0 -5
  943. package/layout/breadcrumbs/breadcrumbs.constants.d.ts +0 -1
  944. package/layout/breadcrumbs/breadcrumbs.d.ts +0 -17
  945. package/layout/breadcrumbs/breadcrumbs.module.d.ts +0 -12
  946. package/layout/breadcrumbs/index.d.ts +0 -4
  947. package/layout/breadcrumbs/model/breadcrumbs.model.d.ts +0 -9
  948. package/layout/index.d.ts +0 -6
  949. package/layout/layout.module.d.ts +0 -11
  950. package/layout/main-container/index.d.ts +0 -2
  951. package/layout/main-container/main-container.d.ts +0 -17
  952. package/layout/main-container/main-container.module.d.ts +0 -11
  953. package/layout/nav/aria-current-link.d.ts +0 -13
  954. package/layout/nav/chocolate/index.d.ts +0 -2
  955. package/layout/nav/chocolate/main-container-willy-wonka.d.ts +0 -6
  956. package/layout/nav/chocolate/nav-detection-oompa-loompa.d.ts +0 -12
  957. package/layout/nav/header.d.ts +0 -31
  958. package/layout/nav/index.d.ts +0 -5
  959. package/layout/nav/nav-level.d.ts +0 -35
  960. package/layout/nav/navigation.module.d.ts +0 -16
  961. package/layout/nav/providers/responsive-navigation.service.d.ts +0 -18
  962. package/layout/nav/responsive-nav-codes.d.ts +0 -14
  963. package/layout/nav/responsive-nav-control-message.d.ts +0 -7
  964. package/layout/tabs/chocolate/active-oompa-loompa.d.ts +0 -13
  965. package/layout/tabs/chocolate/tabs-willy-wonka.d.ts +0 -6
  966. package/layout/tabs/enums/tabs-layout.enum.d.ts +0 -4
  967. package/layout/tabs/index.d.ts +0 -11
  968. package/layout/tabs/providers/tabs.service.d.ts +0 -16
  969. package/layout/tabs/tab-action.directive.d.ts +0 -5
  970. package/layout/tabs/tab-content.d.ts +0 -18
  971. package/layout/tabs/tab-link.directive.d.ts +0 -25
  972. package/layout/tabs/tab-overflow-content.d.ts +0 -5
  973. package/layout/tabs/tab.d.ts +0 -17
  974. package/layout/tabs/tabs-actions.d.ts +0 -7
  975. package/layout/tabs/tabs-id.provider.d.ts +0 -7
  976. package/layout/tabs/tabs.d.ts +0 -50
  977. package/layout/tabs/tabs.module.d.ts +0 -23
  978. package/layout/vertical-nav/index.d.ts +0 -6
  979. package/layout/vertical-nav/providers/vertical-nav-group-registration.service.d.ts +0 -8
  980. package/layout/vertical-nav/providers/vertical-nav-group.service.d.ts +0 -9
  981. package/layout/vertical-nav/providers/vertical-nav-icon.service.d.ts +0 -9
  982. package/layout/vertical-nav/providers/vertical-nav.service.d.ts +0 -17
  983. package/layout/vertical-nav/vertical-nav-group-children.d.ts +0 -5
  984. package/layout/vertical-nav/vertical-nav-group.d.ts +0 -32
  985. package/layout/vertical-nav/vertical-nav-icon.d.ts +0 -10
  986. package/layout/vertical-nav/vertical-nav-link.d.ts +0 -10
  987. package/layout/vertical-nav/vertical-nav.d.ts +0 -28
  988. package/layout/vertical-nav/vertical-nav.module.d.ts +0 -18
  989. package/modal/index.d.ts +0 -7
  990. package/modal/modal-body.d.ts +0 -22
  991. package/modal/modal-configuration.service.d.ts +0 -7
  992. package/modal/modal-host.component.d.ts +0 -5
  993. package/modal/modal-stack.service.d.ts +0 -15
  994. package/modal/modal.d.ts +0 -43
  995. package/modal/modal.module.d.ts +0 -15
  996. package/modal/side-panel.d.ts +0 -53
  997. package/modal/side-panel.module.d.ts +0 -13
  998. package/popover/common/abstract-popover.d.ts +0 -35
  999. package/popover/common/popover-host-anchor.token.d.ts +0 -2
  1000. package/popover/common/popover-options.interface.d.ts +0 -7
  1001. package/popover/common/popover.d.ts +0 -30
  1002. package/popover/dropdown/dropdown-item.d.ts +0 -27
  1003. package/popover/dropdown/dropdown-menu.d.ts +0 -15
  1004. package/popover/dropdown/dropdown-trigger.d.ts +0 -16
  1005. package/popover/dropdown/dropdown.d.ts +0 -17
  1006. package/popover/dropdown/dropdown.module.d.ts +0 -15
  1007. package/popover/dropdown/index.d.ts +0 -6
  1008. package/popover/dropdown/menu-positions.d.ts +0 -1
  1009. package/popover/dropdown/providers/dropdown-focus-handler.service.d.ts +0 -49
  1010. package/popover/dropdown/providers/dropdown.service.d.ts +0 -16
  1011. package/popover/index.d.ts +0 -4
  1012. package/popover/popover.module.d.ts +0 -9
  1013. package/popover/signpost/index.d.ts +0 -5
  1014. package/popover/signpost/providers/signpost-focus-manager.service.d.ts +0 -8
  1015. package/popover/signpost/providers/signpost-id.service.d.ts +0 -9
  1016. package/popover/signpost/signpost-content.d.ts +0 -57
  1017. package/popover/signpost/signpost-positions.d.ts +0 -10
  1018. package/popover/signpost/signpost-title.d.ts +0 -5
  1019. package/popover/signpost/signpost-trigger.d.ts +0 -29
  1020. package/popover/signpost/signpost.d.ts +0 -27
  1021. package/popover/signpost/signpost.module.d.ts +0 -17
  1022. package/popover/tooltip/index.d.ts +0 -4
  1023. package/popover/tooltip/providers/tooltip-id.service.d.ts +0 -9
  1024. package/popover/tooltip/providers/tooltip-mouse.service.d.ts +0 -15
  1025. package/popover/tooltip/tooltip-content.d.ts +0 -25
  1026. package/popover/tooltip/tooltip-trigger.d.ts +0 -18
  1027. package/popover/tooltip/tooltip.d.ts +0 -6
  1028. package/popover/tooltip/tooltip.module.d.ts +0 -14
  1029. package/progress/progress-bars/index.d.ts +0 -2
  1030. package/progress/progress-bars/progress-bar.module.d.ts +0 -10
  1031. package/progress/spinner/index.d.ts +0 -2
  1032. package/progress/spinner/spinner.module.d.ts +0 -10
  1033. package/src/utils/popover/README.md +0 -139
  1034. package/timeline/enums/timeline-layout.enum.d.ts +0 -4
  1035. package/timeline/enums/timeline-step-state.enum.d.ts +0 -7
  1036. package/timeline/index.d.ts +0 -8
  1037. package/timeline/interface/icon-attribute.interface.d.ts +0 -6
  1038. package/timeline/providers/timeline-icon-attribute.service.d.ts +0 -12
  1039. package/timeline/timeline-step-description.d.ts +0 -5
  1040. package/timeline/timeline-step-header.d.ts +0 -5
  1041. package/timeline/timeline-step-title.d.ts +0 -15
  1042. package/timeline/timeline-step.d.ts +0 -19
  1043. package/timeline/timeline.d.ts +0 -8
  1044. package/timeline/timeline.module.d.ts +0 -15
  1045. package/utils/animations/collapse/collapse.d.ts +0 -2
  1046. package/utils/animations/collapse/index.d.ts +0 -1
  1047. package/utils/animations/constants.d.ts +0 -2
  1048. package/utils/animations/expandable-animation/base-expandable-animation.d.ts +0 -16
  1049. package/utils/animations/expandable-animation/expandable-animation.d.ts +0 -16
  1050. package/utils/animations/expandable-animation/expandable-animation.directive.d.ts +0 -16
  1051. package/utils/animations/expandable-animation/expandable-animation.module.d.ts +0 -9
  1052. package/utils/animations/expandable-animation/index.d.ts +0 -4
  1053. package/utils/animations/fade/fade.d.ts +0 -2
  1054. package/utils/animations/fade/index.d.ts +0 -1
  1055. package/utils/animations/fade-slide/fade-slide.d.ts +0 -2
  1056. package/utils/animations/fade-slide/index.d.ts +0 -1
  1057. package/utils/animations/index.d.ts +0 -5
  1058. package/utils/animations/slide/index.d.ts +0 -1
  1059. package/utils/animations/slide/slide.d.ts +0 -2
  1060. package/utils/assert/assert.helpers.d.ts +0 -1
  1061. package/utils/breakpoints/breakpoints.d.ts +0 -15
  1062. package/utils/cdk/cdk-drag.module.d.ts +0 -25
  1063. package/utils/cdk/cdk-trap-focus.module.d.ts +0 -24
  1064. package/utils/chocolate/oompa-loompa.d.ts +0 -13
  1065. package/utils/chocolate/willy-wonka.d.ts +0 -11
  1066. package/utils/component/is-boolean-attribute-set.d.ts +0 -1
  1067. package/utils/conditional/conditional.module.d.ts +0 -12
  1068. package/utils/conditional/if-active.directive.d.ts +0 -38
  1069. package/utils/conditional/if-active.service.d.ts +0 -45
  1070. package/utils/conditional/if-expanded.directive.d.ts +0 -24
  1071. package/utils/conditional/if-expanded.service.d.ts +0 -20
  1072. package/utils/conditional/if-open.directive.d.ts +0 -36
  1073. package/utils/conditional/index.d.ts +0 -4
  1074. package/utils/destroy/destroy.service.d.ts +0 -32
  1075. package/utils/destroy/index.d.ts +0 -1
  1076. package/utils/dom-adapter/dom-adapter.d.ts +0 -12
  1077. package/utils/enums/keys.enum.d.ts +0 -24
  1078. package/utils/focus/arrow-key-direction.enum.d.ts +0 -6
  1079. package/utils/focus/focus-on-view-init/focus-on-view-init.d.ts +0 -19
  1080. package/utils/focus/focus-on-view-init/focus-on-view-init.module.d.ts +0 -10
  1081. package/utils/focus/focus-on-view-init/focus-on-view-init.provider.d.ts +0 -6
  1082. package/utils/focus/focus-on-view-init/index.d.ts +0 -3
  1083. package/utils/focus/focus-trap/index.d.ts +0 -1
  1084. package/utils/focus/focus-trap/standalone-cdk-trap-focus.directive.d.ts +0 -13
  1085. package/utils/focus/focus.service.d.ts +0 -26
  1086. package/utils/focus/focusable-item/basic-focusable-item.service.d.ts +0 -20
  1087. package/utils/focus/focusable-item/custom-focusable-item-provider.d.ts +0 -6
  1088. package/utils/focus/focusable-item/focusable-item.d.ts +0 -12
  1089. package/utils/focus/focusable-item/linkers.d.ts +0 -13
  1090. package/utils/focus/key-focus/enums/focus-direction.enum.d.ts +0 -5
  1091. package/utils/focus/key-focus/index.d.ts +0 -2
  1092. package/utils/focus/key-focus/interfaces.d.ts +0 -5
  1093. package/utils/focus/key-focus/key-focus-item.d.ts +0 -11
  1094. package/utils/focus/key-focus/key-focus.d.ts +0 -44
  1095. package/utils/focus/key-focus/key-focus.module.d.ts +0 -10
  1096. package/utils/focus/key-focus/roving-tabindex.d.ts +0 -19
  1097. package/utils/focus/key-focus/util.d.ts +0 -3
  1098. package/utils/focus/wrap-observable.d.ts +0 -2
  1099. package/utils/forms/validation.d.ts +0 -2
  1100. package/utils/host-wrapping/empty-anchor.d.ts +0 -5
  1101. package/utils/host-wrapping/host-wrapper.d.ts +0 -11
  1102. package/utils/host-wrapping/host-wrapping.module.d.ts +0 -10
  1103. package/utils/i18n/common-strings.default.d.ts +0 -2
  1104. package/utils/i18n/common-strings.interface.d.ts +0 -309
  1105. package/utils/i18n/common-strings.service.d.ts +0 -21
  1106. package/utils/i18n/index.d.ts +0 -3
  1107. package/utils/id-generator/id-generator.service.d.ts +0 -1
  1108. package/utils/index.d.ts +0 -8
  1109. package/utils/loading/index.d.ts +0 -3
  1110. package/utils/loading/loading-listener.d.ts +0 -8
  1111. package/utils/loading/loading.d.ts +0 -20
  1112. package/utils/loading/loading.module.d.ts +0 -10
  1113. package/utils/outside-click/index.d.ts +0 -3
  1114. package/utils/outside-click/outside-click.d.ts +0 -11
  1115. package/utils/outside-click/outside-click.module.d.ts +0 -8
  1116. package/utils/popover/enums/alignment.enum.d.ts +0 -5
  1117. package/utils/popover/enums/axis.enum.d.ts +0 -4
  1118. package/utils/popover/enums/positions.enum.d.ts +0 -23
  1119. package/utils/popover/enums/side.enum.d.ts +0 -4
  1120. package/utils/popover/enums/viewport-violation.enum.d.ts +0 -6
  1121. package/utils/popover/index.d.ts +0 -14
  1122. package/utils/popover/interfaces/popover-content-offset.interface.d.ts +0 -4
  1123. package/utils/popover/interfaces/popover-position.interface.d.ts +0 -16
  1124. package/utils/popover/interfaces/visibility-coords.interface.d.ts +0 -6
  1125. package/utils/popover/popover-anchor.d.ts +0 -8
  1126. package/utils/popover/popover-close-button.d.ts +0 -17
  1127. package/utils/popover/popover-content.d.ts +0 -42
  1128. package/utils/popover/popover-host.directive.d.ts +0 -6
  1129. package/utils/popover/popover-open-close-button.d.ts +0 -13
  1130. package/utils/popover/popover.module.d.ts +0 -10
  1131. package/utils/popover/position-operators.d.ts +0 -10
  1132. package/utils/popover/providers/popover-events.service.d.ts +0 -34
  1133. package/utils/popover/providers/popover-position.service.d.ts +0 -24
  1134. package/utils/popover/providers/popover-toggle.service.d.ts +0 -28
  1135. package/utils/popover/stop-escape-propagation.directive.d.ts +0 -14
  1136. package/utils/scrolling/scrolling-service.d.ts +0 -9
  1137. package/utils/template-ref/index.d.ts +0 -3
  1138. package/utils/template-ref/template-ref-container.d.ts +0 -7
  1139. package/utils/template-ref/template-ref.module.d.ts +0 -8
  1140. package/wizard/heading-level.d.ts +0 -1
  1141. package/wizard/index.d.ts +0 -13
  1142. package/wizard/providers/button-hub.service.d.ts +0 -20
  1143. package/wizard/providers/header-actions.service.d.ts +0 -15
  1144. package/wizard/providers/page-collection.service.d.ts +0 -196
  1145. package/wizard/providers/wizard-navigation.service.d.ts +0 -366
  1146. package/wizard/wizard-button.d.ts +0 -28
  1147. package/wizard/wizard-header-action.d.ts +0 -12
  1148. package/wizard/wizard-page-buttons.d.ts +0 -8
  1149. package/wizard/wizard-page-header-actions.d.ts +0 -8
  1150. package/wizard/wizard-page-navtitle.d.ts +0 -8
  1151. package/wizard/wizard-page-title.d.ts +0 -10
  1152. package/wizard/wizard-page.d.ts +0 -494
  1153. package/wizard/wizard-stepnav-item.d.ts +0 -42
  1154. package/wizard/wizard-stepnav.d.ts +0 -9
  1155. package/wizard/wizard-title.d.ts +0 -7
  1156. package/wizard/wizard.d.ts +0 -256
  1157. package/wizard/wizard.module.d.ts +0 -22
@@ -1,340 +0,0 @@
1
- /*
2
- * Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
3
- * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
4
- * This software is released under MIT license.
5
- * The full license information can be found in LICENSE in the root directory of this project.
6
- */
7
- import { Directionality } from '@angular/cdk/bidi';
8
- import { coerceNumberProperty } from '@angular/cdk/coercion';
9
- import { _RecycleViewRepeaterStrategy, _VIEW_REPEATER_STRATEGY } from '@angular/cdk/collections';
10
- import { CdkVirtualForOf, CdkVirtualScrollable, CdkVirtualScrollViewport, FixedSizeVirtualScrollStrategy, ScrollDispatcher, ViewportRuler, VIRTUAL_SCROLL_STRATEGY, } from '@angular/cdk/scrolling';
11
- import { VERSION as ANGULAR_VERSION, ChangeDetectorRef, Directive, ElementRef, EnvironmentInjector, EventEmitter, forwardRef, Inject, inject, Injector, Input, IterableDiffers, NgZone, Output, Renderer2, TemplateRef, ViewContainerRef, } from '@angular/core';
12
- import { ClrDatagrid } from './datagrid';
13
- import { Items } from './providers/items';
14
- import * as i0 from "@angular/core";
15
- import * as i1 from "./providers/items";
16
- import * as i2 from "@angular/cdk/bidi";
17
- import * as i3 from "@angular/cdk/scrolling";
18
- import * as i4 from "./providers/columns.service";
19
- import * as i5 from "./datagrid";
20
- export class ClrDatagridVirtualScrollDirective {
21
- constructor(changeDetectorRef, iterableDiffers, items, ngZone, renderer2, templateRef, viewContainerRef, directionality, scrollDispatcher, viewportRuler, datagrid, columnsService, injector) {
22
- this.changeDetectorRef = changeDetectorRef;
23
- this.iterableDiffers = iterableDiffers;
24
- this.items = items;
25
- this.ngZone = ngZone;
26
- this.renderer2 = renderer2;
27
- this.templateRef = templateRef;
28
- this.viewContainerRef = viewContainerRef;
29
- this.directionality = directionality;
30
- this.scrollDispatcher = scrollDispatcher;
31
- this.viewportRuler = viewportRuler;
32
- this.datagrid = datagrid;
33
- this.columnsService = columnsService;
34
- this.injector = injector;
35
- this.renderedRangeChange = new EventEmitter();
36
- this.persistItems = true;
37
- this.shouldUpdateAriaRowIndexes = false;
38
- this._isUserProvidedItemSize = false;
39
- this._itemSize = 33;
40
- this._minBufferPx = 200;
41
- this._maxBufferPx = 400;
42
- this.subscriptions = [];
43
- this.topIndex = 0;
44
- // @deprecated remove the mutation observer when `datagrid-compact` class is deleted
45
- this.mutationChanges = new MutationObserver((mutations) => {
46
- mutations.forEach((mutation) => {
47
- // it is possible this to be called twice because the old class is removed and the new added
48
- if (!this._isUserProvidedItemSize &&
49
- mutation.target.classList.contains('datagrid-compact') &&
50
- this.itemSize > 25) {
51
- this.updateItemSize(25);
52
- }
53
- });
54
- });
55
- this.viewRepeater = new _RecycleViewRepeaterStrategy();
56
- this.cdkVirtualForInputs = {
57
- cdkVirtualForTrackBy: index => index,
58
- };
59
- items.smartenUp();
60
- datagrid.detailService.preventFocusScroll = true;
61
- this.datagridElementRef = datagrid.el;
62
- // default
63
- this.cdkVirtualForTemplateCacheSize = 20;
64
- const cellHeightToken = window.getComputedStyle(document.body).getPropertyValue('--clr-table-cell-height');
65
- const cellHeightValue = +/calc\(([0-9]+) \* calc\(\(1rem \/ 20\) \* 1\)\)/.exec(cellHeightToken)?.[1];
66
- const borderWidthToken = window.getComputedStyle(document.body).getPropertyValue('--clr-table-borderwidth');
67
- const borderWidthValue = +/calc\(([0-9]+) \* \(1rem \/ 20\)\)/.exec(borderWidthToken)?.[1];
68
- // initially rowHeightValue is calculated based on `--clr-table-row-height` that had a discreet value.
69
- // currently `--clr-table-row-height` is calculated based on `--clr-table-cell-height` + `--clr-table-borderwidth`
70
- const rowHeightValue = cellHeightValue + borderWidthValue;
71
- if (rowHeightValue && this.itemSize > rowHeightValue) {
72
- this.updateItemSize(rowHeightValue);
73
- }
74
- this.mutationChanges.observe(this.datagridElementRef.nativeElement, {
75
- attributeFilter: ['class'],
76
- attributeOldValue: true,
77
- });
78
- this.virtualScrollStrategy = new FixedSizeVirtualScrollStrategy(this.itemSize, this.minBufferPx, this.maxBufferPx);
79
- }
80
- get totalContentHeight() {
81
- return this.virtualScrollViewport?._totalContentHeight || '';
82
- }
83
- get cdkVirtualForOf() {
84
- return this.cdkVirtualForInputs.cdkVirtualForOf;
85
- }
86
- set cdkVirtualForOf(value) {
87
- this.cdkVirtualForInputs.cdkVirtualForOf = value;
88
- this.items.all = value;
89
- this.updateCdkVirtualForInputs();
90
- }
91
- get cdkVirtualForTrackBy() {
92
- return this.cdkVirtualForInputs.cdkVirtualForTrackBy;
93
- }
94
- set cdkVirtualForTrackBy(value) {
95
- this.cdkVirtualForInputs.cdkVirtualForTrackBy = value;
96
- this.updateCdkVirtualForInputs();
97
- }
98
- get cdkVirtualForTemplate() {
99
- return this?.cdkVirtualForInputs?.cdkVirtualForTemplate;
100
- }
101
- set cdkVirtualForTemplate(value) {
102
- this.cdkVirtualForInputs.cdkVirtualForTemplate = value;
103
- this.updateCdkVirtualForInputs();
104
- }
105
- get cdkVirtualForTemplateCacheSize() {
106
- return this.cdkVirtualForInputs.cdkVirtualForTemplateCacheSize;
107
- }
108
- set cdkVirtualForTemplateCacheSize(value) {
109
- this.cdkVirtualForInputs.cdkVirtualForTemplateCacheSize = coerceNumberProperty(value);
110
- this.updateCdkVirtualForInputs();
111
- }
112
- get itemSize() {
113
- return this._itemSize;
114
- }
115
- set itemSize(value) {
116
- this._isUserProvidedItemSize = true;
117
- this.updateItemSize(value);
118
- }
119
- get minBufferPx() {
120
- return this._minBufferPx;
121
- }
122
- set minBufferPx(value) {
123
- this._minBufferPx = coerceNumberProperty(value);
124
- this.updateFixedSizeVirtualScrollInputs();
125
- }
126
- get maxBufferPx() {
127
- return this._maxBufferPx;
128
- }
129
- set maxBufferPx(value) {
130
- this._maxBufferPx = coerceNumberProperty(value);
131
- this.updateFixedSizeVirtualScrollInputs();
132
- }
133
- set dataRange(range) {
134
- if (!range) {
135
- return;
136
- }
137
- if (this.items.smart) {
138
- this.items.smartenDown();
139
- }
140
- this.totalItems = range.total;
141
- this.updateDataRange(range.skip, range.data);
142
- }
143
- get totalItems() {
144
- return this._totalItems;
145
- }
146
- set totalItems(value) {
147
- this._totalItems = value;
148
- }
149
- ngAfterViewInit() {
150
- this.injector.runInContext(() => {
151
- this.virtualScrollViewport = this.createVirtualScrollViewportForDatagrid(this.changeDetectorRef, this.ngZone, this.renderer2, this.directionality, this.scrollDispatcher, this.viewportRuler, this.datagridElementRef, this.virtualScrollStrategy);
152
- this.cdkVirtualFor = createCdkVirtualForOfDirective(this.viewContainerRef, this.templateRef, this.iterableDiffers, this.viewRepeater, this.virtualScrollViewport, this.ngZone);
153
- this.virtualScrollViewport.ngOnInit();
154
- });
155
- this.gridRoleElement = this.datagridElementRef.nativeElement.querySelector('[role="grid"]');
156
- this.updateCdkVirtualForInputs();
157
- this.subscriptions.push(this.items.change.subscribe(newItems => {
158
- if (this.items.smart) {
159
- this.cdkVirtualFor.cdkVirtualForOf = newItems;
160
- }
161
- this.shouldUpdateAriaRowIndexes = true;
162
- }), this.cdkVirtualFor.dataStream.subscribe(data => {
163
- this.updateAriaRowCount(data.length);
164
- }), this.virtualScrollViewport.scrolledIndexChange.subscribe(index => {
165
- this.topIndex = index;
166
- }), this.virtualScrollViewport.renderedRangeStream.subscribe(renderedRange => {
167
- this.renderedRangeChange.emit(renderedRange);
168
- this.shouldUpdateAriaRowIndexes = true;
169
- }), this.datagrid.refresh.subscribe(datagridState => {
170
- if (datagridState.filters) {
171
- this.scrollToIndex(0);
172
- }
173
- }), this.columnsService.columnsStateChange.subscribe(() => {
174
- this.viewRepeater.detach();
175
- }));
176
- }
177
- ngDoCheck() {
178
- this.cdkVirtualFor?.ngDoCheck();
179
- if (this.shouldUpdateAriaRowIndexes) {
180
- this.updateAriaRowIndexes();
181
- this.shouldUpdateAriaRowIndexes = false;
182
- }
183
- }
184
- ngOnDestroy() {
185
- this.cdkVirtualFor?.ngOnDestroy();
186
- this.virtualScrollViewport?.ngOnDestroy();
187
- this.mutationChanges?.disconnect();
188
- this.subscriptions.forEach(subscription => {
189
- subscription.unsubscribe();
190
- });
191
- }
192
- scrollUp(offset, behavior = 'auto') {
193
- this.scrollToIndex(this.topIndex - offset, behavior);
194
- }
195
- scrollDown(offset, behavior = 'auto') {
196
- this.scrollToIndex(this.topIndex + offset, behavior);
197
- }
198
- scrollToIndex(index, behavior = 'auto') {
199
- this.virtualScrollViewport?.scrollToIndex(index, behavior);
200
- }
201
- updateItemSize(value) {
202
- this._itemSize = coerceNumberProperty(value);
203
- this.updateFixedSizeVirtualScrollInputs();
204
- }
205
- updateDataRange(skip, data) {
206
- let items = this.cdkVirtualForOf;
207
- if (!this.persistItems || !items || items?.length !== this.totalItems) {
208
- items = Array(this.totalItems);
209
- }
210
- items.splice(skip, data.length, ...data);
211
- this.cdkVirtualForOf = Array.from(items);
212
- }
213
- updateCdkVirtualForInputs() {
214
- if (this.cdkVirtualFor) {
215
- for (const cdkVirtualForInputKey of Object.keys(this.cdkVirtualForInputs)) {
216
- if (this.cdkVirtualFor[cdkVirtualForInputKey] !== this.cdkVirtualForInputs[cdkVirtualForInputKey]) {
217
- this.cdkVirtualFor[cdkVirtualForInputKey] = this.cdkVirtualForInputs[cdkVirtualForInputKey];
218
- }
219
- }
220
- }
221
- }
222
- updateFixedSizeVirtualScrollInputs() {
223
- if (this.virtualScrollStrategy) {
224
- this.virtualScrollStrategy.updateItemAndBufferSize(this.itemSize, this.minBufferPx, this.maxBufferPx);
225
- }
226
- }
227
- updateAriaRowCount(rowCount) {
228
- this.gridRoleElement?.setAttribute('aria-rowcount', rowCount.toString());
229
- }
230
- updateAriaRowIndexes() {
231
- for (let i = 0; i < this.viewContainerRef.length; i++) {
232
- const viewRef = this.viewContainerRef.get(i);
233
- const rootElements = viewRef.rootNodes;
234
- const datagridRowElement = rootElements.find(rowElement => rowElement.tagName === 'CLR-DG-ROW');
235
- const rowRoleElement = datagridRowElement?.querySelector('[role="row"]');
236
- const newAriaRowIndex = (viewRef.context.index + 1).toString();
237
- if (rowRoleElement?.getAttribute('aria-rowindex') !== newAriaRowIndex) {
238
- // aria-rowindex should start with one, not zero, so we have to add one to the zero-based index
239
- rowRoleElement?.setAttribute('aria-rowindex', newAriaRowIndex);
240
- }
241
- }
242
- }
243
- createVirtualScrollViewportForDatagrid(changeDetectorRef, ngZone, renderer2, directionality, scrollDispatcher, viewportRuler, datagridElementRef, virtualScrollStrategy) {
244
- const datagridContentElement = datagridElementRef.nativeElement.querySelector('.datagrid-content');
245
- const datagridRowsElement = datagridElementRef.nativeElement.querySelector('.datagrid-rows');
246
- const virtualScrollViewport = createCdkVirtualScrollViewport(new ElementRef(datagridContentElement), new ElementRef(datagridRowsElement), changeDetectorRef, ngZone, renderer2, virtualScrollStrategy, directionality, scrollDispatcher, viewportRuler, null);
247
- return virtualScrollViewport;
248
- }
249
- }
250
- ClrDatagridVirtualScrollDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridVirtualScrollDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.IterableDiffers }, { token: i1.Items }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i2.Directionality }, { token: i3.ScrollDispatcher }, { token: i3.ViewportRuler }, { token: forwardRef(() => ClrDatagrid) }, { token: i4.ColumnsService }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Directive });
251
- ClrDatagridVirtualScrollDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ClrDatagridVirtualScrollDirective, selector: "[clrVirtualScroll],[ClrVirtualScroll]", inputs: { persistItems: ["clrVirtualPersistItems", "persistItems"], cdkVirtualForOf: ["clrVirtualRowsOf", "cdkVirtualForOf"], cdkVirtualForTrackBy: ["clrVirtualRowsTrackBy", "cdkVirtualForTrackBy"], cdkVirtualForTemplate: ["clrVirtualRowsTemplate", "cdkVirtualForTemplate"], cdkVirtualForTemplateCacheSize: ["clrVirtualRowsTemplateCacheSize", "cdkVirtualForTemplateCacheSize"], itemSize: ["clrVirtualRowsItemSize", "itemSize"], minBufferPx: ["clrVirtualRowsMinBufferPx", "minBufferPx"], maxBufferPx: ["clrVirtualRowsMaxBufferPx", "maxBufferPx"], dataRange: ["clrVirtualDataRange", "dataRange"] }, outputs: { renderedRangeChange: "renderedRangeChange" }, providers: [Items], ngImport: i0 });
252
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDatagridVirtualScrollDirective, decorators: [{
253
- type: Directive,
254
- args: [{
255
- selector: '[clrVirtualScroll],[ClrVirtualScroll]',
256
- providers: [Items],
257
- }]
258
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.IterableDiffers }, { type: i1.Items }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i2.Directionality }, { type: i3.ScrollDispatcher }, { type: i3.ViewportRuler }, { type: i5.ClrDatagrid, decorators: [{
259
- type: Inject,
260
- args: [forwardRef(() => ClrDatagrid)]
261
- }] }, { type: i4.ColumnsService }, { type: i0.EnvironmentInjector }]; }, propDecorators: { renderedRangeChange: [{
262
- type: Output
263
- }], persistItems: [{
264
- type: Input,
265
- args: ['clrVirtualPersistItems']
266
- }], cdkVirtualForOf: [{
267
- type: Input,
268
- args: ['clrVirtualRowsOf']
269
- }], cdkVirtualForTrackBy: [{
270
- type: Input,
271
- args: ['clrVirtualRowsTrackBy']
272
- }], cdkVirtualForTemplate: [{
273
- type: Input,
274
- args: ['clrVirtualRowsTemplate']
275
- }], cdkVirtualForTemplateCacheSize: [{
276
- type: Input,
277
- args: ['clrVirtualRowsTemplateCacheSize']
278
- }], itemSize: [{
279
- type: Input,
280
- args: ['clrVirtualRowsItemSize']
281
- }], minBufferPx: [{
282
- type: Input,
283
- args: ['clrVirtualRowsMinBufferPx']
284
- }], maxBufferPx: [{
285
- type: Input,
286
- args: ['clrVirtualRowsMaxBufferPx']
287
- }], dataRange: [{
288
- type: Input,
289
- args: ['clrVirtualDataRange']
290
- }] } });
291
- function createCdkVirtualScrollViewport(datagridDivElementRef, contentWrapper, changeDetectorRef, ngZone, renderer2, virtualScrollStrategy, directionality, scrollDispatcher, viewportRuler, scrollable) {
292
- let viewPort;
293
- if (+ANGULAR_VERSION.major < 19) {
294
- viewPort = new CdkVirtualScrollViewport(datagridDivElementRef, changeDetectorRef, ngZone, virtualScrollStrategy, directionality, scrollDispatcher, viewportRuler, scrollable);
295
- }
296
- else {
297
- const virtualScrollViewportInjector = Injector.create({
298
- parent: inject(EnvironmentInjector),
299
- providers: [
300
- { provide: ElementRef, useValue: datagridDivElementRef },
301
- { provide: ChangeDetectorRef, useValue: changeDetectorRef },
302
- { provide: NgZone, useValue: ngZone },
303
- { provide: Renderer2, useValue: renderer2 },
304
- { provide: VIRTUAL_SCROLL_STRATEGY, useValue: virtualScrollStrategy },
305
- { provide: Directionality, useValue: directionality },
306
- { provide: ScrollDispatcher, useValue: scrollDispatcher },
307
- { provide: ViewportRuler, useValue: viewportRuler },
308
- { provide: CdkVirtualScrollable, useValue: scrollable },
309
- { provide: CdkVirtualScrollViewport, useClass: CdkVirtualScrollViewport },
310
- ],
311
- });
312
- viewPort = virtualScrollViewportInjector.get(CdkVirtualScrollViewport);
313
- }
314
- viewPort._contentWrapper = contentWrapper;
315
- return viewPort;
316
- }
317
- function createCdkVirtualForOfDirective(viewContainerRef, templateRef, iterableDiffers, viewRepeater, virtualScrollViewport, ngZone) {
318
- if (+ANGULAR_VERSION.major < 19) {
319
- return new CdkVirtualForOf(viewContainerRef, templateRef, iterableDiffers, viewRepeater, virtualScrollViewport, ngZone);
320
- }
321
- else {
322
- const virtualScrollViewportInjector = Injector.create({
323
- parent: inject(EnvironmentInjector),
324
- providers: [{ provide: CdkVirtualScrollViewport, useValue: virtualScrollViewport }],
325
- });
326
- const cdkVirtualForInjector = Injector.create({
327
- parent: virtualScrollViewportInjector,
328
- providers: [
329
- { provide: ViewContainerRef, useValue: viewContainerRef },
330
- { provide: TemplateRef, useValue: templateRef },
331
- { provide: IterableDiffers, useValue: iterableDiffers },
332
- { provide: _VIEW_REPEATER_STRATEGY, useValue: viewRepeater },
333
- { provide: NgZone, useValue: ngZone },
334
- { provide: CdkVirtualForOf, useClass: CdkVirtualForOf },
335
- ],
336
- });
337
- return cdkVirtualForInjector.get(CdkVirtualForOf);
338
- }
339
- }
340
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWdyaWQtdmlydHVhbC1zY3JvbGwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS9kYXRhZ3JpZC9kYXRhZ3JpZC12aXJ0dWFsLXNjcm9sbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFFLDRCQUE0QixFQUFFLHVCQUF1QixFQUFhLE1BQU0sMEJBQTBCLENBQUM7QUFDNUcsT0FBTyxFQUVMLGVBQWUsRUFFZixvQkFBb0IsRUFFcEIsd0JBQXdCLEVBQ3hCLDhCQUE4QixFQUM5QixnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLHVCQUF1QixHQUV4QixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFFTCxPQUFPLElBQUksZUFBZSxFQUMxQixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFVBQVUsRUFFVixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsZUFBZSxFQUNmLE1BQU0sRUFFTixNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUd6QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7QUFnQjFDLE1BQU0sT0FBTyxpQ0FBaUM7SUF3QzVDLFlBQ21CLGlCQUFvQyxFQUM3QyxlQUFnQyxFQUNoQyxLQUFlLEVBQ04sTUFBYyxFQUNkLFNBQW9CLEVBQ3BCLFdBQW1ELEVBQ25ELGdCQUFrQyxFQUNsQyxjQUE4QixFQUM5QixnQkFBa0MsRUFDbEMsYUFBNEIsRUFDVyxRQUFxQixFQUNyRSxjQUE4QixFQUNyQixRQUE2QjtRQVo3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQzdDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFVO1FBQ04sV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsZ0JBQVcsR0FBWCxXQUFXLENBQXdDO1FBQ25ELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDVyxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JFLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFxQjtRQXBEdEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUM3QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUU3QywrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFFbkMsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixpQkFBWSxHQUFHLEdBQUcsQ0FBQztRQUNuQixpQkFBWSxHQUFHLEdBQUcsQ0FBQztRQVFuQixrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUVyQixvRkFBb0Y7UUFDNUUsb0JBQWUsR0FBcUIsSUFBSSxnQkFBZ0IsQ0FBQyxDQUFDLFNBQTJCLEVBQUUsRUFBRTtZQUMvRixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBd0IsRUFBRSxFQUFFO2dCQUM3Qyw0RkFBNEY7Z0JBQzVGLElBQ0UsQ0FBQyxJQUFJLENBQUMsdUJBQXVCO29CQUM1QixRQUFRLENBQUMsTUFBc0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDO29CQUN2RSxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsRUFDbEI7b0JBQ0EsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDekI7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUssaUJBQVksR0FBRyxJQUFJLDRCQUE0QixFQUFtQyxDQUFDO1FBQ25GLHdCQUFtQixHQUEyQjtZQUNwRCxvQkFBb0IsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUs7U0FDckMsQ0FBQztRQWtCQSxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEIsUUFBUSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFFakQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFFdEMsVUFBVTtRQUNWLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxFQUFFLENBQUM7UUFFekMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzNHLE1BQU0sZUFBZSxHQUFHLENBQUMsaURBQWlELENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdEcsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDNUcsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLG9DQUFvQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFM0Ysc0dBQXNHO1FBQ3RHLGtIQUFrSDtRQUNsSCxNQUFNLGNBQWMsR0FBRyxlQUFlLEdBQUcsZ0JBQWdCLENBQUM7UUFFMUQsSUFBSSxjQUFjLElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxjQUFjLEVBQUU7WUFDcEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUU7WUFDbEUsZUFBZSxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQzFCLGlCQUFpQixFQUFFLElBQUk7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksOEJBQThCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLEVBQUUsbUJBQW1CLElBQUksRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUNJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDO0lBQ2xELENBQUM7SUFDRCxJQUFJLGVBQWUsQ0FBQyxLQUFnRDtRQUNsRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxLQUFZLENBQUM7UUFDOUIsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQ0ksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLG9CQUFvQixDQUFDO0lBQ3ZELENBQUM7SUFDRCxJQUFJLG9CQUFvQixDQUFDLEtBQXFEO1FBQzVFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDdEQsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQ0kscUJBQXFCO1FBQ3ZCLE9BQU8sSUFBSSxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDO0lBQzFELENBQUM7SUFDRCxJQUFJLHFCQUFxQixDQUFDLEtBQXNEO1FBQzlFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDdkQsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQ0ksOEJBQThCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLDhCQUE4QixDQUFDO0lBQ2pFLENBQUM7SUFDRCxJQUFJLDhCQUE4QixDQUFDLEtBQStEO1FBQ2hHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyw4QkFBOEIsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFrRDtRQUM3RCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQ0ksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMsS0FBcUQ7UUFDbkUsSUFBSSxDQUFDLFlBQVksR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsa0NBQWtDLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFDSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFJLFdBQVcsQ0FBQyxLQUFxRDtRQUNuRSxJQUFJLENBQUMsWUFBWSxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUNJLFNBQVMsQ0FBQyxLQUFnRDtRQUM1RCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTztTQUNSO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzFCO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBRTlCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBWSxVQUFVLENBQUMsS0FBYTtRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHNDQUFzQyxDQUN0RSxJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsY0FBYyxFQUNuQixJQUFJLENBQUMsZ0JBQWdCLEVBQ3JCLElBQUksQ0FBQyxhQUFhLEVBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFDdkIsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO1lBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRyw4QkFBOEIsQ0FDakQsSUFBSSxDQUFDLGdCQUFnQixFQUNyQixJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMscUJBQXFCLEVBQzFCLElBQUksQ0FBQyxNQUFNLENBQ1osQ0FBQztZQUVGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQWMsZUFBZSxDQUFDLENBQUM7UUFFekcsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFFakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNyQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFO2dCQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7YUFDL0M7WUFDRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxFQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxFQUNGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDeEIsQ0FBQyxDQUFDLEVBQ0YsSUFBSSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN2RSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzdDLElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUM7UUFDekMsQ0FBQyxDQUFDLEVBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzlDLElBQUksYUFBYSxDQUFDLE9BQU8sRUFBRTtnQkFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN2QjtRQUNILENBQUMsQ0FBQyxFQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNwRCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsMEJBQTBCLEVBQUU7WUFDbkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFFNUIsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUN4QyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQWMsRUFBRSxXQUEyQixNQUFNO1FBQ3hELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFjLEVBQUUsV0FBMkIsTUFBTTtRQUMxRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYSxFQUFFLFdBQTJCLE1BQU07UUFDNUQsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFrRDtRQUN2RSxJQUFJLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWSxFQUFFLElBQVM7UUFDN0MsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQXNCLENBQUM7UUFFeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxFQUFFLE1BQU0sS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3JFLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8seUJBQXlCO1FBQy9CLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixLQUFLLE1BQU0scUJBQXFCLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQTRCLEVBQUU7Z0JBQ3BHLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO29CQUNoRyxJQUFJLENBQUMsYUFBcUIsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2lCQUN0RzthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sa0NBQWtDO1FBQ3hDLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQzlCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3ZHO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQixDQUFDLFFBQWdCO1FBQ3pDLElBQUksQ0FBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3JELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUErQyxDQUFDO1lBRTNGLE1BQU0sWUFBWSxHQUFrQixPQUFPLENBQUMsU0FBUyxDQUFDO1lBQ3RELE1BQU0sa0JBQWtCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLENBQUM7WUFDaEcsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLEVBQUUsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRXpFLE1BQU0sZUFBZSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0QsSUFBSSxjQUFjLEVBQUUsWUFBWSxDQUFDLGVBQWUsQ0FBQyxLQUFLLGVBQWUsRUFBRTtnQkFDckUsK0ZBQStGO2dCQUMvRixjQUFjLEVBQUUsWUFBWSxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQzthQUNoRTtTQUNGO0lBQ0gsQ0FBQztJQUVPLHNDQUFzQyxDQUM1QyxpQkFBb0MsRUFDcEMsTUFBYyxFQUNkLFNBQW9CLEVBQ3BCLGNBQThCLEVBQzlCLGdCQUFrQyxFQUNsQyxhQUE0QixFQUM1QixrQkFBMkMsRUFDM0MscUJBQXFEO1FBRXJELE1BQU0sc0JBQXNCLEdBQUcsa0JBQWtCLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBYyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2hILE1BQU0sbUJBQW1CLEdBQUcsa0JBQWtCLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBYyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTFHLE1BQU0scUJBQXFCLEdBQUcsOEJBQThCLENBQzFELElBQUksVUFBVSxDQUFDLHNCQUFzQixDQUFDLEVBQ3RDLElBQUksVUFBVSxDQUFDLG1CQUFtQixDQUFDLEVBQ25DLGlCQUFpQixFQUNqQixNQUFNLEVBQ04sU0FBUyxFQUNULHFCQUFxQixFQUNyQixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLGFBQWEsRUFDYixJQUEwQyxDQUMzQyxDQUFDO1FBRUYsT0FBTyxxQkFBcUIsQ0FBQztJQUMvQixDQUFDOzs4SEF2VlUsaUNBQWlDLDRTQW1EbEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQztrSEFuRDVCLGlDQUFpQyw4c0JBRmpDLENBQUMsS0FBSyxDQUFDOzJGQUVQLGlDQUFpQztrQkFKN0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUNBQXVDO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUM7aUJBQ25COzswQkFvREksTUFBTTsyQkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzJHQWxEN0IsbUJBQW1CO3NCQUE1QixNQUFNO2dCQUMwQixZQUFZO3NCQUE1QyxLQUFLO3VCQUFDLHdCQUF3QjtnQkF3RjNCLGVBQWU7c0JBRGxCLEtBQUs7dUJBQUMsa0JBQWtCO2dCQVdyQixvQkFBb0I7c0JBRHZCLEtBQUs7dUJBQUMsdUJBQXVCO2dCQVUxQixxQkFBcUI7c0JBRHhCLEtBQUs7dUJBQUMsd0JBQXdCO2dCQVUzQiw4QkFBOEI7c0JBRGpDLEtBQUs7dUJBQUMsaUNBQWlDO2dCQVVwQyxRQUFRO3NCQURYLEtBQUs7dUJBQUMsd0JBQXdCO2dCQVUzQixXQUFXO3NCQURkLEtBQUs7dUJBQUMsMkJBQTJCO2dCQVU5QixXQUFXO3NCQURkLEtBQUs7dUJBQUMsMkJBQTJCO2dCQVU5QixTQUFTO3NCQURaLEtBQUs7dUJBQUMscUJBQXFCOztBQWlNOUIsU0FBUyw4QkFBOEIsQ0FDckMscUJBQThDLEVBQzlDLGNBQXVDLEVBQ3ZDLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ2QsU0FBb0IsRUFDcEIscUJBQTRDLEVBQzVDLGNBQThCLEVBQzlCLGdCQUFrQyxFQUNsQyxhQUE0QixFQUM1QixVQUFnQztJQUVoQyxJQUFJLFFBQWtDLENBQUM7SUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFO1FBQy9CLFFBQVEsR0FBRyxJQUFJLHdCQUF3QixDQUNyQyxxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLE1BQU0sRUFDTixxQkFBcUIsRUFDckIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsVUFBVSxDQUNYLENBQUM7S0FDSDtTQUFNO1FBQ0wsTUFBTSw2QkFBNkIsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3BELE1BQU0sRUFBRSxNQUFNLENBQUMsbUJBQW1CLENBQUM7WUFDbkMsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUU7Z0JBQ3hELEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRTtnQkFDM0QsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7Z0JBQ3JDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFO2dCQUMzQyxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUU7Z0JBQ3JFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFO2dCQUNyRCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ3pELEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO2dCQUNuRCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFO2dCQUN2RCxFQUFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsd0JBQXdCLEVBQUU7YUFDMUU7U0FDRixDQUFDLENBQUM7UUFFSCxRQUFRLEdBQUcsNkJBQTZCLENBQUMsR0FBRyxDQUFDLHdCQUF3QixDQUFDLENBQUM7S0FDeEU7SUFDRCxRQUFRLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztJQUMxQyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyw4QkFBOEIsQ0FDckMsZ0JBQWtDLEVBQ2xDLFdBQW1ELEVBQ25ELGVBQWdDLEVBQ2hDLFlBQTJFLEVBQzNFLHFCQUErQyxFQUMvQyxNQUFjO0lBRWQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFO1FBQy9CLE9BQU8sSUFBSSxlQUFlLENBQ3hCLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsZUFBZSxFQUNmLFlBQVksRUFDWixxQkFBcUIsRUFDckIsTUFBTSxDQUNQLENBQUM7S0FDSDtTQUFNO1FBQ0wsTUFBTSw2QkFBNkIsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3BELE1BQU0sRUFBRSxNQUFNLENBQUMsbUJBQW1CLENBQUM7WUFDbkMsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixFQUFFLENBQUM7U0FDcEYsQ0FBQyxDQUFDO1FBRUgsTUFBTSxxQkFBcUIsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQzVDLE1BQU0sRUFBRSw2QkFBNkI7WUFDckMsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRTtnQkFDekQsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUU7Z0JBQy9DLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFO2dCQUN2RCxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFO2dCQUM1RCxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRTtnQkFDckMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUU7YUFDeEQ7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztLQUNuRDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgX1JlY3ljbGVWaWV3UmVwZWF0ZXJTdHJhdGVneSwgX1ZJRVdfUkVQRUFURVJfU1RSQVRFR1ksIExpc3RSYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5pbXBvcnQge1xuICBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLFxuICBDZGtWaXJ0dWFsRm9yT2YsXG4gIENka1ZpcnR1YWxGb3JPZkNvbnRleHQsXG4gIENka1ZpcnR1YWxTY3JvbGxhYmxlLFxuICBDZGtWaXJ0dWFsU2Nyb2xsYWJsZUVsZW1lbnQsXG4gIENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCxcbiAgRml4ZWRTaXplVmlydHVhbFNjcm9sbFN0cmF0ZWd5LFxuICBTY3JvbGxEaXNwYXRjaGVyLFxuICBWaWV3cG9ydFJ1bGVyLFxuICBWSVJUVUFMX1NDUk9MTF9TVFJBVEVHWSxcbiAgVmlydHVhbFNjcm9sbFN0cmF0ZWd5LFxufSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIFZFUlNJT04gYXMgQU5HVUxBUl9WRVJTSU9OLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBEb0NoZWNrLFxuICBFbGVtZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5qZWN0LFxuICBpbmplY3QsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgSXRlcmFibGVEaWZmZXJzLFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbHJEYXRhZ3JpZCB9IGZyb20gJy4vZGF0YWdyaWQnO1xuaW1wb3J0IHsgQ2xyRGF0YWdyaWRWaXJ0dWFsU2Nyb2xsUmFuZ2VJbnRlcmZhY2UgfSBmcm9tICcuL2ludGVyZmFjZXMvdmlydHVhbC1zY3JvbGwtZGF0YS1yYW5nZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29sdW1uc1NlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9jb2x1bW5zLnNlcnZpY2UnO1xuaW1wb3J0IHsgSXRlbXMgfSBmcm9tICcuL3Byb3ZpZGVycy9pdGVtcyc7XG5cbnR5cGUgQ2RrVmlydHVhbEZvcklucHV0S2V5ID1cbiAgfCAnY2RrVmlydHVhbEZvck9mJ1xuICB8ICdjZGtWaXJ0dWFsRm9yVHJhY2tCeSdcbiAgfCAnY2RrVmlydHVhbEZvclRlbXBsYXRlJ1xuICB8ICdjZGtWaXJ0dWFsRm9yVGVtcGxhdGVDYWNoZVNpemUnO1xuXG50eXBlIENka1ZpcnR1YWxGb3JJbnB1dHM8VD4gPSBQYXJ0aWFsPFBpY2s8Q2RrVmlydHVhbEZvck9mPFQ+LCBDZGtWaXJ0dWFsRm9ySW5wdXRLZXk+PjtcblxudHlwZSBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsSW5wdXRzID0gUGljazxDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLCAnaXRlbVNpemUnIHwgJ21pbkJ1ZmZlclB4JyB8ICdtYXhCdWZmZXJQeCc+O1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY2xyVmlydHVhbFNjcm9sbF0sW0NsclZpcnR1YWxTY3JvbGxdJyxcbiAgcHJvdmlkZXJzOiBbSXRlbXNdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJEYXRhZ3JpZFZpcnR1YWxTY3JvbGxEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBEb0NoZWNrLCBPbkRlc3Ryb3kge1xuICBAT3V0cHV0KCkgcmVuZGVyZWRSYW5nZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdFJhbmdlPigpO1xuICBASW5wdXQoJ2NsclZpcnR1YWxQZXJzaXN0SXRlbXMnKSBwZXJzaXN0SXRlbXMgPSB0cnVlO1xuXG4gIHByaXZhdGUgc2hvdWxkVXBkYXRlQXJpYVJvd0luZGV4ZXMgPSBmYWxzZTtcblxuICBwcml2YXRlIF9pc1VzZXJQcm92aWRlZEl0ZW1TaXplID0gZmFsc2U7XG4gIHByaXZhdGUgX2l0ZW1TaXplID0gMzM7XG4gIHByaXZhdGUgX21pbkJ1ZmZlclB4ID0gMjAwO1xuICBwcml2YXRlIF9tYXhCdWZmZXJQeCA9IDQwMDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFncmlkRWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgcHJpdmF0ZSBncmlkUm9sZUVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSByZWFkb25seSB2aXJ0dWFsU2Nyb2xsU3RyYXRlZ3k6IEZpeGVkU2l6ZVZpcnR1YWxTY3JvbGxTdHJhdGVneTtcbiAgcHJpdmF0ZSB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQ6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydDtcbiAgcHJpdmF0ZSBjZGtWaXJ0dWFsRm9yOiBDZGtWaXJ0dWFsRm9yT2Y8VD47XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSB0b3BJbmRleCA9IDA7XG5cbiAgLy8gQGRlcHJlY2F0ZWQgcmVtb3ZlIHRoZSBtdXRhdGlvbiBvYnNlcnZlciB3aGVuIGBkYXRhZ3JpZC1jb21wYWN0YCBjbGFzcyBpcyBkZWxldGVkXG4gIHByaXZhdGUgbXV0YXRpb25DaGFuZ2VzOiBNdXRhdGlvbk9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKG11dGF0aW9uczogTXV0YXRpb25SZWNvcmRbXSkgPT4ge1xuICAgIG11dGF0aW9ucy5mb3JFYWNoKChtdXRhdGlvbjogTXV0YXRpb25SZWNvcmQpID0+IHtcbiAgICAgIC8vIGl0IGlzIHBvc3NpYmxlIHRoaXMgdG8gYmUgY2FsbGVkIHR3aWNlIGJlY2F1c2UgdGhlIG9sZCBjbGFzcyBpcyByZW1vdmVkIGFuZCB0aGUgbmV3IGFkZGVkXG4gICAgICBpZiAoXG4gICAgICAgICF0aGlzLl9pc1VzZXJQcm92aWRlZEl0ZW1TaXplICYmXG4gICAgICAgIChtdXRhdGlvbi50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsYXNzTGlzdC5jb250YWlucygnZGF0YWdyaWQtY29tcGFjdCcpICYmXG4gICAgICAgIHRoaXMuaXRlbVNpemUgPiAyNVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSXRlbVNpemUoMjUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICBwcml2YXRlIHZpZXdSZXBlYXRlciA9IG5ldyBfUmVjeWNsZVZpZXdSZXBlYXRlclN0cmF0ZWd5PFQsIFQsIENka1ZpcnR1YWxGb3JPZkNvbnRleHQ8VD4+KCk7XG4gIHByaXZhdGUgY2RrVmlydHVhbEZvcklucHV0czogQ2RrVmlydHVhbEZvcklucHV0czxUPiA9IHtcbiAgICBjZGtWaXJ0dWFsRm9yVHJhY2tCeTogaW5kZXggPT4gaW5kZXgsXG4gIH07XG4gIHByaXZhdGUgX3RvdGFsSXRlbXM6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGl0ZXJhYmxlRGlmZmVyczogSXRlcmFibGVEaWZmZXJzLFxuICAgIHByaXZhdGUgaXRlbXM6IEl0ZW1zPFQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxDZGtWaXJ0dWFsRm9yT2ZDb250ZXh0PFQ+PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXJlY3Rpb25hbGl0eTogRGlyZWN0aW9uYWxpdHksXG4gICAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxEaXNwYXRjaGVyOiBTY3JvbGxEaXNwYXRjaGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld3BvcnRSdWxlcjogVmlld3BvcnRSdWxlcixcbiAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gQ2xyRGF0YWdyaWQpKSBwcml2YXRlIHJlYWRvbmx5IGRhdGFncmlkOiBDbHJEYXRhZ3JpZCxcbiAgICBwcml2YXRlIGNvbHVtbnNTZXJ2aWNlOiBDb2x1bW5zU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yXG4gICkge1xuICAgIGl0ZW1zLnNtYXJ0ZW5VcCgpO1xuICAgIGRhdGFncmlkLmRldGFpbFNlcnZpY2UucHJldmVudEZvY3VzU2Nyb2xsID0gdHJ1ZTtcblxuICAgIHRoaXMuZGF0YWdyaWRFbGVtZW50UmVmID0gZGF0YWdyaWQuZWw7XG5cbiAgICAvLyBkZWZhdWx0XG4gICAgdGhpcy5jZGtWaXJ0dWFsRm9yVGVtcGxhdGVDYWNoZVNpemUgPSAyMDtcblxuICAgIGNvbnN0IGNlbGxIZWlnaHRUb2tlbiA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoJy0tY2xyLXRhYmxlLWNlbGwtaGVpZ2h0Jyk7XG4gICAgY29uc3QgY2VsbEhlaWdodFZhbHVlID0gKy9jYWxjXFwoKFswLTldKykgXFwqIGNhbGNcXChcXCgxcmVtIFxcLyAyMFxcKSBcXCogMVxcKVxcKS8uZXhlYyhjZWxsSGVpZ2h0VG9rZW4pPy5bMV07XG5cbiAgICBjb25zdCBib3JkZXJXaWR0aFRva2VuID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuYm9keSkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1jbHItdGFibGUtYm9yZGVyd2lkdGgnKTtcbiAgICBjb25zdCBib3JkZXJXaWR0aFZhbHVlID0gKy9jYWxjXFwoKFswLTldKykgXFwqIFxcKDFyZW0gXFwvIDIwXFwpXFwpLy5leGVjKGJvcmRlcldpZHRoVG9rZW4pPy5bMV07XG5cbiAgICAvLyBpbml0aWFsbHkgcm93SGVpZ2h0VmFsdWUgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiBgLS1jbHItdGFibGUtcm93LWhlaWdodGAgdGhhdCBoYWQgYSBkaXNjcmVldCB2YWx1ZS5cbiAgICAvLyBjdXJyZW50bHkgYC0tY2xyLXRhYmxlLXJvdy1oZWlnaHRgIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gYC0tY2xyLXRhYmxlLWNlbGwtaGVpZ2h0YCArIGAtLWNsci10YWJsZS1ib3JkZXJ3aWR0aGBcbiAgICBjb25zdCByb3dIZWlnaHRWYWx1ZSA9IGNlbGxIZWlnaHRWYWx1ZSArIGJvcmRlcldpZHRoVmFsdWU7XG5cbiAgICBpZiAocm93SGVpZ2h0VmFsdWUgJiYgdGhpcy5pdGVtU2l6ZSA+IHJvd0hlaWdodFZhbHVlKSB7XG4gICAgICB0aGlzLnVwZGF0ZUl0ZW1TaXplKHJvd0hlaWdodFZhbHVlKTtcbiAgICB9XG5cbiAgICB0aGlzLm11dGF0aW9uQ2hhbmdlcy5vYnNlcnZlKHRoaXMuZGF0YWdyaWRFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIGF0dHJpYnV0ZUZpbHRlcjogWydjbGFzcyddLFxuICAgICAgYXR0cmlidXRlT2xkVmFsdWU6IHRydWUsXG4gICAgfSk7XG5cbiAgICB0aGlzLnZpcnR1YWxTY3JvbGxTdHJhdGVneSA9IG5ldyBGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kodGhpcy5pdGVtU2l6ZSwgdGhpcy5taW5CdWZmZXJQeCwgdGhpcy5tYXhCdWZmZXJQeCk7XG4gIH1cblxuICBnZXQgdG90YWxDb250ZW50SGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLnZpcnR1YWxTY3JvbGxWaWV3cG9ydD8uX3RvdGFsQ29udGVudEhlaWdodCB8fCAnJztcbiAgfVxuXG4gIEBJbnB1dCgnY2xyVmlydHVhbFJvd3NPZicpXG4gIGdldCBjZGtWaXJ0dWFsRm9yT2YoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2RrVmlydHVhbEZvcklucHV0cy5jZGtWaXJ0dWFsRm9yT2Y7XG4gIH1cbiAgc2V0IGNka1ZpcnR1YWxGb3JPZih2YWx1ZTogQ2RrVmlydHVhbEZvcklucHV0czxUPlsnY2RrVmlydHVhbEZvck9mJ10pIHtcbiAgICB0aGlzLmNka1ZpcnR1YWxGb3JJbnB1dHMuY2RrVmlydHVhbEZvck9mID0gdmFsdWU7XG4gICAgdGhpcy5pdGVtcy5hbGwgPSB2YWx1ZSBhcyBUW107XG4gICAgdGhpcy51cGRhdGVDZGtWaXJ0dWFsRm9ySW5wdXRzKCk7XG4gIH1cblxuICBASW5wdXQoJ2NsclZpcnR1YWxSb3dzVHJhY2tCeScpXG4gIGdldCBjZGtWaXJ0dWFsRm9yVHJhY2tCeSgpIHtcbiAgICByZXR1cm4gdGhpcy5jZGtWaXJ0dWFsRm9ySW5wdXRzLmNka1ZpcnR1YWxGb3JUcmFja0J5O1xuICB9XG4gIHNldCBjZGtWaXJ0dWFsRm9yVHJhY2tCeSh2YWx1ZTogQ2RrVmlydHVhbEZvcklucHV0czxUPlsnY2RrVmlydHVhbEZvclRyYWNrQnknXSkge1xuICAgIHRoaXMuY2RrVmlydHVhbEZvcklucHV0cy5jZGtWaXJ0dWFsRm9yVHJhY2tCeSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlQ2RrVmlydHVhbEZvcklucHV0cygpO1xuICB9XG5cbiAgQElucHV0KCdjbHJWaXJ0dWFsUm93c1RlbXBsYXRlJylcbiAgZ2V0IGNka1ZpcnR1YWxGb3JUZW1wbGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcz8uY2RrVmlydHVhbEZvcklucHV0cz8uY2RrVmlydHVhbEZvclRlbXBsYXRlO1xuICB9XG4gIHNldCBjZGtWaXJ0dWFsRm9yVGVtcGxhdGUodmFsdWU6IENka1ZpcnR1YWxGb3JJbnB1dHM8VD5bJ2Nka1ZpcnR1YWxGb3JUZW1wbGF0ZSddKSB7XG4gICAgdGhpcy5jZGtWaXJ0dWFsRm9ySW5wdXRzLmNka1ZpcnR1YWxGb3JUZW1wbGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlQ2RrVmlydHVhbEZvcklucHV0cygpO1xuICB9XG5cbiAgQElucHV0KCdjbHJWaXJ0dWFsUm93c1RlbXBsYXRlQ2FjaGVTaXplJylcbiAgZ2V0IGNka1ZpcnR1YWxGb3JUZW1wbGF0ZUNhY2hlU2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jZGtWaXJ0dWFsRm9ySW5wdXRzLmNka1ZpcnR1YWxGb3JUZW1wbGF0ZUNhY2hlU2l6ZTtcbiAgfVxuICBzZXQgY2RrVmlydHVhbEZvclRlbXBsYXRlQ2FjaGVTaXplKHZhbHVlOiBDZGtWaXJ0dWFsRm9ySW5wdXRzPFQ+WydjZGtWaXJ0dWFsRm9yVGVtcGxhdGVDYWNoZVNpemUnXSkge1xuICAgIHRoaXMuY2RrVmlydHVhbEZvcklucHV0cy5jZGtWaXJ0dWFsRm9yVGVtcGxhdGVDYWNoZVNpemUgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVDZGtWaXJ0dWFsRm9ySW5wdXRzKCk7XG4gIH1cblxuICBASW5wdXQoJ2NsclZpcnR1YWxSb3dzSXRlbVNpemUnKVxuICBnZXQgaXRlbVNpemUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2l0ZW1TaXplO1xuICB9XG4gIHNldCBpdGVtU2l6ZSh2YWx1ZTogQ2RrRml4ZWRTaXplVmlydHVhbFNjcm9sbElucHV0c1snaXRlbVNpemUnXSkge1xuICAgIHRoaXMuX2lzVXNlclByb3ZpZGVkSXRlbVNpemUgPSB0cnVlO1xuICAgIHRoaXMudXBkYXRlSXRlbVNpemUodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KCdjbHJWaXJ0dWFsUm93c01pbkJ1ZmZlclB4JylcbiAgZ2V0IG1pbkJ1ZmZlclB4KCkge1xuICAgIHJldHVybiB0aGlzLl9taW5CdWZmZXJQeDtcbiAgfVxuICBzZXQgbWluQnVmZmVyUHgodmFsdWU6IENka0ZpeGVkU2l6ZVZpcnR1YWxTY3JvbGxJbnB1dHNbJ21pbkJ1ZmZlclB4J10pIHtcbiAgICB0aGlzLl9taW5CdWZmZXJQeCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZUZpeGVkU2l6ZVZpcnR1YWxTY3JvbGxJbnB1dHMoKTtcbiAgfVxuXG4gIEBJbnB1dCgnY2xyVmlydHVhbFJvd3NNYXhCdWZmZXJQeCcpXG4gIGdldCBtYXhCdWZmZXJQeCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4QnVmZmVyUHg7XG4gIH1cbiAgc2V0IG1heEJ1ZmZlclB4KHZhbHVlOiBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsSW5wdXRzWydtYXhCdWZmZXJQeCddKSB7XG4gICAgdGhpcy5fbWF4QnVmZmVyUHggPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsSW5wdXRzKCk7XG4gIH1cblxuICBASW5wdXQoJ2NsclZpcnR1YWxEYXRhUmFuZ2UnKVxuICBzZXQgZGF0YVJhbmdlKHJhbmdlOiBDbHJEYXRhZ3JpZFZpcnR1YWxTY3JvbGxSYW5nZUludGVyZmFjZTxUPikge1xuICAgIGlmICghcmFuZ2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pdGVtcy5zbWFydCkge1xuICAgICAgdGhpcy5pdGVtcy5zbWFydGVuRG93bigpO1xuICAgIH1cblxuICAgIHRoaXMudG90YWxJdGVtcyA9IHJhbmdlLnRvdGFsO1xuXG4gICAgdGhpcy51cGRhdGVEYXRhUmFuZ2UocmFuZ2Uuc2tpcCwgcmFuZ2UuZGF0YSk7XG4gIH1cblxuICBnZXQgdG90YWxJdGVtcygpIHtcbiAgICByZXR1cm4gdGhpcy5fdG90YWxJdGVtcztcbiAgfVxuXG4gIHByaXZhdGUgc2V0IHRvdGFsSXRlbXModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3RvdGFsSXRlbXMgPSB2YWx1ZTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluamVjdG9yLnJ1bkluQ29udGV4dCgoKSA9PiB7XG4gICAgICB0aGlzLnZpcnR1YWxTY3JvbGxWaWV3cG9ydCA9IHRoaXMuY3JlYXRlVmlydHVhbFNjcm9sbFZpZXdwb3J0Rm9yRGF0YWdyaWQoXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHRoaXMubmdab25lLFxuICAgICAgICB0aGlzLnJlbmRlcmVyMixcbiAgICAgICAgdGhpcy5kaXJlY3Rpb25hbGl0eSxcbiAgICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyLFxuICAgICAgICB0aGlzLnZpZXdwb3J0UnVsZXIsXG4gICAgICAgIHRoaXMuZGF0YWdyaWRFbGVtZW50UmVmLFxuICAgICAgICB0aGlzLnZpcnR1YWxTY3JvbGxTdHJhdGVneVxuICAgICAgKTtcblxuICAgICAgdGhpcy5jZGtWaXJ0dWFsRm9yID0gY3JlYXRlQ2RrVmlydHVhbEZvck9mRGlyZWN0aXZlKFxuICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHRoaXMudGVtcGxhdGVSZWYsXG4gICAgICAgIHRoaXMuaXRlcmFibGVEaWZmZXJzLFxuICAgICAgICB0aGlzLnZpZXdSZXBlYXRlcixcbiAgICAgICAgdGhpcy52aXJ0dWFsU2Nyb2xsVmlld3BvcnQsXG4gICAgICAgIHRoaXMubmdab25lXG4gICAgICApO1xuXG4gICAgICB0aGlzLnZpcnR1YWxTY3JvbGxWaWV3cG9ydC5uZ09uSW5pdCgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5ncmlkUm9sZUVsZW1lbnQgPSB0aGlzLmRhdGFncmlkRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KCdbcm9sZT1cImdyaWRcIl0nKTtcblxuICAgIHRoaXMudXBkYXRlQ2RrVmlydHVhbEZvcklucHV0cygpO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLml0ZW1zLmNoYW5nZS5zdWJzY3JpYmUobmV3SXRlbXMgPT4ge1xuICAgICAgICBpZiAodGhpcy5pdGVtcy5zbWFydCkge1xuICAgICAgICAgIHRoaXMuY2RrVmlydHVhbEZvci5jZGtWaXJ0dWFsRm9yT2YgPSBuZXdJdGVtcztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNob3VsZFVwZGF0ZUFyaWFSb3dJbmRleGVzID0gdHJ1ZTtcbiAgICAgIH0pLFxuICAgICAgdGhpcy5jZGtWaXJ0dWFsRm9yLmRhdGFTdHJlYW0uc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZUFyaWFSb3dDb3VudChkYXRhLmxlbmd0aCk7XG4gICAgICB9KSxcbiAgICAgIHRoaXMudmlydHVhbFNjcm9sbFZpZXdwb3J0LnNjcm9sbGVkSW5kZXhDaGFuZ2Uuc3Vic2NyaWJlKGluZGV4ID0+IHtcbiAgICAgICAgdGhpcy50b3BJbmRleCA9IGluZGV4O1xuICAgICAgfSksXG4gICAgICB0aGlzLnZpcnR1YWxTY3JvbGxWaWV3cG9ydC5yZW5kZXJlZFJhbmdlU3RyZWFtLnN1YnNjcmliZShyZW5kZXJlZFJhbmdlID0+IHtcbiAgICAgICAgdGhpcy5yZW5kZXJlZFJhbmdlQ2hhbmdlLmVtaXQocmVuZGVyZWRSYW5nZSk7XG4gICAgICAgIHRoaXMuc2hvdWxkVXBkYXRlQXJpYVJvd0luZGV4ZXMgPSB0cnVlO1xuICAgICAgfSksXG4gICAgICB0aGlzLmRhdGFncmlkLnJlZnJlc2guc3Vic2NyaWJlKGRhdGFncmlkU3RhdGUgPT4ge1xuICAgICAgICBpZiAoZGF0YWdyaWRTdGF0ZS5maWx0ZXJzKSB7XG4gICAgICAgICAgdGhpcy5zY3JvbGxUb0luZGV4KDApO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuY29sdW1uc1N0YXRlQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudmlld1JlcGVhdGVyLmRldGFjaCgpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIHRoaXMuY2RrVmlydHVhbEZvcj8ubmdEb0NoZWNrKCk7XG4gICAgaWYgKHRoaXMuc2hvdWxkVXBkYXRlQXJpYVJvd0luZGV4ZXMpIHtcbiAgICAgIHRoaXMudXBkYXRlQXJpYVJvd0luZGV4ZXMoKTtcblxuICAgICAgdGhpcy5zaG91bGRVcGRhdGVBcmlhUm93SW5kZXhlcyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2RrVmlydHVhbEZvcj8ubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLnZpcnR1YWxTY3JvbGxWaWV3cG9ydD8ubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLm11dGF0aW9uQ2hhbmdlcz8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YnNjcmlwdGlvbiA9PiB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHNjcm9sbFVwKG9mZnNldDogbnVtYmVyLCBiZWhhdmlvcjogU2Nyb2xsQmVoYXZpb3IgPSAnYXV0bycpIHtcbiAgICB0aGlzLnNjcm9sbFRvSW5kZXgodGhpcy50b3BJbmRleCAtIG9mZnNldCwgYmVoYXZpb3IpO1xuICB9XG5cbiAgc2Nyb2xsRG93bihvZmZzZXQ6IG51bWJlciwgYmVoYXZpb3I6IFNjcm9sbEJlaGF2aW9yID0gJ2F1dG8nKSB7XG4gICAgdGhpcy5zY3JvbGxUb0luZGV4KHRoaXMudG9wSW5kZXggKyBvZmZzZXQsIGJlaGF2aW9yKTtcbiAgfVxuXG4gIHNjcm9sbFRvSW5kZXgoaW5kZXg6IG51bWJlciwgYmVoYXZpb3I6IFNjcm9sbEJlaGF2aW9yID0gJ2F1dG8nKSB7XG4gICAgdGhpcy52aXJ0dWFsU2Nyb2xsVmlld3BvcnQ/LnNjcm9sbFRvSW5kZXgoaW5kZXgsIGJlaGF2aW9yKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlSXRlbVNpemUodmFsdWU6IENka0ZpeGVkU2l6ZVZpcnR1YWxTY3JvbGxJbnB1dHNbJ2l0ZW1TaXplJ10pIHtcbiAgICB0aGlzLl9pdGVtU2l6ZSA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZUZpeGVkU2l6ZVZpcnR1YWxTY3JvbGxJbnB1dHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRGF0YVJhbmdlKHNraXA6IG51bWJlciwgZGF0YTogVFtdKSB7XG4gICAgbGV0IGl0ZW1zID0gdGhpcy5jZGtWaXJ0dWFsRm9yT2YgYXMgVFtdO1xuXG4gICAgaWYgKCF0aGlzLnBlcnNpc3RJdGVtcyB8fCAhaXRlbXMgfHwgaXRlbXM/Lmxlbmd0aCAhPT0gdGhpcy50b3RhbEl0ZW1zKSB7XG4gICAgICBpdGVtcyA9IEFycmF5KHRoaXMudG90YWxJdGVtcyk7XG4gICAgfVxuXG4gICAgaXRlbXMuc3BsaWNlKHNraXAsIGRhdGEubGVuZ3RoLCAuLi5kYXRhKTtcblxuICAgIHRoaXMuY2RrVmlydHVhbEZvck9mID0gQXJyYXkuZnJvbShpdGVtcyk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNka1ZpcnR1YWxGb3JJbnB1dHMoKSB7XG4gICAgaWYgKHRoaXMuY2RrVmlydHVhbEZvcikge1xuICAgICAgZm9yIChjb25zdCBjZGtWaXJ0dWFsRm9ySW5wdXRLZXkgb2YgT2JqZWN0LmtleXModGhpcy5jZGtWaXJ0dWFsRm9ySW5wdXRzKSBhcyBDZGtWaXJ0dWFsRm9ySW5wdXRLZXlbXSkge1xuICAgICAgICBpZiAodGhpcy5jZGtWaXJ0dWFsRm9yW2Nka1ZpcnR1YWxGb3JJbnB1dEtleV0gIT09IHRoaXMuY2RrVmlydHVhbEZvcklucHV0c1tjZGtWaXJ0dWFsRm9ySW5wdXRLZXldKSB7XG4gICAgICAgICAgKHRoaXMuY2RrVmlydHVhbEZvciBhcyBhbnkpW2Nka1ZpcnR1YWxGb3JJbnB1dEtleV0gPSB0aGlzLmNka1ZpcnR1YWxGb3JJbnB1dHNbY2RrVmlydHVhbEZvcklucHV0S2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRml4ZWRTaXplVmlydHVhbFNjcm9sbElucHV0cygpIHtcbiAgICBpZiAodGhpcy52aXJ0dWFsU2Nyb2xsU3RyYXRlZ3kpIHtcbiAgICAgIHRoaXMudmlydHVhbFNjcm9sbFN0cmF0ZWd5LnVwZGF0ZUl0ZW1BbmRCdWZmZXJTaXplKHRoaXMuaXRlbVNpemUsIHRoaXMubWluQnVmZmVyUHgsIHRoaXMubWF4QnVmZmVyUHgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQXJpYVJvd0NvdW50KHJvd0NvdW50OiBudW1iZXIpIHtcbiAgICB0aGlzLmdyaWRSb2xlRWxlbWVudD8uc2V0QXR0cmlidXRlKCdhcmlhLXJvd2NvdW50Jywgcm93Q291bnQudG9TdHJpbmcoKSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUFyaWFSb3dJbmRleGVzKCkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy52aWV3Q29udGFpbmVyUmVmLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB2aWV3UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmdldChpKSBhcyBFbWJlZGRlZFZpZXdSZWY8Q2RrVmlydHVhbEZvck9mQ29udGV4dDxUPj47XG5cbiAgICAgIGNvbnN0IHJvb3RFbGVtZW50czogSFRNTEVsZW1lbnRbXSA9IHZpZXdSZWYucm9vdE5vZGVzO1xuICAgICAgY29uc3QgZGF0YWdyaWRSb3dFbGVtZW50ID0gcm9vdEVsZW1lbnRzLmZpbmQocm93RWxlbWVudCA9PiByb3dFbGVtZW50LnRhZ05hbWUgPT09ICdDTFItREctUk9XJyk7XG4gICAgICBjb25zdCByb3dSb2xlRWxlbWVudCA9IGRhdGFncmlkUm93RWxlbWVudD8ucXVlcnlTZWxlY3RvcignW3JvbGU9XCJyb3dcIl0nKTtcblxuICAgICAgY29uc3QgbmV3QXJpYVJvd0luZGV4ID0gKHZpZXdSZWYuY29udGV4dC5pbmRleCArIDEpLnRvU3RyaW5nKCk7XG4gICAgICBpZiAocm93Um9sZUVsZW1lbnQ/LmdldEF0dHJpYnV0ZSgnYXJpYS1yb3dpbmRleCcpICE9PSBuZXdBcmlhUm93SW5kZXgpIHtcbiAgICAgICAgLy8gYXJpYS1yb3dpbmRleCBzaG91bGQgc3RhcnQgd2l0aCBvbmUsIG5vdCB6ZXJvLCBzbyB3ZSBoYXZlIHRvIGFkZCBvbmUgdG8gdGhlIHplcm8tYmFzZWQgaW5kZXhcbiAgICAgICAgcm93Um9sZUVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1yb3dpbmRleCcsIG5ld0FyaWFSb3dJbmRleCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVWaXJ0dWFsU2Nyb2xsVmlld3BvcnRGb3JEYXRhZ3JpZChcbiAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICAgcmVuZGVyZXIyOiBSZW5kZXJlcjIsXG4gICAgZGlyZWN0aW9uYWxpdHk6IERpcmVjdGlvbmFsaXR5LFxuICAgIHNjcm9sbERpc3BhdGNoZXI6IFNjcm9sbERpc3BhdGNoZXIsXG4gICAgdmlld3BvcnRSdWxlcjogVmlld3BvcnRSdWxlcixcbiAgICBkYXRhZ3JpZEVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHZpcnR1YWxTY3JvbGxTdHJhdGVneTogRml4ZWRTaXplVmlydHVhbFNjcm9sbFN0cmF0ZWd5XG4gICkge1xuICAgIGNvbnN0IGRhdGFncmlkQ29udGVudEVsZW1lbnQgPSBkYXRhZ3JpZEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PignLmRhdGFncmlkLWNvbnRlbnQnKTtcbiAgICBjb25zdCBkYXRhZ3JpZFJvd3NFbGVtZW50ID0gZGF0YWdyaWRFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oJy5kYXRhZ3JpZC1yb3dzJyk7XG5cbiAgICBjb25zdCB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQgPSBjcmVhdGVDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQoXG4gICAgICBuZXcgRWxlbWVudFJlZihkYXRhZ3JpZENvbnRlbnRFbGVtZW50KSxcbiAgICAgIG5ldyBFbGVtZW50UmVmKGRhdGFncmlkUm93c0VsZW1lbnQpLFxuICAgICAgY2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICBuZ1pvbmUsXG4gICAgICByZW5kZXJlcjIsXG4gICAgICB2aXJ0dWFsU2Nyb2xsU3RyYXRlZ3ksXG4gICAgICBkaXJlY3Rpb25hbGl0eSxcbiAgICAgIHNjcm9sbERpc3BhdGNoZXIsXG4gICAgICB2aWV3cG9ydFJ1bGVyLFxuICAgICAgbnVsbCBhcyBhbnkgYXMgQ2RrVmlydHVhbFNjcm9sbGFibGVFbGVtZW50XG4gICAgKTtcblxuICAgIHJldHVybiB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gY3JlYXRlQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0KFxuICBkYXRhZ3JpZERpdkVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICBjb250ZW50V3JhcHBlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgbmdab25lOiBOZ1pvbmUsXG4gIHJlbmRlcmVyMjogUmVuZGVyZXIyLFxuICB2aXJ0dWFsU2Nyb2xsU3RyYXRlZ3k6IFZpcnR1YWxTY3JvbGxTdHJhdGVneSxcbiAgZGlyZWN0aW9uYWxpdHk6IERpcmVjdGlvbmFsaXR5LFxuICBzY3JvbGxEaXNwYXRjaGVyOiBTY3JvbGxEaXNwYXRjaGVyLFxuICB2aWV3cG9ydFJ1bGVyOiBWaWV3cG9ydFJ1bGVyLFxuICBzY3JvbGxhYmxlOiBDZGtWaXJ0dWFsU2Nyb2xsYWJsZVxuKSB7XG4gIGxldCB2aWV3UG9ydDogQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0O1xuICBpZiAoK0FOR1VMQVJfVkVSU0lPTi5tYWpvciA8IDE5KSB7XG4gICAgdmlld1BvcnQgPSBuZXcgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0KFxuICAgICAgZGF0YWdyaWREaXZFbGVtZW50UmVmLFxuICAgICAgY2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICBuZ1pvbmUsXG4gICAgICB2aXJ0dWFsU2Nyb2xsU3RyYXRlZ3ksXG4gICAgICBkaXJlY3Rpb25hbGl0eSxcbiAgICAgIHNjcm9sbERpc3BhdGNoZXIsXG4gICAgICB2aWV3cG9ydFJ1bGVyLFxuICAgICAgc2Nyb2xsYWJsZVxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdmlydHVhbFNjcm9sbFZpZXdwb3J0SW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiBpbmplY3QoRW52aXJvbm1lbnRJbmplY3RvciksXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBFbGVtZW50UmVmLCB1c2VWYWx1ZTogZGF0YWdyaWREaXZFbGVtZW50UmVmIH0sXG4gICAgICAgIHsgcHJvdmlkZTogQ2hhbmdlRGV0ZWN0b3JSZWYsIHVzZVZhbHVlOiBjaGFuZ2VEZXRlY3RvclJlZiB9LFxuICAgICAgICB7IHByb3ZpZGU6IE5nWm9uZSwgdXNlVmFsdWU6IG5nWm9uZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IFJlbmRlcmVyMiwgdXNlVmFsdWU6IHJlbmRlcmVyMiB9LFxuICAgICAgICB7IHByb3ZpZGU6IFZJUlRVQUxfU0NST0xMX1NUUkFURUdZLCB1c2VWYWx1ZTogdmlydHVhbFNjcm9sbFN0cmF0ZWd5IH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGlyZWN0aW9uYWxpdHksIHVzZVZhbHVlOiBkaXJlY3Rpb25hbGl0eSB9LFxuICAgICAgICB7IHByb3ZpZGU6IFNjcm9sbERpc3BhdGNoZXIsIHVzZVZhbHVlOiBzY3JvbGxEaXNwYXRjaGVyIH0sXG4gICAgICAgIHsgcHJvdmlkZTogVmlld3BvcnRSdWxlciwgdXNlVmFsdWU6IHZpZXdwb3J0UnVsZXIgfSxcbiAgICAgICAgeyBwcm92aWRlOiBDZGtWaXJ0dWFsU2Nyb2xsYWJsZSwgdXNlVmFsdWU6IHNjcm9sbGFibGUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQsIHVzZUNsYXNzOiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICB2aWV3UG9ydCA9IHZpcnR1YWxTY3JvbGxWaWV3cG9ydEluamVjdG9yLmdldChDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQpO1xuICB9XG4gIHZpZXdQb3J0Ll9jb250ZW50V3JhcHBlciA9IGNvbnRlbnRXcmFwcGVyO1xuICByZXR1cm4gdmlld1BvcnQ7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUNka1ZpcnR1YWxGb3JPZkRpcmVjdGl2ZTxUPihcbiAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPENka1ZpcnR1YWxGb3JPZkNvbnRleHQ8VD4+LFxuICBpdGVyYWJsZURpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgdmlld1JlcGVhdGVyOiBfUmVjeWNsZVZpZXdSZXBlYXRlclN0cmF0ZWd5PFQsIFQsIENka1ZpcnR1YWxGb3JPZkNvbnRleHQ8VD4+LFxuICB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQ6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCxcbiAgbmdab25lOiBOZ1pvbmVcbikge1xuICBpZiAoK0FOR1VMQVJfVkVSU0lPTi5tYWpvciA8IDE5KSB7XG4gICAgcmV0dXJuIG5ldyBDZGtWaXJ0dWFsRm9yT2Y8VD4oXG4gICAgICB2aWV3Q29udGFpbmVyUmVmLFxuICAgICAgdGVtcGxhdGVSZWYsXG4gICAgICBpdGVyYWJsZURpZmZlcnMsXG4gICAgICB2aWV3UmVwZWF0ZXIsXG4gICAgICB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQsXG4gICAgICBuZ1pvbmVcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHZpcnR1YWxTY3JvbGxWaWV3cG9ydEluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQsIHVzZVZhbHVlOiB2aXJ0dWFsU2Nyb2xsVmlld3BvcnQgfV0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBjZGtWaXJ0dWFsRm9ySW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB2aXJ0dWFsU2Nyb2xsVmlld3BvcnRJbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IFZpZXdDb250YWluZXJSZWYsIHVzZVZhbHVlOiB2aWV3Q29udGFpbmVyUmVmIH0sXG4gICAgICAgIHsgcHJvdmlkZTogVGVtcGxhdGVSZWYsIHVzZVZhbHVlOiB0ZW1wbGF0ZVJlZiB9LFxuICAgICAgICB7IHByb3ZpZGU6IEl0ZXJhYmxlRGlmZmVycywgdXNlVmFsdWU6IGl0ZXJhYmxlRGlmZmVycyB9LFxuICAgICAgICB7IHByb3ZpZGU6IF9WSUVXX1JFUEVBVEVSX1NUUkFURUdZLCB1c2VWYWx1ZTogdmlld1JlcGVhdGVyIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTmdab25lLCB1c2VWYWx1ZTogbmdab25lIH0sXG4gICAgICAgIHsgcHJvdmlkZTogQ2RrVmlydHVhbEZvck9mLCB1c2VDbGFzczogQ2RrVmlydHVhbEZvck9mIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNka1ZpcnR1YWxGb3JJbmplY3Rvci5nZXQoQ2RrVmlydHVhbEZvck9mKTtcbiAgfVxufVxuIl19