@theseam/ui-common 0.4.0-beta.6 → 0.4.2

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 (668) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +1 -3
  2. package/card/card-body/card-body.component.d.ts +2 -4
  3. package/card/card-footer/card-footer.component.d.ts +1 -4
  4. package/card/card-header/card-header.component.d.ts +1 -4
  5. package/card/card.component.d.ts +1 -4
  6. package/carousel/carousel-slide.directive.d.ts +8 -0
  7. package/carousel/carousel.component.d.ts +85 -0
  8. package/carousel/carousel.module.d.ts +11 -0
  9. package/carousel/index.d.ts +5 -0
  10. package/carousel/public-api.d.ts +3 -0
  11. package/checkbox/checkbox.component.d.ts +2 -4
  12. package/core/common-behaviors/active.d.ts +1 -1
  13. package/core/common-behaviors/disabled.d.ts +1 -1
  14. package/core/common-behaviors/initialized.d.ts +1 -1
  15. package/data-filters/data-filter.d.ts +1 -1
  16. package/datatable/datatable-column/datatable-column.component.d.ts +2 -3
  17. package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +1 -3
  18. package/datatable/datatable-export-button/datatable-export-button.component.d.ts +1 -3
  19. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -5
  20. package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +1 -4
  21. package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +1 -4
  22. package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +1 -4
  23. package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +1 -4
  24. package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +1 -3
  25. package/datatable/directives/datatable-action-menu-item.directive.d.ts +2 -4
  26. package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +1 -3
  27. package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +3 -4
  28. package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +1 -1
  29. package/datatable-dynamic/datatable-dynamic.component.d.ts +1 -4
  30. package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +3 -4
  31. package/dynamic/action/modal/dynamic-action-modal-def.d.ts +1 -1
  32. package/esm2020/asset-reader/asset-reader-helper.service.mjs +7 -5
  33. package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
  34. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +3 -3
  35. package/esm2020/breadcrumbs/breadcrumb.mjs +1 -1
  36. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +4 -5
  37. package/esm2020/breadcrumbs/breadcrumbs-resolver.mjs +1 -1
  38. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  39. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +7 -7
  40. package/esm2020/buttons/badge-button/badge-button.component.mjs +9 -7
  41. package/esm2020/buttons/button/button.component.mjs +12 -10
  42. package/esm2020/buttons/buttons.module.mjs +4 -4
  43. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  44. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +6 -6
  45. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  46. package/esm2020/card/card-body/card-body.component.mjs +5 -6
  47. package/esm2020/card/card-footer/card-footer.component.mjs +5 -8
  48. package/esm2020/card/card-header/card-header.component.mjs +5 -7
  49. package/esm2020/card/card.component.mjs +5 -7
  50. package/esm2020/card/card.module.mjs +4 -4
  51. package/esm2020/carousel/carousel-slide.directive.mjs +16 -0
  52. package/esm2020/carousel/carousel.component.mjs +211 -0
  53. package/esm2020/carousel/carousel.module.mjs +38 -0
  54. package/esm2020/carousel/public-api.mjs +4 -0
  55. package/esm2020/carousel/theseam-ui-common-carousel.mjs +5 -0
  56. package/esm2020/checkbox/checkbox.component.mjs +5 -6
  57. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  58. package/esm2020/checkbox/testing/checkbox.harness.mjs +1 -1
  59. package/esm2020/checkbox/testing/index.mjs +1 -1
  60. package/esm2020/confirm-dialog/confirm-click.directive.mjs +6 -6
  61. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
  62. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
  63. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
  64. package/esm2020/core/common-behaviors/active.mjs +2 -1
  65. package/esm2020/core/common-behaviors/disabled.mjs +2 -1
  66. package/esm2020/core/common-behaviors/initialized.mjs +2 -1
  67. package/esm2020/core/common-behaviors/tabindex.mjs +2 -1
  68. package/esm2020/core/input-decorators/input-boolean.decorator.mjs +4 -5
  69. package/esm2020/core/input-decorators/input-number.decorator.mjs +4 -5
  70. package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
  71. package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
  72. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
  73. package/esm2020/data-filters/data-filter.mjs +1 -1
  74. package/esm2020/data-filters/data-filters.module.mjs +4 -4
  75. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +5 -5
  76. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +6 -6
  77. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +11 -8
  78. package/esm2020/datatable/datatable/datatable.component.mjs +11 -6
  79. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
  80. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +5 -4
  81. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -5
  82. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
  83. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -5
  84. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +5 -5
  85. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
  86. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +5 -5
  87. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +9 -13
  88. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +5 -8
  89. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +5 -8
  90. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +5 -8
  91. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +5 -8
  92. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -5
  93. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
  94. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +5 -5
  95. package/esm2020/datatable/datatable.module.mjs +4 -4
  96. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +5 -6
  97. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +3 -3
  98. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
  99. package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
  100. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
  101. package/esm2020/datatable/models/columns-alteration.mjs +1 -1
  102. package/esm2020/datatable/models/columns-alterations/order.columns-alteration.mjs +3 -1
  103. package/esm2020/datatable/models/datatable-gql-data-source.mjs +1 -1
  104. package/esm2020/datatable/models/internal-column-props.mjs +1 -1
  105. package/esm2020/datatable/models/sort-item.mjs +1 -1
  106. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  107. package/esm2020/datatable/services/columns-manager.service.mjs +5 -5
  108. package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
  109. package/esm2020/datatable/services/datatable-preferences.service.mjs +5 -4
  110. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +5 -5
  111. package/esm2020/datatable/utils/map-columns-alterations-states.mjs +4 -1
  112. package/esm2020/datatable/utils/set-column-defaults.mjs +2 -2
  113. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +5 -6
  114. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
  115. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +6 -7
  116. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.mjs +1 -1
  117. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +4 -6
  118. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
  119. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +6 -6
  120. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +7 -7
  121. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +6 -6
  122. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +11 -8
  123. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +6 -5
  124. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  125. package/esm2020/dynamic/action/modal/dynamic-action-modal-def.mjs +1 -1
  126. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  127. package/esm2020/dynamic/dynamic-value-helper.service.mjs +5 -4
  128. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  129. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +5 -5
  130. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
  131. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +9 -9
  132. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +5 -8
  133. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  134. package/esm2020/form-field/form-field-error.directive.mjs +4 -4
  135. package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
  136. package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
  137. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  138. package/esm2020/form-field/form-field.component.mjs +5 -5
  139. package/esm2020/form-field/form-field.module.mjs +4 -4
  140. package/esm2020/form-field/input.directive.mjs +10 -9
  141. package/esm2020/form-field/testing/form-field-required-indicator.harness.mjs +1 -1
  142. package/esm2020/form-field/testing/index.mjs +1 -1
  143. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +5 -7
  144. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  145. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
  146. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +8 -8
  147. package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
  148. package/esm2020/framework/base-layout/base-layout.component.mjs +5 -4
  149. package/esm2020/framework/base-layout/base-layout.module.mjs +5 -5
  150. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
  151. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
  152. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
  153. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +3 -3
  154. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
  155. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
  156. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
  157. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +5 -7
  158. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -5
  159. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +7 -7
  160. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +6 -5
  161. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
  162. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +7 -5
  163. package/esm2020/framework/dashboard/dashboard.component.mjs +5 -5
  164. package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
  165. package/esm2020/framework/dynamic-router/dynamic-route-def.mjs +1 -1
  166. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  167. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.mjs +1 -1
  168. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +5 -6
  169. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +5 -6
  170. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
  171. package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
  172. package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
  173. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
  174. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
  175. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
  176. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
  177. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
  178. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
  179. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +5 -4
  180. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +5 -5
  181. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +5 -6
  182. package/esm2020/framework/side-nav/side-nav-utils.mjs +2 -1
  183. package/esm2020/framework/side-nav/side-nav.component.mjs +6 -7
  184. package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
  185. package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
  186. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
  187. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
  188. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +4 -6
  189. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
  190. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +5 -7
  191. package/esm2020/framework/top-bar/top-bar.component.mjs +4 -6
  192. package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
  193. package/esm2020/google-maps/google-maps/google-maps.component.mjs +53 -32
  194. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +3 -3
  195. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +3 -3
  196. package/esm2020/google-maps/google-maps-contextmenu.mjs +9 -8
  197. package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
  198. package/esm2020/google-maps/google-maps-feature-helpers.mjs +13 -1
  199. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +9 -10
  200. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +9 -9
  201. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +6 -6
  202. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +6 -6
  203. package/esm2020/google-maps/google-maps.module.mjs +8 -6
  204. package/esm2020/google-maps/google-maps.service.mjs +103 -32
  205. package/esm2020/google-maps/map-control.component.mjs +3 -3
  206. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  207. package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
  208. package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +1 -27
  209. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  210. package/esm2020/graphql/datatable/datatable-helpers.mjs +2 -2
  211. package/esm2020/graphql/datatable/map-filter-states.mjs +2 -1
  212. package/esm2020/graphql/utils/inline-variables.mjs +2 -1
  213. package/esm2020/graphql/utils/parse-hints.mjs +3 -3
  214. package/esm2020/graphql/utils/to-gql.mjs +3 -3
  215. package/esm2020/icon/icon/icon.component.mjs +5 -5
  216. package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -5
  217. package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
  218. package/esm2020/icon/icon.module.mjs +4 -4
  219. package/esm2020/icon/utils/get-known-icon.mjs +71 -71
  220. package/esm2020/layout/breakpoint-aliases.mjs +1 -1
  221. package/esm2020/layout/layout.module.mjs +4 -4
  222. package/esm2020/layout/layout.service.mjs +3 -3
  223. package/esm2020/layout/observe-media-query.mjs +1 -1
  224. package/esm2020/loading/loading/loading.component.mjs +8 -9
  225. package/esm2020/loading/loading-overlay.service.mjs +3 -3
  226. package/esm2020/loading/loading.module.mjs +4 -4
  227. package/esm2020/menu/menu-divider.component.mjs +3 -3
  228. package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
  229. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
  230. package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
  231. package/esm2020/menu/menu-item.component.mjs +44 -17
  232. package/esm2020/menu/menu-toggle.directive.mjs +203 -44
  233. package/esm2020/menu/menu.component.mjs +39 -16
  234. package/esm2020/menu/menu.module.mjs +4 -4
  235. package/esm2020/modal/directives/modal-close.directive.mjs +3 -3
  236. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
  237. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
  238. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
  239. package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
  240. package/esm2020/modal/directives/modal.directive.mjs +5 -5
  241. package/esm2020/modal/modal/modal.component.mjs +6 -7
  242. package/esm2020/modal/modal-body/modal-body.component.mjs +5 -7
  243. package/esm2020/modal/modal-config.mjs +1 -1
  244. package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
  245. package/esm2020/modal/modal-footer/modal-footer.component.mjs +5 -7
  246. package/esm2020/modal/modal-header/modal-header.component.mjs +5 -7
  247. package/esm2020/modal/modal-ref.mjs +1 -1
  248. package/esm2020/modal/modal.module.mjs +4 -4
  249. package/esm2020/modal/modal.service.mjs +26 -23
  250. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -5
  251. package/esm2020/popover/popover/popover.component.mjs +3 -3
  252. package/esm2020/popover/popover.directive.mjs +4 -4
  253. package/esm2020/popover/popover.module.mjs +5 -5
  254. package/esm2020/progress/progress-circle/progress-circle.component.mjs +10 -10
  255. package/esm2020/progress/progress.module.mjs +4 -4
  256. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -5
  257. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  258. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  259. package/esm2020/services/asset-loader.service.mjs +5 -6
  260. package/esm2020/services/font-loader.service.mjs +5 -6
  261. package/esm2020/services/router-helpers.service.mjs +3 -3
  262. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
  263. package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
  264. package/esm2020/shared/directives/click-outside.directive.mjs +3 -3
  265. package/esm2020/shared/directives/disable-control.directive.mjs +3 -3
  266. package/esm2020/shared/directives/elem-resized.directive.mjs +5 -5
  267. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
  268. package/esm2020/shared/directives/hover-class.directive.mjs +3 -3
  269. package/esm2020/shared/directives/ng-select-extra.directive.mjs +7 -7
  270. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +5 -5
  271. package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
  272. package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
  273. package/esm2020/shared/shared.module.mjs +4 -4
  274. package/esm2020/storage/local-storage.service.mjs +8 -8
  275. package/esm2020/storage/localstorage-memory.mjs +4 -4
  276. package/esm2020/story-helpers/arg-type-helpers.mjs +1 -1
  277. package/esm2020/story-helpers/initial-route.service.mjs +3 -3
  278. package/esm2020/story-helpers/on-story-bootstrapped-trigger.mjs +2 -1
  279. package/esm2020/story-helpers/public-api.mjs +2 -2
  280. package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
  281. package/esm2020/story-helpers/story-empty.component.mjs +3 -3
  282. package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
  283. package/esm2020/story-helpers/story-initial-route.mjs +4 -4
  284. package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
  285. package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
  286. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +5 -5
  287. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +5 -4
  288. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +5 -7
  289. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +5 -6
  290. package/esm2020/tabbed/tabbed.component.mjs +4 -4
  291. package/esm2020/tabbed/tabbed.module.mjs +4 -4
  292. package/esm2020/tabbed/tabbed.service.mjs +5 -5
  293. package/esm2020/table/table/table.component.mjs +5 -6
  294. package/esm2020/table/table.module.mjs +4 -4
  295. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +5 -5
  296. package/esm2020/table-cell-type/table-cell-type-export-props.mjs +1 -1
  297. package/esm2020/table-cell-type/table-cell-type-models.mjs +1 -1
  298. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +5 -6
  299. package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
  300. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +12 -12
  301. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +8 -12
  302. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +14 -14
  303. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +10 -10
  304. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +14 -14
  305. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +6 -7
  306. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +11 -10
  307. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +7 -8
  308. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +11 -8
  309. package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
  310. package/esm2020/tel-input/intl-tel-input.mjs +2 -2
  311. package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
  312. package/esm2020/tel-input/tel-input/tel-input.component.mjs +5 -6
  313. package/esm2020/tel-input/tel-input.directive.mjs +4 -4
  314. package/esm2020/tel-input/tel-input.module.mjs +4 -4
  315. package/esm2020/tel-input/utils/add-country-code.mjs +4 -4
  316. package/esm2020/tel-input/utils/process-country-codes.mjs +4 -7
  317. package/esm2020/testing/story-expect.mjs +2 -1
  318. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +5 -6
  319. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -5
  320. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +12 -13
  321. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
  322. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
  323. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
  324. package/esm2020/tiled-select/testing/index.mjs +1 -1
  325. package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
  326. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +5 -8
  327. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
  328. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
  329. package/esm2020/toggle-edit/toggle-edit.component.mjs +7 -7
  330. package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
  331. package/esm2020/toggle-group/toggle-group-option.directive.mjs +3 -3
  332. package/esm2020/toggle-group/toggle-group.directive.mjs +6 -6
  333. package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
  334. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +5 -5
  335. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +5 -8
  336. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +5 -4
  337. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  338. package/esm2020/utils/array-move.mjs +1 -1
  339. package/esm2020/utils/cdk/get-closest-widget-cdk-drag.mjs +3 -3
  340. package/esm2020/utils/file-utils.mjs +2 -2
  341. package/esm2020/utils/form/get-control-path.mjs +6 -5
  342. package/esm2020/utils/geo-json/close-polygons.mjs +38 -0
  343. package/esm2020/utils/geo-json/geo-json-to-area.mjs +3 -3
  344. package/esm2020/utils/geo-json/is-only-geometry-types.validator.mjs +1 -1
  345. package/esm2020/utils/geo-json/min-max-points.validator.mjs +5 -5
  346. package/esm2020/utils/geo-json/read-geo-file.mjs +3 -2
  347. package/esm2020/utils/has-property.mjs +2 -2
  348. package/esm2020/utils/load-style-sheet.mjs +2 -2
  349. package/esm2020/utils/load-style.mjs +2 -2
  350. package/esm2020/utils/obj-utils.mjs +2 -2
  351. package/esm2020/utils/polling-ticker.mjs +2 -2
  352. package/esm2020/utils/public-api.mjs +2 -1
  353. package/esm2020/utils/router/operators/activated-routes-with-data-property.mjs +2 -2
  354. package/esm2020/utils/router/route-snapshot-path-full.mjs +2 -2
  355. package/esm2020/utils/router/route-snapshot-path-relative.mjs +2 -2
  356. package/esm2020/utils/router/will-have-data-prop.mjs +3 -3
  357. package/esm2020/utils/subscriber-count.mjs +2 -1
  358. package/esm2020/utils/toggle-attribute.mjs +6 -5
  359. package/esm2020/utils/wait-on-condition-async.mjs +5 -5
  360. package/esm2020/vertical-list-filter/public-api.mjs +3 -0
  361. package/esm2020/vertical-list-filter/testing/index.mjs +2 -0
  362. package/esm2020/vertical-list-filter/testing/vertical-list-filter.harness.mjs +28 -0
  363. package/esm2020/vertical-list-filter/theseam-ui-common-vertical-list-filter.mjs +5 -0
  364. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +52 -0
  365. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
  366. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
  367. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +5 -4
  368. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  369. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +5 -4
  370. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
  371. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +7 -7
  372. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
  373. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
  374. package/esm2020/widget/widget/widget.component.mjs +56 -35
  375. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +5 -8
  376. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
  377. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +5 -8
  378. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
  379. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
  380. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
  381. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +6 -7
  382. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
  383. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +5 -7
  384. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
  385. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +5 -8
  386. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
  387. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +5 -5
  388. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
  389. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
  390. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -19
  391. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +5 -7
  392. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
  393. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +5 -5
  394. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
  395. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +6 -9
  396. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +5 -6
  397. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +5 -8
  398. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +5 -5
  399. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +9 -8
  400. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +10 -10
  401. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +5 -8
  402. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
  403. package/esm2020/widget/widget-footer/widget-footer.component.mjs +5 -7
  404. package/esm2020/widget/widget-registry.service.mjs +6 -5
  405. package/esm2020/widget/widget.module.mjs +7 -7
  406. package/fesm2015/theseam-ui-common-asset-reader.mjs +13 -11
  407. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  408. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +13 -14
  409. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  410. package/fesm2015/theseam-ui-common-buttons.mjs +31 -27
  411. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  412. package/fesm2015/theseam-ui-common-card.mjs +23 -31
  413. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  414. package/fesm2015/theseam-ui-common-carousel.mjs +265 -0
  415. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -0
  416. package/fesm2015/theseam-ui-common-checkbox.mjs +8 -9
  417. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  418. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +15 -15
  419. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  420. package/fesm2015/theseam-ui-common-core.mjs +10 -8
  421. package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
  422. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  423. package/fesm2015/theseam-ui-common-data-filters.mjs +23 -20
  424. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  425. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +34 -38
  426. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  427. package/fesm2015/theseam-ui-common-datatable.mjs +115 -123
  428. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  429. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  430. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  431. package/fesm2015/theseam-ui-common-dynamic.mjs +36 -26
  432. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  433. package/fesm2015/theseam-ui-common-footer-bar.mjs +8 -11
  434. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  435. package/fesm2015/theseam-ui-common-form-field-error.mjs +21 -23
  436. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  437. package/fesm2015/theseam-ui-common-form-field.mjs +29 -28
  438. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  439. package/fesm2015/theseam-ui-common-framework.mjs +153 -160
  440. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  441. package/fesm2015/theseam-ui-common-google-maps.mjs +221 -113
  442. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  443. package/fesm2015/theseam-ui-common-graphql.mjs +10 -34
  444. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  445. package/fesm2015/theseam-ui-common-icon.mjs +84 -85
  446. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  447. package/fesm2015/theseam-ui-common-layout.mjs +7 -7
  448. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  449. package/fesm2015/theseam-ui-common-loading.mjs +14 -15
  450. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  451. package/fesm2015/theseam-ui-common-menu.mjs +460 -247
  452. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  453. package/fesm2015/theseam-ui-common-modal.mjs +71 -76
  454. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  455. package/fesm2015/theseam-ui-common-popover.mjs +10 -10
  456. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  457. package/fesm2015/theseam-ui-common-progress.mjs +13 -13
  458. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  459. package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -11
  460. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-services.mjs +11 -13
  462. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-shared.mjs +42 -42
  464. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-storage.mjs +10 -10
  466. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  467. package/fesm2015/theseam-ui-common-story-helpers.mjs +25 -100
  468. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  469. package/fesm2015/theseam-ui-common-tabbed.mjs +27 -29
  470. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  471. package/fesm2015/theseam-ui-common-table-cell-type.mjs +12 -13
  472. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  473. package/fesm2015/theseam-ui-common-table-cell-types.mjs +87 -89
  474. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  475. package/fesm2015/theseam-ui-common-table.mjs +8 -9
  476. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  477. package/fesm2015/theseam-ui-common-tel-input.mjs +21 -25
  478. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  479. package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
  480. package/fesm2015/theseam-ui-common-tiled-select.mjs +31 -34
  481. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  482. package/fesm2015/theseam-ui-common-toggle-edit.mjs +20 -23
  483. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  484. package/fesm2015/theseam-ui-common-toggle-group.mjs +12 -12
  485. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  486. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  487. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  488. package/fesm2015/theseam-ui-common-utils.mjs +75 -33
  489. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  490. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +96 -0
  491. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  492. package/fesm2015/theseam-ui-common-viewers.mjs +22 -20
  493. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  494. package/fesm2015/theseam-ui-common-widget.mjs +211 -217
  495. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  496. package/fesm2020/theseam-ui-common-asset-reader.mjs +13 -11
  497. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  498. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +13 -14
  499. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  500. package/fesm2020/theseam-ui-common-buttons.mjs +31 -27
  501. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  502. package/fesm2020/theseam-ui-common-card.mjs +23 -31
  503. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  504. package/fesm2020/theseam-ui-common-carousel.mjs +265 -0
  505. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -0
  506. package/fesm2020/theseam-ui-common-checkbox.mjs +8 -9
  507. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  508. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +15 -15
  509. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  510. package/fesm2020/theseam-ui-common-core.mjs +10 -8
  511. package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
  512. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  513. package/fesm2020/theseam-ui-common-data-filters.mjs +23 -20
  514. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  515. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +34 -38
  516. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  517. package/fesm2020/theseam-ui-common-datatable.mjs +115 -123
  518. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  519. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  520. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  521. package/fesm2020/theseam-ui-common-dynamic.mjs +36 -26
  522. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  523. package/fesm2020/theseam-ui-common-footer-bar.mjs +8 -11
  524. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  525. package/fesm2020/theseam-ui-common-form-field-error.mjs +21 -23
  526. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  527. package/fesm2020/theseam-ui-common-form-field.mjs +29 -28
  528. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  529. package/fesm2020/theseam-ui-common-framework.mjs +153 -160
  530. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  531. package/fesm2020/theseam-ui-common-google-maps.mjs +223 -117
  532. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-graphql.mjs +10 -34
  534. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-icon.mjs +84 -85
  536. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-layout.mjs +16 -8
  538. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-loading.mjs +14 -15
  540. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-menu.mjs +450 -244
  542. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-modal.mjs +71 -76
  544. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-models.mjs +2 -1
  546. package/fesm2020/theseam-ui-common-models.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-popover.mjs +10 -10
  548. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-progress.mjs +13 -13
  550. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -11
  552. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  553. package/fesm2020/theseam-ui-common-services.mjs +11 -13
  554. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  555. package/fesm2020/theseam-ui-common-shared.mjs +42 -42
  556. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  557. package/fesm2020/theseam-ui-common-storage.mjs +10 -10
  558. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  559. package/fesm2020/theseam-ui-common-story-helpers.mjs +25 -96
  560. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  561. package/fesm2020/theseam-ui-common-tabbed.mjs +27 -29
  562. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  563. package/fesm2020/theseam-ui-common-table-cell-type.mjs +12 -13
  564. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  565. package/fesm2020/theseam-ui-common-table-cell-types.mjs +87 -89
  566. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  567. package/fesm2020/theseam-ui-common-table.mjs +8 -9
  568. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  569. package/fesm2020/theseam-ui-common-tel-input.mjs +21 -25
  570. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  571. package/fesm2020/theseam-ui-common-testing.mjs +1 -0
  572. package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
  573. package/fesm2020/theseam-ui-common-tiled-select.mjs +31 -34
  574. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  575. package/fesm2020/theseam-ui-common-toggle-edit.mjs +20 -23
  576. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  577. package/fesm2020/theseam-ui-common-toggle-group.mjs +12 -12
  578. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  579. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  580. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  581. package/fesm2020/theseam-ui-common-utils.mjs +75 -33
  582. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  583. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +87 -0
  584. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  585. package/fesm2020/theseam-ui-common-viewers.mjs +22 -20
  586. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  587. package/fesm2020/theseam-ui-common-widget.mjs +211 -217
  588. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  589. package/footer-bar/footer-bar/footer-bar.component.d.ts +1 -4
  590. package/form-field-error/form-field-error/form-field-error.component.d.ts +1 -4
  591. package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +2 -3
  592. package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +2 -4
  593. package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +2 -3
  594. package/framework/dashboard/dashboard.component.d.ts +0 -1
  595. package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +2 -3
  596. package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +0 -1
  597. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +2 -4
  598. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -5
  599. package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +1 -4
  600. package/framework/top-bar/top-bar.component.d.ts +2 -4
  601. package/google-maps/google-maps/google-maps.component.d.ts +11 -7
  602. package/google-maps/google-maps-feature-helpers.d.ts +3 -0
  603. package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +2 -3
  604. package/google-maps/google-maps.module.d.ts +1 -1
  605. package/google-maps/google-maps.service.d.ts +7 -0
  606. package/graphql/datatable/datatable-graphql-query-ref.d.ts +0 -1
  607. package/icon/icon-btn/icon-btn.component.d.ts +2 -3
  608. package/loading/loading/loading.component.d.ts +1 -4
  609. package/menu/menu-item.component.d.ts +20 -10
  610. package/menu/menu-toggle.directive.d.ts +34 -11
  611. package/menu/menu.component.d.ts +16 -2
  612. package/modal/modal/modal.component.d.ts +3 -4
  613. package/modal/modal-body/modal-body.component.d.ts +1 -4
  614. package/modal/modal-footer/modal-footer.component.d.ts +1 -4
  615. package/modal/modal-header/modal-header.component.d.ts +1 -4
  616. package/modal/route-modal/route-modal.component.d.ts +2 -3
  617. package/package.json +17 -1
  618. package/progress/progress-circle/progress-circle.component.d.ts +0 -1
  619. package/scrollbar/overlay-scrollbar.directive.d.ts +2 -3
  620. package/services/asset-loader.service.d.ts +0 -1
  621. package/services/font-loader.service.d.ts +0 -1
  622. package/story-helpers/public-api.d.ts +0 -1
  623. package/tabbed/directives/tabbed-tab-content.directive.d.ts +0 -1
  624. package/tabbed/tabbed-content/tabbed-content.component.d.ts +1 -4
  625. package/tabbed/tabbed-item/tabbed-item.component.d.ts +2 -4
  626. package/tabbed/tabbed.service.d.ts +0 -1
  627. package/table/table/table.component.d.ts +2 -3
  628. package/table-cell-type/table-cell-type-models.d.ts +1 -1
  629. package/table-cell-type/table-cell-type-selector.component.d.ts +3 -4
  630. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.d.ts +2 -3
  631. package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +2 -3
  632. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.d.ts +2 -3
  633. package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +2 -3
  634. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.d.ts +2 -3
  635. package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +2 -3
  636. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +2 -3
  637. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +2 -3
  638. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +2 -3
  639. package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +1 -4
  640. package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +1 -4
  641. package/toggle-group/toggle-group.directive.d.ts +0 -1
  642. package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +1 -4
  643. package/utils/geo-json/close-polygons.d.ts +9 -0
  644. package/utils/obj-utils.d.ts +2 -2
  645. package/utils/public-api.d.ts +1 -0
  646. package/vertical-list-filter/index.d.ts +5 -0
  647. package/vertical-list-filter/public-api.d.ts +2 -0
  648. package/vertical-list-filter/testing/index.d.ts +1 -0
  649. package/vertical-list-filter/testing/vertical-list-filter.harness.d.ts +9 -0
  650. package/vertical-list-filter/vertical-list-filter.component.d.ts +17 -0
  651. package/widget/widget/widget.component.d.ts +10 -11
  652. package/widget/widget/widget.component.scss +12 -1
  653. package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +1 -4
  654. package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +1 -4
  655. package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +2 -3
  656. package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +1 -4
  657. package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +1 -4
  658. package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +2 -3
  659. package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +4 -7
  660. package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +1 -4
  661. package/widget/widget-content-components/widget-table/widget-table.component.d.ts +0 -1
  662. package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +1 -4
  663. package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +2 -3
  664. package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +1 -4
  665. package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +1 -4
  666. package/widget/widget-footer/widget-footer.component.d.ts +1 -4
  667. package/esm2020/story-helpers/args-to-tpl.mjs +0 -72
  668. package/story-helpers/args-to-tpl.d.ts +0 -24
