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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (656) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +1 -3
  2. package/card/card-body/card-body.component.d.ts +2 -4
  3. package/card/card-footer/card-footer.component.d.ts +1 -4
  4. package/card/card-header/card-header.component.d.ts +1 -4
  5. package/card/card.component.d.ts +1 -4
  6. package/carousel/carousel-slide.directive.d.ts +8 -0
  7. package/carousel/carousel.component.d.ts +85 -0
  8. package/carousel/carousel.module.d.ts +11 -0
  9. package/carousel/index.d.ts +5 -0
  10. package/carousel/public-api.d.ts +3 -0
  11. package/checkbox/checkbox.component.d.ts +2 -4
  12. package/core/common-behaviors/active.d.ts +1 -1
  13. package/core/common-behaviors/disabled.d.ts +1 -1
  14. package/core/common-behaviors/initialized.d.ts +1 -1
  15. package/data-filters/data-filter.d.ts +1 -1
  16. package/datatable/datatable-column/datatable-column.component.d.ts +2 -3
  17. package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +1 -3
  18. package/datatable/datatable-export-button/datatable-export-button.component.d.ts +1 -3
  19. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -5
  20. package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +1 -4
  21. package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +1 -4
  22. package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +1 -4
  23. package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +1 -4
  24. package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +1 -3
  25. package/datatable/directives/datatable-action-menu-item.directive.d.ts +2 -4
  26. package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +1 -3
  27. package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +3 -4
  28. package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +1 -1
  29. package/datatable-dynamic/datatable-dynamic.component.d.ts +1 -4
  30. package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +3 -4
  31. package/dynamic/action/modal/dynamic-action-modal-def.d.ts +1 -1
  32. package/esm2020/asset-reader/asset-reader-helper.service.mjs +7 -5
  33. package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
  34. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +3 -3
  35. package/esm2020/breadcrumbs/breadcrumb.mjs +1 -1
  36. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +4 -5
  37. package/esm2020/breadcrumbs/breadcrumbs-resolver.mjs +1 -1
  38. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  39. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +7 -7
  40. package/esm2020/buttons/badge-button/badge-button.component.mjs +9 -7
  41. package/esm2020/buttons/button/button.component.mjs +12 -10
  42. package/esm2020/buttons/buttons.module.mjs +4 -4
  43. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  44. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +6 -6
  45. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  46. package/esm2020/card/card-body/card-body.component.mjs +5 -6
  47. package/esm2020/card/card-footer/card-footer.component.mjs +5 -8
  48. package/esm2020/card/card-header/card-header.component.mjs +5 -7
  49. package/esm2020/card/card.component.mjs +5 -7
  50. package/esm2020/card/card.module.mjs +4 -4
  51. package/esm2020/carousel/carousel-slide.directive.mjs +16 -0
  52. package/esm2020/carousel/carousel.component.mjs +211 -0
  53. package/esm2020/carousel/carousel.module.mjs +38 -0
  54. package/esm2020/carousel/public-api.mjs +4 -0
  55. package/esm2020/carousel/theseam-ui-common-carousel.mjs +5 -0
  56. package/esm2020/checkbox/checkbox.component.mjs +5 -6
  57. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  58. package/esm2020/checkbox/testing/checkbox.harness.mjs +1 -1
  59. package/esm2020/checkbox/testing/index.mjs +1 -1
  60. package/esm2020/confirm-dialog/confirm-click.directive.mjs +6 -6
  61. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
  62. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
  63. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
  64. package/esm2020/core/common-behaviors/active.mjs +2 -1
  65. package/esm2020/core/common-behaviors/disabled.mjs +2 -1
  66. package/esm2020/core/common-behaviors/initialized.mjs +2 -1
  67. package/esm2020/core/common-behaviors/tabindex.mjs +2 -1
  68. package/esm2020/core/input-decorators/input-boolean.decorator.mjs +4 -5
  69. package/esm2020/core/input-decorators/input-number.decorator.mjs +4 -5
  70. package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
  71. package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
  72. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
  73. package/esm2020/data-filters/data-filter.mjs +1 -1
  74. package/esm2020/data-filters/data-filters.module.mjs +4 -4
  75. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +5 -5
  76. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +6 -6
  77. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +11 -8
  78. package/esm2020/datatable/datatable/datatable.component.mjs +11 -6
  79. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
  80. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +5 -4
  81. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -5
  82. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
  83. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -5
  84. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +5 -5
  85. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
  86. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +5 -5
  87. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +9 -13
  88. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +5 -8
  89. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +5 -8
  90. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +5 -8
  91. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +5 -8
  92. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -5
  93. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
  94. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +5 -5
  95. package/esm2020/datatable/datatable.module.mjs +4 -4
  96. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +5 -6
  97. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +3 -3
  98. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
  99. package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
  100. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
  101. package/esm2020/datatable/models/columns-alteration.mjs +1 -1
  102. package/esm2020/datatable/models/columns-alterations/order.columns-alteration.mjs +3 -1
  103. package/esm2020/datatable/models/datatable-gql-data-source.mjs +1 -1
  104. package/esm2020/datatable/models/internal-column-props.mjs +1 -1
  105. package/esm2020/datatable/models/sort-item.mjs +1 -1
  106. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  107. package/esm2020/datatable/services/columns-manager.service.mjs +5 -5
  108. package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
  109. package/esm2020/datatable/services/datatable-preferences.service.mjs +5 -4
  110. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +5 -5
  111. package/esm2020/datatable/utils/map-columns-alterations-states.mjs +4 -1
  112. package/esm2020/datatable/utils/set-column-defaults.mjs +2 -2
  113. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +5 -6
  114. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
  115. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +6 -7
  116. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.mjs +1 -1
  117. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +4 -6
  118. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
  119. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +6 -6
  120. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +7 -7
  121. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +6 -6
  122. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +11 -8
  123. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +6 -5
  124. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  125. package/esm2020/dynamic/action/modal/dynamic-action-modal-def.mjs +1 -1
  126. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  127. package/esm2020/dynamic/dynamic-value-helper.service.mjs +5 -4
  128. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  129. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +5 -5
  130. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
  131. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +9 -9
  132. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +5 -8
  133. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  134. package/esm2020/form-field/form-field-error.directive.mjs +4 -4
  135. package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
  136. package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
  137. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  138. package/esm2020/form-field/form-field.component.mjs +5 -5
  139. package/esm2020/form-field/form-field.module.mjs +4 -4
  140. package/esm2020/form-field/input.directive.mjs +10 -9
  141. package/esm2020/form-field/testing/form-field-required-indicator.harness.mjs +1 -1
  142. package/esm2020/form-field/testing/index.mjs +1 -1
  143. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +5 -7
  144. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  145. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
  146. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +8 -8
  147. package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
  148. package/esm2020/framework/base-layout/base-layout.component.mjs +5 -4
  149. package/esm2020/framework/base-layout/base-layout.module.mjs +5 -5
  150. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
  151. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
  152. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
  153. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +3 -3
  154. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
  155. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
  156. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
  157. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +5 -7
  158. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -5
  159. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +7 -7
  160. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +6 -5
  161. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
  162. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +7 -5
  163. package/esm2020/framework/dashboard/dashboard.component.mjs +5 -5
  164. package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
  165. package/esm2020/framework/dynamic-router/dynamic-route-def.mjs +1 -1
  166. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  167. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.mjs +1 -1
  168. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +5 -6
  169. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +5 -6
  170. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
  171. package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
  172. package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
  173. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
  174. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
  175. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
  176. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
  177. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
  178. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
  179. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +5 -4
  180. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +5 -5
  181. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +5 -6
  182. package/esm2020/framework/side-nav/side-nav-utils.mjs +2 -1
  183. package/esm2020/framework/side-nav/side-nav.component.mjs +6 -7
  184. package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
  185. package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
  186. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
  187. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
  188. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +4 -6
  189. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
  190. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +5 -7
  191. package/esm2020/framework/top-bar/top-bar.component.mjs +4 -6
  192. package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
  193. package/esm2020/google-maps/google-maps/google-maps.component.mjs +23 -26
  194. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +3 -3
  195. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +3 -3
  196. package/esm2020/google-maps/google-maps-contextmenu.mjs +9 -8
  197. package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
  198. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +9 -10
  199. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +9 -9
  200. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +6 -6
  201. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +6 -6
  202. package/esm2020/google-maps/google-maps.module.mjs +4 -4
  203. package/esm2020/google-maps/google-maps.service.mjs +8 -8
  204. package/esm2020/google-maps/map-control.component.mjs +3 -3
  205. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  206. package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
  207. package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +1 -27
  208. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  209. package/esm2020/graphql/datatable/datatable-helpers.mjs +2 -2
  210. package/esm2020/graphql/datatable/map-filter-states.mjs +2 -1
  211. package/esm2020/graphql/utils/inline-variables.mjs +2 -1
  212. package/esm2020/graphql/utils/parse-hints.mjs +3 -3
  213. package/esm2020/graphql/utils/to-gql.mjs +3 -3
  214. package/esm2020/icon/icon/icon.component.mjs +5 -5
  215. package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -5
  216. package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
  217. package/esm2020/icon/icon.module.mjs +4 -4
  218. package/esm2020/icon/utils/get-known-icon.mjs +71 -71
  219. package/esm2020/layout/breakpoint-aliases.mjs +1 -1
  220. package/esm2020/layout/layout.module.mjs +4 -4
  221. package/esm2020/layout/layout.service.mjs +3 -3
  222. package/esm2020/layout/observe-media-query.mjs +1 -1
  223. package/esm2020/loading/loading/loading.component.mjs +8 -9
  224. package/esm2020/loading/loading-overlay.service.mjs +3 -3
  225. package/esm2020/loading/loading.module.mjs +4 -4
  226. package/esm2020/menu/menu-divider.component.mjs +3 -3
  227. package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
  228. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
  229. package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
  230. package/esm2020/menu/menu-item.component.mjs +4 -5
  231. package/esm2020/menu/menu-toggle.directive.mjs +4 -4
  232. package/esm2020/menu/menu.component.mjs +4 -4
  233. package/esm2020/menu/menu.module.mjs +4 -4
  234. package/esm2020/modal/directives/modal-close.directive.mjs +3 -3
  235. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
  236. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
  237. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
  238. package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
  239. package/esm2020/modal/directives/modal.directive.mjs +5 -5
  240. package/esm2020/modal/modal/modal.component.mjs +6 -7
  241. package/esm2020/modal/modal-body/modal-body.component.mjs +5 -7
  242. package/esm2020/modal/modal-config.mjs +1 -1
  243. package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
  244. package/esm2020/modal/modal-footer/modal-footer.component.mjs +5 -7
  245. package/esm2020/modal/modal-header/modal-header.component.mjs +5 -7
  246. package/esm2020/modal/modal-ref.mjs +1 -1
  247. package/esm2020/modal/modal.module.mjs +4 -4
  248. package/esm2020/modal/modal.service.mjs +26 -23
  249. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -5
  250. package/esm2020/popover/popover/popover.component.mjs +3 -3
  251. package/esm2020/popover/popover.directive.mjs +4 -4
  252. package/esm2020/popover/popover.module.mjs +5 -5
  253. package/esm2020/progress/progress-circle/progress-circle.component.mjs +10 -10
  254. package/esm2020/progress/progress.module.mjs +4 -4
  255. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -5
  256. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  257. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  258. package/esm2020/services/asset-loader.service.mjs +5 -6
  259. package/esm2020/services/font-loader.service.mjs +5 -6
  260. package/esm2020/services/router-helpers.service.mjs +3 -3
  261. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
  262. package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
  263. package/esm2020/shared/directives/click-outside.directive.mjs +3 -3
  264. package/esm2020/shared/directives/disable-control.directive.mjs +3 -3
  265. package/esm2020/shared/directives/elem-resized.directive.mjs +5 -5
  266. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
  267. package/esm2020/shared/directives/hover-class.directive.mjs +3 -3
  268. package/esm2020/shared/directives/ng-select-extra.directive.mjs +7 -7
  269. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +5 -5
  270. package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
  271. package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
  272. package/esm2020/shared/shared.module.mjs +4 -4
  273. package/esm2020/storage/local-storage.service.mjs +8 -8
  274. package/esm2020/storage/localstorage-memory.mjs +4 -4
  275. package/esm2020/story-helpers/arg-type-helpers.mjs +1 -1
  276. package/esm2020/story-helpers/initial-route.service.mjs +3 -3
  277. package/esm2020/story-helpers/on-story-bootstrapped-trigger.mjs +2 -1
  278. package/esm2020/story-helpers/public-api.mjs +2 -2
  279. package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
  280. package/esm2020/story-helpers/story-empty.component.mjs +3 -3
  281. package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
  282. package/esm2020/story-helpers/story-initial-route.mjs +4 -4
  283. package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
  284. package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
  285. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +5 -5
  286. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +5 -4
  287. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +5 -7
  288. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +5 -6
  289. package/esm2020/tabbed/tabbed.component.mjs +4 -4
  290. package/esm2020/tabbed/tabbed.module.mjs +4 -4
  291. package/esm2020/tabbed/tabbed.service.mjs +5 -5
  292. package/esm2020/table/table/table.component.mjs +5 -6
  293. package/esm2020/table/table.module.mjs +4 -4
  294. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +5 -5
  295. package/esm2020/table-cell-type/table-cell-type-export-props.mjs +1 -1
  296. package/esm2020/table-cell-type/table-cell-type-models.mjs +1 -1
  297. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +5 -6
  298. package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
  299. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +12 -12
  300. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +8 -12
  301. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +14 -14
  302. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +10 -10
  303. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +14 -14
  304. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +6 -7
  305. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +11 -10
  306. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +7 -8
  307. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +11 -8
  308. package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
  309. package/esm2020/tel-input/intl-tel-input.mjs +2 -2
  310. package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
  311. package/esm2020/tel-input/tel-input/tel-input.component.mjs +5 -6
  312. package/esm2020/tel-input/tel-input.directive.mjs +4 -4
  313. package/esm2020/tel-input/tel-input.module.mjs +4 -4
  314. package/esm2020/tel-input/utils/add-country-code.mjs +4 -4
  315. package/esm2020/tel-input/utils/process-country-codes.mjs +4 -7
  316. package/esm2020/testing/story-expect.mjs +2 -1
  317. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +5 -6
  318. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -5
  319. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +12 -13
  320. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
  321. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
  322. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
  323. package/esm2020/tiled-select/testing/index.mjs +1 -1
  324. package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
  325. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +5 -8
  326. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
  327. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
  328. package/esm2020/toggle-edit/toggle-edit.component.mjs +7 -7
  329. package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
  330. package/esm2020/toggle-group/toggle-group-option.directive.mjs +3 -3
  331. package/esm2020/toggle-group/toggle-group.directive.mjs +6 -6
  332. package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
  333. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +5 -5
  334. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +5 -8
  335. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +5 -4
  336. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  337. package/esm2020/utils/array-move.mjs +1 -1
  338. package/esm2020/utils/cdk/get-closest-widget-cdk-drag.mjs +3 -3
  339. package/esm2020/utils/file-utils.mjs +2 -2
  340. package/esm2020/utils/form/get-control-path.mjs +6 -5
  341. package/esm2020/utils/geo-json/geo-json-to-area.mjs +3 -3
  342. package/esm2020/utils/geo-json/is-only-geometry-types.validator.mjs +1 -1
  343. package/esm2020/utils/geo-json/min-max-points.validator.mjs +5 -5
  344. package/esm2020/utils/geo-json/read-geo-file.mjs +3 -2
  345. package/esm2020/utils/has-property.mjs +2 -2
  346. package/esm2020/utils/load-style-sheet.mjs +2 -2
  347. package/esm2020/utils/load-style.mjs +2 -2
  348. package/esm2020/utils/obj-utils.mjs +2 -2
  349. package/esm2020/utils/polling-ticker.mjs +2 -2
  350. package/esm2020/utils/router/operators/activated-routes-with-data-property.mjs +2 -2
  351. package/esm2020/utils/router/route-snapshot-path-full.mjs +2 -2
  352. package/esm2020/utils/router/route-snapshot-path-relative.mjs +2 -2
  353. package/esm2020/utils/router/will-have-data-prop.mjs +3 -3
  354. package/esm2020/utils/subscriber-count.mjs +2 -1
  355. package/esm2020/utils/toggle-attribute.mjs +6 -5
  356. package/esm2020/utils/wait-on-condition-async.mjs +5 -5
  357. package/esm2020/vertical-list-filter/public-api.mjs +3 -0
  358. package/esm2020/vertical-list-filter/testing/index.mjs +2 -0
  359. package/esm2020/vertical-list-filter/testing/vertical-list-filter.harness.mjs +28 -0
  360. package/esm2020/vertical-list-filter/theseam-ui-common-vertical-list-filter.mjs +5 -0
  361. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +52 -0
  362. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
  363. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
  364. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +5 -4
  365. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  366. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +5 -4
  367. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
  368. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +7 -7
  369. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
  370. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
  371. package/esm2020/widget/widget/widget.component.mjs +3 -3
  372. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +5 -8
  373. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
  374. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +5 -8
  375. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
  376. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
  377. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
  378. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +6 -7
  379. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
  380. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +5 -7
  381. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
  382. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +5 -8
  383. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
  384. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +5 -5
  385. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
  386. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
  387. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -19
  388. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +5 -7
  389. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
  390. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +5 -5
  391. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
  392. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +6 -9
  393. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +5 -6
  394. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +5 -8
  395. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +5 -5
  396. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +9 -8
  397. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +10 -10
  398. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +5 -8
  399. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
  400. package/esm2020/widget/widget-footer/widget-footer.component.mjs +5 -7
  401. package/esm2020/widget/widget-registry.service.mjs +6 -5
  402. package/esm2020/widget/widget.module.mjs +7 -7
  403. package/fesm2015/theseam-ui-common-asset-reader.mjs +13 -11
  404. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  405. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +13 -14
  406. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  407. package/fesm2015/theseam-ui-common-buttons.mjs +31 -27
  408. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  409. package/fesm2015/theseam-ui-common-card.mjs +23 -31
  410. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  411. package/fesm2015/theseam-ui-common-carousel.mjs +265 -0
  412. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -0
  413. package/fesm2015/theseam-ui-common-checkbox.mjs +8 -9
  414. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  415. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +15 -15
  416. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  417. package/fesm2015/theseam-ui-common-core.mjs +10 -8
  418. package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
  419. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  420. package/fesm2015/theseam-ui-common-data-filters.mjs +23 -20
  421. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  422. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +34 -38
  423. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  424. package/fesm2015/theseam-ui-common-datatable.mjs +115 -123
  425. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  427. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-dynamic.mjs +36 -26
  429. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-footer-bar.mjs +8 -11
  431. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-form-field-error.mjs +21 -23
  433. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  434. package/fesm2015/theseam-ui-common-form-field.mjs +29 -28
  435. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-framework.mjs +153 -160
  437. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-google-maps.mjs +84 -86
  439. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-graphql.mjs +10 -34
  441. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  442. package/fesm2015/theseam-ui-common-icon.mjs +84 -85
  443. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  444. package/fesm2015/theseam-ui-common-layout.mjs +7 -7
  445. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  446. package/fesm2015/theseam-ui-common-loading.mjs +14 -15
  447. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  448. package/fesm2015/theseam-ui-common-menu.mjs +25 -26
  449. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  450. package/fesm2015/theseam-ui-common-modal.mjs +71 -76
  451. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  452. package/fesm2015/theseam-ui-common-popover.mjs +10 -10
  453. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  454. package/fesm2015/theseam-ui-common-progress.mjs +13 -13
  455. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  456. package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -11
  457. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  458. package/fesm2015/theseam-ui-common-services.mjs +11 -13
  459. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  460. package/fesm2015/theseam-ui-common-shared.mjs +42 -42
  461. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  462. package/fesm2015/theseam-ui-common-storage.mjs +10 -10
  463. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  464. package/fesm2015/theseam-ui-common-story-helpers.mjs +25 -100
  465. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  466. package/fesm2015/theseam-ui-common-tabbed.mjs +27 -29
  467. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  468. package/fesm2015/theseam-ui-common-table-cell-type.mjs +12 -13
  469. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  470. package/fesm2015/theseam-ui-common-table-cell-types.mjs +87 -89
  471. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  472. package/fesm2015/theseam-ui-common-table.mjs +8 -9
  473. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  474. package/fesm2015/theseam-ui-common-tel-input.mjs +21 -25
  475. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  476. package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
  477. package/fesm2015/theseam-ui-common-tiled-select.mjs +31 -34
  478. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  479. package/fesm2015/theseam-ui-common-toggle-edit.mjs +20 -23
  480. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  481. package/fesm2015/theseam-ui-common-toggle-group.mjs +12 -12
  482. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  483. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  484. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  485. package/fesm2015/theseam-ui-common-utils.mjs +36 -32
  486. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  487. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +96 -0
  488. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  489. package/fesm2015/theseam-ui-common-viewers.mjs +22 -20
  490. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  491. package/fesm2015/theseam-ui-common-widget.mjs +159 -186
  492. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  493. package/fesm2020/theseam-ui-common-asset-reader.mjs +13 -11
  494. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  495. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +13 -14
  496. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  497. package/fesm2020/theseam-ui-common-buttons.mjs +31 -27
  498. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  499. package/fesm2020/theseam-ui-common-card.mjs +23 -31
  500. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  501. package/fesm2020/theseam-ui-common-carousel.mjs +265 -0
  502. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -0
  503. package/fesm2020/theseam-ui-common-checkbox.mjs +8 -9
  504. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  505. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +15 -15
  506. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  507. package/fesm2020/theseam-ui-common-core.mjs +10 -8
  508. package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
  509. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  510. package/fesm2020/theseam-ui-common-data-filters.mjs +23 -20
  511. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  512. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +34 -38
  513. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  514. package/fesm2020/theseam-ui-common-datatable.mjs +115 -123
  515. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  516. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  517. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  518. package/fesm2020/theseam-ui-common-dynamic.mjs +36 -26
  519. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  520. package/fesm2020/theseam-ui-common-footer-bar.mjs +8 -11
  521. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  522. package/fesm2020/theseam-ui-common-form-field-error.mjs +21 -23
  523. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  524. package/fesm2020/theseam-ui-common-form-field.mjs +29 -28
  525. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  526. package/fesm2020/theseam-ui-common-framework.mjs +153 -160
  527. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  528. package/fesm2020/theseam-ui-common-google-maps.mjs +83 -86
  529. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  530. package/fesm2020/theseam-ui-common-graphql.mjs +10 -34
  531. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  532. package/fesm2020/theseam-ui-common-icon.mjs +84 -85
  533. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  534. package/fesm2020/theseam-ui-common-layout.mjs +16 -8
  535. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  536. package/fesm2020/theseam-ui-common-loading.mjs +14 -15
  537. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  538. package/fesm2020/theseam-ui-common-menu.mjs +25 -26
  539. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  540. package/fesm2020/theseam-ui-common-modal.mjs +71 -76
  541. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  542. package/fesm2020/theseam-ui-common-models.mjs +2 -1
  543. package/fesm2020/theseam-ui-common-models.mjs.map +1 -1
  544. package/fesm2020/theseam-ui-common-popover.mjs +10 -10
  545. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  546. package/fesm2020/theseam-ui-common-progress.mjs +13 -13
  547. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  548. package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -11
  549. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  550. package/fesm2020/theseam-ui-common-services.mjs +11 -13
  551. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  552. package/fesm2020/theseam-ui-common-shared.mjs +42 -42
  553. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  554. package/fesm2020/theseam-ui-common-storage.mjs +10 -10
  555. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  556. package/fesm2020/theseam-ui-common-story-helpers.mjs +25 -96
  557. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  558. package/fesm2020/theseam-ui-common-tabbed.mjs +27 -29
  559. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  560. package/fesm2020/theseam-ui-common-table-cell-type.mjs +12 -13
  561. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  562. package/fesm2020/theseam-ui-common-table-cell-types.mjs +87 -89
  563. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  564. package/fesm2020/theseam-ui-common-table.mjs +8 -9
  565. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  566. package/fesm2020/theseam-ui-common-tel-input.mjs +21 -25
  567. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  568. package/fesm2020/theseam-ui-common-testing.mjs +1 -0
  569. package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
  570. package/fesm2020/theseam-ui-common-tiled-select.mjs +31 -34
  571. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  572. package/fesm2020/theseam-ui-common-toggle-edit.mjs +20 -23
  573. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  574. package/fesm2020/theseam-ui-common-toggle-group.mjs +12 -12
  575. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  576. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  577. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  578. package/fesm2020/theseam-ui-common-utils.mjs +36 -32
  579. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  580. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +87 -0
  581. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  582. package/fesm2020/theseam-ui-common-viewers.mjs +22 -20
  583. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  584. package/fesm2020/theseam-ui-common-widget.mjs +159 -186
  585. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  586. package/footer-bar/footer-bar/footer-bar.component.d.ts +1 -4
  587. package/form-field-error/form-field-error/form-field-error.component.d.ts +1 -4
  588. package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +2 -3
  589. package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +2 -4
  590. package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +2 -3
  591. package/framework/dashboard/dashboard.component.d.ts +0 -1
  592. package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +2 -3
  593. package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +0 -1
  594. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +2 -4
  595. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -5
  596. package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +1 -4
  597. package/framework/top-bar/top-bar.component.d.ts +2 -4
  598. package/google-maps/google-maps/google-maps.component.d.ts +3 -6
  599. package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +2 -3
  600. package/graphql/datatable/datatable-graphql-query-ref.d.ts +0 -1
  601. package/icon/icon-btn/icon-btn.component.d.ts +2 -3
  602. package/loading/loading/loading.component.d.ts +1 -4
  603. package/menu/menu-item.component.d.ts +2 -3
  604. package/modal/modal/modal.component.d.ts +3 -4
  605. package/modal/modal-body/modal-body.component.d.ts +1 -4
  606. package/modal/modal-footer/modal-footer.component.d.ts +1 -4
  607. package/modal/modal-header/modal-header.component.d.ts +1 -4
  608. package/modal/route-modal/route-modal.component.d.ts +2 -3
  609. package/package.json +17 -1
  610. package/progress/progress-circle/progress-circle.component.d.ts +0 -1
  611. package/scrollbar/overlay-scrollbar.directive.d.ts +2 -3
  612. package/services/asset-loader.service.d.ts +0 -1
  613. package/services/font-loader.service.d.ts +0 -1
  614. package/story-helpers/public-api.d.ts +0 -1
  615. package/tabbed/directives/tabbed-tab-content.directive.d.ts +0 -1
  616. package/tabbed/tabbed-content/tabbed-content.component.d.ts +1 -4
  617. package/tabbed/tabbed-item/tabbed-item.component.d.ts +2 -4
  618. package/tabbed/tabbed.service.d.ts +0 -1
  619. package/table/table/table.component.d.ts +2 -3
  620. package/table-cell-type/table-cell-type-models.d.ts +1 -1
  621. package/table-cell-type/table-cell-type-selector.component.d.ts +3 -4
  622. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.d.ts +2 -3
  623. package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +2 -3
  624. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.d.ts +2 -3
  625. package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +2 -3
  626. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.d.ts +2 -3
  627. package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +2 -3
  628. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +2 -3
  629. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +2 -3
  630. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +2 -3
  631. package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +1 -4
  632. package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +1 -4
  633. package/toggle-group/toggle-group.directive.d.ts +0 -1
  634. package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +1 -4
  635. package/utils/obj-utils.d.ts +2 -2
  636. package/vertical-list-filter/index.d.ts +5 -0
  637. package/vertical-list-filter/public-api.d.ts +2 -0
  638. package/vertical-list-filter/testing/index.d.ts +1 -0
  639. package/vertical-list-filter/testing/vertical-list-filter.harness.d.ts +9 -0
  640. package/vertical-list-filter/vertical-list-filter.component.d.ts +17 -0
  641. package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +1 -4
  642. package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +1 -4
  643. package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +2 -3
  644. package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +1 -4
  645. package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +1 -4
  646. package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +2 -3
  647. package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +4 -7
  648. package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +1 -4
  649. package/widget/widget-content-components/widget-table/widget-table.component.d.ts +0 -1
  650. package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +1 -4
  651. package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +2 -3
  652. package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +1 -4
  653. package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +1 -4
  654. package/widget/widget-footer/widget-footer.component.d.ts +1 -4
  655. package/esm2020/story-helpers/args-to-tpl.mjs +0 -72
  656. package/story-helpers/args-to-tpl.d.ts +0 -24
