@theseam/ui-common 0.4.28 → 0.4.30

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 (616) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
  2. package/datatable/datatable/datatable.component.d.ts +61 -9
  3. package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
  4. package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
  5. package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
  6. package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
  7. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
  8. package/datatable/datatable.module.d.ts +29 -20
  9. package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
  10. package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
  11. package/datatable/models/action-item-column-position.d.ts +13 -0
  12. package/datatable/models/columns-data-filter.d.ts +57 -0
  13. package/datatable/models/columns-data-filters/models.d.ts +65 -0
  14. package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
  15. package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
  16. package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
  17. package/datatable/models/columns-data-filters/utils.d.ts +15 -0
  18. package/datatable/models/datatable-config.d.ts +97 -0
  19. package/datatable/models/table-column.d.ts +22 -1
  20. package/datatable/public-api.d.ts +14 -0
  21. package/datatable/services/columns-filters.service.d.ts +29 -0
  22. package/datatable/services/columns-manager.service.d.ts +7 -0
  23. package/datatable/utils/create-action-menu-column.d.ts +1 -1
  24. package/esm2020/asset-reader/asset-reader-helper.service.mjs +4 -4
  25. package/esm2020/asset-reader/asset-reader.module.mjs +5 -5
  26. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +4 -4
  27. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +5 -5
  28. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  29. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +4 -4
  30. package/esm2020/buttons/badge-button/badge-button.component.mjs +7 -7
  31. package/esm2020/buttons/button/button.component.mjs +10 -10
  32. package/esm2020/buttons/buttons.module.mjs +5 -5
  33. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  34. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +4 -4
  35. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  36. package/esm2020/card/card-body/card-body.component.mjs +4 -4
  37. package/esm2020/card/card-footer/card-footer.component.mjs +4 -4
  38. package/esm2020/card/card-header/card-header.component.mjs +4 -4
  39. package/esm2020/card/card.component.mjs +4 -4
  40. package/esm2020/card/card.module.mjs +5 -5
  41. package/esm2020/carousel/carousel-slide.directive.mjs +4 -4
  42. package/esm2020/carousel/carousel.component.mjs +4 -4
  43. package/esm2020/carousel/carousel.module.mjs +5 -5
  44. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  45. package/esm2020/checkbox/checkbox.module.mjs +5 -5
  46. package/esm2020/confirm-dialog/confirm-click.directive.mjs +4 -4
  47. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +4 -4
  48. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +5 -5
  49. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +4 -4
  50. package/esm2020/data-exporter/data-exporter.module.mjs +5 -5
  51. package/esm2020/data-exporter/exporters/csv-exporter.mjs +4 -4
  52. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +4 -4
  53. package/esm2020/data-filters/data-filters.module.mjs +5 -5
  54. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +4 -4
  55. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +4 -4
  56. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +4 -4
  57. package/esm2020/datatable/datatable/datatable.component.mjs +241 -32
  58. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +5 -5
  59. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +4 -4
  60. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -4
  61. package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
  62. package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
  63. package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
  64. package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
  65. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +4 -4
  66. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -4
  67. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +4 -4
  68. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +4 -4
  69. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +4 -4
  70. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +4 -4
  71. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +4 -4
  72. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +4 -4
  73. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +4 -4
  74. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +4 -4
  75. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -4
  76. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +4 -4
  77. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +4 -4
  78. package/esm2020/datatable/datatable.module.mjs +53 -11
  79. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +4 -4
  80. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +4 -4
  81. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +4 -4
  82. package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
  83. package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
  84. package/esm2020/datatable/directives/datatable-filter.directive.mjs +4 -4
  85. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +4 -4
  86. package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
  87. package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
  88. package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
  89. package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
  90. package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
  91. package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
  92. package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
  93. package/esm2020/datatable/models/datatable-config.mjs +3 -0
  94. package/esm2020/datatable/models/table-column.mjs +1 -1
  95. package/esm2020/datatable/public-api.mjs +15 -1
  96. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  97. package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
  98. package/esm2020/datatable/services/columns-manager.service.mjs +30 -5
  99. package/esm2020/datatable/services/datatable-column-changes.service.mjs +4 -4
  100. package/esm2020/datatable/services/datatable-preferences.service.mjs +4 -4
  101. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +4 -4
  102. package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
  103. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +4 -4
  104. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
  105. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +4 -4
  106. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +5 -5
  107. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +5 -5
  108. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +4 -4
  109. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +4 -4
  110. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +4 -4
  111. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +4 -4
  112. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +4 -4
  113. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  114. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  115. package/esm2020/dynamic/dynamic-value-helper.service.mjs +4 -4
  116. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  117. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +4 -4
  118. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +5 -5
  119. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +4 -4
  120. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +4 -4
  121. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  122. package/esm2020/form-field/form-field-error.directive.mjs +4 -4
  123. package/esm2020/form-field/form-field-help-text.directive.mjs +4 -4
  124. package/esm2020/form-field/form-field-label-tpl.directive.mjs +4 -4
  125. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  126. package/esm2020/form-field/form-field.component.mjs +4 -4
  127. package/esm2020/form-field/form-field.module.mjs +5 -5
  128. package/esm2020/form-field/input.directive.mjs +4 -4
  129. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +4 -4
  130. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  131. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +4 -4
  132. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +4 -4
  133. package/esm2020/form-field-error/form-field-error.module.mjs +5 -5
  134. package/esm2020/framework/base-layout/base-layout.component.mjs +16 -6
  135. package/esm2020/framework/base-layout/base-layout.module.mjs +10 -5
  136. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +4 -4
  137. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +4 -4
  138. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +4 -4
  139. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +22 -6
  140. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +4 -4
  141. package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
  142. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +4 -4
  143. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +4 -4
  144. package/esm2020/framework/base-layout/index.mjs +2 -1
  145. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +4 -4
  146. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -4
  147. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +4 -4
  148. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +4 -4
  149. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
  150. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +4 -4
  151. package/esm2020/framework/dashboard/dashboard.component.mjs +4 -4
  152. package/esm2020/framework/dashboard/dashboard.module.mjs +5 -5
  153. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  154. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +4 -4
  155. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +4 -4
  156. package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
  157. package/esm2020/framework/nav/index.mjs +6 -0
  158. package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
  159. package/esm2020/framework/nav/nav-utils.mjs +107 -0
  160. package/esm2020/framework/nav/nav.models.mjs +2 -0
  161. package/esm2020/framework/nav/nav.module.mjs +67 -0
  162. package/esm2020/framework/nav/nav.service.mjs +204 -0
  163. package/esm2020/framework/public-api.mjs +2 -1
  164. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +4 -4
  165. package/esm2020/framework/schema-form/schema-form-framework.mjs +4 -4
  166. package/esm2020/framework/schema-form/schema-form.module.mjs +5 -5
  167. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +4 -4
  168. package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +4 -4
  169. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +4 -4
  170. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +4 -4
  171. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +4 -4
  172. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +4 -4
  173. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +4 -4
  174. package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +4 -4
  175. package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +4 -4
  176. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +29 -68
  177. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +14 -7
  178. package/esm2020/framework/side-nav/side-nav.component.mjs +117 -39
  179. package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
  180. package/esm2020/framework/side-nav/side-nav.module.mjs +11 -41
  181. package/esm2020/framework/side-nav/side-nav.service.mjs +4 -4
  182. package/esm2020/framework/top-bar/index.mjs +3 -1
  183. package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
  184. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +12 -6
  185. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +4 -4
  186. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +8 -6
  187. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +4 -4
  188. package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
  189. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +4 -4
  190. package/esm2020/framework/top-bar/top-bar.component.mjs +57 -13
  191. package/esm2020/framework/top-bar/top-bar.module.mjs +19 -9
  192. package/esm2020/google-maps/google-maps/google-maps.component.mjs +4 -4
  193. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +4 -4
  194. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +4 -4
  195. package/esm2020/google-maps/google-maps-controls.service.mjs +4 -4
  196. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +5 -5
  197. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +4 -4
  198. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +4 -4
  199. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +4 -4
  200. package/esm2020/google-maps/google-maps.module.mjs +5 -5
  201. package/esm2020/google-maps/google-maps.service.mjs +4 -4
  202. package/esm2020/google-maps/map-control.component.mjs +4 -4
  203. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  204. package/esm2020/google-maps/map-value-manager.service.mjs +4 -4
  205. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  206. package/esm2020/graphql/datatable/index.mjs +4 -1
  207. package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
  208. package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
  209. package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
  210. package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
  211. package/esm2020/icon/icon/icon.component.mjs +4 -4
  212. package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -4
  213. package/esm2020/icon/icon-notification/icon-notification.component.mjs +4 -4
  214. package/esm2020/icon/icon.module.mjs +5 -5
  215. package/esm2020/layout/layout.module.mjs +5 -5
  216. package/esm2020/layout/layout.service.mjs +15 -5
  217. package/esm2020/loading/loading/loading.component.mjs +4 -4
  218. package/esm2020/loading/loading-overlay.service.mjs +4 -4
  219. package/esm2020/loading/loading.module.mjs +5 -5
  220. package/esm2020/menu/menu-divider.component.mjs +4 -4
  221. package/esm2020/menu/menu-footer/menu-footer.component.mjs +4 -4
  222. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
  223. package/esm2020/menu/menu-header/menu-header.component.mjs +4 -4
  224. package/esm2020/menu/menu-item.component.mjs +4 -4
  225. package/esm2020/menu/menu-toggle.directive.mjs +9 -4
  226. package/esm2020/menu/menu.component.mjs +4 -4
  227. package/esm2020/menu/menu.module.mjs +5 -5
  228. package/esm2020/modal/directives/modal-close.directive.mjs +4 -4
  229. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +4 -4
  230. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +4 -4
  231. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +4 -4
  232. package/esm2020/modal/directives/modal-title.directive.mjs +4 -4
  233. package/esm2020/modal/directives/modal.directive.mjs +4 -4
  234. package/esm2020/modal/modal/modal.component.mjs +4 -4
  235. package/esm2020/modal/modal-body/modal-body.component.mjs +4 -4
  236. package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
  237. package/esm2020/modal/modal-footer/modal-footer.component.mjs +4 -4
  238. package/esm2020/modal/modal-header/modal-header.component.mjs +4 -4
  239. package/esm2020/modal/modal.module.mjs +5 -5
  240. package/esm2020/modal/modal.service.mjs +4 -4
  241. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -4
  242. package/esm2020/navigation-reload/navigation-reload.service.mjs +5 -5
  243. package/esm2020/popover/popover/popover.component.mjs +9 -5
  244. package/esm2020/popover/popover.directive.mjs +8 -4
  245. package/esm2020/popover/popover.module.mjs +5 -5
  246. package/esm2020/progress/progress-circle/progress-circle.component.mjs +4 -4
  247. package/esm2020/progress/progress.module.mjs +5 -5
  248. package/esm2020/rich-text/rich-text/rich-text.component.mjs +4 -4
  249. package/esm2020/rich-text/rich-text.module.mjs +5 -5
  250. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -4
  251. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  252. package/esm2020/scrollbar/scrollbar.module.mjs +5 -5
  253. package/esm2020/services/asset-loader.service.mjs +4 -4
  254. package/esm2020/services/font-loader.service.mjs +4 -4
  255. package/esm2020/services/preferences/preferences-manager.service.mjs +4 -4
  256. package/esm2020/services/router-helpers.service.mjs +4 -4
  257. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +4 -4
  258. package/esm2020/shared/directives/auto-focus.directive.mjs +4 -4
  259. package/esm2020/shared/directives/click-outside.directive.mjs +4 -4
  260. package/esm2020/shared/directives/disable-control.directive.mjs +4 -4
  261. package/esm2020/shared/directives/elem-resized.directive.mjs +4 -4
  262. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
  263. package/esm2020/shared/directives/hover-class.directive.mjs +4 -4
  264. package/esm2020/shared/directives/ng-select-extra.directive.mjs +4 -4
  265. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +4 -4
  266. package/esm2020/shared/pipes/mask-chars.pipe.mjs +4 -4
  267. package/esm2020/shared/pipes/truncate.pipe.mjs +4 -4
  268. package/esm2020/shared/shared.module.mjs +5 -5
  269. package/esm2020/storage/local-storage.service.mjs +4 -4
  270. package/esm2020/story-helpers/initial-route.service.mjs +4 -4
  271. package/esm2020/story-helpers/story-empty-with-route.component.mjs +4 -4
  272. package/esm2020/story-helpers/story-empty.component.mjs +4 -4
  273. package/esm2020/story-helpers/story-helper-components.module.mjs +5 -5
  274. package/esm2020/story-helpers/story-initial-route.mjs +5 -5
  275. package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
  276. package/esm2020/story-helpers/story-preferences-accessor.service.mjs +4 -4
  277. package/esm2020/story-helpers/story-toastr.service.mjs +4 -4
  278. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +4 -4
  279. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +4 -4
  280. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +4 -4
  281. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +4 -4
  282. package/esm2020/tabbed/tabbed.component.mjs +4 -4
  283. package/esm2020/tabbed/tabbed.module.mjs +5 -5
  284. package/esm2020/tabbed/tabbed.service.mjs +4 -4
  285. package/esm2020/table/public-api.mjs +4 -1
  286. package/esm2020/table/table/table.component.mjs +92 -7
  287. package/esm2020/table/table-cell-tpl.directive.mjs +17 -0
  288. package/esm2020/table/table-column-header-tpl.directive.mjs +17 -0
  289. package/esm2020/table/table-column.component.mjs +68 -0
  290. package/esm2020/table/table.module.mjs +25 -9
  291. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +4 -4
  292. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +4 -4
  293. package/esm2020/table-cell-type/table-cell-type.module.mjs +5 -5
  294. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +4 -4
  295. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +4 -4
  296. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +4 -4
  297. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +4 -4
  298. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +4 -4
  299. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +4 -4
  300. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +4 -4
  301. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +4 -4
  302. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +7 -5
  303. package/esm2020/table-cell-types/table-cell-types.module.mjs +5 -5
  304. package/esm2020/tel-input/phone-number.pipe.mjs +4 -4
  305. package/esm2020/tel-input/tel-input/tel-input.component.mjs +4 -4
  306. package/esm2020/tel-input/tel-input.directive.mjs +4 -4
  307. package/esm2020/tel-input/tel-input.module.mjs +5 -5
  308. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +4 -4
  309. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -4
  310. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +4 -4
  311. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +4 -4
  312. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +4 -4
  313. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +4 -4
  314. package/esm2020/tiled-select/tiled-select.module.mjs +5 -5
  315. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +4 -4
  316. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +4 -4
  317. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +4 -4
  318. package/esm2020/toggle-edit/toggle-edit.component.mjs +4 -4
  319. package/esm2020/toggle-edit/toggle-edit.module.mjs +5 -5
  320. package/esm2020/toggle-group/toggle-group-option.directive.mjs +4 -4
  321. package/esm2020/toggle-group/toggle-group.directive.mjs +4 -4
  322. package/esm2020/toggle-group/toggle-group.module.mjs +5 -5
  323. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +4 -4
  324. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +4 -4
  325. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +4 -4
  326. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +5 -5
  327. package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
  328. package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
  329. package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
  330. package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
  331. package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
  332. package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
  333. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +4 -4
  334. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
  335. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +5 -5
  336. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +4 -4
  337. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  338. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
  339. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +5 -5
  340. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +4 -4
  341. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +4 -4
  342. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +4 -4
  343. package/esm2020/widget/preferences/widget-preferences.service.mjs +4 -4
  344. package/esm2020/widget/widget/widget.component.mjs +4 -4
  345. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +4 -4
  346. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +5 -5
  347. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +4 -4
  348. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +5 -5
  349. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +4 -4
  350. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +5 -5
  351. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +4 -4
  352. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +5 -5
  353. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +4 -4
  354. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +5 -5
  355. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +4 -4
  356. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +5 -5
  357. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +4 -4
  358. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +5 -5
  359. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +4 -4
  360. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -16
  361. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +4 -4
  362. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +5 -5
  363. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +4 -4
  364. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +5 -5
  365. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +4 -4
  366. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +4 -4
  367. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +4 -4
  368. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +4 -4
  369. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +7 -7
  370. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +5 -5
  371. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +4 -4
  372. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +5 -5
  373. package/esm2020/widget/widget-footer/widget-footer.component.mjs +4 -4
  374. package/esm2020/widget/widget-registry.service.mjs +4 -4
  375. package/esm2020/widget/widget.module.mjs +5 -5
  376. package/fesm2015/theseam-ui-common-asset-reader.mjs +10 -10
  377. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  378. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +11 -11
  379. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  380. package/fesm2015/theseam-ui-common-buttons.mjs +25 -25
  381. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  382. package/fesm2015/theseam-ui-common-card.mjs +19 -19
  383. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  384. package/fesm2015/theseam-ui-common-carousel.mjs +10 -10
  385. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -1
  386. package/fesm2015/theseam-ui-common-checkbox.mjs +7 -7
  387. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  388. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +13 -13
  389. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  390. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  391. package/fesm2015/theseam-ui-common-data-exporter.mjs.map +1 -1
  392. package/fesm2015/theseam-ui-common-data-filters.mjs +13 -13
  393. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  394. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +26 -26
  395. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  396. package/fesm2015/theseam-ui-common-datatable.mjs +1112 -139
  397. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  398. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  399. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  400. package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
  401. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  402. package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
  403. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  404. package/fesm2015/theseam-ui-common-form-field-error.mjs +16 -16
  405. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  406. package/fesm2015/theseam-ui-common-form-field.mjs +22 -22
  407. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  408. package/fesm2015/theseam-ui-common-framework.mjs +1026 -277
  409. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  410. package/fesm2015/theseam-ui-common-google-maps.mjs +41 -41
  411. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  412. package/fesm2015/theseam-ui-common-graphql.mjs +257 -4
  413. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  414. package/fesm2015/theseam-ui-common-icon.mjs +13 -13
  415. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  416. package/fesm2015/theseam-ui-common-layout.mjs +18 -9
  417. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  418. package/fesm2015/theseam-ui-common-loading.mjs +10 -10
  419. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  420. package/fesm2015/theseam-ui-common-menu.mjs +30 -25
  421. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  422. package/fesm2015/theseam-ui-common-modal.mjs +43 -43
  423. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  424. package/fesm2015/theseam-ui-common-navigation-reload.mjs +4 -4
  425. package/fesm2015/theseam-ui-common-navigation-reload.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-popover.mjs +19 -11
  427. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-progress.mjs +7 -7
  429. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-rich-text.mjs +7 -7
  431. package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -10
  433. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  434. package/fesm2015/theseam-ui-common-services.mjs +12 -12
  435. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-shared.mjs +37 -37
  437. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-storage.mjs +3 -3
  439. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-story-helpers.mjs +26 -26
  441. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  442. package/fesm2015/theseam-ui-common-tabbed.mjs +22 -22
  443. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  444. package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
  445. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  446. package/fesm2015/theseam-ui-common-table-cell-types.mjs +34 -32
  447. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  448. package/fesm2015/theseam-ui-common-table.mjs +207 -15
  449. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  450. package/fesm2015/theseam-ui-common-tel-input.mjs +13 -13
  451. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  452. package/fesm2015/theseam-ui-common-tiled-select.mjs +22 -22
  453. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  454. package/fesm2015/theseam-ui-common-toggle-edit.mjs +16 -16
  455. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  456. package/fesm2015/theseam-ui-common-toggle-group.mjs +10 -10
  457. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  458. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  459. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  460. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +3 -3
  462. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-viewers.mjs +20 -20
  464. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-widget.mjs +135 -135
  466. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  467. package/fesm2020/theseam-ui-common-asset-reader.mjs +10 -10
  468. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  469. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +11 -11
  470. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  471. package/fesm2020/theseam-ui-common-buttons.mjs +25 -25
  472. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  473. package/fesm2020/theseam-ui-common-card.mjs +19 -19
  474. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  475. package/fesm2020/theseam-ui-common-carousel.mjs +10 -10
  476. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -1
  477. package/fesm2020/theseam-ui-common-checkbox.mjs +7 -7
  478. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  479. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +13 -13
  480. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  481. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  482. package/fesm2020/theseam-ui-common-data-exporter.mjs.map +1 -1
  483. package/fesm2020/theseam-ui-common-data-filters.mjs +13 -13
  484. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  485. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +26 -26
  486. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  487. package/fesm2020/theseam-ui-common-datatable.mjs +1096 -139
  488. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  489. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  490. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  491. package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
  492. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  493. package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
  494. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  495. package/fesm2020/theseam-ui-common-form-field-error.mjs +16 -16
  496. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  497. package/fesm2020/theseam-ui-common-form-field.mjs +22 -22
  498. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  499. package/fesm2020/theseam-ui-common-framework.mjs +1028 -277
  500. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  501. package/fesm2020/theseam-ui-common-google-maps.mjs +41 -41
  502. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  503. package/fesm2020/theseam-ui-common-graphql.mjs +257 -4
  504. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  505. package/fesm2020/theseam-ui-common-icon.mjs +13 -13
  506. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  507. package/fesm2020/theseam-ui-common-layout.mjs +18 -9
  508. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  509. package/fesm2020/theseam-ui-common-loading.mjs +10 -10
  510. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  511. package/fesm2020/theseam-ui-common-menu.mjs +30 -25
  512. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  513. package/fesm2020/theseam-ui-common-modal.mjs +43 -43
  514. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  515. package/fesm2020/theseam-ui-common-navigation-reload.mjs +4 -4
  516. package/fesm2020/theseam-ui-common-navigation-reload.mjs.map +1 -1
  517. package/fesm2020/theseam-ui-common-popover.mjs +19 -11
  518. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  519. package/fesm2020/theseam-ui-common-progress.mjs +7 -7
  520. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  521. package/fesm2020/theseam-ui-common-rich-text.mjs +7 -7
  522. package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
  523. package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -10
  524. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  525. package/fesm2020/theseam-ui-common-services.mjs +12 -12
  526. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  527. package/fesm2020/theseam-ui-common-shared.mjs +37 -37
  528. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  529. package/fesm2020/theseam-ui-common-storage.mjs +3 -3
  530. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  531. package/fesm2020/theseam-ui-common-story-helpers.mjs +26 -26
  532. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-tabbed.mjs +22 -22
  534. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
  536. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-table-cell-types.mjs +34 -32
  538. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-table.mjs +205 -15
  540. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-tel-input.mjs +13 -13
  542. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-tiled-select.mjs +22 -22
  544. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-toggle-edit.mjs +16 -16
  546. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-toggle-group.mjs +10 -10
  548. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  550. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  552. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +3 -3
  553. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  554. package/fesm2020/theseam-ui-common-viewers.mjs +20 -20
  555. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  556. package/fesm2020/theseam-ui-common-widget.mjs +135 -135
  557. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  558. package/framework/base-layout/base-layout.component.d.ts +4 -2
  559. package/framework/base-layout/base-layout.component.scss +18 -10
  560. package/framework/base-layout/base-layout.module.d.ts +11 -10
  561. package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
  562. package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
  563. package/framework/base-layout/index.d.ts +1 -0
  564. package/framework/base-layout/styles/_variables.scss +21 -0
  565. package/framework/nav/_nav-theme.scss +4 -0
  566. package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
  567. package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
  568. package/framework/nav/index.d.ts +5 -0
  569. package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
  570. package/framework/nav/nav-item/nav-item.component.scss +203 -0
  571. package/framework/nav/nav-utils.d.ts +20 -0
  572. package/framework/nav/nav.models.d.ts +77 -0
  573. package/framework/nav/nav.module.d.ts +17 -0
  574. package/framework/nav/nav.service.d.ts +27 -0
  575. package/framework/nav/styles/_themes/light/_variables.scss +56 -0
  576. package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
  577. package/framework/nav/styles/_utilities.scss +3 -0
  578. package/framework/nav/styles/_variables.scss +2 -0
  579. package/framework/public-api.d.ts +1 -0
  580. package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
  581. package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
  582. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
  583. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
  584. package/framework/side-nav/side-nav.component.d.ts +13 -1
  585. package/framework/side-nav/side-nav.component.scss +0 -1
  586. package/framework/side-nav/side-nav.models.d.ts +7 -1
  587. package/framework/side-nav/side-nav.module.d.ts +1 -9
  588. package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
  589. package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
  590. package/framework/top-bar/index.d.ts +2 -0
  591. package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
  592. package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
  593. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
  594. package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
  595. package/framework/top-bar/top-bar.component.d.ts +25 -3
  596. package/framework/top-bar/top-bar.component.scss +7 -2
  597. package/framework/top-bar/top-bar.module.d.ts +10 -8
  598. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  599. package/graphql/datatable/index.d.ts +3 -0
  600. package/graphql/datatable/map-filter-states.d.ts +2 -2
  601. package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
  602. package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
  603. package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
  604. package/layout/layout.service.d.ts +9 -1
  605. package/menu/menu-toggle.directive.d.ts +2 -1
  606. package/package.json +3 -3
  607. package/popover/popover/popover.component.d.ts +4 -1
  608. package/popover/popover.directive.d.ts +2 -1
  609. package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
  610. package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
  611. package/table/public-api.d.ts +3 -0
  612. package/table/table/table.component.d.ts +21 -3
  613. package/table/table-cell-tpl.directive.d.ts +7 -0
  614. package/table/table-column-header-tpl.directive.d.ts +7 -0
  615. package/table/table-column.component.d.ts +24 -0
  616. package/table/table.module.d.ts +4 -1