@@ -5,12 +5,12 @@ import { HierarchyRouterOutletComponent } from './hierarchy-router-outlet/hierar
5
5
  import * as i0 from "@angular/core";
6
6
  export class TheSeamDynamicRouterModule {
7
7
  }
8
- TheSeamDynamicRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- TheSeamDynamicRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, declarations: [HierarchyRouterOutletComponent], imports: [CommonModule,
8
+ TheSeamDynamicRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamDynamicRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TheSeamDynamicRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamDynamicRouterModule, declarations: [HierarchyRouterOutletComponent], imports: [CommonModule,
10
10
  RouterModule], exports: [HierarchyRouterOutletComponent] });
11
- TheSeamDynamicRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, imports: [CommonModule,
11
+ TheSeamDynamicRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamDynamicRouterModule, imports: [CommonModule,
12
12
  RouterModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamDynamicRouterModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
25
25
  ]
26
26
  }]
27
27
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1yb3V0ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9keW5hbWljLXJvdXRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTlDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZEQUE2RCxDQUFBOztBQWdCNUcsTUFBTSxPQUFPLDBCQUEwQjs7dUhBQTFCLDBCQUEwQjt3SEFBMUIsMEJBQTBCLGlCQVZuQyw4QkFBOEIsYUFHOUIsWUFBWTtRQUNaLFlBQVksYUFHWiw4QkFBOEI7d0hBR3JCLDBCQUEwQixZQVBuQyxZQUFZO1FBQ1osWUFBWTsyRkFNSCwwQkFBMEI7a0JBWnRDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsOEJBQThCO3FCQUMvQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcblxuaW1wb3J0IHsgSGllcmFyY2h5Um91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9oaWVyYXJjaHktcm91dGVyLW91dGxldC9oaWVyYXJjaHktcm91dGVyLW91dGxldC5jb21wb25lbnQnXG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBIaWVyYXJjaHlSb3V0ZXJPdXRsZXRDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEhpZXJhcmNoeVJvdXRlck91dGxldENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1EeW5hbWljUm91dGVyTW9kdWxlIHsgfVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1yb3V0ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9keW5hbWljLXJvdXRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTlDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZEQUE2RCxDQUFBOztBQWM1RyxNQUFNLE9BQU8sMEJBQTBCOzt1SEFBMUIsMEJBQTBCO3dIQUExQiwwQkFBMEIsaUJBVm5DLDhCQUE4QixhQUc5QixZQUFZO1FBQ1osWUFBWSxhQUdaLDhCQUE4Qjt3SEFHckIsMEJBQTBCLFlBUG5DLFlBQVk7UUFDWixZQUFZOzJGQU1ILDBCQUEwQjtrQkFadEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osOEJBQThCO3FCQUMvQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCw4QkFBOEI7cUJBQy9CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuXG5pbXBvcnQgeyBIaWVyYXJjaHlSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0L2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgSGllcmFyY2h5Um91dGVyT3V0bGV0Q29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBIaWVyYXJjaHlSb3V0ZXJPdXRsZXRDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtRHluYW1pY1JvdXRlck1vZHVsZSB7IH1cbiJdfQ==
@@ -253,4 +253,4 @@ export const sideToSide = trigger('routeAnimations', [
253
253
  animate('1000ms ease', style({ transform: 'translateX(-100%)' }))
254
254
  ])
