@coreui/angular-pro 5.0.0-alpha.9 → 5.0.0-next.16

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 (294) hide show
  1. package/README.md +1 -1
  2. package/esm2022/lib/accordion/accordion/accordion.component.mjs +23 -17
  3. package/esm2022/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
  4. package/esm2022/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
  5. package/esm2022/lib/accordion/accordion.module.mjs +4 -4
  6. package/esm2022/lib/accordion/accordion.service.mjs +4 -4
  7. package/esm2022/lib/alert/alert-heading.directive.mjs +3 -3
  8. package/esm2022/lib/alert/alert-link.directive.mjs +3 -3
  9. package/esm2022/lib/alert/alert.component.mjs +32 -40
  10. package/esm2022/lib/alert/alert.module.mjs +4 -4
  11. package/esm2022/lib/avatar/avatar.component.mjs +3 -3
  12. package/esm2022/lib/avatar/avatar.module.mjs +4 -4
  13. package/esm2022/lib/backdrop/backdrop.service.mjs +4 -4
  14. package/esm2022/lib/badge/badge.component.mjs +3 -3
  15. package/esm2022/lib/badge/badge.module.mjs +4 -4
  16. package/esm2022/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
  17. package/esm2022/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +9 -8
  18. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +6 -6
  19. package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +4 -4
  20. package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +4 -4
  21. package/esm2022/lib/button/button-close.directive.mjs +3 -3
  22. package/esm2022/lib/button/button.directive.mjs +3 -3
  23. package/esm2022/lib/button/button.module.mjs +4 -4
  24. package/esm2022/lib/button-group/button-group/button-group.component.mjs +3 -3
  25. package/esm2022/lib/button-group/button-group.module.mjs +4 -4
  26. package/esm2022/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
  27. package/esm2022/lib/calendar/calendar/calendar-class-view.pipe.mjs +3 -3
  28. package/esm2022/lib/calendar/calendar/calendar.component.mjs +6 -6
  29. package/esm2022/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +3 -3
  30. package/esm2022/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +3 -3
  31. package/esm2022/lib/calendar/calendar-month/calendar-class-row.pipe.mjs +3 -3
  32. package/esm2022/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +3 -3
  33. package/esm2022/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +3 -3
  34. package/esm2022/lib/calendar/calendar-month/calendar-day.directive.mjs +4 -4
  35. package/esm2022/lib/calendar/calendar-month/calendar-day.pipe.mjs +3 -3
  36. package/esm2022/lib/calendar/calendar-month/calendar-month.component.mjs +7 -12
  37. package/esm2022/lib/calendar/calendar-month/calendar-row.directive.mjs +4 -4
  38. package/esm2022/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +3 -3
  39. package/esm2022/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +6 -6
  40. package/esm2022/lib/calendar/calendar.module.mjs +4 -4
  41. package/esm2022/lib/calendar/calendar.service.mjs +4 -4
  42. package/esm2022/lib/calendar/calendar.utils.mjs +1 -1
  43. package/esm2022/lib/callout/callout.component.mjs +3 -3
  44. package/esm2022/lib/callout/callout.module.mjs +4 -4
  45. package/esm2022/lib/card/card-body.component.mjs +3 -3
  46. package/esm2022/lib/card/card-footer.component.mjs +3 -3
  47. package/esm2022/lib/card/card-group.component.mjs +3 -3
  48. package/esm2022/lib/card/card-header-actions.component.mjs +3 -3
  49. package/esm2022/lib/card/card-header.component.mjs +3 -3
  50. package/esm2022/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
  51. package/esm2022/lib/card/card-img.directive.mjs +3 -3
  52. package/esm2022/lib/card/card-link.directive.mjs +3 -3
  53. package/esm2022/lib/card/card-subtitle.directive.mjs +3 -3
  54. package/esm2022/lib/card/card-text.directive.mjs +3 -3
  55. package/esm2022/lib/card/card-title.directive.mjs +3 -3
  56. package/esm2022/lib/card/card.component.mjs +3 -3
  57. package/esm2022/lib/card/card.module.mjs +4 -4
  58. package/esm2022/lib/carousel/carousel/carousel.component.mjs +4 -4
  59. package/esm2022/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
  60. package/esm2022/lib/carousel/carousel-control/carousel-control.component.mjs +5 -6
  61. package/esm2022/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +5 -6
  62. package/esm2022/lib/carousel/carousel-inner/carousel-inner.component.mjs +4 -4
  63. package/esm2022/lib/carousel/carousel-item/carousel-item.component.mjs +9 -10
  64. package/esm2022/lib/carousel/carousel-state.mjs +4 -4
  65. package/esm2022/lib/carousel/carousel.config.mjs +3 -3
  66. package/esm2022/lib/carousel/carousel.module.mjs +4 -4
  67. package/esm2022/lib/carousel/carousel.service.mjs +3 -3
  68. package/esm2022/lib/collapse/collapse.directive.mjs +32 -42
  69. package/esm2022/lib/collapse/collapse.module.mjs +4 -4
  70. package/esm2022/lib/date-picker/date-picker.component.mjs +8 -10
  71. package/esm2022/lib/date-picker/date-picker.module.mjs +4 -4
  72. package/esm2022/lib/date-range-picker/date-range-picker/custom-range-key.pipe.mjs +3 -3
  73. package/esm2022/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +8 -10
  74. package/esm2022/lib/date-range-picker/date-range-picker.module.mjs +4 -4
  75. package/esm2022/lib/dropdown/dropdown/dropdown.component.mjs +30 -38
  76. package/esm2022/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +4 -4
  77. package/esm2022/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
  78. package/esm2022/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
  79. package/esm2022/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
  80. package/esm2022/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +4 -4
  81. package/esm2022/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +4 -4
  82. package/esm2022/lib/dropdown/dropdown.module.mjs +4 -4
  83. package/esm2022/lib/dropdown/dropdown.service.mjs +3 -3
  84. package/esm2022/lib/element-cover/element-cover.component.mjs +6 -6
  85. package/esm2022/lib/element-cover/element-cover.module.mjs +4 -4
  86. package/esm2022/lib/footer/footer.component.mjs +3 -3
  87. package/esm2022/lib/footer/footer.module.mjs +4 -4
  88. package/esm2022/lib/form/form/form.directive.mjs +3 -3
  89. package/esm2022/lib/form/form-check/form-check-input.directive.mjs +12 -10
  90. package/esm2022/lib/form/form-check/form-check-label.directive.mjs +3 -3
  91. package/esm2022/lib/form/form-check/form-check.component.mjs +3 -3
  92. package/esm2022/lib/form/form-control/form-control.directive.mjs +4 -4
  93. package/esm2022/lib/form/form-feedback/form-feedback.component.mjs +3 -3
  94. package/esm2022/lib/form/form-floating/form-floating.directive.mjs +3 -3
  95. package/esm2022/lib/form/form-label/form-label.directive.mjs +3 -3
  96. package/esm2022/lib/form/form-select/form-select.directive.mjs +3 -3
  97. package/esm2022/lib/form/form-text/form-text.directive.mjs +3 -3
  98. package/esm2022/lib/form/form.module.mjs +4 -4
  99. package/esm2022/lib/form/input-group/input-group.component.mjs +3 -3
  100. package/esm2022/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
  101. package/esm2022/lib/grid/col.component.mjs +3 -3
  102. package/esm2022/lib/grid/col.directive.mjs +4 -4
  103. package/esm2022/lib/grid/container.component.mjs +3 -3
  104. package/esm2022/lib/grid/grid.module.mjs +4 -4
  105. package/esm2022/lib/grid/gutter.directive.mjs +4 -4
  106. package/esm2022/lib/grid/row.component.mjs +3 -3
  107. package/esm2022/lib/grid/row.directive.mjs +4 -4
  108. package/esm2022/lib/header/header/header.component.mjs +3 -3
  109. package/esm2022/lib/header/header-brand/header-brand.component.mjs +3 -3
  110. package/esm2022/lib/header/header-divider/header-divider.component.mjs +3 -3
  111. package/esm2022/lib/header/header-nav/header-nav.component.mjs +3 -3
  112. package/esm2022/lib/header/header-text/header-text.component.mjs +3 -3
  113. package/esm2022/lib/header/header-toggler/header-toggler.directive.mjs +4 -4
  114. package/esm2022/lib/header/header.module.mjs +4 -4
  115. package/esm2022/lib/image/img.directive.mjs +3 -3
  116. package/esm2022/lib/image/img.module.mjs +4 -4
  117. package/esm2022/lib/list-group/list-group-item.directive.mjs +3 -3
  118. package/esm2022/lib/list-group/list-group.directive.mjs +3 -3
  119. package/esm2022/lib/list-group/list-group.module.mjs +4 -4
  120. package/esm2022/lib/loading-button/loading-button.component.mjs +17 -23
  121. package/esm2022/lib/loading-button/loading-button.module.mjs +4 -4
  122. package/esm2022/lib/modal/modal/modal.component.mjs +4 -4
  123. package/esm2022/lib/modal/modal-body/modal-body.component.mjs +3 -3
  124. package/esm2022/lib/modal/modal-content/modal-content.component.mjs +3 -3
  125. package/esm2022/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
  126. package/esm2022/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
  127. package/esm2022/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
  128. package/esm2022/lib/modal/modal-header/modal-header.component.mjs +3 -3
  129. package/esm2022/lib/modal/modal-title/modal-title.directive.mjs +3 -3
  130. package/esm2022/lib/modal/modal.module.mjs +4 -4
  131. package/esm2022/lib/modal/modal.service.mjs +3 -3
  132. package/esm2022/lib/multi-select/multi-select/multi-select-search.directive.mjs +4 -4
  133. package/esm2022/lib/multi-select/multi-select/multi-select.component.mjs +65 -33
  134. package/esm2022/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +10 -9
  135. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
  136. package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +8 -14
  137. package/esm2022/lib/multi-select/multi-select-option/multi-select-option.component.mjs +4 -4
  138. package/esm2022/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +4 -4
  139. package/esm2022/lib/multi-select/multi-select.module.mjs +4 -4
  140. package/esm2022/lib/multi-select/multi-select.service.mjs +3 -3
  141. package/esm2022/lib/nav/nav-item.component.mjs +3 -3
  142. package/esm2022/lib/nav/nav-link.directive.mjs +3 -3
  143. package/esm2022/lib/nav/nav.component.mjs +3 -3
  144. package/esm2022/lib/nav/nav.module.mjs +4 -4
  145. package/esm2022/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
  146. package/esm2022/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
  147. package/esm2022/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
  148. package/esm2022/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +4 -4
  149. package/esm2022/lib/navbar/navbar.component.mjs +4 -4
  150. package/esm2022/lib/navbar/navbar.module.mjs +4 -4
  151. package/esm2022/lib/offcanvas/offcanvas/offcanvas.component.mjs +4 -4
  152. package/esm2022/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
  153. package/esm2022/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
  154. package/esm2022/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
  155. package/esm2022/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
  156. package/esm2022/lib/offcanvas/offcanvas.module.mjs +4 -4
  157. package/esm2022/lib/offcanvas/offcanvas.service.mjs +3 -3
  158. package/esm2022/lib/pagination/page-item/page-item.component.mjs +3 -3
  159. package/esm2022/lib/pagination/page-item/page-item.directive.mjs +4 -4
  160. package/esm2022/lib/pagination/page-link/page-link.directive.mjs +3 -3
  161. package/esm2022/lib/pagination/pagination/pagination.component.mjs +3 -3
  162. package/esm2022/lib/pagination/pagination.module.mjs +4 -4
  163. package/esm2022/lib/placeholder/placeholder-animation.directive.mjs +3 -3
  164. package/esm2022/lib/placeholder/placeholder.directive.mjs +13 -20
  165. package/esm2022/lib/placeholder/placeholder.module.mjs +4 -4
  166. package/esm2022/lib/popover/popover/popover.component.mjs +4 -4
  167. package/esm2022/lib/popover/popover.directive.mjs +4 -4
  168. package/esm2022/lib/popover/popover.module.mjs +4 -4
  169. package/esm2022/lib/progress/progress-bar.component.mjs +21 -94
  170. package/esm2022/lib/progress/progress-bar.directive.mjs +112 -0
  171. package/esm2022/lib/progress/progress-stacked.component.mjs +19 -0
  172. package/esm2022/lib/progress/progress.component.mjs +24 -27
  173. package/esm2022/lib/progress/progress.module.mjs +19 -9
  174. package/esm2022/lib/progress/progress.type.mjs +1 -1
  175. package/esm2022/lib/progress/public_api.mjs +3 -1
  176. package/esm2022/lib/services/class-toggle.service.mjs +4 -4
  177. package/esm2022/lib/services/color-mode.service.mjs +17 -26
  178. package/esm2022/lib/services/in-memory-storage.service.mjs +3 -3
  179. package/esm2022/lib/services/intersection.service.mjs +4 -4
  180. package/esm2022/lib/services/listeners.service.mjs +4 -4
  181. package/esm2022/lib/services/local-storage.service.mjs +3 -3
  182. package/esm2022/lib/services/public_api.mjs +1 -1
  183. package/esm2022/lib/shared/html-attr.directive.mjs +4 -4
  184. package/esm2022/lib/shared/shared.module.mjs +4 -4
  185. package/esm2022/lib/shared/template-id.directive.mjs +3 -3
  186. package/esm2022/lib/shared/theme.directive.mjs +6 -5
  187. package/esm2022/lib/sidebar/sidebar/sidebar.component.mjs +36 -48
  188. package/esm2022/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +4 -4
  189. package/esm2022/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +6 -6
  190. package/esm2022/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  191. package/esm2022/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  192. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
  193. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
  194. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +3 -3
  195. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
  196. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +4 -4
  197. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +6 -6
  198. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +21 -22
  199. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
  200. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +4 -4
  201. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +10 -15
  202. package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +7 -7
  203. package/esm2022/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
  204. package/esm2022/lib/sidebar/sidebar-toggler/sidebar-toggler.directive.mjs +3 -3
  205. package/esm2022/lib/sidebar/sidebar.module.mjs +4 -4
  206. package/esm2022/lib/sidebar/sidebar.service.mjs +3 -3
  207. package/esm2022/lib/smart-pagination/smart-pagination.component.mjs +22 -26
  208. package/esm2022/lib/smart-pagination/smart-pagination.module.mjs +4 -4
  209. package/esm2022/lib/smart-table/smart-table/smart-table.component.mjs +8 -11
  210. package/esm2022/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +3 -3
  211. package/esm2022/lib/smart-table/smart-table-filter/filter-input.directive.mjs +4 -4
  212. package/esm2022/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +6 -6
  213. package/esm2022/lib/smart-table/smart-table-head/smart-table-column-label.pipe.mjs +3 -3
  214. package/esm2022/lib/smart-table/smart-table-head/smart-table-head.component.mjs +9 -14
  215. package/esm2022/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +5 -7
  216. package/esm2022/lib/smart-table/smart-table.module.mjs +4 -4
  217. package/esm2022/lib/smart-table/smart-table.type.mjs +1 -1
  218. package/esm2022/lib/smart-table/smart-table.utils.mjs +1 -1
  219. package/esm2022/lib/spinner/spinner.component.mjs +3 -3
  220. package/esm2022/lib/spinner/spinner.module.mjs +4 -4
  221. package/esm2022/lib/table/table-active.directive.mjs +3 -3
  222. package/esm2022/lib/table/table-color.directive.mjs +3 -3
  223. package/esm2022/lib/table/table.directive.mjs +4 -4
  224. package/esm2022/lib/table/table.module.mjs +4 -4
  225. package/esm2022/lib/tabs/tab-content/tab-content.component.mjs +9 -9
  226. package/esm2022/lib/tabs/tab-content-ref.directive.mjs +14 -11
  227. package/esm2022/lib/tabs/tab-pane/tab-pane.component.mjs +7 -8
  228. package/esm2022/lib/tabs/tab.service.mjs +3 -3
  229. package/esm2022/lib/tabs/tabs.module.mjs +4 -4
  230. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +14 -13
  231. package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +14 -13
  232. package/esm2022/lib/time-picker/time-picker.component.mjs +7 -9
  233. package/esm2022/lib/time-picker/time-picker.module.mjs +6 -8
  234. package/esm2022/lib/time-picker/time.utils.mjs +1 -1
  235. package/esm2022/lib/toast/toast/toast.component.mjs +13 -11
  236. package/esm2022/lib/toast/toast-body/toast-body.component.mjs +3 -3
  237. package/esm2022/lib/toast/toast-close.directive.mjs +3 -3
  238. package/esm2022/lib/toast/toast-header/toast-header.component.mjs +5 -6
  239. package/esm2022/lib/toast/toast.module.mjs +4 -4
  240. package/esm2022/lib/toast/toaster/toaster-host.directive.mjs +3 -3
  241. package/esm2022/lib/toast/toaster/toaster.component.mjs +4 -4
  242. package/esm2022/lib/toast/toaster/toaster.service.mjs +3 -3
  243. package/esm2022/lib/tooltip/tooltip/tooltip.component.mjs +4 -4
  244. package/esm2022/lib/tooltip/tooltip.directive.mjs +4 -4
  245. package/esm2022/lib/tooltip/tooltip.module.mjs +4 -4
  246. package/esm2022/lib/utilities/align.directive.mjs +3 -3
  247. package/esm2022/lib/utilities/bg-color.directive.mjs +3 -3
  248. package/esm2022/lib/utilities/border.directive.mjs +4 -4
  249. package/esm2022/lib/utilities/rounded.directive.mjs +4 -4
  250. package/esm2022/lib/utilities/shadow-on-scroll.directive.mjs +4 -4
  251. package/esm2022/lib/utilities/text-color.directive.mjs +3 -3
  252. package/esm2022/lib/utilities/utilities.module.mjs +4 -4
  253. package/esm2022/lib/widget/widget-stat-a/widget-stat-a.component.mjs +6 -6
  254. package/esm2022/lib/widget/widget-stat-b/widget-stat-b.component.mjs +6 -6
  255. package/esm2022/lib/widget/widget-stat-c/widget-stat-c.component.mjs +7 -7
  256. package/esm2022/lib/widget/widget-stat-d/widget-stat-d.component.mjs +6 -6
  257. package/esm2022/lib/widget/widget-stat-e/widget-stat-e.component.mjs +6 -6
  258. package/esm2022/lib/widget/widget-stat-f/widget-stat-f.component.mjs +6 -6
  259. package/esm2022/lib/widget/widget.module.mjs +4 -4
  260. package/fesm2022/coreui-angular-pro.mjs +1281 -1254
  261. package/fesm2022/coreui-angular-pro.mjs.map +1 -1
  262. package/lib/accordion/accordion/accordion.component.d.ts +4 -6
  263. package/lib/alert/alert.component.d.ts +8 -12
  264. package/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.d.ts +1 -0
  265. package/lib/carousel/carousel-item/carousel-item.component.d.ts +1 -2
  266. package/lib/collapse/collapse.directive.d.ts +13 -13
  267. package/lib/dropdown/dropdown/dropdown.component.d.ts +8 -12
  268. package/lib/form/form-check/form-check-input.directive.d.ts +4 -3
  269. package/lib/loading-button/loading-button.component.d.ts +4 -5
  270. package/lib/multi-select/multi-select/multi-select.component.d.ts +6 -3
  271. package/lib/multi-select/multi-select-native-select/multi-select-native-select.component.d.ts +3 -1
  272. package/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.d.ts +2 -5
  273. package/lib/placeholder/placeholder.directive.d.ts +3 -7
  274. package/lib/progress/progress-bar.component.d.ts +4 -50
  275. package/lib/progress/progress-bar.directive.d.ts +58 -0
  276. package/lib/progress/progress-stacked.component.d.ts +7 -0
  277. package/lib/progress/progress.component.d.ts +9 -16
  278. package/lib/progress/progress.module.d.ts +3 -1
  279. package/lib/progress/progress.type.d.ts +12 -13
  280. package/lib/progress/public_api.d.ts +3 -1
  281. package/lib/services/color-mode.service.d.ts +4 -2
  282. package/lib/services/public_api.d.ts +1 -1
  283. package/lib/sidebar/sidebar/sidebar.component.d.ts +13 -11
  284. package/lib/smart-pagination/smart-pagination.component.d.ts +4 -8
  285. package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +1 -0
  286. package/lib/smart-table/smart-table.type.d.ts +3 -2
  287. package/lib/smart-table/smart-table.utils.d.ts +1 -1
  288. package/lib/tabs/tab-content/tab-content.component.d.ts +1 -0
  289. package/lib/tabs/tab-content-ref.directive.d.ts +4 -2
  290. package/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.d.ts +2 -0
  291. package/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.d.ts +2 -0
  292. package/lib/toast/toast/toast.component.d.ts +3 -2
  293. package/lib/widget/widget-stat-c/widget-stat-c.component.d.ts +9 -10
  294. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';