@@ -37,13 +37,13 @@ export class TheSeamPhoneNumberPipe {
37
37
  this._cdr.detectChanges();
38
38
  }
39
39
  }
40
- TheSeamPhoneNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamPhoneNumberPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
41
- TheSeamPhoneNumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: TheSeamPhoneNumberPipe, name: "phoneNumber", pure: false });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamPhoneNumberPipe, decorators: [{
40
+ TheSeamPhoneNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPhoneNumberPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
41
+ TheSeamPhoneNumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPhoneNumberPipe, name: "phoneNumber", pure: false });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPhoneNumberPipe, decorators: [{
43
43
  type: Pipe,
44
44
  args: [{
45
45
  name: 'phoneNumber',
46
46
  pure: false
47
47
  }]
48
48
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUtbnVtYmVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVsLWlucHV0L3Bob25lLW51bWJlci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQTtBQUV0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxtQkFBbUIsRUFBNkIsTUFBTSxTQUFTLENBQUE7QUFDdEosT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sU0FBUyxDQUFBOztBQU1qRCxNQUFNLE9BQU8sc0JBQXNCO0lBTWpDLFlBQW9CLElBQXVCO1FBQXZCLFNBQUksR0FBSixJQUFJLENBQW1CO0lBQUksQ0FBQztJQUVoRCxTQUFTLENBQ1AsV0FBbUIsRUFDbkIsZUFBMEMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLGFBQWE7UUFFdEYsc0RBQXNEO1FBQ3RELElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssWUFBWSxFQUFFO1lBQ3hGLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFBO1NBQzNDO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFdBQVcsQ0FBQTtRQUNyQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsWUFBWSxDQUFBO1FBRXZDLDJDQUEyQztRQUMzQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUE7SUFDMUIsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBbUIsRUFBRSxZQUF1QztRQUMzRSx1REFBdUQ7UUFDdkQsTUFBTSxLQUFLLEdBQUcsTUFBTSxvQkFBb0IsRUFBRSxDQUFBO1FBQzFDLDhCQUE4QjtRQUU5QixNQUFNLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUVyRCxNQUFNLElBQUksR0FBRyxtQkFBbUIsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7UUFDOUUsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUMvQyxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1FBRWxELE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQTtRQUMxQixrQ0FBa0M7UUFDbEMsNERBQTREO1FBQzVELDBCQUEwQjtRQUMxQixJQUFJO1FBRUosTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBQzFELHNCQUFzQjtRQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQTtRQUNyQiwyQkFBMkI7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMzQixDQUFDOzttSEE3Q1Usc0JBQXNCO2lIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFKbEMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsYUFBYTtvQkFDbkIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IGludGxUZWxJbnB1dFV0aWxzIH0gZnJvbSAnLi9pbnRsLXRlbC1pbnB1dCdcbmltcG9ydCB7IGdldENvdW50cnlDb2RlLCBnZXREaWFsQ29kZSwgZ2V0SW50bFRlbElucHV0VXRpbHMsIGdsb2JhbEludGxUZWxJbnB1dEdsb2JhbHMsIHByb2Nlc3NDb3VudHJ5Q29kZXMsIFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQgfSBmcm9tICcuL3V0aWxzJ1xuaW1wb3J0IHsgY29lcmNlUGhvbmVOdW1iZXJGb3JtYXQgfSBmcm9tICcuL3V0aWxzJ1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdwaG9uZU51bWJlcicsXG4gIHB1cmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1QaG9uZU51bWJlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICBwcml2YXRlIF9sYXRlc3RQaG9uZU51bWJlcjogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuICBwcml2YXRlIF9sYXRlc3ROdW1iZXJGb3JtYXQ6IFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQgfCB1bmRlZmluZWQgfCBudWxsXG4gIHByaXZhdGUgX2xhdGVzdFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgdHJhbnNmb3JtKFxuICAgIHBob25lTnVtYmVyOiBzdHJpbmcsXG4gICAgbnVtYmVyRm9ybWF0OiBUaGVTZWFtTnVtYmVyRm9ybWF0c0lucHV0ID0gaW50bFRlbElucHV0VXRpbHMubnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUxcbiAgKTogYW55IHtcbiAgICAvLyBjb25zb2xlLmxvZygndHJhbnNmb3JtJywgcGhvbmVOdW1iZXIsIG51bWJlckZvcm1hdClcbiAgICBpZiAodGhpcy5fbGF0ZXN0UGhvbmVOdW1iZXIgIT09IHBob25lTnVtYmVyIHx8IHRoaXMuX2xhdGVzdE51bWJlckZvcm1hdCAhPT0gbnVtYmVyRm9ybWF0KSB7XG4gICAgICB0aGlzLl90cmFuc2Zvcm0ocGhvbmVOdW1iZXIsIG51bWJlckZvcm1hdClcbiAgICB9XG4gICAgdGhpcy5fbGF0ZXN0UGhvbmVOdW1iZXIgPSBwaG9uZU51bWJlclxuICAgIHRoaXMuX2xhdGVzdE51bWJlckZvcm1hdCA9IG51bWJlckZvcm1hdFxuXG4gICAgLy8gY29uc29sZS5sb2coJ3JldHVybicsIHRoaXMuX2xhdGVzdFZhbHVlKVxuICAgIHJldHVybiB0aGlzLl9sYXRlc3RWYWx1ZVxuICB9XG5cbiAgYXN5bmMgX3RyYW5zZm9ybShwaG9uZU51bWJlcjogc3RyaW5nLCBudW1iZXJGb3JtYXQ6IFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQpIHtcbiAgICAvLyBjb25zb2xlLmxvZygnX3RyYW5zZm9ybScsIHBob25lTnVtYmVyLCBudW1iZXJGb3JtYXQpXG4gICAgY29uc3QgdXRpbHMgPSBhd2FpdCBnZXRJbnRsVGVsSW5wdXRVdGlscygpXG4gICAgLy8gY29uc29sZS5sb2coJ3V0aWxzJywgdXRpbHMpXG5cbiAgICBjb25zdCBfZm9ybWF0ID0gY29lcmNlUGhvbmVOdW1iZXJGb3JtYXQobnVtYmVyRm9ybWF0KVxuXG4gICAgY29uc3QgZGF0YSA9IHByb2Nlc3NDb3VudHJ5Q29kZXMoZ2xvYmFsSW50bFRlbElucHV0R2xvYmFscygpLmdldENvdW50cnlEYXRhKCkpXG4gICAgY29uc3QgZGlhbENvZGUgPSBnZXREaWFsQ29kZShkYXRhLCBwaG9uZU51bWJlcilcbiAgICBjb25zdCBjb3VudHJ5Q29kZSA9IGdldENvdW50cnlDb2RlKGRhdGEsIGRpYWxDb2RlKVxuXG4gICAgY29uc3QgbnVtYmVyID0gcGhvbmVOdW1iZXJcbiAgICAvLyBpZiAobnVtYmVyLmNoYXJBdCgwKSAhPT0gJysnKSB7XG4gICAgLy8gICBpZiAobnVtYmVyLmNoYXJBdCgwKSAhPT0gJzEnKSB7IG51bWJlciA9IGAxJHtudW1iZXJ9YCB9XG4gICAgLy8gICBudW1iZXIgPSBgKyR7bnVtYmVyfWBcbiAgICAvLyB9XG5cbiAgICBjb25zdCBuID0gdXRpbHMuZm9ybWF0TnVtYmVyKG51bWJlciwgY291bnRyeUNvZGUsIF9mb3JtYXQpXG4gICAgLy8gY29uc29sZS5sb2coJ24nLCBuKVxuICAgIHRoaXMuX2xhdGVzdFZhbHVlID0gblxuICAgIC8vIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG59XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUtbnVtYmVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVsLWlucHV0L3Bob25lLW51bWJlci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQTtBQUV0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxtQkFBbUIsRUFBNkIsTUFBTSxTQUFTLENBQUE7QUFDdEosT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sU0FBUyxDQUFBOztBQU1qRCxNQUFNLE9BQU8sc0JBQXNCO0lBTWpDLFlBQW9CLElBQXVCO1FBQXZCLFNBQUksR0FBSixJQUFJLENBQW1CO0lBQUksQ0FBQztJQUVoRCxTQUFTLENBQ1AsV0FBbUIsRUFDbkIsZUFBMEMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLGFBQWE7UUFFdEYsc0RBQXNEO1FBQ3RELElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssWUFBWSxFQUFFO1lBQ3hGLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFBO1NBQzNDO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFdBQVcsQ0FBQTtRQUNyQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsWUFBWSxDQUFBO1FBRXZDLDJDQUEyQztRQUMzQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUE7SUFDMUIsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBbUIsRUFBRSxZQUF1QztRQUMzRSx1REFBdUQ7UUFDdkQsTUFBTSxLQUFLLEdBQUcsTUFBTSxvQkFBb0IsRUFBRSxDQUFBO1FBQzFDLDhCQUE4QjtRQUU5QixNQUFNLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUVyRCxNQUFNLElBQUksR0FBRyxtQkFBbUIsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7UUFDOUUsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUMvQyxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1FBRWxELE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQTtRQUMxQixrQ0FBa0M7UUFDbEMsNERBQTREO1FBQzVELDBCQUEwQjtRQUMxQixJQUFJO1FBRUosTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBQzFELHNCQUFzQjtRQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQTtRQUNyQiwyQkFBMkI7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMzQixDQUFDOztvSEE3Q1Usc0JBQXNCO2tIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFKbEMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsYUFBYTtvQkFDbkIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IGludGxUZWxJbnB1dFV0aWxzIH0gZnJvbSAnLi9pbnRsLXRlbC1pbnB1dCdcbmltcG9ydCB7IGdldENvdW50cnlDb2RlLCBnZXREaWFsQ29kZSwgZ2V0SW50bFRlbElucHV0VXRpbHMsIGdsb2JhbEludGxUZWxJbnB1dEdsb2JhbHMsIHByb2Nlc3NDb3VudHJ5Q29kZXMsIFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQgfSBmcm9tICcuL3V0aWxzJ1xuaW1wb3J0IHsgY29lcmNlUGhvbmVOdW1iZXJGb3JtYXQgfSBmcm9tICcuL3V0aWxzJ1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdwaG9uZU51bWJlcicsXG4gIHB1cmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1QaG9uZU51bWJlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICBwcml2YXRlIF9sYXRlc3RQaG9uZU51bWJlcjogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuICBwcml2YXRlIF9sYXRlc3ROdW1iZXJGb3JtYXQ6IFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQgfCB1bmRlZmluZWQgfCBudWxsXG4gIHByaXZhdGUgX2xhdGVzdFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgdHJhbnNmb3JtKFxuICAgIHBob25lTnVtYmVyOiBzdHJpbmcsXG4gICAgbnVtYmVyRm9ybWF0OiBUaGVTZWFtTnVtYmVyRm9ybWF0c0lucHV0ID0gaW50bFRlbElucHV0VXRpbHMubnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUxcbiAgKTogYW55IHtcbiAgICAvLyBjb25zb2xlLmxvZygndHJhbnNmb3JtJywgcGhvbmVOdW1iZXIsIG51bWJlckZvcm1hdClcbiAgICBpZiAodGhpcy5fbGF0ZXN0UGhvbmVOdW1iZXIgIT09IHBob25lTnVtYmVyIHx8IHRoaXMuX2xhdGVzdE51bWJlckZvcm1hdCAhPT0gbnVtYmVyRm9ybWF0KSB7XG4gICAgICB0aGlzLl90cmFuc2Zvcm0ocGhvbmVOdW1iZXIsIG51bWJlckZvcm1hdClcbiAgICB9XG4gICAgdGhpcy5fbGF0ZXN0UGhvbmVOdW1iZXIgPSBwaG9uZU51bWJlclxuICAgIHRoaXMuX2xhdGVzdE51bWJlckZvcm1hdCA9IG51bWJlckZvcm1hdFxuXG4gICAgLy8gY29uc29sZS5sb2coJ3JldHVybicsIHRoaXMuX2xhdGVzdFZhbHVlKVxuICAgIHJldHVybiB0aGlzLl9sYXRlc3RWYWx1ZVxuICB9XG5cbiAgYXN5bmMgX3RyYW5zZm9ybShwaG9uZU51bWJlcjogc3RyaW5nLCBudW1iZXJGb3JtYXQ6IFRoZVNlYW1OdW1iZXJGb3JtYXRzSW5wdXQpIHtcbiAgICAvLyBjb25zb2xlLmxvZygnX3RyYW5zZm9ybScsIHBob25lTnVtYmVyLCBudW1iZXJGb3JtYXQpXG4gICAgY29uc3QgdXRpbHMgPSBhd2FpdCBnZXRJbnRsVGVsSW5wdXRVdGlscygpXG4gICAgLy8gY29uc29sZS5sb2coJ3V0aWxzJywgdXRpbHMpXG5cbiAgICBjb25zdCBfZm9ybWF0ID0gY29lcmNlUGhvbmVOdW1iZXJGb3JtYXQobnVtYmVyRm9ybWF0KVxuXG4gICAgY29uc3QgZGF0YSA9IHByb2Nlc3NDb3VudHJ5Q29kZXMoZ2xvYmFsSW50bFRlbElucHV0R2xvYmFscygpLmdldENvdW50cnlEYXRhKCkpXG4gICAgY29uc3QgZGlhbENvZGUgPSBnZXREaWFsQ29kZShkYXRhLCBwaG9uZU51bWJlcilcbiAgICBjb25zdCBjb3VudHJ5Q29kZSA9IGdldENvdW50cnlDb2RlKGRhdGEsIGRpYWxDb2RlKVxuXG4gICAgY29uc3QgbnVtYmVyID0gcGhvbmVOdW1iZXJcbiAgICAvLyBpZiAobnVtYmVyLmNoYXJBdCgwKSAhPT0gJysnKSB7XG4gICAgLy8gICBpZiAobnVtYmVyLmNoYXJBdCgwKSAhPT0gJzEnKSB7IG51bWJlciA9IGAxJHtudW1iZXJ9YCB9XG4gICAgLy8gICBudW1iZXIgPSBgKyR7bnVtYmVyfWBcbiAgICAvLyB9XG5cbiAgICBjb25zdCBuID0gdXRpbHMuZm9ybWF0TnVtYmVyKG51bWJlciwgY291bnRyeUNvZGUsIF9mb3JtYXQpXG4gICAgLy8gY29uc29sZS5sb2coJ24nLCBuKVxuICAgIHRoaXMuX2xhdGVzdFZhbHVlID0gblxuICAgIC8vIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG59XG4iXX0=
@@ -143,8 +143,8 @@ export class TheSeamTelInputComponent {
143
143
  return this._focusOrigin !== null && this._focusOrigin !== undefined;
144
144
  }
145
145
  }
146
- TheSeamTelInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component });
147
- TheSeamTelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamTelInputComponent, isStandalone: true, selector: "seam-tel-input", inputs: { required: "required", disabled: "disabled", tabIndex: "tabIndex", name: "name", value: "value" }, outputs: { change: "change" }, host: { listeners: { "focus": "_onFocus($event)" }, properties: { "attr.disabled": "this._attrDisabled", "attr.tabindex": "this._attrTabIndex" } }, providers: [{
146
+ TheSeamTelInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component });
147
+ TheSeamTelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamTelInputComponent, isStandalone: true, selector: "seam-tel-input", inputs: { required: "required", disabled: "disabled", tabIndex: "tabIndex", name: "name", value: "value" }, outputs: { change: "change" }, host: { listeners: { "focus": "_onFocus($event)" }, properties: { "attr.disabled": "this._attrDisabled", "attr.tabindex": "this._attrTabIndex" } }, providers: [{
148
148
  provide: NG_VALUE_ACCESSOR,
149
149
  useExisting: forwardRef(() => TheSeamTelInputComponent),
150
150
  multi: true
@@ -152,7 +152,7 @@ TheSeamTelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
152
152
  __decorate([
153
153
  InputBoolean()
154
154
  ], TheSeamTelInputComponent.prototype, "required", void 0);
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputComponent, decorators: [{
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputComponent, decorators: [{
156
156
  type: Component,
157
157
  args: [{ selector: 'seam-tel-input', providers: [{
158
158
  provide: NG_VALUE_ACCESSOR,
@@ -195,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
195
195
  type: HostListener,
196
196
  args: ['focus', ['$event']]
197
197
  }] } });
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0L3RlbC1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVsLWlucHV0L3RlbC1pbnB1dC90ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNqRyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUVYLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBd0Isa0JBQWtCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUgsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXJFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFFdEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7Ozs7QUFFOUMsa0JBQWtCO0FBQ2xCLHFCQUFxQjtB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QUFLO2dCQTJCRixRQUFRO3NCQURYLEtBQUs7Z0JBTUYsYUFBYTtzQkFEaEIsV0FBVzt1QkFBQyxlQUFlO2dCQUl4QixhQUFhO3NCQURoQixXQUFXO3VCQUFDLGVBQWU7Z0JBSW5CLElBQUk7c0JBQVosS0FBSztnQkFHRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSWEsTUFBTTtzQkFBeEIsTUFBTTtnQkFNZ0Qsa0JBQWtCO3NCQUF4RSxTQUFTO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFNUixlQUFlO3NCQUEzRCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTUwsZ0JBQWdCO3NCQUFyRCxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR3BDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3RGbGFncyxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUNvbnRyb2wsIE5nQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IGRlZmVyLCBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBhdWRpdFRpbWUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBJbnB1dERpcmVjdGl2ZSwgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9mb3JtLWZpZWxkJ1xuXG5pbXBvcnQgeyBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi90ZWwtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG4vLyBUT0RPOiBGaXggZm9jdXNcbi8vIFRPRE86IEZpeCBkaXNhYmxlZFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRlbC1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ZWwtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSxcbiAgICBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXF1aXJlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICAvKiogQGlnbm9yZSAqL1xuICByZWFkb25seSBfY29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKVxuXG4gIHByaXZhdGUgX2ZvY3VzT3JpZ2luOiBGb2N1c09yaWdpbiA9IG51bGxcblxuICBfaGFzSW52YWxpZENzcyQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcmVxdWlyZWQgPSBmYWxzZVxuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpXG5cbiAgICBpZiAodGhpcy5fY29udHJvbC5kaXNhYmxlZCAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICB0aGlzLl9jb250cm9sLmRpc2FibGUoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fY29udHJvbC5lbmFibGUoKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRhYiBpbmRleCB0byBgLTFgIHRvIGFsbG93IHRoZSByb290IGVsZW1lbnQgb2YgdGhlXG4gICAqIGNvbXBvbmVudCB0byByZWNlaXZlIGBmb2N1c2AgZXZlbnQgZnJvbSBqYXZhc2NyaXB0LCBidXQgbm90IGdldCBmb2N1c2VkIGJ5XG4gICAqIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdGFiSW5kZXgodmFsdWU6IG51bWJlcikgeyB0aGlzLl90YWJJbmRleCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSB9XG4gIGdldCB0YWJJbmRleCgpOiBudW1iZXIgeyByZXR1cm4gdGhpcy5fdGFiSW5kZXggfVxuICBwcml2YXRlIF90YWJJbmRleCA9IC0xXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgZ2V0IF9hdHRyRGlzYWJsZWQoKSB7IHJldHVybiB0aGlzLmRpc2FibGVkIHx8IG51bGwgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIGdldCBfYXR0clRhYkluZGV4KCkgeyByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogKHRoaXMudGFiSW5kZXggfHwgMCkgfVxuXG4gIC8qKiBOYW1lIHZhbHVlIHdpbGwgYmUgYXBwbGllZCB0byB0aGUgaW5wdXQgZWxlbWVudCBpZiBwcmVzZW50ICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSBudWxsXG5cbiAgLyoqIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgb2YgdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50ICovXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgXCJ0ZWxcIiBpbnB1dCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbD4oKVxuXG4gIC8qKlxuICAgKiBUaGUgdGVsSW5wdXQgZGlyZWN0aXZlXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfdGVsSW5wdXREaXJlY3RpdmU/OiBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmVcblxuICAvKipcbiAgICogVGhlIHRlbElucHV0IGRpcmVjdGl2ZVxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXREaXJlY3RpdmU/OiBJbnB1dERpcmVjdGl2ZVxuXG4gIC8qKlxuICAgKiBUaGUgbmF0aXZlIGA8aW5wdXQgdHlwZT1cInRlbFwiPmAgZWxlbWVudFxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIF9pbnB1dEVsZW1lbnRSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbICckZXZlbnQnIF0pXG4gIF9vbkZvY3VzKCkge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5mb2N1cygpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIGNoZWNrYm94IGlzIGJsdXJyZWQuIE5lZWRlZCB0byBwcm9wZXJseSBpbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9vblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbjogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICBjb25zdCB0ZWxJbnB1dEJsdXJFdmVudCQgPSB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZVxuICAgICAgPyBmcm9tRXZlbnQodGhpcy5fdGVsSW5wdXREaXJlY3RpdmUuZ2V0SG9zdEVsZW1lbnQoKSwgJ2JsdXInKVxuICAgICAgOiBvZjxFdmVudD4oKVxuXG4gICAgdGhpcy5faGFzSW52YWxpZENzcyQgPSBkZWZlcigoKSA9PiBvZigodGhpcy5faW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCwgSW5qZWN0RmxhZ3MuU2VsZik/LmNvbnRyb2wpIHx8IHVuZGVmaW5lZCkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoY29udHJvbCA9PiB7XG4gICAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgICAgcmV0dXJuIG1lcmdlKFxuICAgICAgICAgICAgY29udHJvbC52YWx1ZUNoYW5nZXMsXG4gICAgICAgICAgICBjb250cm9sLnN0YXR1c0NoYW5nZXMsXG4gICAgICAgICAgICB0ZWxJbnB1dEJsdXJFdmVudCRcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBpbnB1dENvbnRyb2wgPSB0aGlzLl9pbnB1dERpcmVjdGl2ZT8ubmdDb250cm9sXG4gICAgICAgICAgICAgIHJldHVybiBjb250cm9sLmludmFsaWQgJiYgKGlucHV0Q29udHJvbD8uZGlydHkgYXMgYm9vbGVhbiB8fCBpbnB1dENvbnRyb2w/LnRvdWNoZWQgYXMgYm9vbGVhbilcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZihmYWxzZSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5fZWxlbWVudFJlZiwgdHJ1ZSkucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgICkuc3Vic2NyaWJlKG9yaWdpbiA9PiB0aGlzLl9mb2N1c09yaWdpbiA9IG9yaWdpbilcblxuICAgIHRoaXMuX2NvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmdldEZ1bGxOdW1iZXIoKVxuICAgICAgLy8gY29uc29sZS5sb2coJ3ZhbHVlQ2hhbmdlcycsIHYsIHZhbHVlKVxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgICBpZiAodGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbikge1xuICAgICAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHZhbHVlKVxuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KHZhbHVlKVxuICAgICAgfVxuICAgIH0pXG4gICAgdGhpcy5fY29udHJvbC5zZXRWYWx1ZSh0aGlzLnZhbHVlID8/ICcnKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3dyaXRlVmFsdWUnLCB2YWx1ZSwgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmdldEZ1bGxOdW1iZXIoKSwgdGhpcy5fY29udHJvbC52YWx1ZSlcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgICBpZiAodGhpcy5fY29udHJvbC52YWx1ZSAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2wuc2V0VmFsdWUodmFsdWUpXG4gICAgfVxuICAgIGlmICh0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZSkge1xuICAgICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmUudmFsdWUgPSB2YWx1ZVxuICAgICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmUudXBkYXRlVmFsdWUoKVxuICAgIH1cbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gIC8qKiBAaWdub3JlICovXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKSB7XG4gICAgdGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbiA9IGZuXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gIC8qKiBAaWdub3JlICovXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICAvKiogRm9jdXNlcyB0aGUgaW5wdXQuICovXG4gIHB1YmxpYyBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZT8uZm9jdXMoKVxuICB9XG5cbiAgLyoqIFVuZm9jdXNlcyB0aGUgaW5wdXQuICovXG4gIHB1YmxpYyBibHVyKCk6IHZvaWQge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5ibHVyKClcbiAgfVxuXG4gIHB1YmxpYyBoYXNGb2N1cygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZm9jdXNPcmlnaW4gIT09IG51bGwgJiYgdGhpcy5fZm9jdXNPcmlnaW4gIT09IHVuZGVmaW5lZFxuICB9XG5cbn1cbiIsIjxpbnB1dCBzZWFtVGVsSW5wdXQgc2VhbUlucHV0XG4gIFtmb3JtQ29udHJvbF09XCJfY29udHJvbFwiXG4gIFtjbGFzcy5pcy1pbnZhbGlkXT1cIl9oYXNJbnZhbGlkQ3NzJCB8IGFzeW5jXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIvPlxuIl19
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0L3RlbC1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVsLWlucHV0L3RlbC1pbnB1dC90ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNqRyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUVYLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBd0Isa0JBQWtCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUgsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXJFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFFdEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7Ozs7QUFFOUMsa0JBQWtCO0FBQ2xCLHFCQUFxQjtB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QUFLO2dCQTJCRixRQUFRO3NCQURYLEtBQUs7Z0JBTUYsYUFBYTtzQkFEaEIsV0FBVzt1QkFBQyxlQUFlO2dCQUl4QixhQUFhO3NCQURoQixXQUFXO3VCQUFDLGVBQWU7Z0JBSW5CLElBQUk7c0JBQVosS0FBSztnQkFHRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSWEsTUFBTTtzQkFBeEIsTUFBTTtnQkFNZ0Qsa0JBQWtCO3NCQUF4RSxTQUFTO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFNUixlQUFlO3NCQUEzRCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTUwsZ0JBQWdCO3NCQUFyRCxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR3BDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3RGbGFncyxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUNvbnRyb2wsIE5nQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IGRlZmVyLCBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBhdWRpdFRpbWUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBJbnB1dERpcmVjdGl2ZSwgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9mb3JtLWZpZWxkJ1xuXG5pbXBvcnQgeyBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi90ZWwtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG4vLyBUT0RPOiBGaXggZm9jdXNcbi8vIFRPRE86IEZpeCBkaXNhYmxlZFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRlbC1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ZWwtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSxcbiAgICBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXF1aXJlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICAvKiogQGlnbm9yZSAqL1xuICByZWFkb25seSBfY29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKVxuXG4gIHByaXZhdGUgX2ZvY3VzT3JpZ2luOiBGb2N1c09yaWdpbiA9IG51bGxcblxuICBfaGFzSW52YWxpZENzcyQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcmVxdWlyZWQgPSBmYWxzZVxuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpXG5cbiAgICBpZiAodGhpcy5fY29udHJvbC5kaXNhYmxlZCAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICB0aGlzLl9jb250cm9sLmRpc2FibGUoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fY29udHJvbC5lbmFibGUoKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRhYiBpbmRleCB0byBgLTFgIHRvIGFsbG93IHRoZSByb290IGVsZW1lbnQgb2YgdGhlXG4gICAqIGNvbXBvbmVudCB0byByZWNlaXZlIGBmb2N1c2AgZXZlbnQgZnJvbSBqYXZhc2NyaXB0LCBidXQgbm90IGdldCBmb2N1c2VkIGJ5XG4gICAqIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdGFiSW5kZXgodmFsdWU6IG51bWJlcikgeyB0aGlzLl90YWJJbmRleCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSB9XG4gIGdldCB0YWJJbmRleCgpOiBudW1iZXIgeyByZXR1cm4gdGhpcy5fdGFiSW5kZXggfVxuICBwcml2YXRlIF90YWJJbmRleCA9IC0xXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgZ2V0IF9hdHRyRGlzYWJsZWQoKSB7IHJldHVybiB0aGlzLmRpc2FibGVkIHx8IG51bGwgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIGdldCBfYXR0clRhYkluZGV4KCkgeyByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogKHRoaXMudGFiSW5kZXggfHwgMCkgfVxuXG4gIC8qKiBOYW1lIHZhbHVlIHdpbGwgYmUgYXBwbGllZCB0byB0aGUgaW5wdXQgZWxlbWVudCBpZiBwcmVzZW50ICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSBudWxsXG5cbiAgLyoqIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgb2YgdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50ICovXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgXCJ0ZWxcIiBpbnB1dCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbD4oKVxuXG4gIC8qKlxuICAgKiBUaGUgdGVsSW5wdXQgZGlyZWN0aXZlXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfdGVsSW5wdXREaXJlY3RpdmU/OiBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmVcblxuICAvKipcbiAgICogVGhlIHRlbElucHV0IGRpcmVjdGl2ZVxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXREaXJlY3RpdmU/OiBJbnB1dERpcmVjdGl2ZVxuXG4gIC8qKlxuICAgKiBUaGUgbmF0aXZlIGA8aW5wdXQgdHlwZT1cInRlbFwiPmAgZWxlbWVudFxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIF9pbnB1dEVsZW1lbnRSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbICckZXZlbnQnIF0pXG4gIF9vbkZvY3VzKCkge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5mb2N1cygpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIGNoZWNrYm94IGlzIGJsdXJyZWQuIE5lZWRlZCB0byBwcm9wZXJseSBpbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9vblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbjogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICBjb25zdCB0ZWxJbnB1dEJsdXJFdmVudCQgPSB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZVxuICAgICAgPyBmcm9tRXZlbnQodGhpcy5fdGVsSW5wdXREaXJlY3RpdmUuZ2V0SG9zdEVsZW1lbnQoKSwgJ2JsdXInKVxuICAgICAgOiBvZjxFdmVudD4oKVxuXG4gICAgdGhpcy5faGFzSW52YWxpZENzcyQgPSBkZWZlcigoKSA9PiBvZigodGhpcy5faW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCwgSW5qZWN0RmxhZ3MuU2VsZik/LmNvbnRyb2wpIHx8IHVuZGVmaW5lZCkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoY29udHJvbCA9PiB7XG4gICAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgICAgcmV0dXJuIG1lcmdlKFxuICAgICAgICAgICAgY29udHJvbC52YWx1ZUNoYW5nZXMsXG4gICAgICAgICAgICBjb250cm9sLnN0YXR1c0NoYW5nZXMsXG4gICAgICAgICAgICB0ZWxJbnB1dEJsdXJFdmVudCRcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBpbnB1dENvbnRyb2wgPSB0aGlzLl9pbnB1dERpcmVjdGl2ZT8ubmdDb250cm9sXG4gICAgICAgICAgICAgIHJldHVybiBjb250cm9sLmludmFsaWQgJiYgKGlucHV0Q29udHJvbD8uZGlydHkgYXMgYm9vbGVhbiB8fCBpbnB1dENvbnRyb2w/LnRvdWNoZWQgYXMgYm9vbGVhbilcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZihmYWxzZSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5fZWxlbWVudFJlZiwgdHJ1ZSkucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgICkuc3Vic2NyaWJlKG9yaWdpbiA9PiB0aGlzLl9mb2N1c09yaWdpbiA9IG9yaWdpbilcblxuICAgIHRoaXMuX2NvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmdldEZ1bGxOdW1iZXIoKVxuICAgICAgLy8gY29uc29sZS5sb2coJ3ZhbHVlQ2hhbmdlcycsIHYsIHZhbHVlKVxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgICBpZiAodGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbikge1xuICAgICAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHZhbHVlKVxuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KHZhbHVlKVxuICAgICAgfVxuICAgIH0pXG4gICAgdGhpcy5fY29udHJvbC5zZXRWYWx1ZSh0aGlzLnZhbHVlID8/ICcnKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3dyaXRlVmFsdWUnLCB2YWx1ZSwgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmdldEZ1bGxOdW1iZXIoKSwgdGhpcy5fY29udHJvbC52YWx1ZSlcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgICBpZiAodGhpcy5fY29udHJvbC52YWx1ZSAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2wuc2V0VmFsdWUodmFsdWUpXG4gICAgfVxuICAgIGlmICh0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZSkge1xuICAgICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmUudmFsdWUgPSB2YWx1ZVxuICAgICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmUudXBkYXRlVmFsdWUoKVxuICAgIH1cbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gIC8qKiBAaWdub3JlICovXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKSB7XG4gICAgdGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbiA9IGZuXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gIC8qKiBAaWdub3JlICovXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICAvKiogRm9jdXNlcyB0aGUgaW5wdXQuICovXG4gIHB1YmxpYyBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZT8uZm9jdXMoKVxuICB9XG5cbiAgLyoqIFVuZm9jdXNlcyB0aGUgaW5wdXQuICovXG4gIHB1YmxpYyBibHVyKCk6IHZvaWQge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5ibHVyKClcbiAgfVxuXG4gIHB1YmxpYyBoYXNGb2N1cygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZm9jdXNPcmlnaW4gIT09IG51bGwgJiYgdGhpcy5fZm9jdXNPcmlnaW4gIT09IHVuZGVmaW5lZFxuICB9XG5cbn1cbiIsIjxpbnB1dCBzZWFtVGVsSW5wdXQgc2VhbUlucHV0XG4gIFtmb3JtQ29udHJvbF09XCJfY29udHJvbFwiXG4gIFtjbGFzcy5pcy1pbnZhbGlkXT1cIl9oYXNJbnZhbGlkQ3NzJCB8IGFzeW5jXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIvPlxuIl19
@@ -182,9 +182,9 @@ export class TheSeamTelInputDirective {
182
182
  return this._elementRef.nativeElement;
183
183
  }
184
184
  }
185
- TheSeamTelInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.AssetLoaderService }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
186
- TheSeamTelInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamTelInputDirective, isStandalone: true, selector: "input[seamTelInput]", inputs: { value: "value" }, host: { properties: { "attr.type": "this._attrType" } }, exportAs: ["seamTelInput"], ngImport: i0 });
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputDirective, decorators: [{
185
+ TheSeamTelInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.AssetLoaderService }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
186
+ TheSeamTelInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamTelInputDirective, isStandalone: true, selector: "input[seamTelInput]", inputs: { value: "value" }, host: { properties: { "attr.type": "this._attrType" } }, exportAs: ["seamTelInput"], ngImport: i0 });
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputDirective, decorators: [{
188
188
  type: Directive,
189
189
  args: [{
190
190
  selector: 'input[seamTelInput]',
@@ -206,4 +206,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
206
206
  }], value: [{
207
207
  type: Input
208
208
  }] } });
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBdUIsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQTZCLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDckksT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFHMUcsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRXBFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7OztBQU92RCxNQUFNLE9BQU8sd0JBQXdCO0lBUW5DLElBQ0ksS0FBSyxDQUFDLENBQTRCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUs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UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsT0FBTyxLQUFLLENBQUE7U0FDYjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFnQixDQUFBO1FBQ3RDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVELHlCQUF5QjtJQUNsQixLQUFLO1FBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDeEMsQ0FBQztJQUVELDJCQUEyQjtJQUNwQixJQUFJO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDdkMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQTtJQUN2QyxDQUFDOztxSEF0T1Usd0JBQXdCLG9HQTRCYixRQUFRO3lHQTVCbkIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBNkJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsUUFBUTs7MEJBQzNCLFFBQVE7OzBCQUFJLElBQUk7NENBdkJPLFNBQVM7c0JBQWxDLFdBQVc7dUJBQUMsV0FBVztnQkFHcEIsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBEaXJlY3RpdmUsIERvQ2hlY2ssIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgbGFzdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBBc3NldExvYWRlclNlcnZpY2UsIExvYWRlZEFzc2V0UmVmIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3NlcnZpY2VzJ1xuaW1wb3J0IHsgZ2V0QXR0cmlidXRlLCBoYXNBdHRyaWJ1dGUsIG5vdE51bGxPclVuZGVmaW5lZCwgdG9nZ2xlQXR0cmlidXRlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IEludGxUZWxJbnB1dEZuLCBpbnRsVGVsSW5wdXRVdGlscyB9IGZyb20gJy4vaW50bC10ZWwtaW5wdXQnXG5pbXBvcnQgdHlwZSB7IEludGxUZWxJbnB1dCB9IGZyb20gJy4vaW50bC10ZWwtaW5wdXQnXG5pbXBvcnQgeyBURUxfSU5QVVRfU1RZTEVTLCBURUxfSU5QVVRfU1RZTEVTSEVFVF9QQVRILCBURUxfSU5QVVRfVVRJTFNfUEFUSCB9IGZyb20gJy4vdGVsLWlucHV0LWNvbnN0YW50cydcbmltcG9ydCB7IGdsb2JhbEludGxUZWxJbnB1dFV0aWxzIH0gZnJvbSAnLi91dGlscy9pbmRleCdcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXRbc2VhbVRlbElucHV0XScsXG4gIGV4cG9ydEFzOiAnc2VhbVRlbElucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIERvQ2hlY2sge1xuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHByaXZhdGUgX2luc3RhbmNlOiBJbnRsVGVsSW5wdXQuUGx1Z2luIHwgdW5kZWZpbmVkXG4gIHByaXZhdGUgX2xvYWRlZEFzc2V0UmVmczogTG9hZGVkQXNzZXRSZWY8SFRNTExpbmtFbGVtZW50IHwgSFRNTFN0eWxlRWxlbWVudD5bXSA9IFtdXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnR5cGUnKSBfYXR0clR5cGUgPSAndGVsJ1xuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZSh2OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2XG4gICAgaWYgKHRoaXMuX2luc3RhbmNlKSB7XG4gICAgICB0aGlzLl9pbnN0YW5jZS5zZXROdW1iZXIobm90TnVsbE9yVW5kZWZpbmVkKHYpID8gdiA6ICcnKVxuICAgICAgdGhpcy51cGRhdGVWYWx1ZSgpXG4gICAgfVxuICB9XG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICBpZiAodGhpcy5faW5zdGFuY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKClcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlXG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Fzc2V0TG9hZGVyOiBBc3NldExvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQ/OiBhbnksXG4gICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIHJlYWRvbmx5IF9uZ0NvbnRyb2w/OiBOZ0NvbnRyb2wsXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5fbmdDb250cm9sID8gdGhpcy5fbmdDb250cm9sLnZhbHVlIDogdGhpcy52YWx1ZSA/PyAnJ1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2luc3RhbmNlLWxvYWRpbmcnLCAnJylcbiAgICBtZXJnZShcbiAgICAgIHRoaXMuX2Fzc2V0TG9hZGVyLmxvYWRTdHlsZVNoZWV0KFRFTF9JTlBVVF9TVFlMRVNIRUVUX1BBVEgpLFxuICAgICAgdGhpcy5fYXNzZXRMb2FkZXIubG9hZFN0eWxlKFRFTF9JTlBVVF9TVFlMRVMpXG4gICAgKS5waXBlKFxuICAgICAgdGFwKHYgPT4gdGhpcy5fbG9hZGVkQXNzZXRSZWZzLnB1c2godikpLFxuICAgICAgbGFzdCgpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgdGhpcy5faW5zdGFuY2UgPSBJbnRsVGVsSW5wdXRGbih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgICAgICB1dGlsc1NjcmlwdDogVEVMX0lOUFVUX1VUSUxTX1BBVEgsXG4gICAgICAgICAgcHJlZmVycmVkQ291bnRyaWVzOiBbICdVUycgXSxcbiAgICAgICAgICBuYXRpb25hbE1vZGU6IGZhbHNlLFxuICAgICAgICAgIGZvcm1hdE9uRGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICBhdXRvUGxhY2Vob2xkZXI6ICdvZmYnLFxuICAgICAgICAgIHNlcGFyYXRlRGlhbENvZGU6IGZhbHNlLFxuICAgICAgICAgIGF1dG9IaWRlRGlhbENvZGU6IGZhbHNlLFxuICAgICAgICAgIC8vIFRPRE86IEFkZCBpbml0aWFsQ291bnRyeSBzdXBwb3J0LlxuICAgICAgICAgIC8vIGluaXRpYWxDb3VudHJ5OiAnYXV0bydcbiAgICAgICAgfSlcblxuICAgICAgICB0aGlzLl90cnlVcGRhdGVEcm9wZG93bkF0dHJpYnV0ZXMoKVxuXG4gICAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZS5wcm9taXNlLnRoZW4odiA9PiB7XG4gICAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnaW5zdGFuY2UtbG9hZGluZycpXG4gICAgICAgICAgcmV0dXJuIHZcbiAgICAgICAgfSlcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+IHRoaXMuX2luaXREcm9wZG93bkxpc3RlbmVyKCkpLFxuICAgICAgdGFwKCgpID0+IHRoaXMudmFsdWUgPSB0aGlzLl92YWx1ZSksXG4gICAgICB0YXAodGhpcy5fZm9ybWF0SW50bFRlbElucHV0KSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBtZXJnZShcbiAgICAgICAgZnJvbUV2ZW50KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleXVwJyksXG4gICAgICAgIGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjaGFuZ2UnKVxuICAgICAgKSksXG4gICAgICB0YXAodGhpcy5fZm9ybWF0SW50bFRlbElucHV0KSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgICkuc3Vic2NyaWJlKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2luc3RhbmNlPy5kZXN0cm95KClcbiAgICBmb3IgKGNvbnN0IHJlZiBvZiB0aGlzLl9sb2FkZWRBc3NldFJlZnMpIHtcbiAgICAgIHJlZi5kZXN0cm95KClcbiAgICB9XG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIHRoaXMuX3RyeVVwZGF0ZURyb3Bkb3duQXR0cmlidXRlcygpXG4gIH1cblxuICBwcml2YXRlIF90cnlVcGRhdGVEcm9wZG93bkF0dHJpYnV0ZXMoKSB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuX25nQ29udHJvbFxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBjb25zdCBmbGFnc0NvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsIHwgdW5kZWZpbmVkID0gKHRoaXMuX2luc3RhbmNlIGFzIGFueSk/LnNlbGVjdGVkRmxhZ1xuICAgICAgaWYgKGZsYWdzQ29udGFpbmVyKSB7XG4gICAgICAgIHRvZ2dsZUF0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ2FyaWEtZGlzYWJsZWQnLCBjb250cm9sLmRpc2FibGVkID8/IGZhbHNlKVxuXG4gICAgICAgIGNvbnN0IGRpc2FibGVkID0gY29udHJvbC5kaXNhYmxlZCA/PyBmYWxzZVxuICAgICAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKGdldEF0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ3RhYmluZGV4JykgIT09ICcwJykge1xuICAgICAgICAgICAgZmxhZ3NDb250YWluZXIuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJylcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGhhc0F0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ3RhYmluZGV4JykpIHtcbiAgICAgICAgICAgIGZsYWdzQ29udGFpbmVyLnJlbW92ZUF0dHJpYnV0ZSgndGFiaW5kZXgnKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Zvcm1hdEludGxUZWxJbnB1dCA9ICgpID0+IHtcbiAgICAvLyBpZiAodHlwZW9mIGludGxUZWxJbnB1dFV0aWxzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vICAgY29uc3QgY3VycmVudFRleHQgPSB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5JTlRFUk5BVElPTkFMKVxuICAgIC8vICAgY29uc29sZS5sb2coJ2N1cnJlbnRUZXh0JywgY3VycmVudFRleHQsIHRoaXMuX2luc3RhbmNlPy5nZXRTZWxlY3RlZENvdW50cnlEYXRhKCkpXG4gICAgLy8gICBjb25zb2xlLmxvZyh0aGlzLl9pbnN0YW5jZT8uZ2V0VmFsaWRhdGlvbkVycm9yKCkpXG4gICAgLy8gICBpZiAodHlwZW9mIGN1cnJlbnRUZXh0ID09PSAnc3RyaW5nJykge1xuICAgIC8vICAgICB0aGlzLl9pbnN0YW5jZT8uc2V0TnVtYmVyKGN1cnJlbnRUZXh0KVxuICAgIC8vICAgfVxuICAgIC8vIH1cblxuICAgIHRoaXMudXBkYXRlVmFsdWUoKVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVZhbHVlKCk6IHZvaWQge1xuICAgIC8vIGNvbnNvbGUubG9nKCclY3VwZGF0ZVZhbHVlIFNUQVJUJywgJ2NvbG9yOmN5YW4nLCB0eXBlb2YgaW50bFRlbElucHV0VXRpbHMgIT09ICd1bmRlZmluZWQnKVxuICAgIGlmICh0eXBlb2YgZ2xvYmFsSW50bFRlbElucHV0VXRpbHMoKSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRUZXh0ID0gdGhpcy5faW5zdGFuY2U/LmdldE51bWJlcihpbnRsVGVsSW5wdXRVdGlscy5udW1iZXJGb3JtYXQuRTE2NClcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdjdXJyZW50VGV4dCcsIGN1cnJlbnRUZXh0LCB0aGlzLl9pbnN0YW5jZT8uZ2V0U2VsZWN0ZWRDb3VudHJ5RGF0YSgpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ2Z1bGxOdW1iZXInLCAodGhpcy5faW5zdGFuY2UgYXMgYW55KS5fZ2V0RnVsbE51bWJlcigpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ0UxNjQnLCB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5FMTY0KSlcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdJTlRFUk5BVElPTkFMJywgdGhpcy5faW5zdGFuY2U/LmdldE51bWJlcihpbnRsVGVsSW5wdXRVdGlscy5udW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCkpXG4gICAgICAvLyBjb25zb2xlLmxvZygnTkFUSU9OQUwnLCB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5OQVRJT05BTCkpXG4gICAgICAvLyBjb25zb2xlLmxvZygnUkZDMzk2NicsIHRoaXMuX2luc3RhbmNlPy5nZXROdW1iZXIoaW50bFRlbElucHV0VXRpbHMubnVtYmVyRm9ybWF0LlJGQzM5NjYpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ2dldFZhbGlkYXRpb25FcnJvcicsIHRoaXMuX2luc3RhbmNlPy5nZXRWYWxpZGF0aW9uRXJyb3IoKSlcbiAgICAgIGlmICh0eXBlb2YgY3VycmVudFRleHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRoaXMuX2luc3RhbmNlPy5zZXROdW1iZXIoY3VycmVudFRleHQpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIGNvbnNvbGUubG9nKCclY3VwZGF0ZVZhbHVlIEVORCcsICdjb2xvcjpjeWFuJylcbiAgfVxuXG4gIHB1YmxpYyBnZXRGdWxsTnVtYmVyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgZ2xvYmFsSW50bFRlbElucHV0VXRpbHMoKSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5faW5zdGFuY2UpIHtcbiAgICAgIC8vIHJldHVybiAodGhpcy5faW5zdGFuY2UgYXMgYW55KS5fZ2V0RnVsbE51bWJlcigpXG4gICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2UuZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5FMTY0KVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy52YWx1ZVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdERyb3Bkb3duTGlzdGVuZXIoKSB7XG4gICAgY29uc3QgZG9jID0gdGhpcy5fZG9jdW1lbnRcbiAgICBpZiAoIWRvYykge1xuICAgICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3Qgb3BlbkRyb3Bkb3duJCA9IGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdvcGVuOmNvdW50cnlkcm9wZG93bicpXG4gICAgICBjb25zdCBjbG9zZURyb3Bkb3duJCA9IGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbG9zZTpjb3VudHJ5ZHJvcGRvd24nKVxuICAgICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLl9pbnN0YW5jZSBhcyBhbnlcbiAgICAgIG9wZW5Ecm9wZG93biQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBwcmVzc0Rvd24kID0gbWVyZ2UoXG4gICAgICAgICAgICBmcm9tRXZlbnQoZG9jLCAndG91Y2hzdGFydCcsIHsgY2FwdHVyZTogdHJ1ZSB9KSxcbiAgICAgICAgICAgIGZyb21FdmVudChkb2MsICdtb3VzZWRvd24nLCB7IGNhcHR1cmU6IHRydWUgfSlcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgICAgICB0YXAoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgaWYgKGluc3RhbmNlLmNvdW50cnlMaXN0LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgfHwgaW5zdGFuY2Uuc2VsZWN0ZWRGbGFnLmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpbnN0YW5jZS5fY2xvc2VEcm9wZG93bigpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcblxuICAgICAgICAgIGNvbnN0IGZsYWdCdG5DbGljayQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oaW5zdGFuY2Uuc2VsZWN0ZWRGbGFnLCAnY2xpY2snKS5waXBlKFxuICAgICAgICAgICAgdGFwKChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNEcm9wZG93blZpc2libGUoKSkge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICBpbnN0YW5jZS5fY2xvc2VEcm9wZG93bigpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcblxuICAgICAgICAgIHJldHVybiBtZXJnZShwcmVzc0Rvd24kLCBmbGFnQnRuQ2xpY2skKS5waXBlKHRha2VVbnRpbChjbG9zZURyb3Bkb3duJCkpXG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICkuc3Vic2NyaWJlKClcblxuICAgICAgY29uc3QgZmxhZ3NDb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCA9ICh0aGlzLl9pbnN0YW5jZSBhcyBhbnkpPy5zZWxlY3RlZEZsYWdcbiAgICAgIGlmIChmbGFnc0NvbnRhaW5lcikge1xuICAgICAgICBmcm9tRXZlbnQoZmxhZ3NDb250YWluZXIsICdrZXlkb3duJywgeyBjYXB0dXJlOiB0cnVlIH0pLnBpcGUoXG4gICAgICAgICAgdGFwKChlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLl9uZ0NvbnRyb2xcbiAgICAgICAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkID0gY29udHJvbC5kaXNhYmxlZCA/PyBmYWxzZVxuICAgICAgICAgICAgICBpZiAoZGlzYWJsZWQgJiYgWydBcnJvd1VwJywgJ1VwJywgJ0Fycm93RG93bicsICdEb3duJywgJyAnLCAnRW50ZXInXS5pbmRleE9mKGUua2V5KSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAvLyBwcmV2ZW50IGZvcm0gZnJvbSBiZWluZyBzdWJtaXR0ZWQgaWYgXCJFTlRFUlwiIHdhcyBwcmVzc2VkXG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgLy8gcHJldmVudCBldmVudCBmcm9tIGJlaW5nIGhhbmRsZWQgYWdhaW4gYnkgZG9jdW1lbnRcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICAgKS5zdWJzY3JpYmUoKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgaXNEcm9wZG93blZpc2libGUoKSB7XG4gICAgaWYgKCF0aGlzLl9pbnN0YW5jZSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLl9pbnN0YW5jZSBhcyBhbnlcbiAgICByZXR1cm4gIWluc3RhbmNlLmNvdW50cnlMaXN0LmNsYXNzTGlzdC5jb250YWlucygnaXRpX19oaWRlJylcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gIH1cblxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmJsdXIoKVxuICB9XG5cbiAgcHVibGljIGdldEhvc3RFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgfVxufVxuIl19
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBdUIsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQTZCLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDckksT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFHMUcsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRXBFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7OztBQU92RCxNQUFNLE9BQU8sd0JBQXdCO0lBUW5DLElBQ0ksS0FBSyxDQUFDLENBQTRCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUs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UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsT0FBTyxLQUFLLENBQUE7U0FDYjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFnQixDQUFBO1FBQ3RDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVELHlCQUF5QjtJQUNsQixLQUFLO1FBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDeEMsQ0FBQztJQUVELDJCQUEyQjtJQUNwQixJQUFJO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDdkMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQTtJQUN2QyxDQUFDOztzSEF0T1Usd0JBQXdCLG9HQTRCYixRQUFROzBHQTVCbkIsd0JBQXdCOzRGQUF4Qix3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBNkJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsUUFBUTs7MEJBQzNCLFFBQVE7OzBCQUFJLElBQUk7NENBdkJPLFNBQVM7c0JBQWxDLFdBQVc7dUJBQUMsV0FBVztnQkFHcEIsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBEaXJlY3RpdmUsIERvQ2hlY2ssIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgbGFzdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBBc3NldExvYWRlclNlcnZpY2UsIExvYWRlZEFzc2V0UmVmIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3NlcnZpY2VzJ1xuaW1wb3J0IHsgZ2V0QXR0cmlidXRlLCBoYXNBdHRyaWJ1dGUsIG5vdE51bGxPclVuZGVmaW5lZCwgdG9nZ2xlQXR0cmlidXRlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IEludGxUZWxJbnB1dEZuLCBpbnRsVGVsSW5wdXRVdGlscyB9IGZyb20gJy4vaW50bC10ZWwtaW5wdXQnXG5pbXBvcnQgdHlwZSB7IEludGxUZWxJbnB1dCB9IGZyb20gJy4vaW50bC10ZWwtaW5wdXQnXG5pbXBvcnQgeyBURUxfSU5QVVRfU1RZTEVTLCBURUxfSU5QVVRfU1RZTEVTSEVFVF9QQVRILCBURUxfSU5QVVRfVVRJTFNfUEFUSCB9IGZyb20gJy4vdGVsLWlucHV0LWNvbnN0YW50cydcbmltcG9ydCB7IGdsb2JhbEludGxUZWxJbnB1dFV0aWxzIH0gZnJvbSAnLi91dGlscy9pbmRleCdcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXRbc2VhbVRlbElucHV0XScsXG4gIGV4cG9ydEFzOiAnc2VhbVRlbElucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIERvQ2hlY2sge1xuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHByaXZhdGUgX2luc3RhbmNlOiBJbnRsVGVsSW5wdXQuUGx1Z2luIHwgdW5kZWZpbmVkXG4gIHByaXZhdGUgX2xvYWRlZEFzc2V0UmVmczogTG9hZGVkQXNzZXRSZWY8SFRNTExpbmtFbGVtZW50IHwgSFRNTFN0eWxlRWxlbWVudD5bXSA9IFtdXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnR5cGUnKSBfYXR0clR5cGUgPSAndGVsJ1xuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZSh2OiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2XG4gICAgaWYgKHRoaXMuX2luc3RhbmNlKSB7XG4gICAgICB0aGlzLl9pbnN0YW5jZS5zZXROdW1iZXIobm90TnVsbE9yVW5kZWZpbmVkKHYpID8gdiA6ICcnKVxuICAgICAgdGhpcy51cGRhdGVWYWx1ZSgpXG4gICAgfVxuICB9XG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICBpZiAodGhpcy5faW5zdGFuY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKClcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlXG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Fzc2V0TG9hZGVyOiBBc3NldExvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQ/OiBhbnksXG4gICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIHJlYWRvbmx5IF9uZ0NvbnRyb2w/OiBOZ0NvbnRyb2wsXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5fbmdDb250cm9sID8gdGhpcy5fbmdDb250cm9sLnZhbHVlIDogdGhpcy52YWx1ZSA/PyAnJ1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2luc3RhbmNlLWxvYWRpbmcnLCAnJylcbiAgICBtZXJnZShcbiAgICAgIHRoaXMuX2Fzc2V0TG9hZGVyLmxvYWRTdHlsZVNoZWV0KFRFTF9JTlBVVF9TVFlMRVNIRUVUX1BBVEgpLFxuICAgICAgdGhpcy5fYXNzZXRMb2FkZXIubG9hZFN0eWxlKFRFTF9JTlBVVF9TVFlMRVMpXG4gICAgKS5waXBlKFxuICAgICAgdGFwKHYgPT4gdGhpcy5fbG9hZGVkQXNzZXRSZWZzLnB1c2godikpLFxuICAgICAgbGFzdCgpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgdGhpcy5faW5zdGFuY2UgPSBJbnRsVGVsSW5wdXRGbih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgICAgICB1dGlsc1NjcmlwdDogVEVMX0lOUFVUX1VUSUxTX1BBVEgsXG4gICAgICAgICAgcHJlZmVycmVkQ291bnRyaWVzOiBbICdVUycgXSxcbiAgICAgICAgICBuYXRpb25hbE1vZGU6IGZhbHNlLFxuICAgICAgICAgIGZvcm1hdE9uRGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICBhdXRvUGxhY2Vob2xkZXI6ICdvZmYnLFxuICAgICAgICAgIHNlcGFyYXRlRGlhbENvZGU6IGZhbHNlLFxuICAgICAgICAgIGF1dG9IaWRlRGlhbENvZGU6IGZhbHNlLFxuICAgICAgICAgIC8vIFRPRE86IEFkZCBpbml0aWFsQ291bnRyeSBzdXBwb3J0LlxuICAgICAgICAgIC8vIGluaXRpYWxDb3VudHJ5OiAnYXV0bydcbiAgICAgICAgfSlcblxuICAgICAgICB0aGlzLl90cnlVcGRhdGVEcm9wZG93bkF0dHJpYnV0ZXMoKVxuXG4gICAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZS5wcm9taXNlLnRoZW4odiA9PiB7XG4gICAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnaW5zdGFuY2UtbG9hZGluZycpXG4gICAgICAgICAgcmV0dXJuIHZcbiAgICAgICAgfSlcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+IHRoaXMuX2luaXREcm9wZG93bkxpc3RlbmVyKCkpLFxuICAgICAgdGFwKCgpID0+IHRoaXMudmFsdWUgPSB0aGlzLl92YWx1ZSksXG4gICAgICB0YXAodGhpcy5fZm9ybWF0SW50bFRlbElucHV0KSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBtZXJnZShcbiAgICAgICAgZnJvbUV2ZW50KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleXVwJyksXG4gICAgICAgIGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjaGFuZ2UnKVxuICAgICAgKSksXG4gICAgICB0YXAodGhpcy5fZm9ybWF0SW50bFRlbElucHV0KSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgICkuc3Vic2NyaWJlKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2luc3RhbmNlPy5kZXN0cm95KClcbiAgICBmb3IgKGNvbnN0IHJlZiBvZiB0aGlzLl9sb2FkZWRBc3NldFJlZnMpIHtcbiAgICAgIHJlZi5kZXN0cm95KClcbiAgICB9XG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIHRoaXMuX3RyeVVwZGF0ZURyb3Bkb3duQXR0cmlidXRlcygpXG4gIH1cblxuICBwcml2YXRlIF90cnlVcGRhdGVEcm9wZG93bkF0dHJpYnV0ZXMoKSB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuX25nQ29udHJvbFxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBjb25zdCBmbGFnc0NvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsIHwgdW5kZWZpbmVkID0gKHRoaXMuX2luc3RhbmNlIGFzIGFueSk/LnNlbGVjdGVkRmxhZ1xuICAgICAgaWYgKGZsYWdzQ29udGFpbmVyKSB7XG4gICAgICAgIHRvZ2dsZUF0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ2FyaWEtZGlzYWJsZWQnLCBjb250cm9sLmRpc2FibGVkID8/IGZhbHNlKVxuXG4gICAgICAgIGNvbnN0IGRpc2FibGVkID0gY29udHJvbC5kaXNhYmxlZCA/PyBmYWxzZVxuICAgICAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKGdldEF0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ3RhYmluZGV4JykgIT09ICcwJykge1xuICAgICAgICAgICAgZmxhZ3NDb250YWluZXIuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJylcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGhhc0F0dHJpYnV0ZShmbGFnc0NvbnRhaW5lciwgJ3RhYmluZGV4JykpIHtcbiAgICAgICAgICAgIGZsYWdzQ29udGFpbmVyLnJlbW92ZUF0dHJpYnV0ZSgndGFiaW5kZXgnKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Zvcm1hdEludGxUZWxJbnB1dCA9ICgpID0+IHtcbiAgICAvLyBpZiAodHlwZW9mIGludGxUZWxJbnB1dFV0aWxzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vICAgY29uc3QgY3VycmVudFRleHQgPSB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5JTlRFUk5BVElPTkFMKVxuICAgIC8vICAgY29uc29sZS5sb2coJ2N1cnJlbnRUZXh0JywgY3VycmVudFRleHQsIHRoaXMuX2luc3RhbmNlPy5nZXRTZWxlY3RlZENvdW50cnlEYXRhKCkpXG4gICAgLy8gICBjb25zb2xlLmxvZyh0aGlzLl9pbnN0YW5jZT8uZ2V0VmFsaWRhdGlvbkVycm9yKCkpXG4gICAgLy8gICBpZiAodHlwZW9mIGN1cnJlbnRUZXh0ID09PSAnc3RyaW5nJykge1xuICAgIC8vICAgICB0aGlzLl9pbnN0YW5jZT8uc2V0TnVtYmVyKGN1cnJlbnRUZXh0KVxuICAgIC8vICAgfVxuICAgIC8vIH1cblxuICAgIHRoaXMudXBkYXRlVmFsdWUoKVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVZhbHVlKCk6IHZvaWQge1xuICAgIC8vIGNvbnNvbGUubG9nKCclY3VwZGF0ZVZhbHVlIFNUQVJUJywgJ2NvbG9yOmN5YW4nLCB0eXBlb2YgaW50bFRlbElucHV0VXRpbHMgIT09ICd1bmRlZmluZWQnKVxuICAgIGlmICh0eXBlb2YgZ2xvYmFsSW50bFRlbElucHV0VXRpbHMoKSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRUZXh0ID0gdGhpcy5faW5zdGFuY2U/LmdldE51bWJlcihpbnRsVGVsSW5wdXRVdGlscy5udW1iZXJGb3JtYXQuRTE2NClcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdjdXJyZW50VGV4dCcsIGN1cnJlbnRUZXh0LCB0aGlzLl9pbnN0YW5jZT8uZ2V0U2VsZWN0ZWRDb3VudHJ5RGF0YSgpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ2Z1bGxOdW1iZXInLCAodGhpcy5faW5zdGFuY2UgYXMgYW55KS5fZ2V0RnVsbE51bWJlcigpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ0UxNjQnLCB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5FMTY0KSlcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdJTlRFUk5BVElPTkFMJywgdGhpcy5faW5zdGFuY2U/LmdldE51bWJlcihpbnRsVGVsSW5wdXRVdGlscy5udW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCkpXG4gICAgICAvLyBjb25zb2xlLmxvZygnTkFUSU9OQUwnLCB0aGlzLl9pbnN0YW5jZT8uZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5OQVRJT05BTCkpXG4gICAgICAvLyBjb25zb2xlLmxvZygnUkZDMzk2NicsIHRoaXMuX2luc3RhbmNlPy5nZXROdW1iZXIoaW50bFRlbElucHV0VXRpbHMubnVtYmVyRm9ybWF0LlJGQzM5NjYpKVxuICAgICAgLy8gY29uc29sZS5sb2coJ2dldFZhbGlkYXRpb25FcnJvcicsIHRoaXMuX2luc3RhbmNlPy5nZXRWYWxpZGF0aW9uRXJyb3IoKSlcbiAgICAgIGlmICh0eXBlb2YgY3VycmVudFRleHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRoaXMuX2luc3RhbmNlPy5zZXROdW1iZXIoY3VycmVudFRleHQpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIGNvbnNvbGUubG9nKCclY3VwZGF0ZVZhbHVlIEVORCcsICdjb2xvcjpjeWFuJylcbiAgfVxuXG4gIHB1YmxpYyBnZXRGdWxsTnVtYmVyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgZ2xvYmFsSW50bFRlbElucHV0VXRpbHMoKSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5faW5zdGFuY2UpIHtcbiAgICAgIC8vIHJldHVybiAodGhpcy5faW5zdGFuY2UgYXMgYW55KS5fZ2V0RnVsbE51bWJlcigpXG4gICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2UuZ2V0TnVtYmVyKGludGxUZWxJbnB1dFV0aWxzLm51bWJlckZvcm1hdC5FMTY0KVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy52YWx1ZVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdERyb3Bkb3duTGlzdGVuZXIoKSB7XG4gICAgY29uc3QgZG9jID0gdGhpcy5fZG9jdW1lbnRcbiAgICBpZiAoIWRvYykge1xuICAgICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3Qgb3BlbkRyb3Bkb3duJCA9IGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdvcGVuOmNvdW50cnlkcm9wZG93bicpXG4gICAgICBjb25zdCBjbG9zZURyb3Bkb3duJCA9IGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbG9zZTpjb3VudHJ5ZHJvcGRvd24nKVxuICAgICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLl9pbnN0YW5jZSBhcyBhbnlcbiAgICAgIG9wZW5Ecm9wZG93biQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBwcmVzc0Rvd24kID0gbWVyZ2UoXG4gICAgICAgICAgICBmcm9tRXZlbnQoZG9jLCAndG91Y2hzdGFydCcsIHsgY2FwdHVyZTogdHJ1ZSB9KSxcbiAgICAgICAgICAgIGZyb21FdmVudChkb2MsICdtb3VzZWRvd24nLCB7IGNhcHR1cmU6IHRydWUgfSlcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgICAgICB0YXAoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgaWYgKGluc3RhbmNlLmNvdW50cnlMaXN0LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgfHwgaW5zdGFuY2Uuc2VsZWN0ZWRGbGFnLmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpbnN0YW5jZS5fY2xvc2VEcm9wZG93bigpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcblxuICAgICAgICAgIGNvbnN0IGZsYWdCdG5DbGljayQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oaW5zdGFuY2Uuc2VsZWN0ZWRGbGFnLCAnY2xpY2snKS5waXBlKFxuICAgICAgICAgICAgdGFwKChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNEcm9wZG93blZpc2libGUoKSkge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICBpbnN0YW5jZS5fY2xvc2VEcm9wZG93bigpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcblxuICAgICAgICAgIHJldHVybiBtZXJnZShwcmVzc0Rvd24kLCBmbGFnQnRuQ2xpY2skKS5waXBlKHRha2VVbnRpbChjbG9zZURyb3Bkb3duJCkpXG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICkuc3Vic2NyaWJlKClcblxuICAgICAgY29uc3QgZmxhZ3NDb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCA9ICh0aGlzLl9pbnN0YW5jZSBhcyBhbnkpPy5zZWxlY3RlZEZsYWdcbiAgICAgIGlmIChmbGFnc0NvbnRhaW5lcikge1xuICAgICAgICBmcm9tRXZlbnQoZmxhZ3NDb250YWluZXIsICdrZXlkb3duJywgeyBjYXB0dXJlOiB0cnVlIH0pLnBpcGUoXG4gICAgICAgICAgdGFwKChlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLl9uZ0NvbnRyb2xcbiAgICAgICAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkID0gY29udHJvbC5kaXNhYmxlZCA/PyBmYWxzZVxuICAgICAgICAgICAgICBpZiAoZGlzYWJsZWQgJiYgWydBcnJvd1VwJywgJ1VwJywgJ0Fycm93RG93bicsICdEb3duJywgJyAnLCAnRW50ZXInXS5pbmRleE9mKGUua2V5KSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAvLyBwcmV2ZW50IGZvcm0gZnJvbSBiZWluZyBzdWJtaXR0ZWQgaWYgXCJFTlRFUlwiIHdhcyBwcmVzc2VkXG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgLy8gcHJldmVudCBldmVudCBmcm9tIGJlaW5nIGhhbmRsZWQgYWdhaW4gYnkgZG9jdW1lbnRcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICAgKS5zdWJzY3JpYmUoKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgaXNEcm9wZG93blZpc2libGUoKSB7XG4gICAgaWYgKCF0aGlzLl9pbnN0YW5jZSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLl9pbnN0YW5jZSBhcyBhbnlcbiAgICByZXR1cm4gIWluc3RhbmNlLmNvdW50cnlMaXN0LmNsYXNzTGlzdC5jb250YWlucygnaXRpX19oaWRlJylcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gIH1cblxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmJsdXIoKVxuICB9XG5cbiAgcHVibGljIGdldEhvc3RFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgfVxufVxuIl19
@@ -8,19 +8,19 @@ import { TheSeamTelInputComponent } from './tel-input/tel-input.component';
8
8
  import * as i0 from "@angular/core";