255
255
  ]);
256
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LXJvdXRlLWFuaW1hdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2R5bmFtaWMtcm91dGVyL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0L2hpZXJhcmNoeS1yb3V0ZS1hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxHQUNSLE1BQU0scUJBQXFCLENBQUE7QUFHNUIsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUNoQixPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDekIsVUFBVSxDQUFDLFNBQVMsRUFBRTtRQUNwQiwyQ0FBMkM7UUFDM0MsS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3RCLEtBQUssQ0FBQztnQkFDSixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsSUFBSSxFQUFFLENBQUM7Z0JBQ1AsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsU0FBUyxFQUFFLDJCQUEyQjthQUN2QyxDQUFDO1NBQ0gsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QiwwQkFBMEI7UUFDMUIsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNkLE9BQU8sQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO1NBQ2xGLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdkIsQ0FBQztDQUNILENBQUMsQ0FBQTtBQUdKLGdDQUFnQztBQUNoQyxhQUFhO0FBQ2IsZ0NBQWdDO0FBQ2hDLGdCQUFnQjtBQUNoQixnQ0FBZ0M7QUFDaEMsa0JBQWtCO0FBQ2xCLDBCQUEwQjtBQUMxQix3QkFBd0I7QUFDeEIsV0FBVztBQUNYLDhCQUE4QjtBQUM5Qix3QkFBd0I7QUFDeEIsdUNBQXVDO0FBQ3ZDLDhCQUE4QjtBQUM5QixjQUFjO0FBQ2QsMEJBQTBCO0FBQzFCLGdFQUFnRTtBQUNoRSxnQ0FBZ0M7QUFDaEMsMEJBQTBCO0FBQzFCLDhEQUE4RDtBQUM5RCwrQkFBK0I7QUFDL0IsVUFBVTtBQUNWLDREQUE0RDtBQUU1RCxnRUFBZ0U7QUFDaEUsMkRBQTJEO0FBQzNELDJEQUEyRDtBQUMzRCxNQUFNO0FBQ04sSUFBSTtBQUVKLDRFQUE0RTtBQUM1RSw4RUFBOEU7QUFDOUUsd0JBQXdCO0FBQ3hCLGlDQUFpQztBQUNqQyxtREFBbUQ7QUFDbkQscURBQXFEO0FBQ3JELG9EQUFvRDtBQUNwRCxtREFBbUQ7QUFDbkQsT0FBTztBQUVQLDhCQUE4QjtBQUM5Qiw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBRTdCLFNBQVM7QUFDVCxPQUFPO0FBRVAsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUNqQixPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDekIsVUFBVSxDQUFDLGFBQWEsRUFBRTtRQUN4QixLQUFLLENBQUMsb0RBQW9ELEVBQUU7WUFDMUQsS0FBSyxDQUFDO2dCQUNKLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixHQUFHLEVBQUUsQ0FBQztnQkFDTixJQUFJLEVBQUUsQ0FBQztnQkFDUCxLQUFLLEVBQUUsTUFBTTthQUNkLENBQUM7U0FDSCxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQywwQkFBMEIsRUFBRTtZQUNoQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDLENBQUM7U0FDeEIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QixLQUFLLENBQUMsbUNBQW1DLEVBQUU7WUFDekMsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLENBQUM7U0FDNUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QixLQUFLLENBQUM7WUFDSixLQUFLLENBQUMsMEJBQTBCLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7YUFDL0MsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsMEJBQTBCLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7YUFDN0MsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsbUNBQW1DLEVBQUU7Z0JBQ3pDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUM7YUFDaEQsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUN2QixDQUFDO1FBQ0YscURBQXFEO1FBRXJELHlEQUF5RDtRQUN6RCxLQUFLLENBQUMsMEJBQTBCLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDckUsS0FBSyxDQUFDLDBCQUEwQixFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0tBQ3RFLENBQUM7SUFDRixVQUFVLENBQUMsY0FBYyxFQUFFO1FBQ3pCLEtBQUssQ0FBQyxvREFBb0QsRUFBRTtZQUMxRCxLQUFLLENBQUM7Z0JBQ0osUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLEdBQUcsRUFBRSxDQUFDO2dCQUNOLEtBQUssRUFBRSxDQUFDO2dCQUNSLEtBQUssRUFBRSxNQUFNO2FBQ2QsQ0FBQztTQUNILEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdEIsS0FBSyxDQUFDLDBCQUEwQixFQUFFO1lBQ2hDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUMsQ0FBQztTQUN6QixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRTtZQUN6QyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQztTQUM1QyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQztZQUNKLEtBQUssQ0FBQywwQkFBMEIsRUFBRTtnQkFDaEMsT0FBTyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQzthQUNoRCxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3RCLEtBQUssQ0FBQywwQkFBMEIsRUFBRTtnQkFDaEMsT0FBTyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQzthQUM5QyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3RCLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRTtnQkFDekMsT0FBTyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQzthQUNoRCxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1NBQ3ZCLENBQUM7UUFDRixxREFBcUQ7UUFFckQseURBQXlEO1FBQ3pELEtBQUssQ0FBQywwQkFBMEIsRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNyRSxLQUFLLENBQUMsMEJBQTBCLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdEUsQ0FBQztJQUNGLFVBQVUsQ0FBQyxjQUFjLEVBQUU7UUFDekIsS0FBSyxDQUFDLG9EQUFvRCxFQUFFO1lBQzFELEtBQUssQ0FBQztnQkFDSixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsR0FBRyxFQUFFLENBQUM7Z0JBQ04sSUFBSSxFQUFFLENBQUM7Z0JBQ1AsS0FBSyxFQUFFLE1BQU07YUFDZCxDQUFDO1NBQ0gsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QixLQUFLLENBQUMsMEJBQTBCLEVBQUU7WUFDaEMsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBQyxDQUFDO1NBQ3hCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdEIsS0FBSyxDQUFDLG1DQUFtQyxFQUFFO1lBQ3pDLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDO1NBQzVDLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdEIsS0FBSyxDQUFDO1lBQ0osS0FBSyxDQUFDLDBCQUEwQixFQUFFO2dCQUNoQyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO2FBQy9DLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxDQUFDLDBCQUEwQixFQUFFO2dCQUNoQyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO2FBQzdDLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxDQUFDLG1DQUFtQyxFQUFFO2dCQUN6QyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDO2FBQ2hELEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDdkIsQ0FBQztRQUNGLHFEQUFxRDtRQUVyRCx5REFBeUQ7UUFDekQsS0FBSyxDQUFDLDBCQUEwQixFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3JFLEtBQUssQ0FBQywwQkFBMEIsRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztLQUN0RSxDQUFDO0lBQ0YsVUFBVSxDQUFDLGFBQWEsRUFBRTtRQUN4QixLQUFLLENBQUMsb0RBQW9ELEVBQUU7WUFDMUQsS0FBSyxDQUFDO2dCQUNKLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixHQUFHLEVBQUUsQ0FBQztnQkFDTixLQUFLLEVBQUUsQ0FBQztnQkFDUixLQUFLLEVBQUUsTUFBTTthQUNkLENBQUM7U0FDSCxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQywwQkFBMEIsRUFBRTtZQUNoQyxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFDLENBQUM7U0FDekIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QixLQUFLLENBQUM7WUFDSixLQUFLLENBQUMsMEJBQTBCLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7YUFDaEQsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsMEJBQTBCLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7YUFDOUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUN2QixDQUFDO1FBQ0YscURBQXFEO1FBRXJELHlEQUF5RDtRQUN6RCxLQUFLLENBQUMsMEJBQTBCLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDckUsS0FBSyxDQUFDLDBCQUEwQixFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0tBQ3RFLENBQUM7Q0FDSCxDQUFDLENBQUE7QUFHSixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQ3RCLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTtJQUN6QixVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBRTtJQUMzRSxVQUFVLENBQUMsY0FBYyxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFFO0lBQ3pFLFVBQVUsQ0FBQyxjQUFjLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBRTtJQUMzRSxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUU7Q0FDN0UsQ0FBQyxDQUFBO0FBRUYsU0FBUyxXQUFXLENBQUMsRUFBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBQztJQUMvQyxNQUFNLFFBQVEsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQTtJQUNuQyxPQUFPO1FBQ0wsS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3RCLEtBQUssQ0FBQztnQkFDSixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsR0FBRyxFQUFFLENBQUM7Z0JBQ04sSUFBSSxFQUFFLENBQUM7Z0JBQ1AsS0FBSyxFQUFFLE1BQU07YUFDZCxDQUFDO1NBQ0gsRUFBRSxRQUFRLENBQUM7UUFDWixLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ2QsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxNQUFNLENBQUMsYUFBYSxNQUFNLE1BQU0sRUFBQyxDQUFDO1NBQ3BFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdEIsS0FBSyxDQUFDO1lBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDZCxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxNQUFNLENBQUMsYUFBYSxNQUFNLE1BQU0sRUFBQyxDQUFDLENBQUM7YUFDL0YsRUFBRSxRQUFRLENBQUM7WUFDWixLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsMkJBQTJCLEVBQUMsQ0FBQyxDQUFDO2FBQzVFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDdkIsQ0FBQztLQUNILENBQUE7QUFDSCxDQUFDO0FBR0QsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUNsQixPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDekIsVUFBVSxDQUFDLFNBQVMsRUFBRTtRQUNwQixLQUFLLENBQUMsZ0JBQWdCLEVBQUU7WUFDdEIsS0FBSyxDQUFDO2dCQUNKLFFBQVEsRUFBRSxVQUFVO2dCQUNwQixJQUFJLEVBQUUsQ0FBQztnQkFDUCxLQUFLLEVBQUUsTUFBTTthQUNkLENBQUM7U0FDSCxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQztZQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQ2QsT0FBTyxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUM7b0JBQy9CLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQzVELEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUM7b0JBQy9ELEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7aUJBQzNELENBQUMsQ0FBQzthQUNKLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDZCxPQUFPLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQztvQkFDL0IsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQzNDLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7b0JBQzNFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLDJDQUEyQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDekYsQ0FBQyxDQUFDO2FBQ0osRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUN2QixDQUFDO0tBQ0gsQ0FBQztDQUNILENBQUMsQ0FBQTtBQUdKLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDbkQsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUNuQixLQUFLLENBQUM7WUFDSixRQUFRLEVBQUUsT0FBTztZQUNqQixLQUFLLEVBQUUsTUFBTTtZQUNiLFNBQVMsRUFBRSxtQkFBbUI7U0FDL0IsQ0FBQztRQUNGLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztLQUMvRCxDQUFDO0lBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUNuQixLQUFLLENBQUM7WUFDSixRQUFRLEVBQUUsT0FBTztZQUNqQixLQUFLLEVBQUUsTUFBTTtZQUNiLFNBQVMsRUFBRSxnQkFBZ0I7U0FDNUIsQ0FBQztRQUNGLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztLQUNsRSxDQUFDO0NBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgYW5pbWF0ZUNoaWxkLFxuICBncm91cCxcbiAga2V5ZnJhbWVzLFxuICBxdWVyeSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5cblxuZXhwb3J0IGNvbnN0IGZhZGVyID1cbiAgdHJpZ2dlcigncm91dGVBbmltYXRpb25zJywgW1xuICAgIHRyYW5zaXRpb24oJyogPD0+IConLCBbXG4gICAgICAvLyBTZXQgYSBkZWZhdWx0ICBzdHlsZSBmb3IgZW50ZXIgYW5kIGxlYXZlXG4gICAgICBxdWVyeSgnOmVudGVyLCA6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICB0cmFuc2Zvcm06ICdzY2FsZSgwKSB0cmFuc2xhdGVZKDEwMCUpJyxcbiAgICAgICAgfSksXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgLy8gQW5pbWF0ZSB0aGUgbmV3IHBhZ2UgaW5cbiAgICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzYwMG1zIGVhc2UnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3NjYWxlKDEpIHRyYW5zbGF0ZVkoMCknIH0pKSxcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSlcbiAgICBdKSxcbiAgXSlcblxuXG4vLyBmdW5jdGlvbiBzbGlkZVRvKGRpcmVjdGlvbikge1xuLy8gICByZXR1cm4gW1xuLy8gICAgIHF1ZXJ5KCc6ZW50ZXIsIDpsZWF2ZScsIFtcbi8vICAgICAgIHN0eWxlKHtcbi8vICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4vLyAgICAgICAgIHRvcDogMCxcbi8vICAgICAgICAgW2RpcmVjdGlvbl06IDAsXG4vLyAgICAgICAgIHdpZHRoOiAnMTAwJSdcbi8vICAgICAgIH0pXG4vLyAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbi8vICAgICBxdWVyeSgnOmVudGVyJywgW1xuLy8gICAgICAgc3R5bGUoeyBbZGlyZWN0aW9uXTogJy0xMDAlJ30pXG4vLyAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbi8vICAgICBncm91cChbXG4vLyAgICAgICBxdWVyeSgnOmxlYXZlJywgW1xuLy8gICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgW2RpcmVjdGlvbl06ICcxMDAlJ30pKVxuLy8gICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbi8vICAgICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4vLyAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBbZGlyZWN0aW9uXTogJzAlJ30pKVxuLy8gICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuLy8gICAgIF0pLFxuLy8gICAgIC8vIE5vcm1hbGl6ZSB0aGUgcGFnZSBzdHlsZS4uLiBNaWdodCBub3QgYmUgbmVjZXNzYXJ5XG5cbi8vICAgICAvLyBSZXF1aXJlZCBvbmx5IGlmIHlvdSBoYXZlIGNoaWxkIGFuaW1hdGlvbnMgb24gdGhlIHBhZ2Vcbi8vICAgICBxdWVyeSgnOmxlYXZlJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4vLyAgICAgcXVlcnkoJzplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuLy8gICBdXG4vLyB9XG5cbi8vIFRPRE86IFJlZmFjdG9yIHRoZSBzbGlkZXIgYW5pbWF0aW9uLCBiZWNhdXNlIEFPVCBvciBuZy1wYWNrYWdyLCBJIGhhdmVuJ3Rcbi8vIGxvb2tlZCBpbnRvIHdoYXQgZXhhY3RseSBpcyBwcmV2ZW50aW5nIGl0LCBkb2Vzbid0IGFsbG93IHRoZSBmdW5jdGlvbiBjYWxsLlxuLy8gZXhwb3J0IGNvbnN0IHNsaWRlciA9XG4vLyAgIHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbi8vICAgICB0cmFuc2l0aW9uKCcqID0+IGlzTGVmdCcsIHNsaWRlVG8oJ2xlZnQnKSApLFxuLy8gICAgIHRyYW5zaXRpb24oJyogPT4gaXNSaWdodCcsIHNsaWRlVG8oJ3JpZ2h0JykgKSxcbi8vICAgICB0cmFuc2l0aW9uKCdpc1JpZ2h0ID0+IConLCBzbGlkZVRvKCdsZWZ0JykgKSxcbi8vICAgICB0cmFuc2l0aW9uKCdpc0xlZnQgPT4gKicsIHNsaWRlVG8oJ3JpZ2h0JykgKVxuLy8gICBdKVxuXG4vLyBleHBvcnQgY29uc3QgY29udGVudExlYXZlID1cbi8vICAgdHJpZ2dlcignY29udGVudExlYXZlJywgW1xuLy8gICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcblxuLy8gICAgIF0pXG4vLyAgIF0pXG5cbmV4cG9ydCBjb25zdCBzbGlkZXIgPVxuICB0cmlnZ2VyKCdyb3V0ZUFuaW1hdGlvbnMnLCBbXG4gICAgdHJhbnNpdGlvbignKiA9PiBpc0xlZnQnLCBbXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyLCAucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICBzdHlsZSh7IGxlZnQ6ICcwJScsIHBvc2l0aW9uOiAnYWJzb2x1dGUnIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgZ3JvdXAoW1xuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmxlYXZlJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnMTAwJSd9KSlcbiAgICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgbGVmdDogJzAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBdKSxcbiAgICAgIC8vIE5vcm1hbGl6ZSB0aGUgcGFnZSBzdHlsZS4uLiBNaWdodCBub3QgYmUgbmVjZXNzYXJ5XG5cbiAgICAgIC8vIFJlcXVpcmVkIG9ubHkgaWYgeW91IGhhdmUgY2hpbGQgYW5pbWF0aW9ucyBvbiB0aGUgcGFnZVxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgIF0pLFxuICAgIHRyYW5zaXRpb24oJyogPT4gaXNSaWdodCcsIFtcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXIsIC5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICByaWdodDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyByaWdodDogJy0xMDAlJ30pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5oaWVyYXJjaHktcm91dGVyLW91dGxldC0tY29udGVudCcsIFtcbiAgICAgICAgc3R5bGUoeyBsZWZ0OiAnMCUnLCBwb3NpdGlvbjogJ2Fic29sdXRlJyB9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIGdyb3VwKFtcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgcmlnaHQ6ICcxMDAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyByaWdodDogJzAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBdKSxcbiAgICAgIC8vIE5vcm1hbGl6ZSB0aGUgcGFnZSBzdHlsZS4uLiBNaWdodCBub3QgYmUgbmVjZXNzYXJ5XG5cbiAgICAgIC8vIFJlcXVpcmVkIG9ubHkgaWYgeW91IGhhdmUgY2hpbGQgYW5pbWF0aW9ucyBvbiB0aGUgcGFnZVxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgIF0pLFxuICAgIHRyYW5zaXRpb24oJ2lzUmlnaHQgPT4gKicsIFtcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXIsIC5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJSdcbiAgICAgICAgfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IGxlZnQ6ICctMTAwJSd9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIHF1ZXJ5KCcuaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQnLCBbXG4gICAgICAgIHN0eWxlKHsgbGVmdDogJzAlJywgcG9zaXRpb246ICdhYnNvbHV0ZScgfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBncm91cChbXG4gICAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IGxlZnQ6ICcxMDAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnMCUnfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIHF1ZXJ5KCcuaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQnLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IGxlZnQ6ICctMTAwJSd9KSlcbiAgICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIF0pLFxuICAgICAgLy8gTm9ybWFsaXplIHRoZSBwYWdlIHN0eWxlLi4uIE1pZ2h0IG5vdCBiZSBuZWNlc3NhcnlcblxuICAgICAgLy8gUmVxdWlyZWQgb25seSBpZiB5b3UgaGF2ZSBjaGlsZCBhbmltYXRpb25zIG9uIHRoZSBwYWdlXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmxlYXZlJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgXSksXG4gICAgdHJhbnNpdGlvbignaXNMZWZ0ID0+IConLCBbXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyLCAucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgcmlnaHQ6IDAsXG4gICAgICAgICAgd2lkdGg6ICcxMDAlJ1xuICAgICAgICB9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgcmlnaHQ6ICctMTAwJSd9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIGdyb3VwKFtcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgcmlnaHQ6ICcxMDAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyByaWdodDogJzAlJ30pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICBdKSxcbiAgICAgIC8vIE5vcm1hbGl6ZSB0aGUgcGFnZSBzdHlsZS4uLiBNaWdodCBub3QgYmUgbmVjZXNzYXJ5XG5cbiAgICAgIC8vIFJlcXVpcmVkIG9ubHkgaWYgeW91IGhhdmUgY2hpbGQgYW5pbWF0aW9ucyBvbiB0aGUgcGFnZVxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgIF0pXG4gIF0pXG5cblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybWVyID1cbiAgdHJpZ2dlcigncm91dGVBbmltYXRpb25zJywgW1xuICAgIHRyYW5zaXRpb24oJyogPT4gaXNMZWZ0JywgdHJhbnNmb3JtVG8oeyB4OiAtMTAwLCB5OiAtMTAwLCByb3RhdGU6IC03MjAgfSkgKSxcbiAgICB0cmFuc2l0aW9uKCcqID0+IGlzUmlnaHQnLCB0cmFuc2Zvcm1Ubyh7IHg6IDEwMCwgeTogLTEwMCwgcm90YXRlOiA5MCB9KSApLFxuICAgIHRyYW5zaXRpb24oJ2lzUmlnaHQgPT4gKicsIHRyYW5zZm9ybVRvKHsgeDogLTEwMCwgeTogLTEwMCwgcm90YXRlOiAzNjAgfSkgKSxcbiAgICB0cmFuc2l0aW9uKCdpc0xlZnQgPT4gKicsIHRyYW5zZm9ybVRvKHsgeDogMTAwLCB5OiAtMTAwLCByb3RhdGU6IC0zNjAgfSkgKVxuXSlcblxuZnVuY3Rpb24gdHJhbnNmb3JtVG8oe3ggPSAxMDAsIHkgPSAwLCByb3RhdGUgPSAwfSkge1xuICBjb25zdCBvcHRpb25hbCA9IHsgb3B0aW9uYWw6IHRydWUgfVxuICByZXR1cm4gW1xuICAgIHF1ZXJ5KCc6ZW50ZXIsIDpsZWF2ZScsIFtcbiAgICAgIHN0eWxlKHtcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHRvcDogMCxcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgd2lkdGg6ICcxMDAlJ1xuICAgICAgfSlcbiAgICBdLCBvcHRpb25hbCksXG4gICAgcXVlcnkoJzplbnRlcicsIFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiBgdHJhbnNsYXRlKCR7eH0lLCAke3l9JSkgcm90YXRlKCR7cm90YXRlfWRlZylgfSlcbiAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgIGdyb3VwKFtcbiAgICAgIHF1ZXJ5KCc6bGVhdmUnLCBbXG4gICAgICAgIGFuaW1hdGUoJzYwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06IGB0cmFuc2xhdGUoJHt4fSUsICR7eX0lKSByb3RhdGUoJHtyb3RhdGV9ZGVnKWB9KSlcbiAgICAgIF0sIG9wdGlvbmFsKSxcbiAgICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzYwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06IGB0cmFuc2xhdGUoMCwgMCkgcm90YXRlKDApYH0pKVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuICAgIF0pLFxuICBdXG59XG5cblxuZXhwb3J0IGNvbnN0IHN0ZXBwZXIgPVxuICB0cmlnZ2VyKCdyb3V0ZUFuaW1hdGlvbnMnLCBbXG4gICAgdHJhbnNpdGlvbignKiA8PT4gKicsIFtcbiAgICAgIHF1ZXJ5KCc6ZW50ZXIsIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgfSksXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgZ3JvdXAoW1xuICAgICAgICBxdWVyeSgnOmVudGVyJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzIwMDBtcyBlYXNlJywga2V5ZnJhbWVzKFtcbiAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMCkgdHJhbnNsYXRlWCgxMDAlKScsIG9mZnNldDogMCB9KSxcbiAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KSB0cmFuc2xhdGVYKDI1JSknLCBvZmZzZXQ6IDAuMyB9KSxcbiAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMSkgdHJhbnNsYXRlWCgwJSknLCBvZmZzZXQ6IDEgfSksXG4gICAgICAgICAgXSkpLFxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnOmxlYXZlJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzIwMDBtcyBlYXNlJywga2V5ZnJhbWVzKFtcbiAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMSknLCBvZmZzZXQ6IDAgfSksXG4gICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3NjYWxlKDAuNSkgdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoMCknLCBvZmZzZXQ6IDAuMzUgfSksXG4gICAgICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKC0xODBkZWcpIHNjYWxlKDYpJywgb2Zmc2V0OiAxIH0pLFxuICAgICAgICAgIF0pKSxcbiAgICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuICAgICAgXSksXG4gICAgXSlcbiAgXSlcblxuXG5leHBvcnQgY29uc3Qgc2lkZVRvU2lkZSA9IHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xuICAgIHN0eWxlKHtcbiAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJ1xuICAgIH0pLFxuICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDAlKScgfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgc3R5bGUoe1xuICAgICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknXG4gICAgfSksXG4gICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJyB9KSlcbiAgXSlcbl0pXG4iXX0=
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LXJvdXRlLWFuaW1hdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2R5bmFtaWMtcm91dGVyL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0L2hpZXJhcmNoeS1yb3V0ZS1hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxHQUNSLE1BQU0scUJBQXFCLENBQUE7QUFFNUIsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUNoQixPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDekIsVUFBVSxDQUFDLFNBQVMsRUFBRTtRQUNwQiwyQ0FBMkM7UUFDM0MsS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3RCLEtBQUssQ0FBQztnQkFDSixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsSUFBSSxFQUFFLENBQUM7Z0JBQ1AsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsU0FBUyxFQUFFLDJCQUEyQjthQUN2QyxDQUFDO1NBQ0gsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QiwwQkFBMEI7UUFDMUIsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNkLE9BQU8sQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO1NBQ2xGLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdkIsQ0FBQztDQUNILENBQUMsQ0FBQTtBQUVKLGdDQUFnQztBQUNoQyxhQUFhO0FBQ2IsZ0NBQWdDO0FBQ2hDLGdCQUFnQjtBQUNoQixnQ0FBZ0M7QUFDaEMsa0JBQWtC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QVMsRUFBRSxnQkFBZ0I7U0FDNUIsQ0FBQztRQUNGLE9BQU8sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztLQUNsRSxDQUFDO0NBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgYW5pbWF0ZUNoaWxkLFxuICBncm91cCxcbiAga2V5ZnJhbWVzLFxuICBxdWVyeSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5cbmV4cG9ydCBjb25zdCBmYWRlciA9XG4gIHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgICB0cmFuc2l0aW9uKCcqIDw9PiAqJywgW1xuICAgICAgLy8gU2V0IGEgZGVmYXVsdCAgc3R5bGUgZm9yIGVudGVyIGFuZCBsZWF2ZVxuICAgICAgcXVlcnkoJzplbnRlciwgOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIG9wYWNpdHk6IDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMCkgdHJhbnNsYXRlWSgxMDAlKScsXG4gICAgICAgIH0pLFxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIC8vIEFuaW1hdGUgdGhlIG5ldyBwYWdlIGluXG4gICAgICBxdWVyeSgnOmVudGVyJywgW1xuICAgICAgICBhbmltYXRlKCc2MDBtcyBlYXNlJywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdzY2FsZSgxKSB0cmFuc2xhdGVZKDApJyB9KSksXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgXSksXG4gIF0pXG5cbi8vIGZ1bmN0aW9uIHNsaWRlVG8oZGlyZWN0aW9uKSB7XG4vLyAgIHJldHVybiBbXG4vLyAgICAgcXVlcnkoJzplbnRlciwgOmxlYXZlJywgW1xuLy8gICAgICAgc3R5bGUoe1xuLy8gICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbi8vICAgICAgICAgdG9wOiAwLFxuLy8gICAgICAgICBbZGlyZWN0aW9uXTogMCxcbi8vICAgICAgICAgd2lkdGg6ICcxMDAlJ1xuLy8gICAgICAgfSlcbi8vICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuLy8gICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4vLyAgICAgICBzdHlsZSh7IFtkaXJlY3Rpb25dOiAnLTEwMCUnfSlcbi8vICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuLy8gICAgIGdyb3VwKFtcbi8vICAgICAgIHF1ZXJ5KCc6bGVhdmUnLCBbXG4vLyAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBbZGlyZWN0aW9uXTogJzEwMCUnfSkpXG4vLyAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuLy8gICAgICAgcXVlcnkoJzplbnRlcicsIFtcbi8vICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IFtkaXJlY3Rpb25dOiAnMCUnfSkpXG4vLyAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4vLyAgICAgXSksXG4vLyAgICAgLy8gTm9ybWFsaXplIHRoZSBwYWdlIHN0eWxlLi4uIE1pZ2h0IG5vdCBiZSBuZWNlc3NhcnlcblxuLy8gICAgIC8vIFJlcXVpcmVkIG9ubHkgaWYgeW91IGhhdmUgY2hpbGQgYW5pbWF0aW9ucyBvbiB0aGUgcGFnZVxuLy8gICAgIHF1ZXJ5KCc6bGVhdmUnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbi8vICAgICBxdWVyeSgnOmVudGVyJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4vLyAgIF1cbi8vIH1cblxuLy8gVE9ETzogUmVmYWN0b3IgdGhlIHNsaWRlciBhbmltYXRpb24sIGJlY2F1c2UgQU9UIG9yIG5nLXBhY2thZ3IsIEkgaGF2ZW4ndFxuLy8gbG9va2VkIGludG8gd2hhdCBleGFjdGx5IGlzIHByZXZlbnRpbmcgaXQsIGRvZXNuJ3QgYWxsb3cgdGhlIGZ1bmN0aW9uIGNhbGwuXG4vLyBleHBvcnQgY29uc3Qgc2xpZGVyID1cbi8vICAgdHJpZ2dlcigncm91dGVBbmltYXRpb25zJywgW1xuLy8gICAgIHRyYW5zaXRpb24oJyogPT4gaXNMZWZ0Jywgc2xpZGVUbygnbGVmdCcpICksXG4vLyAgICAgdHJhbnNpdGlvbignKiA9PiBpc1JpZ2h0Jywgc2xpZGVUbygncmlnaHQnKSApLFxuLy8gICAgIHRyYW5zaXRpb24oJ2lzUmlnaHQgPT4gKicsIHNsaWRlVG8oJ2xlZnQnKSApLFxuLy8gICAgIHRyYW5zaXRpb24oJ2lzTGVmdCA9PiAqJywgc2xpZGVUbygncmlnaHQnKSApXG4vLyAgIF0pXG5cbi8vIGV4cG9ydCBjb25zdCBjb250ZW50TGVhdmUgPVxuLy8gICB0cmlnZ2VyKCdjb250ZW50TGVhdmUnLCBbXG4vLyAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuXG4vLyAgICAgXSlcbi8vICAgXSlcblxuZXhwb3J0IGNvbnN0IHNsaWRlciA9XG4gIHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgICB0cmFuc2l0aW9uKCcqID0+IGlzTGVmdCcsIFtcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXIsIC5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJSdcbiAgICAgICAgfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IGxlZnQ6ICctMTAwJScgfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICBzdHlsZSh7IGxlZnQ6ICcwJScsIHBvc2l0aW9uOiAnYWJzb2x1dGUnIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgZ3JvdXAoW1xuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmxlYXZlJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnMTAwJScgfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXInLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IGxlZnQ6ICcwJScgfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIHF1ZXJ5KCcuaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQnLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IGxlZnQ6ICctMTAwJScgfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBdKSxcbiAgICAgIC8vIE5vcm1hbGl6ZSB0aGUgcGFnZSBzdHlsZS4uLiBNaWdodCBub3QgYmUgbmVjZXNzYXJ5XG5cbiAgICAgIC8vIFJlcXVpcmVkIG9ubHkgaWYgeW91IGhhdmUgY2hpbGQgYW5pbWF0aW9ucyBvbiB0aGUgcGFnZVxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgIF0pLFxuICAgIHRyYW5zaXRpb24oJyogPT4gaXNSaWdodCcsIFtcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXIsIC5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICByaWdodDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyByaWdodDogJy0xMDAlJyB9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIHF1ZXJ5KCcuaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQnLCBbXG4gICAgICAgIHN0eWxlKHsgbGVmdDogJzAlJywgcG9zaXRpb246ICdhYnNvbHV0ZScgfSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBncm91cChbXG4gICAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IHJpZ2h0OiAnMTAwJScgfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXInLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IHJpZ2h0OiAnMCUnIH0pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnIH0pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgXSksXG4gICAgICAvLyBOb3JtYWxpemUgdGhlIHBhZ2Ugc3R5bGUuLi4gTWlnaHQgbm90IGJlIG5lY2Vzc2FyeVxuXG4gICAgICAvLyBSZXF1aXJlZCBvbmx5IGlmIHlvdSBoYXZlIGNoaWxkIGFuaW1hdGlvbnMgb24gdGhlIHBhZ2VcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXInLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICBdKSxcbiAgICB0cmFuc2l0aW9uKCdpc1JpZ2h0ID0+IConLCBbXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyLCAucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5oaWVyYXJjaHktcm91dGVyLW91dGxldC0tY29udGVudCcsIFtcbiAgICAgICAgc3R5bGUoeyBsZWZ0OiAnMCUnLCBwb3NpdGlvbjogJ2Fic29sdXRlJyB9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIGdyb3VwKFtcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgbGVmdDogJzEwMCUnIH0pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnMCUnIH0pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgICBxdWVyeSgnLmhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1jb250ZW50JywgW1xuICAgICAgICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyBsZWZ0OiAnLTEwMCUnIH0pKVxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgXSksXG4gICAgICAvLyBOb3JtYWxpemUgdGhlIHBhZ2Ugc3R5bGUuLi4gTWlnaHQgbm90IGJlIG5lY2Vzc2FyeVxuXG4gICAgICAvLyBSZXF1aXJlZCBvbmx5IGlmIHlvdSBoYXZlIGNoaWxkIGFuaW1hdGlvbnMgb24gdGhlIHBhZ2VcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6bGVhdmUnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXInLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICBdKSxcbiAgICB0cmFuc2l0aW9uKCdpc0xlZnQgPT4gKicsIFtcbiAgICAgIHF1ZXJ5KCcucm91dGVyLWNvbnRhaW5lciA6ZW50ZXIsIC5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICByaWdodDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgIH0pXG4gICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyByaWdodDogJy0xMDAlJyB9KVxuICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIGdyb3VwKFtcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDpsZWF2ZScsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgcmlnaHQ6ICcxMDAlJyB9KSlcbiAgICAgICAgXSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgICAgcXVlcnkoJy5yb3V0ZXItY29udGFpbmVyIDplbnRlcicsIFtcbiAgICAgICAgICBhbmltYXRlKCcxMDAwbXMgZWFzZScsIHN0eWxlKHsgcmlnaHQ6ICcwJScgfSkpXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSlcbiAgICAgIF0pLFxuICAgICAgLy8gTm9ybWFsaXplIHRoZSBwYWdlIHN0eWxlLi4uIE1pZ2h0IG5vdCBiZSBuZWNlc3NhcnlcblxuICAgICAgLy8gUmVxdWlyZWQgb25seSBpZiB5b3UgaGF2ZSBjaGlsZCBhbmltYXRpb25zIG9uIHRoZSBwYWdlXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmxlYXZlJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBxdWVyeSgnLnJvdXRlci1jb250YWluZXIgOmVudGVyJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgXSlcbiAgXSlcblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybWVyID1cbiAgdHJpZ2dlcigncm91dGVBbmltYXRpb25zJywgW1xuICAgIHRyYW5zaXRpb24oJyogPT4gaXNMZWZ0JywgdHJhbnNmb3JtVG8oeyB4OiAtMTAwLCB5OiAtMTAwLCByb3RhdGU6IC03MjAgfSkpLFxuICAgIHRyYW5zaXRpb24oJyogPT4gaXNSaWdodCcsIHRyYW5zZm9ybVRvKHsgeDogMTAwLCB5OiAtMTAwLCByb3RhdGU6IDkwIH0pKSxcbiAgICB0cmFuc2l0aW9uKCdpc1JpZ2h0ID0+IConLCB0cmFuc2Zvcm1Ubyh7IHg6IC0xMDAsIHk6IC0xMDAsIHJvdGF0ZTogMzYwIH0pKSxcbiAgICB0cmFuc2l0aW9uKCdpc0xlZnQgPT4gKicsIHRyYW5zZm9ybVRvKHsgeDogMTAwLCB5OiAtMTAwLCByb3RhdGU6IC0zNjAgfSkpXG5dKVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Ubyh7IHggPSAxMDAsIHkgPSAwLCByb3RhdGUgPSAwIH0pIHtcbiAgY29uc3Qgb3B0aW9uYWwgPSB7IG9wdGlvbmFsOiB0cnVlIH1cbiAgcmV0dXJuIFtcbiAgICBxdWVyeSgnOmVudGVyLCA6bGVhdmUnLCBbXG4gICAgICBzdHlsZSh7XG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIGxlZnQ6IDAsXG4gICAgICAgIHdpZHRoOiAnMTAwJSdcbiAgICAgIH0pXG4gICAgXSwgb3B0aW9uYWwpLFxuICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4gICAgICBzdHlsZSh7IHRyYW5zZm9ybTogYHRyYW5zbGF0ZSgke3h9JSwgJHt5fSUpIHJvdGF0ZSgke3JvdGF0ZX1kZWcpYCB9KVxuICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgZ3JvdXAoW1xuICAgICAgcXVlcnkoJzpsZWF2ZScsIFtcbiAgICAgICAgYW5pbWF0ZSgnNjAwbXMgZWFzZS1vdXQnLCBzdHlsZSh7IHRyYW5zZm9ybTogYHRyYW5zbGF0ZSgke3h9JSwgJHt5fSUpIHJvdGF0ZSgke3JvdGF0ZX1kZWcpYCB9KSlcbiAgICAgIF0sIG9wdGlvbmFsKSxcbiAgICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzYwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06IGB0cmFuc2xhdGUoMCwgMCkgcm90YXRlKDApYCB9KSlcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSlcbiAgICBdKSxcbiAgXVxufVxuXG5leHBvcnQgY29uc3Qgc3RlcHBlciA9XG4gIHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgICB0cmFuc2l0aW9uKCcqIDw9PiAqJywgW1xuICAgICAgcXVlcnkoJzplbnRlciwgOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICB9KSxcbiAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICBncm91cChbXG4gICAgICAgIHF1ZXJ5KCc6ZW50ZXInLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMjAwMG1zIGVhc2UnLCBrZXlmcmFtZXMoW1xuICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgwKSB0cmFuc2xhdGVYKDEwMCUpJywgb2Zmc2V0OiAwIH0pLFxuICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgwLjUpIHRyYW5zbGF0ZVgoMjUlKScsIG9mZnNldDogMC4zIH0pLFxuICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgxKSB0cmFuc2xhdGVYKDAlKScsIG9mZnNldDogMSB9KSxcbiAgICAgICAgICBdKSksXG4gICAgICAgIF0sIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIHF1ZXJ5KCc6bGVhdmUnLCBbXG4gICAgICAgICAgYW5pbWF0ZSgnMjAwMG1zIGVhc2UnLCBrZXlmcmFtZXMoW1xuICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgxKScsIG9mZnNldDogMCB9KSxcbiAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KSB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgwKScsIG9mZnNldDogMC4zNSB9KSxcbiAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoLTE4MGRlZykgc2NhbGUoNiknLCBvZmZzZXQ6IDEgfSksXG4gICAgICAgICAgXSkpLFxuICAgICAgICBdLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICBdKSxcbiAgICBdKVxuICBdKVxuXG5leHBvcnQgY29uc3Qgc2lkZVRvU2lkZSA9IHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xuICAgIHN0eWxlKHtcbiAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJ1xuICAgIH0pLFxuICAgIGFuaW1hdGUoJzEwMDBtcyBlYXNlJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDAlKScgfSkpXG4gIF0pLFxuICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgc3R5bGUoe1xuICAgICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknXG4gICAgfSksXG4gICAgYW5pbWF0ZSgnMTAwMG1zIGVhc2UnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJyB9KSlcbiAgXSlcbl0pXG4iXX0=
@@ -43,7 +43,6 @@ export class HierarchyRouterOutletComponent {
43
43
  // )
44
44
  // .subscribe(v => console.log(`routeChanges[${this._uid}]`, v))
45
45
  }