2
- import { AsyncPipe, NgClass, NgIf } from '@angular/common';
2
+ import { AsyncPipe, NgClass } from '@angular/common';
3
3
  import { FormControlDirective, FormLabelDirective } from '../../form';
4
4
  import { FilterInputDirective } from './filter-input.directive';
5
5
  import * as i0 from "@angular/core";
@@ -24,12 +24,12 @@ export class SmartTableFilterComponent {
24
24
  };
25
25
  }
26
26
  ;
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SmartTableFilterComponent, isStandalone: true, selector: "c-smart-table-filter", inputs: { filterLabel: "filterLabel", filterPlaceholder: "filterPlaceholder", sizing: "sizing" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label *ngIf=\"!!filterLabel\" [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{ filterLabel }}\n</label>\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n autocomplete=\"off\"\n cFormControl\n size=\"10\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: FormControlDirective, selector: "input[cFormControl], textarea[cFormControl]", inputs: ["sizing", "valid", "type", "plaintext"] }, { kind: "directive", type: FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.1", type: SmartTableFilterComponent, isStandalone: true, selector: "c-smart-table-filter", inputs: { filterLabel: "filterLabel", filterPlaceholder: "filterPlaceholder", sizing: "sizing" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "@if (!!filterLabel) {\n <label [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{ filterLabel }}\n </label>\n}\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n autocomplete=\"off\"\n cFormControl\n size=\"10\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: FormControlDirective, selector: "input[cFormControl], textarea[cFormControl]", inputs: ["sizing", "valid", "type", "plaintext"] }, { kind: "directive", type: FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableFilterComponent, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableFilterComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: 'c-smart-table-filter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [FormControlDirective, FormLabelDirective, NgClass, NgIf, AsyncPipe], template: "<label *ngIf=\"!!filterLabel\" [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{ filterLabel }}\n</label>\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n autocomplete=\"off\"\n cFormControl\n size=\"10\"\n />\n</div>\n" }]
32
+ args: [{ selector: 'c-smart-table-filter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [FormControlDirective, FormLabelDirective, NgClass, AsyncPipe], template: "@if (!!filterLabel) {\n <label [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{ filterLabel }}\n </label>\n}\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n autocomplete=\"off\"\n cFormControl\n size=\"10\"\n />\n</div>\n" }]
33
33
  }], ctorParameters: () => [], propDecorators: { filterLabel: [{
34
34
  type: Input
35
35
  }], filterPlaceholder: [{
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
40
40
  type: HostBinding,
41
41
  args: ['class']
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUtZmlsdGVyL3NtYXJ0LXRhYmxlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWZpbHRlci9zbWFydC10YWJsZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBZ0JoRSxNQUFNLE9BQU8seUJBQXlCO0lBRXBDO1FBRVMsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDckQsV0FBTSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFFM0MsZ0JBQVcsR0FBVyxTQUFTLENBQUM7UUFDaEMsc0JBQWlCLEdBQVcsUUFBUSxDQUFDO0lBTi9CLENBQUM7SUFFUCxxQkFBcUIsQ0FBZ0M7SUFPOUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJO1lBQ1QsTUFBTSxFQUFFLElBQUk7U0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU87WUFDTCxnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLENBQUMsa0JBQWtCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTTtTQUNqRCxDQUFDO0lBQ0osQ0FBQztJQUFBLENBQUM7OEdBeEJTLHlCQUF5QjtrR0FBekIseUJBQXlCLHlPQ3BCdEMsZ1ZBYUEsNENERlksb0JBQW9CLDBJQUFFLGtCQUFrQixtRkFBRSxPQUFPLG9GQUFFLElBQUksd0ZBQUUsU0FBUzs7MkZBU2pFLHlCQUF5QjtrQkFkckMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBRWYsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQzt3REFnQnBFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFHRixXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIE5nQ2xhc3MsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBGb3JtQ29udHJvbERpcmVjdGl2ZSwgRm9ybUxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybSc7XG5pbXBvcnQgeyBGaWx0ZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vZmlsdGVyLWlucHV0LmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Mtc21hcnQtdGFibGUtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRm9ybUNvbnRyb2xEaXJlY3RpdmUsIEZvcm1MYWJlbERpcmVjdGl2ZSwgTmdDbGFzcywgTmdJZiwgQXN5bmNQaXBlXVxuICAvLyBob3N0RGlyZWN0aXZlczogW1xuICAvLyAgIHtcbiAgLy8gICAgIGRpcmVjdGl2ZTogRmlsdGVySW5wdXREaXJlY3RpdmUsXG4gIC8vICAgICBpbnB1dHM6IFsndmFsdWUnLCAnZGVsYXknLCAnb25FdmVudCddLFxuICAvLyAgICAgb3V0cHV0czogWyd2YWx1ZUNoYW5nZSddXG4gIC8vICAgfVxuICAvLyBdXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVGaWx0ZXJDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICByZWFkb25seSAjZmlsdGVySW5wdXREaXJlY3RpdmUgPSBpbmplY3QoRmlsdGVySW5wdXREaXJlY3RpdmUpO1xuICByZWFkb25seSB2YWx1ZSQgPSB0aGlzLiNmaWx0ZXJJbnB1dERpcmVjdGl2ZS52YWx1ZSQ7XG5cbiAgQElucHV0KCkgZmlsdGVyTGFiZWw6IHN0cmluZyA9ICdGaWx0ZXI6JztcbiAgQElucHV0KCkgZmlsdGVyUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdGaWx0ZXInO1xuICBASW5wdXQoKSBzaXppbmc/OiAnc20nIHwgJ2xnJztcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJvdzogdHJ1ZSxcbiAgICAgICdtYi0yJzogdHJ1ZVxuICAgIH07XG4gIH1cblxuICBnZXQgbGFiZWxDbGFzc2VzKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnY29sLWZvcm0tbGFiZWwnOiB0cnVlLFxuICAgICAgW2Bjb2wtZm9ybS1sYWJlbC0ke3RoaXMuc2l6aW5nfWBdOiAhIXRoaXMuc2l6aW5nXG4gICAgfTtcbiAgfTtcbn1cbiIsIjxsYWJlbCAqbmdJZj1cIiEhZmlsdGVyTGFiZWxcIiBbbmdDbGFzc109XCJsYWJlbENsYXNzZXNcIiBjTGFiZWw9XCJjb2xcIiBjbGFzcz1cImNvbC1hdXRvXCI+XG4gIHt7IGZpbHRlckxhYmVsIH19XG48L2xhYmVsPlxuPGRpdiBjbGFzcz1cImNvbC1hdXRvXCI+XG4gIDxpbnB1dFxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWx0ZXJQbGFjZWhvbGRlclwiXG4gICAgW3NpemluZ109XCJzaXppbmdcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZSQgfCBhc3luY1wiXG4gICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICBjRm9ybUNvbnRyb2xcbiAgICBzaXplPVwiMTBcIlxuICAvPlxuPC9kaXY+XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUtZmlsdGVyL3NtYXJ0LXRhYmxlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWZpbHRlci9zbWFydC10YWJsZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFnQmhFLE1BQU0sT0FBTyx5QkFBeUI7SUFFcEM7UUFFUywwQkFBcUIsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNyRCxXQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQztRQUUzQyxnQkFBVyxHQUFXLFNBQVMsQ0FBQztRQUNoQyxzQkFBaUIsR0FBVyxRQUFRLENBQUM7SUFOL0IsQ0FBQztJQUVQLHFCQUFxQixDQUFnQztJQU85RCxJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUk7WUFDVCxNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTztZQUNMLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNO1NBQ2pELENBQUM7SUFDSixDQUFDO0lBQUEsQ0FBQzs4R0F4QlMseUJBQXlCO2tHQUF6Qix5QkFBeUIseU9DcEJ0Qyx3VkFlQSw0Q0RKWSxvQkFBb0IsMElBQUUsa0JBQWtCLG1GQUFFLE9BQU8sK0VBQUUsU0FBUzs7MkZBUzNELHlCQUF5QjtrQkFkckMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBRWYsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDO3dEQWdCOUQsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IEZvcm1Db250cm9sRGlyZWN0aXZlLCBGb3JtTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9mb3JtJztcbmltcG9ydCB7IEZpbHRlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi9maWx0ZXItaW5wdXQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zbWFydC10YWJsZS1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtGb3JtQ29udHJvbERpcmVjdGl2ZSwgRm9ybUxhYmVsRGlyZWN0aXZlLCBOZ0NsYXNzLCBBc3luY1BpcGVdXG4gIC8vIGhvc3REaXJlY3RpdmVzOiBbXG4gIC8vICAge1xuICAvLyAgICAgZGlyZWN0aXZlOiBGaWx0ZXJJbnB1dERpcmVjdGl2ZSxcbiAgLy8gICAgIGlucHV0czogWyd2YWx1ZScsICdkZWxheScsICdvbkV2ZW50J10sXG4gIC8vICAgICBvdXRwdXRzOiBbJ3ZhbHVlQ2hhbmdlJ11cbiAgLy8gICB9XG4gIC8vIF1cbn0pXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZUZpbHRlckNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHJlYWRvbmx5ICNmaWx0ZXJJbnB1dERpcmVjdGl2ZSA9IGluamVjdChGaWx0ZXJJbnB1dERpcmVjdGl2ZSk7XG4gIHJlYWRvbmx5IHZhbHVlJCA9IHRoaXMuI2ZpbHRlcklucHV0RGlyZWN0aXZlLnZhbHVlJDtcblxuICBASW5wdXQoKSBmaWx0ZXJMYWJlbDogc3RyaW5nID0gJ0ZpbHRlcjonO1xuICBASW5wdXQoKSBmaWx0ZXJQbGFjZWhvbGRlcjogc3RyaW5nID0gJ0ZpbHRlcic7XG4gIEBJbnB1dCgpIHNpemluZz86ICdzbScgfCAnbGcnO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgcm93OiB0cnVlLFxuICAgICAgJ21iLTInOiB0cnVlXG4gICAgfTtcbiAgfVxuXG4gIGdldCBsYWJlbENsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdjb2wtZm9ybS1sYWJlbCc6IHRydWUsXG4gICAgICBbYGNvbC1mb3JtLWxhYmVsLSR7dGhpcy5zaXppbmd9YF06ICEhdGhpcy5zaXppbmdcbiAgICB9O1xuICB9O1xufVxuIiwiQGlmICghIWZpbHRlckxhYmVsKSB7XG4gIDxsYWJlbCBbbmdDbGFzc109XCJsYWJlbENsYXNzZXNcIiBjTGFiZWw9XCJjb2xcIiBjbGFzcz1cImNvbC1hdXRvXCI+XG4gICAge3sgZmlsdGVyTGFiZWwgfX1cbiAgPC9sYWJlbD5cbn1cbjxkaXYgY2xhc3M9XCJjb2wtYXV0b1wiPlxuICA8aW5wdXRcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmlsdGVyUGxhY2Vob2xkZXJcIlxuICAgIFtzaXppbmddPVwic2l6aW5nXCJcbiAgICBbdmFsdWVdPVwidmFsdWUkIHwgYXN5bmNcIlxuICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgY0Zvcm1Db250cm9sXG4gICAgc2l6ZT1cIjEwXCJcbiAgLz5cbjwvZGl2PlxuIl19
@@ -5,10 +5,10 @@ export class SmartTableColumnLabelPipe {
5
5
  transform(column, ...args) {
6
6
  return getColumnLabel(column);
7
7
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableColumnLabelPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: SmartTableColumnLabelPipe, isStandalone: true, name: "columnLabel" }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableColumnLabelPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.1.1", ngImport: i0, type: SmartTableColumnLabelPipe, isStandalone: true, name: "columnLabel" }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableColumnLabelPipe, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableColumnLabelPipe, decorators: [{
12
12
  type: Pipe,
13
13
  args: [{
14
14
  name: 'columnLabel',
@@ -1,6 +1,5 @@
1
1
  import { booleanAttribute, ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, signal } from '@angular/core';
2
- import { AsyncPipe, NgClass, NgForOf, NgIf, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgTemplateOutlet } from '@angular/common';
3
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { AsyncPipe, NgClass, NgStyle, NgTemplateOutlet } from '@angular/common';
4
3
  import { BehaviorSubject } from 'rxjs';
5
4
  import { getColumns, getTableHeaderCellClass, getTableHeaderCellProps, getTableHeaderCellStyles } from '../smart-table.utils';
6
5
  import { HtmlAttributesDirective } from '../../shared';
@@ -50,7 +49,7 @@ export class SmartTableHeadComponent {
50
49
  #selectedAllPreviousValue;
51
50
  set selectedAll(value) {
52
51
  this.indeterminate$.next(value === 'indeterminate');
53
- this.#selectedAll = value === 'indeterminate' ? false : coerceBooleanProperty(value);
52
+ this.#selectedAll = value === 'indeterminate' ? false : booleanAttribute(value);
54
53
  if (value !== 'indeterminate') {
55
54
  this.#selectedAllPreviousValue = this.#selectedAll;
56
55
  }
@@ -177,10 +176,10 @@ export class SmartTableHeadComponent {
177
176
  const sort = this.getColumnSorterState(column);
178
177
  return sort === 'asc' ? 'ascending' : sort === 'desc' ? 'descending' : null;
179
178
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
181
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.8", type: SmartTableHeadComponent, isStandalone: true, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", columnGroups: "columnGroups", selectable: "selectable", selectAll: ["selectAll", "selectAll", booleanAttribute], selectedAll: "selectedAll", showGroups: ["showGroups", "showGroups", booleanAttribute], sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates", columnLabelTemplates: "columnLabelTemplates", summaryRowTemplate: "summaryRowTemplate" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<ng-template [ngIf]=\"component==='tfoot'\">\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n</ng-template>\n\n<ng-template [ngIf]=\"showGroups\">\n <tr *ngFor=\"let row of columnGroups$() let i = index\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let cell of row; let i = index\"\n [colSpan]=\"cell.colspan ?? 1\"\n [cHtmlAttr]=\"getTableHeaderCellProps(cell)\"\n [cTableColor]=\"tableHeaderCellColor(cell)\"\n [ngStyle]=\"getTableHeaderCellStyles(cell, columnSorter)\"\n >\n {{cell.label}}\n </th>\n </tr>\n</ng-template>\n\n<tr>\n <th *ngIf=\"selectable\">\n <input\n cFormCheckInput\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [indeterminate]=\"indeterminate$ | async\"\n type=\"checkbox\"\n [disabled]=\"!selectAll\"\n autocomplete=\"off\"\n >\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n (keydown)=\"handleSortKeyDown($event, column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [attr.aria-sort]=\"getAriaSort(column)\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n [ngClass]=\"getTableHeaderCellClass(column)\"\n [tabindex]=\"columnSorter && columnSorterEnabled(column) ? 0 : -1\"\n >\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"columnLabelTemplates[getColumnLabel(column)] ?? defaultColumnLabel; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n\n<ng-template #defaultColumnLabel let-column>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n</ng-template>\n\n<ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "directive", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid", "checked"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "component", type: SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }, { kind: "directive", type: TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SmartTableColumnLabelPipe, name: "columnLabel" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
180
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.1", type: SmartTableHeadComponent, isStandalone: true, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", columnGroups: "columnGroups", selectable: ["selectable", "selectable", booleanAttribute], selectAll: ["selectAll", "selectAll", booleanAttribute], selectedAll: "selectedAll", showGroups: ["showGroups", "showGroups", booleanAttribute], sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates", columnLabelTemplates: "columnLabelTemplates", summaryRowTemplate: "summaryRowTemplate" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "@if (component === 'tfoot') {\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n}\n@if (showGroups) {\n @for (row of columnGroups$(); track row; let i = $index) {\n <tr>\n @if (selectable) {\n <th></th>\n }\n @for (cell of row; track cell; let i = $index) {\n <th [cHtmlAttr]=\"getTableHeaderCellProps(cell)\"\n [cTableColor]=\"tableHeaderCellColor(cell)\"\n [colSpan]=\"cell.colspan ?? 1\"\n [ngStyle]=\"getTableHeaderCellStyles(cell, columnSorter)\"\n >\n {{ cell.label }}\n </th>\n }\n </tr>\n }\n}\n\n<tr>\n @if (selectable) {\n <th>\n <input\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [disabled]=\"!selectAll\"\n [indeterminate]=\"indeterminate$ | async\"\n autocomplete=\"off\"\n cFormCheckInput\n type=\"checkbox\"\n >\n </th>\n }\n @for (column of columns; track column; let i = $index) {\n <th\n (click)=\"handleSortClick(column, i)\"\n (keydown)=\"handleSortKeyDown($event, column, i)\"\n [attr.aria-sort]=\"getAriaSort(column)\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngClass]=\"getTableHeaderCellClass(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n [tabindex]=\"columnSorter && columnSorterEnabled(column) ? 0 : -1\"\n >\n @if (columnSorter && columnSorterEnabled(column)) {\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n }\n <ng-container\n *ngTemplateOutlet=\"columnLabelTemplates[getColumnLabel(column)] ?? defaultColumnLabel; context: {$implicit: column, header: this}\"\n />\n </th>\n }\n</tr>\n@if (columnFilter) {\n <tr>\n @if (selectable) {\n <th></th>\n }\n @for (column of columns; track column; let i = $index) {\n <th [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n }\n </tr>\n}\n\n<ng-template #defaultColumnLabel let-column>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n</ng-template>\n\n<ng-template #defaultColumnFilter let-column>\n @if (columnFilterEnabled(column)) {\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n }\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n @switch (columnSorterState) {\n @case ('asc') {\n <span class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n }\n @case ('desc') {\n <span class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n }\n @default {\n <span class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n }\n }\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "directive", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid", "checked"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "component", type: SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }, { kind: "directive", type: TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SmartTableColumnLabelPipe, name: "columnLabel" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
182
181
  }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
184
183
  type: Component,
185
184
  args: [{ selector: 'c-smart-table-head', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
186
185
  FilterInputDirective,
@@ -189,16 +188,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
189
188
  SmartTableColumnFilterComponent,
190
189
  TableColorDirective,
191
190
  AsyncPipe,
192
- NgForOf,
193
- NgIf,
194
191
  NgStyle,
195
- NgSwitch,
196
- NgSwitchCase,
197
- NgSwitchDefault,
198
192
  NgTemplateOutlet,
199
193
  SmartTableColumnLabelPipe,
200
194
  NgClass
201
- ], template: "<ng-template [ngIf]=\"component==='tfoot'\">\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n</ng-template>\n\n<ng-template [ngIf]=\"showGroups\">\n <tr *ngFor=\"let row of columnGroups$() let i = index\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let cell of row; let i = index\"\n [colSpan]=\"cell.colspan ?? 1\"\n [cHtmlAttr]=\"getTableHeaderCellProps(cell)\"\n [cTableColor]=\"tableHeaderCellColor(cell)\"\n [ngStyle]=\"getTableHeaderCellStyles(cell, columnSorter)\"\n >\n {{cell.label}}\n </th>\n </tr>\n</ng-template>\n\n<tr>\n <th *ngIf=\"selectable\">\n <input\n cFormCheckInput\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [indeterminate]=\"indeterminate$ | async\"\n type=\"checkbox\"\n [disabled]=\"!selectAll\"\n autocomplete=\"off\"\n >\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n (keydown)=\"handleSortKeyDown($event, column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [attr.aria-sort]=\"getAriaSort(column)\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n [ngClass]=\"getTableHeaderCellClass(column)\"\n [tabindex]=\"columnSorter && columnSorterEnabled(column) ? 0 : -1\"\n >\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"columnLabelTemplates[getColumnLabel(column)] ?? defaultColumnLabel; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n\n<ng-template #defaultColumnLabel let-column>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n</ng-template>\n\n<ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
195
+ ], template: "@if (component === 'tfoot') {\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n}\n@if (showGroups) {\n @for (row of columnGroups$(); track row; let i = $index) {\n <tr>\n @if (selectable) {\n <th></th>\n }\n @for (cell of row; track cell; let i = $index) {\n <th [cHtmlAttr]=\"getTableHeaderCellProps(cell)\"\n [cTableColor]=\"tableHeaderCellColor(cell)\"\n [colSpan]=\"cell.colspan ?? 1\"\n [ngStyle]=\"getTableHeaderCellStyles(cell, columnSorter)\"\n >\n {{ cell.label }}\n </th>\n }\n </tr>\n }\n}\n\n<tr>\n @if (selectable) {\n <th>\n <input\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [disabled]=\"!selectAll\"\n [indeterminate]=\"indeterminate$ | async\"\n autocomplete=\"off\"\n cFormCheckInput\n type=\"checkbox\"\n >\n </th>\n }\n @for (column of columns; track column; let i = $index) {\n <th\n (click)=\"handleSortClick(column, i)\"\n (keydown)=\"handleSortKeyDown($event, column, i)\"\n [attr.aria-sort]=\"getAriaSort(column)\"\n [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngClass]=\"getTableHeaderCellClass(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n [tabindex]=\"columnSorter && columnSorterEnabled(column) ? 0 : -1\"\n >\n @if (columnSorter && columnSorterEnabled(column)) {\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n }\n <ng-container\n *ngTemplateOutlet=\"columnLabelTemplates[getColumnLabel(column)] ?? defaultColumnLabel; context: {$implicit: column, header: this}\"\n />\n </th>\n }\n</tr>\n@if (columnFilter) {\n <tr>\n @if (selectable) {\n <th></th>\n }\n @for (column of columns; track column; let i = $index) {\n <th [cHtmlAttr]=\"getTableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"getTableHeaderCellStyles(column, columnSorter)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n }\n </tr>\n}\n\n<ng-template #defaultColumnLabel let-column>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n</ng-template>\n\n<ng-template #defaultColumnFilter let-column>\n @if (columnFilterEnabled(column)) {\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n }\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n @switch (columnSorterState) {\n @case ('asc') {\n <span class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n }\n @case ('desc') {\n <span class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n }\n @default {\n <span class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n }\n }\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
202
196
  }], ctorParameters: () => [], propDecorators: { columnFilter: [{
203
197
  type: Input
204
198
  }], columnFilterState: [{
@@ -212,7 +206,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
212
206
  }], columnGroups: [{
213
207
  type: Input
214
208
  }], selectable: [{
215
- type: Input
209
+ type: Input,
210
+ args: [{ transform: booleanAttribute }]
216
211
  }], selectAll: [{
217
212
  type: Input,
218
213
  args: [{ transform: booleanAttribute }]
@@ -239,4 +234,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
239
234
  type: HostBinding,
240
235
  args: ['class']
241
236
  }] } });
242
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLE1BQU0sRUFHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsU0FBUyxFQUNULE9BQU8sRUFDUCxPQUFPLEVBQ1AsSUFBSSxFQUNKLE9BQU8sRUFDUCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGVBQWUsRUFDZixnQkFBZ0IsRUFDakIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBV3ZDLE9BQU8sRUFDTCxVQUFVLEVBQ1YsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDekIsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNyRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxr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aUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHRixPQUFPO3NCQURWLEtBQUs7Z0JBWU8sWUFBWTtzQkFBeEIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVrQyxTQUFTO3NCQUFoRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUtsQyxXQUFXO3NCQURkLEtBQUs7Z0JBZ0JrQyxVQUFVO3NCQUFqRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUU3QixXQUFXO3NCQUFuQixLQUFLO2dCQUdGLHFCQUFxQjtzQkFEeEIsS0FBSztnQkFZRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBWUYsa0JBQWtCO3NCQURyQixLQUFLO2dCQWtCYSx1QkFBdUI7c0JBQXpDLE1BQU07Z0JBQ1ksaUJBQWlCO3NCQUFuQyxNQUFNO2dCQUNZLGVBQWU7c0JBQWpDLE1BQU07Z0JBR0gsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIHNpZ25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFdyaXRhYmxlU2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0NsYXNzLFxuICBOZ0Zvck9mLFxuICBOZ0lmLFxuICBOZ1N0eWxlLFxuICBOZ1N3aXRjaCxcbiAgTmdTd2l0Y2hDYXNlLFxuICBOZ1N3aXRjaERlZmF1bHQsXG4gIE5nVGVtcGxhdGVPdXRsZXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgSUNvbHVtbixcbiAgSUNvbHVtbkZpbHRlcixcbiAgSUNvbHVtbkZpbHRlclZhbHVlLFxuICBJR3JvdXAsXG4gIElTb3J0ZXIsXG4gIElTb3J0ZXJWYWx1ZSxcbiAgU29ydE9yZGVyXG59IGZyb20gJy4uL3NtYXJ0LXRhYmxlLnR5cGUnO1xuaW1wb3J0IHtcbiAgZ2V0Q29sdW1ucyxcbiAgZ2V0VGFibGVIZWFkZXJDZWxsQ2xhc3MsXG4gIGdldFRhYmxlSGVhZGVyQ2VsbFByb3BzLFxuICBnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXNcbn0gZnJvbSAnLi4vc21hcnQtdGFibGUudXRpbHMnO1xuXG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgSHRtbEF0dHJpYnV0ZXNEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgVGFibGVDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3RhYmxlJztcbmltcG9ydCB7IEZvcm1DaGVja0lucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybSc7XG5pbXBvcnQgeyBTbWFydFRhYmxlQ29sdW1uRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci9zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4uL3NtYXJ0LXRhYmxlLWZpbHRlci9maWx0ZXItaW5wdXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNtYXJ0VGFibGVDb2x1bW5MYWJlbFBpcGUgfSBmcm9tICcuL3NtYXJ0LXRhYmxlLWNvbHVtbi1sYWJlbC5waXBlJztcblxuLy8gdG9kbyAtIGFkZCBzdXBwb3J0IGZvciBjb2x1bW4gZ3JvdXBzXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Mtc21hcnQtdGFibGUtaGVhZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC10YWJsZS1oZWFkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZpbHRlcklucHV0RGlyZWN0aXZlLFxuICAgIEZvcm1DaGVja0lucHV0RGlyZWN0aXZlLFxuICAgIEh0bWxBdHRyaWJ1dGVzRGlyZWN0aXZlLFxuICAgIFNtYXJ0VGFibGVDb2x1bW5GaWx0ZXJDb21wb25lbnQsXG4gICAgVGFibGVDb2xvckRpcmVjdGl2ZSxcbiAgICBBc3luY1BpcGUsXG4gICAgTmdGb3JPZixcbiAgICBOZ0lmLFxuICAgIE5nU3R5bGUsXG4gICAgTmdTd2l0Y2gsXG4gICAgTmdTd2l0Y2hDYXNlLFxuICAgIE5nU3dpdGNoRGVmYXVsdCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIFNtYXJ0VGFibGVDb2x1bW5MYWJlbFBpcGUsXG4gICAgTmdDbGFzc1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVIZWFkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXMgPSBnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXM7XG4gIHByb3RlY3RlZCByZWFkb25seSBnZXRUYWJsZUhlYWRlckNlbGxQcm9wcyA9IGdldFRhYmxlSGVhZGVyQ2VsbFByb3BzO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZ2V0VGFibGVIZWFkZXJDZWxsQ2xhc3MgPSBnZXRUYWJsZUhlYWRlckNlbGxDbGFzcztcblxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgQElucHV0KCkgY29sdW1uRmlsdGVyU3RhdGU6IElDb2x1bW5GaWx0ZXJWYWx1ZSA9IHt9O1xuICBASW5wdXQoKSBjb2x1bW5Tb3J0ZXI/OiBib29sZWFuIHwgSVNvcnRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbHVtbnModmFsdWU6IChJQ29sdW1uIHwgSUdyb3VwKVtdIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgY29sdW1ucyA9IHZhbHVlID8gZ2V0Q29sdW1ucyh2YWx1ZSkgOiBbXTtcbiAgICB0aGlzLiNjb2x1bW5zLnNldChjb2x1bW5zKTtcbiAgfVxuXG4gIGdldCBjb2x1bW5zKCkge1xuICAgIHJldHVybiB0aGlzLiNjb2x1bW5zKCk7XG4gIH1cblxuICAjY29sdW1uczogV3JpdGFibGVTaWduYWw8KElDb2x1bW4gfCBJR3JvdXApW10gfCB1bmRlZmluZWQ+ID0gc2lnbmFsKHVuZGVmaW5lZCk7XG5cbiAgQElucHV0KCkgc2V0IGNvbHVtbkdyb3Vwcyh2YWx1ZTogSUdyb3VwW11bXSkge1xuICAgIHRoaXMuY29sdW1uR3JvdXBzJC5zZXQodmFsdWUpO1xuICB9XG5cbiAgY29sdW1uR3JvdXBzJDogV3JpdGFibGVTaWduYWw8SUdyb3VwW11bXT4gPSBzaWduYWwoW10pO1xuXG4gIEBJbnB1dCgpIHNlbGVjdGFibGU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBzZWxlY3RBbGwgPSB0cnVlO1xuXG4gICNzZWxlY3RlZEFsbFByZXZpb3VzVmFsdWU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZWxlY3RlZEFsbCh2YWx1ZTogYm9vbGVhbiB8ICdpbmRldGVybWluYXRlJykge1xuICAgIHRoaXMuaW5kZXRlcm1pbmF0ZSQubmV4dCh2YWx1ZSA9PT0gJ2luZGV0ZXJtaW5hdGUnKTtcblxuICAgIHRoaXMuI3NlbGVjdGVkQWxsID0gdmFsdWUgPT09ICdpbmRldGVybWluYXRlJyA/IGZhbHNlIDogY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodmFsdWUgIT09ICdpbmRldGVybWluYXRlJykge1xuICAgICAgdGhpcy4jc2VsZWN0ZWRBbGxQcmV2aW91c1ZhbHVlID0gdGhpcy4jc2VsZWN0ZWRBbGw7XG4gICAgfVxuICB9O1xuXG4gIGdldCBzZWxlY3RlZEFsbCgpIHtcbiAgICByZXR1cm4gdGhpcy4jc2VsZWN0ZWRBbGw7XG4gIH1cblxuICAjc2VsZWN0ZWRBbGw6IGJvb2xlYW4gfCAnaW5kZXRlcm1pbmF0ZScgPSBmYWxzZTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc2hvd0dyb3VwcyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNvcnRlclZhbHVlPzogSVNvcnRlclZhbHVlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXModmFsdWUpIHtcbiAgICB0aGlzLiNjb2x1bW5GaWx0ZXJUZW1wbGF0ZXMgPSB7IC4uLnZhbHVlIH07XG4gIH07XG5cbiAgZ2V0IGNvbHVtbkZpbHRlclRlbXBsYXRlcygpIHtcbiAgICByZXR1cm4gdGhpcy4jY29sdW1uRmlsdGVyVGVtcGxhdGVzO1xuICB9O1xuXG4gICNjb2x1bW5GaWx0ZXJUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcblxuICBASW5wdXQoKVxuICBzZXQgY29sdW1uTGFiZWxUZW1wbGF0ZXModmFsdWUpIHtcbiAgICB0aGlzLiNjb2x1bW5MYWJlbFRlbXBsYXRlcyA9IHsgLi4udmFsdWUgfTtcbiAgfTtcblxuICBnZXQgY29sdW1uTGFiZWxUZW1wbGF0ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2NvbHVtbkxhYmVsVGVtcGxhdGVzO1xuICB9O1xuXG4gICNjb2x1bW5MYWJlbFRlbXBsYXRlcz86IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzdW1tYXJ5Um93VGVtcGxhdGUodmFsdWUpIHtcbiAgICB0aGlzLiNzdW1tYXJ5Um93VGVtcGxhdGUgPSB2YWx1ZTtcbiAgfTtcblxuICBnZXQgc3VtbWFyeVJvd1RlbXBsYXRlKCkge1xuICAgIHJldHVybiB0aGlzLiNzdW1tYXJ5Um93VGVtcGxhdGU7XG4gIH07XG5cbiAgI3N1bW1hcnlSb3dUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICAvLyB0b2RvXG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25Bc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkRlc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHJlYWRvbmx5IGluZGV0ZXJtaW5hdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNvbHVtbkZpbHRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc29ydGVyU3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3RBbGxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0aGVhZDogdGhpcy5jb21wb25lbnQgPT09ICd0aGVhZCcsXG4gICAgICB0Zm9vdDogdGhpcy5jb21wb25lbnQgPT09ICd0Zm9vdCdcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb2x1bW5zPy5mb3JFYWNoKChjb2x1bW4sIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xuICAgICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXldID0gdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXldID8/ICcnO1xuICAgIH0pO1xuICB9XG5cbiAgdGFibGVIZWFkZXJDZWxsQ29sb3IoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKTogQ29sb3JzIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XG4gICAgICByZXR1cm4gPENvbG9ycyB8IHN0cmluZz5jb2xvcjtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgY29sdW1uS2V5KGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIHJldHVybiB0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyA/IGNvbHVtbi5rZXkgOiBjb2x1bW47XG4gIH1cblxuICBnZXRDb2x1bW5Tb3J0ZXJTdGF0ZShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xuICAgIGlmICh0aGlzLnNvcnRlclZhbHVlPy5jb2x1bW4gPT09IGNvbHVtbktleSkge1xuICAgICAgaWYgKHRoaXMuc29ydGVyVmFsdWUuc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc29ydGVyVmFsdWUuc3RhdGU7XG4gICAgICB9XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBoYW5kbGVTb3J0Q2xpY2soY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nLCBpOiBudW1iZXIsIG9yZGVyPzogU29ydE9yZGVyKSB7XG4gICAgaWYgKHRoaXMuY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pKSB7XG4gICAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xuICAgICAgdGhpcy5zb3J0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uS2V5LCBpbmRleDogaSwgb3JkZXIgfSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlU29ydEtleURvd24oJGV2ZW50OiBLZXlib2FyZEV2ZW50LCBjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcsIGk6IG51bWJlcikge1xuICAgIGNvbnN0IGV2ZW50Q29kZSA9ICRldmVudC5jb2RlO1xuICAgIGlmIChbJ0VudGVyJywgJ1NwYWNlJywgJ0Fycm93VXAnLCAnQXJyb3dEb3duJ10uaW5jbHVkZXMoZXZlbnRDb2RlKSkge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBjb25zdCBvcmRlcjogU29ydE9yZGVyID0gZXZlbnRDb2RlID09PSAnQXJyb3dVcCcgPyAnYXNjJyA6IGV2ZW50Q29kZSA9PT0gJ0Fycm93RG93bicgPyAnZGVzYycgOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmhhbmRsZVNvcnRDbGljayhjb2x1bW4sIGksIG9yZGVyKTtcbiAgICB9XG4gIH1cblxuICBjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIHJldHVybiB0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JyA/IHRydWUgOiB0eXBlb2YgY29sdW1uLmZpbHRlciA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogY29sdW1uLmZpbHRlcjtcbiAgfVxuXG4gIGNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmNvbHVtblNvcnRlcikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gKHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnKSA/IHRydWUgOiB0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogY29sdW1uLnNvcnRlcjtcbiAgfVxuXG4gIGhhbmRsZUNvbHVtbkZpbHRlclZhbHVlQ2hhbmdlKCRldmVudDogeyB2YWx1ZTogc3RyaW5nLCB0eXBlPzogc3RyaW5nLCBjb2x1bW46IChJQ29sdW1uIHwgc3RyaW5nKSB9KSB7XG4gICAgY29uc3QgeyB2YWx1ZSwgdHlwZTogZXZlbnRUeXBlLCBjb2x1bW4gfSA9IHsgLi4uJGV2ZW50IH07XG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICBjb25zdCBjb2x1bW5GaWx0ZXJWYWx1ZSA9IHZhbHVlO1xuICAgIGNvbnN0IGlzTGF6eSA9IHR5cGVvZiB0aGlzLmNvbHVtbkZpbHRlciA9PT0gJ29iamVjdCcgJiYgdGhpcy5jb2x1bW5GaWx0ZXIubGF6eSA9PT0gdHJ1ZTtcbiAgICBpZiAoKChpc0xhenkgJiYgZXZlbnRUeXBlID09PSAnaW5wdXQnKSB8fCAoIWlzTGF6eSAmJiBldmVudFR5cGUgPT09ICdjaGFuZ2UnKSkgJiYgY29sdW1uRmlsdGVyVmFsdWUubGVuZ3RoICE9PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbdGhpcy5jb2x1bW5LZXkoY29sdW1uKV0gPSBjb2x1bW5GaWx0ZXJWYWx1ZTtcbiAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlQ2hhbmdlLmVtaXQoeyBjb2x1bW46IGNvbHVtbktleSwgdmFsdWU6IGNvbHVtbkZpbHRlclZhbHVlLCB0eXBlOiBldmVudFR5cGUgfSk7XG4gIH1cblxuICBoYW5kbGVTZWxlY3RBbGxDaGVja2VkKCRldmVudDogRXZlbnQpIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkID0gIXRoaXMuI3NlbGVjdGVkQWxsUHJldmlvdXNWYWx1ZTtcbiAgICAvLyAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkID0gIXRoaXMuc2VsZWN0ZWRBbGw7XG4gICAgY29uc3Qgc2VsZWN0QWxsID0gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZDtcbiAgICB0aGlzLnNlbGVjdEFsbENoYW5nZS5lbWl0KHNlbGVjdEFsbCk7XG4gIH1cblxuICBnZXRDb2x1bW5GaWx0ZXIoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIGBjb2x1bW5GaWx0ZXJfJHt0aGlzLmNvbHVtbktleShjb2x1bW4pID8/ICdfdW5kZWZpbmVkJ31gO1xuICB9XG5cbiAgZ2V0Q29sdW1uTGFiZWwoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fbGFiZWxUZW1wbGF0ZUlkKSB7XG4gICAgICByZXR1cm4gYGNvbHVtbkxhYmVsXyR7Y29sdW1uLl9sYWJlbFRlbXBsYXRlSWQgPz8gJ191bmRlZmluZWQnfWA7XG4gICAgfVxuICAgIHJldHVybiBgY29sdW1uTGFiZWxfJHt0aGlzLmNvbHVtbktleShjb2x1bW4pID8/ICdfdW5kZWZpbmVkJ31gO1xuICB9XG5cbiAgZ2V0IGNvbHVtbkZpbHRlckV2ZW50KCk6ICdjaGFuZ2UnIHwgJ2lucHV0JyB7XG4gICAgcmV0dXJuICh0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkpID8gJ2NoYW5nZScgOiAnaW5wdXQnO1xuICB9O1xuXG4gIGdldEFyaWFTb3J0KGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGNvbnN0IHNvcnQgPSB0aGlzLmdldENvbHVtblNvcnRlclN0YXRlKGNvbHVtbik7XG4gICAgcmV0dXJuIHNvcnQgPT09ICdhc2MnID8gJ2FzY2VuZGluZycgOiBzb3J0ID09PSAnZGVzYycgPyAnZGVzY2VuZGluZycgOiBudWxsO1xuICB9XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb21wb25lbnQ9PT0ndGZvb3QnXCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdW1tYXJ5Um93VGVtcGxhdGVcIiAvPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInNob3dHcm91cHNcIj5cbiAgPHRyICpuZ0Zvcj1cImxldCByb3cgb2YgY29sdW1uR3JvdXBzJCgpIGxldCBpID0gaW5kZXhcIj5cbiAgICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgICA8dGggKm5nRm9yPVwibGV0IGNlbGwgb2Ygcm93OyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgW2NvbFNwYW5dPVwiY2VsbC5jb2xzcGFuID8/IDFcIlxuICAgICAgICBbY0h0bWxBdHRyXT1cImdldFRhYmxlSGVhZGVyQ2VsbFByb3BzKGNlbGwpXCJcbiAgICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNlbGwpXCJcbiAgICAgICAgW25nU3R5bGVdPVwiZ2V0VGFibGVIZWFkZXJDZWxsU3R5bGVzKGNlbGwsIGNvbHVtblNvcnRlcilcIlxuICAgID5cbiAgICAgIHt7Y2VsbC5sYWJlbH19XG4gICAgPC90aD5cbiAgPC90cj5cbjwvbmctdGVtcGxhdGU+XG5cbjx0cj5cbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPlxuICAgIDxpbnB1dFxuICAgICAgY0Zvcm1DaGVja0lucHV0XG4gICAgICAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZEFsbCA9PT0gdHJ1ZVwiXG4gICAgICBbaW5kZXRlcm1pbmF0ZV09XCJpbmRldGVybWluYXRlJCB8IGFzeW5jXCJcbiAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdEFsbFwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgID5cbiAgPC90aD5cbiAgPHRoXG4gICAgKGNsaWNrKT1cImhhbmRsZVNvcnRDbGljayhjb2x1bW4sIGkpXCJcbiAgICAoa2V5ZG93bik9XCJoYW5kbGVTb3J0S2V5RG93bigkZXZlbnQsIGNvbHVtbiwgaSlcIlxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgW2F0dHIuYXJpYS1zb3J0XT1cImdldEFyaWFTb3J0KGNvbHVtbilcIlxuICAgIFtjSHRtbEF0dHJdPVwiZ2V0VGFibGVIZWFkZXJDZWxsUHJvcHMoY29sdW1uKVwiXG4gICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgIFtuZ1N0eWxlXT1cImdldFRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW4sIGNvbHVtblNvcnRlcilcIlxuICAgIFtuZ0NsYXNzXT1cImdldFRhYmxlSGVhZGVyQ2VsbENsYXNzKGNvbHVtbilcIlxuICAgIFt0YWJpbmRleF09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pID8gMCA6IC0xXCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkxhYmVsVGVtcGxhdGVzW2dldENvbHVtbkxhYmVsKGNvbHVtbildID8/IGRlZmF1bHRDb2x1bW5MYWJlbDsgY29udGV4dDogeyRpbXBsaWNpdDogY29sdW1uLCBoZWFkZXI6IHRoaXN9XCJcbiAgICAvPlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cImdldFRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwiZ2V0VGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbiwgY29sdW1uU29ydGVyKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkZpbHRlclRlbXBsYXRlc1tnZXRDb2x1bW5GaWx0ZXIoY29sdW1uKV0gPz8gZGVmYXVsdENvbHVtbkZpbHRlcjsgY29udGV4dDogeyRpbXBsaWNpdDogY29sdW1uLCBoZWFkZXI6IHRoaXN9XCJcbiAgICAvPlxuICA8L3RoPlxuPC90cj5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29sdW1uTGFiZWwgbGV0LWNvbHVtbj5cbiAgPGRpdiBjbGFzcz1cImQtaW5saW5lXCI+e3sgY29sdW1uIHwgY29sdW1uTGFiZWwgfX08L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbHVtbkZpbHRlciBsZXQtY29sdW1uPlxuICA8Yy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyXG4gICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZUNvbHVtbkZpbHRlclZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICpuZ0lmPVwiY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW4pXCJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgW2RlbGF5XT1cIjMwMFwiXG4gICAgW29uRXZlbnRdPVwiY29sdW1uRmlsdGVyRXZlbnRcIlxuICAgIFt2YWx1ZV09XCJjb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXkoY29sdW1uKV0gPz8gJydcIlxuICAgIGNGaWx0ZXJJbnB1dFxuICAgIHNpemluZz1cInNtXCJcbiAgLz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uU29ydGVySWNvblRlbXBsYXRlIGxldC1jb2x1bW5Tb3J0ZXJTdGF0ZT5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sdW1uU29ydGVyU3RhdGVcIj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2FzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBteC0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZVwiIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInZGVzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBteC0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25EZXNjZW5kaW5nVGVtcGxhdGVcIiAvPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwib3BhY2l0eS0yNSBmbG9hdC1lbmQgbXgtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uVGVtcGxhdGVcIiAvPlxuICAgIDwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tdG9kbzogc29ydGluZ0ljb25DdXN0b20gVGVtcGxhdGVzLS0+XG48bmctdGVtcGxhdGUgI3NvcnRpbmdJY29uVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzg0IDQzMy4zNzMgMzg0IDE2MCAzNTIgMTYwIDM1MiA0MzQuNTEgMjgyLjE3NyAzNjQuNjg3IDI1OS41NSAzODcuMzEzIDM2Ny40MzIgNDk1LjE5NiA0NzUuMzEzIDM4Ny4zMTMgNDUyLjY4NyAzNjQuNjg3IDM4NCA0MzMuMzczXCJcbiAgICA+PC9wb2x5Z29uPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMTU5LjQzMiAxNy4zNzIgNTEuNTUgMTI1LjI1NSA3NC4xNzcgMTQ3Ljg4MiAxNDQgNzguMDU5IDE0NCAzNTIgMTc2IDM1MiAxNzYgNzkuMTk1IDI0NC42ODcgMTQ3Ljg4MiAyNjcuMzEzIDEyNS4yNTUgMTU5LjQzMiAxNy4zNzJcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkFzY2VuZGluZ1RlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM5MC42MjQgMTUwLjYyNSAyNTYgMTYgMTIxLjM3NiAxNTAuNjI1IDE0NC4wMDQgMTczLjI1MiAyNDAuMDAxIDc3LjI1NCAyNDAuMDAxIDQ5NS4yMzYgMjcyLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNzcuMjU3IDM2Ny45OTYgMTczLjI1MiAzOTAuNjI0IDE1MC42MjVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzNjcuOTk3IDMzOC43NSAyNzEuOTk5IDQzNC43NDcgMjcxLjk5OSAxNy41MDMgMjM5Ljk5OSAxNy41MDMgMjM5Ljk5OSA0MzQuNzQ1IDE0NC4wMDMgMzM4Ljc1IDEyMS4zNzYgMzYxLjM3NyAyNTYgNDk2IDM5MC42MjQgMzYxLjM3NyAzNjcuOTk3IDMzOC43NVwiXG4gICAgPjwvcG9seWdvbj5cbiAgPC9zdmc+XG48L25nLXRlbXBsYXRlPlxuIl19
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLE1BQU0sRUFHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBV3ZDLE9BQU8sRUFDTCxVQUFVLEVBQ1YsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDekIsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNyRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUNuSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNwRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMs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eEIsS0FBSztnQkFNa0MsVUFBVTtzQkFBakQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFFRSxTQUFTO3NCQUFoRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUtsQyxXQUFXO3NCQURkLEtBQUs7Z0JBZ0JrQyxVQUFVO3NCQUFqRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUU3QixXQUFXO3NCQUFuQixLQUFLO2dCQUdGLHFCQUFxQjtzQkFEeEIsS0FBSztnQkFZRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBWUYsa0JBQWtCO3NCQURyQixLQUFLO2dCQWtCYSx1QkFBdUI7c0JBQXpDLE1BQU07Z0JBQ1ksaUJBQWlCO3NCQUFuQyxNQUFNO2dCQUNZLGVBQWU7c0JBQWpDLE1BQU07Z0JBR0gsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIHNpZ25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFdyaXRhYmxlU2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NsYXNzLCBOZ1N0eWxlLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBJQ29sdW1uLFxuICBJQ29sdW1uRmlsdGVyLFxuICBJQ29sdW1uRmlsdGVyVmFsdWUsXG4gIElHcm91cCxcbiAgSVNvcnRlcixcbiAgSVNvcnRlclZhbHVlLFxuICBTb3J0T3JkZXJcbn0gZnJvbSAnLi4vc21hcnQtdGFibGUudHlwZSc7XG5pbXBvcnQge1xuICBnZXRDb2x1bW5zLFxuICBnZXRUYWJsZUhlYWRlckNlbGxDbGFzcyxcbiAgZ2V0VGFibGVIZWFkZXJDZWxsUHJvcHMsXG4gIGdldFRhYmxlSGVhZGVyQ2VsbFN0eWxlc1xufSBmcm9tICcuLi9zbWFydC10YWJsZS51dGlscyc7XG5cbmltcG9ydCB7IENvbG9ycyB9IGZyb20gJy4uLy4uL2NvcmV1aS50eXBlcyc7XG5pbXBvcnQgeyBIdG1sQXR0cmlidXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBUYWJsZUNvbG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdGFibGUnO1xuaW1wb3J0IHsgRm9ybUNoZWNrSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9mb3JtJztcbmltcG9ydCB7IFNtYXJ0VGFibGVDb2x1bW5GaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi9zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyL3NtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbHRlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUtZmlsdGVyL2ZpbHRlci1pbnB1dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU21hcnRUYWJsZUNvbHVtbkxhYmVsUGlwZSB9IGZyb20gJy4vc21hcnQtdGFibGUtY29sdW1uLWxhYmVsLnBpcGUnO1xuXG4vLyB0b2RvIC0gYWRkIHN1cHBvcnQgZm9yIGNvbHVtbiBncm91cHNcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zbWFydC10YWJsZS1oZWFkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zbWFydC10YWJsZS1oZWFkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRmlsdGVySW5wdXREaXJlY3RpdmUsXG4gICAgRm9ybUNoZWNrSW5wdXREaXJlY3RpdmUsXG4gICAgSHRtbEF0dHJpYnV0ZXNEaXJlY3RpdmUsXG4gICAgU21hcnRUYWJsZUNvbHVtbkZpbHRlckNvbXBvbmVudCxcbiAgICBUYWJsZUNvbG9yRGlyZWN0aXZlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBOZ1N0eWxlLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgU21hcnRUYWJsZUNvbHVtbkxhYmVsUGlwZSxcbiAgICBOZ0NsYXNzXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZUhlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGdldFRhYmxlSGVhZGVyQ2VsbFN0eWxlcyA9IGdldFRhYmxlSGVhZGVyQ2VsbFN0eWxlcztcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGdldFRhYmxlSGVhZGVyQ2VsbFByb3BzID0gZ2V0VGFibGVIZWFkZXJDZWxsUHJvcHM7XG4gIHByb3RlY3RlZCByZWFkb25seSBnZXRUYWJsZUhlYWRlckNlbGxDbGFzcyA9IGdldFRhYmxlSGVhZGVyQ2VsbENsYXNzO1xuXG4gIEBJbnB1dCgpIGNvbHVtbkZpbHRlcj86IGJvb2xlYW4gfCBJQ29sdW1uRmlsdGVyO1xuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXJTdGF0ZTogSUNvbHVtbkZpbHRlclZhbHVlID0ge307XG4gIEBJbnB1dCgpIGNvbHVtblNvcnRlcj86IGJvb2xlYW4gfCBJU29ydGVyID0gdHJ1ZTtcbiAgQElucHV0KCkgY29tcG9uZW50Pzogc3RyaW5nID0gJ3RoZWFkJztcblxuICBASW5wdXQoKVxuICBzZXQgY29sdW1ucyh2YWx1ZTogKElDb2x1bW4gfCBJR3JvdXApW10gfCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBjb2x1bW5zID0gdmFsdWUgPyBnZXRDb2x1bW5zKHZhbHVlKSA6IFtdO1xuICAgIHRoaXMuI2NvbHVtbnMuc2V0KGNvbHVtbnMpO1xuICB9XG5cbiAgZ2V0IGNvbHVtbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2NvbHVtbnMoKTtcbiAgfVxuXG4gICNjb2x1bW5zOiBXcml0YWJsZVNpZ25hbDwoSUNvbHVtbiB8IElHcm91cClbXSB8IHVuZGVmaW5lZD4gPSBzaWduYWwodW5kZWZpbmVkKTtcblxuICBASW5wdXQoKSBzZXQgY29sdW1uR3JvdXBzKHZhbHVlOiBJR3JvdXBbXVtdKSB7XG4gICAgdGhpcy5jb2x1bW5Hcm91cHMkLnNldCh2YWx1ZSk7XG4gIH1cblxuICBjb2x1bW5Hcm91cHMkOiBXcml0YWJsZVNpZ25hbDxJR3JvdXBbXVtdPiA9IHNpZ25hbChbXSk7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNlbGVjdGFibGU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBzZWxlY3RBbGwgPSB0cnVlO1xuXG4gICNzZWxlY3RlZEFsbFByZXZpb3VzVmFsdWU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZWxlY3RlZEFsbCh2YWx1ZTogYm9vbGVhbiB8ICdpbmRldGVybWluYXRlJykge1xuICAgIHRoaXMuaW5kZXRlcm1pbmF0ZSQubmV4dCh2YWx1ZSA9PT0gJ2luZGV0ZXJtaW5hdGUnKTtcblxuICAgIHRoaXMuI3NlbGVjdGVkQWxsID0gdmFsdWUgPT09ICdpbmRldGVybWluYXRlJyA/IGZhbHNlIDogYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlICE9PSAnaW5kZXRlcm1pbmF0ZScpIHtcbiAgICAgIHRoaXMuI3NlbGVjdGVkQWxsUHJldmlvdXNWYWx1ZSA9IHRoaXMuI3NlbGVjdGVkQWxsO1xuICAgIH1cbiAgfTtcblxuICBnZXQgc2VsZWN0ZWRBbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3NlbGVjdGVkQWxsO1xuICB9XG5cbiAgI3NlbGVjdGVkQWxsOiBib29sZWFuIHwgJ2luZGV0ZXJtaW5hdGUnID0gZmFsc2U7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNob3dHcm91cHMgPSBmYWxzZTtcblxuICBASW5wdXQoKSBzb3J0ZXJWYWx1ZT86IElTb3J0ZXJWYWx1ZTtcblxuICBASW5wdXQoKVxuICBzZXQgY29sdW1uRmlsdGVyVGVtcGxhdGVzKHZhbHVlKSB7XG4gICAgdGhpcy4jY29sdW1uRmlsdGVyVGVtcGxhdGVzID0geyAuLi52YWx1ZSB9O1xuICB9O1xuXG4gIGdldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2NvbHVtbkZpbHRlclRlbXBsYXRlcztcbiAgfTtcblxuICAjY29sdW1uRmlsdGVyVGVtcGxhdGVzPzogYW55ID0ge307XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbHVtbkxhYmVsVGVtcGxhdGVzKHZhbHVlKSB7XG4gICAgdGhpcy4jY29sdW1uTGFiZWxUZW1wbGF0ZXMgPSB7IC4uLnZhbHVlIH07XG4gIH07XG5cbiAgZ2V0IGNvbHVtbkxhYmVsVGVtcGxhdGVzKCkge1xuICAgIHJldHVybiB0aGlzLiNjb2x1bW5MYWJlbFRlbXBsYXRlcztcbiAgfTtcblxuICAjY29sdW1uTGFiZWxUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcblxuICBASW5wdXQoKVxuICBzZXQgc3VtbWFyeVJvd1RlbXBsYXRlKHZhbHVlKSB7XG4gICAgdGhpcy4jc3VtbWFyeVJvd1RlbXBsYXRlID0gdmFsdWU7XG4gIH07XG5cbiAgZ2V0IHN1bW1hcnlSb3dUZW1wbGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy4jc3VtbWFyeVJvd1RlbXBsYXRlO1xuICB9O1xuXG4gICNzdW1tYXJ5Um93VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG5cbiAgLy8gdG9kb1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbj86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uQXNjZW5kaW5nPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25EZXNjZW5kaW5nPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcblxuICByZWFkb25seSBpbmRldGVybWluYXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBjb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNvcnRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGhlYWQ6IHRoaXMuY29tcG9uZW50ID09PSAndGhlYWQnLFxuICAgICAgdGZvb3Q6IHRoaXMuY29tcG9uZW50ID09PSAndGZvb3QnXG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29sdW1ucz8uZm9yRWFjaCgoY29sdW1uLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA9IHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA/PyAnJztcbiAgICB9KTtcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZyk6IENvbG9ycyB7XG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fcHJvcHMpIHtcbiAgICAgIGNvbnN0IHsgY29sb3IgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9O1xuICAgICAgcmV0dXJuIDxDb2xvcnMgfCBzdHJpbmc+Y29sb3I7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGNvbHVtbktleShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ua2V5IDogY29sdW1uO1xuICB9XG5cbiAgZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICBpZiAodGhpcy5zb3J0ZXJWYWx1ZT8uY29sdW1uID09PSBjb2x1bW5LZXkpIHtcbiAgICAgIGlmICh0aGlzLnNvcnRlclZhbHVlLnN0YXRlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNvcnRlclZhbHVlLnN0YXRlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgaGFuZGxlU29ydENsaWNrKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZywgaTogbnVtYmVyLCBvcmRlcj86IFNvcnRPcmRlcikge1xuICAgIGlmICh0aGlzLmNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uKSkge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuc29ydGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbktleSwgaW5kZXg6IGksIG9yZGVyIH0pO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVNvcnRLZXlEb3duKCRldmVudDogS2V5Ym9hcmRFdmVudCwgY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nLCBpOiBudW1iZXIpIHtcbiAgICBjb25zdCBldmVudENvZGUgPSAkZXZlbnQuY29kZTtcbiAgICBpZiAoWydFbnRlcicsICdTcGFjZScsICdBcnJvd1VwJywgJ0Fycm93RG93biddLmluY2x1ZGVzKGV2ZW50Q29kZSkpIHtcbiAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3Qgb3JkZXI6IFNvcnRPcmRlciA9IGV2ZW50Q29kZSA9PT0gJ0Fycm93VXAnID8gJ2FzYycgOiBldmVudENvZGUgPT09ICdBcnJvd0Rvd24nID8gJ2Rlc2MnIDogdW5kZWZpbmVkO1xuICAgICAgdGhpcy5oYW5kbGVTb3J0Q2xpY2soY29sdW1uLCBpLCBvcmRlcik7XG4gICAgfVxuICB9XG5cbiAgY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5maWx0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5maWx0ZXI7XG4gIH1cblxuICBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jb2x1bW5Tb3J0ZXIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JykgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5zb3J0ZXI7XG4gIH1cblxuICBoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQ6IHsgdmFsdWU6IHN0cmluZywgdHlwZT86IHN0cmluZywgY29sdW1uOiAoSUNvbHVtbiB8IHN0cmluZykgfSkge1xuICAgIGNvbnN0IHsgdmFsdWUsIHR5cGU6IGV2ZW50VHlwZSwgY29sdW1uIH0gPSB7IC4uLiRldmVudCB9O1xuICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgY29uc3QgY29sdW1uRmlsdGVyVmFsdWUgPSB2YWx1ZTtcbiAgICBjb25zdCBpc0xhenkgPSB0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkgPT09IHRydWU7XG4gICAgaWYgKCgoaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2lucHV0JykgfHwgKCFpc0xhenkgJiYgZXZlbnRUeXBlID09PSAnY2hhbmdlJykpICYmIGNvbHVtbkZpbHRlclZhbHVlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW3RoaXMuY29sdW1uS2V5KGNvbHVtbildID0gY29sdW1uRmlsdGVyVmFsdWU7XG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZCA9ICF0aGlzLiNzZWxlY3RlZEFsbFByZXZpb3VzVmFsdWU7XG4gICAgLy8gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZCA9ICF0aGlzLnNlbGVjdGVkQWxsO1xuICAgIGNvbnN0IHNlbGVjdEFsbCA9ICgkZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNoZWNrZWQ7XG4gICAgdGhpcy5zZWxlY3RBbGxDaGFuZ2UuZW1pdChzZWxlY3RBbGwpO1xuICB9XG5cbiAgZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIHJldHVybiBgY29sdW1uRmlsdGVyXyR7dGhpcy5jb2x1bW5LZXkoY29sdW1uKSA/PyAnX3VuZGVmaW5lZCd9YDtcbiAgfVxuXG4gIGdldENvbHVtbkxhYmVsKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX2xhYmVsVGVtcGxhdGVJZCkge1xuICAgICAgcmV0dXJuIGBjb2x1bW5MYWJlbF8ke2NvbHVtbi5fbGFiZWxUZW1wbGF0ZUlkID8/ICdfdW5kZWZpbmVkJ31gO1xuICAgIH1cbiAgICByZXR1cm4gYGNvbHVtbkxhYmVsXyR7dGhpcy5jb2x1bW5LZXkoY29sdW1uKSA/PyAnX3VuZGVmaW5lZCd9YDtcbiAgfVxuXG4gIGdldCBjb2x1bW5GaWx0ZXJFdmVudCgpOiAnY2hhbmdlJyB8ICdpbnB1dCcge1xuICAgIHJldHVybiAodHlwZW9mIHRoaXMuY29sdW1uRmlsdGVyID09PSAnb2JqZWN0JyAmJiB0aGlzLmNvbHVtbkZpbHRlci5sYXp5KSA/ICdjaGFuZ2UnIDogJ2lucHV0JztcbiAgfTtcblxuICBnZXRBcmlhU29ydChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBzb3J0ID0gdGhpcy5nZXRDb2x1bW5Tb3J0ZXJTdGF0ZShjb2x1bW4pO1xuICAgIHJldHVybiBzb3J0ID09PSAnYXNjJyA/ICdhc2NlbmRpbmcnIDogc29ydCA9PT0gJ2Rlc2MnID8gJ2Rlc2NlbmRpbmcnIDogbnVsbDtcbiAgfVxuXG59XG4iLCJAaWYgKGNvbXBvbmVudCA9PT0gJ3Rmb290Jykge1xuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3VtbWFyeVJvd1RlbXBsYXRlXCIgLz5cbn1cbkBpZiAoc2hvd0dyb3Vwcykge1xuICBAZm9yIChyb3cgb2YgY29sdW1uR3JvdXBzJCgpOyB0cmFjayByb3c7IGxldCBpID0gJGluZGV4KSB7XG4gICAgPHRyPlxuICAgICAgQGlmIChzZWxlY3RhYmxlKSB7XG4gICAgICAgIDx0aD48L3RoPlxuICAgICAgfVxuICAgICAgQGZvciAoY2VsbCBvZiByb3c7IHRyYWNrIGNlbGw7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgIDx0aCBbY0h0bWxBdHRyXT1cImdldFRhYmxlSGVhZGVyQ2VsbFByb3BzKGNlbGwpXCJcbiAgICAgICAgICAgIFtjVGFibGVDb2xvcl09XCJ0YWJsZUhlYWRlckNlbGxDb2xvcihjZWxsKVwiXG4gICAgICAgICAgICBbY29sU3Bhbl09XCJjZWxsLmNvbHNwYW4gPz8gMVwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXMoY2VsbCwgY29sdW1uU29ydGVyKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBjZWxsLmxhYmVsIH19XG4gICAgICAgIDwvdGg+XG4gICAgICB9XG4gICAgPC90cj5cbiAgfVxufVxuXG48dHI+XG4gIEBpZiAoc2VsZWN0YWJsZSkge1xuICAgIDx0aD5cbiAgICAgIDxpbnB1dFxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkQWxsID09PSB0cnVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFzZWxlY3RBbGxcIlxuICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJpbmRldGVybWluYXRlJCB8IGFzeW5jXCJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgY0Zvcm1DaGVja0lucHV0XG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICA+XG4gICAgPC90aD5cbiAgfVxuICBAZm9yIChjb2x1bW4gb2YgY29sdW1uczsgdHJhY2sgY29sdW1uOyBsZXQgaSA9ICRpbmRleCkge1xuICAgIDx0aFxuICAgICAgKGNsaWNrKT1cImhhbmRsZVNvcnRDbGljayhjb2x1bW4sIGkpXCJcbiAgICAgIChrZXlkb3duKT1cImhhbmRsZVNvcnRLZXlEb3duKCRldmVudCwgY29sdW1uLCBpKVwiXG4gICAgICBbYXR0ci5hcmlhLXNvcnRdPVwiZ2V0QXJpYVNvcnQoY29sdW1uKVwiXG4gICAgICBbY0h0bWxBdHRyXT1cImdldFRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nQ2xhc3NdPVwiZ2V0VGFibGVIZWFkZXJDZWxsQ2xhc3MoY29sdW1uKVwiXG4gICAgICBbbmdTdHlsZV09XCJnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXMoY29sdW1uLCBjb2x1bW5Tb3J0ZXIpXCJcbiAgICAgIFt0YWJpbmRleF09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pID8gMCA6IC0xXCJcbiAgICA+XG4gICAgICBAaWYgKGNvbHVtblNvcnRlciAmJiBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbikpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgICAgLz5cbiAgICAgIH1cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW5MYWJlbFRlbXBsYXRlc1tnZXRDb2x1bW5MYWJlbChjb2x1bW4pXSA/PyBkZWZhdWx0Q29sdW1uTGFiZWw7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGNvbHVtbiwgaGVhZGVyOiB0aGlzfVwiXG4gICAgICAvPlxuICAgIDwvdGg+XG4gIH1cbjwvdHI+XG5AaWYgKGNvbHVtbkZpbHRlcikge1xuICA8dHI+XG4gICAgQGlmIChzZWxlY3RhYmxlKSB7XG4gICAgICA8dGg+PC90aD5cbiAgICB9XG4gICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrIGNvbHVtbjsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgIDx0aCBbY0h0bWxBdHRyXT1cImdldFRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgICAgIFtjVGFibGVDb2xvcl09XCJ0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW4pXCJcbiAgICAgICAgICBbbmdTdHlsZV09XCJnZXRUYWJsZUhlYWRlckNlbGxTdHlsZXMoY29sdW1uLCBjb2x1bW5Tb3J0ZXIpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uRmlsdGVyVGVtcGxhdGVzW2dldENvbHVtbkZpbHRlcihjb2x1bW4pXSA/PyBkZWZhdWx0Q29sdW1uRmlsdGVyOyBjb250ZXh0OiB7JGltcGxpY2l0OiBjb2x1bW4sIGhlYWRlcjogdGhpc31cIlxuICAgICAgICAvPlxuICAgICAgPC90aD5cbiAgICB9XG4gIDwvdHI+XG59XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbHVtbkxhYmVsIGxldC1jb2x1bW4+XG4gIDxkaXYgY2xhc3M9XCJkLWlubGluZVwiPnt7IGNvbHVtbiB8IGNvbHVtbkxhYmVsIH19PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDb2x1bW5GaWx0ZXIgbGV0LWNvbHVtbj5cbiAgQGlmIChjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbikpIHtcbiAgICA8Yy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyXG4gICAgICAodmFsdWVDaGFuZ2UpPVwiaGFuZGxlQ29sdW1uRmlsdGVyVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICBbZGVsYXldPVwiMzAwXCJcbiAgICAgIFtvbkV2ZW50XT1cImNvbHVtbkZpbHRlckV2ZW50XCJcbiAgICAgIFt2YWx1ZV09XCJjb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXkoY29sdW1uKV0gPz8gJydcIlxuICAgICAgY0ZpbHRlcklucHV0XG4gICAgICBzaXppbmc9XCJzbVwiXG4gICAgLz5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb2x1bW5Tb3J0ZXJJY29uVGVtcGxhdGUgbGV0LWNvbHVtblNvcnRlclN0YXRlPlxuICBAc3dpdGNoIChjb2x1bW5Tb3J0ZXJTdGF0ZSkge1xuICAgIEBjYXNlICgnYXNjJykge1xuICAgICAgPHNwYW4gY2xhc3M9XCJmbG9hdC1lbmQgbXgtMVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZVwiIC8+XG4gICAgICA8L3NwYW4+XG4gICAgfVxuICAgIEBjYXNlICgnZGVzYycpIHtcbiAgICAgIDxzcGFuIGNsYXNzPVwiZmxvYXQtZW5kIG14LTFcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uRGVzY2VuZGluZ1RlbXBsYXRlXCIgLz5cbiAgICAgIDwvc3Bhbj5cbiAgICB9XG4gICAgQGRlZmF1bHQge1xuICAgICAgPHNwYW4gY2xhc3M9XCJvcGFjaXR5LTI1IGZsb2F0LWVuZCBteC0xXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0aW5nSWNvblRlbXBsYXRlXCIgLz5cbiAgICAgIDwvc3Bhbj5cbiAgICB9XG4gIH1cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS10b2RvOiBzb3J0aW5nSWNvbkN1c3RvbSBUZW1wbGF0ZXMtLT5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25UZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzODQgNDMzLjM3MyAzODQgMTYwIDM1MiAxNjAgMzUyIDQzNC41MSAyODIuMTc3IDM2NC42ODcgMjU5LjU1IDM4Ny4zMTMgMzY3LjQzMiA0OTUuMTk2IDQ3NS4zMTMgMzg3LjMxMyA0NTIuNjg3IDM2NC42ODcgMzg0IDQzMy4zNzNcIlxuICAgID48L3BvbHlnb24+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIxNTkuNDMyIDE3LjM3MiA1MS41NSAxMjUuMjU1IDc0LjE3NyAxNDcuODgyIDE0NCA3OC4wNTkgMTQ0IDM1MiAxNzYgMzUyIDE3NiA3OS4xOTUgMjQ0LjY4NyAxNDcuODgyIDI2Ny4zMTMgMTI1LjI1NSAxNTkuNDMyIDE3LjM3MlwiXG4gICAgPjwvcG9seWdvbj5cbiAgPC9zdmc+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NvcnRpbmdJY29uQXNjZW5kaW5nVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzkwLjYyNCAxNTAuNjI1IDI1NiAxNiAxMjEuMzc2IDE1MC42MjUgMTQ0LjAwNCAxNzMuMjUyIDI0MC4wMDEgNzcuMjU0IDI0MC4wMDEgNDk1LjIzNiAyNzIuMDAxIDQ5NS4yMzYgMjcyLjAwMSA3Ny4yNTcgMzY3Ljk5NiAxNzMuMjUyIDM5MC42MjQgMTUwLjYyNVwiXG4gICAgPjwvcG9seWdvbj5cbiAgPC9zdmc+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NvcnRpbmdJY29uRGVzY2VuZGluZ1RlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM2Ny45OTcgMzM4Ljc1IDI3MS45OTkgNDM0Ljc0NyAyNzEuOTk5IDE3LjUwMyAyMzkuOTk5IDE3LjUwMyAyMzkuOTk5IDQzNC43NDUgMTQ0LjAwMyAzMzguNzUgMTIxLjM3NiAzNjEuMzc3IDI1NiA0OTYgMzkwLjYyNCAzNjEuMzc3IDM2Ny45OTcgMzM4Ljc1XCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,5 +1,4 @@
1
1
  import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
- import { NgForOf } from '@angular/common';
3
2
  import { FormsModule } from '@angular/forms';
4
3
  import { FormLabelDirective, FormSelectDirective } from '../../form';
5
4
  import * as i0 from "@angular/core";
@@ -26,17 +25,16 @@ export class SmartTableItemsPerPageSelectorComponent {
26
25
  row: true
27
26
  };
28
27
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: SmartTableItemsPerPageSelectorComponent, isStandalone: true, selector: "c-smart-table-items-per-page-selector", inputs: { itemsPerPage: "itemsPerPage", itemsPerPageLabel: "itemsPerPageLabel", itemsPerPageOptions: "itemsPerPageOptions" }, outputs: { itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\n </select>\n</div>\n", dependencies: [{ kind: "directive", type: FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "directive", type: FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.1", type: SmartTableItemsPerPageSelectorComponent, isStandalone: true, selector: "c-smart-table-items-per-page-selector", inputs: { itemsPerPage: "itemsPerPage", itemsPerPageLabel: "itemsPerPageLabel", itemsPerPageOptions: "itemsPerPageOptions" }, outputs: { itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{ itemsPerPageLabel }}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n @for (option of itemsPerPageOptions; track option; let i = $index) {\n <option [ngValue]=\"option\">{{ option }}</option>\n }\n </select>\n</div>\n", dependencies: [{ kind: "directive", type: FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "directive", type: FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
31
30
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, decorators: [{
33
32
  type: Component,
34
33
  args: [{ selector: 'c-smart-table-items-per-page-selector', imports: [
35
34
  FormSelectDirective,
36
35
  FormLabelDirective,
37
- NgForOf,
38
36
  FormsModule
39
- ], standalone: true, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\n </select>\n</div>\n" }]
37
+ ], standalone: true, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{ itemsPerPageLabel }}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n @for (option of itemsPerPageOptions; track option; let i = $index) {\n <option [ngValue]=\"option\">{{ option }}</option>\n }\n </select>\n</div>\n" }]
40
38
  }], ctorParameters: () => [], propDecorators: { itemsPerPage: [{
41
39
  type: Input
42
40
  }], itemsPerPageLabel: [{
@@ -49,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
49
47
  type: HostBinding,
50
48
  args: ['class']
51
49
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zbWFydC10YWJsZS9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFhckUsTUFBTSxPQUFPLHVDQUF1QztJQUVsRDtRQWNBLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBRVQsc0JBQWlCLEdBQVcsaUJBQWlCLENBQUM7UUFDOUMsd0JBQW1CLEdBQWEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0Qyx1QkFBa0IsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQWxCekUsQ0FBQztJQUVqQixJQUNJLFlBQVksQ0FBQyxLQUFhO1FBQzVCLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxLQUFLLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWEsQ0FBSztJQU1sQixJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUk7U0FDVixDQUFDO0lBQ0osQ0FBQzs4R0EzQlUsdUNBQXVDO2tHQUF2Qyx1Q0FBdUMsNlVDakJwRCw2VEFNQSw0Q0RJSSxtQkFBbUIseUZBQ25CLGtCQUFrQixtRkFDbEIsT0FBTyxrSEFDUCxXQUFXOzsyRkFJRix1Q0FBdUM7a0JBWG5ELFNBQVM7K0JBQ0UsdUNBQXVDLFdBRXhDO3dCQUNQLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixPQUFPO3dCQUNQLFdBQVc7cUJBQ1osY0FDVyxJQUFJO3dEQU9aLFlBQVk7c0JBRGYsS0FBSztnQkFjRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNhLGtCQUFrQjtzQkFBcEMsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdGb3JPZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRm9ybUxhYmVsRGlyZWN0aXZlLCBGb3JtU2VsZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Mtc21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbXG4gICAgRm9ybVNlbGVjdERpcmVjdGl2ZSxcbiAgICBGb3JtTGFiZWxEaXJlY3RpdmUsXG4gICAgTmdGb3JPZixcbiAgICBGb3Jtc01vZHVsZVxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVJdGVtc1BlclBhZ2VTZWxlY3RvckNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBASW5wdXQoKVxuICBzZXQgaXRlbXNQZXJQYWdlKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy4jaXRlbXNQZXJQYWdlICE9IHZhbHVlKSB7XG4gICAgICB0aGlzLiNpdGVtc1BlclBhZ2UgPSB2YWx1ZTtcbiAgICAgIHRoaXMuaXRlbXNQZXJQYWdlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBpdGVtc1BlclBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2l0ZW1zUGVyUGFnZTtcbiAgfVxuXG4gICNpdGVtc1BlclBhZ2UgPSA1O1xuXG4gIEBJbnB1dCgpIGl0ZW1zUGVyUGFnZUxhYmVsOiBzdHJpbmcgPSAnSXRlbXMgcGVyIHBhZ2U6JztcbiAgQElucHV0KCkgaXRlbXNQZXJQYWdlT3B0aW9uczogbnVtYmVyW10gPSBbNSwgMTAsIDIwLCA1MF07XG4gIEBPdXRwdXQoKSByZWFkb25seSBpdGVtc1BlclBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICByb3c6IHRydWVcbiAgICB9O1xuICB9XG59XG4iLCI8bGFiZWwgY0xhYmVsPVwiY29sXCIgY2xhc3M9XCJjb2wtc20tYXV0b1wiPnt7aXRlbXNQZXJQYWdlTGFiZWx9fTwvbGFiZWw+XG48ZGl2IGNsYXNzPVwiY29sLWF1dG9cIj5cbiAgPHNlbGVjdCBbKG5nTW9kZWwpXT1cIml0ZW1zUGVyUGFnZVwiIGNTZWxlY3QgbmFtZT1cIml0ZW1zUGVyUGFnZVNlbGVjdG9yXCI+XG4gICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGl0ZW1zUGVyUGFnZU9wdGlvbnM7IGxldCBpID0gaW5kZXhcIiBbbmdWYWx1ZV09XCJvcHRpb25cIj57e29wdGlvbn19PC9vcHRpb24+XG4gIDwvc2VsZWN0PlxuPC9kaXY+XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaXRlbXMtcGVyLXBhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zbWFydC10YWJsZS9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yL3NtYXJ0LXRhYmxlLWl0ZW1zLXBlci1wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQVlyRSxNQUFNLE9BQU8sdUNBQXVDO0lBRWxEO1FBY0Esa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFFVCxzQkFBaUIsR0FBVyxpQkFBaUIsQ0FBQztRQUM5Qyx3QkFBbUIsR0FBYSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLHVCQUFrQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO0lBbEJ6RSxDQUFDO0lBRWpCLElBQ0ksWUFBWSxDQUFDLEtBQWE7UUFDNUIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWEsQ0FBSztJQU1sQixJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUk7U0FDVixDQUFDO0lBQ0osQ0FBQzs4R0EzQlUsdUNBQXVDO2tHQUF2Qyx1Q0FBdUMsNlVDZnBELHdWQVFBLDRDRENJLG1CQUFtQix5RkFDbkIsa0JBQWtCLGtGQUNsQixXQUFXOzsyRkFJRix1Q0FBdUM7a0JBVm5ELFNBQVM7K0JBQ0UsdUNBQXVDLFdBRXhDO3dCQUNQLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixXQUFXO3FCQUNaLGNBQ1csSUFBSTt3REFPWixZQUFZO3NCQURmLEtBQUs7Z0JBY0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDYSxrQkFBa0I7c0JBQXBDLE1BQU07Z0JBR0gsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGb3JtTGFiZWxEaXJlY3RpdmUsIEZvcm1TZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9mb3JtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3RvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFtcbiAgICBGb3JtU2VsZWN0RGlyZWN0aXZlLFxuICAgIEZvcm1MYWJlbERpcmVjdGl2ZSxcbiAgICBGb3Jtc01vZHVsZVxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVJdGVtc1BlclBhZ2VTZWxlY3RvckNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBASW5wdXQoKVxuICBzZXQgaXRlbXNQZXJQYWdlKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy4jaXRlbXNQZXJQYWdlICE9IHZhbHVlKSB7XG4gICAgICB0aGlzLiNpdGVtc1BlclBhZ2UgPSB2YWx1ZTtcbiAgICAgIHRoaXMuaXRlbXNQZXJQYWdlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBpdGVtc1BlclBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2l0ZW1zUGVyUGFnZTtcbiAgfVxuXG4gICNpdGVtc1BlclBhZ2UgPSA1O1xuXG4gIEBJbnB1dCgpIGl0ZW1zUGVyUGFnZUxhYmVsOiBzdHJpbmcgPSAnSXRlbXMgcGVyIHBhZ2U6JztcbiAgQElucHV0KCkgaXRlbXNQZXJQYWdlT3B0aW9uczogbnVtYmVyW10gPSBbNSwgMTAsIDIwLCA1MF07XG4gIEBPdXRwdXQoKSByZWFkb25seSBpdGVtc1BlclBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICByb3c6IHRydWVcbiAgICB9O1xuICB9XG59XG4iLCI8bGFiZWwgY0xhYmVsPVwiY29sXCIgY2xhc3M9XCJjb2wtc20tYXV0b1wiPnt7IGl0ZW1zUGVyUGFnZUxhYmVsIH19PC9sYWJlbD5cbjxkaXYgY2xhc3M9XCJjb2wtYXV0b1wiPlxuICA8c2VsZWN0IFsobmdNb2RlbCldPVwiaXRlbXNQZXJQYWdlXCIgY1NlbGVjdCBuYW1lPVwiaXRlbXNQZXJQYWdlU2VsZWN0b3JcIj5cbiAgICBAZm9yIChvcHRpb24gb2YgaXRlbXNQZXJQYWdlT3B0aW9uczsgdHJhY2sgb3B0aW9uOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJvcHRpb25cIj57eyBvcHRpb24gfX08L29wdGlvbj5cbiAgICB9XG4gIDwvc2VsZWN0PlxuPC9kaXY+XG4iXX0=
@@ -3,11 +3,11 @@ import { SmartTableComponent } from './smart-table/smart-table.component';
3
3
  import { SmartTableFilterComponent } from './smart-table-filter/smart-table-filter.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class SmartTableModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent, SmartTableFilterComponent], exports: [SmartTableComponent, SmartTableFilterComponent] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent] }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.1", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent, SmartTableFilterComponent], exports: [SmartTableComponent, SmartTableFilterComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent] }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SmartTableModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: SmartTableModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  exports: [SmartTableComponent, SmartTableFilterComponent],
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3JzLCBOZ0Nzc0NsYXNzIH0gZnJvbSAnLi4vY29yZXVpLnR5cGVzJztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVGFibGUsIElUYWJsZUVsZW1lbnRQcm9wcywgSVRhYmxlUm93Q2VsbFByb3BzIH0gZnJvbSAnLi4vdGFibGUvdGFibGUudHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNtYXJ0VGFibGUge1xuICAvKipcbiAgICogU2V0cyBhY3RpdmUgcGFnZS4gSWYgJ3BhZ2luYXRpb24nIHByb3AgaXMgZW5hYmxlZCwgYWN0aXZlUGFnZSBpcyBzZXQgb25seSBpbml0aWFsbHkuXG4gICAqIEB0eXBlIG51bWJlclxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICBhY3RpdmVQYWdlPzogbnVtYmVyO1xuICAvKipcbiAgICogV2hlbiBzZXQsIGRpc3BsYXlzIHRhYmxlIGNsZWFuZXIgYWJvdmUgdGFibGUsIG5leHQgdG8gdGhlIHRhYmxlIGZpbHRlciAob3IgaW4gcGxhY2Ugb2YgdGFibGUgZmlsdGVyIGlmIGB0YWJsZUZpbHRlcmAgcHJvcCBpcyBub3Qgc2V0KVxuICAgKiBDbGVhbmVyIHJlc2V0cyBgdGFibGVGaWx0ZXJWYWx1ZWAsIGBjb2x1bW5GaWx0ZXJWYWx1ZWAsIGBzb3J0ZXJWYWx1ZWAuXG4gICAqIElmIGNsZWFuIGlzIHBvc3NpYmxlIGl0IGlzIGNsaWNrYWJsZSAoYHRhYkluZGV4PVwiMFwiYCBgcm9sZT1cImJ1dHRvblwiYCwgYGNvbG9yPVwiZGFuZ2VyXCJgKSwgb3RoZXJ3aXNlIGl0IGlzIG5vdCBjbGlja2FibGUgYW5kIHRyYW5zcGFyZW50LlxuICAgKiBDbGVhbmVyIGNhbiBiZSBjdXN0b21pemVkIHRocm91Z2ggdGhlIGBjbGVhbmVyYCBzbG90LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBjbGVhbmVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFN0eWxlIHRhYmxlIGl0ZW1zIGFzIGNsaWNrYWJsZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgY2xpY2thYmxlUm93cz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGVuIHNldCwgZGlzcGxheXMgYWRkaXRpb25hbCBmaWx0ZXIgcm93IGJldHdlZW4gdGFibGUgaGVhZGVyIGFuZCBpdGVtcywgYWxsb3dpbmcgZmlsdGVyaW5nIGJ5IHNwZWNpZmljIGNvbHVtbi5cbiAgICogQ29sdW1uIGZpbHRlciBjYW4gYmUgY3VzdG9taXplZCwgYnkgcGFzc2luZyBwcm9wIGFzIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucyBhcyBrZXlzLiBBdmFpbGFibGUgb3B0aW9uczpcbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBEaXNhYmxlcyBhdXRvbWF0aWMgZmlsdGVyaW5nIGluc2lkZSBjb21wb25lbnQuXG4gICAqIC0gbGF6eSAoQm9vbGVhbikgLSBTZXQgdG8gdHJ1ZSB0byB0cmlnZ2VyIGZpbHRlciB1cGRhdGVzIG9ubHkgb24gY2hhbmdlIGV2ZW50LlxuICAgKiBAdHlwZSBib29sZWFuIHwgQ29sdW1uRmlsdGVyXG4gICAqL1xuICBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRhYmxlIGZpbHRlci4gVG8gc2V0IHBhc3Mgb2JqZWN0IHdoZXJlIGtleXMgYXJlIGNvbHVtbiBuYW1lcyBhbmQgdmFsdWVzIGFyZSBmaWx0ZXIgc3RyaW5ncyBlLmcuOlxuICAgKiB7IHVzZXI6ICdKb2huJywgYWdlOiAxMiB9XG4gICAqL1xuICBjb2x1bW5GaWx0ZXJWYWx1ZT86IElDb2x1bW5GaWx0ZXJWYWx1ZTtcbiAgLyoqXG4gICAqIFByb3AgZm9yIHRhYmxlIGNvbHVtbnMgY29uZmlndXJhdGlvbi4gSWYgcHJvcCBpcyBub3QgZGVmaW5lZCwgdGFibGUgd2lsbCBkaXNwbGF5IGNvbHVtbnMgYmFzZWQgb24gdGhlIGZpcnN0IGl0ZW0ga2V5cywgb21pdHRpbmcga2V5cyB0aGF0IGJlZ2luIHdpdGggdW5kZXJzY29yZSAoZS5nLiAnX2NsYXNzZXMnKVxuICAgKlxuICAgKiBJbiBjb2x1bW5zIHByb3AgZWFjaCBhcnJheSBpdGVtIHJlcHJlc2VudHMgb25lIGNvbHVtbi4gSXRlbSBtaWdodCBiZSBzcGVjaWZpZWQgaW4gdHdvIHdheXM6XG4gICAqIFN0cmluZzogZWFjaCBpdGVtIGRlZmluZSBjb2x1bW4gbmFtZSBlcXVhbCB0byBpdGVtIHZhbHVlLlxuICAgKiBPYmplY3Q6IGl0ZW0gaXMgb2JqZWN0IHdpdGggZm9sbG93aW5nIGtleXMgYXZhaWxhYmxlIGFzIGNvbHVtbiBjb25maWd1cmF0aW9uOlxuICAgKiAtIGtleSAocmVxdWlyZWQpKFN0cmluZykgLSBkZWZpbmUgY29sdW1uIG5hbWUgZXF1YWwgdG8gaXRlbSBrZXkuXG4gICAqIC0gbGFiZWwgKFN0cmluZykgLSBkZWZpbmUgdmlzaWJsZSBsYWJlbCBvZiBjb2x1bW4uIElmIG5vdCBkZWZpbmVkLCBsYWJlbCB3aWxsIGJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJhc2VkIG9uIGNvbHVtbiBuYW1lLCBieSBjb252ZXJ0aW5nIGtlYmFiLWNhc2UgYW5kIHNuYWtlX2Nhc2UgdG8gaW5kaXZpZHVhbCB3b3JkcyBhbmQgY2FwaXRhbGl6YXRpb24gb2YgZWFjaCB3b3JkLlxuICAgKiAtIF9jbGFzc2VzIChTdHJpbmcvQXJyYXkvT2JqZWN0KSAtIGFkZHMgY2xhc3NlcyB0byBhbGwgY2VsbHMgaW4gYSBjb2x1bW5cbiAgICogLSBfc3R5bGUgKFN0cmluZy9BcnJheS9PYmplY3QpIC0gYWRkcyBzdHlsZXMgdG8gdGhlIGNvbHVtbiBoZWFkZXIgKHVzZWZ1bCBmb3IgZGVmaW5pbmcgd2lkdGhzKVxuICAgKiAtIHNvcnRlciAoQm9vbGVhbikgLSBkaXNhYmxlcyBzb3J0aW5nIG9mIHRoZSBjb2x1bW4gd2hlbiBzZXQgdG8gZmFsc2VcbiAgICogLSBmaWx0ZXIgKEJvb2xlYW4pIC0gcmVtb3ZlcyBmaWx0ZXIgZnJvbSBjb2x1bW4gd2hlbiBzZXQgdG8gZmFsc2UuXG4gICAqL1xuICBjb2x1bW5zPzogKHN0cmluZyB8IElDb2x1bW4pW107XG4gIC8qKlxuICAgKiBFbmFibGVzIHRhYmxlIHNvcnRpbmcgYnkgY29sdW1uIHZhbHVlLiBTb3J0aW5nIHdpbGwgYmUgcGVyZm9ybWVkIGNvcnJlY3RseSBpZiB2YWx1ZXMgaW4gY29sdW1uIGFyZSBvbmUgb2YgdHlwZTogc3RyaW5nIChjYXNlLWluc2Vuc2l0aXZlKSBvciBudW1iZXIuXG4gICAqXG4gICAqIFNvcnRlciBjYW4gYmUgY3VzdG9taXplZCwgYnkgcGFzc2luZyBwcm9wIGFzIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucyBhcyBrZXlzLiBBdmFpbGFibGUgb3B0aW9uczpcbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBEaXNhYmxlcyBhdXRvbWF0aWMgc29ydGluZyBpbnNpZGUgY29tcG9uZW50LlxuICAgKiAtIHJlc2V0YWJsZSAoQm9vbGVhbikgLSBJZiBzZXQgdG8gdHJ1ZSBjbGlja2luZyBvbiBzb3J0ZXIgaGF2ZSB0aHJlZSBzdGF0ZXM6IGFzY2VuZGluZywgZGVzY2VuZGluZyBhbmQgbnVsbC4gVGhhdCBtZWFucyB0aGF0IHRoaXJkIGNsaWNrIG9uIHNvcnRlciB3aWxsIHJlc2V0IHNvcnRpbmcsIGFuZCByZXN0b3JlIHRhYmxlIHRvIG9yaWdpbmFsIG9yZGVyLlxuICAgKiBAdHlwZSBib29sZWFuIHwgU29ydGVyXG4gICAqL1xuICBjb2x1bW5Tb3J0ZXI/OiBib29sZWFuIHwgSVNvcnRlcjtcbiAgLyoqXG4gICAqIERpc3BsYXlzIHRhYmxlIGZvb3Rlciwgd2hpY2ggbWlycm9ycyB0YWJsZSBoZWFkZXIuICh3aXRob3V0IGNvbHVtbiBmaWx0ZXIpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBmb290ZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogU2V0IGZhbHNlIHRvIHJlbW92ZSB0YWJsZSBoZWFkZXIuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIGhlYWRlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvYmplY3RzLCB3aGVyZSBlYWNoIG9iamVjdCByZXByZXNlbnRzIG9uZSBpdGVtIC0gcm93IGluIHRhYmxlLiBBZGRpdGlvbmFsbHksIHlvdSBjYW4gYWRkIHN0eWxlIGNsYXNzZXMgdG8gZWFjaCByb3cgYnkgcGFzc2luZyB0aGVtIGJ5ICdfY2xhc3Nlcycga2V5IGFuZCB0byBzaW5nbGUgY2VsbCBieSAnX2NlbGxDbGFzc2VzJy5cbiAgICpcbiAgICogRXhhbXBsZSBpdGVtOlxuICAgKiB7IG5hbWU6ICdKb2huJyAsIGFnZTogMTIsIF9wcm9wczogeyBjb2xvcjogJ3N1Y2Nlc3MnIH0sIF9jZWxsUHJvcHM6IHsgYWdlOiB7IGNsYXNzOiAnZnctYm9sZCd9fX1cbiAgICogRm9yIGNvbHVtbiBnZW5lcmF0aW9uIGRlc2NyaXB0aW9uIHNlZSBjb2x1bW5zIHByb3AuXG4gICAqIEB0eXBlIEFycmF5PElJdGVtPlxuICAgKi9cbiAgaXRlbXM/OiBJSXRlbVtdO1xuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHBlciBzaXRlLCB3aGVuIHBhZ2luYXRpb24gaXMgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgMTBcbiAgICogQHR5cGUgbnVtYmVyXG4gICAqL1xuICBpdGVtc1BlclBhZ2U/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBMYWJlbCBmb3IgaXRlbXMgcGVyIHBhZ2Ugc2VsZWN0b3IuXG4gICAqIEBkZWZhdWx0ICdJdGVtcyBwZXIgcGFnZTonXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKi9cbiAgaXRlbXNQZXJQYWdlTGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJdGVtcyBwZXIgcGFnZSBzZWxlY3RvciBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCBbNSwgMTAsIDIwLCA1MF1cbiAgICogQHR5cGUgbnVtYmVyW11cbiAgICovXG4gIGl0ZW1zUGVyUGFnZU9wdGlvbnM/OiBudW1iZXJbXTtcbiAgLyoqXG4gICAqIEFkZHMgc2VsZWN0IGVsZW1lbnQgb3ZlciB0YWJsZSwgd2hpY2ggaXMgdXNlZCBmb3IgY29udHJvbCBpdGVtcyBwZXIgcGFnZSBpbiBwYWdpbmF0aW9uLlxuICAgKiBJZiB5b3Ugd2FudCB0byBjdXN0b21pemUgdGhpcyBlbGVtZW50LCBwYXNzIGFuIG9iamVjdCB3aXRoIG9wdGlvbmFsIHZhbHVlczpcbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBkaXNhYmxlcyBhdXRvbWF0aWMgJ2l0ZW1zUGVyUGFnZScgY2hhbmdlICh1c2UgdG8gY2hhbmdlIHBhZ2VzIGV4dGVybmFsbHkgYnkgJ3BhZ2luYXRpb24tY2hhbmdlJyBldmVudCkuXG4gICAqL1xuICBpdGVtc1BlclBhZ2VTZWxlY3Q/OiBib29sZWFuIHwgSXRlbXNQZXJQYWdlU2VsZWN0O1xuICAvKipcbiAgICogV2hlbiBzZXQsIHRhYmxlIHdpbGwgaGF2ZSBsb2FkaW5nIHN0eWxlOiBsb2FkaW5nIHNwaW5uZXIgYW5kIHJlZHVjZWQgb3BhY2l0eS5cbiAgICogV2hlbiAnc21hbGwnIHByb3AgaXMgZW5hYmxlZCBzcGlubmVyIHdpbGwgYmUgYWxzbyBzbWFsbGVyLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBsb2FkaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFJlYWN0Tm9kZSBvciBzdHJpbmcgZm9yIHBhc3NpbmcgY3VzdG9tIG5vSXRlbXNMYWJlbCB0ZXh0cy5cbiAgICogQGRlZmF1bHQgJ05vIGl0ZW1zIGZvdW5kJ1xuICAgKi9cbiAgbm9JdGVtc0xhYmVsPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqXG4gICAqIEVuYWJsZXMgZGVmYXVsdCBwYWdpbmF0aW9uLiBTZXQgdG8gdHJ1ZSBmb3IgZGVmYXVsdCBzZXR1cCBvciBwYXNzIGFuIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgQ1BhZ2luYXRpb24gcHJvcHMuXG4gICAqIERlZmF1bHQgcGFnaW5hdGlvbiB3aWxsIGFsd2F5cyBoYXZlIHRoZSBjb21wdXRlZCBudW1iZXIgb2YgcGFnZXMgdGhhdCBjYW5ub3QgYmUgY2hhbmdlZC5cbiAgICogVGhlIG51bWJlciBvZiBwYWdlcyBpcyBnZW5lcmF0ZWQgYmFzZWQgb24gdGhlIG51bWJlciBvZiBwYXNzZWQgaXRlbXMgYW5kICdpdGVtc1BlclBhZ2UnIHByb3AuXG4gICAqIElmIHRoaXMgcmVzdHJpY3Rpb24gaXMgYW4gb2JzdGFjbGUsIHlvdSBjYW4gbWFrZSBleHRlcm5hbCBDUGFnaW5hdGlvbiBpbnN0ZWFkLlxuICAgKi9cbiAgcGFnaW5hdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHRvIGBDU21hcnRQYWdpbmF0aW9uYCBjb21wb25lbnQuXG4gICAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2FuZ3VsYXIvZG9jcy9jb21wb25lbnRzL3NtYXJ0LXBhZ2luYXRpb24jY3NtYXJ0cGFnaW5hdGlvblxuICAgKiB0b2RvIG9yIHJlbW92ZT9cbiAgICovXG4gIC8vIHBhZ2luYXRpb25Qcm9wcz86IENTbWFydFBhZ2luYXRpb25Qcm9wc1xuICAvKipcbiAgICogU2NvcGVkIGNvbHVtbnMuXG4gICAvLyAqIEB0eXBlIFNjb3BlZENvbHVtbnNcbiAgICogdG9kbyBvciByZW1vdmU/XG4gICAqL1xuICAvLyBzY29wZWRDb2x1bW5zPzogU2NvcGVkQ29sdW1uc1xuICAvKipcbiAgICogQWRkIGNoZWNrYm94ZXMgdG8gbWFrZSB0YWJsZSByb3dzIHNlbGVjdGFibGUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIHNlbGVjdGFibGU/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlcyBzZWxlY3QgYWxsIGNoZWNrYm94IGRpc3BsYXllZCBpbiB0aGUgaGVhZGVyIG9mIHRoZSB0YWJsZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgc2VsZWN0QWxsPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFN0YXRlIG9mIHRoZSBzb3J0ZXIuIE5hbWUga2V5IGlzIGNvbHVtbiBuYW1lLCBkaXJlY3Rpb24gY2FuIGJlICdhc2MnIG9yICdkZXNjJy5cbiAgICogQHR5cGUgSVNvcnRlclZhbHVlXG4gICAqL1xuICBzb3J0ZXJWYWx1ZT86IElTb3J0ZXJWYWx1ZTtcbiAgLyoqXG4gICAqIFNvcnRlciBpY29uIHdoZW4gaXRlbXMgYXJlIHVuc29ydGVkLlxuICAgKiBAZGVmYXVsdCAnPHN2ZyBjSWNvbiB3aWR0aD1cIjE4XCIgY29udGVudD17Y2lsQXJyb3dUb3B9IC8+XG4gICAqL1xuICBzb3J0aW5nSWNvbj86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBTb3J0ZXIgaWNvbiB3aGVuIGl0ZW1zIGFyZSBzb3J0ZWQgYXNjZW5kaW5nLlxuICAgKiBAZGVmYXVsdCAnPHN2ZyBjSWNvbiB3aWR0aD1cIjE4XCIgY29udGVudD17Y2lsQXJyb3dUb3B9IC8+XG4gICAqL1xuICBzb3J0aW5nSWNvbkFzY2VuZGluZz86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBTb3J0ZXIgaWNvbiB3aGVuIGl0ZW1zIGFyZSBzb3J0ZWQgZGVzY2VuZGluZy5cbiAgICogQGRlZmF1bHQgJzxzdmcgY0ljb24gd2lkdGg9XCIxOFwiIGNvbnRlbnQ9e2NpbEFycm93Qm90dG9tfSAvPlxuICAgKi9cbiAgc29ydGluZ0ljb25EZXNjZW5kaW5nPzogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqXG4gICAqIFByb3BlcnRpZXMgdG8gYFRhYmxlQm9keWAgY29tcG9uZW50LlxuICAgKiBAbGluayBodHRwczovL2NvcmV1aS5pby9hbmd1bGFyL2RvY3MvY29tcG9uZW50cy90YWJsZS8jY3RhYmxlYm9keVxuICAgKi9cbiAgdGFibGVCb2R5UHJvcHM/OiBJVGFibGVTZWN0aW9uUHJvcHM7XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHRvIGBUYWJsZUZvb3RgIGNvbXBvbmVudC5cbiAgICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vYW5ndWxhci9kb2NzL2NvbXBvbmVudHMvdGFibGUvI2N0YWJsZWZvb3RcbiAgICovXG4gIHRhYmxlRm9vdFByb3BzPzogSVRhYmxlU2VjdGlvblByb3BzO1xuICAvKipcbiAgICogV2hlbiBzZXQsIGRpc3BsYXlzIHRhYmxlIGZpbHRlciBhYm92ZSB0YWJsZSwgYWxsb3dpbmcgZmlsdGVyaW5nIGJ5IHNwZWNpZmljIGNvbHVtbi5cbiAgICpcbiAgICogQ29sdW1uIGZpbHRlciBjYW4gYmUgY3VzdG9taXplZCwgYnkgcGFzc2luZyBwcm9wIGFzIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucyBhcyBrZXlzLiBBdmFpbGFibGUgb3B0aW9uczpcbiAgICogLSBwbGFjZWhvbGRlciAoU3RyaW5nKSAtIFNldHMgY3VzdG9tIHRhYmxlIGZpbHRlciBwbGFjZWhvbGRlci5cbiAgICogLSBsYWJlbCAoU3RyaW5nKSAtIFNldHMgY3VzdG9tIHRhYmxlIGZpbHRlciBsYWJlbC5cbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBEaXNhYmxlcyBhdXRvbWF0aWMgZmlsdGVyaW5nIGluc2lkZSBjb21wb25lbnQuXG4gICAqIC0gbGF6eSAoQm9vbGVhbikgLSBTZXQgdG8gdHJ1ZSB0byB0cmlnZ2VyIGZpbHRlciB1cGRhdGVzIG9ubHkgb24gY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgdGFibGVGaWx0ZXI/OiBib29sZWFuIHwgSVRhYmxlRmlsdGVyO1xuICAvKipcbiAgICogVGhlIGVsZW1lbnQgcmVwcmVzZW50cyBhIGNhcHRpb24gZm9yIGEgY29tcG9uZW50LlxuICAgKiBAZGVmYXVsdCAnRmlsdGVyOidcbiAgICogdG9kbyBvciByZW1vdmU/XG4gICAqL1xuICB0YWJsZUZpbHRlckxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGEgc2hvcnQgaGludCB0aGF0IGlzIHZpc2libGUgaW4gdGhlIHNlYXJjaCBpbnB1dC5cbiAgICogQGRlZmF1bHQgJ3R5cGUgc3RyaW5nLi4uJ1xuICAgKiB0b2RvIG9yIHJlbW92ZT9cbiAgICovXG4gIHRhYmxlRmlsdGVyUGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0YWJsZSBmaWx0ZXIuIFNldCAuc3luYyBtb2RpZmllciB0byB0cmFjayBjaGFuZ2VzLlxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICovXG4gIHRhYmxlRmlsdGVyVmFsdWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHRvIGBDVGFibGVIZWFkYCBjb21wb25lbnQuXG4gICAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2FuZ3VsYXIvZG9jcy9jb21wb25lbnRzL3RhYmxlLyNjdGFibGVoZWFkXG4gICAqL1xuICB0YWJsZUhlYWRQcm9wcz86IElUYWJsZVNlY3Rpb25Qcm9wcztcbiAgLyoqXG4gICAqIFByb3BlcnRpZXMgdG8gYENUYWJsZWAgY29tcG9uZW50LlxuICAgKiBAbGluayBodHRwczovL2NvcmV1aS5pby9hbmd1bGFyL2RvY3MvY29tcG9uZW50cy90YWJsZS8jY3RhYmxlXG4gICAqL1xuICB0YWJsZVByb3BzPzogSVRhYmxlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUYWJsZVNlY3Rpb25Qcm9wcyBleHRlbmRzIElUYWJsZUVsZW1lbnRQcm9wcyB7XG4gIGFsaWduPzogJ2JvdHRvbScgfCAnbWlkZGxlJyB8ICd0b3AnO1xuICBjb2xvcj86IENvbG9ycztcbiAgYXR0cmlidXRlcz86IFBhcnRpYWw8SFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb2x1bW5GaWx0ZXIge1xuICBsYXp5PzogYm9vbGVhbjtcbiAgZXh0ZXJuYWw/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb2x1bW5GaWx0ZXJWYWx1ZSB7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29sdW1uIHtcbiAgY2hpbGRyZW4/OiBJQ29sdW1uW107XG4gIGZpbHRlcj86IGJvb2xlYW4gfCAoKGNvbHVtbjogSUl0ZW0sIHZhbHVlOiBzdHJpbmcpID0+IGJvb2xlYW4pO1xuICBncm91cD86IHN0cmluZztcbiAga2V5OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBzb3J0ZXI/OiBib29sZWFuIHwgKChhOiBJSXRlbSwgYjogSUl0ZW0pID0+IG51bWJlcik7XG4gIF9hdHRyPzogUGFydGlhbDxIVE1MVGFibGVDZWxsRWxlbWVudD47ICAgIC8vIGhlYWRlclxuICBfc3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+OyAgICAvLyBoZWFkZXJcbiAgX3Byb3BzPzogSVRhYmxlSGVhZGVyQ2VsbFByb3BzOyAgICAgICAgICAgLy8gaGVhZGVyXG4gIF9jbGFzc2VzPzogTmdDc3NDbGFzczsgICAgICAgICAgICAgICAgICAgIC8vIGhlYWRlclxuICBfY29sQXR0cj86IFBhcnRpYWw8SFRNTFRhYmxlQ29sRWxlbWVudD47ICAvLyBjb2x1bW5cbiAgX2NvbFN0eWxlPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjsgLy8gY29sdW1uXG4gIF9jb2xQcm9wcz86IElUYWJsZVJvd0NlbGxQcm9wczsgICAgICAgICAgIC8vIGNvbHVtblxuICBfY29sQ2xhc3M/OiBOZ0Nzc0NsYXNzOyAgICAgICAgICAgICAgICAgICAvLyBjb2x1bW5cbiAgX2xhYmVsVGVtcGxhdGVJZD86IHN0cmluZztcbiAgX2RhdGE/OiBhbnlcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR3JvdXAge1xuICBjaGlsZHJlbj86IElHcm91cFtdIHwgSUNvbHVtbltdO1xuICBjb2xzcGFuPzogbnVtYmVyO1xuICBkZWVwPzogbnVtYmVyO1xuICBncm91cD86IHN0cmluZztcbiAga2V5OiBzdHJpbmc7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBfYXR0cj86IFBhcnRpYWw8SFRNTFRhYmxlQ2VsbEVsZW1lbnQ+O1xuICBfY2xhc3M/OiBOZ0Nzc0NsYXNzO1xuICBfcHJvcHM/OiBJVGFibGVIZWFkZXJDZWxsUHJvcHM7XG4gIF9zdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG4gIF9sYWJlbFRlbXBsYXRlSWQ/OiBzdHJpbmc7XG4gIF9kYXRhPzogYW55XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlSGVhZGVyQ2VsbFByb3BzIHtcbiAgLyoqXG4gICAqIFNldHMgdGhlIGNvbG9yIGNvbnRleHQgb2YgdGhlIGNvbXBvbmVudCB0byBvbmUgb2YgQ29yZVVJ4oCZcyB0aGVtZWQgY29sb3JzLlxuICAgKlxuICAgKiBAdHlwZSAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdzdWNjZXNzJyB8ICdkYW5nZXInIHwgJ3dhcm5pbmcnIHwgJ2luZm8nIHwgJ2RhcmsnIHwgJ2xpZ2h0JyB8IHN0cmluZ1xuICAgKi9cbiAgY29sb3I/OiBDb2xvcnM7XG5cbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTb3J0ZXIge1xuICByZXNldGFibGU/OiBib29sZWFuO1xuICBleHRlcm5hbD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUl0ZW0ge1xuICBfYXR0cj86IFBhcnRpYWw8SFRNTFRhYmxlUm93RWxlbWVudD47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA/IHJvdyBodG1sIGF0dHJpYnNcbiAgX2NsYXNzPzogTmdDc3NDbGFzczsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gPyByb3cgY3NzIGNsYXNzXG4gIF9wcm9wcz86IElUYWJsZVJvd0NlbGxQcm9wczsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJvdyBQcm9wc1xuICBfc3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA/IHJvdyBjc3Mgc3R5bGVcbiAgX2NlbGxBdHRyPzogSVRhYmxlQ2VsbFByb3BzPEhUTUxUYWJsZUNlbGxFbGVtZW50PjsgICAgICAgICAgICAgICAgICAgLy8gPyBjZWxsIGh0bWwgYXR0cmlic1xuICBfY2VsbENsYXNzPzogSVRhYmxlQ2VsbFByb3BzPE5nQ3NzQ2xhc3M+OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA/IGNlbGwgY3NzIGNsYXNzXG4gIF9jZWxsUHJvcHM/OiBJVGFibGVDZWxsUHJvcHM8SVRhYmxlUm93Q2VsbFByb3BzPjsgICAgICAgICAgICAgICAgICAgIC8vIGNlbGwgcHJvcHNcbiAgX2NlbGxTdHlsZT86IElUYWJsZUNlbGxQcm9wczxDU1NTdHlsZURlY2xhcmF0aW9uPjsgICAgICAgICAgICAgICAgICAgLy8gPyBjZWxsIGNzcyBzdHlsZVxuXG4gIF9zZWxlY3RlZD86IGJvb2xlYW47XG4gIF9zZWxlY3RhYmxlPzogYm9vbGVhbjtcblxuICBba2V5OiBzdHJpbmddOiBudW1iZXIgfCBzdHJpbmcgfCBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlQ2VsbFByb3BzPFQ+IHtcbiAgX2FsbD86IFBhcnRpYWw8VD47XG5cbiAgW2tleTogc3RyaW5nXTogUGFydGlhbDxUPiB8IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSXRlbUludGVybmFsIGV4dGVuZHMgSUl0ZW0ge1xuICBfX19pZD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJdGVtc1BlclBhZ2VTZWxlY3Qge1xuICBleHRlcm5hbD86IGJvb2xlYW47XG4gIC8vIGxhYmVsPzogc3RyaW5nO1xuICAvLyB2YWx1ZXM/OiBBcnJheTxudW1iZXI+O1xufVxuXG4vLyBleHBvcnQgaW50ZXJmYWNlIFNjb3BlZENvbHVtbnMge1xuLy8gICBba2V5OiBzdHJpbmddOiBhbnlcbi8vICAgZGV0YWlscz86IChhOiBJSXRlbSwgYjogbnVtYmVyKSA9PiBSZWFjdE5vZGVcbi8vIH1cblxuZXhwb3J0IGludGVyZmFjZSBJU29ydGVyVmFsdWUge1xuICBjb2x1bW4/OiBzdHJpbmc7XG4gIHN0YXRlPzogbnVtYmVyIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUYWJsZUZpbHRlciB7XG4gIGxhenk/OiBib29sZWFuO1xuICBleHRlcm5hbD86IGJvb2xlYW47XG4gIGxhYmVsPzogc3RyaW5nO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmcgfCBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIFNvcnRPcmRlciA9ICdhc2MnIHwgJ2Rlc2MnIHwgMCB8IHVuZGVmaW5lZDtcblxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3JzLCBOZ0Nzc0NsYXNzIH0gZnJvbSAnLi4vY29yZXVpLnR5cGVzJztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVGFibGUsIElUYWJsZUVsZW1lbnRQcm9wcywgSVRhYmxlUm93Q2VsbFByb3BzIH0gZnJvbSAnLi4vdGFibGUvdGFibGUudHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNtYXJ0VGFibGUge1xuICAvKipcbiAgICogU2V0cyBhY3RpdmUgcGFnZS4gSWYgJ3BhZ2luYXRpb24nIHByb3AgaXMgZW5hYmxlZCwgYWN0aXZlUGFnZSBpcyBzZXQgb25seSBpbml0aWFsbHkuXG4gICAqIEB0eXBlIG51bWJlclxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICBhY3RpdmVQYWdlPzogbnVtYmVyO1xuICAvKipcbiAgICogV2hlbiBzZXQsIGRpc3BsYXlzIHRhYmxlIGNsZWFuZXIgYWJvdmUgdGFibGUsIG5leHQgdG8gdGhlIHRhYmxlIGZpbHRlciAob3IgaW4gcGxhY2Ugb2YgdGFibGUgZmlsdGVyIGlmIGB0YWJsZUZpbHRlcmAgcHJvcCBpcyBub3Qgc2V0KVxuICAgKiBDbGVhbmVyIHJlc2V0cyBgdGFibGVGaWx0ZXJWYWx1ZWAsIGBjb2x1bW5GaWx0ZXJWYWx1ZWAsIGBzb3J0ZXJWYWx1ZWAuXG4gICAqIElmIGNsZWFuIGlzIHBvc3NpYmxlIGl0IGlzIGNsaWNrYWJsZSAoYHRhYkluZGV4PVwiMFwiYCBgcm9sZT1cImJ1dHRvblwiYCwgYGNvbG9yPVwiZGFuZ2VyXCJgKSwgb3RoZXJ3aXNlIGl0IGlzIG5vdCBjbGlja2FibGUgYW5kIHRyYW5zcGFyZW50LlxuICAgKiBDbGVhbmVyIGNhbiBiZSBjdXN0b21pemVkIHRocm91Z2ggdGhlIGBjbGVhbmVyYCBzbG90LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBjbGVhbmVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFN0eWxlIHRhYmxlIGl0ZW1zIGFzIGNsaWNrYWJsZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgY2xpY2thYmxlUm93cz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGVuIHNldCwgZGlzcGxheXMgYWRkaXRpb25hbCBmaWx0ZXIgcm93IGJldHdlZW4gdGFibGUgaGVhZGVyIGFuZCBpdGVtcywgYWxsb3dpbmcgZmlsdGVyaW5nIGJ5IHNwZWNpZmljIGNvbHVtbi5cbiAgICogQ29sdW1uIGZpbHRlciBjYW4gYmUgY3VzdG9taXplZCwgYnkgcGFzc2luZyBwcm9wIGFzIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucyBhcyBrZXlzLiBBdmFpbGFibGUgb3B0aW9uczpcbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBEaXNhYmxlcyBhdXRvbWF0aWMgZmlsdGVyaW5nIGluc2lkZSBjb21wb25lbnQuXG4gICAqIC0gbGF6eSAoQm9vbGVhbikgLSBTZXQgdG8gdHJ1ZSB0byB0cmlnZ2VyIGZpbHRlciB1cGRhdGVzIG9ubHkgb24gY2hhbmdlIGV2ZW50LlxuICAgKiBAdHlwZSBib29sZWFuIHwgQ29sdW1uRmlsdGVyXG4gICAqL1xuICBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRhYmxlIGZpbHRlci4gVG8gc2V0IHBhc3Mgb2JqZWN0IHdoZXJlIGtleXMgYXJlIGNvbHVtbiBuYW1lcyBhbmQgdmFsdWVzIGFyZSBmaWx0ZXIgc3RyaW5ncyBlLmcuOlxuICAgKiB7IHVzZXI6ICdKb2huJywgYWdlOiAxMiB9XG4gICAqL1xuICBjb2x1bW5GaWx0ZXJWYWx1ZT86IElDb2x1bW5GaWx0ZXJWYWx1ZTtcbiAgLyoqXG4gICAqIFByb3AgZm9yIHRhYmxlIGNvbHVtbnMgY29uZmlndXJhdGlvbi4gSWYgcHJvcCBpcyBub3QgZGVmaW5lZCwgdGFibGUgd2lsbCBkaXNwbGF5IGNvbHVtbnMgYmFzZWQgb24gdGhlIGZpcnN0IGl0ZW0ga2V5cywgb21pdHRpbmcga2V5cyB0aGF0IGJlZ2luIHdpdGggdW5kZXJzY29yZSAoZS5nLiAnX2NsYXNzZXMnKVxuICAgKlxuICAgKiBJbiBjb2x1bW5zIHByb3AgZWFjaCBhcnJheSBpdGVtIHJlcHJlc2VudHMgb25lIGNvbHVtbi4gSXRlbSBtaWdodCBiZSBzcGVjaWZpZWQgaW4gdHdvIHdheXM6XG4gICAqIFN0cmluZzogZWFjaCBpdGVtIGRlZmluZSBjb2x1bW4gbmFtZSBlcXVhbCB0byBpdGVtIHZhbHVlLlxuICAgKiBPYmplY3Q6IGl0ZW0gaXMgb2JqZWN0IHdpdGggZm9sbG93aW5nIGtleXMgYXZhaWxhYmxlIGFzIGNvbHVtbiBjb25maWd1cmF0aW9uOlxuICAgKiAtIGtleSAocmVxdWlyZWQpKFN0cmluZykgLSBkZWZpbmUgY29sdW1uIG5hbWUgZXF1YWwgdG8gaXRlbSBrZXkuXG4gICAqIC0gbGFiZWwgKFN0cmluZykgLSBkZWZpbmUgdmlzaWJsZSBsYWJlbCBvZiBjb2x1bW4uIElmIG5vdCBkZWZpbmVkLCBsYWJlbCB3aWxsIGJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJhc2VkIG9uIGNvbHVtbiBuYW1lLCBieSBjb252ZXJ0aW5nIGtlYmFiLWNhc2UgYW5kIHNuYWtlX2Nhc2UgdG8gaW5kaXZpZHVhbCB3b3JkcyBhbmQgY2FwaXRhbGl6YXRpb24gb2YgZWFjaCB3b3JkLlxuICAgKiAtIF9jbGFzc2VzIChTdHJpbmcvQXJyYXkvT2JqZWN0KSAtIGFkZHMgY2xhc3NlcyB0byBhbGwgY2VsbHMgaW4gYSBjb2x1bW5cbiAgICogLSBfc3R5bGUgKFN0cmluZy9BcnJheS9PYmplY3QpIC0gYWRkcyBzdHlsZXMgdG8gdGhlIGNvbHVtbiBoZWFkZXIgKHVzZWZ1bCBmb3IgZGVmaW5pbmcgd2lkdGhzKVxuICAgKiAtIHNvcnRlciAoQm9vbGVhbikgLSBkaXNhYmxlcyBzb3J0aW5nIG9mIHRoZSBjb2x1bW4gd2hlbiBzZXQgdG8gZmFsc2VcbiAgICogLSBmaWx0ZXIgKEJvb2xlYW4pIC0gcmVtb3ZlcyBmaWx0ZXIgZnJvbSBjb2x1bW4gd2hlbiBzZXQgdG8gZmFsc2UuXG4gICAqL1xuICBjb2x1bW5zPzogKHN0cmluZyB8IElDb2x1bW4pW107XG4gIC8qKlxuICAgKiBFbmFibGVzIHRhYmxlIHNvcnRpbmcgYnkgY29sdW1uIHZhbHVlLiBTb3J0aW5nIHdpbGwgYmUgcGVyZm9ybWVkIGNvcnJlY3RseSBpZiB2YWx1ZXMgaW4gY29sdW1uIGFyZSBvbmUgb2YgdHlwZTogc3RyaW5nIChjYXNlLWluc2Vuc2l0aXZlKSBvciBudW1iZXIuXG4gICAqXG4gICAqIFNvcnRlciBjYW4gYmUgY3VzdG9taXplZCwgYnkgcGFzc2luZyBwcm9wIGFzIG9iamVjdCB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucyBhcyBrZXlzLiBBdmFpbGFibGUgb3B0aW9uczpcbiAgICogLSBleHRlcm5hbCAoQm9vbGVhbikgLSBEaXNhYmxlcyBhdXRvbWF0aWMgc29ydGluZyBpbnNpZGUgY29tcG9uZW50LlxuICAgKiAtIHJlc2V0dGFibGUgKEJvb2xlYW4pIC0gSWYgc2V0IHRvIHRydWUgY2xpY2tpbmcgb24gc29ydGVyIGhhdmUgdGhyZWUgc3RhdGVzOiBhc2NlbmRpbmcsIGRlc2NlbmRpbmcgYW5kIG51bGwuIFRoYXQgbWVhbnMgdGhhdCB0aGlyZCBjbGljayBvbiBzb3J0ZXIgd2lsbCByZXNldCBzb3J0aW5nLCBhbmQgcmVzdG9yZSB0YWJsZSB0byBvcmlnaW5hbCBvcmRlci5cbiAgICogQHR5cGUgYm9vbGVhbiB8IFNvcnRlclxuICAgKi9cbiAgY29sdW1uU29ydGVyPzogYm9vbGVhbiB8IElTb3J0ZXI7XG4gIC8qKlxuICAgKiBEaXNwbGF5cyB0YWJsZSBmb290ZXIsIHdoaWNoIG1pcnJvcnMgdGFibGUgaGVhZGVyLiAod2l0aG91dCBjb2x1bW4gZmlsdGVyKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgZm9vdGVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNldCBmYWxzZSB0byByZW1vdmUgdGFibGUgaGVhZGVyLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBoZWFkZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQXJyYXkgb2Ygb2JqZWN0cywgd2hlcmUgZWFjaCBvYmplY3QgcmVwcmVzZW50cyBvbmUgaXRlbSAtIHJvdyBpbiB0YWJsZS4gQWRkaXRpb25hbGx5LCB5b3UgY2FuIGFkZCBzdHlsZSBjbGFzc2VzIHRvIGVhY2ggcm93IGJ5IHBhc3NpbmcgdGhlbSBieSAnX2NsYXNzZXMnIGtleSBhbmQgdG8gc2luZ2xlIGNlbGwgYnkgJ19jZWxsQ2xhc3NlcycuXG4gICAqXG4gICAqIEV4YW1wbGUgaXRlbTpcbiAgICogeyBuYW1lOiAnSm9obicgLCBhZ2U6IDEyLCBfcHJvcHM6IHsgY29sb3I6ICdzdWNjZXNzJyB9LCBfY2VsbFByb3BzOiB7IGFnZTogeyBjbGFzczogJ2Z3LWJvbGQnfX19XG4gICAqIEZvciBjb2x1bW4gZ2VuZXJhdGlvbiBkZXNjcmlwdGlvbiBzZWUgY29sdW1ucyBwcm9wLlxuICAgKiBAdHlwZSBBcnJheTxJSXRlbT5cbiAgICovXG4gIGl0ZW1zPzogSUl0ZW1bXTtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyBwZXIgc2l0ZSwgd2hlbiBwYWdpbmF0aW9uIGlzIGVuYWJsZWQuXG4gICAqIEBkZWZhdWx0IDEwXG4gICAqIEB0eXBlIG51bWJlclxuICAgKi9cbiAgaXRlbXNQZXJQYWdlPzogbnVtYmVyO1xuICAvKipcbiAgICogTGFiZWwgZm9yIGl0ZW1zIHBlciBwYWdlIHNlbGVjdG9yLlxuICAgKiBAZGVmYXVsdCAnSXRlbXMgcGVyIHBhZ2U6J1xuICAgKiBAdHlwZSBzdHJpbmdcbiAgICovXG4gIGl0ZW1zUGVyUGFnZUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogSXRlbXMgcGVyIHBhZ2Ugc2VsZWN0b3Igb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgWzUsIDEwLCAyMCwgNTBdXG4gICAqIEB0eXBlIG51bWJlcltdXG4gICAqL1xuICBpdGVtc1BlclBhZ2VPcHRpb25zPzogbnVtYmVyW107XG4gIC8qKlxuICAgKiBBZGRzIHNlbGVjdCBlbGVtZW50IG92ZXIgdGFibGUsIHdoaWNoIGlzIHVzZWQgZm9yIGNvbnRyb2wgaXRlbXMgcGVyIHBhZ2UgaW4gcGFnaW5hdGlvbi5cbiAgICogSWYgeW91IHdhbnQgdG8gY3VzdG9taXplIHRoaXMgZWxlbWVudCwgcGFzcyBhbiBvYmplY3Qgd2l0aCBvcHRpb25hbCB2YWx1ZXM6XG4gICAqIC0gZXh0ZXJuYWwgKEJvb2xlYW4pIC0gZGlzYWJsZXMgYXV0b21hdGljICdpdGVtc1BlclBhZ2UnIGNoYW5nZSAodXNlIHRvIGNoYW5nZSBwYWdlcyBleHRlcm5hbGx5IGJ5ICdwYWdpbmF0aW9uLWNoYW5nZScgZXZlbnQpLlxuICAgKi9cbiAgaXRlbXNQZXJQYWdlU2VsZWN0PzogYm9vbGVhbiB8IEl0ZW1zUGVyUGFnZVNlbGVjdDtcbiAgLyoqXG4gICAqIFdoZW4gc2V0LCB0YWJsZSB3aWxsIGhhdmUgbG9hZGluZyBzdHlsZTogbG9hZGluZyBzcGlubmVyIGFuZCByZWR1Y2VkIG9wYWNpdHkuXG4gICAqIFdoZW4gJ3NtYWxsJyBwcm9wIGlzIGVuYWJsZWQgc3Bpbm5lciB3aWxsIGJlIGFsc28gc21hbGxlci5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgbG9hZGluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBSZWFjdE5vZGUgb3Igc3RyaW5nIGZvciBwYXNzaW5nIGN1c3RvbSBub0l0ZW1zTGFiZWwgdGV4dHMuXG4gICAqIEBkZWZhdWx0ICdObyBpdGVtcyBmb3VuZCdcbiAgICovXG4gIG5vSXRlbXNMYWJlbD86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBFbmFibGVzIGRlZmF1bHQgcGFnaW5hdGlvbi4gU2V0IHRvIHRydWUgZm9yIGRlZmF1bHQgc2V0dXAgb3IgcGFzcyBhbiBvYmplY3Qgd2l0aCBhZGRpdGlvbmFsIENQYWdpbmF0aW9uIHByb3BzLlxuICAgKiBEZWZhdWx0IHBhZ2luYXRpb24gd2lsbCBhbHdheXMgaGF2ZSB0aGUgY29tcHV0ZWQgbnVtYmVyIG9mIHBhZ2VzIHRoYXQgY2Fubm90IGJlIGNoYW5nZWQuXG4gICAqIFRoZSBudW1iZXIgb2YgcGFnZXMgaXMgZ2VuZXJhdGVkIGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgcGFzc2VkIGl0ZW1zIGFuZCAnaXRlbXNQZXJQYWdlJyBwcm9wLlxuICAgKiBJZiB0aGlzIHJlc3RyaWN0aW9uIGlzIGFuIG9ic3RhY2xlLCB5b3UgY2FuIG1ha2UgZXh0ZXJuYWwgQ1BhZ2luYXRpb24gaW5zdGVhZC5cbiAgICovXG4gIHBhZ2luYXRpb24/OiBib29sZWFuO1xuICAvKipcbiAgICogUHJvcGVydGllcyB0byBgQ1NtYXJ0UGFnaW5hdGlvbmAgY29tcG9uZW50LlxuICAgKiBAbGluayBodHRwczovL2NvcmV1aS5pby9hbmd1bGFyL2RvY3MvY29tcG9uZW50cy9zbWFydC1wYWdpbmF0aW9uI2NzbWFydHBhZ2luYXRpb25cbiAgICogdG9kbyBvciByZW1vdmU/XG4gICAqL1xuICAvLyBwYWdpbmF0aW9uUHJvcHM/OiBDU21hcnRQYWdpbmF0aW9uUHJvcHNcbiAgLyoqXG4gICAqIFNjb3BlZCBjb2x1bW5zLlxuICAgLy8gKiBAdHlwZSBTY29wZWRDb2x1bW5zXG4gICAqIHRvZG8gb3IgcmVtb3ZlP1xuICAgKi9cbiAgLy8gc2NvcGVkQ29sdW1ucz86IFNjb3BlZENvbHVtbnNcbiAgLyoqXG4gICAqIEFkZCBjaGVja2JveGVzIHRvIG1ha2UgdGFibGUgcm93cyBzZWxlY3RhYmxlLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBzZWxlY3RhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZXMgc2VsZWN0IGFsbCBjaGVja2JveCBkaXNwbGF5ZWQgaW4gdGhlIGhlYWRlciBvZiB0aGUgdGFibGUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIHNlbGVjdEFsbD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTdGF0ZSBvZiB0aGUgc29ydGVyLiBOYW1lIGtleSBpcyBjb2x1bW4gbmFtZSwgZGlyZWN0aW9uIGNhbiBiZSAnYXNjJyBvciAnZGVzYycuXG4gICAqIEB0eXBlIElTb3J0ZXJWYWx1ZVxuICAgKi9cbiAgc29ydGVyVmFsdWU/OiBJU29ydGVyVmFsdWU7XG4gIC8qKlxuICAgKiBTb3J0ZXIgaWNvbiB3aGVuIGl0ZW1zIGFyZSB1bnNvcnRlZC5cbiAgICogQGRlZmF1bHQgJzxzdmcgY0ljb24gd2lkdGg9XCIxOFwiIGNvbnRlbnQ9e2NpbEFycm93VG9wfSAvPlxuICAgKi9cbiAgc29ydGluZ0ljb24/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogU29ydGVyIGljb24gd2hlbiBpdGVtcyBhcmUgc29ydGVkIGFzY2VuZGluZy5cbiAgICogQGRlZmF1bHQgJzxzdmcgY0ljb24gd2lkdGg9XCIxOFwiIGNvbnRlbnQ9e2NpbEFycm93VG9wfSAvPlxuICAgKi9cbiAgc29ydGluZ0ljb25Bc2NlbmRpbmc/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogU29ydGVyIGljb24gd2hlbiBpdGVtcyBhcmUgc29ydGVkIGRlc2NlbmRpbmcuXG4gICAqIEBkZWZhdWx0ICc8c3ZnIGNJY29uIHdpZHRoPVwiMThcIiBjb250ZW50PXtjaWxBcnJvd0JvdHRvbX0gLz5cbiAgICovXG4gIHNvcnRpbmdJY29uRGVzY2VuZGluZz86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHRvIGBUYWJsZUJvZHlgIGNvbXBvbmVudC5cbiAgICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vYW5ndWxhci9kb2NzL2NvbXBvbmVudHMvdGFibGUvI2N0YWJsZWJvZHlcbiAgICovXG4gIHRhYmxlQm9keVByb3BzPzogSVRhYmxlU2VjdGlvblByb3BzO1xuICAvKipcbiAgICogUHJvcGVydGllcyB0byBgVGFibGVGb290YCBjb21wb25lbnQuXG4gICAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2FuZ3VsYXIvZG9jcy9jb21wb25lbnRzL3RhYmxlLyNjdGFibGVmb290XG4gICAqL1xuICB0YWJsZUZvb3RQcm9wcz86IElUYWJsZVNlY3Rpb25Qcm9wcztcbiAgLyoqXG4gICAqIFdoZW4gc2V0LCBkaXNwbGF5cyB0YWJsZSBmaWx0ZXIgYWJvdmUgdGFibGUsIGFsbG93aW5nIGZpbHRlcmluZyBieSBzcGVjaWZpYyBjb2x1bW4uXG4gICAqXG4gICAqIENvbHVtbiBmaWx0ZXIgY2FuIGJlIGN1c3RvbWl6ZWQsIGJ5IHBhc3NpbmcgcHJvcCBhcyBvYmplY3Qgd2l0aCBhZGRpdGlvbmFsIG9wdGlvbnMgYXMga2V5cy4gQXZhaWxhYmxlIG9wdGlvbnM6XG4gICAqIC0gcGxhY2Vob2xkZXIgKFN0cmluZykgLSBTZXRzIGN1c3RvbSB0YWJsZSBmaWx0ZXIgcGxhY2Vob2xkZXIuXG4gICAqIC0gbGFiZWwgKFN0cmluZykgLSBTZXRzIGN1c3RvbSB0YWJsZSBmaWx0ZXIgbGFiZWwuXG4gICAqIC0gZXh0ZXJuYWwgKEJvb2xlYW4pIC0gRGlzYWJsZXMgYXV0b21hdGljIGZpbHRlcmluZyBpbnNpZGUgY29tcG9uZW50LlxuICAgKiAtIGxhenkgKEJvb2xlYW4pIC0gU2V0IHRvIHRydWUgdG8gdHJpZ2dlciBmaWx0ZXIgdXBkYXRlcyBvbmx5IG9uIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHRhYmxlRmlsdGVyPzogYm9vbGVhbiB8IElUYWJsZUZpbHRlcjtcbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHJlcHJlc2VudHMgYSBjYXB0aW9uIGZvciBhIGNvbXBvbmVudC5cbiAgICogQGRlZmF1bHQgJ0ZpbHRlcjonXG4gICAqIHRvZG8gb3IgcmVtb3ZlP1xuICAgKi9cbiAgdGFibGVGaWx0ZXJMYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhIHNob3J0IGhpbnQgdGhhdCBpcyB2aXNpYmxlIGluIHRoZSBzZWFyY2ggaW5wdXQuXG4gICAqIEBkZWZhdWx0ICd0eXBlIHN0cmluZy4uLidcbiAgICogdG9kbyBvciByZW1vdmU/XG4gICAqL1xuICB0YWJsZUZpbHRlclBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGFibGUgZmlsdGVyLiBTZXQgLnN5bmMgbW9kaWZpZXIgdG8gdHJhY2sgY2hhbmdlcy5cbiAgICogQHR5cGUgc3RyaW5nXG4gICAqL1xuICB0YWJsZUZpbHRlclZhbHVlPzogc3RyaW5nO1xuICAvKipcbiAgICogUHJvcGVydGllcyB0byBgQ1RhYmxlSGVhZGAgY29tcG9uZW50LlxuICAgKiBAbGluayBodHRwczovL2NvcmV1aS5pby9hbmd1bGFyL2RvY3MvY29tcG9uZW50cy90YWJsZS8jY3RhYmxlaGVhZFxuICAgKi9cbiAgdGFibGVIZWFkUHJvcHM/OiBJVGFibGVTZWN0aW9uUHJvcHM7XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHRvIGBDVGFibGVgIGNvbXBvbmVudC5cbiAgICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vYW5ndWxhci9kb2NzL2NvbXBvbmVudHMvdGFibGUvI2N0YWJsZVxuICAgKi9cbiAgdGFibGVQcm9wcz86IElUYWJsZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGFibGVTZWN0aW9uUHJvcHMgZXh0ZW5kcyBJVGFibGVFbGVtZW50UHJvcHMge1xuICBhbGlnbj86ICdib3R0b20nIHwgJ21pZGRsZScgfCAndG9wJztcbiAgY29sb3I/OiBDb2xvcnM7XG4gIGF0dHJpYnV0ZXM/OiBQYXJ0aWFsPEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29sdW1uRmlsdGVyIHtcbiAgbGF6eT86IGJvb2xlYW47XG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29sdW1uRmlsdGVyVmFsdWUge1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbHVtbiB7XG4gIGNoaWxkcmVuPzogSUNvbHVtbltdO1xuICBmaWx0ZXI/OiBib29sZWFuIHwgKChjb2x1bW46IElJdGVtLCB2YWx1ZTogc3RyaW5nKSA9PiBib29sZWFuKTtcbiAgZ3JvdXA/OiBzdHJpbmc7XG4gIGtleTogc3RyaW5nO1xuICBsYWJlbD86IHN0cmluZztcbiAgc29ydGVyPzogYm9vbGVhbiB8ICgoYTogSUl0ZW0sIGI6IElJdGVtKSA9PiBudW1iZXIpO1xuICBfYXR0cj86IFBhcnRpYWw8SFRNTFRhYmxlQ2VsbEVsZW1lbnQ+OyAgICAvLyBoZWFkZXJcbiAgX3N0eWxlPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjsgICAgLy8gaGVhZGVyXG4gIF9wcm9wcz86IElUYWJsZUhlYWRlckNlbGxQcm9wczsgICAgICAgICAgIC8vIGhlYWRlclxuICBfY2xhc3Nlcz86IE5nQ3NzQ2xhc3M7ICAgICAgICAgICAgICAgICAgICAvLyBoZWFkZXJcbiAgX2NvbEF0dHI/OiBQYXJ0aWFsPEhUTUxUYWJsZUNvbEVsZW1lbnQ+OyAgLy8gY29sdW1uXG4gIF9jb2xTdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47IC8vIGNvbHVtblxuICBfY29sUHJvcHM/OiBJVGFibGVSb3dDZWxsUHJvcHM7ICAgICAgICAgICAvLyBjb2x1bW5cbiAgX2NvbENsYXNzPzogTmdDc3NDbGFzczsgICAgICAgICAgICAgICAgICAgLy8gY29sdW1uXG4gIF9sYWJlbFRlbXBsYXRlSWQ/OiBzdHJpbmc7XG4gIF9kYXRhPzogYW55XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwIHtcbiAgY2hpbGRyZW4/OiAoSUdyb3VwIHwgSUNvbHVtbilbXTtcbiAgY29sc3Bhbj86IG51bWJlcjtcbiAgZGVlcD86IG51bWJlcjtcbiAgZ3JvdXA/OiBzdHJpbmc7XG4gIGtleTogc3RyaW5nO1xuICBsYWJlbD86IHN0cmluZztcbiAgX2F0dHI/OiBQYXJ0aWFsPEhUTUxUYWJsZUNlbGxFbGVtZW50PjtcbiAgX2NsYXNzPzogTmdDc3NDbGFzcztcbiAgX3Byb3BzPzogSVRhYmxlSGVhZGVyQ2VsbFByb3BzO1xuICBfc3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuICBfbGFiZWxUZW1wbGF0ZUlkPzogc3RyaW5nO1xuICBfZGF0YT86IGFueVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUYWJsZUhlYWRlckNlbGxQcm9wcyB7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICpcbiAgICogQHR5cGUgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnc3VjY2VzcycgfCAnZGFuZ2VyJyB8ICd3YXJuaW5nJyB8ICdpbmZvJyB8ICdkYXJrJyB8ICdsaWdodCcgfCBzdHJpbmdcbiAgICovXG4gIGNvbG9yPzogQ29sb3JzO1xuXG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU29ydGVyIHtcbiAgcmVzZXRhYmxlPzogYm9vbGVhbjtcbiAgcmVzZXR0YWJsZT86IGJvb2xlYW47XG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSXRlbSB7XG4gIF9hdHRyPzogUGFydGlhbDxIVE1MVGFibGVSb3dFbGVtZW50PjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vID8gcm93IGh0bWwgYXR0cmlic1xuICBfY2xhc3M/OiBOZ0Nzc0NsYXNzOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA/IHJvdyBjc3MgY2xhc3NcbiAgX3Byb3BzPzogSVRhYmxlUm93Q2VsbFByb3BzOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcm93IFByb3BzXG4gIF9zdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vID8gcm93IGNzcyBzdHlsZVxuICBfY2VsbEF0dHI/OiBJVGFibGVDZWxsUHJvcHM8SFRNTFRhYmxlQ2VsbEVsZW1lbnQ+OyAgICAgICAgICAgICAgICAgICAvLyA/IGNlbGwgaHRtbCBhdHRyaWJzXG4gIF9jZWxsQ2xhc3M/OiBJVGFibGVDZWxsUHJvcHM8TmdDc3NDbGFzcz47ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vID8gY2VsbCBjc3MgY2xhc3NcbiAgX2NlbGxQcm9wcz86IElUYWJsZUNlbGxQcm9wczxJVGFibGVSb3dDZWxsUHJvcHM+OyAgICAgICAgICAgICAgICAgICAgLy8gY2VsbCBwcm9wc1xuICBfY2VsbFN0eWxlPzogSVRhYmxlQ2VsbFByb3BzPENTU1N0eWxlRGVjbGFyYXRpb24+OyAgICAgICAgICAgICAgICAgICAvLyA/IGNlbGwgY3NzIHN0eWxlXG5cbiAgX3NlbGVjdGVkPzogYm9vbGVhbjtcbiAgX3NlbGVjdGFibGU/OiBib29sZWFuO1xuXG4gIFtrZXk6IHN0cmluZ106IG51bWJlciB8IHN0cmluZyB8IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGFibGVDZWxsUHJvcHM8VD4ge1xuICBfYWxsPzogUGFydGlhbDxUPjtcblxuICBba2V5OiBzdHJpbmddOiBQYXJ0aWFsPFQ+IHwgdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElJdGVtSW50ZXJuYWwgZXh0ZW5kcyBJSXRlbSB7XG4gIF9fX2lkPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1zUGVyUGFnZVNlbGVjdCB7XG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbiAgLy8gbGFiZWw/OiBzdHJpbmc7XG4gIC8vIHZhbHVlcz86IEFycmF5PG51bWJlcj47XG59XG5cbi8vIGV4cG9ydCBpbnRlcmZhY2UgU2NvcGVkQ29sdW1ucyB7XG4vLyAgIFtrZXk6IHN0cmluZ106IGFueVxuLy8gICBkZXRhaWxzPzogKGE6IElJdGVtLCBiOiBudW1iZXIpID0+IFJlYWN0Tm9kZVxuLy8gfVxuXG5leHBvcnQgaW50ZXJmYWNlIElTb3J0ZXJWYWx1ZSB7XG4gIGNvbHVtbj86IHN0cmluZztcbiAgc3RhdGU/OiBudW1iZXIgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlRmlsdGVyIHtcbiAgbGF6eT86IGJvb2xlYW47XG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgU29ydE9yZGVyID0gJ2FzYycgfCAnZGVzYycgfCAwIHwgdW5kZWZpbmVkO1xuXG4iXX0=