9
9
  export class TheSeamTelInputModule {
10
10
  }
11
- TheSeamTelInputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- TheSeamTelInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputModule, declarations: [TheSeamPhoneNumberPipe], imports: [CommonModule,
11
+ TheSeamTelInputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ TheSeamTelInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputModule, declarations: [TheSeamPhoneNumberPipe], imports: [CommonModule,
13
13
  ReactiveFormsModule,
14
14
  TheSeamFormFieldModule,
15
15
  TheSeamTelInputDirective,
16
16
  TheSeamTelInputComponent], exports: [TheSeamTelInputDirective,
17
17
  TheSeamTelInputComponent,
18
18
  TheSeamPhoneNumberPipe] });
19
- TheSeamTelInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputModule, imports: [CommonModule,
19
+ TheSeamTelInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputModule, imports: [CommonModule,
20
20
  ReactiveFormsModule,
21
21
  TheSeamFormFieldModule,
22
22
  TheSeamTelInputComponent] });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTelInputModule, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTelInputModule, decorators: [{
24
24
  type: NgModule,
25
25
  args: [{
26
26
  declarations: [
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
40
40
  ]
41
41
  }]
42
42
  }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVwRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUV0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFtQjFFLE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixpQkFmOUIsc0JBQXNCLGFBR3RCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLHdCQUF3QjtRQUN4Qix3QkFBd0IsYUFHeEIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixzQkFBc0I7bUhBR2IscUJBQXFCLFlBWjlCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBRXRCLHdCQUF3QjsyRkFRZixxQkFBcUI7a0JBakJqQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLHdCQUF3QjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixzQkFBc0I7cUJBQ3ZCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5cbmltcG9ydCB7IFRoZVNlYW1QaG9uZU51bWJlclBpcGUgfSBmcm9tICcuL3Bob25lLW51bWJlci5waXBlJ1xuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi90ZWwtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi90ZWwtaW5wdXQvdGVsLWlucHV0LmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGhlU2VhbVBob25lTnVtYmVyUGlwZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSxcbiAgICBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUsXG4gICAgVGhlU2VhbVRlbElucHV0Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlLFxuICAgIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCxcbiAgICBUaGVTZWFtUGhvbmVOdW1iZXJQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVRlbElucHV0TW9kdWxlIHsgfVxuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVwRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUV0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFtQjFFLE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixpQkFmOUIsc0JBQXNCLGFBR3RCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLHdCQUF3QjtRQUN4Qix3QkFBd0IsYUFHeEIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixzQkFBc0I7b0hBR2IscUJBQXFCLFlBWjlCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBRXRCLHdCQUF3Qjs0RkFRZixxQkFBcUI7a0JBakJqQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLHdCQUF3QjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixzQkFBc0I7cUJBQ3ZCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5cbmltcG9ydCB7IFRoZVNlYW1QaG9uZU51bWJlclBpcGUgfSBmcm9tICcuL3Bob25lLW51bWJlci5waXBlJ1xuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi90ZWwtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi90ZWwtaW5wdXQvdGVsLWlucHV0LmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGhlU2VhbVBob25lTnVtYmVyUGlwZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVGhlU2VhbUZvcm1GaWVsZE1vZHVsZSxcbiAgICBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmUsXG4gICAgVGhlU2VhbVRlbElucHV0Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlLFxuICAgIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCxcbiAgICBUaGVTZWFtUGhvbmVOdW1iZXJQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVRlbElucHV0TW9kdWxlIHsgfVxuIl19
@@ -149,8 +149,8 @@ export class TheSeamTiledSelectComponent {
149
149
  return (this.overlayTpls || []).find(t => t.record?.name === tile.name);
150
150
  }
151
151
  }