46
- ngOnInit() { }
47
46
  ngOnDestroy() {
48
47
  this._ngUnsubscribe.next(undefined);
49
48
  this._ngUnsubscribe.complete();
@@ -62,7 +61,7 @@ export class HierarchyRouterOutletComponent {
62
61
  if (outlet.isActivated) {
63
62
  // console.log(outlet.isActivated)
64
63
  // console.log(outlet.component)
65
- console.log(this.animState);
64
+ // console.log(this.animState)
66
65
  return this.animState;
67
66
  }
68
67
  else {
@@ -94,8 +93,8 @@ export class HierarchyRouterOutletComponent {
94
93
  this.ngContentVisible = !this.outletActive;
95
94
  }
96
95
  }
97
- HierarchyRouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyRouterOutletComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
98
- HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: HierarchyRouterOutletComponent, selector: "seam-hierarchy-router-outlet", ngImport: i0, template: "<div class=\"h-100\"\n [@routeAnimations]=\"prepareRoute(outlet)\"\n (@routeAnimations.start)=\"routeAnimationsStart($event)\"\n (@routeAnimations.done)=\"routeAnimationsDone($event)\">\n <div class=\"hierarchy-router-outlet--content h-100\" *ngIf=\"ngContentVisible\">\n <!-- {{ animState }} -->\n <div class=\"border border-info h-100\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"router-container\"\n [class.h-100]=\"!ngContentVisible\"\n >\n <!-- <div [@routeAnimations]=\"animState\"> -->\n <!-- <div class=\"hierarchy-router-outlet--route-content\"> -->\n <router-outlet #outlet=\"outlet\"\n (activate)=\"outletActivate($event)\"\n (deactivate)=\"outletDeactivate($event)\">\n </router-outlet>\n </div>\n</div>\n", styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], animations: [
96
+ HierarchyRouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HierarchyRouterOutletComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
97
+ HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: HierarchyRouterOutletComponent, selector: "seam-hierarchy-router-outlet", ngImport: i0, template: "<div class=\"h-100\"\n [@routeAnimations]=\"prepareRoute(outlet)\"\n (@routeAnimations.start)=\"routeAnimationsStart($event)\"\n (@routeAnimations.done)=\"routeAnimationsDone($event)\">\n <div class=\"hierarchy-router-outlet--content h-100\" *ngIf=\"ngContentVisible\">\n <!-- {{ animState }} -->\n <div class=\"border border-info h-100\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"router-container\"\n [class.h-100]=\"!ngContentVisible\"\n >\n <!-- <div [@routeAnimations]=\"animState\"> -->\n <!-- <div class=\"hierarchy-router-outlet--route-content\"> -->\n <router-outlet #outlet=\"outlet\"\n (activate)=\"outletActivate($event)\"\n (deactivate)=\"outletDeactivate($event)\">\n </router-outlet>\n </div>\n</div>\n", styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], animations: [
99
98
  // fader,
100
99
  slider,
101
100
  // transformer,
@@ -103,7 +102,7 @@ HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
103
102
  // sideToSide
104
103
  // contentLeave
105
104
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyRouterOutletComponent, decorators: [{
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HierarchyRouterOutletComponent, decorators: [{
107
106
  type: Component,
108
107
  args: [{ selector: 'seam-hierarchy-router-outlet', animations: [
109
108
  // fader,
@@ -114,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
114
113
  // contentLeave
115
114
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"h-100\"\n [@routeAnimations]=\"prepareRoute(outlet)\"\n (@routeAnimations.start)=\"routeAnimationsStart($event)\"\n (@routeAnimations.done)=\"routeAnimationsDone($event)\">\n <div class=\"hierarchy-router-outlet--content h-100\" *ngIf=\"ngContentVisible\">\n <!-- {{ animState }} -->\n <div class=\"border border-info h-100\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"router-container\"\n [class.h-100]=\"!ngContentVisible\"\n >\n <!-- <div [@routeAnimations]=\"animState\"> -->\n <!-- <div class=\"hierarchy-router-outlet--route-content\"> -->\n <router-outlet #outlet=\"outlet\"\n (activate)=\"outletActivate($event)\"\n (deactivate)=\"outletDeactivate($event)\">\n </router-outlet>\n </div>\n</div>\n", styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"] }]
116
115
  }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }]; } });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LXJvdXRlci1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9oaWVyYXJjaHktcm91dGVyLW91dGxldC9oaWVyYXJjaHktcm91dGVyLW91dGxldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2R5bmFtaWMtcm91dGVyL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0L2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWtDLE1BQU0sZUFBZSxDQUFBO0FBQ2xHLE9BQU8sRUFBa0IsYUFBYSxFQUFFLGVBQWUsRUFBd0IsTUFBTSxpQkFBaUIsQ0FBQTtBQUN0RyxPQUFPLEVBQWlCLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBd0IsU0FBUyxFQUFPLE1BQU0sZ0JBQWdCLENBQUE7QUFFeEcsT0FBTyxFQUFxQixNQUFNLEVBQXdCLE1BQU0sOEJBQThCLENBQUE7Ozs7QUFFOUYsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFjO0lBQ3pDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGFBQWEsQ0FBQyxFQUNuRixvQkFBb0IsQ0FBQyxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUN2RCxHQUFHLENBQUMsS0FBSyxDQUFDLEVB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QW9CLENBQUMsS0FBVTtRQUM3Qiw2Q0FBNkM7UUFDN0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQTtJQUM5QixDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBVTtRQUM1Qiw0Q0FBNEM7UUFDNUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQTtJQUM1QyxDQUFDOzsySEE3RlUsOEJBQThCOytHQUE5Qiw4QkFBOEIsb0VDeEMzQywrd0JBcUJBLDhaRFNjO1FBQ1YsU0FBUztRQUNULE1BQU07UUFDTixlQUFlO1FBQ2YsV0FBVztRQUNYLGFBQWE7UUFDYixlQUFlO0tBQ2hCOzJGQUdVLDhCQUE4QjtrQkFkMUMsU0FBUzsrQkFDRSw4QkFBOEIsY0FHNUI7d0JBQ1YsU0FBUzt3QkFDVCxNQUFNO3dCQUNOLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxhQUFhO3dCQUNiLGVBQWU7cUJBQ2hCLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciwgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBmYWRlciwgc2lkZVRvU2lkZSwgc2xpZGVyLCBzdGVwcGVyLCB0cmFuc2Zvcm1lciB9IGZyb20gJy4vaGllcmFyY2h5LXJvdXRlLWFuaW1hdGlvbnMnXG5cbmV4cG9ydCBmdW5jdGlvbiByb3V0ZUNoYW5nZXMocm91dGVyOiBSb3V0ZXIpICB7XG4gIHJldHVybiByb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0IHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHg6IGFueSwgeTogYW55KSA9PiB4LmlkID09PSB5LmlkKSxcbiAgICBtYXAoZXZlbnQgPT4gKHsgdXJsOiBldmVudC51cmwgfSkpXG4gIClcbn1cblxuXG4vL1xuLy8gVE9ETzogQW5pbWF0aW9uIGltcHJvdmVtZW50OiBUcnkgYWRkaW5nIGEgZnVsbCBjb21wb25lbnQgYW5pbWF0aW9uIHRoYXRcbi8vIHF1ZXJpZXMgdGhlIDxuZy1jb250ZW50PiBhbmQgPHJvdXRlci1vdXRsZXQ+IGJsb2Nrcy4gV2hlbiB0aGUgb3V0bGV0XG4vLyBhY3RpdmF0ZXMsIHNldCB0aGUgYW5pbWF0aW9uIHN0YXRlIHRvIGEgdHJhbnNpdGlvbiB0aGF0IG1vdmVzIGJvdGggYmxvY2tzXG4vLyB0b2dldGhlci5cbi8vXG5cblxubGV0IF91aWQgPSAwXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0taGllcmFyY2h5LXJvdXRlci1vdXRsZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vaGllcmFyY2h5LXJvdXRlci1vdXRsZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oaWVyYXJjaHktcm91dGVyLW91dGxldC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgLy8gZmFkZXIsXG4gICAgc2xpZGVyLFxuICAgIC8vIHRyYW5zZm9ybWVyLFxuICAgIC8vIHN0ZXBwZXIsXG4gICAgLy8gc2lkZVRvU2lkZVxuICAgIC8vIGNvbnRlbnRMZWF2ZVxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBIaWVyYXJjaHlSb3V0ZXJPdXRsZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfdWlkID0gX3VpZCsrXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBhbmltU3RhdGUgPSAnaXNSaWdodCdcbiAgLy8gYW5pbVN0YXRlID0gJydcblxuICBvdXRsZXRBY3RpdmUgPSBmYWxzZVxuXG4gIG5nQ29udGVudFZpc2libGUgPSB0cnVlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyXG4gICkge1xuICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZShcbiAgICAgIGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgICAgLy8gdGFwKHYgPT4gY29uc29sZS5sb2coYF9oYXNDaGlsZHJlbigpWyR7dGhpcy5fdWlkfV1gLCB0aGlzLl9oYXNDaGlsZHJlbigpKSksXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApXG4gICAgLnN1YnNjcmliZSgpXG5cbiAgICAvLyByb3V0ZUNoYW5nZXModGhpcy5fcm91dGVyKVxuICAgIC8vICAgLnBpcGUoXG4gICAgLy8gICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgIC8vICAgICB0YXAoKCkgPT4ge1xuICAgIC8vICAgICAgIC8vIGlmICh0aGlzLl9oYXNDaGlsZHJlbigpKSB7XG4gICAgLy8gICAgICAgLy8gICB0aGlzLmFuaW1TdGF0ZSA9ICdpc0xlZnQnXG4gICAgLy8gICAgICAgLy8gfSBlbHNlIHtcbiAgICAvLyAgICAgICAvLyAgIHRoaXMuYW5pbVN0YXRlID0gJ2lzUmlnaHQnXG4gICAgLy8gICAgICAgLy8gfVxuICAgIC8vICAgICB9KVxuICAgIC8vICAgKVxuICAgIC8vICAgLnN1YnNjcmliZSh2ID0+IGNvbnNvbGUubG9nKGByb3V0ZUNoYW5nZXNbJHt0aGlzLl91aWR9XWAsIHYpKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7IH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFzQ2hpbGRyZW4oKSB7XG4gICAgY29uc3QgY291bnQgPSB0aGlzLl9yb3V0ZS5wYXRoRnJvbVJvb3QubGVuZ3RoIC0gMVxuICAgIGxldCBjb3VudEZ1bGwgPSAwXG4gICAgaWYgKHRoaXMuX3JvdXRlci5wYXJzZVVybCh0aGlzLl9yb3V0ZXIudXJsKS5yb290LmNoaWxkcmVuLnByaW1hcnkpIHtcbiAgICAgIGNvdW50RnVsbCA9IHRoaXMuX3JvdXRlci5wYXJzZVVybCh0aGlzLl9yb3V0ZXIudXJsKS5yb290LmNoaWxkcmVuLnByaW1hcnkuc2VnbWVudHMubGVuZ3RoXG4gICAgfVxuICAgIC8vIGNvbnNvbGUubG9nKGBfaGFzQ2hpbGRyZW5bJHt0aGlzLl91aWR9XWAsIHsgY291bnQsIGNvdW50RnVsbCB9KVxuICAgIHJldHVybiBjb3VudEZ1bGwgPiBjb3VudFxuICB9XG5cbiAgcHJlcGFyZVJvdXRlKG91dGxldDogUm91dGVyT3V0bGV0KSB7XG4gICAgLy8gY29uc29sZS5sb2coYG91dGxldFske3RoaXMuX3VpZH1dYCwgb3V0bGV0LCB0aGlzLmFuaW1TdGF0ZSwgdGhpcy5faGFzQ2hpbGRyZW4oKSwgdGhpcy5vdXRsZXRBY3RpdmUpXG4gICAgaWYgKG91dGxldC5pc0FjdGl2YXRlZCkge1xuICAgICAgLy8gY29uc29sZS5sb2cob3V0bGV0LmlzQWN0aXZhdGVkKVxuICAgICAgLy8gY29uc29sZS5sb2cob3V0bGV0LmNvbXBvbmVudClcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuYW5pbVN0YXRlKVxuICAgICAgcmV0dXJuIHRoaXMuYW5pbVN0YXRlXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG4gICAgLy8gY29uc29sZS5sb2coYHByZXBhcmVSb3V0ZVske3RoaXMuX3VpZH1dYCwgdGhpcy5hbmltU3RhdGUsIHRoaXMuX2hhc0NoaWxkcmVuKCkpXG4gICAgLy8gY29uc29sZS5sb2coJ2FjdGl2YXRlZFJvdXRlRGF0YScsIG91dGxldCAmJiBvdXRsZXQuYWN0aXZhdGVkUm91dGVEYXRhKVxuICAgIC8vIGlmIChvdXRsZXQgJiYgb3V0bGV0LmlzQWN0aXZhdGVkKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZygnYWN0aXZhdGVkUm91dGUnLCBvdXRsZXQuYWN0aXZhdGVkUm91dGUgJiYgb3V0bGV0LmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnVybClcbiAgICAvLyB9XG4gICAgLy8gcmV0dXJuIG91dGxldCAmJiBvdXRsZXQuYWN0aXZhdGVkUm91dGVEYXRhICYmIG91dGxldC5hY3RpdmF0ZWRSb3V0ZURhdGFbJ2FuaW1hdGlvbiddXG4gICAgLy8gY29uc29sZS5sb2coJycpXG4gICAgLy8gcmV0dXJuIHRoaXMuYW5pbVN0YXRlXG4gIH1cblxuICBvdXRsZXRBY3RpdmF0ZShldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coYG91dGxldEFjdGl2YXRlWyR7dGhpcy5fdWlkfV1gLCBldmVudClcbiAgICB0aGlzLm91dGxldEFjdGl2ZSA9IHRydWVcbiAgfVxuXG4gIG91dGxldERlYWN0aXZhdGUoZXZlbnQ6IGFueSkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBvdXRsZXREZWFjdGl2YXRlWyR7dGhpcy5fdWlkfV1gLCBldmVudClcbiAgICB0aGlzLm91dGxldEFjdGl2ZSA9IGZhbHNlXG4gIH1cblxuICByb3V0ZUFuaW1hdGlvbnNTdGFydChldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3JvdXRlQW5pbWF0aW9uc1N0YXJ0JywgZXZlbnQpXG4gICAgdGhpcy5uZ0NvbnRlbnRWaXNpYmxlID0gdHJ1ZVxuICB9XG5cbiAgcm91dGVBbmltYXRpb25zRG9uZShldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3JvdXRlQW5pbWF0aW9uc0RvbmUnLCBldmVudClcbiAgICB0aGlzLm5nQ29udGVudFZpc2libGUgPSAhdGhpcy5vdXRsZXRBY3RpdmVcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDBcIlxuICBbQHJvdXRlQW5pbWF0aW9uc109XCJwcmVwYXJlUm91dGUob3V0bGV0KVwiXG4gIChAcm91dGVBbmltYXRpb25zLnN0YXJ0KT1cInJvdXRlQW5pbWF0aW9uc1N0YXJ0KCRldmVudClcIlxuICAoQHJvdXRlQW5pbWF0aW9ucy5kb25lKT1cInJvdXRlQW5pbWF0aW9uc0RvbmUoJGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwiaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQgaC0xMDBcIiAqbmdJZj1cIm5nQ29udGVudFZpc2libGVcIj5cbiAgICA8IS0tIHt7IGFuaW1TdGF0ZSB9fSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyIGJvcmRlci1pbmZvIGgtMTAwXCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicm91dGVyLWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLmgtMTAwXT1cIiFuZ0NvbnRlbnRWaXNpYmxlXCJcbiAgICA+XG4gIDwhLS0gPGRpdiBbQHJvdXRlQW5pbWF0aW9uc109XCJhbmltU3RhdGVcIj4gLS0+XG4gIDwhLS0gPGRpdiBjbGFzcz1cImhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1yb3V0ZS1jb250ZW50XCI+IC0tPlxuICAgIDxyb3V0ZXItb3V0bGV0ICNvdXRsZXQ9XCJvdXRsZXRcIlxuICAgICAgKGFjdGl2YXRlKT1cIm91dGxldEFjdGl2YXRlKCRldmVudClcIlxuICAgICAgKGRlYWN0aXZhdGUpPVwib3V0bGV0RGVhY3RpdmF0ZSgkZXZlbnQpXCI+XG4gICAgPC9yb3V0ZXItb3V0bGV0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LXJvdXRlci1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9oaWVyYXJjaHktcm91dGVyLW91dGxldC9oaWVyYXJjaHktcm91dGVyLW91dGxldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2R5bmFtaWMtcm91dGVyL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0L2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQTBCLE1BQU0sZUFBZSxDQUFBO0FBQzFGLE9BQU8sRUFBa0IsYUFBYSxFQUFFLGVBQWUsRUFBd0IsTUFBTSxpQkFBaUIsQ0FBQTtBQUN0RyxPQUFPLEVBQWlCLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBd0IsU0FBUyxFQUFPLE1BQU0sZ0JBQWdCLENBQUE7QUFFeEcsT0FBTyxFQUFxQixNQUFNLEVBQXdCLE1BQU0sOEJBQThCLENBQUE7Ozs7QUFFOUYsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFjO0lBQ3pDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGFBQWEsQ0FBQyxFQUNuRixvQkFBb0IsQ0FBQyxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUN2RCxHQUFHLENBQUMsS0FBSyxDQUFDLEVB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SSxDQUFBO0lBQzlCLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFVO1FBQzVCLDRDQUE0QztRQUM1QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFBO0lBQzVDLENBQUM7OzJIQTNGVSw4QkFBOEI7K0dBQTlCLDhCQUE4QixvRUN0QzNDLCt3QkFxQkEsOFpET2M7UUFDVixTQUFTO1FBQ1QsTUFBTTtRQUNOLGVBQWU7UUFDZixXQUFXO1FBQ1gsYUFBYTtRQUNiLGVBQWU7S0FDaEI7MkZBR1UsOEJBQThCO2tCQWQxQyxTQUFTOytCQUNFLDhCQUE4QixjQUc1Qjt3QkFDVixTQUFTO3dCQUNULE1BQU07d0JBQ04sZUFBZTt3QkFDZixXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsZUFBZTtxQkFDaEIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciwgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBmYWRlciwgc2lkZVRvU2lkZSwgc2xpZGVyLCBzdGVwcGVyLCB0cmFuc2Zvcm1lciB9IGZyb20gJy4vaGllcmFyY2h5LXJvdXRlLWFuaW1hdGlvbnMnXG5cbmV4cG9ydCBmdW5jdGlvbiByb3V0ZUNoYW5nZXMocm91dGVyOiBSb3V0ZXIpIHtcbiAgcmV0dXJuIHJvdXRlci5ldmVudHMucGlwZShcbiAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgfHwgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeDogYW55LCB5OiBhbnkpID0+IHguaWQgPT09IHkuaWQpLFxuICAgIG1hcChldmVudCA9PiAoeyB1cmw6IGV2ZW50LnVybCB9KSlcbiAgKVxufVxuXG4vL1xuLy8gVE9ETzogQW5pbWF0aW9uIGltcHJvdmVtZW50OiBUcnkgYWRkaW5nIGEgZnVsbCBjb21wb25lbnQgYW5pbWF0aW9uIHRoYXRcbi8vIHF1ZXJpZXMgdGhlIDxuZy1jb250ZW50PiBhbmQgPHJvdXRlci1vdXRsZXQ+IGJsb2Nrcy4gV2hlbiB0aGUgb3V0bGV0XG4vLyBhY3RpdmF0ZXMsIHNldCB0aGUgYW5pbWF0aW9uIHN0YXRlIHRvIGEgdHJhbnNpdGlvbiB0aGF0IG1vdmVzIGJvdGggYmxvY2tzXG4vLyB0b2dldGhlci5cbi8vXG5cbmxldCBfdWlkID0gMFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLWhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGllcmFyY2h5LXJvdXRlci1vdXRsZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIC8vIGZhZGVyLFxuICAgIHNsaWRlcixcbiAgICAvLyB0cmFuc2Zvcm1lcixcbiAgICAvLyBzdGVwcGVyLFxuICAgIC8vIHNpZGVUb1NpZGVcbiAgICAvLyBjb250ZW50TGVhdmVcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgSGllcmFyY2h5Um91dGVyT3V0bGV0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF91aWQgPSBfdWlkKytcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIGFuaW1TdGF0ZSA9ICdpc1JpZ2h0J1xuICAvLyBhbmltU3RhdGUgPSAnJ1xuXG4gIG91dGxldEFjdGl2ZSA9IGZhbHNlXG5cbiAgbmdDb250ZW50VmlzaWJsZSA9IHRydWVcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXJcbiAgKSB7XG4gICAgdGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICAvLyB0YXAodiA9PiBjb25zb2xlLmxvZyhgX2hhc0NoaWxkcmVuKClbJHt0aGlzLl91aWR9XWAsIHRoaXMuX2hhc0NoaWxkcmVuKCkpKSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgIClcbiAgICAuc3Vic2NyaWJlKClcblxuICAgIC8vIHJvdXRlQ2hhbmdlcyh0aGlzLl9yb3V0ZXIpXG4gICAgLy8gICAucGlwZShcbiAgICAvLyAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgLy8gICAgIHRhcCgoKSA9PiB7XG4gICAgLy8gICAgICAgLy8gaWYgKHRoaXMuX2hhc0NoaWxkcmVuKCkpIHtcbiAgICAvLyAgICAgICAvLyAgIHRoaXMuYW5pbVN0YXRlID0gJ2lzTGVmdCdcbiAgICAvLyAgICAgICAvLyB9IGVsc2Uge1xuICAgIC8vICAgICAgIC8vICAgdGhpcy5hbmltU3RhdGUgPSAnaXNSaWdodCdcbiAgICAvLyAgICAgICAvLyB9XG4gICAgLy8gICAgIH0pXG4gICAgLy8gICApXG4gICAgLy8gICAuc3Vic2NyaWJlKHYgPT4gY29uc29sZS5sb2coYHJvdXRlQ2hhbmdlc1ske3RoaXMuX3VpZH1dYCwgdikpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFzQ2hpbGRyZW4oKSB7XG4gICAgY29uc3QgY291bnQgPSB0aGlzLl9yb3V0ZS5wYXRoRnJvbVJvb3QubGVuZ3RoIC0gMVxuICAgIGxldCBjb3VudEZ1bGwgPSAwXG4gICAgaWYgKHRoaXMuX3JvdXRlci5wYXJzZVVybCh0aGlzLl9yb3V0ZXIudXJsKS5yb290LmNoaWxkcmVuLnByaW1hcnkpIHtcbiAgICAgIGNvdW50RnVsbCA9IHRoaXMuX3JvdXRlci5wYXJzZVVybCh0aGlzLl9yb3V0ZXIudXJsKS5yb290LmNoaWxkcmVuLnByaW1hcnkuc2VnbWVudHMubGVuZ3RoXG4gICAgfVxuICAgIC8vIGNvbnNvbGUubG9nKGBfaGFzQ2hpbGRyZW5bJHt0aGlzLl91aWR9XWAsIHsgY291bnQsIGNvdW50RnVsbCB9KVxuICAgIHJldHVybiBjb3VudEZ1bGwgPiBjb3VudFxuICB9XG5cbiAgcHJlcGFyZVJvdXRlKG91dGxldDogUm91dGVyT3V0bGV0KSB7XG4gICAgLy8gY29uc29sZS5sb2coYG91dGxldFske3RoaXMuX3VpZH1dYCwgb3V0bGV0LCB0aGlzLmFuaW1TdGF0ZSwgdGhpcy5faGFzQ2hpbGRyZW4oKSwgdGhpcy5vdXRsZXRBY3RpdmUpXG4gICAgaWYgKG91dGxldC5pc0FjdGl2YXRlZCkge1xuICAgICAgLy8gY29uc29sZS5sb2cob3V0bGV0LmlzQWN0aXZhdGVkKVxuICAgICAgLy8gY29uc29sZS5sb2cob3V0bGV0LmNvbXBvbmVudClcbiAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuYW5pbVN0YXRlKVxuICAgICAgcmV0dXJuIHRoaXMuYW5pbVN0YXRlXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG4gICAgLy8gY29uc29sZS5sb2coYHByZXBhcmVSb3V0ZVske3RoaXMuX3VpZH1dYCwgdGhpcy5hbmltU3RhdGUsIHRoaXMuX2hhc0NoaWxkcmVuKCkpXG4gICAgLy8gY29uc29sZS5sb2coJ2FjdGl2YXRlZFJvdXRlRGF0YScsIG91dGxldCAmJiBvdXRsZXQuYWN0aXZhdGVkUm91dGVEYXRhKVxuICAgIC8vIGlmIChvdXRsZXQgJiYgb3V0bGV0LmlzQWN0aXZhdGVkKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZygnYWN0aXZhdGVkUm91dGUnLCBvdXRsZXQuYWN0aXZhdGVkUm91dGUgJiYgb3V0bGV0LmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnVybClcbiAgICAvLyB9XG4gICAgLy8gcmV0dXJuIG91dGxldCAmJiBvdXRsZXQuYWN0aXZhdGVkUm91dGVEYXRhICYmIG91dGxldC5hY3RpdmF0ZWRSb3V0ZURhdGFbJ2FuaW1hdGlvbiddXG4gICAgLy8gY29uc29sZS5sb2coJycpXG4gICAgLy8gcmV0dXJuIHRoaXMuYW5pbVN0YXRlXG4gIH1cblxuICBvdXRsZXRBY3RpdmF0ZShldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coYG91dGxldEFjdGl2YXRlWyR7dGhpcy5fdWlkfV1gLCBldmVudClcbiAgICB0aGlzLm91dGxldEFjdGl2ZSA9IHRydWVcbiAgfVxuXG4gIG91dGxldERlYWN0aXZhdGUoZXZlbnQ6IGFueSkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBvdXRsZXREZWFjdGl2YXRlWyR7dGhpcy5fdWlkfV1gLCBldmVudClcbiAgICB0aGlzLm91dGxldEFjdGl2ZSA9IGZhbHNlXG4gIH1cblxuICByb3V0ZUFuaW1hdGlvbnNTdGFydChldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3JvdXRlQW5pbWF0aW9uc1N0YXJ0JywgZXZlbnQpXG4gICAgdGhpcy5uZ0NvbnRlbnRWaXNpYmxlID0gdHJ1ZVxuICB9XG5cbiAgcm91dGVBbmltYXRpb25zRG9uZShldmVudDogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3JvdXRlQW5pbWF0aW9uc0RvbmUnLCBldmVudClcbiAgICB0aGlzLm5nQ29udGVudFZpc2libGUgPSAhdGhpcy5vdXRsZXRBY3RpdmVcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDBcIlxuICBbQHJvdXRlQW5pbWF0aW9uc109XCJwcmVwYXJlUm91dGUob3V0bGV0KVwiXG4gIChAcm91dGVBbmltYXRpb25zLnN0YXJ0KT1cInJvdXRlQW5pbWF0aW9uc1N0YXJ0KCRldmVudClcIlxuICAoQHJvdXRlQW5pbWF0aW9ucy5kb25lKT1cInJvdXRlQW5pbWF0aW9uc0RvbmUoJGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwiaGllcmFyY2h5LXJvdXRlci1vdXRsZXQtLWNvbnRlbnQgaC0xMDBcIiAqbmdJZj1cIm5nQ29udGVudFZpc2libGVcIj5cbiAgICA8IS0tIHt7IGFuaW1TdGF0ZSB9fSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyIGJvcmRlci1pbmZvIGgtMTAwXCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicm91dGVyLWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLmgtMTAwXT1cIiFuZ0NvbnRlbnRWaXNpYmxlXCJcbiAgICA+XG4gIDwhLS0gPGRpdiBbQHJvdXRlQW5pbWF0aW9uc109XCJhbmltU3RhdGVcIj4gLS0+XG4gIDwhLS0gPGRpdiBjbGFzcz1cImhpZXJhcmNoeS1yb3V0ZXItb3V0bGV0LS1yb3V0ZS1jb250ZW50XCI+IC0tPlxuICAgIDxyb3V0ZXItb3V0bGV0ICNvdXRsZXQ9XCJvdXRsZXRcIlxuICAgICAgKGFjdGl2YXRlKT1cIm91dGxldEFjdGl2YXRlKCRldmVudClcIlxuICAgICAgKGRlYWN0aXZhdGUpPVwib3V0bGV0RGVhY3RpdmF0ZSgkZXZlbnQpXCI+XG4gICAgPC9yb3V0ZXItb3V0bGV0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,7 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class HierarchyLevelResolver {
4
- constructor() { }
5
4
  resolve(route, state) {
6
5
  // console.log('[HierarchyLevelResolver]', route)
7
6
  // console.log('[HierarchyLevelResolver]', state)
@@ -18,10 +17,10 @@ export class HierarchyLevelResolver {
18
17
  return 0;
19
18
  }
20
19
  }
21
- HierarchyLevelResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
- HierarchyLevelResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, providedIn: 'root' });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, decorators: [{
20
+ HierarchyLevelResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HierarchyLevelResolver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ HierarchyLevelResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HierarchyLevelResolver, providedIn: 'root' });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: HierarchyLevelResolver, decorators: [{
24
23
  type: Injectable,
25
24
  args: [{ providedIn: 'root' }]
26
- }], ctorParameters: function () { return []; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LWxldmVsLnJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9yZXNvbHZlcnMvaGllcmFyY2h5LWxldmVsLnJlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7O0FBTTFDLE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsZ0JBQWUsQ0FBQztJQUVoQixPQUFPLENBQ0wsS0FBNkIsRUFDN0IsS0FBMEI7UUFFMUIsaURBQWlEO1FBQ2pELGlEQUFpRDtRQUNqRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsS0FBNkI7UUFDcEQsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFBO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNsQixJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQTtZQUNsQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUE7YUFDbEM7U0FDRjtRQUVELE9BQU8sQ0FBQyxDQUFBO0lBQ1YsQ0FBQzs7bUhBdkJVLHNCQUFzQjt1SEFBdEIsc0JBQXNCLGNBRFQsTUFBTTsyRkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUmVzb2x2ZSwgUm91dGVyU3RhdGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgSGllcmFyY2h5TGV2ZWxSZXNvbHZlciBpbXBsZW1lbnRzIFJlc29sdmU8bnVtYmVyPiB7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHJlc29sdmUoXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3RcbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHwgUHJvbWlzZTxudW1iZXI+IHwgbnVtYmVyIHtcbiAgICAvLyBjb25zb2xlLmxvZygnW0hpZXJhcmNoeUxldmVsUmVzb2x2ZXJdJywgcm91dGUpXG4gICAgLy8gY29uc29sZS5sb2coJ1tIaWVyYXJjaHlMZXZlbFJlc29sdmVyXScsIHN0YXRlKVxuICAgIHJldHVybiB0aGlzLl9nZXRNYXhIaWVyTGV2ZWwocm91dGUpXG4gIH1cblxuICBwcml2YXRlIF9nZXRNYXhIaWVyTGV2ZWwocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpIHtcbiAgICBsZXQgY3VyciA9IHJvdXRlXG4gICAgd2hpbGUgKGN1cnIucGFyZW50KSB7XG4gICAgICBjdXJyID0gY3Vyci5wYXJlbnRcbiAgICAgIGlmIChjdXJyLmRhdGFbJ2hpZXJMZXZlbCddKSB7XG4gICAgICAgIHJldHVybiBjdXJyLmRhdGFbJ2hpZXJMZXZlbCddICsgMVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAwXG4gIH1cblxufVxuIl19
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2h5LWxldmVsLnJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9keW5hbWljLXJvdXRlci9yZXNvbHZlcnMvaGllcmFyY2h5LWxldmVsLnJlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7O0FBTTFDLE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsT0FBTyxDQUNMLEtBQTZCLEVBQzdCLEtBQTBCO1FBRTFCLGlEQUFpRDtRQUNqRCxpREFBaUQ7UUFDakQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDckMsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQTZCO1FBQ3BELElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQTtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7WUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFBO2FBQ2xDO1NBQ0Y7UUFFRCxPQUFPLENBQUMsQ0FBQTtJQUNWLENBQUM7O21IQXJCVSxzQkFBc0I7dUhBQXRCLHNCQUFzQixjQURULE1BQU07MkZBQ25CLHNCQUFzQjtrQkFEbEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJlc29sdmUsIFJvdXRlclN0YXRlU25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEhpZXJhcmNoeUxldmVsUmVzb2x2ZXIgaW1wbGVtZW50cyBSZXNvbHZlPG51bWJlcj4ge1xuXG4gIHJlc29sdmUoXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3RcbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHwgUHJvbWlzZTxudW1iZXI+IHwgbnVtYmVyIHtcbiAgICAvLyBjb25zb2xlLmxvZygnW0hpZXJhcmNoeUxldmVsUmVzb2x2ZXJdJywgcm91dGUpXG4gICAgLy8gY29uc29sZS5sb2coJ1tIaWVyYXJjaHlMZXZlbFJlc29sdmVyXScsIHN0YXRlKVxuICAgIHJldHVybiB0aGlzLl9nZXRNYXhIaWVyTGV2ZWwocm91dGUpXG4gIH1cblxuICBwcml2YXRlIF9nZXRNYXhIaWVyTGV2ZWwocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpIHtcbiAgICBsZXQgY3VyciA9IHJvdXRlXG4gICAgd2hpbGUgKGN1cnIucGFyZW50KSB7XG4gICAgICBjdXJyID0gY3Vyci5wYXJlbnRcbiAgICAgIGlmIChjdXJyLmRhdGFbJ2hpZXJMZXZlbCddKSB7XG4gICAgICAgIHJldHVybiBjdXJyLmRhdGFbJ2hpZXJMZXZlbCddICsgMVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAwXG4gIH1cblxufVxuIl19
@@ -3,9 +3,9 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "@ajsf/core";
4
4
  export class TheSeamSchemaFormFrameworkComponent {
5
5
  }
6
- TheSeamSchemaFormFrameworkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- TheSeamSchemaFormFrameworkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormFrameworkComponent, selector: "seam-schema-form-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n", styles: [""], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, decorators: [{
6
+ TheSeamSchemaFormFrameworkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ TheSeamSchemaFormFrameworkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamSchemaFormFrameworkComponent, selector: "seam-schema-form-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n", styles: [""], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'seam-schema-form-framework', template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n" }]
11
11
  }], propDecorators: { layoutNode: [{
@@ -22,9 +22,9 @@ export class TheSeamFramework extends Framework {
22
22
  };
23
23
  }
24
24
  }
25
- TheSeamFramework.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
26
- TheSeamFramework.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework, decorators: [{
25
+ TheSeamFramework.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
26
+ TheSeamFramework.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFramework });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFramework, decorators: [{
28
28
  type: Injectable
29
29
  }] });
30
30
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS9zY2hlbWEtZm9ybS1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRXRDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDZFQUE2RSxDQUFBO0FBQ2hJLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVFQUF1RSxDQUFBO0FBQ3ZILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlFQUF5RSxDQUFBO0FBQzFILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlFQUF5RSxDQUFBO0FBQzFILE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHFGQUFxRixDQUFBO0FBRzNJLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOztBQUd2RixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQUQvQzs7UUFFRSxTQUFJLEdBQUcsZ0JBQWdCLENBQUE7UUFFdkIsY0FBUyxHQUFHLG1DQUFtQyxDQUFBO1FBRS9DLFlBQU8sR0FBRztZQUNSLFVBQVUsRUFBRSxrQ0FBa0M7WUFDOUMsOENBQThDO1lBQzlDLFFBQVEsRUFBRSxxQ0FBcUM7WUFDL0MsTUFBTSxFQUFFLCtCQUErQjtZQUN2QyxRQUFRLEVBQUUsZ0NBQWdDO1lBQzFDLFFBQVEsRUFBRSxnQ0FBZ0M7U0FDM0MsQ0FBQTtLQUNGOzs2R0FiWSxnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IEZyYW1ld29yayB9IGZyb20gJ0BhanNmL2NvcmUnXG5cbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1jaGVja2JveC9zY2hlbWEtZm9ybS1jaGVja2JveC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0taW5wdXQvc2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1OdW1iZXJDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1udW1iZXIvc2NoZW1hLWZvcm0tbnVtYmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc2VsZWN0L3NjaGVtYS1mb3JtLXNlbGVjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdFNwbGl0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0LXNwbGl0L3NjaGVtYS1mb3JtLXN1Ym1pdC1zcGxpdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdENvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXN1Ym1pdC9zY2hlbWEtZm9ybS1zdWJtaXQuY29tcG9uZW50J1xuXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya0NvbXBvbmVudCB9IGZyb20gJy4vc2NoZW1hLWZvcm0tZnJhbWV3b3JrLmNvbXBvbmVudCdcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1GcmFtZXdvcmsgZXh0ZW5kcyBGcmFtZXdvcmsge1xuICBuYW1lID0gJ3NlYW0tZnJhbWV3b3JrJ1xuXG4gIGZyYW1ld29yayA9IFRoZVNlYW1TY2hlbWFGb3JtRnJhbWV3b3JrQ29tcG9uZW50XG5cbiAgd2lkZ2V0cyA9IHtcbiAgICAnY2hlY2tib3gnOiBUaGVTZWFtU2NoZW1hRm9ybUNoZWNrYm94Q29tcG9uZW50LFxuICAgIC8vICdzdWJtaXQnOiBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdENvbXBvbmVudCxcbiAgICAnc3VibWl0JzogVGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRTcGxpdENvbXBvbmVudCxcbiAgICAndGV4dCc6IFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQsXG4gICAgJ251bWJlcic6IFRoZVNlYW1TY2hlbWFGb3JtTnVtYmVyQ29tcG9uZW50LFxuICAgICdzZWxlY3QnOiBUaGVTZWFtU2NoZW1hRm9ybVNlbGVjdENvbXBvbmVudFxuICB9XG59XG4iXX0=
@@ -7,13 +7,13 @@ import { TheSeamSchemaFormFrameworkComponent } from './schema-form-framework.com
7
7
  import * as i0 from "@angular/core";
8
8
  export class TheSeamSchemaFormModule {
9
9
  }
10
- TheSeamSchemaFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- TheSeamSchemaFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, declarations: [TheSeamSchemaFormFrameworkComponent], imports: [CommonModule,
10
+ TheSeamSchemaFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ TheSeamSchemaFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormModule, declarations: [TheSeamSchemaFormFrameworkComponent], imports: [CommonModule,
12
12
  JsonSchemaFormModule,
13
13
  TheSeamSchemaFormControlsModule,
14
14
  WidgetLibraryModule], exports: [TheSeamSchemaFormFrameworkComponent,
15
15
  JsonSchemaFormModule] });
16
- TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, providers: [
16
+ TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormModule, providers: [
17
17
  JsonSchemaFormService,
18
18
  FrameworkLibraryService,
19
19
  WidgetLibraryService,
@@ -22,7 +22,7 @@ TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
22
22
  JsonSchemaFormModule,
23
23
  TheSeamSchemaFormControlsModule,
24
24
  WidgetLibraryModule, JsonSchemaFormModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [
@@ -28,9 +28,9 @@ export class TheSeamSchemaFormCheckboxComponent {
28
28
  return this.jsf.getFormControlValue(this) === this.trueValue;
29
29
  }
30
30
  }
31
- TheSeamSchemaFormCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
32
- TheSeamSchemaFormCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormCheckboxComponent, selector: "seam-schema-form-checkbox", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: ["tabIndex", "id", "aria-label", "aria-labelledby", "required", "checked", "disabled", "indeterminate", "name", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["seamCheckbox"] }] });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, decorators: [{
31
+ TheSeamSchemaFormCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
32
+ TheSeamSchemaFormCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamSchemaFormCheckboxComponent, selector: "seam-schema-form-checkbox", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: ["tabIndex", "id", "aria-label", "aria-labelledby", "required", "checked", "disabled", "indeterminate", "name", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["seamCheckbox"] }] });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{ selector: 'seam-schema-form-checkbox', template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n" }]
36
36
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -24,8 +24,8 @@ const controls = [
24
24
  ];
25
25
  export class TheSeamSchemaFormControlsModule {
26
26
  }
27
- TheSeamSchemaFormControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
- TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, declarations: [TheSeamSchemaFormCheckboxComponent,
27
+ TheSeamSchemaFormControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
+ TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormControlsModule, declarations: [TheSeamSchemaFormCheckboxComponent,
29
29
  TheSeamSchemaFormSubmitComponent,
30
30
  TheSeamSchemaFormSelectComponent,
31
31
  TheSeamSchemaFormInputComponent,
@@ -43,7 +43,7 @@ TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
43
43
  TheSeamSchemaFormInputComponent,
44
44
  TheSeamSchemaFormNumberComponent,
45
45
  TheSeamSchemaFormSubmitSplitComponent, JsonSchemaFormModule] });