@@ -0,0 +1,52 @@
1
+ import { Component, Input, HostBinding } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export const FILTER_VALUES = [
7
+ 'A', 'B', 'C', 'D',
8
+ 'E', 'F', 'G', 'H',
9
+ 'I', 'J', 'K', 'L',
10
+ 'M', 'N', 'O', 'P',
11
+ 'Q', 'R', 'S', 'T',
12
+ 'U', 'V', 'W', 'X',
13
+ 'Y', 'Z'
14
+ ];
15
+ export class TheSeamVerticalListFilterComponent {
16
+ get filterValue() { return this._filterValue.value; }
17
+ set filterValue(value) { this._filterValue.next(value); }
18
+ get _filterValueAttr() { return this.filterValue; }
19
+ constructor() {
20
+ this._values = FILTER_VALUES;
21
+ this.showClearOption = true;
22
+ this._filterValue = new BehaviorSubject(undefined);
23
+ this.filterValue$ = this._filterValue.asObservable();
24
+ }
25
+ characterClick(character) {
26
+ if (this.filterValue === character) {
27
+ this.filterValue = undefined;
28
+ }
29
+ else {
30
+ this.filterValue = character;
31
+ }
32
+ }
33
+ clearFilter() {
34
+ this.filterValue = undefined;
35
+ }
36
+ }
37
+ TheSeamVerticalListFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamVerticalListFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
+ TheSeamVerticalListFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamVerticalListFilterComponent, isStandalone: true, selector: "seam-vertical-list-filter", inputs: { showClearOption: "showClearOption", filterValue: "filterValue" }, host: { properties: { "attr.data-filter-value": "this._filterValueAttr" } }, ngImport: i0, template: "<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\">\n <svg class=\"vertical-list-filter--clear-icon\" viewBox=\"0 0 110 301\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\"/>\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\"/>\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\"/>\n <path d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\" fill=\"currentColor\"/>\n <path d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\" fill=\"currentColor\"/>\n <path d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\" fill=\"currentColor\"/>\n <path d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\" fill=\"currentColor\"/>\n </svg>\n </span>\n </ng-container>\n <span *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\">{{ c }}</span>\n</div>\n", styles: [".vertical-list-filter--list{display:flex;flex-direction:column;text-align:center;align-content:center}.vertical-list-filter--icon{cursor:pointer}.vertical-list-filter--item{cursor:pointer;padding-left:3px;padding-right:3px;border:2px solid transparent}.vertical-list-filter--item.is-selected{border-color:var(--primary)}.vertical-list-filter--clear{cursor:pointer;padding-top:3px;border:2px solid transparent}.vertical-list-filter--clear-icon{width:.875em;display:inline-block;font-size:inherit;height:1.5em;overflow:visible;vertical-align:-.125em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamVerticalListFilterComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'seam-vertical-list-filter', standalone: true, imports: [
42
+ CommonModule,
43
+ ], template: "<div class=\"vertical-list-filter--list\">\n <ng-container *ngIf=\"showClearOption\">\n <span class=\"text-primary vertical-list-filter--clear\"\n [class.border-primary]=\"!filterValue || filterValue === ''\"\n (click)=\"clearFilter()\">\n <svg class=\"vertical-list-filter--clear-icon\" viewBox=\"0 0 110 301\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"54.5\" cy=\"118.5\" r=\"7.5\" fill=\"currentColor\"/>\n <circle cx=\"54.5\" cy=\"148.5\" r=\"7.5\" fill=\"currentColor\"/>\n <circle cx=\"54.5\" cy=\"178.5\" r=\"7.5\" fill=\"currentColor\"/>\n <path d=\"M48.12 56.48L45.816 65.12H65.832L63.672 56.48C62.328 51.776 61.032 46.784 59.784 41.504C58.536 36.224 57.288 31.136 56.04 26.24H55.464C54.312 31.232 53.112 36.368 51.864 41.648C50.712 46.832 49.464 51.776 48.12 56.48ZM75.912 104L70.152 81.68H41.496L35.736 104H14.136L43.512 10.112H69L98.376 104H75.912Z\" fill=\"currentColor\"/>\n <path d=\"M48.12 56.48L43.3124 55.1064C43.3043 55.1348 43.2964 55.1632 43.2888 55.1917L48.12 56.48ZM45.816 65.12L40.9848 63.8317C40.5846 65.3326 40.9047 66.9344 41.8511 68.1662C42.7974 69.398 44.2626 70.12 45.816 70.12V65.12ZM65.832 65.12V70.12C67.3717 70.12 68.8255 69.4106 69.773 68.1971C70.7206 66.9835 71.0561 65.401 70.6827 63.9073L65.832 65.12ZM63.672 56.48L68.5227 55.2673C68.5092 55.2134 68.4949 55.1598 68.4796 55.1064L63.672 56.48ZM59.784 41.504L64.6499 40.3539L64.6499 40.3539L59.784 41.504ZM56.04 26.24L60.8851 25.005C60.3205 22.7901 58.3258 21.24 56.04 21.24V26.24ZM55.464 26.24V21.24C53.1357 21.24 51.1156 22.847 50.592 25.1157L55.464 26.24ZM51.864 41.648L46.9981 40.4979C46.9929 40.5197 46.9879 40.5415 46.9831 40.5633L51.864 41.648ZM75.912 104L71.0706 105.249C71.6404 107.457 73.6318 109 75.912 109V104ZM70.152 81.68L74.9934 80.4306C74.4236 78.2227 72.4322 76.68 70.152 76.68V81.68ZM41.496 81.68V76.68C39.2158 76.68 37.2244 78.2227 36.6546 80.4306L41.496 81.68ZM35.736 104V109C38.0162 109 40.0076 107.457 40.5774 105.249L35.736 104ZM14.136 104L9.36412 102.507C8.88907 104.025 9.16491 105.679 10.107 106.961C11.0492 108.243 12.5451 109 14.136 109L14.136 104ZM43.512 10.112V5.112C41.3257 5.112 39.393 6.53242 38.7401 8.61896L43.512 10.112ZM69 10.112L73.7719 8.61896C73.119 6.53242 71.1863 5.112 69 5.112V10.112ZM98.376 104V109C99.9669 109 101.463 108.243 102.405 106.961C103.347 105.679 103.623 104.025 103.148 102.507L98.376 104ZM43.2888 55.1917L40.9848 63.8317L50.6472 66.4083L52.9512 57.7683L43.2888 55.1917ZM45.816 70.12H65.832V60.12H45.816V70.12ZM70.6827 63.9073L68.5227 55.2673L58.8213 57.6927L60.9813 66.3327L70.6827 63.9073ZM68.4796 55.1064C67.1589 50.4839 65.8821 45.5669 64.6499 40.3539L54.9181 42.6541C56.1819 48.0011 57.4971 53.0681 58.8644 57.8536L68.4796 55.1064ZM64.6499 40.3539C63.3957 35.0476 62.1408 29.9312 60.8851 25.005L51.1949 27.475C52.4352 32.3408 53.6763 37.4004 54.9181 42.6541L64.6499 40.3539ZM56.04 21.24H55.464V31.24H56.04V21.24ZM50.592 25.1157C49.4421 30.0986 48.2442 35.226 46.9981 40.4979L56.7299 42.7981C57.9798 37.51 59.1819 32.3654 60.336 27.3643L50.592 25.1157ZM46.9831 40.5633C45.8508 45.6584 44.6269 50.5056 43.3124 55.1064L52.9276 57.8536C54.3011 53.0464 55.5732 48.0056 56.7449 42.7326L46.9831 40.5633ZM80.7534 102.751L74.9934 80.4306L65.3106 82.9294L71.0706 105.249L80.7534 102.751ZM70.152 76.68H41.496V86.68H70.152V76.68ZM36.6546 80.4306L30.8946 102.751L40.5774 105.249L46.3374 82.9294L36.6546 80.4306ZM35.736 99H14.136V109H35.736V99ZM18.9079 105.493L48.2839 11.605L38.7401 8.61896L9.36412 102.507L18.9079 105.493ZM43.512 15.112H69V5.112H43.512V15.112ZM64.2281 11.605L93.6041 105.493L103.148 102.507L73.7719 8.61896L64.2281 11.605ZM98.376 99H75.912V109H98.376V99Z\" fill=\"currentColor\"/>\n <path d=\"M18.184 290V277.184L59.656 213.968H22.072V196.112H85.72V208.928L44.248 272.144H86.152V290H18.184Z\" fill=\"currentColor\"/>\n <path d=\"M18.184 290H13.184C13.184 292.761 15.4226 295 18.184 295V290ZM18.184 277.184L14.0034 274.441C13.4688 275.256 13.184 276.209 13.184 277.184H18.184ZM59.656 213.968L63.8366 216.711C64.8445 215.174 64.9286 213.209 64.0556 211.592C63.1827 209.976 61.4933 208.968 59.656 208.968V213.968ZM22.072 213.968H17.072C17.072 216.729 19.3106 218.968 22.072 218.968V213.968ZM22.072 196.112V191.112C19.3106 191.112 17.072 193.351 17.072 196.112H22.072ZM85.72 196.112H90.72C90.72 193.351 88.4814 191.112 85.72 191.112V196.112ZM85.72 208.928L89.9006 211.671C90.4352 210.856 90.72 209.903 90.72 208.928H85.72ZM44.248 272.144L40.0674 269.401C39.0595 270.938 38.9754 272.903 39.8484 274.52C40.7213 276.136 42.4107 277.144 44.248 277.144V272.144ZM86.152 272.144H91.152C91.152 269.383 88.9134 267.144 86.152 267.144V272.144ZM86.152 290V295C88.9134 295 91.152 292.761 91.152 290H86.152ZM23.184 290V277.184H13.184V290H23.184ZM22.3646 279.927L63.8366 216.711L55.4754 211.225L14.0034 274.441L22.3646 279.927ZM59.656 208.968H22.072V218.968H59.656V208.968ZM27.072 213.968V196.112H17.072V213.968H27.072ZM22.072 201.112H85.72V191.112H22.072V201.112ZM80.72 196.112V208.928H90.72V196.112H80.72ZM81.5394 206.185L40.0674 269.401L48.4287 274.887L89.9006 211.671L81.5394 206.185ZM44.248 277.144H86.152V267.144H44.248V277.144ZM81.152 272.144V290H91.152V272.144H81.152ZM86.152 285H18.184V295H86.152V285Z\" fill=\"currentColor\"/>\n </svg>\n </span>\n </ng-container>\n <span *ngFor=\"let c of _values\"\n class=\"vertical-list-filter--item text-primary\"\n [class.border-primary]=\"c === filterValue\"\n [attr.data-value]=\"c\"\n [attr.data-selected]=\"c === filterValue\"\n (click)=\"characterClick(c)\">{{ c }}</span>\n</div>\n", styles: [".vertical-list-filter--list{display:flex;flex-direction:column;text-align:center;align-content:center}.vertical-list-filter--icon{cursor:pointer}.vertical-list-filter--item{cursor:pointer;padding-left:3px;padding-right:3px;border:2px solid transparent}.vertical-list-filter--item.is-selected{border-color:var(--primary)}.vertical-list-filter--clear{cursor:pointer;padding-top:3px;border:2px solid transparent}.vertical-list-filter--clear-icon{width:.875em;display:inline-block;font-size:inherit;height:1.5em;overflow:visible;vertical-align:-.125em}\n"] }]
44
+ }], ctorParameters: function () { return []; }, propDecorators: { showClearOption: [{
45
+ type: Input
46
+ }], filterValue: [{
47
+ type: Input
48
+ }], _filterValueAttr: [{
49
+ type: HostBinding,
50
+ args: ['attr.data-filter-value']
51
+ }] } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtbGlzdC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZlcnRpY2FsLWxpc3QtZmlsdGVyL3ZlcnRpY2FsLWxpc3QtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi92ZXJ0aWNhbC1saXN0LWZpbHRlci92ZXJ0aWNhbC1saXN0LWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUE7OztBQUVsRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQWE7SUFDckMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRztJQUNsQixHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQ2xCLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUc7SUFDbEIsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRztJQUNsQixHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQ2xCLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUc7SUFDbEIsR0FBRyxFQUFFLEdBQUc7Q0FDVCxDQUFBO0FBV0QsTUFBTSxPQUFPLGtDQUFrQztJQU03QyxJQUNJLFdBQVcsS0FBeUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQSxDQUFDLENBQUM7SUFDeEUsSUFBSSxXQUFXLENBQUMsS0FBeUIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFJNUUsSUFDSSxnQkFBZ0IsS0FBeUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFBLENBQUMsQ0FBQztJQUV0RTtRQWJTLFlBQU8sR0FBRyxhQUFhLENBQUE7UUFFdkIsb0JBQWUsR0FBRyxJQUFJLENBQUE7UUFLZCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFxQixTQUFTLENBQUMsQ0FBQTtRQU9oRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDdEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxTQUFpQjtRQUM5QixJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFBO1NBQzdCO2FBQU07WUFDTCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQTtTQUM3QjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUE7SUFDOUIsQ0FBQzs7K0hBN0JVLGtDQUFrQzttSEFBbEMsa0NBQWtDLDhPQ3ZCL0MsdzlLQXVCQSwrbEJESEksWUFBWTsyRkFHSCxrQ0FBa0M7a0JBVDlDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBR3pCLElBQUksV0FDUDt3QkFDUCxZQUFZO3FCQUNiOzBFQU1RLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0YsV0FBVztzQkFEZCxLQUFLO2dCQU9GLGdCQUFnQjtzQkFEbkIsV0FBVzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuXG5leHBvcnQgY29uc3QgRklMVEVSX1ZBTFVFUzogc3RyaW5nW10gPSBbXG4gICdBJywgJ0InLCAnQycsICdEJyxcbiAgJ0UnLCAnRicsICdHJywgJ0gnLFxuICAnSScsICdKJywgJ0snLCAnTCcsXG4gICdNJywgJ04nLCAnTycsICdQJyxcbiAgJ1EnLCAnUicsICdTJywgJ1QnLFxuICAnVScsICdWJywgJ1cnLCAnWCcsXG4gICdZJywgJ1onXG5dXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdmVydGljYWwtbGlzdC1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdmVydGljYWwtbGlzdC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi92ZXJ0aWNhbC1saXN0LWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1WZXJ0aWNhbExpc3RGaWx0ZXJDb21wb25lbnQge1xuXG4gIHJlYWRvbmx5IF92YWx1ZXMgPSBGSUxURVJfVkFMVUVTXG5cbiAgQElucHV0KCkgc2hvd0NsZWFyT3B0aW9uID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIGdldCBmaWx0ZXJWYWx1ZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQgeyByZXR1cm4gdGhpcy5fZmlsdGVyVmFsdWUudmFsdWUgfVxuICBzZXQgZmlsdGVyVmFsdWUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl9maWx0ZXJWYWx1ZS5uZXh0KHZhbHVlKSB9XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZpbHRlclZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbiAgcHVibGljIHJlYWRvbmx5IGZpbHRlclZhbHVlJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtZmlsdGVyLXZhbHVlJylcbiAgZ2V0IF9maWx0ZXJWYWx1ZUF0dHIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHsgcmV0dXJuIHRoaXMuZmlsdGVyVmFsdWUgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZmlsdGVyVmFsdWUkID0gdGhpcy5fZmlsdGVyVmFsdWUuYXNPYnNlcnZhYmxlKClcbiAgfVxuXG4gIGNoYXJhY3RlckNsaWNrKGNoYXJhY3Rlcjogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuZmlsdGVyVmFsdWUgPT09IGNoYXJhY3Rlcikge1xuICAgICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHVuZGVmaW5lZFxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbHRlclZhbHVlID0gY2hhcmFjdGVyXG4gICAgfVxuICB9XG5cbiAgY2xlYXJGaWx0ZXIoKSB7XG4gICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHVuZGVmaW5lZFxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJ2ZXJ0aWNhbC1saXN0LWZpbHRlci0tbGlzdFwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0NsZWFyT3B0aW9uXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnkgdmVydGljYWwtbGlzdC1maWx0ZXItLWNsZWFyXCJcbiAgICAgIFtjbGFzcy5ib3JkZXItcHJpbWFyeV09XCIhZmlsdGVyVmFsdWUgfHwgZmlsdGVyVmFsdWUgPT09ICcnXCJcbiAgICAgIChjbGljayk9XCJjbGVhckZpbHRlcigpXCI+XG4gICAgICA8c3ZnIGNsYXNzPVwidmVydGljYWwtbGlzdC1maWx0ZXItLWNsZWFyLWljb25cIiB2aWV3Qm94PVwiMCAwIDExMCAzMDFcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjU0LjVcIiBjeT1cIjExOC41XCIgcj1cIjcuNVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIi8+XG4gICAgICAgIDxjaXJjbGUgY3g9XCI1NC41XCIgY3k9XCIxNDguNVwiIHI9XCI3LjVcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiNTQuNVwiIGN5PVwiMTc4LjVcIiByPVwiNy41XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiLz5cbiAgICAgICAgPHBhdGggZD1cIk00OC4xMiA1Ni40OEw0NS44MTYgNjUuMTJINjUuODMyTDYzLjY3MiA1Ni40OEM2Mi4zMjggNTEuNzc2IDYxLjAzMiA0Ni43ODQgNTkuNzg0IDQxLjUwNEM1OC41MzYgMzYuMjI0IDU3LjI4OCAzMS4xMzYgNTYuMDQgMjYuMjRINTUuNDY0QzU0LjMxMiAzMS4yMzIgNTMuMTEyIDM2LjM2OCA1MS44NjQgNDEuNjQ4QzUwLjcxMiA0Ni44MzIgNDkuNDY0IDUxLjc3NiA0OC4xMiA1Ni40OFpNNzUuOTEyIDEwNEw3MC4xNTIgODEuNjhINDEuNDk2TDM1LjczNiAxMDRIMTQuMTM2TDQzLjUxMiAxMC4xMTJINjlMOTguMzc2IDEwNEg3NS45MTJaXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiLz5cbiAgICAgICAgPHBhdGggZD1cIk00OC4xMiA1Ni40OEw0My4zMTI0IDU1LjEwNjRDNDMuMzA0MyA1NS4xMzQ4IDQzLjI5NjQgNTUuMTYzMiA0My4yODg4IDU1LjE5MTdMNDguMTIgNTYuNDhaTTQ1LjgxNiA2NS4xMkw0MC45ODQ4IDYzLjgzMTdDNDAuNTg0NiA2NS4zMzI2IDQwLjkwNDcgNjYuOTM0NCA0MS44NTExIDY4LjE2NjJDNDIuNzk3NCA2OS4zOTggNDQuMjYyNiA3MC4xMiA0NS44MTYgNzAuMTJWNjUuMTJaTTY1LjgzMiA2NS4xMlY3MC4xMkM2Ny4zNzE3IDcwLjEyIDY4LjgyNTUgNjkuNDEwNiA2OS43NzMgNjguMTk3MUM3MC43MjA2IDY2Ljk4MzUgNzEuMDU2MSA2NS40MDEgNzAuNjgyNyA2My45MDczTDY1LjgzMiA2NS4xMlpNNjMuNjcyIDU2LjQ4TDY4LjUyMjcgNTUuMjY3M0M2OC41MDkyIDU1LjIxMzQgNjguNDk0OSA1NS4xNTk4IDY4LjQ3OTYgNTUuMTA2NEw2My42NzIgNTYuNDhaTTU5Ljc4NCA0MS41MDRMNjQuNjQ5OSA0MC4zNTM5TDY0LjY0OTkgNDAuMzUzOUw1OS43ODQgNDEuNTA0Wk01Ni4wNCAyNi4yNEw2MC44ODUxIDI1LjAwNUM2MC4zMjA1IDIyLjc5MDEgNTguMzI1OCAyMS4yNCA1Ni4wNCAyMS4yNFYyNi4yNFpNNTUuNDY0IDI2LjI0VjIxLjI0QzUzLjEzNTcgMjEuMjQgNTEuMTE1NiAyMi44NDcgNTAuNTkyIDI1LjExNTdMNTUuNDY0IDI2LjI0Wk01MS44NjQgNDEuNjQ4TDQ2Ljk5ODEgNDAuNDk3OUM0Ni45OTI5IDQwLjUxOTcgNDYuOTg3OSA0MC41NDE1IDQ2Ljk4MzEgNDAuNTYzM0w1MS44NjQgNDEuNjQ4Wk03NS45MTIgMTA0TDcxLjA3MDYgMTA1LjI0OUM3MS42NDA0IDEwNy40NTcgNzMuNjMxOCAxMDkgNzUuOTEyIDEwOVYxMDRaTTcwLjE1MiA4MS42OEw3NC45OTM0IDgwLjQzMDZDNzQuNDIzNiA3OC4yMjI3IDcyLjQzMjIgNzYuNjggNzAuMTUyIDc2LjY4VjgxLjY4Wk00MS40OTYgODEuNjhWNzYuNjhDMzkuMjE1OCA3Ni42OCAzNy4yMjQ0IDc4LjIyMjcgMzYuNjU0NiA4MC40MzA2TDQxLjQ5NiA4MS42OFpNMzUuNzM2IDEwNFYxMDlDMzguMDE2MiAxMDkgNDAuMDA3NiAxMDcuNDU3IDQwLjU3NzQgMTA1LjI0OUwzNS43MzYgMTA0Wk0xNC4xMzYgMTA0TDkuMzY0MTIgMTAyLjUwN0M4Ljg4OTA3IDEwNC4wMjUgOS4xNjQ5MSAxMDUuNjc5IDEwLjEwNyAxMDYuOTYxQzExLjA0OTIgMTA4LjI0MyAxMi41NDUxIDEwOSAxNC4xMzYgMTA5TDE0LjEzNiAxMDRaTTQzLjUxMiAxMC4xMTJWNS4xMTJDNDEuMzI1NyA1LjExMiAzOS4zOTMgNi41MzI0MiAzOC43NDAxIDguNjE4OTZMNDMuNTEyIDEwLjExMlpNNjkgMTAuMTEyTDczLjc3MTkgOC42MTg5NkM3My4xMTkgNi41MzI0MiA3MS4xODYzIDUuMTEyIDY5IDUuMTEyVjEwLjExMlpNOTguMzc2IDEwNFYxMDlDOTkuOTY2OSAxMDkgMTAxLjQ2MyAxMDguMjQzIDEwMi40MDUgMTA2Ljk2MUMxMDMuMzQ3IDEwNS42NzkgMTAzLjYyMyAxMDQuMDI1IDEwMy4xNDggMTAyLjUwN0w5OC4zNzYgMTA0Wk00My4yODg4IDU1LjE5MTdMNDAuOTg0OCA2My44MzE3TDUwLjY0NzIgNjYuNDA4M0w1Mi45NTEyIDU3Ljc2ODNMNDMuMjg4OCA1NS4xOTE3Wk00NS44MTYgNzAuMTJINjUuODMyVjYwLjEySDQ1LjgxNlY3MC4xMlpNNzAuNjgyNyA2My45MDczTDY4LjUyMjcgNTUuMjY3M0w1OC44MjEzIDU3LjY5MjdMNjAuOTgxMyA2Ni4zMzI3TDcwLjY4MjcgNjMuOTA3M1pNNjguNDc5NiA1NS4xMDY0QzY3LjE1ODkgNTAuNDgzOSA2NS44ODIxIDQ1LjU2NjkgNjQuNjQ5OSA0MC4zNTM5TDU0LjkxODEgNDIuNjU0MUM1Ni4xODE5IDQ4LjAwMTEgNTcuNDk3MSA1My4wNjgxIDU4Ljg2NDQgNTcuODUzNkw2OC40Nzk2IDU1LjEwNjRaTTY0LjY0OTkgNDAuMzUzOUM2My4zOTU3IDM1LjA0NzYgNjIuMTQwOCAyOS45MzEyIDYwLjg4NTEgMjUuMDA1TDUxLjE5NDkgMjcuNDc1QzUyLjQzNTIgMzIuMzQwOCA1My42NzYzIDM3LjQwMDQgNTQuOTE4MSA0Mi42NTQxTDY0LjY0OTkgNDAuMzUzOVpNNTYuMDQgMjEuMjRINTUuNDY0VjMxLjI0SDU2LjA0VjIxLjI0Wk01MC41OTIgMjUuMTE1N0M0OS40NDIxIDMwLjA5ODYgNDguMjQ0MiAzNS4yMjYgNDYuOTk4MSA0MC40OTc5TDU2LjcyOTkgNDIuNzk4MUM1Ny45Nzk4IDM3LjUxIDU5LjE4MTkgMzIuMzY1NCA2MC4zMzYgMjcuMzY0M0w1MC41OTIgMjUuMTE1N1pNNDYuOTgzMSA0MC41NjMzQzQ1Ljg1MDggNDUuNjU4NCA0NC42MjY5IDUwLjUwNTYgNDMuMzEyNCA1NS4xMDY0TDUyLjkyNzYgNTcuODUzNkM1NC4zMDExIDUzLjA0NjQgNTUuNTczMiA0OC4wMDU2IDU2Ljc0NDkgNDIuNzMyNkw0Ni45ODMxIDQwLjU2MzNaTTgwLjc1MzQgMTAyLjc1MUw3NC45OTM0IDgwLjQzMDZMNjUuMzEwNiA4Mi45Mjk0TDcxLjA3MDYgMTA1LjI0OUw4MC43NTM0IDEwMi43NTFaTTcwLjE1MiA3Ni42OEg0MS40OTZWODYuNjhINzAuMTUyVjc2LjY4Wk0zNi42NTQ2IDgwLjQzMDZMMzAuODk0NiAxMDIuNzUxTDQwLjU3NzQgMTA1LjI0OUw0Ni4zMzc0IDgyLjkyOTRMMzYuNjU0NiA4MC40MzA2Wk0zNS43MzYgOTlIMTQuMTM2VjEwOUgzNS43MzZWOTlaTTE4LjkwNzkgMTA1LjQ5M0w0OC4yODM5IDExLjYwNUwzOC43NDAxIDguNjE4OTZMOS4zNjQxMiAxMDIuNTA3TDE4LjkwNzkgMTA1LjQ5M1pNNDMuNTEyIDE1LjExMkg2OVY1LjExMkg0My41MTJWMTUuMTEyWk02NC4yMjgxIDExLjYwNUw5My42MDQxIDEwNS40OTNMMTAzLjE0OCAxMDIuNTA3TDczLjc3MTkgOC42MTg5Nkw2NC4yMjgxIDExLjYwNVpNOTguMzc2IDk5SDc1LjkxMlYxMDlIOTguMzc2Vjk5WlwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIi8+XG4gICAgICAgIDxwYXRoIGQ9XCJNMTguMTg0IDI5MFYyNzcuMTg0TDU5LjY1NiAyMTMuOTY4SDIyLjA3MlYxOTYuMTEySDg1LjcyVjIwOC45MjhMNDQuMjQ4IDI3Mi4xNDRIODYuMTUyVjI5MEgxOC4xODRaXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0xOC4xODQgMjkwSDEzLjE4NEMxMy4xODQgMjkyLjc2MSAxNS40MjI2IDI5NSAxOC4xODQgMjk1VjI5MFpNMTguMTg0IDI3Ny4xODRMMTQuMDAzNCAyNzQuNDQxQzEzLjQ2ODggMjc1LjI1NiAxMy4xODQgMjc2LjIwOSAxMy4xODQgMjc3LjE4NEgxOC4xODRaTTU5LjY1NiAyMTMuOTY4TDYzLjgzNjYgMjE2LjcxMUM2NC44NDQ1IDIxNS4xNzQgNjQuOTI4NiAyMTMuMjA5IDY0LjA1NTYgMjExLjU5MkM2My4xODI3IDIwOS45NzYgNjEuNDkzMyAyMDguOTY4IDU5LjY1NiAyMDguOTY4VjIxMy45NjhaTTIyLjA3MiAyMTMuOTY4SDE3LjA3MkMxNy4wNzIgMjE2LjcyOSAxOS4zMTA2IDIxOC45NjggMjIuMDcyIDIxOC45NjhWMjEzLjk2OFpNMjIuMDcyIDE5Ni4xMTJWMTkxLjExMkMxOS4zMTA2IDE5MS4xMTIgMTcuMDcyIDE5My4zNTEgMTcuMDcyIDE5Ni4xMTJIMjIuMDcyWk04NS43MiAxOTYuMTEySDkwLjcyQzkwLjcyIDE5My4zNTEgODguNDgxNCAxOTEuMTEyIDg1LjcyIDE5MS4xMTJWMTk2LjExMlpNODUuNzIgMjA4LjkyOEw4OS45MDA2IDIxMS42NzFDOTAuNDM1MiAyMTAuODU2IDkwLjcyIDIwOS45MDMgOTAuNzIgMjA4LjkyOEg4NS43MlpNNDQuMjQ4IDI3Mi4xNDRMNDAuMDY3NCAyNjkuNDAxQzM5LjA1OTUgMjcwLjkzOCAzOC45NzU0IDI3Mi45MDMgMzkuODQ4NCAyNzQuNTJDNDAuNzIxMyAyNzYuMTM2IDQyLjQxMDcgMjc3LjE0NCA0NC4yNDggMjc3LjE0NFYyNzIuMTQ0Wk04Ni4xNTIgMjcyLjE0NEg5MS4xNTJDOTEuMTUyIDI2OS4zODMgODguOTEzNCAyNjcuMTQ0IDg2LjE1MiAyNjcuMTQ0VjI3Mi4xNDRaTTg2LjE1MiAyOTBWMjk1Qzg4LjkxMzQgMjk1IDkxLjE1MiAyOTIuNzYxIDkxLjE1MiAyOTBIODYuMTUyWk0yMy4xODQgMjkwVjI3Ny4xODRIMTMuMTg0VjI5MEgyMy4xODRaTTIyLjM2NDYgMjc5LjkyN0w2My44MzY2IDIxNi43MTFMNTUuNDc1NCAyMTEuMjI1TDE0LjAwMzQgMjc0LjQ0MUwyMi4zNjQ2IDI3OS45MjdaTTU5LjY1NiAyMDguOTY4SDIyLjA3MlYyMTguOTY4SDU5LjY1NlYyMDguOTY4Wk0yNy4wNzIgMjEzLjk2OFYxOTYuMTEySDE3LjA3MlYyMTMuOTY4SDI3LjA3MlpNMjIuMDcyIDIwMS4xMTJIODUuNzJWMTkxLjExMkgyMi4wNzJWMjAxLjExMlpNODAuNzIgMTk2LjExMlYyMDguOTI4SDkwLjcyVjE5Ni4xMTJIODAuNzJaTTgxLjUzOTQgMjA2LjE4NUw0MC4wNjc0IDI2OS40MDFMNDguNDI4NyAyNzQuODg3TDg5LjkwMDYgMjExLjY3MUw4MS41Mzk0IDIwNi4xODVaTTQ0LjI0OCAyNzcuMTQ0SDg2LjE1MlYyNjcuMTQ0SDQ0LjI0OFYyNzcuMTQ0Wk04MS4xNTIgMjcyLjE0NFYyOTBIOTEuMTUyVjI3Mi4xNDRIODEuMTUyWk04Ni4xNTIgMjg1SDE4LjE4NFYyOTVIODYuMTUyVjI4NVpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPlxuICAgICAgPC9zdmc+XG4gICAgPC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPHNwYW4gKm5nRm9yPVwibGV0IGMgb2YgX3ZhbHVlc1wiXG4gICAgY2xhc3M9XCJ2ZXJ0aWNhbC1saXN0LWZpbHRlci0taXRlbSB0ZXh0LXByaW1hcnlcIlxuICAgIFtjbGFzcy5ib3JkZXItcHJpbWFyeV09XCJjID09PSBmaWx0ZXJWYWx1ZVwiXG4gICAgW2F0dHIuZGF0YS12YWx1ZV09XCJjXCJcbiAgICBbYXR0ci5kYXRhLXNlbGVjdGVkXT1cImMgPT09IGZpbHRlclZhbHVlXCJcbiAgICAoY2xpY2spPVwiY2hhcmFjdGVyQ2xpY2soYylcIj57eyBjIH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
@@ -196,12 +196,12 @@ export class TheSeamHtmlTemplateViewerComponent {
196
196
  return this._elementRef.nativeElement.querySelector('.os-scrollbar-handle.active') !== null;
197
197
  }