152
- TheSeamTiledSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTiledSelectComponent, deps: [{ token: i1.Platform }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
153
- TheSeamTiledSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamTiledSelectComponent, selector: "seam-tiled-select", inputs: { layout: "layout", tiles: "tiles", val: ["value", "val"], disabled: "disabled", multiple: "multiple", selectionToggleable: "selectionToggleable", tileBackdrop: "tileBackdrop", showSelectedIcon: "showSelectedIcon", animationsDisabled: "animationsDisabled" }, outputs: { change: "change" }, host: { properties: { "attr.data-testid": "\"tiled-select\"" } }, providers: [TILED_SELECT_VALUE_ACCESSOR], queries: [{ propertyName: "overlayTpls", predicate: TiledSelectTileOverlayDirective }], ngImport: i0, template: "<div class=\"tiled-select--container\"\n [class.grid]=\"layout === 'grid'\"\n [class.list]=\"layout === 'list'\"\n [@tiles]=\"tilesAnimationState\"\n [@.disabled]=\"animationsDisabled\">\n <ng-container *ngFor=\"let tile of tiles; let index = index\">\n <div class=\"tile-wrapper\" [ngClass]=\"tile.customClass || ''\">\n <seam-tiled-select-tile\n class=\"tiled-select-tile\"\n [ngClass]=\"tile.customClass || ''\"\n [name]=\"tile.name\"\n [label]=\"tile.label\"\n [icon]=\"tile.icon\"\n [disabled]=\"disabled || tile.disabled\"\n [attr.hidden]=\"tile.hidden\"\n [layout]=\"layout\"\n [selected]=\"isSelected(tile)\"\n [selectable]=\"true\"\n [tileBackdrop]=\"tileBackdrop\"\n [showSelectedIcon]=\"showSelectedIcon\"\n [overlayTpl]=\"getOverlayTpl(tile)\"\n (activated)=\"onTileSelected($event, tile)\"\n [attr.data-tile-index]=\"index\"\n [attr.data-testid]=\"tile.name\">\n </seam-tiled-select-tile>\n </div>\n </ng-container>\n</div>\n", styles: [":host{display:block;width:100%}.tiled-select--container{display:flex;flex-wrap:wrap;justify-content:center}.tiled-select--container.grid{flex-direction:row}.tiled-select--container.grid .tile-wrapper{padding:12px;width:200px;height:180px}.tiled-select--container.grid .tile-wrapper .tiled-select-tile{height:100%}.tiled-select--container.grid .tile-wrapper.other-org{width:auto;height:auto}@media screen and (max-width: 600px){.tiled-select--container.grid .tile-wrapper{padding:6px;width:150px;height:135px}}.tiled-select--container.list{flex-direction:column}.tiled-select--container.list .tile-wrapper{width:100%;height:50px}.tiled-select--container.list .tile-wrapper:not(:last-child){margin-bottom:4px}\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: "component", type: i3.TiledSelectTileComponent, selector: "seam-tiled-select-tile", inputs: ["layout", "name", "label", "icon", "disabled", "selected", "tileBackdrop", "selectable", "grayscaleOnDisable", "showLabel", "showSelectedIcon", "iconClass", "overlayTpl"], outputs: ["activated"] }], animations: [
152
+ TheSeamTiledSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTiledSelectComponent, deps: [{ token: i1.Platform }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
153
+ TheSeamTiledSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamTiledSelectComponent, selector: "seam-tiled-select", inputs: { layout: "layout", tiles: "tiles", val: ["value", "val"], disabled: "disabled", multiple: "multiple", selectionToggleable: "selectionToggleable", tileBackdrop: "tileBackdrop", showSelectedIcon: "showSelectedIcon", animationsDisabled: "animationsDisabled" }, outputs: { change: "change" }, host: { properties: { "attr.data-testid": "\"tiled-select\"" } }, providers: [TILED_SELECT_VALUE_ACCESSOR], queries: [{ propertyName: "overlayTpls", predicate: TiledSelectTileOverlayDirective }], ngImport: i0, template: "<div class=\"tiled-select--container\"\n [class.grid]=\"layout === 'grid'\"\n [class.list]=\"layout === 'list'\"\n [@tiles]=\"tilesAnimationState\"\n [@.disabled]=\"animationsDisabled\">\n <ng-container *ngFor=\"let tile of tiles; let index = index\">\n <div class=\"tile-wrapper\" [ngClass]=\"tile.customClass || ''\">\n <seam-tiled-select-tile\n class=\"tiled-select-tile\"\n [ngClass]=\"tile.customClass || ''\"\n [name]=\"tile.name\"\n [label]=\"tile.label\"\n [icon]=\"tile.icon\"\n [disabled]=\"disabled || tile.disabled\"\n [attr.hidden]=\"tile.hidden\"\n [layout]=\"layout\"\n [selected]=\"isSelected(tile)\"\n [selectable]=\"true\"\n [tileBackdrop]=\"tileBackdrop\"\n [showSelectedIcon]=\"showSelectedIcon\"\n [overlayTpl]=\"getOverlayTpl(tile)\"\n (activated)=\"onTileSelected($event, tile)\"\n [attr.data-tile-index]=\"index\"\n [attr.data-testid]=\"tile.name\">\n </seam-tiled-select-tile>\n </div>\n </ng-container>\n</div>\n", styles: [":host{display:block;width:100%}.tiled-select--container{display:flex;flex-wrap:wrap;justify-content:center}.tiled-select--container.grid{flex-direction:row}.tiled-select--container.grid .tile-wrapper{padding:12px;width:200px;height:180px}.tiled-select--container.grid .tile-wrapper .tiled-select-tile{height:100%}.tiled-select--container.grid .tile-wrapper.other-org{width:auto;height:auto}@media screen and (max-width: 600px){.tiled-select--container.grid .tile-wrapper{padding:6px;width:150px;height:135px}}.tiled-select--container.list{flex-direction:column}.tiled-select--container.list .tile-wrapper{width:100%;height:50px}.tiled-select--container.list .tile-wrapper:not(:last-child){margin-bottom:4px}\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: "component", type: i3.TiledSelectTileComponent, selector: "seam-tiled-select-tile", inputs: ["layout", "name", "label", "icon", "disabled", "selected", "tileBackdrop", "selectable", "grayscaleOnDisable", "showLabel", "showSelectedIcon", "iconClass", "overlayTpl"], outputs: ["activated"] }], animations: [
154
154
  trigger('tiles', [
155
155
  transition('* => *', [
156
156
  query(':enter', useAnimation(slideEnterAnimation), { optional: true })
@@ -175,7 +175,7 @@ __decorate([
175
175
  __decorate([
176
176
  InputBoolean()
177
177
  ], TheSeamTiledSelectComponent.prototype, "animationsDisabled", void 0);
178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamTiledSelectComponent, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamTiledSelectComponent, decorators: [{
179
179
  type: Component,
180
180
  args: [{ selector: 'seam-tiled-select', providers: [TILED_SELECT_VALUE_ACCESSOR], host: {
181
181
  '[attr.data-testid]': '"tiled-select"'
@@ -211,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
211
211
  type: ContentChildren,
212
212
  args: [TiledSelectTileOverlayDirective]
213
213
  }] } });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xILE9BQU8sRUFBZ0IsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFakUsT0FBTyxFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBd0IsTUFBTSxlQUFlLENBQUE7QUFDeEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJeEcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDckQsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUs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VUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs2QkFDdkUsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO2dMQVdRLE1BQU07c0JBQWQsS0FBSztnQkFFRixLQUFLO3NCQURSLEtBQUs7Z0JBOEJVLEdBQUc7c0JBQWxCLEtBQUs7dUJBQUMsT0FBTztnQkFFVyxRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixtQkFBbUI7c0JBQTNDLEtBQUs7Z0JBQ21CLFlBQVk7c0JBQXBDLEtBQUs7Z0JBQ21CLGdCQUFnQjtzQkFBeEMsS0FBSztnQkFDbUIsa0JBQWtCO3NCQUExQyxLQUFLO2dCQUdhLE1BQU07c0JBQXhCLE1BQU07Z0JBUUEsV0FBVztzQkFEakIsZUFBZTt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBhbmltYXRpb24sIHF1ZXJ5LCBzdGFnZ2VyLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSdcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtb3ZlcmxheS5kaXJlY3RpdmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0SXRlbSwgVGlsZWRTZWxlY3RMYXlvdXQgfSBmcm9tICcuLi8uLi90aWxlZC1zZWxlY3QubW9kZWxzJ1xuXG5leHBvcnQgY29uc3Qgc2xpZGVFbnRlckFuaW1hdGlvbiA9IGFuaW1hdGlvbihbXG4gIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTVweCknIH0pLFxuICBzdGFnZ2VyKDEwMCwgW1xuICAgIGFuaW1hdGUoJzAuNXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKVxuICBdKVxuXSlcblxuZXhwb3J0IGNvbnN0IFRJTEVEX1NFTEVDVF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWUsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGlsZWQtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFsgVElMRURfU0VMRUNUX1ZBTFVFX0FDQ0VTU09SIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuZGF0YS10ZXN0aWRdJzogJ1widGlsZWQtc2VsZWN0XCInXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCd0aWxlcycsIFtcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIFtcbiAgICAgICAgcXVlcnkoJzplbnRlcicsIHVzZUFuaW1hdGlvbihzbGlkZUVudGVyQW5pbWF0aW9uKSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuICAgICAgXSlcbiAgICBdKVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtVGlsZWRTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92YWw6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbXVsdGlwbGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2VsZWN0aW9uVG9nZ2xlYWJsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90aWxlQmFja2Ryb3A6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd1NlbGVjdGVkSWNvbjogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9hbmltYXRpb25zRGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuXG4gIEBJbnB1dCgpIGxheW91dDogVGlsZWRTZWxlY3RMYXlvdXQgPSAnZ3JpZCdcbiAgQElucHV0KClcbiAgZ2V0IHRpbGVzKCkgeyByZXR1cm4gdGhpcy5fdGlsZXMgfVxuICBzZXQgdGlsZXModmFsdWU6IFRpbGVkU2VsZWN0SXRlbVtdKSB7XG4gICAgY29uc3QgX3ZhbHVlID0gWyAuLi4odmFsdWUgfHwgW10pIF1cbiAgICBmb3IgKGNvbnN0IHYgb2YgX3ZhbHVlKSB7XG4gICAgICBpZiAodi52YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICh2Lm5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSWYgdmFsdWUgaXMgdW5kZWZpbmVkIHRoZW4gbmFtZSBtdXN0IGJlIGRlZmluZWQuJylcbiAgICAgICAgfVxuICAgICAgICB2LnZhbHVlID0gdi5uYW1lXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcHJldiA9IHRoaXMuX3RpbGVzXG4gICAgaWYgKHByZXYubGVuZ3RoICE9PSBfdmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3QgdCBvZiBfdmFsdWUpIHtcbiAgICAgICAgaWYgKCFwcmV2LmZpbmQocCA9PiBwLm5hbWUgPT09IHQubmFtZSkpIHtcbiAgICAgICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3RpbGVzID0gX3ZhbHVlXG4gIH1cbiAgcHJpdmF0ZSBfdGlsZXM6IFRpbGVkU2VsZWN0SXRlbVtdID0gW11cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3ZhbHVlJykgdmFsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZSA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3Rpb25Ub2dnbGVhYmxlID0gdHJ1ZVxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGlsZUJhY2tkcm9wID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBhbmltYXRpb25zRGlzYWJsZWQ6IGJvb2xlYW4gPSB0aGlzLl9wbGF0Zm9ybS5JT1NcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ+KClcblxuICB0aWxlc0FuaW1hdGlvblN0YXRlID0gZmFsc2VcblxuICBvbkNoYW5nZTogYW55XG4gIG9uVG91Y2hlZDogYW55XG5cbiAgQENvbnRlbnRDaGlsZHJlbihUaWxlZFNlbGVjdFRpbGVPdmVybGF5RGlyZWN0aXZlKVxuICBwdWJsaWMgb3ZlcmxheVRwbHM/OiBRdWVyeUxpc3Q8VGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnZhbFxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudmFsID0gKHRoaXMubXVsdGlwbGUpID8gWyAuLi4odmFsdWUgYXMgc3RyaW5nW10gfHwgW10pIF0gOiB2YWx1ZSB8fCAnJ1xuXG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB0aGlzLnZhbClcblxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsKVxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbClcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBvblRpbGVTZWxlY3RlZChldmVudDogTW91c2VFdmVudCwgdGlsZTogVGlsZWRTZWxlY3RJdGVtKSB7XG4gICAgdGhpcy50b2dnbGVUaWxlU2VsZWN0ZWQodGlsZSlcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKHRpbGU6IFRpbGVkU2VsZWN0SXRlbSkge1xuICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKHRoaXMudmFsdWUgPT09IHRpbGUudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgICAgZm9yIChjb25zdCB2IG9mIHRoaXMudmFsdWUpIHtcbiAgICAgICAgICBpZiAodiA9PT0gdGlsZS52YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVUaWxlU2VsZWN0ZWQodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGlvblRvZ2dsZWFibGUgJiYgdGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICB0aGlzLnVuc2VsZWN0VGlsZSh0aWxlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdFRpbGUodGlsZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0VGlsZSh0aWxlOiBUaWxlZFNlbGVjdEl0ZW0pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKCF0aGlzLmlzU2VsZWN0ZWQodGlsZSkpIHtcbiAgICAgICAgY29uc3QgdmFsdWU6IHN0cmluZ1tdID0gdGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXVxuICAgICAgICB0aGlzLnZhbHVlID0gWyAuLi5jb2VyY2VBcnJheSh2YWx1ZSksIHRpbGUudmFsdWUgXVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGlsZS52YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1bnNlbGVjdFRpbGUodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlOiBzdHJpbmdbXSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nW10gfHwgW11cbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS5maWx0ZXIodiA9PiB2ICE9PSB0aWxlLnZhbHVlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFNlbGVjdGVkVGlsZXMoKTogVGlsZWRTZWxlY3RJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLnRpbGVzLmZpbHRlcih0ID0+IHRoaXMuaXNTZWxlY3RlZCh0KSlcbiAgfVxuXG4gIGdldE92ZXJsYXlUcGwodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogVGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZSB8IHVuZGVmaW5lZCB7XG4gICAgLy8gY29uc29sZS5sb2coJ292ZXJsYXlUcGxzJywgdGhpcy5vdmVybGF5VHBscylcbiAgICByZXR1cm4gKHRoaXMub3ZlcmxheVRwbHMgfHwgW10pLmZpbmQodCA9PiB0LnJlY29yZD8ubmFtZSA9PT0gdGlsZS5uYW1lKVxuICB9XG5cbn1cblxuLyoqIEBkZXByZWNhdGVkIFVzZSBgVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50YC4gKi9cbmV4cG9ydCB0eXBlIFRpbGVkU2VsZWN0Q29tcG9uZW50ID0gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50XG4iLCI8ZGl2IGNsYXNzPVwidGlsZWQtc2VsZWN0LS1jb250YWluZXJcIlxuICBbY2xhc3MuZ3JpZF09XCJsYXlvdXQgPT09ICdncmlkJ1wiXG4gIFtjbGFzcy5saXN0XT1cImxheW91dCA9PT0gJ2xpc3QnXCJcbiAgW0B0aWxlc109XCJ0aWxlc0FuaW1hdGlvblN0YXRlXCJcbiAgW0AuZGlzYWJsZWRdPVwiYW5pbWF0aW9uc0Rpc2FibGVkXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRpbGUgb2YgdGlsZXM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cInRpbGUtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInRpbGUuY3VzdG9tQ2xhc3MgfHwgJydcIj5cbiAgICAgIDxzZWFtLXRpbGVkLXNlbGVjdC10aWxlXG4gICAgICAgIGNsYXNzPVwidGlsZWQtc2VsZWN0LXRpbGVcIlxuICAgICAgICBbbmdDbGFzc109XCJ0aWxlLmN1c3RvbUNsYXNzIHx8ICcnXCJcbiAgICAgICAgW25hbWVdPVwidGlsZS5uYW1lXCJcbiAgICAgICAgW2xhYmVsXT1cInRpbGUubGFiZWxcIlxuICAgICAgICBbaWNvbl09XCJ0aWxlLmljb25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgdGlsZS5kaXNhYmxlZFwiXG4gICAgICAgIFthdHRyLmhpZGRlbl09XCJ0aWxlLmhpZGRlblwiXG4gICAgICAgIFtsYXlvdXRdPVwibGF5b3V0XCJcbiAgICAgICAgW3NlbGVjdGVkXT1cImlzU2VsZWN0ZWQodGlsZSlcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICAgICAgW3RpbGVCYWNrZHJvcF09XCJ0aWxlQmFja2Ryb3BcIlxuICAgICAgICBbc2hvd1NlbGVjdGVkSWNvbl09XCJzaG93U2VsZWN0ZWRJY29uXCJcbiAgICAgICAgW292ZXJsYXlUcGxdPVwiZ2V0T3ZlcmxheVRwbCh0aWxlKVwiXG4gICAgICAgIChhY3RpdmF0ZWQpPVwib25UaWxlU2VsZWN0ZWQoJGV2ZW50LCB0aWxlKVwiXG4gICAgICAgIFthdHRyLmRhdGEtdGlsZS1pbmRleF09XCJpbmRleFwiXG4gICAgICAgIFthdHRyLmRhdGEtdGVzdGlkXT1cInRpbGUubmFtZVwiPlxuICAgICAgPC9zZWFtLXRpbGVkLXNlbGVjdC10aWxlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xILE9BQU8sRUFBZ0IsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFakUsT0FBTyxFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBd0IsTUFBTSxlQUFlLENBQUE7QUFDeEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJeEcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDckQsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUs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VUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs2QkFDdkUsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO2dMQVdRLE1BQU07c0JBQWQsS0FBSztnQkFFRixLQUFLO3NCQURSLEtBQUs7Z0JBOEJVLEdBQUc7c0JBQWxCLEtBQUs7dUJBQUMsT0FBTztnQkFFVyxRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixtQkFBbUI7c0JBQTNDLEtBQUs7Z0JBQ21CLFlBQVk7c0JBQXBDLEtBQUs7Z0JBQ21CLGdCQUFnQjtzQkFBeEMsS0FBSztnQkFDbUIsa0JBQWtCO3NCQUExQyxLQUFLO2dCQUdhLE1BQU07c0JBQXhCLE1BQU07Z0JBUUEsV0FBVztzQkFEakIsZUFBZTt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBhbmltYXRpb24sIHF1ZXJ5LCBzdGFnZ2VyLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSdcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtb3ZlcmxheS5kaXJlY3RpdmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0SXRlbSwgVGlsZWRTZWxlY3RMYXlvdXQgfSBmcm9tICcuLi8uLi90aWxlZC1zZWxlY3QubW9kZWxzJ1xuXG5leHBvcnQgY29uc3Qgc2xpZGVFbnRlckFuaW1hdGlvbiA9IGFuaW1hdGlvbihbXG4gIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTVweCknIH0pLFxuICBzdGFnZ2VyKDEwMCwgW1xuICAgIGFuaW1hdGUoJzAuNXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKVxuICBdKVxuXSlcblxuZXhwb3J0IGNvbnN0IFRJTEVEX1NFTEVDVF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWUsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGlsZWQtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFsgVElMRURfU0VMRUNUX1ZBTFVFX0FDQ0VTU09SIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuZGF0YS10ZXN0aWRdJzogJ1widGlsZWQtc2VsZWN0XCInXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCd0aWxlcycsIFtcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIFtcbiAgICAgICAgcXVlcnkoJzplbnRlcicsIHVzZUFuaW1hdGlvbihzbGlkZUVudGVyQW5pbWF0aW9uKSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuICAgICAgXSlcbiAgICBdKVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtVGlsZWRTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92YWw6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbXVsdGlwbGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2VsZWN0aW9uVG9nZ2xlYWJsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90aWxlQmFja2Ryb3A6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd1NlbGVjdGVkSWNvbjogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9hbmltYXRpb25zRGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuXG4gIEBJbnB1dCgpIGxheW91dDogVGlsZWRTZWxlY3RMYXlvdXQgPSAnZ3JpZCdcbiAgQElucHV0KClcbiAgZ2V0IHRpbGVzKCkgeyByZXR1cm4gdGhpcy5fdGlsZXMgfVxuICBzZXQgdGlsZXModmFsdWU6IFRpbGVkU2VsZWN0SXRlbVtdKSB7XG4gICAgY29uc3QgX3ZhbHVlID0gWyAuLi4odmFsdWUgfHwgW10pIF1cbiAgICBmb3IgKGNvbnN0IHYgb2YgX3ZhbHVlKSB7XG4gICAgICBpZiAodi52YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICh2Lm5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSWYgdmFsdWUgaXMgdW5kZWZpbmVkIHRoZW4gbmFtZSBtdXN0IGJlIGRlZmluZWQuJylcbiAgICAgICAgfVxuICAgICAgICB2LnZhbHVlID0gdi5uYW1lXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcHJldiA9IHRoaXMuX3RpbGVzXG4gICAgaWYgKHByZXYubGVuZ3RoICE9PSBfdmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3QgdCBvZiBfdmFsdWUpIHtcbiAgICAgICAgaWYgKCFwcmV2LmZpbmQocCA9PiBwLm5hbWUgPT09IHQubmFtZSkpIHtcbiAgICAgICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3RpbGVzID0gX3ZhbHVlXG4gIH1cbiAgcHJpdmF0ZSBfdGlsZXM6IFRpbGVkU2VsZWN0SXRlbVtdID0gW11cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3ZhbHVlJykgdmFsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZSA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3Rpb25Ub2dnbGVhYmxlID0gdHJ1ZVxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGlsZUJhY2tkcm9wID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBhbmltYXRpb25zRGlzYWJsZWQ6IGJvb2xlYW4gPSB0aGlzLl9wbGF0Zm9ybS5JT1NcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ+KClcblxuICB0aWxlc0FuaW1hdGlvblN0YXRlID0gZmFsc2VcblxuICBvbkNoYW5nZTogYW55XG4gIG9uVG91Y2hlZDogYW55XG5cbiAgQENvbnRlbnRDaGlsZHJlbihUaWxlZFNlbGVjdFRpbGVPdmVybGF5RGlyZWN0aXZlKVxuICBwdWJsaWMgb3ZlcmxheVRwbHM/OiBRdWVyeUxpc3Q8VGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnZhbFxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudmFsID0gKHRoaXMubXVsdGlwbGUpID8gWyAuLi4odmFsdWUgYXMgc3RyaW5nW10gfHwgW10pIF0gOiB2YWx1ZSB8fCAnJ1xuXG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB0aGlzLnZhbClcblxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsKVxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbClcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBvblRpbGVTZWxlY3RlZChldmVudDogTW91c2VFdmVudCwgdGlsZTogVGlsZWRTZWxlY3RJdGVtKSB7XG4gICAgdGhpcy50b2dnbGVUaWxlU2VsZWN0ZWQodGlsZSlcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKHRpbGU6IFRpbGVkU2VsZWN0SXRlbSkge1xuICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKHRoaXMudmFsdWUgPT09IHRpbGUudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgICAgZm9yIChjb25zdCB2IG9mIHRoaXMudmFsdWUpIHtcbiAgICAgICAgICBpZiAodiA9PT0gdGlsZS52YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVUaWxlU2VsZWN0ZWQodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGlvblRvZ2dsZWFibGUgJiYgdGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICB0aGlzLnVuc2VsZWN0VGlsZSh0aWxlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdFRpbGUodGlsZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0VGlsZSh0aWxlOiBUaWxlZFNlbGVjdEl0ZW0pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKCF0aGlzLmlzU2VsZWN0ZWQodGlsZSkpIHtcbiAgICAgICAgY29uc3QgdmFsdWU6IHN0cmluZ1tdID0gdGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXVxuICAgICAgICB0aGlzLnZhbHVlID0gWyAuLi5jb2VyY2VBcnJheSh2YWx1ZSksIHRpbGUudmFsdWUgXVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGlsZS52YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1bnNlbGVjdFRpbGUodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlOiBzdHJpbmdbXSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nW10gfHwgW11cbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS5maWx0ZXIodiA9PiB2ICE9PSB0aWxlLnZhbHVlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFNlbGVjdGVkVGlsZXMoKTogVGlsZWRTZWxlY3RJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLnRpbGVzLmZpbHRlcih0ID0+IHRoaXMuaXNTZWxlY3RlZCh0KSlcbiAgfVxuXG4gIGdldE92ZXJsYXlUcGwodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogVGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZSB8IHVuZGVmaW5lZCB7XG4gICAgLy8gY29uc29sZS5sb2coJ292ZXJsYXlUcGxzJywgdGhpcy5vdmVybGF5VHBscylcbiAgICByZXR1cm4gKHRoaXMub3ZlcmxheVRwbHMgfHwgW10pLmZpbmQodCA9PiB0LnJlY29yZD8ubmFtZSA9PT0gdGlsZS5uYW1lKVxuICB9XG5cbn1cblxuLyoqIEBkZXByZWNhdGVkIFVzZSBgVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50YC4gKi9cbmV4cG9ydCB0eXBlIFRpbGVkU2VsZWN0Q29tcG9uZW50ID0gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50XG4iLCI8ZGl2IGNsYXNzPVwidGlsZWQtc2VsZWN0LS1jb250YWluZXJcIlxuICBbY2xhc3MuZ3JpZF09XCJsYXlvdXQgPT09ICdncmlkJ1wiXG4gIFtjbGFzcy5saXN0XT1cImxheW91dCA9PT0gJ2xpc3QnXCJcbiAgW0B0aWxlc109XCJ0aWxlc0FuaW1hdGlvblN0YXRlXCJcbiAgW0AuZGlzYWJsZWRdPVwiYW5pbWF0aW9uc0Rpc2FibGVkXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRpbGUgb2YgdGlsZXM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cInRpbGUtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInRpbGUuY3VzdG9tQ2xhc3MgfHwgJydcIj5cbiAgICAgIDxzZWFtLXRpbGVkLXNlbGVjdC10aWxlXG4gICAgICAgIGNsYXNzPVwidGlsZWQtc2VsZWN0LXRpbGVcIlxuICAgICAgICBbbmdDbGFzc109XCJ0aWxlLmN1c3RvbUNsYXNzIHx8ICcnXCJcbiAgICAgICAgW25hbWVdPVwidGlsZS5uYW1lXCJcbiAgICAgICAgW2xhYmVsXT1cInRpbGUubGFiZWxcIlxuICAgICAgICBbaWNvbl09XCJ0aWxlLmljb25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgdGlsZS5kaXNhYmxlZFwiXG4gICAgICAgIFthdHRyLmhpZGRlbl09XCJ0aWxlLmhpZGRlblwiXG4gICAgICAgIFtsYXlvdXRdPVwibGF5b3V0XCJcbiAgICAgICAgW3NlbGVjdGVkXT1cImlzU2VsZWN0ZWQodGlsZSlcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICAgICAgW3RpbGVCYWNrZHJvcF09XCJ0aWxlQmFja2Ryb3BcIlxuICAgICAgICBbc2hvd1NlbGVjdGVkSWNvbl09XCJzaG93U2VsZWN0ZWRJY29uXCJcbiAgICAgICAgW292ZXJsYXlUcGxdPVwiZ2V0T3ZlcmxheVRwbCh0aWxlKVwiXG4gICAgICAgIChhY3RpdmF0ZWQpPVwib25UaWxlU2VsZWN0ZWQoJGV2ZW50LCB0aWxlKVwiXG4gICAgICAgIFthdHRyLmRhdGEtdGlsZS1pbmRleF09XCJpbmRleFwiXG4gICAgICAgIFthdHRyLmRhdGEtdGVzdGlkXT1cInRpbGUubmFtZVwiPlxuICAgICAgPC9zZWFtLXRpbGVkLXNlbGVjdC10aWxlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -62,8 +62,8 @@ export class TiledSelectTileComponent {
62
62
  }, 750);
63
63
  }
64
64
  }
65
- TiledSelectTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TiledSelectTileComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
66
- TiledSelectTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TiledSelectTileComponent, selector: "seam-tiled-select-tile", inputs: { layout: "layout", name: "name", label: "label", icon: "icon", disabled: "disabled", selected: "selected", tileBackdrop: "tileBackdrop", selectable: "selectable", grayscaleOnDisable: "grayscaleOnDisable", showLabel: "showLabel", showSelectedIcon: "showSelectedIcon", iconClass: "iconClass", overlayTpl: "overlayTpl" }, outputs: { activated: "activated" }, host: { properties: { "@pulse": "this.pulseAnimationState", "attr.data-tile-name": "this._tileNameAttr" } }, queries: [{ propertyName: "labelTpl", first: true, predicate: TiledSelectTileLabelTplDirective, descendants: true, static: true }], ngImport: i0, template: "<button\n class=\"btn tiled-select-tile-panel\"\n [disabled]=\"disabled\"\n [class.grid]=\"layout === 'grid'\"\n [class.list]=\"layout === 'list'\"\n [class.selected]=\"selectable && selected\"\n [class.selectable]=\"selectable\"\n [class.no-grayscale]=\"!grayscaleOnDisable\"\n (click)=\"onTileClick($event)\"\n [@pulse]=\"pulsing ? true : false\"\n [attr.data-category]=\"name\"\n [attr.title]=\"showLabel ? '' : label\"\n type=\"button\">\n <div class=\"tiled-select-tile-panel--content\">\n <seam-tiled-select-tile-icon\n class=\"tiled-select-tile-panel--icon\"\n [class.invisible]=\"!icon\"\n [icon]=\"icon\"\n [iconClass]=\"iconClass\"\n [layout]=\"layout\"\n [grayscaleOnDisable]=\"grayscaleOnDisable\"\n [disabled]=\"disabled\">\n </seam-tiled-select-tile-icon>\n <div class=\"tiled-select-tile-panel--label-container\" *ngIf=\"showLabel\">\n <span *ngIf=\"!labelTpl\" class=\"tiled-select-tile-panel--label\">{{ label }}</span>\n <ng-template *ngIf=\"labelTpl\"\n [ngTemplateOutlet]=\"labelTpl.template\"\n [ngTemplateOutletContext]=\"{ $implicit: label, label: label }\">\n </ng-template>\n </div>\n <div *ngIf=\"tileBackdrop\" class=\"selected-backdrop\"\n [class.bg-success]=\"selected\"></div>\n <fa-icon\n *ngIf=\"selected && showSelectedIcon\"\n class=\"tiled-select-tile-panel--selected text-success\"\n [icon]=\"faCheckCircle\"\n size=\"3x\">\n </fa-icon>\n </div>\n <div class=\"tiled-select-tile-panel--overlay\" *ngIf=\"overlayTpl\">\n <ng-template [ngTemplateOutlet]=\"overlayTpl.template\"></ng-template>\n </div>\n</button>\n", styles: [":host{display:block}.tiled-select-tile-panel{width:100%;height:100%;box-sizing:border-box;border:1px solid rgb(230,230,230);background-color:#fff;color:#505050;position:relative;overflow:hidden}.tiled-select-tile-panel:disabled:not(.no-grayscale){filter:grayscale(1)}.tiled-select-tile-panel .grey-fix{visibility:hidden;display:block}.tiled-select-tile-panel.selected{border:1px solid rgb(60,150,200)}.tiled-select-tile-panel.selectable:hover:not(:disabled){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.tiled-select-tile-panel.selectable:focus:not(:disabled){outline:none}.tiled-select-tile-panel:not(.selectable){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.tiled-select-tile-panel .tiled-select-tile-panel--content{display:flex;height:100%;width:100%}.tiled-select-tile-panel .tiled-select-tile-panel--content .tiled-select-tile-panel--selected{position:absolute;top:4px;right:4px}.tiled-select-tile-panel .tiled-select-tile-panel--content .selected-backdrop{opacity:.2;position:absolute;inset:0;border-radius:15px;transition:ease-in-out .2s background-color;pointer-events:none}.tiled-select-tile-panel .tiled-select-tile-panel--overlay{position:absolute;inset:0}.tiled-select-tile-panel.grid{border-radius:15px;padding:0;margin:0}.tiled-select-tile-panel.grid .tiled-select-tile-panel--content{flex-direction:column}.tiled-select-tile-panel.grid .tiled-select-tile-panel--content .selected-backdrop{border-radius:15px}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{flex:0 0 auto;height:2.5em;line-height:1em}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{display:block;font-size:90%;padding:0 1em;white-space:initial}@media screen and (max-width: 600px){.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{height:2rem;line-height:.9em}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{font-size:13px;padding:0 .7em}}.tiled-select-tile-panel.list{border-radius:10px;padding:4px}.tiled-select-tile-panel.list .tiled-select-tile-panel--content{flex-direction:row}.tiled-select-tile-panel.list .tiled-select-tile-panel--content .selected-backdrop{border-radius:10px}.tiled-select-tile-panel.list .tiled-select-tile-panel--label-container{display:flex;max-height:100%;flex-direction:column;padding-right:40px}.tiled-select-tile-panel.list .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{padding:0 6px;text-align:left;margin:auto 0;font-size:80%;white-space:initial}.tiled-select-tile-panel.list .tiled-select-tile-panel--selected ::ng-deep .svg-inline--fa{height:39px}:host(.other-org) .tiled-select-tile-panel.grid{border:0}:host(.other-org) .tiled-select-tile-panel.grid.selectable:hover:not(:disabled){box-shadow:0 0}:host(.other-org) .tiled-select-tile-panel.grid.selectable:hover:not(:disabled) .tiled-select-tile-panel--label-container{text-decoration:underline}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--icon,:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--selected.text-success{display:none}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{height:auto;color:#357ebd}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--label{padding:.5rem 1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["classes", "icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "component", type: i3.TiledSelectTileIconComponent, selector: "seam-tiled-select-tile-icon", inputs: ["layout", "grayscaleOnDisable", "disabled", "iconClass", "icon"] }], animations: [
65
+ TiledSelectTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TiledSelectTileComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
66
+ TiledSelectTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TiledSelectTileComponent, selector: "seam-tiled-select-tile", inputs: { layout: "layout", name: "name", label: "label", icon: "icon", disabled: "disabled", selected: "selected", tileBackdrop: "tileBackdrop", selectable: "selectable", grayscaleOnDisable: "grayscaleOnDisable", showLabel: "showLabel", showSelectedIcon: "showSelectedIcon", iconClass: "iconClass", overlayTpl: "overlayTpl" }, outputs: { activated: "activated" }, host: { properties: { "@pulse": "this.pulseAnimationState", "attr.data-tile-name": "this._tileNameAttr" } }, queries: [{ propertyName: "labelTpl", first: true, predicate: TiledSelectTileLabelTplDirective, descendants: true, static: true }], ngImport: i0, template: "<button\n class=\"btn tiled-select-tile-panel\"\n [disabled]=\"disabled\"\n [class.grid]=\"layout === 'grid'\"\n [class.list]=\"layout === 'list'\"\n [class.selected]=\"selectable && selected\"\n [class.selectable]=\"selectable\"\n [class.no-grayscale]=\"!grayscaleOnDisable\"\n (click)=\"onTileClick($event)\"\n [@pulse]=\"pulsing ? true : false\"\n [attr.data-category]=\"name\"\n [attr.title]=\"showLabel ? '' : label\"\n type=\"button\">\n <div class=\"tiled-select-tile-panel--content\">\n <seam-tiled-select-tile-icon\n class=\"tiled-select-tile-panel--icon\"\n [class.invisible]=\"!icon\"\n [icon]=\"icon\"\n [iconClass]=\"iconClass\"\n [layout]=\"layout\"\n [grayscaleOnDisable]=\"grayscaleOnDisable\"\n [disabled]=\"disabled\">\n </seam-tiled-select-tile-icon>\n <div class=\"tiled-select-tile-panel--label-container\" *ngIf=\"showLabel\">\n <span *ngIf=\"!labelTpl\" class=\"tiled-select-tile-panel--label\">{{ label }}</span>\n <ng-template *ngIf=\"labelTpl\"\n [ngTemplateOutlet]=\"labelTpl.template\"\n [ngTemplateOutletContext]=\"{ $implicit: label, label: label }\">\n </ng-template>\n </div>\n <div *ngIf=\"tileBackdrop\" class=\"selected-backdrop\"\n [class.bg-success]=\"selected\"></div>\n <fa-icon\n *ngIf=\"selected && showSelectedIcon\"\n class=\"tiled-select-tile-panel--selected text-success\"\n [icon]=\"faCheckCircle\"\n size=\"3x\">\n </fa-icon>\n </div>\n <div class=\"tiled-select-tile-panel--overlay\" *ngIf=\"overlayTpl\">\n <ng-template [ngTemplateOutlet]=\"overlayTpl.template\"></ng-template>\n </div>\n</button>\n", styles: [":host{display:block}.tiled-select-tile-panel{width:100%;height:100%;box-sizing:border-box;border:1px solid rgb(230,230,230);background-color:#fff;color:#505050;position:relative;overflow:hidden}.tiled-select-tile-panel:disabled:not(.no-grayscale){filter:grayscale(1)}.tiled-select-tile-panel .grey-fix{visibility:hidden;display:block}.tiled-select-tile-panel.selected{border:1px solid rgb(60,150,200)}.tiled-select-tile-panel.selectable:hover:not(:disabled){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.tiled-select-tile-panel.selectable:focus:not(:disabled){outline:none}.tiled-select-tile-panel:not(.selectable){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.tiled-select-tile-panel .tiled-select-tile-panel--content{display:flex;height:100%;width:100%}.tiled-select-tile-panel .tiled-select-tile-panel--content .tiled-select-tile-panel--selected{position:absolute;top:4px;right:4px}.tiled-select-tile-panel .tiled-select-tile-panel--content .selected-backdrop{opacity:.2;position:absolute;inset:0;border-radius:15px;transition:ease-in-out .2s background-color;pointer-events:none}.tiled-select-tile-panel .tiled-select-tile-panel--overlay{position:absolute;inset:0}.tiled-select-tile-panel.grid{border-radius:15px;padding:0;margin:0}.tiled-select-tile-panel.grid .tiled-select-tile-panel--content{flex-direction:column}.tiled-select-tile-panel.grid .tiled-select-tile-panel--content .selected-backdrop{border-radius:15px}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{flex:0 0 auto;height:2.5em;line-height:1em}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{display:block;font-size:90%;padding:0 1em;white-space:initial}@media screen and (max-width: 600px){.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{height:2rem;line-height:.9em}.tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{font-size:13px;padding:0 .7em}}.tiled-select-tile-panel.list{border-radius:10px;padding:4px}.tiled-select-tile-panel.list .tiled-select-tile-panel--content{flex-direction:row}.tiled-select-tile-panel.list .tiled-select-tile-panel--content .selected-backdrop{border-radius:10px}.tiled-select-tile-panel.list .tiled-select-tile-panel--label-container{display:flex;max-height:100%;flex-direction:column;padding-right:40px}.tiled-select-tile-panel.list .tiled-select-tile-panel--label-container .tiled-select-tile-panel--label{padding:0 6px;text-align:left;margin:auto 0;font-size:80%;white-space:initial}.tiled-select-tile-panel.list .tiled-select-tile-panel--selected ::ng-deep .svg-inline--fa{height:39px}:host(.other-org) .tiled-select-tile-panel.grid{border:0}:host(.other-org) .tiled-select-tile-panel.grid.selectable:hover:not(:disabled){box-shadow:0 0}:host(.other-org) .tiled-select-tile-panel.grid.selectable:hover:not(:disabled) .tiled-select-tile-panel--label-container{text-decoration:underline}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--icon,:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--selected.text-success{display:none}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--label-container{height:auto;color:#357ebd}:host(.other-org) .tiled-select-tile-panel.grid .tiled-select-tile-panel--label{padding:.5rem 1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["classes", "icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "component", type: i3.TiledSelectTileIconComponent, selector: "seam-tiled-select-tile-icon", inputs: ["layout", "grayscaleOnDisable", "disabled", "iconClass", "icon"] }], animations: [
67
67
  trigger('pulse', [
68
68
  transition('false => true', [
69
69
  useAnimation(tilePulse)
@@ -100,7 +100,7 @@ __decorate([
100
100
  __decorate([
101
101
  InputBoolean()
102
102
  ], TiledSelectTileComponent.prototype, "showSelectedIcon", void 0);
103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TiledSelectTileComponent, decorators: [{
103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TiledSelectTileComponent, decorators: [{
104
104
  type: Component,
105
105
  args: [{ selector: 'seam-tiled-select-tile', animations: [
106
106
  trigger('pulse', [
@@ -156,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
156
156
  type: ContentChild,
157
157
  args: [TiledSelectTileLabelTplDirective, { static: true }]
158
158
  }] } });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RpbGVkLXNlbGVjdC9jb21wb25lbnRzL3RpbGVkLXNlbGVjdC10aWxlL3RpbGVkLXNlbGVjdC10aWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QtdGlsZS90aWxlZC1zZWxlY3QtdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRTdHLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFcEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBRW5FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUd0RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJekcsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FDaEMsT0FBTyxDQUNMLDRCQUE0QixFQUM1QixTQUFTLENBQUM7SUFDUixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztJQUN4QyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0RBQWdELEVBQUUsQ0FBQztJQUN0RSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztDQUN6QyxDQUFDLENBQ0gsRUFDRCxF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QUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNO2dCQUUyRCxRQUFRO3NCQUF6RSxZQUFZO3VCQUFDLGdDQUFnQyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIGFuaW1hdGlvbiwga2V5ZnJhbWVzLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IGZhQ2hlY2tDaXJjbGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1yZWd1bGFyLXN2Zy1pY29ucydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBTZWFtSWNvbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9pY29uJ1xuXG5pbXBvcnQgeyBUaWxlZFNlbGVjdFRpbGVMYWJlbFRwbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtbGFiZWwtdHBsLmRpcmVjdGl2ZSdcbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3RpbGVkLXNlbGVjdC10aWxlLW92ZXJsYXkuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgVGlsZWRTZWxlY3RMYXlvdXQgfSBmcm9tICcuLi8uLi90aWxlZC1zZWxlY3QubW9kZWxzJ1xuXG5leHBvcnQgY29uc3QgdGlsZVB1bHNlID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCgxLCAxLCAxKScgfSksXG4gICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3NjYWxlM2Qoe3sgc2NhbGUgfX0sIHt7IHNjYWxlIH19LCB7eyBzY2FsZSB9fSknIH0pLFxuICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZTNkKDEsIDEsIDEpJyB9KSxcbiAgICBdKVxuICApLFxuICB7IHBhcmFtczogeyBzY2FsZTogMS4wNSwgdGltaW5nOiAwLjc1LCBkZWxheTogMCB9IH1cbilcblxuZXhwb3J0IGNvbnN0IHRpbGVTY2FsZVVwID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCh7eyBzY2FsZSB9fSwge3sgc2NhbGUgfX0sIHt7IHNjYWxlIH19KScgfSksXG4gICAgXSlcbiAgKSxcbiAgeyBwYXJhbXM6IHsgc2NhbGU6IDEuMDUsIHRpbWluZzogMC43NSwgZGVsYXk6IDAgfSB9XG4pXG5cbmV4cG9ydCBjb25zdCB0aWxlU2NhbGVEb3duID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCgxLCAxLCAxKScgfSksXG4gICAgXSlcbiAgKSxcbiAgeyBwYXJhbXM6IHsgc2NhbGU6IDEuMDUsIHRpbWluZzogMC43NSwgZGVsYXk6IDAgfSB9XG4pXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGlsZWQtc2VsZWN0LXRpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGlsZWQtc2VsZWN0LXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aWxlZC1zZWxlY3QtdGlsZS5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigncHVsc2UnLCBbXG4gICAgICB0cmFuc2l0aW9uKCdmYWxzZSA9PiB0cnVlJywgW1xuICAgICAgICB1c2VBbmltYXRpb24odGlsZVB1bHNlKVxuICAgICAgICAvLyB1c2VBbmltYXRpb24odGlsZVNjYWxlVXApXG4gICAgICBdKSxcbiAgICAgIC8vIHRyYW5zaXRpb24oJ3RydWUgPT4gZmFsc2UnLCBbXG4gICAgICAvLyAgIHVzZUFuaW1hdGlvbih0aWxlU2NhbGVEb3duKVxuICAgICAgLy8gXSlcbiAgICBdKSxcbiAgICAvLyB0cmlnZ2VyKCdvcGVuQ2xvc2UnLCBbXG4gICAgLy8gICBzdGF0ZSgndHJ1ZScsIHN0eWxlKHsgaGVpZ2h0OiAnKicgfSkpLFxuICAgIC8vICAgc3RhdGUoJ2ZhbHNlJywgc3R5bGUoeyBoZWlnaHQ6ICcwcHgnIH0pKSxcbiAgICAvLyAgIHRyYW5zaXRpb24oJ2ZhbHNlIDw9PiB0cnVlJywgYW5pbWF0ZSg1MDApKVxuICAgIC8vIF0pXG4gIF0sXG4gIC8vIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVkU2VsZWN0VGlsZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zZWxlY3RlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90aWxlQmFja2Ryb3A6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2VsZWN0YWJsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9ncmF5c2NhbGVPbkRpc2FibGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd0xhYmVsOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Nob3dTZWxlY3RlZEljb246IEJvb2xlYW5JbnB1dFxuXG4gIGZhQ2hlY2tDaXJjbGUgPSBmYUNoZWNrQ2lyY2xlXG5cbiAgQEhvc3RCaW5kaW5nKCdAcHVsc2UnKSBwdWxzZUFuaW1hdGlvblN0YXRlID0gdHJ1ZVxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS10aWxlLW5hbWUnKSBnZXQgX3RpbGVOYW1lQXR0cigpIHsgcmV0dXJuIHRoaXMubmFtZSB9XG5cbiAgQElucHV0KCkgbGF5b3V0OiBUaWxlZFNlbGVjdExheW91dCA9ICdncmlkJ1xuXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgQElucHV0KCkgaWNvbjogU2VhbUljb24gfCB1bmRlZmluZWQgfCBudWxsXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3RlZCA9IGZhbHNlXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHRpbGVCYWNrZHJvcCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3RhYmxlID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGdyYXlzY2FsZU9uRGlzYWJsZSA9IHRydWVcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dMYWJlbCA9IHRydWVcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG5cbiAgQElucHV0KCkgaWNvbkNsYXNzOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgQElucHV0KCkgb3ZlcmxheVRwbDogVGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZSB8IHVuZGVmaW5lZCB8IG51bGxcblxuICBAT3V0cHV0KCkgYWN0aXZhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcblxuICBAQ29udGVudENoaWxkKFRpbGVkU2VsZWN0VGlsZUxhYmVsVHBsRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBsYWJlbFRwbD86IFRpbGVkU2VsZWN0VGlsZUxhYmVsVHBsRGlyZWN0aXZlXG5cbiAgcHVsc2luZyA9IGZhbHNlXG4gIHB1bHNpbmdUaW1lb3V0OiBudW1iZXIgfCB1bmRlZmluZWRcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICBvblRpbGVDbGljayhldmVudDogYW55KSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGFibGUpIHsgcmV0dXJuIH1cbiAgICB0aGlzLmFjdGl2YXRlZC5lbWl0KGV2ZW50KVxuXG4gICAgLy8gdGhpcy5wdWxzaW5nID0gdHJ1ZVxuICAgIC8vIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vICAgdGhpcy5wdWxzaW5nID0gZmFsc2VcbiAgICAvLyB9LCA3NTApXG4gIH1cblxuICBtRG93bigpIHtcbiAgICBpZiAodGhpcy5wdWxzaW5nVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucHVsc2luZ1RpbWVvdXQpXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnB1bHNpbmcpIHtcbiAgICAgIHRoaXMucHVsc2luZyA9IHRydWVcbiAgICAgIC8vIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKCdzdGFydCcpXG4gICAgdGhpcy5wdWxzaW5nVGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucHVsc2luZyA9IGZhbHNlXG4gICAgICAvLyB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICAgIHRoaXMucHVsc2luZ1RpbWVvdXQgPSB1bmRlZmluZWRcbiAgICB9LCA3NTApXG4gIH1cblxufVxuIiwiPGJ1dHRvblxuICBjbGFzcz1cImJ0biB0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbFwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5ncmlkXT1cImxheW91dCA9PT0gJ2dyaWQnXCJcbiAgW2NsYXNzLmxpc3RdPVwibGF5b3V0ID09PSAnbGlzdCdcIlxuICBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0YWJsZSAmJiBzZWxlY3RlZFwiXG4gIFtjbGFzcy5zZWxlY3RhYmxlXT1cInNlbGVjdGFibGVcIlxuICBbY2xhc3Mubm8tZ3JheXNjYWxlXT1cIiFncmF5c2NhbGVPbkRpc2FibGVcIlxuICAoY2xpY2spPVwib25UaWxlQ2xpY2soJGV2ZW50KVwiXG4gIFtAcHVsc2VdPVwicHVsc2luZyA/IHRydWUgOiBmYWxzZVwiXG4gIFthdHRyLmRhdGEtY2F0ZWdvcnldPVwibmFtZVwiXG4gIFthdHRyLnRpdGxlXT1cInNob3dMYWJlbCA/ICcnIDogbGFiZWxcIlxuICB0eXBlPVwiYnV0dG9uXCI+XG4gIDxkaXYgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tY29udGVudFwiPlxuICAgIDxzZWFtLXRpbGVkLXNlbGVjdC10aWxlLWljb25cbiAgICAgIGNsYXNzPVwidGlsZWQtc2VsZWN0LXRpbGUtcGFuZWwtLWljb25cIlxuICAgICAgW2NsYXNzLmludmlzaWJsZV09XCIhaWNvblwiXG4gICAgICBbaWNvbl09XCJpY29uXCJcbiAgICAgIFtpY29uQ2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgIFtsYXlvdXRdPVwibGF5b3V0XCJcbiAgICAgIFtncmF5c2NhbGVPbkRpc2FibGVdPVwiZ3JheXNjYWxlT25EaXNhYmxlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgIDwvc2VhbS10aWxlZC1zZWxlY3QtdGlsZS1pY29uPlxuICAgIDxkaXYgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tbGFiZWwtY29udGFpbmVyXCIgKm5nSWY9XCJzaG93TGFiZWxcIj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiIWxhYmVsVHBsXCIgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tbGFiZWxcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cImxhYmVsVHBsXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxUcGwudGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGxhYmVsLCBsYWJlbDogbGFiZWwgfVwiPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidGlsZUJhY2tkcm9wXCIgY2xhc3M9XCJzZWxlY3RlZC1iYWNrZHJvcFwiXG4gICAgICBbY2xhc3MuYmctc3VjY2Vzc109XCJzZWxlY3RlZFwiPjwvZGl2PlxuICAgIDxmYS1pY29uXG4gICAgICAqbmdJZj1cInNlbGVjdGVkICYmIHNob3dTZWxlY3RlZEljb25cIlxuICAgICAgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tc2VsZWN0ZWQgdGV4dC1zdWNjZXNzXCJcbiAgICAgIFtpY29uXT1cImZhQ2hlY2tDaXJjbGVcIlxuICAgICAgc2l6ZT1cIjN4XCI+XG4gICAgPC9mYS1pY29uPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInRpbGVkLXNlbGVjdC10aWxlLXBhbmVsLS1vdmVybGF5XCIgKm5nSWY9XCJvdmVybGF5VHBsXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm92ZXJsYXlUcGwudGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvYnV0dG9uPlxuIl19
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RpbGVkLXNlbGVjdC9jb21wb25lbnRzL3RpbGVkLXNlbGVjdC10aWxlL3RpbGVkLXNlbGVjdC10aWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QtdGlsZS90aWxlZC1zZWxlY3QtdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRTdHLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFcEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBRW5FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUd0RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJekcsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FDaEMsT0FBTyxDQUNMLDRCQUE0QixFQUM1QixTQUFTLENBQUM7SUFDUixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztJQUN4QyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0RBQWdELEVBQUUsQ0FBQztJQUN0RSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztDQUN6QyxDQUFDLENBQ0gsRUFDRCxF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QUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNO2dCQUUyRCxRQUFRO3NCQUF6RSxZQUFZO3VCQUFDLGdDQUFnQyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIGFuaW1hdGlvbiwga2V5ZnJhbWVzLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IGZhQ2hlY2tDaXJjbGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1yZWd1bGFyLXN2Zy1pY29ucydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBTZWFtSWNvbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9pY29uJ1xuXG5pbXBvcnQgeyBUaWxlZFNlbGVjdFRpbGVMYWJlbFRwbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtbGFiZWwtdHBsLmRpcmVjdGl2ZSdcbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3RpbGVkLXNlbGVjdC10aWxlLW92ZXJsYXkuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgVGlsZWRTZWxlY3RMYXlvdXQgfSBmcm9tICcuLi8uLi90aWxlZC1zZWxlY3QubW9kZWxzJ1xuXG5leHBvcnQgY29uc3QgdGlsZVB1bHNlID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCgxLCAxLCAxKScgfSksXG4gICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3NjYWxlM2Qoe3sgc2NhbGUgfX0sIHt7IHNjYWxlIH19LCB7eyBzY2FsZSB9fSknIH0pLFxuICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZTNkKDEsIDEsIDEpJyB9KSxcbiAgICBdKVxuICApLFxuICB7IHBhcmFtczogeyBzY2FsZTogMS4wNSwgdGltaW5nOiAwLjc1LCBkZWxheTogMCB9IH1cbilcblxuZXhwb3J0IGNvbnN0IHRpbGVTY2FsZVVwID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCh7eyBzY2FsZSB9fSwge3sgc2NhbGUgfX0sIHt7IHNjYWxlIH19KScgfSksXG4gICAgXSlcbiAgKSxcbiAgeyBwYXJhbXM6IHsgc2NhbGU6IDEuMDUsIHRpbWluZzogMC43NSwgZGVsYXk6IDAgfSB9XG4pXG5cbmV4cG9ydCBjb25zdCB0aWxlU2NhbGVEb3duID0gYW5pbWF0aW9uKFxuICBhbmltYXRlKFxuICAgICd7eyB0aW1pbmcgfX1zIHt7IGRlbGF5IH19cycsXG4gICAga2V5ZnJhbWVzKFtcbiAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUzZCgxLCAxLCAxKScgfSksXG4gICAgXSlcbiAgKSxcbiAgeyBwYXJhbXM6IHsgc2NhbGU6IDEuMDUsIHRpbWluZzogMC43NSwgZGVsYXk6IDAgfSB9XG4pXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGlsZWQtc2VsZWN0LXRpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGlsZWQtc2VsZWN0LXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aWxlZC1zZWxlY3QtdGlsZS5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigncHVsc2UnLCBbXG4gICAgICB0cmFuc2l0aW9uKCdmYWxzZSA9PiB0cnVlJywgW1xuICAgICAgICB1c2VBbmltYXRpb24odGlsZVB1bHNlKVxuICAgICAgICAvLyB1c2VBbmltYXRpb24odGlsZVNjYWxlVXApXG4gICAgICBdKSxcbiAgICAgIC8vIHRyYW5zaXRpb24oJ3RydWUgPT4gZmFsc2UnLCBbXG4gICAgICAvLyAgIHVzZUFuaW1hdGlvbih0aWxlU2NhbGVEb3duKVxuICAgICAgLy8gXSlcbiAgICBdKSxcbiAgICAvLyB0cmlnZ2VyKCdvcGVuQ2xvc2UnLCBbXG4gICAgLy8gICBzdGF0ZSgndHJ1ZScsIHN0eWxlKHsgaGVpZ2h0OiAnKicgfSkpLFxuICAgIC8vICAgc3RhdGUoJ2ZhbHNlJywgc3R5bGUoeyBoZWlnaHQ6ICcwcHgnIH0pKSxcbiAgICAvLyAgIHRyYW5zaXRpb24oJ2ZhbHNlIDw9PiB0cnVlJywgYW5pbWF0ZSg1MDApKVxuICAgIC8vIF0pXG4gIF0sXG4gIC8vIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVkU2VsZWN0VGlsZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zZWxlY3RlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90aWxlQmFja2Ryb3A6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2VsZWN0YWJsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9ncmF5c2NhbGVPbkRpc2FibGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd0xhYmVsOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Nob3dTZWxlY3RlZEljb246IEJvb2xlYW5JbnB1dFxuXG4gIGZhQ2hlY2tDaXJjbGUgPSBmYUNoZWNrQ2lyY2xlXG5cbiAgQEhvc3RCaW5kaW5nKCdAcHVsc2UnKSBwdWxzZUFuaW1hdGlvblN0YXRlID0gdHJ1ZVxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS10aWxlLW5hbWUnKSBnZXQgX3RpbGVOYW1lQXR0cigpIHsgcmV0dXJuIHRoaXMubmFtZSB9XG5cbiAgQElucHV0KCkgbGF5b3V0OiBUaWxlZFNlbGVjdExheW91dCA9ICdncmlkJ1xuXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgQElucHV0KCkgaWNvbjogU2VhbUljb24gfCB1bmRlZmluZWQgfCBudWxsXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3RlZCA9IGZhbHNlXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHRpbGVCYWNrZHJvcCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3RhYmxlID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGdyYXlzY2FsZU9uRGlzYWJsZSA9IHRydWVcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dMYWJlbCA9IHRydWVcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG5cbiAgQElucHV0KCkgaWNvbkNsYXNzOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgQElucHV0KCkgb3ZlcmxheVRwbDogVGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZSB8IHVuZGVmaW5lZCB8IG51bGxcblxuICBAT3V0cHV0KCkgYWN0aXZhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcblxuICBAQ29udGVudENoaWxkKFRpbGVkU2VsZWN0VGlsZUxhYmVsVHBsRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBsYWJlbFRwbD86IFRpbGVkU2VsZWN0VGlsZUxhYmVsVHBsRGlyZWN0aXZlXG5cbiAgcHVsc2luZyA9IGZhbHNlXG4gIHB1bHNpbmdUaW1lb3V0OiBudW1iZXIgfCB1bmRlZmluZWRcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICBvblRpbGVDbGljayhldmVudDogYW55KSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGFibGUpIHsgcmV0dXJuIH1cbiAgICB0aGlzLmFjdGl2YXRlZC5lbWl0KGV2ZW50KVxuXG4gICAgLy8gdGhpcy5wdWxzaW5nID0gdHJ1ZVxuICAgIC8vIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vICAgdGhpcy5wdWxzaW5nID0gZmFsc2VcbiAgICAvLyB9LCA3NTApXG4gIH1cblxuICBtRG93bigpIHtcbiAgICBpZiAodGhpcy5wdWxzaW5nVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucHVsc2luZ1RpbWVvdXQpXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnB1bHNpbmcpIHtcbiAgICAgIHRoaXMucHVsc2luZyA9IHRydWVcbiAgICAgIC8vIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKCdzdGFydCcpXG4gICAgdGhpcy5wdWxzaW5nVGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucHVsc2luZyA9IGZhbHNlXG4gICAgICAvLyB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICAgIHRoaXMucHVsc2luZ1RpbWVvdXQgPSB1bmRlZmluZWRcbiAgICB9LCA3NTApXG4gIH1cblxufVxuIiwiPGJ1dHRvblxuICBjbGFzcz1cImJ0biB0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbFwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5ncmlkXT1cImxheW91dCA9PT0gJ2dyaWQnXCJcbiAgW2NsYXNzLmxpc3RdPVwibGF5b3V0ID09PSAnbGlzdCdcIlxuICBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0YWJsZSAmJiBzZWxlY3RlZFwiXG4gIFtjbGFzcy5zZWxlY3RhYmxlXT1cInNlbGVjdGFibGVcIlxuICBbY2xhc3Mubm8tZ3JheXNjYWxlXT1cIiFncmF5c2NhbGVPbkRpc2FibGVcIlxuICAoY2xpY2spPVwib25UaWxlQ2xpY2soJGV2ZW50KVwiXG4gIFtAcHVsc2VdPVwicHVsc2luZyA/IHRydWUgOiBmYWxzZVwiXG4gIFthdHRyLmRhdGEtY2F0ZWdvcnldPVwibmFtZVwiXG4gIFthdHRyLnRpdGxlXT1cInNob3dMYWJlbCA/ICcnIDogbGFiZWxcIlxuICB0eXBlPVwiYnV0dG9uXCI+XG4gIDxkaXYgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tY29udGVudFwiPlxuICAgIDxzZWFtLXRpbGVkLXNlbGVjdC10aWxlLWljb25cbiAgICAgIGNsYXNzPVwidGlsZWQtc2VsZWN0LXRpbGUtcGFuZWwtLWljb25cIlxuICAgICAgW2NsYXNzLmludmlzaWJsZV09XCIhaWNvblwiXG4gICAgICBbaWNvbl09XCJpY29uXCJcbiAgICAgIFtpY29uQ2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgIFtsYXlvdXRdPVwibGF5b3V0XCJcbiAgICAgIFtncmF5c2NhbGVPbkRpc2FibGVdPVwiZ3JheXNjYWxlT25EaXNhYmxlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgIDwvc2VhbS10aWxlZC1zZWxlY3QtdGlsZS1pY29uPlxuICAgIDxkaXYgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tbGFiZWwtY29udGFpbmVyXCIgKm5nSWY9XCJzaG93TGFiZWxcIj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiIWxhYmVsVHBsXCIgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tbGFiZWxcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cImxhYmVsVHBsXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxUcGwudGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGxhYmVsLCBsYWJlbDogbGFiZWwgfVwiPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidGlsZUJhY2tkcm9wXCIgY2xhc3M9XCJzZWxlY3RlZC1iYWNrZHJvcFwiXG4gICAgICBbY2xhc3MuYmctc3VjY2Vzc109XCJzZWxlY3RlZFwiPjwvZGl2PlxuICAgIDxmYS1pY29uXG4gICAgICAqbmdJZj1cInNlbGVjdGVkICYmIHNob3dTZWxlY3RlZEljb25cIlxuICAgICAgY2xhc3M9XCJ0aWxlZC1zZWxlY3QtdGlsZS1wYW5lbC0tc2VsZWN0ZWQgdGV4dC1zdWNjZXNzXCJcbiAgICAgIFtpY29uXT1cImZhQ2hlY2tDaXJjbGVcIlxuICAgICAgc2l6ZT1cIjN4XCI+XG4gICAgPC9mYS1pY29uPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInRpbGVkLXNlbGVjdC10aWxlLXBhbmVsLS1vdmVybGF5XCIgKm5nSWY9XCJvdmVybGF5VHBsXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm92ZXJsYXlUcGwudGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvYnV0dG9uPlxuIl19