@theseam/ui-common 0.4.0-beta.5 → 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 (720) hide show
  1. package/breadcrumbs/breadcrumb.d.ts +1 -1
  2. package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +1 -3
  3. package/breadcrumbs/breadcrumbs-resolver.d.ts +1 -1
  4. package/card/card-body/card-body.component.d.ts +2 -4
  5. package/card/card-footer/card-footer.component.d.ts +1 -4
  6. package/card/card-header/card-header.component.d.ts +1 -4
  7. package/card/card.component.d.ts +1 -4
  8. package/carousel/carousel-slide.directive.d.ts +8 -0
  9. package/carousel/carousel.component.d.ts +85 -0
  10. package/carousel/carousel.module.d.ts +11 -0
  11. package/carousel/index.d.ts +5 -0
  12. package/carousel/public-api.d.ts +3 -0
  13. package/checkbox/checkbox.component.d.ts +2 -4
  14. package/core/common-behaviors/active.d.ts +2 -2
  15. package/core/common-behaviors/constructor.d.ts +1 -1
  16. package/core/common-behaviors/disabled.d.ts +2 -2
  17. package/core/common-behaviors/initialized.d.ts +2 -2
  18. package/core/common-behaviors/size.d.ts +1 -1
  19. package/core/common-behaviors/tabindex.d.ts +1 -1
  20. package/core/common-behaviors/theme.d.ts +1 -1
  21. package/data-exporter/data-exporter.d.ts +1 -1
  22. package/data-filters/data-filter.d.ts +4 -4
  23. package/data-filters/filters/data-filter-search/search-filter-options.d.ts +1 -1
  24. package/datatable/datatable-column/datatable-column.component.d.ts +3 -4
  25. package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +1 -3
  26. package/datatable/datatable-export-button/datatable-export-button.component.d.ts +1 -3
  27. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -5
  28. package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +1 -4
  29. package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +1 -4
  30. package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +1 -4
  31. package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +1 -4
  32. package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +1 -3
  33. package/datatable/directives/datatable-action-menu-item.directive.d.ts +2 -4
  34. package/datatable/models/preferences.d.ts +1 -1
  35. package/datatable/models/table-column.d.ts +1 -1
  36. package/datatable/services/columns-manager.service.d.ts +1 -1
  37. package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +1 -3
  38. package/datatable-dynamic/datatable-dynamic-def.d.ts +3 -3
  39. package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +3 -4
  40. package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +1 -1
  41. package/datatable-dynamic/datatable-dynamic.component.d.ts +1 -4
  42. package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +3 -4
  43. package/datatable-dynamic/models/dynamic-datatable-action-menu-record.d.ts +1 -1
  44. package/dynamic/action/modal/dynamic-action-modal-def.d.ts +1 -1
  45. package/dynamic/models/dynamic-value-base-type.d.ts +1 -1
  46. package/dynamic/models/dynamic-value-evaluatable-type.d.ts +1 -1
  47. package/dynamic/models/dynamic-value-primitive.d.ts +1 -1
  48. package/dynamic/models/dynamic-value.d.ts +1 -1
  49. package/dynamic/tokens/api-config.d.ts +1 -1
  50. package/esm2020/asset-reader/asset-reader-helper.service.mjs +7 -5
  51. package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
  52. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +12 -12
  53. package/esm2020/breadcrumbs/breadcrumb.mjs +1 -1
  54. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +4 -5
  55. package/esm2020/breadcrumbs/breadcrumbs-resolver.mjs +1 -1
  56. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  57. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +7 -7
  58. package/esm2020/buttons/badge-button/badge-button.component.mjs +9 -7
  59. package/esm2020/buttons/button/button.component.mjs +12 -10
  60. package/esm2020/buttons/buttons.module.mjs +4 -4
  61. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  62. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +7 -7
  63. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  64. package/esm2020/card/card-body/card-body.component.mjs +5 -6
  65. package/esm2020/card/card-footer/card-footer.component.mjs +5 -8
  66. package/esm2020/card/card-header/card-header.component.mjs +5 -7
  67. package/esm2020/card/card.component.mjs +5 -7
  68. package/esm2020/card/card.module.mjs +4 -4
  69. package/esm2020/carousel/carousel-slide.directive.mjs +16 -0
  70. package/esm2020/carousel/carousel.component.mjs +211 -0
  71. package/esm2020/carousel/carousel.module.mjs +38 -0
  72. package/esm2020/carousel/public-api.mjs +4 -0
  73. package/esm2020/carousel/theseam-ui-common-carousel.mjs +5 -0
  74. package/esm2020/checkbox/checkbox.component.mjs +44 -45
  75. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  76. package/esm2020/checkbox/testing/checkbox.harness.mjs +1 -1
  77. package/esm2020/checkbox/testing/index.mjs +1 -1
  78. package/esm2020/confirm-dialog/confirm-click.directive.mjs +11 -11
  79. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
  80. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
  81. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
  82. package/esm2020/core/common-behaviors/active.mjs +4 -3
  83. package/esm2020/core/common-behaviors/disabled.mjs +4 -3
  84. package/esm2020/core/common-behaviors/initialized.mjs +2 -1
  85. package/esm2020/core/common-behaviors/size.mjs +6 -6
  86. package/esm2020/core/common-behaviors/tabindex.mjs +6 -5
  87. package/esm2020/core/common-behaviors/theme.mjs +6 -6
  88. package/esm2020/core/input-decorators/input-boolean.decorator.mjs +4 -5
  89. package/esm2020/core/input-decorators/input-number.decorator.mjs +4 -5
  90. package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
  91. package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
  92. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
  93. package/esm2020/data-filters/data-filter.mjs +1 -1
  94. package/esm2020/data-filters/data-filters.module.mjs +4 -4
  95. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +11 -11
  96. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +12 -12
  97. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +18 -15
  98. package/esm2020/datatable/datatable/datatable.component.mjs +114 -109
  99. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
  100. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +5 -4
  101. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +7 -8
  102. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
  103. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -5
  104. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +8 -8
  105. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
  106. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +5 -5
  107. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +5 -9
  108. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +5 -8
  109. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +5 -8
  110. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +5 -8
  111. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +5 -8
  112. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -5
  113. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
  114. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +5 -5
  115. package/esm2020/datatable/datatable.module.mjs +4 -4
  116. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +5 -6
  117. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +11 -11
  118. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
  119. package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
  120. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
  121. package/esm2020/datatable/models/columns-alteration.mjs +1 -1
  122. package/esm2020/datatable/models/columns-alterations/order.columns-alteration.mjs +3 -1
  123. package/esm2020/datatable/models/datatable-gql-data-source.mjs +1 -1
  124. package/esm2020/datatable/models/internal-column-props.mjs +1 -1
  125. package/esm2020/datatable/models/sort-item.mjs +1 -1
  126. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  127. package/esm2020/datatable/services/columns-manager.service.mjs +5 -5
  128. package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
  129. package/esm2020/datatable/services/datatable-preferences.service.mjs +7 -6
  130. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +5 -5
  131. package/esm2020/datatable/utils/map-columns-alterations-states.mjs +4 -1
  132. package/esm2020/datatable/utils/set-column-defaults.mjs +2 -2
  133. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +13 -14
  134. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +8 -8
  135. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +8 -9
  136. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.mjs +1 -1
  137. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +8 -10
  138. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
  139. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +9 -9
  140. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +7 -7
  141. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +6 -6
  142. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +11 -8
  143. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +6 -5
  144. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  145. package/esm2020/dynamic/action/modal/dynamic-action-modal-def.mjs +1 -1
  146. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  147. package/esm2020/dynamic/dynamic-value-helper.service.mjs +5 -4
  148. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  149. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +5 -5
  150. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
  151. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +9 -9
  152. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +5 -8
  153. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  154. package/esm2020/form-field/form-field-error.directive.mjs +6 -6
  155. package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
  156. package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
  157. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  158. package/esm2020/form-field/form-field.component.mjs +49 -49
  159. package/esm2020/form-field/form-field.module.mjs +4 -4
  160. package/esm2020/form-field/input.directive.mjs +49 -48
  161. package/esm2020/form-field/testing/form-field-required-indicator.harness.mjs +1 -1
  162. package/esm2020/form-field/testing/index.mjs +1 -1
  163. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +5 -7
  164. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  165. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
  166. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +96 -96
  167. package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
  168. package/esm2020/framework/base-layout/base-layout.component.mjs +7 -6
  169. package/esm2020/framework/base-layout/base-layout.module.mjs +5 -5
  170. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
  171. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
  172. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
  173. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +10 -10
  174. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
  175. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
  176. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
  177. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +5 -7
  178. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -5
  179. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +7 -7
  180. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +6 -5
  181. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +18 -18
  182. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +15 -13
  183. package/esm2020/framework/dashboard/dashboard.component.mjs +5 -5
  184. package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
  185. package/esm2020/framework/dynamic-router/dynamic-route-def.mjs +1 -1
  186. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  187. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.mjs +1 -1
  188. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +5 -6
  189. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +5 -6
  190. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
  191. package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
  192. package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
  193. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
  194. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
  195. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
  196. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
  197. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
  198. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
  199. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +5 -4
  200. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +25 -25
  201. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +5 -6
  202. package/esm2020/framework/side-nav/side-nav-utils.mjs +2 -1
  203. package/esm2020/framework/side-nav/side-nav.component.mjs +19 -20
  204. package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
  205. package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
  206. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
  207. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
  208. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +4 -6
  209. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
  210. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +5 -7
  211. package/esm2020/framework/top-bar/top-bar.component.mjs +4 -6
  212. package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
  213. package/esm2020/google-maps/google-maps/google-maps.component.mjs +36 -39
  214. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +103 -0
  215. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +25 -0
  216. package/esm2020/google-maps/google-maps-contextmenu.mjs +9 -8
  217. package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
  218. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +24 -25
  219. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +12 -12
  220. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +9 -9
  221. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +9 -9
  222. package/esm2020/google-maps/google-maps.module.mjs +4 -4
  223. package/esm2020/google-maps/google-maps.service.mjs +9 -9
  224. package/esm2020/google-maps/map-control.component.mjs +9 -9
  225. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  226. package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
  227. package/esm2020/google-maps/public-api.mjs +4 -1
  228. package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +5 -31
  229. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  230. package/esm2020/graphql/datatable/datatable-helpers.mjs +2 -2
  231. package/esm2020/graphql/datatable/map-filter-states.mjs +2 -1
  232. package/esm2020/graphql/utils/inline-variables.mjs +2 -1
  233. package/esm2020/graphql/utils/parse-hints.mjs +3 -3
  234. package/esm2020/graphql/utils/to-gql.mjs +3 -3
  235. package/esm2020/icon/icon/icon.component.mjs +5 -5
  236. package/esm2020/icon/icon-btn/icon-btn.component.mjs +24 -25
  237. package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
  238. package/esm2020/icon/icon.module.mjs +4 -4
  239. package/esm2020/icon/utils/get-known-icon.mjs +71 -71
  240. package/esm2020/layout/breakpoint-aliases.mjs +1 -1
  241. package/esm2020/layout/layout.module.mjs +4 -4
  242. package/esm2020/layout/layout.service.mjs +3 -3
  243. package/esm2020/layout/observe-media-query.mjs +1 -1
  244. package/esm2020/loading/loading/loading.component.mjs +5 -6
  245. package/esm2020/loading/loading-overlay.service.mjs +3 -3
  246. package/esm2020/loading/loading.module.mjs +4 -4
  247. package/esm2020/menu/menu-divider.component.mjs +3 -3
  248. package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
  249. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +7 -7
  250. package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
  251. package/esm2020/menu/menu-item.component.mjs +4 -5
  252. package/esm2020/menu/menu-toggle.directive.mjs +42 -42
  253. package/esm2020/menu/menu.component.mjs +15 -15
  254. package/esm2020/menu/menu.module.mjs +4 -4
  255. package/esm2020/modal/directives/modal-close.directive.mjs +11 -11
  256. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
  257. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
  258. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
  259. package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
  260. package/esm2020/modal/directives/modal.directive.mjs +5 -5
  261. package/esm2020/modal/modal/modal.component.mjs +20 -21
  262. package/esm2020/modal/modal-body/modal-body.component.mjs +5 -7
  263. package/esm2020/modal/modal-config.mjs +1 -1
  264. package/esm2020/modal/modal-container/modal-container.component.mjs +12 -12
  265. package/esm2020/modal/modal-footer/modal-footer.component.mjs +5 -7
  266. package/esm2020/modal/modal-header/modal-header.component.mjs +5 -7
  267. package/esm2020/modal/modal-ref.mjs +1 -1
  268. package/esm2020/modal/modal.module.mjs +4 -4
  269. package/esm2020/modal/modal.service.mjs +38 -35
  270. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -5
  271. package/esm2020/popover/popover/popover.component.mjs +18 -18
  272. package/esm2020/popover/popover.directive.mjs +32 -32
  273. package/esm2020/popover/popover.module.mjs +5 -5
  274. package/esm2020/progress/progress-circle/progress-circle.component.mjs +5 -5
  275. package/esm2020/progress/progress.module.mjs +4 -4
  276. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +10 -11
  277. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  278. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  279. package/esm2020/services/asset-loader.service.mjs +5 -6
  280. package/esm2020/services/font-loader.service.mjs +5 -6
  281. package/esm2020/services/router-helpers.service.mjs +3 -3
  282. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
  283. package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
  284. package/esm2020/shared/directives/click-outside.directive.mjs +9 -9
  285. package/esm2020/shared/directives/disable-control.directive.mjs +7 -7
  286. package/esm2020/shared/directives/elem-resized.directive.mjs +5 -5
  287. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +10 -10
  288. package/esm2020/shared/directives/hover-class.directive.mjs +9 -9
  289. package/esm2020/shared/directives/ng-select-extra.directive.mjs +29 -29
  290. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +11 -11
  291. package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
  292. package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
  293. package/esm2020/shared/shared.module.mjs +4 -4
  294. package/esm2020/storage/local-storage.service.mjs +8 -8
  295. package/esm2020/storage/localstorage-memory.mjs +4 -4
  296. package/esm2020/story-helpers/arg-type-helpers.mjs +1 -1
  297. package/esm2020/story-helpers/initial-route.service.mjs +3 -3
  298. package/esm2020/story-helpers/on-story-bootstrapped-trigger.mjs +2 -1
  299. package/esm2020/story-helpers/public-api.mjs +2 -2
  300. package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
  301. package/esm2020/story-helpers/story-empty.component.mjs +3 -3
  302. package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
  303. package/esm2020/story-helpers/story-initial-route.mjs +4 -4
  304. package/esm2020/story-helpers/story-modal-container.component.mjs +6 -6
  305. package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
  306. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +5 -5
  307. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +5 -4
  308. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +5 -7
  309. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +5 -6
  310. package/esm2020/tabbed/tabbed.component.mjs +13 -13
  311. package/esm2020/tabbed/tabbed.module.mjs +4 -4
  312. package/esm2020/tabbed/tabbed.service.mjs +5 -5
  313. package/esm2020/table/table/table.component.mjs +12 -13
  314. package/esm2020/table/table.module.mjs +4 -4
  315. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +5 -5
  316. package/esm2020/table-cell-type/table-cell-type-export-props.mjs +1 -1
  317. package/esm2020/table-cell-type/table-cell-type-models.mjs +1 -1
  318. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +5 -6
  319. package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
  320. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +12 -12
  321. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +8 -12
  322. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +14 -14
  323. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +37 -37
  324. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +14 -14
  325. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +8 -9
  326. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +11 -10
  327. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +7 -8
  328. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +30 -27
  329. package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
  330. package/esm2020/tel-input/intl-tel-input.mjs +2 -2
  331. package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
  332. package/esm2020/tel-input/tel-input/tel-input.component.mjs +35 -36
  333. package/esm2020/tel-input/tel-input.directive.mjs +18 -18
  334. package/esm2020/tel-input/tel-input.module.mjs +4 -4
  335. package/esm2020/tel-input/utils/add-country-code.mjs +4 -4
  336. package/esm2020/tel-input/utils/process-country-codes.mjs +4 -7
  337. package/esm2020/testing/story-expect.mjs +2 -1
  338. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +21 -22
  339. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +6 -7
  340. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +6 -7
  341. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
  342. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
  343. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
  344. package/esm2020/tiled-select/testing/index.mjs +1 -1
  345. package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
  346. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +5 -8
  347. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
  348. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
  349. package/esm2020/toggle-edit/toggle-edit.component.mjs +19 -19
  350. package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
  351. package/esm2020/toggle-group/toggle-group-option.directive.mjs +12 -12
  352. package/esm2020/toggle-group/toggle-group.directive.mjs +6 -6
  353. package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
  354. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +5 -5
  355. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +5 -8
  356. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +5 -4
  357. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  358. package/esm2020/utils/array-move.mjs +1 -1
  359. package/esm2020/utils/cdk/get-closest-widget-cdk-drag.mjs +3 -3
  360. package/esm2020/utils/file-utils.mjs +2 -2
  361. package/esm2020/utils/form/get-control-path.mjs +6 -5
  362. package/esm2020/utils/geo-json/geo-json-to-area.mjs +3 -3
  363. package/esm2020/utils/geo-json/is-only-geometry-types.validator.mjs +1 -1
  364. package/esm2020/utils/geo-json/min-max-points.validator.mjs +5 -5
  365. package/esm2020/utils/geo-json/read-geo-file.mjs +3 -2
  366. package/esm2020/utils/has-property.mjs +2 -2
  367. package/esm2020/utils/load-style-sheet.mjs +2 -2
  368. package/esm2020/utils/load-style.mjs +2 -2
  369. package/esm2020/utils/obj-utils.mjs +2 -2
  370. package/esm2020/utils/polling-ticker.mjs +2 -2
  371. package/esm2020/utils/router/operators/activated-routes-with-data-property.mjs +2 -2
  372. package/esm2020/utils/router/route-snapshot-path-full.mjs +2 -2
  373. package/esm2020/utils/router/route-snapshot-path-relative.mjs +2 -2
  374. package/esm2020/utils/router/will-have-data-prop.mjs +3 -3
  375. package/esm2020/utils/subscriber-count.mjs +2 -1
  376. package/esm2020/utils/toggle-attribute.mjs +6 -5
  377. package/esm2020/utils/wait-on-condition-async.mjs +5 -5
  378. package/esm2020/vertical-list-filter/public-api.mjs +3 -0
  379. package/esm2020/vertical-list-filter/testing/index.mjs +2 -0
  380. package/esm2020/vertical-list-filter/testing/vertical-list-filter.harness.mjs +28 -0
  381. package/esm2020/vertical-list-filter/theseam-ui-common-vertical-list-filter.mjs +5 -0
  382. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +52 -0
  383. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +37 -37
  384. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
  385. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +11 -10
  386. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  387. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +39 -38
  388. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
  389. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +15 -15
  390. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
  391. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
  392. package/esm2020/widget/widget/widget.component.mjs +3 -3
  393. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +5 -8
  394. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
  395. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +5 -8
  396. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
  397. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
  398. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
  399. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +9 -10
  400. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
  401. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +5 -7
  402. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
  403. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +5 -8
  404. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
  405. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +5 -5
  406. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
  407. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
  408. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -19
  409. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +5 -7
  410. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
  411. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +5 -5
  412. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
  413. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +6 -9
  414. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +9 -10
  415. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +5 -8
  416. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +5 -5
  417. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +17 -16
  418. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +10 -10
  419. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +5 -8
  420. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
  421. package/esm2020/widget/widget-footer/widget-footer.component.mjs +5 -7
  422. package/esm2020/widget/widget-registry.service.mjs +6 -5
  423. package/esm2020/widget/widget.module.mjs +7 -7
  424. package/fesm2015/theseam-ui-common-asset-reader.mjs +21 -19
  425. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +13 -14
  427. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-buttons.mjs +32 -28
  429. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-card.mjs +23 -31
  431. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-carousel.mjs +265 -0
  433. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -0
  434. package/fesm2015/theseam-ui-common-checkbox.mjs +47 -48
  435. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +20 -20
  437. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-core.mjs +28 -26
  439. package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  441. package/fesm2015/theseam-ui-common-data-filters.mjs +42 -39
  442. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  443. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +55 -59
  444. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  445. package/fesm2015/theseam-ui-common-datatable.mjs +229 -237
  446. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  447. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  448. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  449. package/fesm2015/theseam-ui-common-dynamic.mjs +36 -26
  450. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  451. package/fesm2015/theseam-ui-common-footer-bar.mjs +8 -11
  452. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  453. package/fesm2015/theseam-ui-common-form-field-error.mjs +109 -111
  454. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  455. package/fesm2015/theseam-ui-common-form-field.mjs +114 -113
  456. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  457. package/fesm2015/theseam-ui-common-framework.mjs +216 -223
  458. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  459. package/fesm2015/theseam-ui-common-google-maps.mjs +246 -126
  460. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-graphql.mjs +14 -38
  462. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-icon.mjs +104 -105
  464. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-layout.mjs +7 -7
  466. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  467. package/fesm2015/theseam-ui-common-loading.mjs +11 -12
  468. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  469. package/fesm2015/theseam-ui-common-menu.mjs +79 -80
  470. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  471. package/fesm2015/theseam-ui-common-modal.mjs +112 -117
  472. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  473. package/fesm2015/theseam-ui-common-popover.mjs +52 -52
  474. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  475. package/fesm2015/theseam-ui-common-progress.mjs +8 -8
  476. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  477. package/fesm2015/theseam-ui-common-scrollbar.mjs +16 -17
  478. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  479. package/fesm2015/theseam-ui-common-services.mjs +11 -13
  480. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  481. package/fesm2015/theseam-ui-common-shared.mjs +89 -89
  482. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  483. package/fesm2015/theseam-ui-common-storage.mjs +10 -10
  484. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  485. package/fesm2015/theseam-ui-common-story-helpers.mjs +27 -102
  486. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  487. package/fesm2015/theseam-ui-common-tabbed.mjs +36 -38
  488. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  489. package/fesm2015/theseam-ui-common-table-cell-type.mjs +12 -13
  490. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  491. package/fesm2015/theseam-ui-common-table-cell-types.mjs +136 -138
  492. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  493. package/fesm2015/theseam-ui-common-table.mjs +15 -16
  494. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  495. package/fesm2015/theseam-ui-common-tel-input.mjs +67 -71
  496. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  497. package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
  498. package/fesm2015/theseam-ui-common-tiled-select.mjs +43 -46
  499. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  500. package/fesm2015/theseam-ui-common-toggle-edit.mjs +32 -35
  501. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  502. package/fesm2015/theseam-ui-common-toggle-group.mjs +20 -20
  503. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  504. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  505. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  506. package/fesm2015/theseam-ui-common-utils.mjs +36 -32
  507. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  508. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +96 -0
  509. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  510. package/fesm2015/theseam-ui-common-viewers.mjs +95 -93
  511. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  512. package/fesm2015/theseam-ui-common-widget.mjs +182 -209
  513. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  514. package/fesm2020/theseam-ui-common-asset-reader.mjs +21 -19
  515. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  516. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +13 -14
  517. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  518. package/fesm2020/theseam-ui-common-buttons.mjs +32 -28
  519. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  520. package/fesm2020/theseam-ui-common-card.mjs +23 -31
  521. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  522. package/fesm2020/theseam-ui-common-carousel.mjs +265 -0
  523. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -0
  524. package/fesm2020/theseam-ui-common-checkbox.mjs +47 -48
  525. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  526. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +20 -20
  527. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  528. package/fesm2020/theseam-ui-common-core.mjs +28 -26
  529. package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
  530. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  531. package/fesm2020/theseam-ui-common-data-filters.mjs +42 -39
  532. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +55 -59
  534. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-datatable.mjs +229 -237
  536. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  538. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-dynamic.mjs +36 -26
  540. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-footer-bar.mjs +8 -11
  542. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-form-field-error.mjs +109 -111
  544. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-form-field.mjs +114 -113
  546. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-framework.mjs +216 -223
  548. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-google-maps.mjs +243 -126
  550. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-graphql.mjs +14 -38
  552. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  553. package/fesm2020/theseam-ui-common-icon.mjs +104 -105
  554. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  555. package/fesm2020/theseam-ui-common-layout.mjs +16 -8
  556. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  557. package/fesm2020/theseam-ui-common-loading.mjs +11 -12
  558. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  559. package/fesm2020/theseam-ui-common-menu.mjs +77 -78
  560. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  561. package/fesm2020/theseam-ui-common-modal.mjs +112 -117
  562. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  563. package/fesm2020/theseam-ui-common-models.mjs +2 -1
  564. package/fesm2020/theseam-ui-common-models.mjs.map +1 -1
  565. package/fesm2020/theseam-ui-common-popover.mjs +52 -52
  566. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  567. package/fesm2020/theseam-ui-common-progress.mjs +8 -8
  568. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  569. package/fesm2020/theseam-ui-common-scrollbar.mjs +16 -17
  570. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  571. package/fesm2020/theseam-ui-common-services.mjs +11 -13
  572. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  573. package/fesm2020/theseam-ui-common-shared.mjs +89 -89
  574. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  575. package/fesm2020/theseam-ui-common-storage.mjs +10 -10
  576. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  577. package/fesm2020/theseam-ui-common-story-helpers.mjs +27 -98
  578. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  579. package/fesm2020/theseam-ui-common-tabbed.mjs +36 -38
  580. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  581. package/fesm2020/theseam-ui-common-table-cell-type.mjs +12 -13
  582. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  583. package/fesm2020/theseam-ui-common-table-cell-types.mjs +136 -138
  584. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  585. package/fesm2020/theseam-ui-common-table.mjs +15 -16
  586. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  587. package/fesm2020/theseam-ui-common-tel-input.mjs +65 -69
  588. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  589. package/fesm2020/theseam-ui-common-testing.mjs +1 -0
  590. package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
  591. package/fesm2020/theseam-ui-common-tiled-select.mjs +43 -46
  592. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  593. package/fesm2020/theseam-ui-common-toggle-edit.mjs +32 -35
  594. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  595. package/fesm2020/theseam-ui-common-toggle-group.mjs +20 -20
  596. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  597. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  598. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  599. package/fesm2020/theseam-ui-common-utils.mjs +36 -32
  600. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  601. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +87 -0
  602. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  603. package/fesm2020/theseam-ui-common-viewers.mjs +95 -93
  604. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  605. package/fesm2020/theseam-ui-common-widget.mjs +182 -209
  606. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  607. package/footer-bar/footer-bar/footer-bar.component.d.ts +1 -4
  608. package/form-field-error/form-field-error/form-field-error.component.d.ts +1 -4
  609. package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +2 -3
  610. package/framework/base-layout/base-layout-action.d.ts +1 -1
  611. package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +2 -4
  612. package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +2 -3
  613. package/framework/dashboard/dashboard.component.d.ts +0 -1
  614. package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +2 -3
  615. package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +0 -1
  616. package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +1 -1
  617. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +2 -4
  618. package/framework/side-nav/side-nav.models.d.ts +1 -1
  619. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -5
  620. package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +1 -4
  621. package/framework/top-bar/top-bar.component.d.ts +2 -4
  622. package/google-maps/google-maps/google-maps.component.d.ts +3 -6
  623. package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +73 -0
  624. package/google-maps/google-maps-api-loader/noop-google-maps-api-loader.d.ts +13 -0
  625. package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +2 -3
  626. package/google-maps/map-value-manager.service.d.ts +1 -1
  627. package/google-maps/public-api.d.ts +3 -0
  628. package/graphql/datatable/datatable-graphql-query-ref.d.ts +2 -3
  629. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  630. package/graphql/datatable/datatable-helpers.d.ts +2 -2
  631. package/graphql/datatable/map-filter-states.d.ts +2 -2
  632. package/graphql/datatable/map-page-info.d.ts +1 -1
  633. package/graphql/datatable/mapper-context.d.ts +1 -1
  634. package/graphql/models/gql-datatable-accessor.d.ts +1 -1
  635. package/graphql/models/hint-transformer.d.ts +1 -1
  636. package/icon/icon/icon.component.d.ts +1 -1
  637. package/icon/icon-btn/icon-btn.component.d.ts +2 -3
  638. package/icon/icon.d.ts +1 -1
  639. package/layout/breakpoint-aliases.d.ts +1 -1
  640. package/loading/loading/loading.component.d.ts +1 -4
  641. package/loading/loading.models.d.ts +1 -1
  642. package/menu/menu-item.component.d.ts +2 -3
  643. package/modal/modal/modal.component.d.ts +3 -4
  644. package/modal/modal-body/modal-body.component.d.ts +1 -4
  645. package/modal/modal-config.d.ts +1 -1
  646. package/modal/modal-footer/modal-footer.component.d.ts +1 -4
  647. package/modal/modal-header/modal-header.component.d.ts +1 -4
  648. package/modal/route-modal/route-modal.component.d.ts +2 -3
  649. package/models/component-type.d.ts +1 -1
  650. package/models/size-prefixes.d.ts +1 -1
  651. package/models/size-types.d.ts +1 -1
  652. package/models/theme-prefixes.d.ts +1 -1
  653. package/models/theme-types.d.ts +2 -2
  654. package/package.json +17 -1
  655. package/progress/progress-circle/progress-circle.component.d.ts +0 -1
  656. package/scrollbar/overlay-scrollbar.directive.d.ts +2 -3
  657. package/scrollbar/overlay-scrollbars-config-model.d.ts +1 -1
  658. package/services/asset-loader.service.d.ts +0 -1
  659. package/services/font-loader.service.d.ts +1 -2
  660. package/story-helpers/public-api.d.ts +0 -1
  661. package/tabbed/directives/tabbed-tab-content.directive.d.ts +0 -1
  662. package/tabbed/tabbed-content/tabbed-content.component.d.ts +1 -4
  663. package/tabbed/tabbed-item/tabbed-item.component.d.ts +2 -4
  664. package/tabbed/tabbed.service.d.ts +0 -1
  665. package/table/table/table.component.d.ts +3 -4
  666. package/table-cell-type/table-cell-type-models.d.ts +4 -4
  667. package/table-cell-type/table-cell-type-name.d.ts +1 -1
  668. package/table-cell-type/table-cell-type-selector.component.d.ts +3 -4
  669. package/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.d.ts +1 -1
  670. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.d.ts +2 -3
  671. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.d.ts +1 -1
  672. package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +2 -3
  673. package/table-cell-types/table-cell-type-date/table-cell-type-date.d.ts +1 -1
  674. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +1 -1
  675. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.d.ts +2 -3
  676. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.d.ts +1 -1
  677. package/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.d.ts +1 -1
  678. package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +3 -4
  679. package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +1 -1
  680. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.d.ts +2 -3
  681. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.d.ts +1 -1
  682. package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +2 -3
  683. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.d.ts +1 -1
  684. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +2 -3
  685. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.d.ts +1 -1
  686. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +2 -3
  687. package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +1 -1
  688. package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +1 -1
  689. package/tel-input/utils/coerce-phone-number-format.d.ts +1 -1
  690. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +3 -4
  691. package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +1 -4
  692. package/tiled-select/tiled-select.models.d.ts +2 -2
  693. package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +1 -4
  694. package/toggle-group/toggle-group.directive.d.ts +0 -1
  695. package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +1 -4
  696. package/utils/obj-utils.d.ts +2 -2
  697. package/utils/polling-ticker.d.ts +1 -1
  698. package/utils/subscriber-count.d.ts +1 -1
  699. package/vertical-list-filter/index.d.ts +5 -0
  700. package/vertical-list-filter/public-api.d.ts +2 -0
  701. package/vertical-list-filter/testing/index.d.ts +1 -0
  702. package/vertical-list-filter/testing/vertical-list-filter.harness.d.ts +9 -0
  703. package/vertical-list-filter/vertical-list-filter.component.d.ts +17 -0
  704. package/widget/directives/widget-drag-handle.directive.d.ts +1 -1
  705. package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +1 -4
  706. package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +1 -4
  707. package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +2 -3
  708. package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +1 -4
  709. package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +1 -4
  710. package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +2 -3
  711. package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +4 -7
  712. package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +1 -4
  713. package/widget/widget-content-components/widget-table/widget-table.component.d.ts +0 -1
  714. package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +1 -4
  715. package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +2 -3
  716. package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +1 -4
  717. package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +1 -4
  718. package/widget/widget-footer/widget-footer.component.d.ts +1 -4
  719. package/esm2020/story-helpers/args-to-tpl.mjs +0 -72
  720. package/story-helpers/args-to-tpl.d.ts +0 -24
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-shared.mjs","sources":["../../../projects/ui-common/shared/components/password-input-reveal/password-input-reveal.component.ts","../../../projects/ui-common/shared/directives/auto-focus.directive.ts","../../../projects/ui-common/shared/directives/click-outside.directive.ts","../../../projects/ui-common/shared/directives/disable-control.directive.ts","../../../projects/ui-common/shared/directives/elem-resized.directive.ts","../../../projects/ui-common/shared/directives/hover-class-toggle.directive.ts","../../../projects/ui-common/shared/directives/hover-class.directive.ts","../../../projects/ui-common/shared/directives/ng-select-extra.directive.ts","../../../projects/ui-common/shared/directives/ngx-quill-extra.directive.ts","../../../projects/ui-common/shared/pipes/mask-chars.pipe.ts","../../../projects/ui-common/shared/pipes/truncate.pipe.ts","../../../projects/ui-common/shared/shared.module.ts","../../../projects/ui-common/shared/theseam-ui-common-shared.ts"],"sourcesContent":["import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Component, Input } from '@angular/core'\n\nimport { faEye, faEyeSlash } from '@fortawesome/free-regular-svg-icons'\n\n@Component({\n selector: 'seam-password-input-reveal',\n template: `\n <fa-icon [icon]=\"passwordVisible ? faEyeSlash : faEye\" class=\"password-reveal-icon\" (click)=\"revealPassword()\"></fa-icon>\n `,\n styles: [\n `\n :host {\n display: flex;\n align-items: center;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n width: 30px;\n transform: translateZ(0);\n z-index: 50;\n }\n\n :host fa-icon {\n opacity: 1;\n color: #bababa;\n margin-top: 3px;\n cursor: pointer;\n }\n\n :host fa-icon ::ng-deep .svg-inline--fa {\n vertical-align: middle;\n }\n `\n ]\n})\nexport class PasswordInputRevealComponent {\n static ngAcceptInputType_passwordVisible: BooleanInput\n\n faEye = faEye\n faEyeSlash = faEyeSlash\n\n @Input()\n get inputRef(): HTMLInputElement | undefined | null { return this._passwordInput }\n set inputRef(value: HTMLInputElement | undefined | null) {\n this._passwordInput = value\n this.updateRevealState()\n if (this._passwordInput) {\n this._passwordInput.style.paddingRight = '40px'\n this._passwordInput.classList.add('no-native-eye')\n }\n }\n private _passwordInput: HTMLInputElement | undefined | null\n\n @Input()\n get passwordVisible() { return this._passwordVisible }\n set passwordVisible(value: boolean) {\n this._passwordVisible = coerceBooleanProperty(value)\n this.updateRevealState()\n }\n public _passwordVisible = false\n\n public updateRevealState(): void {\n if (this._passwordInput) {\n this._passwordInput.type = this.passwordVisible ? 'text' : 'password'\n }\n }\n\n public revealPassword(): void {\n this.passwordVisible = !this.passwordVisible\n }\n\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Directive, ElementRef, Input, OnInit, Optional } from '@angular/core'\n\nimport { getClosestModal, Modal, ModalRef } from '@theseam/ui-common/modal'\n\n@Directive({\n selector: '[seamAutoFocus]',\n exportAs: 'seamAutoFocus'\n})\nexport class AutoFocusDirective implements OnInit {\n static ngAcceptInputType_seamAutoFocus: BooleanInput\n\n private _focus = true\n\n public modalRef: ModalRef<any> | undefined | null\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _modal: Modal,\n @Optional() private _modalRef: ModalRef<any>\n ) {\n this.modalRef = _modalRef\n }\n\n ngOnInit() {\n if (!this.modalRef) {\n // When this directive is included in a dialog via TemplateRef (rather than being\n // in a Component), the DialogRef isn't available via injection because embedded\n // views cannot be given a custom injector. Instead, we look up the DialogRef by\n // ID. This must occur in `onInit`, as the ID binding for the dialog container won't\n // be resolved at constructor time.\n this.modalRef = getClosestModal(this._elementRef, this._modal.openDialogs)\n }\n\n if (!this.modalRef) {\n if (this._focus) {\n setTimeout(() => { this.focus() })\n }\n } else {\n this.modalRef.afterOpened().subscribe(() => {\n setTimeout(() => { this.focus() })\n })\n }\n }\n\n @Input()\n set seamAutoFocus(condition: boolean) {\n this._focus = coerceBooleanProperty(condition) !== false\n }\n\n public focus() {\n this._elementRef.nativeElement.focus()\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostListener, Input, Output } from '@angular/core'\n\n@Directive({\n selector: '[seamClickOutside]'\n})\nexport class ClickOutsideDirective {\n\n @Input()\n get seamClickOutsideActive(): boolean {\n return this._active\n }\n set seamClickOutsideActive(value: boolean) {\n if (this._active === value) { return }\n\n if (value) {\n // `setTimeout` is used to avoid the click event triggering when the value\n // changes if the value was changed with a click.\n setTimeout(() => { this._active = value })\n } else {\n this._active = value\n }\n }\n private _active = true\n\n @Output() seamClickOutside = new EventEmitter<MouseEvent>()\n\n // NOTE: This should probably be changed from a `HostListener` to allow the\n // subscription to be unsubscribed.\n @HostListener('document:click', ['$event'])\n public onDocumentClick(event: MouseEvent): void {\n if (this._active) {\n const targetElement = event.target as HTMLElement\n // Check if the click was outside the element\n if (targetElement && !this.elementRef.nativeElement.contains(targetElement)) {\n this.seamClickOutside.emit(event)\n }\n }\n }\n\n constructor(private elementRef: ElementRef) { }\n\n}\n","import { Directive, Input } from '@angular/core'\nimport { NgControl } from '@angular/forms'\n\n// Source: https://netbasal.com/disabling-form-controls-when-working-with-reactive-forms-in-angular-549dd7b42110\n\n@Directive({\n selector: '[seamDisableControl]'\n})\nexport class DisableControlDirective {\n\n @Input() set seamDisableControl(condition: boolean) {\n const action = condition ? 'disable' : 'enable'\n const control = this.ngControl.control\n if (control) {\n control[action]()\n }\n }\n\n constructor(private ngControl: NgControl) { }\n\n}\n","import { AfterViewInit, Directive, ElementRef, EventEmitter, OnDestroy, Output } from '@angular/core'\n\nimport { ResizeSensor } from 'css-element-queries'\n\nexport interface IElementResizedEvent {\n element: HTMLElement\n size: { width: number, height: number }\n}\n\n@Directive({\n selector: '[seamElemResized]'\n})\nexport class ElemResizedDirective implements OnDestroy, AfterViewInit {\n\n @Output() seamElemResized = new EventEmitter<IElementResizedEvent>()\n\n sensor?: ResizeSensor\n\n constructor(private elementRef: ElementRef) { }\n\n ngAfterViewInit() {\n this.sensor = new ResizeSensor(this.elementRef.nativeElement, (event) => {\n this.seamElemResized.emit({ element: this.elementRef.nativeElement, size: event })\n })\n }\n\n ngOnDestroy() {\n this.sensor?.detach()\n }\n\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core'\n\ndeclare type _PointerEvent = PointerEvent | PointerEvent\n\nexport interface IHoverClassToggleRecord {\n default: string\n hover: string\n}\n\n/**\n * Don't use this directive unless there is a reason not to use css `:hover`,\n * because the accuracy of detecting the hover is not as good. If an element is\n * moved while the mouse is idle the hover class will remain until the mouse\n * enters and leaves again.\n *\n * I have tried multiple ways of detecting the mouse no longer hovering, but all\n * have introduced a slight performance issue that just builds for each element\n * containing this directive.\n */\n@Directive({\n selector: '[seamHoverClassToggle]'\n})\nexport class HoverClassToggleDirective {\n\n private _hovered = false\n private _defaultClasses: string[] = []\n private _hoverClasses: string[] = []\n\n @HostListener('mouseover', ['$event']) onMouseOver($event: MouseEvent) {\n this._setHovered(true)\n }\n\n @HostListener('mouseout', ['$event']) onMouseOut($event: MouseEvent) {\n this._setHovered(false)\n }\n\n @HostListener('pointerover', ['$event']) onPointerOver($event: _PointerEvent) {\n this._setHovered(true)\n }\n\n @HostListener('pointerout', ['$event']) onPointerOut($event: _PointerEvent) {\n this._setHovered(false)\n }\n\n @Input()\n set seamHoverClassToggle(value: IHoverClassToggleRecord) {\n if (value) {\n if (value.default) {\n this._defaultClasses = value.default.split(' ').filter(c => c.length > 0)\n }\n if (value.hover) {\n this._hoverClasses = value.hover.split(' ').filter(c => c.length > 0)\n }\n }\n\n this._hoverClasses = this._hoverClasses.filter(v => !this._defaultClasses.find(_v => _v === v))\n\n this._update()\n }\n\n constructor(\n private readonly _element: ElementRef\n ) { }\n\n private _update(): void {\n for (const c of this._defaultClasses) {\n this._hovered ? this._removeClass(c) : this._addClass(c)\n }\n for (const c of this._hoverClasses) {\n this._hovered ? this._addClass(c) : this._removeClass(c)\n }\n }\n\n private _setHovered(hovered: boolean) {\n const doUpdate = this._hovered !== hovered\n this._hovered = hovered\n if (doUpdate) {\n this._update()\n }\n }\n\n private _addClass(c: string): void {\n this._element.nativeElement.classList.add(c)\n }\n\n public _removeClass(c: string): void {\n this._element.nativeElement.classList.remove(c)\n }\n\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core'\n\ndeclare type _PointerEvent = PointerEvent | PointerEvent\n\n/**\n * Don't use this directive unless there is a reason not to use css `:hover`,\n * because the accuracy of detecting the hover is not as good. If an element is\n * moved while the mouse is idle the hover class will remain until the mouse\n * enters and leaves again.\n *\n * I have tried multiple ways of detecting the mouse no longer hovering, but all\n * have introduced a slight performance issue that just builds for each element\n * containing this directive.\n */\n@Directive({\n selector: '[seamHoverClass]'\n})\nexport class HoverClassDirective {\n\n private _hovered = false\n private _classes: string[] = []\n\n @HostListener('mouseover', ['$event']) onMouseOver($event: MouseEvent) {\n this._setHovered(true)\n }\n\n @HostListener('mouseout', ['$event']) onMouseOut($event: MouseEvent) {\n this._setHovered(false)\n }\n\n @HostListener('pointerover', ['$event']) onPointerOver($event: _PointerEvent) {\n this._setHovered(true)\n }\n\n @HostListener('pointerout', ['$event']) onPointerOut($event: _PointerEvent) {\n this._setHovered(false)\n }\n\n @Input()\n set seamHoverClass(classList: string) {\n const newClasses = classList.split(' ').filter(c => c.length > 0)\n for (const c of this._classes) {\n if (newClasses.indexOf(c) !== 0) {\n this._removeClass(c)\n }\n }\n this._classes = newClasses\n this._update()\n }\n\n constructor(\n private readonly _element: ElementRef\n ) { }\n\n private _update(): void {\n for (const c of this._classes) {\n this._hovered ? this._addClass(c) : this._removeClass(c)\n }\n }\n\n private _setHovered(hovered: boolean) {\n const doUpdate = this._hovered !== hovered\n this._hovered = hovered\n if (doUpdate) {\n this._update()\n }\n }\n\n private _addClass(c: string): void {\n this._element.nativeElement.classList.add(c)\n }\n\n public _removeClass(c: string): void {\n this._element.nativeElement.classList.remove(c)\n }\n\n}\n","import { AfterViewChecked, Directive, ElementRef, EventEmitter, HostBinding,\n HostListener, NgZone, OnDestroy, OnInit, Optional, Self } from '@angular/core'\nimport { NgControl } from '@angular/forms'\nimport { Subject, Subscription } from 'rxjs'\nimport { filter, takeUntil } from 'rxjs/operators'\n\nimport { NgOption, NgSelectComponent } from '@ng-select/ng-select'\nimport { ResizeSensor } from 'css-element-queries'\n\nimport { IElementResizedEvent } from './elem-resized.directive'\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: 'ng-select'\n})\nexport class NgSelectExtraDirective implements OnInit, AfterViewChecked, OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n private _markedItem: NgOption | null = null\n private _checkMarked = false\n private _keyPressWorkaroundSub: Subscription | null = null\n\n private _resizedEvent = new EventEmitter<IElementResizedEvent>()\n private _resizeSensor?: ResizeSensor\n\n /**\n * Set the tab index to `-1` to allow the root element of the ng-select\n * component to receive `focus` event from javascript, but not get focused by\n * keyboard navigation.\n */\n @HostBinding('attr.tabIndex')\n get _tabIndex() { return this.ngSelect.disabled ? undefined : -1 }\n\n /**\n * Listening for focus event on root of component to allow javascript\n * `focus()` function to trigger the components focus.\n */\n @HostListener('focus', ['$event']) onFocus($event: FocusEvent) {\n const target = $event.target as HTMLElement\n if (target === this.elementRef.nativeElement && !this.ngSelect.disabled) {\n this.ngSelect.focus()\n }\n\n // ng-select has an input `labelForId` that sets the autocomplete attribute\n // in ngOnInit. I am not positive that it is wrong by doing that, but this\n // hack makes it set the attributes again on focus, because that gives the\n // result I was expecting, since we don't manually set the `labelForId`\n // input.\n const _ngSelect = this.ngSelect as any\n _ngSelect._setInputAttributes()\n }\n\n @HostBinding('class.is-invalid') get _isInvalid() {\n return this.ngControl ? this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) : false\n }\n\n @HostBinding('class.ng-empty-string-value') get _isEmptyStringValue() {\n return this.ngControl ? this.ngControl.value === '' ? true : false : false\n }\n\n constructor(\n private readonly elementRef: ElementRef,\n private readonly _ngZone: NgZone,\n private readonly ngSelect: NgSelectComponent,\n @Optional() @Self() public readonly ngControl: NgControl\n ) { }\n\n ngOnInit() {\n this.ngSelect.focusEvent\n .subscribe(v => this._enableKeyPressWorkaround())\n\n this.ngSelect.blurEvent\n .subscribe(v => this._disableKeyPressWorkaround())\n\n window.addEventListener('scroll', this._onScroll, true)\n\n // When the input is allowed to change its height the position doesn't update itself.\n // this._resizedEvent.pipe(\n // auditTime(30)\n // ).subscribe(event => {\n // if (this.elementRef && this.elementRef.nativeElement) {\n // if (this.elementRef.nativeElement.classList.contains('ng-select-value-grow-h')) {\n // if (this.ngSelect.isOpen && this.ngSelect.dropdownPanel) {\n // this.ngSelect.dropdownPanel.updateDropdownPosition()\n // }\n // } else {\n // this.elementRef.nativeElement.classList.remove('ng-select-value-grow-h')\n // }\n // }\n // })\n\n // this._patch_ngSelect_open()\n }\n\n ngOnDestroy() {\n this._resizeSensor?.detach()\n\n window.removeEventListener('scroll', this._onScroll, true)\n\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewChecked() {\n if (this.ngSelect.dropdownPanel) {\n if (this._checkMarked) {\n if (this.ngSelect.dropdownPanel && this._markedItem !== null) {\n if (this._markedItem.index !== this.ngSelect.dropdownPanel.markedItem.index) {\n this.ngSelect.dropdownPanel.scrollTo(this.ngSelect.dropdownPanel.markedItem)\n }\n }\n }\n }\n this._checkMarked = false\n\n this._resizeSensor = new ResizeSensor(this.elementRef.nativeElement, (event) => {\n this._resizedEvent.emit({ element: this.elementRef.nativeElement, size: event })\n })\n }\n\n private _onScroll = (event: any) => {\n if (this.ngSelect && this.ngSelect.isOpen) {\n const isScrollingInScrollHost = (event.target.className as string).indexOf('ng-dropdown-panel-items') !== -1\n const isInSensor = (event.target.className as string).indexOf('resize-sensor-shrink') !== -1 ||\n (event.target.className as string).indexOf('os-resize-observer-host') !== -1\n if (isScrollingInScrollHost || isInSensor) { return }\n this.ngSelect.close()\n }\n}\n\n /**\n * Temp fix for: https://github.com/ng-select/ng-select/issues/1122\n */\n // private _patch_ngSelect_open() {\n // const original = this.ngSelect.open\n // const _self = this\n // this.ngSelect.open = function() {\n // original.apply(this, arguments)\n // _self._patch_ngSelectDropdownPanel_updateDropdownPosition()\n // }\n // }\n\n /** Should ONLY be called by `_patch_ngSelect_open`. */\n // private _patch_ngSelectDropdownPanel_updateDropdownPosition() {\n // if (!this.ngSelect.dropdownPanel) { return }\n // const drop: any = this.ngSelect.dropdownPanel\n // // Only needed once, to update the position before the timeout in\n // // `updateDropdownPosition()`. So, using this variable to check if I already called\n // // `_updateAppendedDropdownPosition()`.\n // if (!drop.__libPatched) {\n // drop.__libPatched = 'patched'\n // const original = drop.updateDropdownPosition\n // const _self = this\n // drop.updateDropdownPosition = function() {\n // original.apply(this, arguments)\n // if (!!_self.ngSelect.appendTo) {\n // drop._updateAppendedDropdownPosition()\n // }\n // }\n // }\n // }\n\n private _enableKeyPressWorkaround() {\n if (this._keyPressWorkaroundSub) { return }\n const _ngSelect = <any>this.ngSelect\n\n this._keyPressWorkaroundSub = _ngSelect._keyPress$\n .pipe(takeUntil(this._ngUnsubscribe))\n .pipe(filter(() => !this.ngSelect.searchable))\n .subscribe(() => {\n this._ngZone.runOutsideAngular(() => {\n window.requestAnimationFrame(() => {\n if (this.ngSelect.dropdownPanel) {\n this._markedItem = this.ngSelect.dropdownPanel.markedItem\n }\n this._checkMarked = true\n })\n })\n })\n }\n\n private _disableKeyPressWorkaround() {\n if (this._keyPressWorkaroundSub) {\n this._keyPressWorkaroundSub.unsubscribe()\n this._keyPressWorkaroundSub = null\n }\n }\n\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion'\nimport { AfterViewInit, Directive, ElementRef, HostBinding, Input, OnDestroy } from '@angular/core'\nimport { fromEvent, Subject } from 'rxjs'\nimport { filter, takeUntil, tap } from 'rxjs/operators'\n\nimport { QuillEditorComponent } from 'ngx-quill'\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: 'quill-editor'\n})\nexport class NgxQuillExtraDirective implements OnDestroy, AfterViewInit {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n private _tabIndex = -1\n\n /**\n * Set the tab index to `-1` to allow the root element of the\n * component to receive `focus` event from javascript, but not get focused by\n * keyboard navigation.\n */\n @Input()\n set tabIndex(value: number) { this._tabIndex = coerceNumberProperty(value) }\n get tabIndex(): number { return this._tabIndex }\n\n @HostBinding('attr.tabindex')\n get _attrTabIndex() { return this._quillEditor.disabled ? -1 : (this.tabIndex || 0) }\n\n constructor(\n private readonly _elementRef: ElementRef,\n private readonly _quillEditor: QuillEditorComponent\n ) { }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n const parent = this._getParentElementForLabelFocusIssue()\n if (parent) {\n // NOTE: This is a hack to avoid an issue letting a label with \"for\"\n // attribute focus the control.\n fromEvent(parent, 'click').pipe(\n takeUntil(this._ngUnsubscribe),\n filter(e => (e.target as HTMLElement)?.getAttribute('for') === this._elementRef.nativeElement.id),\n tap(() => this._quillEditor.quillEditor.focus())\n ).subscribe()\n }\n }\n\n private _getParentElementForLabelFocusIssue(): HTMLElement | undefined {\n const findElem = (elem: HTMLElement): any => {\n if (elem.nodeName.toLowerCase() === 'seam-form-field') {\n return elem\n }\n\n if (elem.parentElement) {\n return findElem(elem.parentElement)\n }\n\n return elem\n }\n\n return findElem(this._elementRef.nativeElement)\n }\n\n\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\nimport { padEnd, padStart } from '@theseam/ui-common/utils'\n\n@Pipe({\n name: 'maskChars'\n})\nexport class MaskCharsPipe implements PipeTransform {\n\n transform(value: string, replacementChar: string = '*', ignoreCount: number = 0, ignoreFrom: 'left' | 'right' = 'right'): string {\n if (ignoreFrom === 'right') {\n const s = value || ''\n return padStart(s.substring(s.length - ignoreCount, s.length), s.length, replacementChar)\n } else if (ignoreFrom === 'left') {\n const s = value || ''\n return padEnd(s.substring(0, ignoreCount), s.length, replacementChar)\n }\n\n return value\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\n@Pipe({\n name: 'truncate'\n})\nexport class TruncatePipe implements PipeTransform {\n\n transform(value: string, length: number = 30, appendEllipsis: boolean = true): string {\n let val = value\n\n if (value && typeof value === 'string' && value.length > length) {\n val = value.substr(0, length)\n if (appendEllipsis) {\n val += '...'\n }\n }\n\n return val\n }\n\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\nimport { TheSeamLoadingModule } from '@theseam/ui-common/loading'\nimport { TheSeamModalModule } from '@theseam/ui-common/modal'\nimport { TheSeamScrollbarModule } from '@theseam/ui-common/scrollbar'\n\nimport { AutoFocusDirective } from './directives/auto-focus.directive'\nimport { ClickOutsideDirective } from './directives/click-outside.directive'\nimport { DisableControlDirective } from './directives/disable-control.directive'\nimport { ElemResizedDirective } from './directives/elem-resized.directive'\nimport { HoverClassToggleDirective } from './directives/hover-class-toggle.directive'\nimport { HoverClassDirective } from './directives/hover-class.directive'\nimport { NgSelectExtraDirective } from './directives/ng-select-extra.directive'\nimport { NgxQuillExtraDirective } from './directives/ngx-quill-extra.directive'\n\nimport { MaskCharsPipe } from './pipes/mask-chars.pipe'\nimport { TruncatePipe } from './pipes/truncate.pipe'\n\nimport { PasswordInputRevealComponent } from './components/password-input-reveal/password-input-reveal.component'\n\n@NgModule({\n imports: [\n CommonModule,\n FontAwesomeModule,\n TheSeamModalModule,\n TheSeamLoadingModule\n ],\n declarations: [\n AutoFocusDirective,\n ElemResizedDirective,\n PasswordInputRevealComponent,\n NgSelectExtraDirective,\n HoverClassDirective,\n HoverClassToggleDirective,\n ClickOutsideDirective,\n DisableControlDirective,\n MaskCharsPipe,\n TruncatePipe,\n NgxQuillExtraDirective\n ],\n exports: [\n AutoFocusDirective,\n ElemResizedDirective,\n PasswordInputRevealComponent,\n NgSelectExtraDirective,\n HoverClassDirective,\n HoverClassToggleDirective,\n ClickOutsideDirective,\n DisableControlDirective,\n MaskCharsPipe,\n TruncatePipe,\n NgxQuillExtraDirective,\n\n // Exporting scrollbars here for backwards compatibility for now.\n TheSeamScrollbarModule\n ]\n})\nexport class TheSeamSharedModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-shared.mjs","sources":["../../../projects/ui-common/shared/components/password-input-reveal/password-input-reveal.component.ts","../../../projects/ui-common/shared/directives/auto-focus.directive.ts","../../../projects/ui-common/shared/directives/click-outside.directive.ts","../../../projects/ui-common/shared/directives/disable-control.directive.ts","../../../projects/ui-common/shared/directives/elem-resized.directive.ts","../../../projects/ui-common/shared/directives/hover-class-toggle.directive.ts","../../../projects/ui-common/shared/directives/hover-class.directive.ts","../../../projects/ui-common/shared/directives/ng-select-extra.directive.ts","../../../projects/ui-common/shared/directives/ngx-quill-extra.directive.ts","../../../projects/ui-common/shared/pipes/mask-chars.pipe.ts","../../../projects/ui-common/shared/pipes/truncate.pipe.ts","../../../projects/ui-common/shared/shared.module.ts","../../../projects/ui-common/shared/theseam-ui-common-shared.ts"],"sourcesContent":["import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Component, Input } from '@angular/core'\n\nimport { faEye, faEyeSlash } from '@fortawesome/free-regular-svg-icons'\n\n@Component({\n selector: 'seam-password-input-reveal',\n template: `\n <fa-icon [icon]=\"passwordVisible ? faEyeSlash : faEye\" class=\"password-reveal-icon\" (click)=\"revealPassword()\"></fa-icon>\n `,\n styles: [\n `\n :host {\n display: flex;\n align-items: center;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n width: 30px;\n transform: translateZ(0);\n z-index: 50;\n }\n\n :host fa-icon {\n opacity: 1;\n color: #bababa;\n margin-top: 3px;\n cursor: pointer;\n }\n\n :host fa-icon ::ng-deep .svg-inline--fa {\n vertical-align: middle;\n }\n `\n ]\n})\nexport class PasswordInputRevealComponent {\n static ngAcceptInputType_passwordVisible: BooleanInput\n\n faEye = faEye\n faEyeSlash = faEyeSlash\n\n @Input()\n get inputRef(): HTMLInputElement | undefined | null { return this._passwordInput }\n set inputRef(value: HTMLInputElement | undefined | null) {\n this._passwordInput = value\n this.updateRevealState()\n if (this._passwordInput) {\n this._passwordInput.style.paddingRight = '40px'\n this._passwordInput.classList.add('no-native-eye')\n }\n }\n private _passwordInput: HTMLInputElement | undefined | null\n\n @Input()\n get passwordVisible() { return this._passwordVisible }\n set passwordVisible(value: boolean) {\n this._passwordVisible = coerceBooleanProperty(value)\n this.updateRevealState()\n }\n public _passwordVisible = false\n\n public updateRevealState(): void {\n if (this._passwordInput) {\n this._passwordInput.type = this.passwordVisible ? 'text' : 'password'\n }\n }\n\n public revealPassword(): void {\n this.passwordVisible = !this.passwordVisible\n }\n\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Directive, ElementRef, Input, OnInit, Optional } from '@angular/core'\n\nimport { getClosestModal, Modal, ModalRef } from '@theseam/ui-common/modal'\n\n@Directive({\n selector: '[seamAutoFocus]',\n exportAs: 'seamAutoFocus'\n})\nexport class AutoFocusDirective implements OnInit {\n static ngAcceptInputType_seamAutoFocus: BooleanInput\n\n private _focus = true\n\n public modalRef: ModalRef<any> | undefined | null\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _modal: Modal,\n @Optional() private _modalRef: ModalRef<any>\n ) {\n this.modalRef = _modalRef\n }\n\n ngOnInit() {\n if (!this.modalRef) {\n // When this directive is included in a dialog via TemplateRef (rather than being\n // in a Component), the DialogRef isn't available via injection because embedded\n // views cannot be given a custom injector. Instead, we look up the DialogRef by\n // ID. This must occur in `onInit`, as the ID binding for the dialog container won't\n // be resolved at constructor time.\n this.modalRef = getClosestModal(this._elementRef, this._modal.openDialogs)\n }\n\n if (!this.modalRef) {\n if (this._focus) {\n setTimeout(() => { this.focus() })\n }\n } else {\n this.modalRef.afterOpened().subscribe(() => {\n setTimeout(() => { this.focus() })\n })\n }\n }\n\n @Input()\n set seamAutoFocus(condition: boolean) {\n this._focus = coerceBooleanProperty(condition) !== false\n }\n\n public focus() {\n this._elementRef.nativeElement.focus()\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostListener, Input, Output } from '@angular/core'\n\n@Directive({\n selector: '[seamClickOutside]'\n})\nexport class ClickOutsideDirective {\n\n @Input()\n get seamClickOutsideActive(): boolean {\n return this._active\n }\n set seamClickOutsideActive(value: boolean) {\n if (this._active === value) { return }\n\n if (value) {\n // `setTimeout` is used to avoid the click event triggering when the value\n // changes if the value was changed with a click.\n setTimeout(() => { this._active = value })\n } else {\n this._active = value\n }\n }\n private _active = true\n\n @Output() seamClickOutside = new EventEmitter<MouseEvent>()\n\n // NOTE: This should probably be changed from a `HostListener` to allow the\n // subscription to be unsubscribed.\n @HostListener('document:click', ['$event'])\n public onDocumentClick(event: MouseEvent): void {\n if (this._active) {\n const targetElement = event.target as HTMLElement\n // Check if the click was outside the element\n if (targetElement && !this.elementRef.nativeElement.contains(targetElement)) {\n this.seamClickOutside.emit(event)\n }\n }\n }\n\n constructor(private elementRef: ElementRef) { }\n\n}\n","import { Directive, Input } from '@angular/core'\nimport { NgControl } from '@angular/forms'\n\n// Source: https://netbasal.com/disabling-form-controls-when-working-with-reactive-forms-in-angular-549dd7b42110\n\n@Directive({\n selector: '[seamDisableControl]'\n})\nexport class DisableControlDirective {\n\n @Input() set seamDisableControl(condition: boolean) {\n const action = condition ? 'disable' : 'enable'\n const control = this.ngControl.control\n if (control) {\n control[action]()\n }\n }\n\n constructor(private ngControl: NgControl) { }\n\n}\n","import { AfterViewInit, Directive, ElementRef, EventEmitter, OnDestroy, Output } from '@angular/core'\n\nimport { ResizeSensor } from 'css-element-queries'\n\nexport interface IElementResizedEvent {\n element: HTMLElement\n size: { width: number, height: number }\n}\n\n@Directive({\n selector: '[seamElemResized]'\n})\nexport class ElemResizedDirective implements OnDestroy, AfterViewInit {\n\n @Output() seamElemResized = new EventEmitter<IElementResizedEvent>()\n\n sensor?: ResizeSensor\n\n constructor(private elementRef: ElementRef) { }\n\n ngAfterViewInit() {\n this.sensor = new ResizeSensor(this.elementRef.nativeElement, event => {\n this.seamElemResized.emit({ element: this.elementRef.nativeElement, size: event })\n })\n }\n\n ngOnDestroy() {\n this.sensor?.detach()\n }\n\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core'\n\ndeclare type _PointerEvent = PointerEvent | PointerEvent\n\nexport interface IHoverClassToggleRecord {\n default: string\n hover: string\n}\n\n/**\n * Don't use this directive unless there is a reason not to use css `:hover`,\n * because the accuracy of detecting the hover is not as good. If an element is\n * moved while the mouse is idle the hover class will remain until the mouse\n * enters and leaves again.\n *\n * I have tried multiple ways of detecting the mouse no longer hovering, but all\n * have introduced a slight performance issue that just builds for each element\n * containing this directive.\n */\n@Directive({\n selector: '[seamHoverClassToggle]'\n})\nexport class HoverClassToggleDirective {\n\n private _hovered = false\n private _defaultClasses: string[] = []\n private _hoverClasses: string[] = []\n\n @HostListener('mouseover', ['$event']) onMouseOver($event: MouseEvent) {\n this._setHovered(true)\n }\n\n @HostListener('mouseout', ['$event']) onMouseOut($event: MouseEvent) {\n this._setHovered(false)\n }\n\n @HostListener('pointerover', ['$event']) onPointerOver($event: _PointerEvent) {\n this._setHovered(true)\n }\n\n @HostListener('pointerout', ['$event']) onPointerOut($event: _PointerEvent) {\n this._setHovered(false)\n }\n\n @Input()\n set seamHoverClassToggle(value: IHoverClassToggleRecord) {\n if (value) {\n if (value.default) {\n this._defaultClasses = value.default.split(' ').filter(c => c.length > 0)\n }\n if (value.hover) {\n this._hoverClasses = value.hover.split(' ').filter(c => c.length > 0)\n }\n }\n\n this._hoverClasses = this._hoverClasses.filter(v => !this._defaultClasses.find(_v => _v === v))\n\n this._update()\n }\n\n constructor(\n private readonly _element: ElementRef\n ) { }\n\n private _update(): void {\n for (const c of this._defaultClasses) {\n this._hovered ? this._removeClass(c) : this._addClass(c)\n }\n for (const c of this._hoverClasses) {\n this._hovered ? this._addClass(c) : this._removeClass(c)\n }\n }\n\n private _setHovered(hovered: boolean) {\n const doUpdate = this._hovered !== hovered\n this._hovered = hovered\n if (doUpdate) {\n this._update()\n }\n }\n\n private _addClass(c: string): void {\n this._element.nativeElement.classList.add(c)\n }\n\n public _removeClass(c: string): void {\n this._element.nativeElement.classList.remove(c)\n }\n\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core'\n\ndeclare type _PointerEvent = PointerEvent | PointerEvent\n\n/**\n * Don't use this directive unless there is a reason not to use css `:hover`,\n * because the accuracy of detecting the hover is not as good. If an element is\n * moved while the mouse is idle the hover class will remain until the mouse\n * enters and leaves again.\n *\n * I have tried multiple ways of detecting the mouse no longer hovering, but all\n * have introduced a slight performance issue that just builds for each element\n * containing this directive.\n */\n@Directive({\n selector: '[seamHoverClass]'\n})\nexport class HoverClassDirective {\n\n private _hovered = false\n private _classes: string[] = []\n\n @HostListener('mouseover', ['$event']) onMouseOver($event: MouseEvent) {\n this._setHovered(true)\n }\n\n @HostListener('mouseout', ['$event']) onMouseOut($event: MouseEvent) {\n this._setHovered(false)\n }\n\n @HostListener('pointerover', ['$event']) onPointerOver($event: _PointerEvent) {\n this._setHovered(true)\n }\n\n @HostListener('pointerout', ['$event']) onPointerOut($event: _PointerEvent) {\n this._setHovered(false)\n }\n\n @Input()\n set seamHoverClass(classList: string) {\n const newClasses = classList.split(' ').filter(c => c.length > 0)\n for (const c of this._classes) {\n if (newClasses.indexOf(c) !== 0) {\n this._removeClass(c)\n }\n }\n this._classes = newClasses\n this._update()\n }\n\n constructor(\n private readonly _element: ElementRef\n ) { }\n\n private _update(): void {\n for (const c of this._classes) {\n this._hovered ? this._addClass(c) : this._removeClass(c)\n }\n }\n\n private _setHovered(hovered: boolean) {\n const doUpdate = this._hovered !== hovered\n this._hovered = hovered\n if (doUpdate) {\n this._update()\n }\n }\n\n private _addClass(c: string): void {\n this._element.nativeElement.classList.add(c)\n }\n\n public _removeClass(c: string): void {\n this._element.nativeElement.classList.remove(c)\n }\n\n}\n","import { AfterViewChecked, Directive, ElementRef, EventEmitter, HostBinding,\n HostListener, NgZone, OnDestroy, OnInit, Optional, Self } from '@angular/core'\nimport { NgControl } from '@angular/forms'\nimport { Subject, Subscription } from 'rxjs'\nimport { filter, takeUntil } from 'rxjs/operators'\n\nimport { NgOption, NgSelectComponent } from '@ng-select/ng-select'\nimport { ResizeSensor } from 'css-element-queries'\n\nimport { IElementResizedEvent } from './elem-resized.directive'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'ng-select'\n})\nexport class NgSelectExtraDirective implements OnInit, AfterViewChecked, OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n private _markedItem: NgOption | null = null\n private _checkMarked = false\n private _keyPressWorkaroundSub: Subscription | null = null\n\n private _resizedEvent = new EventEmitter<IElementResizedEvent>()\n private _resizeSensor?: ResizeSensor\n\n /**\n * Set the tab index to `-1` to allow the root element of the ng-select\n * component to receive `focus` event from javascript, but not get focused by\n * keyboard navigation.\n */\n @HostBinding('attr.tabIndex')\n get _tabIndex() { return this.ngSelect.disabled ? undefined : -1 }\n\n /**\n * Listening for focus event on root of component to allow javascript\n * `focus()` function to trigger the components focus.\n */\n @HostListener('focus', ['$event']) onFocus($event: FocusEvent) {\n const target = $event.target as HTMLElement\n if (target === this.elementRef.nativeElement && !this.ngSelect.disabled) {\n this.ngSelect.focus()\n }\n\n // ng-select has an input `labelForId` that sets the autocomplete attribute\n // in ngOnInit. I am not positive that it is wrong by doing that, but this\n // hack makes it set the attributes again on focus, because that gives the\n // result I was expecting, since we don't manually set the `labelForId`\n // input.\n const _ngSelect = this.ngSelect as any\n _ngSelect._setInputAttributes()\n }\n\n @HostBinding('class.is-invalid') get _isInvalid() {\n return this.ngControl ? this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) : false\n }\n\n @HostBinding('class.ng-empty-string-value') get _isEmptyStringValue() {\n return this.ngControl ? this.ngControl.value === '' : false\n }\n\n constructor(\n private readonly elementRef: ElementRef,\n private readonly _ngZone: NgZone,\n private readonly ngSelect: NgSelectComponent,\n @Optional() @Self() public readonly ngControl: NgControl\n ) { }\n\n ngOnInit() {\n this.ngSelect.focusEvent\n .subscribe(v => this._enableKeyPressWorkaround())\n\n this.ngSelect.blurEvent\n .subscribe(v => this._disableKeyPressWorkaround())\n\n window.addEventListener('scroll', this._onScroll, true)\n\n // When the input is allowed to change its height the position doesn't update itself.\n // this._resizedEvent.pipe(\n // auditTime(30)\n // ).subscribe(event => {\n // if (this.elementRef && this.elementRef.nativeElement) {\n // if (this.elementRef.nativeElement.classList.contains('ng-select-value-grow-h')) {\n // if (this.ngSelect.isOpen && this.ngSelect.dropdownPanel) {\n // this.ngSelect.dropdownPanel.updateDropdownPosition()\n // }\n // } else {\n // this.elementRef.nativeElement.classList.remove('ng-select-value-grow-h')\n // }\n // }\n // })\n\n // this._patch_ngSelect_open()\n }\n\n ngOnDestroy() {\n this._resizeSensor?.detach()\n\n window.removeEventListener('scroll', this._onScroll, true)\n\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewChecked() {\n if (this.ngSelect.dropdownPanel) {\n if (this._checkMarked) {\n if (this.ngSelect.dropdownPanel && this._markedItem !== null) {\n if (this._markedItem.index !== this.ngSelect.dropdownPanel.markedItem.index) {\n this.ngSelect.dropdownPanel.scrollTo(this.ngSelect.dropdownPanel.markedItem)\n }\n }\n }\n }\n this._checkMarked = false\n\n this._resizeSensor = new ResizeSensor(this.elementRef.nativeElement, event => {\n this._resizedEvent.emit({ element: this.elementRef.nativeElement, size: event })\n })\n }\n\n private _onScroll = (event: any) => {\n if (this.ngSelect && this.ngSelect.isOpen) {\n const isScrollingInScrollHost = (event.target.className as string).indexOf('ng-dropdown-panel-items') !== -1\n const isInSensor = (event.target.className as string).indexOf('resize-sensor-shrink') !== -1 ||\n (event.target.className as string).indexOf('os-resize-observer-host') !== -1\n if (isScrollingInScrollHost || isInSensor) { return }\n this.ngSelect.close()\n }\n}\n\n /**\n * Temp fix for: https://github.com/ng-select/ng-select/issues/1122\n */\n // private _patch_ngSelect_open() {\n // const original = this.ngSelect.open\n // const _self = this\n // this.ngSelect.open = function() {\n // original.apply(this, arguments)\n // _self._patch_ngSelectDropdownPanel_updateDropdownPosition()\n // }\n // }\n\n /** Should ONLY be called by `_patch_ngSelect_open`. */\n // private _patch_ngSelectDropdownPanel_updateDropdownPosition() {\n // if (!this.ngSelect.dropdownPanel) { return }\n // const drop: any = this.ngSelect.dropdownPanel\n // // Only needed once, to update the position before the timeout in\n // // `updateDropdownPosition()`. So, using this variable to check if I already called\n // // `_updateAppendedDropdownPosition()`.\n // if (!drop.__libPatched) {\n // drop.__libPatched = 'patched'\n // const original = drop.updateDropdownPosition\n // const _self = this\n // drop.updateDropdownPosition = function() {\n // original.apply(this, arguments)\n // if (!!_self.ngSelect.appendTo) {\n // drop._updateAppendedDropdownPosition()\n // }\n // }\n // }\n // }\n\n private _enableKeyPressWorkaround() {\n if (this._keyPressWorkaroundSub) { return }\n const _ngSelect = this.ngSelect as any\n\n this._keyPressWorkaroundSub = _ngSelect._keyPress$\n .pipe(takeUntil(this._ngUnsubscribe))\n .pipe(filter(() => !this.ngSelect.searchable))\n .subscribe(() => {\n this._ngZone.runOutsideAngular(() => {\n window.requestAnimationFrame(() => {\n if (this.ngSelect.dropdownPanel) {\n this._markedItem = this.ngSelect.dropdownPanel.markedItem\n }\n this._checkMarked = true\n })\n })\n })\n }\n\n private _disableKeyPressWorkaround() {\n if (this._keyPressWorkaroundSub) {\n this._keyPressWorkaroundSub.unsubscribe()\n this._keyPressWorkaroundSub = null\n }\n }\n\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion'\nimport { AfterViewInit, Directive, ElementRef, HostBinding, Input, OnDestroy } from '@angular/core'\nimport { fromEvent, Subject } from 'rxjs'\nimport { filter, takeUntil, tap } from 'rxjs/operators'\n\nimport { QuillEditorComponent } from 'ngx-quill'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'quill-editor'\n})\nexport class NgxQuillExtraDirective implements OnDestroy, AfterViewInit {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n private _tabIndex = -1\n\n /**\n * Set the tab index to `-1` to allow the root element of the\n * component to receive `focus` event from javascript, but not get focused by\n * keyboard navigation.\n */\n @Input()\n set tabIndex(value: number) { this._tabIndex = coerceNumberProperty(value) }\n get tabIndex(): number { return this._tabIndex }\n\n @HostBinding('attr.tabindex')\n get _attrTabIndex() { return this._quillEditor.disabled ? -1 : (this.tabIndex || 0) }\n\n constructor(\n private readonly _elementRef: ElementRef,\n private readonly _quillEditor: QuillEditorComponent\n ) { }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n const parent = this._getParentElementForLabelFocusIssue()\n if (parent) {\n // NOTE: This is a hack to avoid an issue letting a label with \"for\"\n // attribute focus the control.\n fromEvent(parent, 'click').pipe(\n takeUntil(this._ngUnsubscribe),\n filter(e => (e.target as HTMLElement)?.getAttribute('for') === this._elementRef.nativeElement.id),\n tap(() => this._quillEditor.quillEditor.focus())\n ).subscribe()\n }\n }\n\n private _getParentElementForLabelFocusIssue(): HTMLElement | undefined {\n const findElem = (elem: HTMLElement): any => {\n if (elem.nodeName.toLowerCase() === 'seam-form-field') {\n return elem\n }\n\n if (elem.parentElement) {\n return findElem(elem.parentElement)\n }\n\n return elem\n }\n\n return findElem(this._elementRef.nativeElement)\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\nimport { padEnd, padStart } from '@theseam/ui-common/utils'\n\n@Pipe({\n name: 'maskChars'\n})\nexport class MaskCharsPipe implements PipeTransform {\n\n transform(value: string, replacementChar: string = '*', ignoreCount: number = 0, ignoreFrom: 'left' | 'right' = 'right'): string {\n if (ignoreFrom === 'right') {\n const s = value || ''\n return padStart(s.substring(s.length - ignoreCount, s.length), s.length, replacementChar)\n } else if (ignoreFrom === 'left') {\n const s = value || ''\n return padEnd(s.substring(0, ignoreCount), s.length, replacementChar)\n }\n\n return value\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\n@Pipe({\n name: 'truncate'\n})\nexport class TruncatePipe implements PipeTransform {\n\n transform(value: string, length: number = 30, appendEllipsis: boolean = true): string {\n let val = value\n\n if (value && typeof value === 'string' && value.length > length) {\n val = value.substr(0, length)\n if (appendEllipsis) {\n val += '...'\n }\n }\n\n return val\n }\n\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\nimport { TheSeamLoadingModule } from '@theseam/ui-common/loading'\nimport { TheSeamModalModule } from '@theseam/ui-common/modal'\nimport { TheSeamScrollbarModule } from '@theseam/ui-common/scrollbar'\n\nimport { AutoFocusDirective } from './directives/auto-focus.directive'\nimport { ClickOutsideDirective } from './directives/click-outside.directive'\nimport { DisableControlDirective } from './directives/disable-control.directive'\nimport { ElemResizedDirective } from './directives/elem-resized.directive'\nimport { HoverClassToggleDirective } from './directives/hover-class-toggle.directive'\nimport { HoverClassDirective } from './directives/hover-class.directive'\nimport { NgSelectExtraDirective } from './directives/ng-select-extra.directive'\nimport { NgxQuillExtraDirective } from './directives/ngx-quill-extra.directive'\n\nimport { MaskCharsPipe } from './pipes/mask-chars.pipe'\nimport { TruncatePipe } from './pipes/truncate.pipe'\n\nimport { PasswordInputRevealComponent } from './components/password-input-reveal/password-input-reveal.component'\n\n@NgModule({\n imports: [\n CommonModule,\n FontAwesomeModule,\n TheSeamModalModule,\n TheSeamLoadingModule\n ],\n declarations: [\n AutoFocusDirective,\n ElemResizedDirective,\n PasswordInputRevealComponent,\n NgSelectExtraDirective,\n HoverClassDirective,\n HoverClassToggleDirective,\n ClickOutsideDirective,\n DisableControlDirective,\n MaskCharsPipe,\n TruncatePipe,\n NgxQuillExtraDirective\n ],\n exports: [\n AutoFocusDirective,\n ElemResizedDirective,\n PasswordInputRevealComponent,\n NgSelectExtraDirective,\n HoverClassDirective,\n HoverClassToggleDirective,\n ClickOutsideDirective,\n DisableControlDirective,\n MaskCharsPipe,\n TruncatePipe,\n NgxQuillExtraDirective,\n\n // Exporting scrollbars here for backwards compatibility for now.\n TheSeamScrollbarModule\n ]\n})\nexport class TheSeamSharedModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
@@ -44,7 +44,7 @@ class LocalStorageMemory {
44
44
  * @param key name of item to be removed.
45
45
  */
46
46
  removeItem(key) {
47
- if (this._cache.hasOwnProperty(key)) {
47
+ if (Object.prototype.hasOwnProperty.call(this._cache, key)) {
48
48
  delete this._cache[key];
49
49
  this.length--;
50
50
  }
@@ -60,10 +60,10 @@ class LocalStorageMemory {
60
60
  this.removeItem(key);
61
61
  }
62
62
  else {
63
- if (!this._cache.hasOwnProperty(key)) {
63
+ if (!Object.prototype.hasOwnProperty.call(this._cache, key)) {
64
64
  this.length++;
65
65
  }
66
- this._cache[key] = '' + value;
66
+ this._cache[key] = `${value}`;
67
67
  }
68
68
  }
69
69
  }
@@ -96,7 +96,7 @@ class LocalStorageService {
96
96
  * class instance.
97
97
  */
98
98
  select(key, defaultValue = null) {
99
- if (this.subjects.hasOwnProperty(key)) {
99
+ if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {
100
100
  return this.subjects[key];
101
101
  }
102
102
  if (!this._localStorage.getItem(key) && defaultValue) {
@@ -107,7 +107,7 @@ class LocalStorageService {
107
107
  }
108
108
  /** Get a localStorage item. */
109
109
  get(key, defaultValue = null) {
110
- if (this.subjects.hasOwnProperty(key)) {
110
+ if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {
111
111
  return this.subjects[key].value;
112
112
  }
113
113
  if (!this._localStorage.getItem(key) && defaultValue) {
@@ -119,21 +119,21 @@ class LocalStorageService {
119
119
  /** Set a localStorage item. */
120
120
  set(key, value) {
121
121
  this._localStorage.setItem(key, value);
122
- if (this.subjects.hasOwnProperty(key)) {
122
+ if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {
123
123
  this.subjects[key].next(value);
124
124
  }
125
125
  }
126
126
  /** Remove a localStorage item. */
127
127
  remove(key) {
128
128
  this._localStorage.removeItem(key);
129
- if (this.subjects.hasOwnProperty(key)) {
129
+ if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {
130
130
  this.subjects[key].next(null);
131
131
  }
132
132
  }
133
133
  }
134
- LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
135
- LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: LocalStorageService, decorators: [{
134
+ LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
135
+ LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, decorators: [{
137
137
  type: Injectable,
138
138
  args: [{
139
139
  providedIn: 'root'
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-storage.mjs","sources":["../../../projects/ui-common/storage/localstorage-memory.ts","../../../projects/ui-common/storage/local-storage.service.ts","../../../projects/ui-common/storage/theseam-ui-common-storage.ts"],"sourcesContent":["\nexport class LocalStorageMemory implements Storage {\n [name: string]: any\n\n private _cache: { [key: string]: string } = {}\n\n /**\n * Number of stored items.\n */\n public length: number = 0\n\n /**\n * Removes all stored items and sets length to 0.\n */\n public clear(): void {\n this._cache = {}\n this.length = 0\n }\n\n /**\n * Returns item for passed key, or null.\n *\n * @param key name of item to be returned.\n */\n public getItem(key: string): string | null {\n if (key in this._cache) {\n return this._cache[key]\n }\n\n return null\n }\n\n /**\n * Returns name of key at passed index.\n *\n * @param index position for key to be returned (starts at 0).\n */\n public key(index: number): string | null {\n return Object.keys(this._cache)[index] || null\n }\n\n /**\n * Removes item for passed key.\n *\n * @param key name of item to be removed.\n */\n public removeItem(key: string): void {\n if (this._cache.hasOwnProperty(key)) {\n delete this._cache[key]\n this.length--\n }\n }\n\n /**\n * Sets item for key to passed value, as string.\n *\n * @param key name of item to be set.\n * @param value value, will always be turned into a string.\n */\n public setItem(key: string, value: string): void {\n if (typeof value === 'undefined') {\n this.removeItem(key)\n } else {\n if (!this._cache.hasOwnProperty(key)) {\n this.length++\n }\n\n this._cache[key] = '' + value\n }\n }\n\n}\n","import { Injectable } from '@angular/core'\nimport { BehaviorSubject, fromEvent, Observable } from 'rxjs'\nimport { filter, map, tap } from 'rxjs/operators'\n\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { LocalStorageMemory } from './localstorage-memory'\n\n// NOTE: Temporary localStorage polyfill just to get the app running without localStorage for now.\nconst localStorage: Storage = 'localStorage' in window && window.localStorage != null ? window.localStorage : new LocalStorageMemory()\n\nexport interface ILocalStorageService {\n select(key: string, defaultValue: string | null): Observable<string | null>\n get(key: string, defaultValue: string | null): string | null\n set(key: string, value: string): void\n remove(key: string): void\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LocalStorageService implements ILocalStorageService {\n protected readonly subjects: { [key: string]: BehaviorSubject<string | null> } = {}\n\n /** This is only here for testing/debugging. */\n private readonly _localStorage = localStorage\n\n constructor() {\n fromEvent<StorageEvent>(window, 'storage').pipe(\n map(e => e.key),\n filter(notNullOrUndefined),\n tap(key => {\n const subjectValue = this.get(key)\n const storedValue = this._localStorage.getItem(key)\n if (subjectValue !== storedValue) {\n if (storedValue) {\n this.set(key, storedValue)\n } else {\n this.remove(key)\n }\n }\n }),\n )\n .subscribe()\n }\n\n /**\n * Observe a localStorage item.\n *\n * NOTE: Only emits changes if the item is changed with the set method of this\n * class instance.\n */\n public select(key: string, defaultValue: string | null = null): Observable<string | null> {\n if (this.subjects.hasOwnProperty(key)) {\n return this.subjects[key]\n }\n\n if (!this._localStorage.getItem(key) && defaultValue) {\n this._localStorage.setItem(key, defaultValue)\n }\n\n const value = this._localStorage.getItem(key) || defaultValue\n\n return (this.subjects[key] = new BehaviorSubject(value))\n }\n\n /** Get a localStorage item. */\n public get(key: string, defaultValue: string | null = null): string | null {\n if (this.subjects.hasOwnProperty(key)) {\n return this.subjects[key].value\n }\n\n if (!this._localStorage.getItem(key) && defaultValue) {\n this._localStorage.setItem(key, defaultValue)\n }\n\n const value = this._localStorage.getItem(key) || defaultValue\n\n return (this.subjects[key] = new BehaviorSubject(value)).value\n }\n\n /** Set a localStorage item. */\n public set(key: string, value: string): void {\n this._localStorage.setItem(key, value)\n\n if (this.subjects.hasOwnProperty(key)) {\n this.subjects[key].next(value)\n }\n }\n\n /** Remove a localStorage item. */\n public remove(key: string): void {\n this._localStorage.removeItem(key)\n\n if (this.subjects.hasOwnProperty(key)) {\n this.subjects[key].next(null)\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-storage.mjs","sources":["../../../projects/ui-common/storage/localstorage-memory.ts","../../../projects/ui-common/storage/local-storage.service.ts","../../../projects/ui-common/storage/theseam-ui-common-storage.ts"],"sourcesContent":["\nexport class LocalStorageMemory implements Storage {\n [name: string]: any\n\n private _cache: { [key: string]: string } = {}\n\n /**\n * Number of stored items.\n */\n public length = 0\n\n /**\n * Removes all stored items and sets length to 0.\n */\n public clear(): void {\n this._cache = {}\n this.length = 0\n }\n\n /**\n * Returns item for passed key, or null.\n *\n * @param key name of item to be returned.\n */\n public getItem(key: string): string | null {\n if (key in this._cache) {\n return this._cache[key]\n }\n\n return null\n }\n\n /**\n * Returns name of key at passed index.\n *\n * @param index position for key to be returned (starts at 0).\n */\n public key(index: number): string | null {\n return Object.keys(this._cache)[index] || null\n }\n\n /**\n * Removes item for passed key.\n *\n * @param key name of item to be removed.\n */\n public removeItem(key: string): void {\n if (Object.prototype.hasOwnProperty.call(this._cache, key)) {\n delete this._cache[key]\n this.length--\n }\n }\n\n /**\n * Sets item for key to passed value, as string.\n *\n * @param key name of item to be set.\n * @param value value, will always be turned into a string.\n */\n public setItem(key: string, value: string): void {\n if (typeof value === 'undefined') {\n this.removeItem(key)\n } else {\n if (!Object.prototype.hasOwnProperty.call(this._cache, key)) {\n this.length++\n }\n\n this._cache[key] = `${value}`\n }\n }\n\n}\n","import { Injectable } from '@angular/core'\nimport { BehaviorSubject, fromEvent, Observable } from 'rxjs'\nimport { filter, map, tap } from 'rxjs/operators'\n\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { LocalStorageMemory } from './localstorage-memory'\n\n// NOTE: Temporary localStorage polyfill just to get the app running without localStorage for now.\nconst localStorage: Storage = 'localStorage' in window && window.localStorage != null ? window.localStorage : new LocalStorageMemory()\n\nexport interface ILocalStorageService {\n select(key: string, defaultValue: string | null): Observable<string | null>\n get(key: string, defaultValue: string | null): string | null\n set(key: string, value: string): void\n remove(key: string): void\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LocalStorageService implements ILocalStorageService {\n protected readonly subjects: { [key: string]: BehaviorSubject<string | null> } = {}\n\n /** This is only here for testing/debugging. */\n private readonly _localStorage = localStorage\n\n constructor() {\n fromEvent<StorageEvent>(window, 'storage').pipe(\n map(e => e.key),\n filter(notNullOrUndefined),\n tap(key => {\n const subjectValue = this.get(key)\n const storedValue = this._localStorage.getItem(key)\n if (subjectValue !== storedValue) {\n if (storedValue) {\n this.set(key, storedValue)\n } else {\n this.remove(key)\n }\n }\n }),\n )\n .subscribe()\n }\n\n /**\n * Observe a localStorage item.\n *\n * NOTE: Only emits changes if the item is changed with the set method of this\n * class instance.\n */\n public select(key: string, defaultValue: string | null = null): Observable<string | null> {\n if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {\n return this.subjects[key]\n }\n\n if (!this._localStorage.getItem(key) && defaultValue) {\n this._localStorage.setItem(key, defaultValue)\n }\n\n const value = this._localStorage.getItem(key) || defaultValue\n\n return (this.subjects[key] = new BehaviorSubject(value))\n }\n\n /** Get a localStorage item. */\n public get(key: string, defaultValue: string | null = null): string | null {\n if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {\n return this.subjects[key].value\n }\n\n if (!this._localStorage.getItem(key) && defaultValue) {\n this._localStorage.setItem(key, defaultValue)\n }\n\n const value = this._localStorage.getItem(key) || defaultValue\n\n return (this.subjects[key] = new BehaviorSubject(value)).value\n }\n\n /** Set a localStorage item. */\n public set(key: string, value: string): void {\n this._localStorage.setItem(key, value)\n\n if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {\n this.subjects[key].next(value)\n }\n }\n\n /** Remove a localStorage item. */\n public remove(key: string): void {\n this._localStorage.removeItem(key)\n\n if (Object.prototype.hasOwnProperty.call(this.subjects, key)) {\n this.subjects[key].next(null)\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { ThemeNames, OutlineThemeNames } from '@theseam/ui-common/models';
2
- import { action } from '@storybook/addon-actions';
3
2
  import * as i0 from '@angular/core';
4
3
  import { Component, InjectionToken, Injectable, APP_INITIALIZER, NgModule, Injector, Input, ElementRef, APP_BOOTSTRAP_LISTENER } from '@angular/core';
5
4
  import * as i1 from '@angular/router';
@@ -46,86 +45,11 @@ const buttonTypeArgType = {
46
45
  description: `Button type.`
47
46
  };
48
47
 
49
- /**
50
- * This is an attempt at simplifying the use of auto-generated args in stories
51
- * defined with `template`, since Angular doesn't have a way to simply use a
52
- * spread operator syntax.
53
- *
54
- * @experimental
55
- */
56
- function argsToTplParts(args, argTypes) {
57
- // console.log({ args, argTypes })
58
- const parts = {
59
- actions: {},
60
- tplfragment: ''
61
- };
62
- Object.keys(argTypes).forEach(k => {
63
- var _a, _b, _c;
64
- // Inputs
65
- if (
66
- // Is in the inputs category
67
- argTypes[k].table.category === 'inputs' &&
68
- (
69
- // Needs a control to be able to change from auto-generated args.
70
- (_a = argTypes[k]) === null || _a === void 0 ? void 0 : _a.hasOwnProperty('control')) &&
71
- // Assuming the arg might not be in props if there isn't an arg value.
72
- args.hasOwnProperty(k)) {
73
- parts.tplfragment += `[${k}]="${k}" `;
74
- }
75
- // Outputs
76
- if (
77
- // Is in the outputs category
78
- ((_c = (_b = argTypes[k]) === null || _b === void 0 ? void 0 : _b.table) === null || _c === void 0 ? void 0 : _c.category) === 'outputs') {
79
- // Without access to props, I don't know if I can get an action into the
80
- // template context like this.
81
- parts.tplfragment += `(${k})="${k}($event)" `;
82
- parts.actions[k] = action(k);
83
- }
84
- });
85
- return parts;
86
- }
87
- /**
88
- * This is an attempt at simplifying the use of auto-generated args in stories
89
- * defined with `template`, since Angular doesn't have a way to simply use a
90
- * spread operator syntax.
91
- *
92
- * @experimental
93
- */
94
- function argsToTpl(args, argTypes) {
95
- // console.log({ args, argTypes })
96
- let s = '';
97
- Object.keys(argTypes).forEach(k => {
98
- var _a, _b, _c;
99
- // Inputs
100
- if (
101
- // Is in the inputs category
102
- argTypes[k].table.category === 'inputs' &&
103
- (
104
- // Needs a control to be able to change from auto-generated args.
105
- (_a = argTypes[k]) === null || _a === void 0 ? void 0 : _a.hasOwnProperty('control')) &&
106
- // Assuming the arg might not be in props if there isn't an arg value.
107
- args.hasOwnProperty(k)) {
108
- s += `[${k}]="${k}" `;
109
- }
110
- // Outputs
111
- if (
112
- // Is in the outputs category
113
- ((_c = (_b = argTypes[k]) === null || _b === void 0 ? void 0 : _b.table) === null || _c === void 0 ? void 0 : _c.category) === 'outputs') {
114
- // Without access to props, I don't know if I can get an action into the
115
- // template context like this.
116
- // if (argTypes[k].table.category === 'inputs') {
117
- // s += `(${k})="${k}" `
118
- // }
119
- }
120
- });
121
- return s;
122
- }
123
-
124
48
  class StoryEmptyComponent {
125
49
  }
126
- StoryEmptyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
- StoryEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: StoryEmptyComponent, selector: "ng-component", ngImport: i0, template: ``, isInline: true });
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryEmptyComponent, decorators: [{
50
+ StoryEmptyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
+ StoryEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StoryEmptyComponent, selector: "ng-component", ngImport: i0, template: ``, isInline: true });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryEmptyComponent, decorators: [{
129
53
  type: Component,
130
54
  args: [{ template: `` }]
131
55
  }] });
@@ -151,9 +75,9 @@ class StoryInitialRouteService {
151
75
  }
152
76
  }
153
77
  }
154
- StoryInitialRouteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
155
- StoryInitialRouteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteService });
156
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteService, decorators: [{
78
+ StoryInitialRouteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
79
+ StoryInitialRouteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteService });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteService, decorators: [{
157
81
  type: Injectable
158
82
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
159
83
 
@@ -174,10 +98,10 @@ class StoryInitialRouteModule {
174
98
  };
175
99
  }
176
100
  }
177
- StoryInitialRouteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
178
- StoryInitialRouteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteModule });
179
- StoryInitialRouteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteModule });
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryInitialRouteModule, decorators: [{
101
+ StoryInitialRouteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
102
+ StoryInitialRouteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteModule });
103
+ StoryInitialRouteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteModule });
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryInitialRouteModule, decorators: [{
181
105
  type: NgModule
182
106
  }] });
183
107
 
@@ -214,9 +138,9 @@ function routesArgType(routes) {
214
138
 
215
139
  class StoryEmptyWithRouteComponent {
216
140
  }
217
- StoryEmptyWithRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryEmptyWithRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
218
- StoryEmptyWithRouteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: StoryEmptyWithRouteComponent, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryEmptyWithRouteComponent, decorators: [{
141
+ StoryEmptyWithRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryEmptyWithRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
142
+ StoryEmptyWithRouteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StoryEmptyWithRouteComponent, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryEmptyWithRouteComponent, decorators: [{
220
144
  type: Component,
221
145
  args: [{ template: `<router-outlet></router-outlet>` }]
222
146
  }] });
@@ -226,6 +150,8 @@ class FakeModalRef {
226
150
  close(dialogResult) { }
227
151
  }
228
152
  class StoryModalContainerComponent {
153
+ set component(c) { this._component.next(c); }
154
+ set data(d) { this._data.next(d); }
229
155
  constructor(_injector) {
230
156
  this._injector = _injector;
231
157
  this._ngUnsubscribe = new Subject();
@@ -239,8 +165,6 @@ class StoryModalContainerComponent {
239
165
  injector: this._createInjector(data)
240
166
  })), takeUntil(this._ngUnsubscribe));
241
167
  }
242
- set component(c) { this._component.next(c); }
243
- set data(d) { this._data.next(d); }
244
168
  ngOnDestroy() {
245
169
  this._ngUnsubscribe.next(undefined);
246
170
  this._ngUnsubscribe.complete();
@@ -255,8 +179,8 @@ class StoryModalContainerComponent {
255
179
  });
256
180
  }
257
181
  }