198
198
  }
199
- TheSeamHtmlTemplateViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
200
- TheSeamHtmlTemplateViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamHtmlTemplateViewerComponent, selector: "seam-html-template-viewer", inputs: { src: "src", dataVersion: "dataVersion", data: "data", scrollable: "scrollable" }, viewQueries: [{ propertyName: "iframeElementRef", first: true, predicate: ["iframeElement"], descendants: true, static: true }], ngImport: i0, template: "<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n", styles: [":host{display:block}.iframe-mouse-block{position:absolute;top:0;right:0;height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "directive", type: i3.ElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"] }] });
199
+ TheSeamHtmlTemplateViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
200
+ TheSeamHtmlTemplateViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamHtmlTemplateViewerComponent, selector: "seam-html-template-viewer", inputs: { src: "src", dataVersion: "dataVersion", data: "data", scrollable: "scrollable" }, viewQueries: [{ propertyName: "iframeElementRef", first: true, predicate: ["iframeElement"], descendants: true, static: true }], ngImport: i0, template: "<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n", styles: [":host{display:block}.iframe-mouse-block{position:absolute;top:0;right:0;height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "directive", type: i3.ElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"] }] });
201
201
  __decorate([
202
202
  InputBoolean()
203
203
  ], TheSeamHtmlTemplateViewerComponent.prototype, "scrollable", null);