46
- TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, imports: [CommonModule,
46
+ TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormControlsModule, imports: [CommonModule,
47
47
  ReactiveFormsModule,
48
48
  JsonSchemaFormModule,
49
49
  TheSeamFormFieldModule,
@@ -51,7 +51,7 @@ TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "
51
51
  TheSeamMenuModule,
52
52
  TheSeamButtonsModule,
53
53
  NgSelectModule, JsonSchemaFormModule] });
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormControlsModule, decorators: [{
55
55
  type: NgModule,
56
56
  args: [{
57
57
  declarations: [
@@ -19,9 +19,9 @@ export class TheSeamSchemaFormInputComponent {
19
19
  this.jsf.updateValue(this, event.target.value);
20
20
  }
21
21
  }
22
- TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
23
- TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormInputComponent, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
22
+ TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
23
+ TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamSchemaFormInputComponent, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{ selector: 'seam-schema-form-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
27
27
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -25,9 +25,9 @@ export class TheSeamSchemaFormNumberComponent {
25
25
  this.jsf.updateValue(this, event.target.value);
26
26
  }
27
27
  }
28
- TheSeamSchemaFormNumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormNumberComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
29
- TheSeamSchemaFormNumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormNumberComponent, selector: "seam-schema-form-number", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormNumberComponent, decorators: [{
28
+ TheSeamSchemaFormNumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormNumberComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
29
+ TheSeamSchemaFormNumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamSchemaFormNumberComponent, selector: "seam-schema-form-number", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormNumberComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'seam-schema-form-number', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
33
33
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -23,9 +23,9 @@ export class TheSeamSchemaFormSelectComponent {
23
23
  this.jsf.updateValue(this, event.value);
24
24
  }
25
25
  }
26
- TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
27
- TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormSelectComponent, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
26
+ TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
27
+ TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamSchemaFormSelectComponent, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'seam-schema-form-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
31
31
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{