258
- StoryModalContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryModalContainerComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
259
- StoryModalContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: StoryModalContainerComponent, selector: "story-modal-container-component", inputs: { component: "component", data: "data", modalConfig: "modalConfig" }, ngImport: i0, template: `
182
+ StoryModalContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryModalContainerComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
183
+ StoryModalContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StoryModalContainerComponent, selector: "story-modal-container-component", inputs: { component: "component", data: "data", modalConfig: "modalConfig" }, ngImport: i0, template: `
260
184
  <div class="cdk-overlay-container">
261
185
  <div class="cdk-overlay-backdrop cdk-overlay-dark-backdrop cdk-overlay-backdrop-showing"></div>
262
186
  <div class="cdk-global-overlay-wrapper"
@@ -275,7 +199,7 @@ StoryModalContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
275
199
  </div>
276
200
  </div>
277
201
  `, isInline: true, styles: [".seam-modal-container[tabindex=\"-1\"]:focus{outline:0!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }] });
278
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryModalContainerComponent, decorators: [{
202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryModalContainerComponent, decorators: [{
279
203
  type: Component,
280
204
  args: [{ selector: 'story-modal-container-component', template: `
281
205
  <div class="cdk-overlay-container">
@@ -306,18 +230,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
306
230
 