204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, decorators: [{
204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, decorators: [{
205
205
  type: Component,
206
206
  args: [{ selector: 'seam-html-template-viewer', template: "<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n", styles: [":host{display:block}.iframe-mouse-block{position:absolute;top:0;right:0;height:100%;width:100%}\n"] }]
207
207
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { src: [{
@@ -216,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
216
216
  type: ViewChild,
217
217
  args: ['iframeElement', { static: true }]
218
218
  }] } });
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvaHRtbC10ZW1wbGF0ZS12aWV3ZXIvaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvaHRtbC10ZW1wbGF0ZS12aWV3ZXIvaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBcUIsU0FBUyxFQUFjLEtBQUssRUFBNkIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXJILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTs7Ozs7QUFPdEQsSUFBSyxtQkFHSjtBQUhELFdBQUssbUJBQW1CO0lBQ3RCLG1EQUE0QixDQUFBO0lBQzVCLHVEQUFnQyxDQUFBO0FBQ2xDLENBQUMsRUFISSxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBR3ZCO0FBWUQsTUFBTSxPQUFPLGtDQUFrQztJQVM3QyxJQUNJLEdBQUcsS0FBZ0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFBLENBQUMsQ0FBQztJQUN6RCxJQUFJLEdBQUcsQ0FBQyxHQUE4QjtRQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQTtRQUNmLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBR0QsSUFDSSxXQUFXLENBQUMsS0FBZ0M7UUFDOUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQTtRQUNyQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQTtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQTtRQUN0QixJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FB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QUFBO0lBQzNCLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsNkJBQTZCLENBQUMsS0FBSyxJQUFJLENBQUE7SUFDN0YsQ0FBQzs7K0hBN05VLGtDQUFrQzttSEFBbEMsa0NBQWtDLDhSQ3pCL0Msd2VBWUE7QUQ4Q0U7SUFEVSxZQUFZLEVBQUU7b0VBUXZCOzJGQXhDVSxrQ0FBa0M7a0JBTDlDLFNBQVM7K0JBQ0UsMkJBQTJCO3NKQWNqQyxHQUFHO3NCQUROLEtBQUs7Z0JBU0YsV0FBVztzQkFEZCxLQUFLO2dCQVdGLElBQUk7c0JBRFAsS0FBSztnQkFNRixVQUFVO3NCQURiLEtBQUs7Z0JBYUYsZ0JBQWdCO3NCQURuQixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmludGVyZmFjZSBUZW1wbGF0ZVJlc2l6ZU1lc3NhZ2VQYXlsb2FkIHtcbiAgd2lkdGg6IG51bWJlclxuICBoZWlnaHQ6IG51bWJlclxufVxuXG5lbnVtIFRlbXBsYXRlTWVzc2FnZVR5cGUge1xuICBUcGxEYXRhID0gJ3RoZXNlYW1fdHBsX2RhdGEnLFxuICBUcGxSZXNpemUgPSAndGhlc2VhbV90cGxfcmVzaXplJyxcbn1cblxuaW50ZXJmYWNlIFRlbXBsYXRlTWVzc2FnZTxUVHlwZSwgVFBheWxvYWQ+IHtcbiAgdHlwZTogVFR5cGVcbiAgcGF5bG9hZDogVFBheWxvYWRcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS1odG1sLXRlbXBsYXRlLXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9odG1sLXRlbXBsYXRlLXZpZXdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2h0bWwtdGVtcGxhdGUtdmlld2VyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbUh0bWxUZW1wbGF0ZVZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Njcm9sbGFibGU6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzOiB7IFtrZXkgaW4gVGVtcGxhdGVNZXNzYWdlVHlwZV06IChwYXlsb2FkOiBhbnkpID0+IHZvaWQgfVxuXG4gIHByaXZhdGUgX21lc3NhZ2U6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgcHJpdmF0ZSBfZGF0YVZlcnNpb246IG51bWJlciA9IDBcbiAgcHJpdmF0ZSBfc2Nyb2xsSGFuZGxlT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXIgfCBudWxsID0gbnVsbFxuXG4gIEBJbnB1dCgpXG4gIGdldCBzcmMoKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCB7IHJldHVybiB0aGlzLl9zcmMgfVxuICBzZXQgc3JjKHZhbDogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX3NyYyA9IHZhbFxuICAgIHRoaXMuX3VwZGF0ZVNyYygpXG4gIH1cbiAgcHJpdmF0ZSBfc3JjOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG5cbiAgQElucHV0KClcbiAgc2V0IGRhdGFWZXJzaW9uKHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgY29uc3QgZHYgPSB2YWx1ZSB8fCAwXG4gICAgY29uc3Qgc2VuZERhdGEgPSB0aGlzLl9kYXRhVmVyc2lvbiAhPT0gZHZcbiAgICB0aGlzLl9kYXRhVmVyc2lvbiA9IGR2XG4gICAgaWYgKHNlbmREYXRhKSB7XG4gICAgICB0aGlzLnBvc3RNZXNzYWdlKHRoaXMuX21lc3NhZ2UpXG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGRhdGEodmFsdWU6IGFueSkge1xuICAgIHRoaXMucG9zdE1lc3NhZ2UoKHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQpID8gSlNPTi5zdHJpbmdpZnkodmFsdWUpIDogdmFsdWUpXG4gIH1cblxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKClcbiAgc2V0IHNjcm9sbGFibGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zY3JvbGxhYmxlID0gdmFsdWVcbiAgICBpZiAodGhpcy5fc2Nyb2xsYWJsZSkge1xuICAgICAgdGhpcy5faW5pdFNjcm9sbEhhbmRsZU9ic2VydmVyKClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZGVzdHJveVNjcm9sbEhhbmRsZU9ic2VydmVyKClcbiAgICB9XG4gIH1cblxuICBfc2Nyb2xsYWJsZTogYm9vbGVhbiA9IGZhbHNlXG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lRWxlbWVudCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHNldCBpZnJhbWVFbGVtZW50UmVmKHZhbDogRWxlbWVudFJlZjxIVE1MSUZyYW1lRWxlbWVudD4pIHtcbiAgICB0aGlzLl9pZnJhbWVFbGVtZW50UmVmID0gdmFsXG4gICAgY29uc3QgaWZyYW1lTmF0aXZlRWxlbWVudCA9IHRoaXMuX2dldElGcmFtZU5hdGl2ZUVsZW1lbnQoKVxuICAgIGlmIChpZnJhbWVOYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLl91cGRhdGVTcmMoKVxuICAgICAgaWZyYW1lTmF0aXZlRWxlbWVudC5vbmxvYWQgPSAoKSA9PiB0aGlzLnBvc3RNZXNzYWdlKHRoaXMuX21lc3NhZ2UpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2lmcmFtZUVsZW1lbnRSZWYhOiBFbGVtZW50UmVmPEhUTUxJRnJhbWVFbGVtZW50PlxuXG4gIF9zY3JvbGxiYXJPcHRpb25zID0ge1xuICAgIGNhbGxiYWNrczoge1xuICAgICAgb25Jbml0aWFsaXplZDogKCkgPT4gdGhpcy5faW5pdFNjcm9sbEhhbmRsZU9ic2VydmVyKCksXG4gICAgICAvLyBPbmx5IHNjcm9sbGJhciBoYW5kbGVzIGZyb20gT3ZlcmxheVNjcm9sbGJhcnMgYXJlIGN1cnJlbnRseSBvYnNlcnZlZCxcbiAgICAgIC8vIHNvIHdlIGNhbiBqdXN0IGRpc2FibGUgdGhlIG9ic2VydmVyIGZvciBuYXRpdmUgc2Nyb2xsYmFycy5cbiAgICAgIG9uSW5pdGlhbGl6YXRpb25XaXRoZHJhd246ICgpID0+IHRoaXMuX2Rlc3Ryb3lTY3JvbGxIYW5kbGVPYnNlcnZlcigpLFxuICAgICAgb25EZXN0cm95ZWQ6ICgpID0+IHRoaXMuX2Rlc3Ryb3lTY3JvbGxIYW5kbGVPYnNlcnZlcigpLFxuICAgIH1cbiAgfVxuXG4gIF9tb3VzZUJsb2NrQWN0aXZlOiBib29sZWFuID0gZmFsc2VcbiAgX21vdXNlQmxvY2tXaWR0aDogc3RyaW5nID0gJzEwMCUnXG4gIF9tb3VzZUJsb2NrSGVpZ2h0OiBzdHJpbmcgPSAnMTAwJSdcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5fdGVtcGxhdGVNZXNzYWdlSGFuZGxlcnMgPSB7XG4gICAgICBbVGVtcGxhdGVNZXNzYWdlVHlwZS5UcGxEYXRhXTogKCkgPT4geyB9LCAvLyBOb3QgbGlzdGVuaW5nIGZvciBtZXNzYWdlIGZyb20gdGVtcGxhdGVcbiAgICAgIFtUZW1wbGF0ZU1lc3NhZ2VUeXBlLlRwbFJlc2l6ZV06IHRoaXMuX29uUmVzaXplTWVzc2FnZUZyb21UZW1wbGF0ZVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMuX29uTWVzc2FnZUZyb21UZW1wbGF0ZSkpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMuX29uTWVzc2FnZUZyb21UZW1wbGF0ZSlcbiAgICB0aGlzLl9kZXN0cm95U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKVxuICB9XG5cbiAgcHJpdmF0ZSBfb25NZXNzYWdlRnJvbVRlbXBsYXRlID0gKGU6IGFueSkgPT4ge1xuICAgIGNvbnN0IHR5cGUgPSBlLmRhdGEudHlwZSBhcyBUZW1wbGF0ZU1lc3NhZ2VUeXBlXG4gICAgaWYgKHRoaXMuX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzW3R5cGVdKSB7XG4gICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzW3R5cGVdKGUuZGF0YS5wYXlsb2FkKSlcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vblJlc2l6ZU1lc3NhZ2VGcm9tVGVtcGxhdGUgPSAocGF5bG9hZDogVGVtcGxhdGVSZXNpemVNZXNzYWdlUGF5bG9hZCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IGlmcmFtZU5hdGl2ZUVsZW1lbnQgPSB0aGlzLl9nZXRJRnJhbWVOYXRpdmVFbGVtZW50KClcbiAgICBpZiAoaWZyYW1lTmF0aXZlRWxlbWVudCkge1xuICAgICAgaWZyYW1lTmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHtwYXlsb2FkLmhlaWdodH1weGBcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVTcmMoKTogdm9pZCB7XG4gICAgY29uc3QgaWZyYW1lTmF0aXZlRWxlbWVudCA9IHRoaXMuX2dldElGcmFtZU5hdGl2ZUVsZW1lbnQoKVxuICAgIGlmIChpZnJhbWVOYXRpdmVFbGVtZW50KSB7XG4gICAgICBpZnJhbWVOYXRpdmVFbGVtZW50LnNyYyA9IHRoaXMuX3NyYyB8fCAnJ1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBwb3N0TWVzc2FnZShtc2c6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlID0gbXNnXG5cbiAgICBsZXQgX21zZyA9IG1zZ1xuICAgIGNvbnN0IGNvbnRlbnRXaW5kb3cgPSB0aGlzLl9nZXRJRnJhbWVDb250ZW50V2luZG93KClcbiAgICBpZiAoY29udGVudFdpbmRvdyAmJiBfbXNnKSB7XG4gICAgICBpZiAodGhpcy5fZGF0YVZlcnNpb24gPT09IDIpIHtcbiAgICAgICAgY29uc3Qgd3JhcHBlcjogVGVtcGxhdGVNZXNzYWdlPFRlbXBsYXRlTWVzc2FnZVR5cGUsIGFueT4gPSB7IHR5cGU6IFRlbXBsYXRlTWVzc2FnZVR5cGUuVHBsRGF0YSwgcGF5bG9hZDogdW5kZWZpbmVkIH1cbiAgICAgICAgdHJ5IHsgd3JhcHBlci5wYXlsb2FkID0gSlNPTi5wYXJzZShfbXNnKSB9IGNhdGNoIHsgd3JhcHBlci5wYXlsb2FkID0gX21zZyB9XG4gICAgICAgIF9tc2cgPSBKU09OLnN0cmluZ2lmeSh3cmFwcGVyKVxuICAgICAgfVxuXG4gICAgICBjb250ZW50V2luZG93LnBvc3RNZXNzYWdlKF9tc2csICcqJylcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVsb2FkKCk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZVNyYygpXG4gIH1cblxuICBfb25SZXNpemVkKGV2ZW50OiB7IHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyIH0pIHtcbiAgICAvLyBUaGlzIGVuc3VyZXMgdGhlIGlmcmFtZSBzY2FsZXMgaXRzZWxmIGlmIGl0IGlzbid0IGxpc3RlbmluZyB0byBvciBtaXNzZXNcbiAgICAvLyB0aGUgcmVzaXplIGV2ZW50LlxuICAgIHRoaXMucmVsb2FkKClcbiAgfVxuXG4gIHByaXZhdGUgX2dldElGcmFtZU5hdGl2ZUVsZW1lbnQoKTogSFRNTElGcmFtZUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gKHRoaXMuX2lmcmFtZUVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQpIHx8IG51bGxcbiAgfVxuXG4gIHByaXZhdGUgX2dldElGcmFtZUNvbnRlbnRXaW5kb3coKTogV2luZG93IHwgbnVsbCB7XG4gICAgcmV0dXJuICh0aGlzLl9pZnJhbWVFbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50Py5jb250ZW50V2luZG93KSB8fCBudWxsXG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSBNdXRhdGlvbk9ic2VydmVyIHRvIGRldGVjdCB0aGUgJ2FjdGl2ZScgY2xhc3MgYWRkZWQgdG8gYVxuICAgKiBzY3JvbGwgaGFuZGxlLCBiZWNhdXNlIE92ZXJsYXlTY3JvbGxiYXJzIGRvZXMgbm90IHNlZW0gdG8gcHJvdmlkZSBhbiBldmVudFxuICAgKiBmb3Igc2Nyb2xsYmFyIGhhbmRsZSBhY3RpdmF0aW9uL2RlYWN0aXZhdGlvbi5cbiAgICpcbiAgICogVE9ETzogRG8gd2UgbmVlZCB0aGlzIHRvIHdvcmsgZm9yIG5hdGl2ZSBzY3JvbGxiYXJzIGFsc28/XG4gICAqL1xuICBwcml2YXRlIF9pbml0U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyICE9PSBudWxsKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigoKSA9PiB7XG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl9pc1Njcm9sbGJhckhhbmRsZUFjdGl2ZSgpKSB7XG4gICAgICAgICAgICB0aGlzLl9lbmFibGVNb3VzZUJsb2NrKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZU1vdXNlQmxvY2soKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0pXG5cbiAgICAgIG9ic2VydmVyLm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgIGF0dHJpYnV0ZUZpbHRlcjogWyAnY2xhc3MnIF0sXG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogZmFsc2UsXG4gICAgICB9KVxuXG4gICAgICB0aGlzLl9zY3JvbGxIYW5kbGVPYnNlcnZlciA9IG9ic2VydmVyXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgX2Rlc3Ryb3lTY3JvbGxIYW5kbGVPYnNlcnZlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc2Nyb2xsSGFuZGxlT2JzZXJ2ZXIgPT09IG51bGwpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyLmRpc2Nvbm5lY3QoKVxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyID0gbnVsbFxuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgYSB0cmFuc3BhcmVudCBkaXYgdG8gY292ZXIgdGhlIGlmcmFtZS5cbiAgICpcbiAgICogV2hlbiB0aGUgbW91c2UgaXMgb3ZlciBhbiBpZnJhbWUgdGhlIGJyb3dzZXIgc3RvcHMgbGV0dGluZyB0aGUgcGFyZW50XG4gICAqIGRvY3VtZW50IHJlY2VpdmUgbW91c2UgZXZlbnRzLiBBbnl0aGluZyBhY3RpdmVseSB0cmFja2luZyBtb3VzZSBtb3ZlbWVudCBvclxuICAgKiBidXR0b24gcHJlc3NlZCB3aWxsIHRoaW5rIHRoZSBtb3VzZSBoYXMgbGVmdCB0aGUgcGFnZS4gU28gdGhlIHNjcm9sbGJhclxuICAgKiBoYW5kbGUgd291bGQgZGVhY3RpdmF0ZSwgd2hlbiB0aGUgbW91c2UgaG92ZXJzIHRoZSBpZnJhbWUuIFRoaXMgYWRkcyBhblxuICAgKiBlbGVtZW50IHRvIGNvdmVyIHRoZSBpZnJhbWUsIHdoaWNoIHByZXZlbnRzIG1vdXNlIGV2ZW50cyBnZXR0aW5nIHNlbnQgdG9cbiAgICogdGhlIGlmcmFtZS5cbiAgICovXG4gIHByaXZhdGUgX2VuYWJsZU1vdXNlQmxvY2soKTogdm9pZCB7XG4gICAgdGhpcy5fbW91c2VCbG9ja0FjdGl2ZSA9IHRydWVcblxuICAgIGNvbnN0IGlmcmFtZUVsZW1lbnQgPSB0aGlzLl9nZXRJRnJhbWVOYXRpdmVFbGVtZW50KClcbiAgICBpZiAoaWZyYW1lRWxlbWVudCkge1xuICAgICAgY29uc3QgcmVjdCA9IGlmcmFtZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgIHRoaXMuX21vdXNlQmxvY2tXaWR0aCA9IGAke3JlY3Qud2lkdGh9cHhgXG4gICAgICB0aGlzLl9tb3VzZUJsb2NrSGVpZ2h0ID0gYCR7cmVjdC5oZWlnaHR9cHhgXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX21vdXNlQmxvY2tXaWR0aCA9ICcxMDAlJ1xuICAgICAgdGhpcy5fbW91c2VCbG9ja0hlaWdodCA9ICcxMDAlJ1xuICAgIH1cblxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVNb3VzZUJsb2NrKCk6IHZvaWQge1xuICAgIHRoaXMuX21vdXNlQmxvY2tBY3RpdmUgPSBmYWxzZVxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIHByaXZhdGUgX2lzU2Nyb2xsYmFySGFuZGxlQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLm9zLXNjcm9sbGJhci1oYW5kbGUuYWN0aXZlJykgIT09IG51bGxcbiAgfVxuXG59XG4iLCI8ZGl2IChzZWFtRWxlbVJlc2l6ZWQpPVwiX29uUmVzaXplZCgkYW55KCRldmVudCkpXCI+XG4gIDxkaXYgY2xhc3M9XCJlbWJlZC1yZXNwb25zaXZlIGVtYmVkLXJlc3BvbnNpdmUtNGJ5M1wiXG4gICAgW3NlYW1PdmVybGF5U2Nyb2xsYmFyXT1cIl9zY3JvbGxiYXJPcHRpb25zXCJcbiAgICBbb3ZlcmxheVNjcm9sbGJhckVuYWJsZWRdPVwiX3Njcm9sbGFibGVcIj5cbiAgICA8aWZyYW1lICNpZnJhbWVFbGVtZW50IGNsYXNzPVwiZW1iZWQtcmVzcG9uc2l2ZS1pdGVtXCIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPlxuICAgIDxkaXYgKm5nSWY9XCJfbW91c2VCbG9ja0FjdGl2ZVwiXG4gICAgICBjbGFzcz1cImlmcmFtZS1tb3VzZS1ibG9ja1wiXG4gICAgICBbc3R5bGUud2lkdGhdPVwiX21vdXNlQmxvY2tXaWR0aFwiXG4gICAgICBbc3R5bGUuaGVpZ2h0XT1cIl9tb3VzZUJsb2NrSGVpZ2h0XCI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvaHRtbC10ZW1wbGF0ZS12aWV3ZXIvaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvaHRtbC10ZW1wbGF0ZS12aWV3ZXIvaHRtbC10ZW1wbGF0ZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBcUIsU0FBUyxFQUFjLEtBQUssRUFBNkIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXJILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTs7Ozs7QUFPdEQsSUFBSyxtQkFHSjtBQUhELFdBQUssbUJBQW1CO0lBQ3RCLG1EQUE0QixDQUFBO0lBQzVCLHVEQUFnQyxDQUFBO0FBQ2xDLENBQUMsRUFISSxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBR3ZCO0FBWUQsTUFBTSxPQUFPLGtDQUFrQztJQVM3QyxJQUNJLEdBQUcsS0FBZ0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFBLENBQUMsQ0FBQztJQUN6RCxJQUFJLEdBQUcsQ0FBQyxHQUE4QjtRQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQTtRQUNmLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBR0QsSUFDSSxXQUFXLENBQUMsS0FBZ0M7UUFDOUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQTtRQUNyQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQTtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQTtRQUN0QixJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FB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QUFBO0lBQzNCLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsNkJBQTZCLENBQUMsS0FBSyxJQUFJLENBQUE7SUFDN0YsQ0FBQzs7K0hBN05VLGtDQUFrQzttSEFBbEMsa0NBQWtDLDhSQ3pCL0Msd2VBWUE7QUQ4Q0U7SUFEVSxZQUFZLEVBQUU7b0VBUXZCOzJGQXhDVSxrQ0FBa0M7a0JBTDlDLFNBQVM7K0JBQ0UsMkJBQTJCO3NKQWNqQyxHQUFHO3NCQUROLEtBQUs7Z0JBU0YsV0FBVztzQkFEZCxLQUFLO2dCQVdGLElBQUk7c0JBRFAsS0FBSztnQkFNRixVQUFVO3NCQURiLEtBQUs7Z0JBYUYsZ0JBQWdCO3NCQURuQixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmludGVyZmFjZSBUZW1wbGF0ZVJlc2l6ZU1lc3NhZ2VQYXlsb2FkIHtcbiAgd2lkdGg6IG51bWJlclxuICBoZWlnaHQ6IG51bWJlclxufVxuXG5lbnVtIFRlbXBsYXRlTWVzc2FnZVR5cGUge1xuICBUcGxEYXRhID0gJ3RoZXNlYW1fdHBsX2RhdGEnLFxuICBUcGxSZXNpemUgPSAndGhlc2VhbV90cGxfcmVzaXplJyxcbn1cblxuaW50ZXJmYWNlIFRlbXBsYXRlTWVzc2FnZTxUVHlwZSwgVFBheWxvYWQ+IHtcbiAgdHlwZTogVFR5cGVcbiAgcGF5bG9hZDogVFBheWxvYWRcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS1odG1sLXRlbXBsYXRlLXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9odG1sLXRlbXBsYXRlLXZpZXdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2h0bWwtdGVtcGxhdGUtdmlld2VyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbUh0bWxUZW1wbGF0ZVZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Njcm9sbGFibGU6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzOiB7IFtrZXkgaW4gVGVtcGxhdGVNZXNzYWdlVHlwZV06IChwYXlsb2FkOiBhbnkpID0+IHZvaWQgfVxuXG4gIHByaXZhdGUgX21lc3NhZ2U6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcbiAgcHJpdmF0ZSBfZGF0YVZlcnNpb24gPSAwXG4gIHByaXZhdGUgX3Njcm9sbEhhbmRsZU9ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyIHwgbnVsbCA9IG51bGxcblxuICBASW5wdXQoKVxuICBnZXQgc3JjKCk6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgeyByZXR1cm4gdGhpcy5fc3JjIH1cbiAgc2V0IHNyYyh2YWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9zcmMgPSB2YWxcbiAgICB0aGlzLl91cGRhdGVTcmMoKVxuICB9XG4gIHByaXZhdGUgX3NyYzogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpXG4gIHNldCBkYXRhVmVyc2lvbih2YWx1ZTogbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGNvbnN0IGR2ID0gdmFsdWUgfHwgMFxuICAgIGNvbnN0IHNlbmREYXRhID0gdGhpcy5fZGF0YVZlcnNpb24gIT09IGR2XG4gICAgdGhpcy5fZGF0YVZlcnNpb24gPSBkdlxuICAgIGlmIChzZW5kRGF0YSkge1xuICAgICAgdGhpcy5wb3N0TWVzc2FnZSh0aGlzLl9tZXNzYWdlKVxuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBkYXRhKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnBvc3RNZXNzYWdlKCh2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IHZhbHVlKVxuICB9XG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpXG4gIHNldCBzY3JvbGxhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2Nyb2xsYWJsZSA9IHZhbHVlXG4gICAgaWYgKHRoaXMuX3Njcm9sbGFibGUpIHtcbiAgICAgIHRoaXMuX2luaXRTY3JvbGxIYW5kbGVPYnNlcnZlcigpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2Rlc3Ryb3lTY3JvbGxIYW5kbGVPYnNlcnZlcigpXG4gICAgfVxuICB9XG5cbiAgX3Njcm9sbGFibGUgPSBmYWxzZVxuXG4gIEBWaWV3Q2hpbGQoJ2lmcmFtZUVsZW1lbnQnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBzZXQgaWZyYW1lRWxlbWVudFJlZih2YWw6IEVsZW1lbnRSZWY8SFRNTElGcmFtZUVsZW1lbnQ+KSB7XG4gICAgdGhpcy5faWZyYW1lRWxlbWVudFJlZiA9IHZhbFxuICAgIGNvbnN0IGlmcmFtZU5hdGl2ZUVsZW1lbnQgPSB0aGlzLl9nZXRJRnJhbWVOYXRpdmVFbGVtZW50KClcbiAgICBpZiAoaWZyYW1lTmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5fdXBkYXRlU3JjKClcbiAgICAgIGlmcmFtZU5hdGl2ZUVsZW1lbnQub25sb2FkID0gKCkgPT4gdGhpcy5wb3N0TWVzc2FnZSh0aGlzLl9tZXNzYWdlKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9pZnJhbWVFbGVtZW50UmVmITogRWxlbWVudFJlZjxIVE1MSUZyYW1lRWxlbWVudD5cblxuICBfc2Nyb2xsYmFyT3B0aW9ucyA9IHtcbiAgICBjYWxsYmFja3M6IHtcbiAgICAgIG9uSW5pdGlhbGl6ZWQ6ICgpID0+IHRoaXMuX2luaXRTY3JvbGxIYW5kbGVPYnNlcnZlcigpLFxuICAgICAgLy8gT25seSBzY3JvbGxiYXIgaGFuZGxlcyBmcm9tIE92ZXJsYXlTY3JvbGxiYXJzIGFyZSBjdXJyZW50bHkgb2JzZXJ2ZWQsXG4gICAgICAvLyBzbyB3ZSBjYW4ganVzdCBkaXNhYmxlIHRoZSBvYnNlcnZlciBmb3IgbmF0aXZlIHNjcm9sbGJhcnMuXG4gICAgICBvbkluaXRpYWxpemF0aW9uV2l0aGRyYXduOiAoKSA9PiB0aGlzLl9kZXN0cm95U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKSxcbiAgICAgIG9uRGVzdHJveWVkOiAoKSA9PiB0aGlzLl9kZXN0cm95U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKSxcbiAgICB9XG4gIH1cblxuICBfbW91c2VCbG9ja0FjdGl2ZSA9IGZhbHNlXG4gIF9tb3VzZUJsb2NrV2lkdGggPSAnMTAwJSdcbiAgX21vdXNlQmxvY2tIZWlnaHQgPSAnMTAwJSdcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5fdGVtcGxhdGVNZXNzYWdlSGFuZGxlcnMgPSB7XG4gICAgICBbVGVtcGxhdGVNZXNzYWdlVHlwZS5UcGxEYXRhXTogKCkgPT4geyB9LCAvLyBOb3QgbGlzdGVuaW5nIGZvciBtZXNzYWdlIGZyb20gdGVtcGxhdGVcbiAgICAgIFtUZW1wbGF0ZU1lc3NhZ2VUeXBlLlRwbFJlc2l6ZV06IHRoaXMuX29uUmVzaXplTWVzc2FnZUZyb21UZW1wbGF0ZVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMuX29uTWVzc2FnZUZyb21UZW1wbGF0ZSkpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMuX29uTWVzc2FnZUZyb21UZW1wbGF0ZSlcbiAgICB0aGlzLl9kZXN0cm95U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKVxuICB9XG5cbiAgcHJpdmF0ZSBfb25NZXNzYWdlRnJvbVRlbXBsYXRlID0gKGU6IGFueSkgPT4ge1xuICAgIGNvbnN0IHR5cGUgPSBlLmRhdGEudHlwZSBhcyBUZW1wbGF0ZU1lc3NhZ2VUeXBlXG4gICAgaWYgKHRoaXMuX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzW3R5cGVdKSB7XG4gICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuX3RlbXBsYXRlTWVzc2FnZUhhbmRsZXJzW3R5cGVdKGUuZGF0YS5wYXlsb2FkKSlcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vblJlc2l6ZU1lc3NhZ2VGcm9tVGVtcGxhdGUgPSAocGF5bG9hZDogVGVtcGxhdGVSZXNpemVNZXNzYWdlUGF5bG9hZCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IGlmcmFtZU5hdGl2ZUVsZW1lbnQgPSB0aGlzLl9nZXRJRnJhbWVOYXRpdmVFbGVtZW50KClcbiAgICBpZiAoaWZyYW1lTmF0aXZlRWxlbWVudCkge1xuICAgICAgaWZyYW1lTmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHtwYXlsb2FkLmhlaWdodH1weGBcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVTcmMoKTogdm9pZCB7XG4gICAgY29uc3QgaWZyYW1lTmF0aXZlRWxlbWVudCA9IHRoaXMuX2dldElGcmFtZU5hdGl2ZUVsZW1lbnQoKVxuICAgIGlmIChpZnJhbWVOYXRpdmVFbGVtZW50KSB7XG4gICAgICBpZnJhbWVOYXRpdmVFbGVtZW50LnNyYyA9IHRoaXMuX3NyYyB8fCAnJ1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBwb3N0TWVzc2FnZShtc2c6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlID0gbXNnXG5cbiAgICBsZXQgX21zZyA9IG1zZ1xuICAgIGNvbnN0IGNvbnRlbnRXaW5kb3cgPSB0aGlzLl9nZXRJRnJhbWVDb250ZW50V2luZG93KClcbiAgICBpZiAoY29udGVudFdpbmRvdyAmJiBfbXNnKSB7XG4gICAgICBpZiAodGhpcy5fZGF0YVZlcnNpb24gPT09IDIpIHtcbiAgICAgICAgY29uc3Qgd3JhcHBlcjogVGVtcGxhdGVNZXNzYWdlPFRlbXBsYXRlTWVzc2FnZVR5cGUsIGFueT4gPSB7IHR5cGU6IFRlbXBsYXRlTWVzc2FnZVR5cGUuVHBsRGF0YSwgcGF5bG9hZDogdW5kZWZpbmVkIH1cbiAgICAgICAgdHJ5IHsgd3JhcHBlci5wYXlsb2FkID0gSlNPTi5wYXJzZShfbXNnKSB9IGNhdGNoIHsgd3JhcHBlci5wYXlsb2FkID0gX21zZyB9XG4gICAgICAgIF9tc2cgPSBKU09OLnN0cmluZ2lmeSh3cmFwcGVyKVxuICAgICAgfVxuXG4gICAgICBjb250ZW50V2luZG93LnBvc3RNZXNzYWdlKF9tc2csICcqJylcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVsb2FkKCk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZVNyYygpXG4gIH1cblxuICBfb25SZXNpemVkKGV2ZW50OiB7IHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyIH0pIHtcbiAgICAvLyBUaGlzIGVuc3VyZXMgdGhlIGlmcmFtZSBzY2FsZXMgaXRzZWxmIGlmIGl0IGlzbid0IGxpc3RlbmluZyB0byBvciBtaXNzZXNcbiAgICAvLyB0aGUgcmVzaXplIGV2ZW50LlxuICAgIHRoaXMucmVsb2FkKClcbiAgfVxuXG4gIHByaXZhdGUgX2dldElGcmFtZU5hdGl2ZUVsZW1lbnQoKTogSFRNTElGcmFtZUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gKHRoaXMuX2lmcmFtZUVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQpIHx8IG51bGxcbiAgfVxuXG4gIHByaXZhdGUgX2dldElGcmFtZUNvbnRlbnRXaW5kb3coKTogV2luZG93IHwgbnVsbCB7XG4gICAgcmV0dXJuICh0aGlzLl9pZnJhbWVFbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50Py5jb250ZW50V2luZG93KSB8fCBudWxsXG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSBNdXRhdGlvbk9ic2VydmVyIHRvIGRldGVjdCB0aGUgJ2FjdGl2ZScgY2xhc3MgYWRkZWQgdG8gYVxuICAgKiBzY3JvbGwgaGFuZGxlLCBiZWNhdXNlIE92ZXJsYXlTY3JvbGxiYXJzIGRvZXMgbm90IHNlZW0gdG8gcHJvdmlkZSBhbiBldmVudFxuICAgKiBmb3Igc2Nyb2xsYmFyIGhhbmRsZSBhY3RpdmF0aW9uL2RlYWN0aXZhdGlvbi5cbiAgICpcbiAgICogVE9ETzogRG8gd2UgbmVlZCB0aGlzIHRvIHdvcmsgZm9yIG5hdGl2ZSBzY3JvbGxiYXJzIGFsc28/XG4gICAqL1xuICBwcml2YXRlIF9pbml0U2Nyb2xsSGFuZGxlT2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyICE9PSBudWxsKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigoKSA9PiB7XG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl9pc1Njcm9sbGJhckhhbmRsZUFjdGl2ZSgpKSB7XG4gICAgICAgICAgICB0aGlzLl9lbmFibGVNb3VzZUJsb2NrKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZU1vdXNlQmxvY2soKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0pXG5cbiAgICAgIG9ic2VydmVyLm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgIGF0dHJpYnV0ZUZpbHRlcjogWyAnY2xhc3MnIF0sXG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogZmFsc2UsXG4gICAgICB9KVxuXG4gICAgICB0aGlzLl9zY3JvbGxIYW5kbGVPYnNlcnZlciA9IG9ic2VydmVyXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgX2Rlc3Ryb3lTY3JvbGxIYW5kbGVPYnNlcnZlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc2Nyb2xsSGFuZGxlT2JzZXJ2ZXIgPT09IG51bGwpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyLmRpc2Nvbm5lY3QoKVxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZU9ic2VydmVyID0gbnVsbFxuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgYSB0cmFuc3BhcmVudCBkaXYgdG8gY292ZXIgdGhlIGlmcmFtZS5cbiAgICpcbiAgICogV2hlbiB0aGUgbW91c2UgaXMgb3ZlciBhbiBpZnJhbWUgdGhlIGJyb3dzZXIgc3RvcHMgbGV0dGluZyB0aGUgcGFyZW50XG4gICAqIGRvY3VtZW50IHJlY2VpdmUgbW91c2UgZXZlbnRzLiBBbnl0aGluZyBhY3RpdmVseSB0cmFja2luZyBtb3VzZSBtb3ZlbWVudCBvclxuICAgKiBidXR0b24gcHJlc3NlZCB3aWxsIHRoaW5rIHRoZSBtb3VzZSBoYXMgbGVmdCB0aGUgcGFnZS4gU28gdGhlIHNjcm9sbGJhclxuICAgKiBoYW5kbGUgd291bGQgZGVhY3RpdmF0ZSwgd2hlbiB0aGUgbW91c2UgaG92ZXJzIHRoZSBpZnJhbWUuIFRoaXMgYWRkcyBhblxuICAgKiBlbGVtZW50IHRvIGNvdmVyIHRoZSBpZnJhbWUsIHdoaWNoIHByZXZlbnRzIG1vdXNlIGV2ZW50cyBnZXR0aW5nIHNlbnQgdG9cbiAgICogdGhlIGlmcmFtZS5cbiAgICovXG4gIHByaXZhdGUgX2VuYWJsZU1vdXNlQmxvY2soKTogdm9pZCB7XG4gICAgdGhpcy5fbW91c2VCbG9ja0FjdGl2ZSA9IHRydWVcblxuICAgIGNvbnN0IGlmcmFtZUVsZW1lbnQgPSB0aGlzLl9nZXRJRnJhbWVOYXRpdmVFbGVtZW50KClcbiAgICBpZiAoaWZyYW1lRWxlbWVudCkge1xuICAgICAgY29uc3QgcmVjdCA9IGlmcmFtZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgIHRoaXMuX21vdXNlQmxvY2tXaWR0aCA9IGAke3JlY3Qud2lkdGh9cHhgXG4gICAgICB0aGlzLl9tb3VzZUJsb2NrSGVpZ2h0ID0gYCR7cmVjdC5oZWlnaHR9cHhgXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX21vdXNlQmxvY2tXaWR0aCA9ICcxMDAlJ1xuICAgICAgdGhpcy5fbW91c2VCbG9ja0hlaWdodCA9ICcxMDAlJ1xuICAgIH1cblxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVNb3VzZUJsb2NrKCk6IHZvaWQge1xuICAgIHRoaXMuX21vdXNlQmxvY2tBY3RpdmUgPSBmYWxzZVxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIHByaXZhdGUgX2lzU2Nyb2xsYmFySGFuZGxlQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLm9zLXNjcm9sbGJhci1oYW5kbGUuYWN0aXZlJykgIT09IG51bGxcbiAgfVxuXG59XG4iLCI8ZGl2IChzZWFtRWxlbVJlc2l6ZWQpPVwiX29uUmVzaXplZCgkYW55KCRldmVudCkpXCI+XG4gIDxkaXYgY2xhc3M9XCJlbWJlZC1yZXNwb25zaXZlIGVtYmVkLXJlc3BvbnNpdmUtNGJ5M1wiXG4gICAgW3NlYW1PdmVybGF5U2Nyb2xsYmFyXT1cIl9zY3JvbGxiYXJPcHRpb25zXCJcbiAgICBbb3ZlcmxheVNjcm9sbGJhckVuYWJsZWRdPVwiX3Njcm9sbGFibGVcIj5cbiAgICA8aWZyYW1lICNpZnJhbWVFbGVtZW50IGNsYXNzPVwiZW1iZWQtcmVzcG9uc2l2ZS1pdGVtXCIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPlxuICAgIDxkaXYgKm5nSWY9XCJfbW91c2VCbG9ja0FjdGl2ZVwiXG4gICAgICBjbGFzcz1cImlmcmFtZS1tb3VzZS1ibG9ja1wiXG4gICAgICBbc3R5bGUud2lkdGhdPVwiX21vdXNlQmxvY2tXaWR0aFwiXG4gICAgICBbc3R5bGUuaGVpZ2h0XT1cIl9tb3VzZUJsb2NrSGVpZ2h0XCI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -6,14 +6,14 @@ import { TheSeamHtmlTemplateViewerComponent } from './html-template-viewer.compo
6
6
  import * as i0 from "@angular/core";
7
7
  export class TheSeamHtmlTemplateViewerModule {
8
8
  }
9
- TheSeamHtmlTemplateViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- TheSeamHtmlTemplateViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, declarations: [TheSeamHtmlTemplateViewerComponent], imports: [CommonModule,
9
+ TheSeamHtmlTemplateViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ TheSeamHtmlTemplateViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, declarations: [TheSeamHtmlTemplateViewerComponent], imports: [CommonModule,
11
11
  TheSeamScrollbarModule,
12
12
  TheSeamSharedModule], exports: [TheSeamHtmlTemplateViewerComponent] });
13
- TheSeamHtmlTemplateViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, imports: [CommonModule,
13
+ TheSeamHtmlTemplateViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, imports: [CommonModule,
14
14
  TheSeamScrollbarModule,
15
15
  TheSeamSharedModule] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, decorators: [{
17
17
  type: NgModule,
18
18
  args: [{
19
19
  imports: [
@@ -80,6 +80,7 @@ export class TheSeamPdfPageComponent {
80
80
  }
81
81
  catch (err) {
82
82
  // PDF loading error
83
+ // eslint-disable-next-line no-console
83
84
  console.error(err);
84
85
  }
85
86
  }
@@ -100,8 +101,8 @@ export class TheSeamPdfPageComponent {
100
101
  }
101
102
  }
102
103
  }
103
- TheSeamPdfPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
104
- TheSeamPdfPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamPdfPageComponent, selector: "seam-pdf-page", inputs: { page: "page", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold" }, host: { properties: { "class.shadow": "this._shadow" } }, viewQueries: [{ propertyName: "pdfContainer", first: true, predicate: ["pdfContainer"], descendants: true, static: true }, { propertyName: "pdfCanvas", first: true, predicate: ["pdfCanvas"], descendants: true, static: true }], ngImport: i0, template: `
104
+ TheSeamPdfPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
105
+ TheSeamPdfPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamPdfPageComponent, selector: "seam-pdf-page", inputs: { page: "page", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold" }, host: { properties: { "class.shadow": "this._shadow" } }, viewQueries: [{ propertyName: "pdfContainer", first: true, predicate: ["pdfContainer"], descendants: true, static: true }, { propertyName: "pdfCanvas", first: true, predicate: ["pdfCanvas"], descendants: true, static: true }], ngImport: i0, template: `
105
106
  <div #pdfContainer
106
107
  (seamElemResized)="onResized()">
107
108
  <canvas #pdfCanvas></canvas>
@@ -113,7 +114,7 @@ __decorate([
113
114
  __decorate([
114
115
  InputBoolean()
115
116
  ], TheSeamPdfPageComponent.prototype, "responsive", void 0);
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfPageComponent, decorators: [{
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfPageComponent, decorators: [{
117
118
  type: Component,
118
119
  args: [{ selector: 'seam-pdf-page', template: `
119
120
  <div #pdfContainer
@@ -139,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
139
140
  }], renderUpdateThreshold: [{
140
141
  type: Input
141
142
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvcGRmLXZpZXdlci9wZGYtcGFnZS9wZGYtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzlHLE9BQU8sRUFBRSxJQUFJLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRWhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7O0FBZS9ELE1BQU0sT0FBTyx1QkFBdUI7SUFNbEMsSUFDVyxJQUFJLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUN2QyxJQUFXLElBQUksQ0FBQyxLQUFLO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBS0QsSUFBaUMsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQSxDQUFDLENBQUM7SUE2QmpFO1FBekNpQixtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUE7UUFVNUIsV0FBTSxHQUFZLEtBQUssQ0FBQTtRQU9oRDs7O1dBR0c7UUFDc0IsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUUzQzs7Ozs7Ozs7O1dBU0c7UUFDTSwwQkFBcUIsR0FBRyxHQUFHLENBQUE7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QVFtQixNQUFNO3NCQUE5QixLQUFLO2dCQUUyQixPQUFPO3NCQUF2QyxXQUFXO3VCQUFDLGNBQWM7Z0JBRWtCLFlBQVk7c0JBQXhELFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDRCxTQUFTO3NCQUFsRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTWYsVUFBVTtzQkFBbEMsS0FBSztnQkFZRyxxQkFBcUI7c0JBQTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBhdWRpdFRpbWUsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgd2FpdE9uQ29uZGl0aW9uQXN5bmMgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tcGRmLXBhZ2UnLFxuICB0ZW1wbGF0ZTogYFxuICA8ZGl2ICNwZGZDb250YWluZXJcbiAgICAoc2VhbUVsZW1SZXNpemVkKT1cIm9uUmVzaXplZCgpXCI+XG4gICAgPGNhbnZhcyAjcGRmQ2FudmFzPjwvY2FudmFzPlxuICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIDpob3N0IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICBjYW52YXMgeyBkaXNwbGF5OiBibG9jazsgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtUGRmUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaGFkb3c6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcmVzcG9uc2l2ZTogQm9vbGVhbklucHV0XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHBhZ2UoKSB7IHJldHVybiB0aGlzLl9wYWdlIH1cbiAgcHVibGljIHNldCBwYWdlKHZhbHVlKSB7XG4gICAgdGhpcy5fcGFnZSA9IHZhbHVlXG4gICAgc2V0VGltZW91dCgoKSA9PiB7IHRoaXMucmVuZGVyKCkgfSlcbiAgfVxuICBwcml2YXRlIF9wYWdlOiBhbnlcblxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgc2hhZG93OiBib29sZWFuID0gZmFsc2VcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNoYWRvdycpIGdldCBfc2hhZG93KCkgeyByZXR1cm4gdGhpcy5zaGFkb3cgfVxuXG4gIEBWaWV3Q2hpbGQoJ3BkZkNvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pIHBkZkNvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+XG4gIEBWaWV3Q2hpbGQoJ3BkZkNhbnZhcycsIHsgc3RhdGljOiB0cnVlIH0pIHBkZkNhbnZhcz86IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+XG5cbiAgLyoqXG4gICAqIENhbnZhcyB3aWxsIHJlc3BvbnNpdmVseSBzY2FsZSBhbmQgcmVyZW5kZXIgaWYgc2NhbGVkIG1vcmUgdGhhblxuICAgKiBgcmVuZGVyVXBkYXRlVGhyZXNob2xkYCBwaXhlbHMuXG4gICAqL1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcmVzcG9uc2l2ZSA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFRoZSBjYW52YXMgd2lsbCBiZSByZXJlbmRlcmVkIGlmIHRoZSBjYW52YXMgc2l6ZSBjaGFuZ2VzIGJ5IHRoaXMgbWFueVxuICAgKiBwaXhlbHMgZnJvbSB0aGUgbGFzdCByZW5kZXIuXG4gICAqXG4gICAqIFRvIG1ha2UgdGhlIGNhbnZhcyByZXNwb25zaXZlIHVzaW5nIG9ubHkgdGhlIGluaXRpYWwgc2l6ZSBmb3IgaXRzIHJlbmRlclxuICAgKiBzZXQgdGhlIHRocmVzaG9sZCB0byBgLTFgLiBZb3UgY2FuIHN0aWxsIHRyaWdnZXIgYSByZXJlbmRlciBieSBjYWxsaW5nIHRoZVxuICAgKiBgcmVuZGVyKClgIG1ldGhvZC5cbiAgICpcbiAgICogTk9URTogT25seSB1c2VkIHdoZW4gYHJlc3BvbnNpdmVgIGlzIGB0cnVlYC5cbiAgICovXG4gIEBJbnB1dCgpIHJlbmRlclVwZGF0ZVRocmVzaG9sZCA9IDEwMFxuXG4gIHB1YmxpYyByZW5kZXJpbmcgPSBmYWxzZVxuXG4gIHByaXZhdGUgX3JlbmRlclJlcXVlc3RTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHByaXZhdGUgX3JlbmRlciQ6IE9ic2VydmFibGU8dm9pZD5cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9yZW5kZXIkID0gdGhpcy5fcmVuZGVyUmVxdWVzdFN1YmplY3QucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgIGF1ZGl0VGltZSg1MDApLFxuICAgICAgc3dpdGNoTWFwKF8gPT4gZnJvbSh3YWl0T25Db25kaXRpb25Bc3luYygoKSA9PiB0aGlzLnJlbmRlcmluZyA9PT0gZmFsc2UsIDMwICogMTAwMCkpKSxcbiAgICAgIHN3aXRjaE1hcChfID0+IGZyb20odGhpcy5fcmVuZGVyKCkpKVxuICAgIClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCh1bmRlZmluZWQpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5fcmVuZGVyJC5zdWJzY3JpYmUoKVxuICAgIHRoaXMucmVuZGVyKClcbiAgfVxuXG4gIHB1YmxpYyByZW5kZXIoKSB7XG4gICAgdGhpcy5fcmVuZGVyUmVxdWVzdFN1YmplY3QubmV4dCgpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9yZW5kZXIoKSB7XG4gICAgaWYgKCF0aGlzLnBkZkNvbnRhaW5lciB8fCAhdGhpcy5wZGZDYW52YXMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB3ID0gdGhpcy5wZGZDb250YWluZXIubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aFxuICAgICAgY29uc3QgZGVzaXJlZFdpZHRoID0gd1xuICAgICAgY29uc3Qgdmlld3BvcnQgPSB0aGlzLnBhZ2UuZ2V0Vmlld3BvcnQoeyBzY2FsZTogMSB9KVxuICAgICAgY29uc3Qgc2NhbGUgPSBkZXNpcmVkV2lkdGggLyB2aWV3cG9ydC53aWR0aFxuICAgICAgY29uc3Qgc2NhbGVkVmlld3BvcnQgPSB0aGlzLnBhZ2UuZ2V0Vmlld3BvcnQoeyBzY2FsZSB9KVxuXG4gICAgICAvLyBQcmVwYXJlIGNhbnZhcyB1c2luZyBQREYgcGFnZSBkaW1lbnNpb25zXG4gICAgICBjb25zdCBjYW52YXM6IEhUTUxDYW52YXNFbGVtZW50ID0gdGhpcy5wZGZDYW52YXMubmF0aXZlRWxlbWVudFxuICAgICAgY29uc3QgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpXG4gICAgICBjYW52YXMuaGVpZ2h0ID0gc2NhbGVkVmlld3BvcnQuaGVpZ2h0XG4gICAgICBjYW52YXMud2lkdGggPSBzY2FsZWRWaWV3cG9ydC53aWR0aFxuICAgICAgY2FudmFzLnN0eWxlLmhlaWdodCA9IGAke3NjYWxlZFZpZXdwb3J0LmhlaWdodH1weGBcbiAgICAgIGNhbnZhcy5zdHlsZS53aWR0aCA9IGAke3NjYWxlZFZpZXdwb3J0LndpZHRofXB4YFxuXG4gICAgICAvLyBSZW5kZXIgUERGIHBhZ2UgaW50byBjYW52YXMgY29udGV4dFxuICAgICAgY29uc3QgcmVuZGVyQ29udGV4dCA9IHtcbiAgICAgICAgY2FudmFzQ29udGV4dDogY29udGV4dCxcbiAgICAgICAgdmlld3BvcnQ6IHNjYWxlZFZpZXdwb3J0XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlbmRlclRhc2sgPSBhd2FpdCB0aGlzLnBhZ2UucmVuZGVyKHJlbmRlckNvbnRleHQpLnByb21pc2VcblxuICAgICAgLy8gVE9ETzogQWxsb3cgY2FuY2VsaW5nIGluc3RlYWQgb2Ygb25seSB3YWl0aW5nXG4gICAgICAvLyBhd2FpdCByZW5kZXJUYXNrLmNhbmNlbCgpXG4gICAgICB0aGlzLnJlbmRlcmluZyA9IGZhbHNlXG4gICAgICBpZiAodGhpcy5yZXNwb25zaXZlKSB7XG4gICAgICAgIGNhbnZhcy5zdHlsZS53aWR0aCA9ICcxMDAlJ1xuICAgICAgICBjYW52YXMuc3R5bGUuaGVpZ2h0ID0gJzEwMCUnXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAvLyBQREYgbG9hZGluZyBlcnJvclxuICAgICAgY29uc29sZS5lcnJvcihlcnIpXG4gICAgfVxuICB9XG5cbiAgb25SZXNpemVkKCkge1xuICAgIGlmICghdGhpcy5yZXNwb25zaXZlIHx8IHRoaXMucmVuZGVyVXBkYXRlVGhyZXNob2xkID09PSAtMSkgeyByZXR1cm4gfVxuXG4gICAgaWYgKCF0aGlzLnBkZkNvbnRhaW5lciB8fCAhdGhpcy5wZGZDYW52YXMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGNvbnRhaW5lclJlY3QgPSB0aGlzLnBkZkNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gICAgY29uc3QgcGRmV2lkdGggPSB0aGlzLnBkZkNhbnZhcy5uYXRpdmVFbGVtZW50LndpZHRoXG4gICAgY29uc3QgcGRmSGVpZ2h0ID0gdGhpcy5wZGZDYW52YXMubmF0aXZlRWxlbWVudC5oZWlnaHRcbiAgICBjb25zdCB3RGlmZiA9IE1hdGguYWJzKGNvbnRhaW5lclJlY3Qud2lkdGggLSBwZGZXaWR0aClcbiAgICBjb25zdCBoRGlmZiA9IE1hdGguYWJzKGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gcGRmSGVpZ2h0KVxuICAgIGlmICh3RGlmZiA+IHRoaXMucmVuZGVyVXBkYXRlVGhyZXNob2xkIHx8IGhEaWZmID4gdGhpcy5yZW5kZXJVcGRhdGVUaHJlc2hvbGQpIHtcbiAgICAgIHRoaXMucmVuZGVyKClcbiAgICB9XG5cbiAgfVxuXG59XG4iXX0=
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3ZpZXdlcnMvcGRmLXZpZXdlci9wZGYtcGFnZS9wZGYtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzlHLE9BQU8sRUFBRSxJQUFJLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRWhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7O0FBZS9ELE1BQU0sT0FBTyx1QkFBdUI7SUFNbEMsSUFDVyxJQUFJLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUN2QyxJQUFXLElBQUksQ0FBQyxLQUFLO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBS0QsSUFBaUMsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQSxDQUFDLENBQUM7SUE2QmpFO1FBekNpQixtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUE7UUFVNUIsV0FBTSxHQUFHLEtBQUssQ0FBQTtRQU92Qzs7O1dBR0c7UUFDc0IsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUUzQzs7Ozs7Ozs7O1dBU0c7UUFDTSwwQkFBcUIsR0FBRyxHQUFHLENBQUE7UUFFN0IsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUVoQiwwQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBS2pELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FDN0MsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFDOUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUNkLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUssRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNyRixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FDckMsQ0FBQTtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDekIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO0lBQ2YsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUVPLEtBQUssQ0FBQyxPQUFPO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN6QyxPQUFNO1NBQ1A7UUFFRCxJQUFJO1lBQ0YsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFBO1lBQ3JELE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQTtZQUN0QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ3BELE1BQU0sS0FBSyxHQUFHLFlBQVksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFBO1lBQzNDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQTtZQUV2RCwyQ0FBMkM7WUFDM0MsTUFBTSxNQUFNLEdBQXNCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFBO1lBQzlELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDdkMsTUFBTSxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFBO1lBQ3JDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQTtZQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxNQUFNLElBQUksQ0FBQTtZQUNsRCxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxHQUFHLGNBQWMsQ0FBQyxLQUFLLElBQUksQ0FBQTtZQUVoRCxzQ0FBc0M7WUFDdEMsTUFBTSxhQUFhLEdBQUc7Z0JBQ3BCLGFBQWEsRUFBRSxPQUFPO2dCQUN0QixRQUFRLEVBQUUsY0FBYzthQUN6QixDQUFBO1lBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUE7WUFFaEUsZ0RBQWdEO1lBQ2hELDRCQUE0QjtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQTtZQUN0QixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ25CLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQTtnQkFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO2FBQzdCO1NBQ0Y7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLG9CQUFvQjtZQUNwQixzQ0FBc0M7WUFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNuQjtJQUNILENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLHFCQUFxQixLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQUUsT0FBTTtTQUFFO1FBRXJFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN6QyxPQUFNO1NBQ1A7UUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFBO1FBQzdFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQTtRQUNuRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUE7UUFDckQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxDQUFBO1FBQ3RELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQTtRQUN4RCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMscUJBQXFCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM1RSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7U0FDZDtJQUNILENBQUM7O29IQTdIVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qix3Y0FYeEI7Ozs7O0dBS1Q7QUFvQndCO0lBQWYsWUFBWSxFQUFFO3VEQUFlO0FBV2Q7SUFBZixZQUFZLEVBQUU7MkRBQW1COzJGQXpCaEMsdUJBQXVCO2tCQWJuQyxTQUFTOytCQUNFLGVBQWUsWUFDZjs7Ozs7R0FLVDswRUFhVSxJQUFJO3NCQURkLEtBQUs7Z0JBUW1CLE1BQU07c0JBQTlCLEtBQUs7Z0JBRTJCLE9BQU87c0JBQXZDLFdBQVc7dUJBQUMsY0FBYztnQkFFa0IsWUFBWTtzQkFBeEQsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNELFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFNZixVQUFVO3NCQUFsQyxLQUFLO2dCQVlHLHFCQUFxQjtzQkFBN0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyB3YWl0T25Db25kaXRpb25Bc3luYyB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS1wZGYtcGFnZScsXG4gIHRlbXBsYXRlOiBgXG4gIDxkaXYgI3BkZkNvbnRhaW5lclxuICAgIChzZWFtRWxlbVJlc2l6ZWQpPVwib25SZXNpemVkKClcIj5cbiAgICA8Y2FudmFzICNwZGZDYW52YXM+PC9jYW52YXM+XG4gIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3QgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIGNhbnZhcyB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIGBdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1QZGZQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NoYWRvdzogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXNwb25zaXZlOiBCb29sZWFuSW5wdXRcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgcGFnZSgpIHsgcmV0dXJuIHRoaXMuX3BhZ2UgfVxuICBwdWJsaWMgc2V0IHBhZ2UodmFsdWUpIHtcbiAgICB0aGlzLl9wYWdlID0gdmFsdWVcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5yZW5kZXIoKSB9KVxuICB9XG4gIHByaXZhdGUgX3BhZ2U6IGFueVxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzaGFkb3cgPSBmYWxzZVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2hhZG93JykgZ2V0IF9zaGFkb3coKSB7IHJldHVybiB0aGlzLnNoYWRvdyB9XG5cbiAgQFZpZXdDaGlsZCgncGRmQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgcGRmQ29udGFpbmVyPzogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD5cbiAgQFZpZXdDaGlsZCgncGRmQ2FudmFzJywgeyBzdGF0aWM6IHRydWUgfSkgcGRmQ2FudmFzPzogRWxlbWVudFJlZjxIVE1MQ2FudmFzRWxlbWVudD5cblxuICAvKipcbiAgICogQ2FudmFzIHdpbGwgcmVzcG9uc2l2ZWx5IHNjYWxlIGFuZCByZXJlbmRlciBpZiBzY2FsZWQgbW9yZSB0aGFuXG4gICAqIGByZW5kZXJVcGRhdGVUaHJlc2hvbGRgIHBpeGVscy5cbiAgICovXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSByZXNwb25zaXZlID0gZmFsc2VcblxuICAvKipcbiAgICogVGhlIGNhbnZhcyB3aWxsIGJlIHJlcmVuZGVyZWQgaWYgdGhlIGNhbnZhcyBzaXplIGNoYW5nZXMgYnkgdGhpcyBtYW55XG4gICAqIHBpeGVscyBmcm9tIHRoZSBsYXN0IHJlbmRlci5cbiAgICpcbiAgICogVG8gbWFrZSB0aGUgY2FudmFzIHJlc3BvbnNpdmUgdXNpbmcgb25seSB0aGUgaW5pdGlhbCBzaXplIGZvciBpdHMgcmVuZGVyXG4gICAqIHNldCB0aGUgdGhyZXNob2xkIHRvIGAtMWAuIFlvdSBjYW4gc3RpbGwgdHJpZ2dlciBhIHJlcmVuZGVyIGJ5IGNhbGxpbmcgdGhlXG4gICAqIGByZW5kZXIoKWAgbWV0aG9kLlxuICAgKlxuICAgKiBOT1RFOiBPbmx5IHVzZWQgd2hlbiBgcmVzcG9uc2l2ZWAgaXMgYHRydWVgLlxuICAgKi9cbiAgQElucHV0KCkgcmVuZGVyVXBkYXRlVGhyZXNob2xkID0gMTAwXG5cbiAgcHVibGljIHJlbmRlcmluZyA9IGZhbHNlXG5cbiAgcHJpdmF0ZSBfcmVuZGVyUmVxdWVzdFN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSBfcmVuZGVyJDogT2JzZXJ2YWJsZTx2b2lkPlxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3JlbmRlciQgPSB0aGlzLl9yZW5kZXJSZXF1ZXN0U3ViamVjdC5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpLFxuICAgICAgYXVkaXRUaW1lKDUwMCksXG4gICAgICBzd2l0Y2hNYXAoXyA9PiBmcm9tKHdhaXRPbkNvbmRpdGlvbkFzeW5jKCgpID0+IHRoaXMucmVuZGVyaW5nID09PSBmYWxzZSwgMzAgKiAxMDAwKSkpLFxuICAgICAgc3dpdGNoTWFwKF8gPT4gZnJvbSh0aGlzLl9yZW5kZXIoKSkpXG4gICAgKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KHVuZGVmaW5lZClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl9yZW5kZXIkLnN1YnNjcmliZSgpXG4gICAgdGhpcy5yZW5kZXIoKVxuICB9XG5cbiAgcHVibGljIHJlbmRlcigpIHtcbiAgICB0aGlzLl9yZW5kZXJSZXF1ZXN0U3ViamVjdC5uZXh0KClcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3JlbmRlcigpIHtcbiAgICBpZiAoIXRoaXMucGRmQ29udGFpbmVyIHx8ICF0aGlzLnBkZkNhbnZhcykge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHcgPSB0aGlzLnBkZkNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoXG4gICAgICBjb25zdCBkZXNpcmVkV2lkdGggPSB3XG4gICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMucGFnZS5nZXRWaWV3cG9ydCh7IHNjYWxlOiAxIH0pXG4gICAgICBjb25zdCBzY2FsZSA9IGRlc2lyZWRXaWR0aCAvIHZpZXdwb3J0LndpZHRoXG4gICAgICBjb25zdCBzY2FsZWRWaWV3cG9ydCA9IHRoaXMucGFnZS5nZXRWaWV3cG9ydCh7IHNjYWxlIH0pXG5cbiAgICAgIC8vIFByZXBhcmUgY2FudmFzIHVzaW5nIFBERiBwYWdlIGRpbWVuc2lvbnNcbiAgICAgIGNvbnN0IGNhbnZhczogSFRNTENhbnZhc0VsZW1lbnQgPSB0aGlzLnBkZkNhbnZhcy5uYXRpdmVFbGVtZW50XG4gICAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJylcbiAgICAgIGNhbnZhcy5oZWlnaHQgPSBzY2FsZWRWaWV3cG9ydC5oZWlnaHRcbiAgICAgIGNhbnZhcy53aWR0aCA9IHNjYWxlZFZpZXdwb3J0LndpZHRoXG4gICAgICBjYW52YXMuc3R5bGUuaGVpZ2h0ID0gYCR7c2NhbGVkVmlld3BvcnQuaGVpZ2h0fXB4YFxuICAgICAgY2FudmFzLnN0eWxlLndpZHRoID0gYCR7c2NhbGVkVmlld3BvcnQud2lkdGh9cHhgXG5cbiAgICAgIC8vIFJlbmRlciBQREYgcGFnZSBpbnRvIGNhbnZhcyBjb250ZXh0XG4gICAgICBjb25zdCByZW5kZXJDb250ZXh0ID0ge1xuICAgICAgICBjYW52YXNDb250ZXh0OiBjb250ZXh0LFxuICAgICAgICB2aWV3cG9ydDogc2NhbGVkVmlld3BvcnRcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVuZGVyVGFzayA9IGF3YWl0IHRoaXMucGFnZS5yZW5kZXIocmVuZGVyQ29udGV4dCkucHJvbWlzZVxuXG4gICAgICAvLyBUT0RPOiBBbGxvdyBjYW5jZWxpbmcgaW5zdGVhZCBvZiBvbmx5IHdhaXRpbmdcbiAgICAgIC8vIGF3YWl0IHJlbmRlclRhc2suY2FuY2VsKClcbiAgICAgIHRoaXMucmVuZGVyaW5nID0gZmFsc2VcbiAgICAgIGlmICh0aGlzLnJlc3BvbnNpdmUpIHtcbiAgICAgICAgY2FudmFzLnN0eWxlLndpZHRoID0gJzEwMCUnXG4gICAgICAgIGNhbnZhcy5zdHlsZS5oZWlnaHQgPSAnMTAwJSdcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIFBERiBsb2FkaW5nIGVycm9yXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgY29uc29sZS5lcnJvcihlcnIpXG4gICAgfVxuICB9XG5cbiAgb25SZXNpemVkKCkge1xuICAgIGlmICghdGhpcy5yZXNwb25zaXZlIHx8IHRoaXMucmVuZGVyVXBkYXRlVGhyZXNob2xkID09PSAtMSkgeyByZXR1cm4gfVxuXG4gICAgaWYgKCF0aGlzLnBkZkNvbnRhaW5lciB8fCAhdGhpcy5wZGZDYW52YXMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGNvbnRhaW5lclJlY3QgPSB0aGlzLnBkZkNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gICAgY29uc3QgcGRmV2lkdGggPSB0aGlzLnBkZkNhbnZhcy5uYXRpdmVFbGVtZW50LndpZHRoXG4gICAgY29uc3QgcGRmSGVpZ2h0ID0gdGhpcy5wZGZDYW52YXMubmF0aXZlRWxlbWVudC5oZWlnaHRcbiAgICBjb25zdCB3RGlmZiA9IE1hdGguYWJzKGNvbnRhaW5lclJlY3Qud2lkdGggLSBwZGZXaWR0aClcbiAgICBjb25zdCBoRGlmZiA9IE1hdGguYWJzKGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gcGRmSGVpZ2h0KVxuICAgIGlmICh3RGlmZiA+IHRoaXMucmVuZGVyVXBkYXRlVGhyZXNob2xkIHx8IGhEaWZmID4gdGhpcy5yZW5kZXJVcGRhdGVUaHJlc2hvbGQpIHtcbiAgICAgIHRoaXMucmVuZGVyKClcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -17,12 +17,12 @@ export class PdfRendererService {
17
17
  return from(fetch(url)).pipe(switchMap(v => this._pdfjs$.pipe(switchMap(pdfjs => pdfjs.getDocument(v).promise))));
18
18
  }
19
19
  }
20
- PdfRendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: PdfRendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
- PdfRendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: PdfRendererService, providedIn: 'root' });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: PdfRendererService, decorators: [{
20
+ PdfRendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PdfRendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ PdfRendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PdfRendererService, providedIn: 'root' });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PdfRendererService, decorators: [{
23
23
  type: Injectable,
24
24
  args: [{
25
25
  providedIn: 'root'
26
26
  }]
27
27
  }], ctorParameters: function () { return []; } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXJlbmRlcmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdmlld2Vycy9wZGYtdmlld2VyL3BkZi1yZW5kZXJlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQTtBQUN2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUU1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7QUFLN0QsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QjtRQUNFLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLENBQUE7UUFDN0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUM3QixHQUFHLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRTtnQkFDeEMsMkNBQTJDO2dCQUMzQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsU0FBUyxHQUFHLGlEQUFtRCxLQUFhLENBQUMsT0FBUSxvQkFBb0IsQ0FBQTthQUNwSTtRQUNILENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQy9DLENBQUE7SUFDSCxDQUFDO0lBRU0sV0FBVyxDQUFDLEdBQVc7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMxQixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDOUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDakQsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDOzsrR0F2QlUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyB3cmFwSW50b09ic2VydmFibGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBkZlJlbmRlcmVyU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGRmanMkOiBPYnNlcnZhYmxlPGFueT5cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjb25zdCBwZGZqc0ltcG9ydCA9IHdyYXBJbnRvT2JzZXJ2YWJsZShpbXBvcnQoJ3BkZmpzLWRpc3QvbGVnYWN5L2J1aWxkL3BkZicpKVxuICAgIHRoaXMuX3BkZmpzJCA9IHBkZmpzSW1wb3J0LnBpcGUoXG4gICAgICB0YXAoKHBkZkpzOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKCFwZGZKcy5HbG9iYWxXb3JrZXJPcHRpb25zLndvcmtlclNyYykge1xuICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcbiAgICAgICAgICBwZGZKcy5HbG9iYWxXb3JrZXJPcHRpb25zLndvcmtlclNyYyA9IGBodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9wZGYuanMvJHsgKHBkZkpzIGFzIGFueSkudmVyc2lvbiB9L3BkZi53b3JrZXIubWluLmpzYFxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgZ2V0RG9jdW1lbnQodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBmcm9tKGZldGNoKHVybCkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAodiA9PiB0aGlzLl9wZGZqcyQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKHBkZmpzID0+IHBkZmpzLmdldERvY3VtZW50KHYpLnByb21pc2UpXG4gICAgICApKVxuICAgIClcbiAgfVxufVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXJlbmRlcmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdmlld2Vycy9wZGYtdmlld2VyL3BkZi1yZW5kZXJlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQTtBQUN2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUU1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7QUFLN0QsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QjtRQUNFLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLENBQUE7UUFDN0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUM3QixHQUFHLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRTtnQkFDeEMsMkNBQTJDO2dCQUMzQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsU0FBUyxHQUFHLGlEQUFrRCxLQUFhLENBQUMsT0FBTyxvQkFBb0IsQ0FBQTthQUNsSTtRQUNILENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQy9DLENBQUE7SUFDSCxDQUFDO0lBRU0sV0FBVyxDQUFDLEdBQVc7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMxQixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDOUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDakQsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDOzsrR0F2QlUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyB3cmFwSW50b09ic2VydmFibGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBkZlJlbmRlcmVyU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGRmanMkOiBPYnNlcnZhYmxlPGFueT5cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjb25zdCBwZGZqc0ltcG9ydCA9IHdyYXBJbnRvT2JzZXJ2YWJsZShpbXBvcnQoJ3BkZmpzLWRpc3QvbGVnYWN5L2J1aWxkL3BkZicpKVxuICAgIHRoaXMuX3BkZmpzJCA9IHBkZmpzSW1wb3J0LnBpcGUoXG4gICAgICB0YXAoKHBkZkpzOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKCFwZGZKcy5HbG9iYWxXb3JrZXJPcHRpb25zLndvcmtlclNyYykge1xuICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcbiAgICAgICAgICBwZGZKcy5HbG9iYWxXb3JrZXJPcHRpb25zLndvcmtlclNyYyA9IGBodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9wZGYuanMvJHsocGRmSnMgYXMgYW55KS52ZXJzaW9ufS9wZGYud29ya2VyLm1pbi5qc2BcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuICB9XG5cbiAgcHVibGljIGdldERvY3VtZW50KHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gZnJvbShmZXRjaCh1cmwpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKHYgPT4gdGhpcy5fcGRmanMkLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcChwZGZqcyA9PiBwZGZqcy5nZXREb2N1bWVudCh2KS5wcm9taXNlKVxuICAgICAgKSlcbiAgICApXG4gIH1cbn1cbiJdfQ==
@@ -54,6 +54,7 @@ export class TheSeamPdfViewerComponent {
54
54
  }
55
55
  catch (err) {
56
56
  // TODO: Decide how to conveniently display these errors.
57
+ // eslint-disable-next-line no-console
57
58
  console.error(err);
58
59
  this._pageNumbersSubject.next([]);
59
60
  }
@@ -114,8 +115,8 @@ export class TheSeamPdfViewerComponent {
114
115
  }))));
115
116
  }
116
117
  }
117
- TheSeamPdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerComponent, deps: [{ token: i1.PdfRendererService }], target: i0.ɵɵFactoryTarget.Component });
118
- TheSeamPdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamPdfViewerComponent, selector: "seam-pdf-viewer", inputs: { pdfUrl: "pdfUrl", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold", pageRange: "pageRange", pageNumber: "pageNumber", pageNumbers: "pageNumbers" }, ngImport: i0, template: `
118
+ TheSeamPdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerComponent, deps: [{ token: i1.PdfRendererService }], target: i0.ɵɵFactoryTarget.Component });
119
+ TheSeamPdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamPdfViewerComponent, selector: "seam-pdf-viewer", inputs: { pdfUrl: "pdfUrl", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold", pageRange: "pageRange", pageNumber: "pageNumber", pageNumbers: "pageNumbers" }, ngImport: i0, template: `
119
120
  <ng-container *ngFor="let page of pages$ | async">
120
121
  <seam-pdf-page
121
122
  class="mb-2"
@@ -132,7 +133,7 @@ __decorate([
132
133
  __decorate([
133
134
  InputBoolean()
134
135
  ], TheSeamPdfViewerComponent.prototype, "responsive", void 0);
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerComponent, decorators: [{
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerComponent, decorators: [{
136
137
  type: Component,
137
138
  args: [{ selector: 'seam-pdf-viewer', template: `
138
139
  <ng-container *ngFor="let page of pages$ | async">
@@ -160,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
160
161
  }], pageNumbers: [{
161
162
  type: Input
162
163
  }] } });
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdmlld2Vycy9wZGYtdmlld2VyL3BkZi12aWV3ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZGLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDM0UsT0FBTyxFQUFFLEdBQUcsRUFBZSxTQUFTLEVBQU8sTUFBTSxnQkFBZ0IsQ0FBQTtBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUE7Ozs7O0FBb0J0RCxNQUFNLE9BQU8seUJBQXlCO0lBSXBDLElBQ0ksTUFBTSxLQUFnQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBQy9ELElBQUksTUFBTSxDQUFDLEtBQWdDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQVdEOzs7Ozs7Ozs7T0FTRztJQUNILElBQ0kscUJBQXFCLENBQUMsS0FBYSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFDdEcsSUFBSSxxQkFBcUIsS0FBYSxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQSxDQUFDLENBQUM7SUFHMUU7Ozs7O09BS0c7SUFDSCxJQUNJLFNBQVMsS0FBZSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFD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LGlCQUFpQixZQUNqQjs7Ozs7Ozs7OztHQVVUO3lHQVFHLE1BQU07c0JBRFQsS0FBSztnQkFRbUIsTUFBTTtzQkFBOUIsS0FBSztnQkFNbUIsVUFBVTtzQkFBbEMsS0FBSztnQkFhRixxQkFBcUI7c0JBRHhCLEtBQUs7Z0JBWUYsU0FBUztzQkFEWixLQUFLO2dCQW1DRixVQUFVO3NCQURiLEtBQUs7Z0JBWUYsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VBcnJheSwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZnJvbSwgT2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyB3cmFwSW50b09ic2VydmFibGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IFBkZlJlbmRlcmVyU2VydmljZSB9IGZyb20gJy4vcGRmLXJlbmRlcmVyLnNlcnZpY2UnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tcGRmLXZpZXdlcicsXG4gIHRlbXBsYXRlOiBgXG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXMkIHwgYXN5bmNcIj5cbiAgICA8c2VhbS1wZGYtcGFnZVxuICAgICAgY2xhc3M9XCJtYi0yXCJcbiAgICAgIFtwYWdlXT1cInBhZ2UgfCBhc3luY1wiXG4gICAgICBbcmVzcG9uc2l2ZV09XCJyZXNwb25zaXZlXCJcbiAgICAgIFtzaGFkb3ddPVwic2hhZG93XCJcbiAgICAgIFtyZW5kZXJVcGRhdGVUaHJlc2hvbGRdPVwicmVuZGVyVXBkYXRlVGhyZXNob2xkXCI+XG4gICAgPC9zZWFtLXBkZi1wYWdlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgYCxcbiAgc3R5bGVzOiBbYDpob3N0IHsgZGlzcGxheTogYmxvY2s7IH1gXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtUGRmVmlld2VyQ29tcG9uZW50IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NoYWRvdzogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXNwb25zaXZlOiBCb29sZWFuSW5wdXRcblxuICBASW5wdXQoKVxuICBnZXQgcGRmVXJsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgeyByZXR1cm4gdGhpcy5fcGRmVXJsIH1cbiAgc2V0IHBkZlVybCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIHRoaXMuX3BkZlVybCA9IHZhbHVlXG4gICAgdGhpcy5fZG9jdW1lbnRTdWJqZWN0Lm5leHQodmFsdWUpXG4gIH1cbiAgcHJpdmF0ZSBfcGRmVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNoYWRvdyA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIENhbnZhcyB3aWxsIHJlc3BvbnNpdmVseSBzY2FsZSBhbmQgcmVyZW5kZXIgaWYgc2NhbGVkIG1vcmUgdGhhblxuICAgKiBgcmVuZGVyVXBkYXRlVGhyZXNob2xkYCBwaXhlbHMuXG4gICAqL1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcmVzcG9uc2l2ZSA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFRoZSBjYW52YXMgd2lsbCBiZSByZXJlbmRlcmVkIGlmIHRoZSBjYW52YXMgc2l6ZSBjaGFuZ2VzIGJ5IHRoaXMgbWFueVxuICAgKiBwaXhlbHMgZnJvbSB0aGUgbGFzdCByZW5kZXIuXG4gICAqXG4gICAqIFRvIG1ha2UgdGhlIGNhbnZhcyByZXNwb25zaXZlIHVzaW5nIG9ubHkgdGhlIGluaXRpYWwgc2l6ZSBmb3IgaXRzIHJlbmRlclxuICAgKiBzZXQgdGhlIHRocmVzaG9sZCB0byBgLTFgLiBZb3UgY2FuIHN0aWxsIHRyaWdnZXIgYSByZXJlbmRlciBieSBjYWxsaW5nIHRoZVxuICAgKiBgcmVuZGVyKClgIG1ldGhvZC5cbiAgICpcbiAgICogTk9URTogT25seSB1c2VkIHdoZW4gYHJlc3BvbnNpdmVgIGlzIGB0cnVlYC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCByZW5kZXJVcGRhdGVUaHJlc2hvbGQodmFsdWU6IG51bWJlcikgeyB0aGlzLl9yZW5kZXJVcGRhdGVUaHJlc2hvbGQgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkgfVxuICBnZXQgcmVuZGVyVXBkYXRlVGhyZXNob2xkKCk6IG51bWJlciB7IHJldHVybiB0aGlzLl9yZW5kZXJVcGRhdGVUaHJlc2hvbGQgfVxuICBwcml2YXRlIF9yZW5kZXJVcGRhdGVUaHJlc2hvbGQ6IG51bWJlciA9IDEwMFxuXG4gIC8qKlxuICAgKiBSYW5nZSBvZiBwYWdlcyB0byByZW5kZXIuXG4gICAqXG4gICAqIEV4YW1wbGUocGFnZSAxIHRvIHBhZ2UgMyk6XG4gICAqICBbcGFnZVJhbmdlXT1cIlsxLDNdXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBwYWdlUmFuZ2UoKTogbnVtYmVyW10geyByZXR1cm4gdGhpcy5fcGFnZVJhbmdlIH1cbiAgc2V0IHBhZ2VSYW5nZSh2YWx1ZTogbnVtYmVyW10pIHtcbiAgICB0aGlzLl9wYWdlUmFuZ2UgPSB2YWx1ZVxuXG4gICAgaWYgKCF0aGlzLl9wYWdlUmFuZ2UpIHtcbiAgICAgIHRoaXMuX3BhZ2VOdW1iZXJzU3ViamVjdC5uZXh0KHVuZGVmaW5lZClcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmFuZ2UgPSBjb2VyY2VBcnJheSh0aGlzLl9wYWdlUmFuZ2UpXG4gICAgICBpZiAocmFuZ2UubGVuZ3RoICE9PSAyKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignW3BkZi12aWV3ZXJdIEludmFsaWQgUGFnZSBSYW5nZS4gUmFuZ2UgYXJyYXkgbXVzdCBoYXZlIHR3byBudW1iZXJzIG9ubHkuJylcbiAgICAgIH1cbiAgICAgIGlmIChyYW5nZVswXSA+IHJhbmdlWzFdKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignW3BkZi12aWV3ZXJdIEludmFsaWQgUGFnZSBSYW5nZS4gU3RhcnQgb2YgdGhlIHJhbmdlIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSBlbmQuJylcbiAgICAgIH1cblxuICAgICAgY29uc3QgbnVtczogbnVtYmVyW10gPSBbXVxuICAgICAgZm9yIChsZXQgaSA9IHJhbmdlWzBdOyBpIDw9IHJhbmdlWzFdOyBpKyspIHtcbiAgICAgICAgbnVtcy5wdXNoKGkpXG4gICAgICB9XG4gICAgICB0aGlzLl9wYWdlTnVtYmVyc1N1YmplY3QubmV4dChudW1zKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgLy8gVE9ETzogRGVjaWRlIGhvdyB0byBjb252ZW5pZW50bHkgZGlzcGxheSB0aGVzZSBlcnJvcnMuXG4gICAgICBjb25zb2xlLmVycm9yKGVycilcbiAgICAgIHRoaXMuX3BhZ2VOdW1iZXJzU3ViamVjdC5uZXh0KFtdKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9wYWdlUmFuZ2U6IG51bWJlcltdID0gW11cblxuICAvKipcbiAgICogUmVuZGVyIGEgc3BlY2lmaWMgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBwYWdlTnVtYmVyKCk6IG51bWJlciB7IHJldHVybiB0aGlzLl9wYWdlTnVtYmVyIH1cbiAgc2V0IHBhZ2VOdW1iZXIodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3BhZ2VOdW1iZXIgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSwgLTEpXG4gICAgdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0Lm5leHQodGhpcy5fcGFnZU51bWJlciA9PT0gLTEgPyB1bmRlZmluZWQgOiBbIHRoaXMuX3BhZ2VOdW1iZXIgXSlcbiAgfVxuICBwcml2YXRlIF9wYWdlTnVtYmVyID0gLTFcblxuICAvKipcbiAgICogU3BlY2lmaWMgcGFnZSBudW1iZXJzIHRvIHJlbmRlci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBwYWdlTnVtYmVycygpOiBudW1iZXJbXSB7IHJldHVybiB0aGlzLl9wYWdlTnVtYmVycyB9XG4gIHNldCBwYWdlTnVtYmVycyh2YWx1ZTogbnVtYmVyW10pIHtcbiAgICB0aGlzLl9wYWdlTnVtYmVycyA9IHZhbHVlXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5fcGFnZU51bWJlcnMpKSB7XG4gICAgICB0aGlzLl9wYWdlTnVtYmVyc1N1YmplY3QubmV4dCh0aGlzLl9wYWdlTnVtYmVycylcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0Lm5leHQodW5kZWZpbmVkKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9wYWdlTnVtYmVyczogbnVtYmVyW10gPSBbXVxuXG4gIHByaXZhdGUgX2RvY3VtZW50U3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSlcbiAgcHVibGljIGRvY3VtZW50JDogT2JzZXJ2YWJsZTxhbnk+XG4gIHB1YmxpYyBwYWdlcyQ6IE9ic2VydmFibGU8YW55W10+XG5cbiAgLyoqXG4gICAqIFVuZGVmaW5lZCBtZWFucyBhbGwgYSBwYWdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfcGFnZU51bWJlcnNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXJbXSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3BkZlJlbmRlcmVyOiBQZGZSZW5kZXJlclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5kb2N1bWVudCQgPSB0aGlzLl9kb2N1bWVudFN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCh1cmwgPT4ge1xuICAgICAgICBpZiAoIXVybCkge1xuICAgICAgICAgIHJldHVybiBvZigpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3BkZlJlbmRlcmVyLmdldERvY3VtZW50KHVybClcbiAgICAgIH0pXG4gICAgKVxuXG4gICAgY29uc3QgcGFnZU51bWJlcnMkID0gdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpXG5cbiAgICB0aGlzLnBhZ2VzJCA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoZG9jID0+IHBhZ2VOdW1iZXJzJC5waXBlKFxuICAgICAgICBtYXAocGFnZU51bWJlcnMgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhZ2VzOiBhbnlbXSA9IFtdXG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkb2MubnVtUGFnZXM7IGkrKykge1xuICAgICAgICAgICAgaWYgKCFwYWdlTnVtYmVycyB8fCBwYWdlTnVtYmVycy5pbmRleE9mKGkgKyAxKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgcGFnZXMucHVzaChmcm9tKGRvYy5nZXRQYWdlKGkgKyAxKSkpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBwYWdlc1xuICAgICAgICB9KVxuICAgICAgKSlcbiAgICApXG4gIH1cblxufVxuIl19
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdmlld2Vycy9wZGYtdmlld2VyL3BkZi12aWV3ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZGLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDM0UsT0FBTyxFQUFFLEdBQUcsRUFBZSxTQUFTLEVBQU8sTUFBTSxnQkFBZ0IsQ0FBQTtBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUE7Ozs7O0FBb0J0RCxNQUFNLE9BQU8seUJBQXlCO0lBSXBDLElBQ0ksTUFBTSxLQUFnQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBQy9ELElBQUksTUFBTSxDQUFDLEtBQWdDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQVdEOzs7Ozs7Ozs7T0FTRztJQUNILElBQ0kscUJBQXFCLENBQUMsS0FBYSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFDdEcsSUFBSSxxQkFBcUIsS0FBYSxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQSxDQUFDLENBQUM7SUFHMUU7Ozs7O09BS0c7SUFDSCxJQUNJLFNBQVMsS0FBZSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFD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ckMsU0FBUzsrQkFDRSxpQkFBaUIsWUFDakI7Ozs7Ozs7Ozs7R0FVVDt5R0FRRyxNQUFNO3NCQURULEtBQUs7Z0JBUW1CLE1BQU07c0JBQTlCLEtBQUs7Z0JBTW1CLFVBQVU7c0JBQWxDLEtBQUs7Z0JBYUYscUJBQXFCO3NCQUR4QixLQUFLO2dCQVlGLFNBQVM7c0JBRFosS0FBSztnQkFvQ0YsVUFBVTtzQkFEYixLQUFLO2dCQVlGLFdBQVc7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQXJyYXksIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb20sIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgd3JhcEludG9PYnNlcnZhYmxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBQZGZSZW5kZXJlclNlcnZpY2UgfSBmcm9tICcuL3BkZi1yZW5kZXJlci5zZXJ2aWNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXBkZi12aWV3ZXInLFxuICB0ZW1wbGF0ZTogYFxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYWdlIG9mIHBhZ2VzJCB8IGFzeW5jXCI+XG4gICAgPHNlYW0tcGRmLXBhZ2VcbiAgICAgIGNsYXNzPVwibWItMlwiXG4gICAgICBbcGFnZV09XCJwYWdlIHwgYXN5bmNcIlxuICAgICAgW3Jlc3BvbnNpdmVdPVwicmVzcG9uc2l2ZVwiXG4gICAgICBbc2hhZG93XT1cInNoYWRvd1wiXG4gICAgICBbcmVuZGVyVXBkYXRlVGhyZXNob2xkXT1cInJlbmRlclVwZGF0ZVRocmVzaG9sZFwiPlxuICAgIDwvc2VhbS1wZGYtcGFnZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIHN0eWxlczogW2A6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9YF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVBkZlZpZXdlckNvbXBvbmVudCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaGFkb3c6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcmVzcG9uc2l2ZTogQm9vbGVhbklucHV0XG5cbiAgQElucHV0KClcbiAgZ2V0IHBkZlVybCgpOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsIHsgcmV0dXJuIHRoaXMuX3BkZlVybCB9XG4gIHNldCBwZGZVcmwodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcbiAgICB0aGlzLl9wZGZVcmwgPSB2YWx1ZVxuICAgIHRoaXMuX2RvY3VtZW50U3ViamVjdC5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgX3BkZlVybDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzaGFkb3cgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBDYW52YXMgd2lsbCByZXNwb25zaXZlbHkgc2NhbGUgYW5kIHJlcmVuZGVyIGlmIHNjYWxlZCBtb3JlIHRoYW5cbiAgICogYHJlbmRlclVwZGF0ZVRocmVzaG9sZGAgcGl4ZWxzLlxuICAgKi9cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHJlc3BvbnNpdmUgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBUaGUgY2FudmFzIHdpbGwgYmUgcmVyZW5kZXJlZCBpZiB0aGUgY2FudmFzIHNpemUgY2hhbmdlcyBieSB0aGlzIG1hbnlcbiAgICogcGl4ZWxzIGZyb20gdGhlIGxhc3QgcmVuZGVyLlxuICAgKlxuICAgKiBUbyBtYWtlIHRoZSBjYW52YXMgcmVzcG9uc2l2ZSB1c2luZyBvbmx5IHRoZSBpbml0aWFsIHNpemUgZm9yIGl0cyByZW5kZXJcbiAgICogc2V0IHRoZSB0aHJlc2hvbGQgdG8gYC0xYC4gWW91IGNhbiBzdGlsbCB0cmlnZ2VyIGEgcmVyZW5kZXIgYnkgY2FsbGluZyB0aGVcbiAgICogYHJlbmRlcigpYCBtZXRob2QuXG4gICAqXG4gICAqIE5PVEU6IE9ubHkgdXNlZCB3aGVuIGByZXNwb25zaXZlYCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgcmVuZGVyVXBkYXRlVGhyZXNob2xkKHZhbHVlOiBudW1iZXIpIHsgdGhpcy5fcmVuZGVyVXBkYXRlVGhyZXNob2xkID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpIH1cbiAgZ2V0IHJlbmRlclVwZGF0ZVRocmVzaG9sZCgpOiBudW1iZXIgeyByZXR1cm4gdGhpcy5fcmVuZGVyVXBkYXRlVGhyZXNob2xkIH1cbiAgcHJpdmF0ZSBfcmVuZGVyVXBkYXRlVGhyZXNob2xkID0gMTAwXG5cbiAgLyoqXG4gICAqIFJhbmdlIG9mIHBhZ2VzIHRvIHJlbmRlci5cbiAgICpcbiAgICogRXhhbXBsZShwYWdlIDEgdG8gcGFnZSAzKTpcbiAgICogIFtwYWdlUmFuZ2VdPVwiWzEsM11cIlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHBhZ2VSYW5nZSgpOiBudW1iZXJbXSB7IHJldHVybiB0aGlzLl9wYWdlUmFuZ2UgfVxuICBzZXQgcGFnZVJhbmdlKHZhbHVlOiBudW1iZXJbXSkge1xuICAgIHRoaXMuX3BhZ2VSYW5nZSA9IHZhbHVlXG5cbiAgICBpZiAoIXRoaXMuX3BhZ2VSYW5nZSkge1xuICAgICAgdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0Lm5leHQodW5kZWZpbmVkKVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByYW5nZSA9IGNvZXJjZUFycmF5KHRoaXMuX3BhZ2VSYW5nZSlcbiAgICAgIGlmIChyYW5nZS5sZW5ndGggIT09IDIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbcGRmLXZpZXdlcl0gSW52YWxpZCBQYWdlIFJhbmdlLiBSYW5nZSBhcnJheSBtdXN0IGhhdmUgdHdvIG51bWJlcnMgb25seS4nKVxuICAgICAgfVxuICAgICAgaWYgKHJhbmdlWzBdID4gcmFuZ2VbMV0pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbcGRmLXZpZXdlcl0gSW52YWxpZCBQYWdlIFJhbmdlLiBTdGFydCBvZiB0aGUgcmFuZ2UgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIGVuZC4nKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBudW1zOiBudW1iZXJbXSA9IFtdXG4gICAgICBmb3IgKGxldCBpID0gcmFuZ2VbMF07IGkgPD0gcmFuZ2VbMV07IGkrKykge1xuICAgICAgICBudW1zLnB1c2goaSlcbiAgICAgIH1cbiAgICAgIHRoaXMuX3BhZ2VOdW1iZXJzU3ViamVjdC5uZXh0KG51bXMpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAvLyBUT0RPOiBEZWNpZGUgaG93IHRvIGNvbnZlbmllbnRseSBkaXNwbGF5IHRoZXNlIGVycm9ycy5cbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLmVycm9yKGVycilcbiAgICAgIHRoaXMuX3BhZ2VOdW1iZXJzU3ViamVjdC5uZXh0KFtdKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9wYWdlUmFuZ2U6IG51bWJlcltdID0gW11cblxuICAvKipcbiAgICogUmVuZGVyIGEgc3BlY2lmaWMgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBwYWdlTnVtYmVyKCk6IG51bWJlciB7IHJldHVybiB0aGlzLl9wYWdlTnVtYmVyIH1cbiAgc2V0IHBhZ2VOdW1iZXIodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3BhZ2VOdW1iZXIgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSwgLTEpXG4gICAgdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0Lm5leHQodGhpcy5fcGFnZU51bWJlciA9PT0gLTEgPyB1bmRlZmluZWQgOiBbIHRoaXMuX3BhZ2VOdW1iZXIgXSlcbiAgfVxuICBwcml2YXRlIF9wYWdlTnVtYmVyID0gLTFcblxuICAvKipcbiAgICogU3BlY2lmaWMgcGFnZSBudW1iZXJzIHRvIHJlbmRlci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBwYWdlTnVtYmVycygpOiBudW1iZXJbXSB7IHJldHVybiB0aGlzLl9wYWdlTnVtYmVycyB9XG4gIHNldCBwYWdlTnVtYmVycyh2YWx1ZTogbnVtYmVyW10pIHtcbiAgICB0aGlzLl9wYWdlTnVtYmVycyA9IHZhbHVlXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5fcGFnZU51bWJlcnMpKSB7XG4gICAgICB0aGlzLl9wYWdlTnVtYmVyc1N1YmplY3QubmV4dCh0aGlzLl9wYWdlTnVtYmVycylcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0Lm5leHQodW5kZWZpbmVkKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9wYWdlTnVtYmVyczogbnVtYmVyW10gPSBbXVxuXG4gIHByaXZhdGUgX2RvY3VtZW50U3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSlcbiAgcHVibGljIGRvY3VtZW50JDogT2JzZXJ2YWJsZTxhbnk+XG4gIHB1YmxpYyBwYWdlcyQ6IE9ic2VydmFibGU8YW55W10+XG5cbiAgLyoqXG4gICAqIFVuZGVmaW5lZCBtZWFucyBhbGwgYSBwYWdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfcGFnZU51bWJlcnNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXJbXSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3BkZlJlbmRlcmVyOiBQZGZSZW5kZXJlclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5kb2N1bWVudCQgPSB0aGlzLl9kb2N1bWVudFN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCh1cmwgPT4ge1xuICAgICAgICBpZiAoIXVybCkge1xuICAgICAgICAgIHJldHVybiBvZigpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3BkZlJlbmRlcmVyLmdldERvY3VtZW50KHVybClcbiAgICAgIH0pXG4gICAgKVxuXG4gICAgY29uc3QgcGFnZU51bWJlcnMkID0gdGhpcy5fcGFnZU51bWJlcnNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpXG5cbiAgICB0aGlzLnBhZ2VzJCA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoZG9jID0+IHBhZ2VOdW1iZXJzJC5waXBlKFxuICAgICAgICBtYXAocGFnZU51bWJlcnMgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhZ2VzOiBhbnlbXSA9IFtdXG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkb2MubnVtUGFnZXM7IGkrKykge1xuICAgICAgICAgICAgaWYgKCFwYWdlTnVtYmVycyB8fCBwYWdlTnVtYmVycy5pbmRleE9mKGkgKyAxKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgcGFnZXMucHVzaChmcm9tKGRvYy5nZXRQYWdlKGkgKyAxKSkpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBwYWdlc1xuICAgICAgICB9KVxuICAgICAgKSlcbiAgICApXG4gIH1cblxufVxuIl19
@@ -6,14 +6,14 @@ import { TheSeamPdfViewerComponent } from './pdf-viewer.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class TheSeamPdfViewerModule {
8
8
  }
9
- TheSeamPdfViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- TheSeamPdfViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerModule, declarations: [TheSeamPdfViewerComponent,
9
+ TheSeamPdfViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ TheSeamPdfViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerModule, declarations: [TheSeamPdfViewerComponent,
11
11
  TheSeamPdfPageComponent], imports: [CommonModule,
12
12
  TheSeamSharedModule], exports: [TheSeamPdfViewerComponent,
13
13
  TheSeamPdfPageComponent] });
14
- TheSeamPdfViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerModule, imports: [CommonModule,
14
+ TheSeamPdfViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerModule, imports: [CommonModule,
15
15
  TheSeamSharedModule] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamPdfViewerModule, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamPdfViewerModule, decorators: [{
17
17
  type: NgModule,
18
18
  args: [{
19
19
  imports: [
@@ -7,8 +7,8 @@ import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/cdk/drag-drop";
8
8
  export function extendStyles(dest, source) {
9
9
  for (const key in source) {
10
- if (source.hasOwnProperty(key)) {
11
- // tslint:disable-next-line: no-non-null-assertion
10
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
11
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
12
12
  dest[key] = source[key];
13
13
  }
14
14
  }
@@ -19,7 +19,7 @@ export function toggleNativeDragInteractions(element, enable) {
19
19
  extendStyles(element.style, {
20
20
  touchAction: enable ? '' : 'none',
21
21
  webkitUserDrag: enable ? '' : 'none',
22
- userSelect: userSelect,
22
+ userSelect,
23
23
  msUserSelect: userSelect,
24
24
  webkitUserSelect: userSelect,
25
25
  MozUserSelect: userSelect
@@ -126,9 +126,9 @@ export class WidgetDragHandleDirective {
126
126
  }
127
127
  }
128
128
  }
129
- WidgetDragHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: WidgetDragHandleDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: THESEAM_WIDGET_ACCESSOR, optional: true }, { token: i1.CdkDrag, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
130
- WidgetDragHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: WidgetDragHandleDirective, selector: "[seamWidgetDragHandle]", inputs: { disabled: ["cdkDragHandleDisabled", "disabled"] }, host: { classAttribute: "cdk-drag-handle" }, ngImport: i0 });
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: WidgetDragHandleDirective, decorators: [{
129
+ WidgetDragHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WidgetDragHandleDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: THESEAM_WIDGET_ACCESSOR, optional: true }, { token: i1.CdkDrag, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
130
+ WidgetDragHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: WidgetDragHandleDirective, selector: "[seamWidgetDragHandle]", inputs: { disabled: ["cdkDragHandleDisabled", "disabled"] }, host: { classAttribute: "cdk-drag-handle" }, ngImport: i0 });
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WidgetDragHandleDirective, decorators: [{
132
132
  type: Directive,
133
133
  args: [{
134
134
  selector: '[seamWidgetDragHandle]',
@@ -147,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
147
147
  type: Input,
148
148
  args: ['cdkDragHandleDisabled']
149
149
  }] } });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWRyYWctaGFuZGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvZGlyZWN0aXZlcy93aWRnZXQtZHJhZy1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUUzRSxPQUFPLEVBRUwsU0FBUyxFQUlULE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUlMLFFBQVEsRUFFVCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7QUFrQ2xFLE1BQU0sVUFBVSxZQUFZLENBQzFCLElBQW9DLEVBQ3BDLE1BQXdDO0lBRXhDLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxFQUFFO1FBQ3hCLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM5QixrREFBa0Q7WUFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUUsQ0FBQTtTQUN6QjtLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUFDLE9BQW9CLEVBQUUsTUFBZTtJQUNoRixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO0lBRXZDLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFO1FBQzFCLFdBQVcsRUFB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SixPQUFPLEVBQUUsaUJBQWlCO3FCQUMzQjtpQkFDRjs7MEJBNEJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsdUJBQXVCOzswQkFDMUMsUUFBUTs0Q0FYUCxRQUFRO3NCQURYLEtBQUs7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBDZGtEcmFnLCBDZGtEcmFnSGFuZGxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCdcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRG9DaGVjayxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIEluamVjdGlvblRva2VuLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgZmlsdGVyLCBzd2l0Y2hNYXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBnZXRDbG9zZXN0V2lkZ2V0Q2RrRHJhZyB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuLy9cbi8vIE5PVEU6IFRoaXMgd2lsbCBwcm9iYWJseSBOT1QgYmUgdXNlZCBsb25nIHRlcm0sIHVubGVzcyBtb3JlIG9mIHRoZVxuLy8gQ2RrRHJhZ0Ryb3AgY29kZSBpcyByZXdyaXR0ZW4uXG4vL1xuLy8gVGhpcyBkaXJlY3RpdmUgaXMgbWVhbnQgdG8gYmUgYSBIQUNLIHJlcGxhY2VtZW50IGRpcmVjdGl2ZSBmb3IgQ2RrRHJhZ0hhbmRsZS5cbi8vIFRoZSByZWFzb24gdGhpcyB3YXMgbWFkZSBpcyBiZWNhdXNlIENka0RyYWdIYW5kbGUgZG9lc24ndCB3b3JrIGluIGNoaWxkXG4vLyBjb21wb25lbnRzLCBzaW5jZSBpdCB1c2VzIENvbnRlbnRDaGlsZHJlbiB0byBxdWVyeSBmb3IgdGhlIGhhbmRsZXMuXG4vL1xuLy8gVGhpcyBjb3VsZCBlYXNpbHkgYnJlYWssIGJlY2F1c2UgSSBhbSBmb3JjaW5nIHRoZSBoYW5kbGVzIHF1ZXJ5IGxpc3QgdG8gZW1pdFxuLy8gY2hhbmdlcyBtYW51YWxseS4gU28sIGlmIHRoZSBxdWVyeSBsaXN0IGFjdHVhbGx5IGNoYW5nZXMsIHRoZW4gbXkgY2hhbmdlc1xuLy8gd2lsbCBiZSBicm9rZW4uXG4vL1xuXG5cblxuLy8gSGVscGVyIHR5cGUgdGhhdCBpZ25vcmVzIGByZWFkb25seWAgcHJvcGVydGllcy4gVGhpcyBpcyB1c2VkIGluXG4vLyBgZXh0ZW5kU3R5bGVzYCB0byBpZ25vcmUgdGhlIHJlYWRvbmx5IHByb3BlcnRpZXMgb24gQ1NTU3R5bGVEZWNsYXJhdGlvblxuLy8gc2luY2Ugd2Ugd29uJ3QgYmUgdG91Y2hpbmcgdGhvc2UgYW55d2F5LlxudHlwZSBXcml0ZWFibGU8VD4gPSB7IC1yZWFkb25seSBbUCBpbiBrZXlvZiBUXS0/OiBUW1BdIH1cblxuLyoqXG4gKiBFeHRlbmRlZCBDU1NTdHlsZURlY2xhcmF0aW9uIHRoYXQgaW5jbHVkZXMgYSBjb3VwbGUgb2YgZHJhZy1yZWxhdGVkXG4gKiBwcm9wZXJ0aWVzIHRoYXQgYXJlbid0IGluIHRoZSBidWlsdC1pbiBUUyB0eXBpbmdzLlxuICovXG5pbnRlcmZhY2UgRHJhZ0NTU1N0eWxlRGVjbGFyYXRpb24gZXh0ZW5kcyBDU1NTdHlsZURlY2xhcmF0aW9uIHtcbiAgd2Via2l0VXNlckRyYWc6IHN0cmluZ1xuICBNb3pVc2VyU2VsZWN0OiBzdHJpbmcgLy8gRm9yIHNvbWUgcmVhc29uIHRoZSBGaXJlZm94IHByb3BlcnR5IGlzIGluIFBhc2NhbENhc2UuXG4gIG1zU2Nyb2xsU25hcFR5cGU6IHN0cmluZ1xuICBzY3JvbGxTbmFwVHlwZTogc3RyaW5nXG4gIG1zVXNlclNlbGVjdDogc3RyaW5nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmRTdHlsZXMoXG4gIGRlc3Q6IFdyaXRlYWJsZTxDU1NTdHlsZURlY2xhcmF0aW9uPixcbiAgc291cmNlOiBQYXJ0aWFsPERyYWdDU1NTdHlsZURlY2xhcmF0aW9uPlxuKSB7XG4gIGZvciAoY29uc3Qga2V5IGluIHNvdXJjZSkge1xuICAgIGlmIChzb3VyY2UuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgIGRlc3Rba2V5XSA9IHNvdXJjZVtrZXldIVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXN0XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b2dnbGVOYXRpdmVEcmFnSW50ZXJhY3Rpb25zKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBlbmFibGU6IGJvb2xlYW4pIHtcbiAgY29uc3QgdXNlclNlbGVjdCA9IGVuYWJsZSA/ICcnIDogJ25vbmUnXG5cbiAgZXh0ZW5kU3R5bGVzKGVsZW1lbnQuc3R5bGUsIHtcbiAgICB0b3VjaEFjdGlvbjogZW5hYmxlID8gJycgOiAnbm9uZScsXG4gICAgd2Via2l0VXNlckRyYWc6IGVuYWJsZSA/ICcnIDogJ25vbmUnLFxuICAgIHVzZXJTZWxlY3Q6IHVzZXJTZWxlY3QsXG4gICAgbXNVc2VyU2VsZWN0OiB1c2VyU2VsZWN0LFxuICAgIHdlYmtpdFVzZXJTZWxlY3Q6IHVzZXJTZWxlY3QsXG4gICAgTW96VXNlclNlbGVjdDogdXNlclNlbGVjdFxuICB9KVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1XaWRnZXRBY2Nlc3NvcjxUSXRlbT4ge1xuICB3aWRnZXRzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8VEl0ZW1bXT5cbiAgY2RrRHJhZ0RpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxDZGtEcmFnPlxufVxuXG5leHBvcnQgY29uc3QgVEhFU0VBTV9XSURHRVRfQUNDRVNTT1IgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGhlU2VhbVdpZGdldEFjY2Vzc29yPGFueT4+KFxuICAnVGhlU2VhbVdpZGdldEFjY2Vzc29yJ1xuKVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2VhbVdpZGdldERyYWdIYW5kbGVdJyxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdjZGstZHJhZy1oYW5kbGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgV2lkZ2V0RHJhZ0hhbmRsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBEb0NoZWNrIHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXRcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHByaXZhdGUgX2F0dGFjaGVkVG9Eb20gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICBwcml2YXRlIF9kb25lQ2hlY2tpbmdBdHRhY2hlZCA9IGZhbHNlXG4gIHByaXZhdGUgX2tub3duUGFyZW50RHJhZzogYW55IC8qIENka0RyYWcgfCB1bmRlZmluZWQgKi9cblxuICAvKiogTmVlZGVkIGJlY2F1c2UgQ2RrRHJhZyByZWFkcyB0aGlzIHZhcmlhYmxlICovXG4gIGdldCBfcGFyZW50RHJhZygpIHsgcmV0dXJuIHRoaXMuZ2V0UGFyZW50Q2RrRHJhZygpIH1cblxuICAvKiogRW1pdHMgd2hlbiB0aGUgc3RhdGUgb2YgdGhlIGhhbmRsZSBoYXMgY2hhbmdlZC4gKi9cbiAgX3N0YXRlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PENka0RyYWdIYW5kbGU+KClcblxuICAvKiogV2hldGhlciBzdGFydGluZyB0byBkcmFnIHRocm91Z2ggdGhpcyBoYW5kbGUgaXMgZGlzYWJsZWQuICovXG4gIEBJbnB1dCgnY2RrRHJhZ0hhbmRsZURpc2FibGVkJylcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcbiAgICB0aGlzLl9zdGF0ZUNoYW5nZXMubmV4dCg8YW55PnRoaXMpXG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fV0lER0VUX0FDQ0VTU09SKSBwcml2YXRlIF9kYXNoYm9hcmRXaWRnZXRzPzogVGhlU2VhbVdpZGdldEFjY2Vzc29yPGFueT4sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfX3BhcmVudERyYWc/OiBDZGtEcmFnXG4gICkge1xuICAgIHRvZ2dsZU5hdGl2ZURyYWdJbnRlcmFjdGlvbnMoZWxlbWVudC5uYXRpdmVFbGVtZW50LCBmYWxzZSlcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLl9kYXNoYm9hcmRXaWRnZXRzKSB7XG4gICAgICB0aGlzLl9kYXNoYm9hcmRXaWRnZXRzLndpZGdldHNDaGFuZ2UucGlwZShcbiAgICAgICAgYXVkaXRUaW1lKDApLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX2tub3duUGFyZW50RHJhZykge1xuICAgICAgICAgIGNvbnN0IGlzQXR0YWNoZWQgPSB0aGlzLmlzQXR0YWNoZWRUb0RvbSgpXG4gICAgICAgICAgaWYgKGlzQXR0YWNoZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IDxhbnk+dGhpcy5nZXRQYXJlbnRDZGtEcmFnKClcbiAgICAgICAgICAgIGlmICh0aGlzLl9rbm93blBhcmVudERyYWcgIT09IHBhcmVudCkge1xuICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hlZFRvRG9tLm5leHQoaXNBdHRhY2hlZClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuX19wYXJlbnREcmFnIHx8IHRoaXMuX2Rhc2hib2FyZFdpZGdldHMpIHtcbiAgICAgIC8vIEZJWE1FOiBUaGlzIG9ubHkgd29ya3MgdW50aWwgdGhlIHdpZGdldCBpcyBtb3ZlZCB0byBhbm90aGVyIHRlbXBsYXRlXG4gICAgICAvLyBvdXRsZXQuIE5vdyB0aGF0IHRoZSBjb21wb25lbnQgaXNuJ3QgcmVpbml0aWFsaXplZCB3aGVuIG1vdmluZyBiZXR3ZWVuXG4gICAgICAvLyBsaXN0cyB0aGUgaGFuZGxlIG5lZWRzIHRvIG5vdyByZWZsZXggdGhhdCBjaGFuZ2UgdG8gaXRzIG5ldyBDZGtEcmFnXG4gICAgICAvLyBwYXJlbnQgYW5kIHBvc3NpYmx5IHRlbGwgaXRzIHByZXZpb3VzIHBhcmVudCB0byBmb3JnZXQgaXQuXG5cbiAgICAgIC8vIEhBQ0s6IFRoaXMgaXMgYSBoYWNrIHRvIGFsbG93IHRoZSBgQ2RrRHJhZ2AgZGlyZWN0aXZlIHRvIG1hbmFnZSBhXG4gICAgICAvLyBoYW5kbGUgdGhhdCBpcyBub3QgdmlzaWJsZSB0byBgQ29udGVudENoaWxkcmVuYCBxdWVyeS5cbiAgICAgIHRoaXMuX25nWm9uZS5vblN0YWJsZS5hc09ic2VydmFibGUoKVxuICAgICAgICAvLyAucGlwZSh0YWtlKDEpLCB1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAvLyBXaXRoIHRoZSB3ZWlyZCB0cmljayBiZWluZyBkb25lIHRvIGtlZXAgd2lkZ2V0cyBpbml0aWFsaXplZCB3aGVuIHN3aXRjaGluZyBjb2x1bW5zXG4gICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2F0dGFjaGVkVG9Eb20ucGlwZShmaWx0ZXIodiA9PiB2ID09PSB0cnVlKSkpLFxuICAgICAgICAgIC8vIHRha2UoMSlcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBwYXJlbnQgPSA8YW55PnRoaXMuZ2V0UGFyZW50Q2RrRHJhZygpXG5cbiAgICAgICAgICBpZiAodGhpcy5fa25vd25QYXJlbnREcmFnICYmIHRoaXMuX2tub3duUGFyZW50RHJhZyAhPT0gcGFyZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9rbm93blBhcmVudERyYWcuX2RyYWdSZWYuZGlzYWJsZUhhbmRsZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgICAgICAgICAgIHRoaXMuX2tub3duUGFyZW50RHJhZyA9IHVuZGVmaW5lZFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwYXJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2tub3duUGFyZW50RHJhZyA9IHBhcmVudFxuICAgICAgICAgICAgcGFyZW50Ll9oYW5kbGVzLnJlc2V0KFsgLi4ucGFyZW50Ll9oYW5kbGVzLl9yZXN1bHRzLCB0aGlzIF0pXG4gICAgICAgICAgICBwYXJlbnQuX2hhbmRsZXMubm90aWZ5T25DaGFuZ2VzKClcbiAgICAgICAgICAgIHBhcmVudC5fZHJhZ1JlZi5lbmFibGVIYW5kbGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpXG4gICAgdGhpcy5fYXR0YWNoZWRUb0RvbS5jb21wbGV0ZSgpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIC8vIFRoZSBhdHRhY2hlZCBvYnNlcnZhYmxlIG9ubHkgZW1pdHMgb25jZSwgc28gd2UgY2FuIHN0b3AgY2hlY2tpbmcgaWZcbiAgICAvLyBhdHRhY2hlZC5cbiAgICBpZiAodGhpcy5fZG9uZUNoZWNraW5nQXR0YWNoZWQpIHsgcmV0dXJuIH1cblxuICAgIGNvbnN0IGlzQXR0YWNoZWQgPSB0aGlzLmlzQXR0YWNoZWRUb0RvbSgpXG4gICAgaWYgKGlzQXR0YWNoZWQgIT09IHRoaXMuX2F0dGFjaGVkVG9Eb20udmFsdWUpIHtcbiAgICAgIHRoaXMuX2F0dGFjaGVkVG9Eb20ubmV4dChpc0F0dGFjaGVkKVxuICAgICAgdGhpcy5fZG9uZUNoZWNraW5nQXR0YWNoZWQgPSB0cnVlXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzQXR0YWNoZWRUb0RvbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZG9jdW1lbnQuYm9keS5jb250YWlucyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgfVxuXG4gIC8qKiBDbG9zZXN0IHBhcmVudCBkcmFnZ2FibGUgaW5zdGFuY2UuICovXG4gIHB1YmxpYyBnZXRQYXJlbnRDZGtEcmFnKCk6IENka0RyYWcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLl9fcGFyZW50RHJhZykge1xuICAgICAgcmV0dXJuIHRoaXMuX19wYXJlbnREcmFnXG4gICAgfSBlbHNlIGlmICh0aGlzLl9kYXNoYm9hcmRXaWRnZXRzICYmIHRoaXMuX2Rhc2hib2FyZFdpZGdldHMuY2RrRHJhZ0RpcmVjdGl2ZXMpIHtcbiAgICAgIGNvbnN0IGRyYWdzQXJyID0gdGhpcy5fZGFzaGJvYXJkV2lkZ2V0cy5jZGtEcmFnRGlyZWN0aXZlcy50b0FycmF5KClcbiAgICAgIGNvbnN0IGNsb3Nlc3QgPSBnZXRDbG9zZXN0V2lkZ2V0Q2RrRHJhZyh0aGlzLmVsZW1lbnQsIGRyYWdzQXJyKVxuICAgICAgcmV0dXJuIChjbG9zZXN0ICE9PSB1bmRlZmluZWQgJiYgY2xvc2VzdCAhPT0gbnVsbCkgPyBjbG9zZXN0IDogdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWRyYWctaGFuZGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi93aWRnZXQvZGlyZWN0aXZlcy93aWRnZXQtZHJhZy1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUUzRSxPQUFPLEVBRUwsU0FBUyxFQUlULE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUlMLFFBQVEsRUFFVCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7QUFnQ2xFLE1BQU0sVUFBVSxZQUFZLENBQzFCLElBQW9DLEVBQ3BDLE1BQXdDO0lBRXhDLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxFQUFFO1FBQ3hCLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRTtZQUNyRCxvRUFBb0U7WUFDcEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUUsQ0FBQTtTQUN6QjtLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUFDLE9BQW9CLEVBQUUsTUFBZTtJQUNoRixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO0lBRXZDLFlBQVksQ0FBQyxPQUFP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QUNsQyxJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLGlCQUFpQjtxQkFDM0I7aUJBQ0Y7OzBCQTRCSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBQzFDLFFBQVE7NENBWFAsUUFBUTtzQkFEWCxLQUFLO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgQ2RrRHJhZywgQ2RrRHJhZ0hhbmRsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIERvQ2hlY2ssXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBRdWVyeUxpc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBhdWRpdFRpbWUsIGZpbHRlciwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgZ2V0Q2xvc2VzdFdpZGdldENka0RyYWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbi8vXG4vLyBOT1RFOiBUaGlzIHdpbGwgcHJvYmFibHkgTk9UIGJlIHVzZWQgbG9uZyB0ZXJtLCB1bmxlc3MgbW9yZSBvZiB0aGVcbi8vIENka0RyYWdEcm9wIGNvZGUgaXMgcmV3cml0dGVuLlxuLy9cbi8vIFRoaXMgZGlyZWN0aXZlIGlzIG1lYW50IHRvIGJlIGEgSEFDSyByZXBsYWNlbWVudCBkaXJlY3RpdmUgZm9yIENka0RyYWdIYW5kbGUuXG4vLyBUaGUgcmVhc29uIHRoaXMgd2FzIG1hZGUgaXMgYmVjYXVzZSBDZGtEcmFnSGFuZGxlIGRvZXNuJ3Qgd29yayBpbiBjaGlsZFxuLy8gY29tcG9uZW50cywgc2luY2UgaXQgdXNlcyBDb250ZW50Q2hpbGRyZW4gdG8gcXVlcnkgZm9yIHRoZSBoYW5kbGVzLlxuLy9cbi8vIFRoaXMgY291bGQgZWFzaWx5IGJyZWFrLCBiZWNhdXNlIEkgYW0gZm9yY2luZyB0aGUgaGFuZGxlcyBxdWVyeSBsaXN0IHRvIGVtaXRcbi8vIGNoYW5nZXMgbWFudWFsbHkuIFNvLCBpZiB0aGUgcXVlcnkgbGlzdCBhY3R1YWxseSBjaGFuZ2VzLCB0aGVuIG15IGNoYW5nZXNcbi8vIHdpbGwgYmUgYnJva2VuLlxuLy9cblxuLy8gSGVscGVyIHR5cGUgdGhhdCBpZ25vcmVzIGByZWFkb25seWAgcHJvcGVydGllcy4gVGhpcyBpcyB1c2VkIGluXG4vLyBgZXh0ZW5kU3R5bGVzYCB0byBpZ25vcmUgdGhlIHJlYWRvbmx5IHByb3BlcnRpZXMgb24gQ1NTU3R5bGVEZWNsYXJhdGlvblxuLy8gc2luY2Ugd2Ugd29uJ3QgYmUgdG91Y2hpbmcgdGhvc2UgYW55d2F5LlxudHlwZSBXcml0ZWFibGU8VD4gPSB7IC1yZWFkb25seSBbUCBpbiBrZXlvZiBUXS0/OiBUW1BdIH1cblxuLyoqXG4gKiBFeHRlbmRlZCBDU1NTdHlsZURlY2xhcmF0aW9uIHRoYXQgaW5jbHVkZXMgYSBjb3VwbGUgb2YgZHJhZy1yZWxhdGVkXG4gKiBwcm9wZXJ0aWVzIHRoYXQgYXJlbid0IGluIHRoZSBidWlsdC1pbiBUUyB0eXBpbmdzLlxuICovXG5pbnRlcmZhY2UgRHJhZ0NTU1N0eWxlRGVjbGFyYXRpb24gZXh0ZW5kcyBDU1NTdHlsZURlY2xhcmF0aW9uIHtcbiAgd2Via2l0VXNlckRyYWc6IHN0cmluZ1xuICBNb3pVc2VyU2VsZWN0OiBzdHJpbmcgLy8gRm9yIHNvbWUgcmVhc29uIHRoZSBGaXJlZm94IHByb3BlcnR5IGlzIGluIFBhc2NhbENhc2UuXG4gIG1zU2Nyb2xsU25hcFR5cGU6IHN0cmluZ1xuICBzY3JvbGxTbmFwVHlwZTogc3RyaW5nXG4gIG1zVXNlclNlbGVjdDogc3RyaW5nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmRTdHlsZXMoXG4gIGRlc3Q6IFdyaXRlYWJsZTxDU1NTdHlsZURlY2xhcmF0aW9uPixcbiAgc291cmNlOiBQYXJ0aWFsPERyYWdDU1NTdHlsZURlY2xhcmF0aW9uPlxuKSB7XG4gIGZvciAoY29uc3Qga2V5IGluIHNvdXJjZSkge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgZGVzdFtrZXldID0gc291cmNlW2tleV0hXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlc3Rcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvZ2dsZU5hdGl2ZURyYWdJbnRlcmFjdGlvbnMoZWxlbWVudDogSFRNTEVsZW1lbnQsIGVuYWJsZTogYm9vbGVhbikge1xuICBjb25zdCB1c2VyU2VsZWN0ID0gZW5hYmxlID8gJycgOiAnbm9uZSdcblxuICBleHRlbmRTdHlsZXMoZWxlbWVudC5zdHlsZSwge1xuICAgIHRvdWNoQWN0aW9uOiBlbmFibGUgPyAnJyA6ICdub25lJyxcbiAgICB3ZWJraXRVc2VyRHJhZzogZW5hYmxlID8gJycgOiAnbm9uZScsXG4gICAgdXNlclNlbGVjdCxcbiAgICBtc1VzZXJTZWxlY3Q6IHVzZXJTZWxlY3QsXG4gICAgd2Via2l0VXNlclNlbGVjdDogdXNlclNlbGVjdCxcbiAgICBNb3pVc2VyU2VsZWN0OiB1c2VyU2VsZWN0XG4gIH0pXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVdpZGdldEFjY2Vzc29yPFRJdGVtPiB7XG4gIHdpZGdldHNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUSXRlbVtdPlxuICBjZGtEcmFnRGlyZWN0aXZlczogUXVlcnlMaXN0PENka0RyYWc+XG59XG5cbmV4cG9ydCBjb25zdCBUSEVTRUFNX1dJREdFVF9BQ0NFU1NPUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUaGVTZWFtV2lkZ2V0QWNjZXNzb3I8YW55Pj4oXG4gICdUaGVTZWFtV2lkZ2V0QWNjZXNzb3InXG4pXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzZWFtV2lkZ2V0RHJhZ0hhbmRsZV0nLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2Nkay1kcmFnLWhhbmRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBXaWRnZXREcmFnSGFuZGxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIERvQ2hlY2sge1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSBfYXR0YWNoZWRUb0RvbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG4gIHByaXZhdGUgX2RvbmVDaGVja2luZ0F0dGFjaGVkID0gZmFsc2VcbiAgcHJpdmF0ZSBfa25vd25QYXJlbnREcmFnOiBhbnkgLyogQ2RrRHJhZyB8IHVuZGVmaW5lZCAqL1xuXG4gIC8qKiBOZWVkZWQgYmVjYXVzZSBDZGtEcmFnIHJlYWRzIHRoaXMgdmFyaWFibGUgKi9cbiAgZ2V0IF9wYXJlbnREcmFnKCkgeyByZXR1cm4gdGhpcy5nZXRQYXJlbnRDZGtEcmFnKCkgfVxuXG4gIC8qKiBFbWl0cyB3aGVuIHRoZSBzdGF0ZSBvZiB0aGUgaGFuZGxlIGhhcyBjaGFuZ2VkLiAqL1xuICBfc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8Q2RrRHJhZ0hhbmRsZT4oKVxuXG4gIC8qKiBXaGV0aGVyIHN0YXJ0aW5nIHRvIGRyYWcgdGhyb3VnaCB0aGlzIGhhbmRsZSBpcyBkaXNhYmxlZC4gKi9cbiAgQElucHV0KCdjZGtEcmFnSGFuZGxlRGlzYWJsZWQnKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9kaXNhYmxlZCB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKVxuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy5uZXh0KHRoaXMgYXMgYW55KVxuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUSEVTRUFNX1dJREdFVF9BQ0NFU1NPUikgcHJpdmF0ZSBfZGFzaGJvYXJkV2lkZ2V0cz86IFRoZVNlYW1XaWRnZXRBY2Nlc3Nvcjxhbnk+LFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX19wYXJlbnREcmFnPzogQ2RrRHJhZ1xuICApIHtcbiAgICB0b2dnbGVOYXRpdmVEcmFnSW50ZXJhY3Rpb25zKGVsZW1lbnQubmF0aXZlRWxlbWVudCwgZmFsc2UpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5fZGFzaGJvYXJkV2lkZ2V0cykge1xuICAgICAgdGhpcy5fZGFzaGJvYXJkV2lkZ2V0cy53aWRnZXRzQ2hhbmdlLnBpcGUoXG4gICAgICAgIGF1ZGl0VGltZSgwKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpXG4gICAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9rbm93blBhcmVudERyYWcpIHtcbiAgICAgICAgICBjb25zdCBpc0F0dGFjaGVkID0gdGhpcy5pc0F0dGFjaGVkVG9Eb20oKVxuICAgICAgICAgIGlmIChpc0F0dGFjaGVkKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmdldFBhcmVudENka0RyYWcoKSBhcyBhbnlcbiAgICAgICAgICAgIGlmICh0aGlzLl9rbm93blBhcmVudERyYWcgIT09IHBhcmVudCkge1xuICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hlZFRvRG9tLm5leHQoaXNBdHRhY2hlZClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLl9fcGFyZW50RHJhZyB8fCB0aGlzLl9kYXNoYm9hcmRXaWRnZXRzKSB7XG4gICAgICAvLyBGSVhNRTogVGhpcyBvbmx5IHdvcmtzIHVudGlsIHRoZSB3aWRnZXQgaXMgbW92ZWQgdG8gYW5vdGhlciB0ZW1wbGF0ZVxuICAgICAgLy8gb3V0bGV0LiBOb3cgdGhhdCB0aGUgY29tcG9uZW50IGlzbid0IHJlaW5pdGlhbGl6ZWQgd2hlbiBtb3ZpbmcgYmV0d2VlblxuICAgICAgLy8gbGlzdHMgdGhlIGhhbmRsZSBuZWVkcyB0byBub3cgcmVmbGV4IHRoYXQgY2hhbmdlIHRvIGl0cyBuZXcgQ2RrRHJhZ1xuICAgICAgLy8gcGFyZW50IGFuZCBwb3NzaWJseSB0ZWxsIGl0cyBwcmV2aW91cyBwYXJlbnQgdG8gZm9yZ2V0IGl0LlxuXG4gICAgICAvLyBIQUNLOiBUaGlzIGlzIGEgaGFjayB0byBhbGxvdyB0aGUgYENka0RyYWdgIGRpcmVjdGl2ZSB0byBtYW5hZ2UgYVxuICAgICAgLy8gaGFuZGxlIHRoYXQgaXMgbm90IHZpc2libGUgdG8gYENvbnRlbnRDaGlsZHJlbmAgcXVlcnkuXG4gICAgICB0aGlzLl9uZ1pvbmUub25TdGFibGUuYXNPYnNlcnZhYmxlKClcbiAgICAgICAgLy8gLnBpcGUodGFrZSgxKSwgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgLy8gV2l0aCB0aGUgd2VpcmQgdHJpY2sgYmVpbmcgZG9uZSB0byBrZWVwIHdpZGdldHMgaW5pdGlhbGl6ZWQgd2hlbiBzd2l0Y2hpbmcgY29sdW1uc1xuICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl9hdHRhY2hlZFRvRG9tLnBpcGUoZmlsdGVyKHYgPT4gdiA9PT0gdHJ1ZSkpKSxcbiAgICAgICAgICAvLyB0YWtlKDEpXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5nZXRQYXJlbnRDZGtEcmFnKCkgYXMgYW55XG5cbiAgICAgICAgICBpZiAodGhpcy5fa25vd25QYXJlbnREcmFnICYmIHRoaXMuX2tub3duUGFyZW50RHJhZyAhPT0gcGFyZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9rbm93blBhcmVudERyYWcuX2RyYWdSZWYuZGlzYWJsZUhhbmRsZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgICAgICAgICAgIHRoaXMuX2tub3duUGFyZW50RHJhZyA9IHVuZGVmaW5lZFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwYXJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2tub3duUGFyZW50RHJhZyA9IHBhcmVudFxuICAgICAgICAgICAgcGFyZW50Ll9oYW5kbGVzLnJlc2V0KFsgLi4ucGFyZW50Ll9oYW5kbGVzLl9yZXN1bHRzLCB0aGlzIF0pXG4gICAgICAgICAgICBwYXJlbnQuX2hhbmRsZXMubm90aWZ5T25DaGFuZ2VzKClcbiAgICAgICAgICAgIHBhcmVudC5fZHJhZ1JlZi5lbmFibGVIYW5kbGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpXG4gICAgdGhpcy5fYXR0YWNoZWRUb0RvbS5jb21wbGV0ZSgpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgbmdEb0NoZWNrKCkge1xuICAgIC8vIFRoZSBhdHRhY2hlZCBvYnNlcnZhYmxlIG9ubHkgZW1pdHMgb25jZSwgc28gd2UgY2FuIHN0b3AgY2hlY2tpbmcgaWZcbiAgICAvLyBhdHRhY2hlZC5cbiAgICBpZiAodGhpcy5fZG9uZUNoZWNraW5nQXR0YWNoZWQpIHsgcmV0dXJuIH1cblxuICAgIGNvbnN0IGlzQXR0YWNoZWQgPSB0aGlzLmlzQXR0YWNoZWRUb0RvbSgpXG4gICAgaWYgKGlzQXR0YWNoZWQgIT09IHRoaXMuX2F0dGFjaGVkVG9Eb20udmFsdWUpIHtcbiAgICAgIHRoaXMuX2F0dGFjaGVkVG9Eb20ubmV4dChpc0F0dGFjaGVkKVxuICAgICAgdGhpcy5fZG9uZUNoZWNraW5nQXR0YWNoZWQgPSB0cnVlXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzQXR0YWNoZWRUb0RvbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZG9jdW1lbnQuYm9keS5jb250YWlucyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgfVxuXG4gIC8qKiBDbG9zZXN0IHBhcmVudCBkcmFnZ2FibGUgaW5zdGFuY2UuICovXG4gIHB1YmxpYyBnZXRQYXJlbnRDZGtEcmFnKCk6IENka0RyYWcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLl9fcGFyZW50RHJhZykge1xuICAgICAgcmV0dXJuIHRoaXMuX19wYXJlbnREcmFnXG4gICAgfSBlbHNlIGlmICh0aGlzLl9kYXNoYm9hcmRXaWRnZXRzICYmIHRoaXMuX2Rhc2hib2FyZFdpZGdldHMuY2RrRHJhZ0RpcmVjdGl2ZXMpIHtcbiAgICAgIGNvbnN0IGRyYWdzQXJyID0gdGhpcy5fZGFzaGJvYXJkV2lkZ2V0cy5jZGtEcmFnRGlyZWN0aXZlcy50b0FycmF5KClcbiAgICAgIGNvbnN0IGNsb3Nlc3QgPSBnZXRDbG9zZXN0V2lkZ2V0Q2RrRHJhZyh0aGlzLmVsZW1lbnQsIGRyYWdzQXJyKVxuICAgICAgcmV0dXJuIChjbG9zZXN0ICE9PSB1bmRlZmluZWQgJiYgY2xvc2VzdCAhPT0gbnVsbCkgPyBjbG9zZXN0IDogdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==