307
231
  class StoryHelperComponentsModule {
308
232
  }
309
- StoryHelperComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryHelperComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
310
- StoryHelperComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: StoryHelperComponentsModule, declarations: [StoryEmptyComponent,
233
+ StoryHelperComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryHelperComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
234
+ StoryHelperComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: StoryHelperComponentsModule, declarations: [StoryEmptyComponent,
311
235
  StoryEmptyWithRouteComponent,
312
236
  StoryModalContainerComponent], imports: [CommonModule,
313
237
  RouterModule,
314
238
  TheSeamScrollbarModule], exports: [StoryEmptyComponent,
315
239
  StoryEmptyWithRouteComponent,
316
240
  StoryModalContainerComponent] });
317
- StoryHelperComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryHelperComponentsModule, imports: [CommonModule,
241
+ StoryHelperComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryHelperComponentsModule, imports: [CommonModule,
318
242
  RouterModule,
319
243
  TheSeamScrollbarModule] });
320
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryHelperComponentsModule, decorators: [{
244
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryHelperComponentsModule, decorators: [{
321
245
  type: NgModule,
322
246
  args: [{
323
247
  declarations: [
@@ -366,9 +290,9 @@ class StoryToastrService {
366
290
  */
367
291
  findDuplicate(message, resetOnDuplicate, countDuplicates) { }
368
292
  }
369
- StoryToastrService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryToastrService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
370
- StoryToastrService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryToastrService });
371
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: StoryToastrService, decorators: [{
293
+ StoryToastrService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryToastrService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
294
+ StoryToastrService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryToastrService });
295
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StoryToastrService, decorators: [{
372
296
  type: Injectable
373
297
  }] });
374
298
 
@@ -456,6 +380,7 @@ function onStoryBootstrappedTrigger(targetSelector, eventName) {
456
380
  const elementRef = componentRef.injector.get(ElementRef, null);
457
381
  const target = elementRef === null || elementRef === void 0 ? void 0 : elementRef.nativeElement.querySelector(targetSelector);
458
382
  if (!target) {
383
+ // eslint-disable-next-line no-console
459
384
  console.warn(`Unable to trigger event '${eventName}'. Target '${targetSelector}' not found.`);
460
385
  }
461
386
  const e = document.createEvent('HTMLEvents');
@@ -473,5 +398,5 @@ function onStoryBootstrappedTrigger(targetSelector, eventName) {
473
398
  * Generated bundle index. Do not edit.
474
399
  */
475
400
 
476
- export { STORY_INITIAL_ROUTE_URL, StoryEmptyComponent, StoryEmptyWithRouteComponent, StoryHelperComponentsModule, StoryInitialRouteModule, StoryInitialRouteService, StoryModalContainerComponent, StoryToastrService, argsToTpl, argsToTplParts, buttonTypeArgType, onStoryBootstrappedTrigger, routeButton, routesArgType, sizeArgType, storyInitialRouteFactory, themeArgType, themeWithOutlineArgType };
401
+ export { STORY_INITIAL_ROUTE_URL, StoryEmptyComponent, StoryEmptyWithRouteComponent, StoryHelperComponentsModule, StoryInitialRouteModule, StoryInitialRouteService, StoryModalContainerComponent, StoryToastrService, buttonTypeArgType, onStoryBootstrappedTrigger, routeButton, routesArgType, sizeArgType, storyInitialRouteFactory, themeArgType, themeWithOutlineArgType };
477
402
  //# sourceMappingURL=theseam-ui-common-story-helpers.mjs.map