@theseam/ui-common 0.4.28 → 0.4.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (616) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
  2. package/datatable/datatable/datatable.component.d.ts +61 -9
  3. package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
  4. package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
  5. package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
  6. package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
  7. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
  8. package/datatable/datatable.module.d.ts +29 -20
  9. package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
  10. package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
  11. package/datatable/models/action-item-column-position.d.ts +13 -0
  12. package/datatable/models/columns-data-filter.d.ts +57 -0
  13. package/datatable/models/columns-data-filters/models.d.ts +65 -0
  14. package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
  15. package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
  16. package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
  17. package/datatable/models/columns-data-filters/utils.d.ts +15 -0
  18. package/datatable/models/datatable-config.d.ts +97 -0
  19. package/datatable/models/table-column.d.ts +22 -1
  20. package/datatable/public-api.d.ts +14 -0
  21. package/datatable/services/columns-filters.service.d.ts +29 -0
  22. package/datatable/services/columns-manager.service.d.ts +7 -0
  23. package/datatable/utils/create-action-menu-column.d.ts +1 -1
  24. package/esm2020/asset-reader/asset-reader-helper.service.mjs +4 -4
  25. package/esm2020/asset-reader/asset-reader.module.mjs +5 -5
  26. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +4 -4
  27. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +5 -5
  28. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  29. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +4 -4
  30. package/esm2020/buttons/badge-button/badge-button.component.mjs +7 -7
  31. package/esm2020/buttons/button/button.component.mjs +10 -10
  32. package/esm2020/buttons/buttons.module.mjs +5 -5
  33. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  34. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +4 -4
  35. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  36. package/esm2020/card/card-body/card-body.component.mjs +4 -4
  37. package/esm2020/card/card-footer/card-footer.component.mjs +4 -4
  38. package/esm2020/card/card-header/card-header.component.mjs +4 -4
  39. package/esm2020/card/card.component.mjs +4 -4
  40. package/esm2020/card/card.module.mjs +5 -5
  41. package/esm2020/carousel/carousel-slide.directive.mjs +4 -4
  42. package/esm2020/carousel/carousel.component.mjs +4 -4
  43. package/esm2020/carousel/carousel.module.mjs +5 -5
  44. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  45. package/esm2020/checkbox/checkbox.module.mjs +5 -5
  46. package/esm2020/confirm-dialog/confirm-click.directive.mjs +4 -4
  47. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +4 -4
  48. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +5 -5
  49. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +4 -4
  50. package/esm2020/data-exporter/data-exporter.module.mjs +5 -5
  51. package/esm2020/data-exporter/exporters/csv-exporter.mjs +4 -4
  52. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +4 -4
  53. package/esm2020/data-filters/data-filters.module.mjs +5 -5
  54. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +4 -4
  55. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +4 -4
  56. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +4 -4
  57. package/esm2020/datatable/datatable/datatable.component.mjs +241 -32
  58. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +5 -5
  59. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +4 -4
  60. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -4
  61. package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
  62. package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
  63. package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
  64. package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
  65. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +4 -4
  66. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -4
  67. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +4 -4
  68. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +4 -4
  69. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +4 -4
  70. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +4 -4
  71. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +4 -4
  72. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +4 -4
  73. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +4 -4
  74. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +4 -4
  75. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -4
  76. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +4 -4
  77. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +4 -4
  78. package/esm2020/datatable/datatable.module.mjs +53 -11
  79. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +4 -4
  80. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +4 -4
  81. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +4 -4
  82. package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
  83. package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
  84. package/esm2020/datatable/directives/datatable-filter.directive.mjs +4 -4
  85. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +4 -4
  86. package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
  87. package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
  88. package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
  89. package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
  90. package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
  91. package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
  92. package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
  93. package/esm2020/datatable/models/datatable-config.mjs +3 -0
  94. package/esm2020/datatable/models/table-column.mjs +1 -1
  95. package/esm2020/datatable/public-api.mjs +15 -1
  96. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  97. package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
  98. package/esm2020/datatable/services/columns-manager.service.mjs +30 -5
  99. package/esm2020/datatable/services/datatable-column-changes.service.mjs +4 -4
  100. package/esm2020/datatable/services/datatable-preferences.service.mjs +4 -4
  101. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +4 -4
  102. package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
  103. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +4 -4
  104. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
  105. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +4 -4
  106. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +5 -5
  107. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +5 -5
  108. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +4 -4
  109. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +4 -4
  110. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +4 -4
  111. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +4 -4
  112. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +4 -4
  113. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  114. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  115. package/esm2020/dynamic/dynamic-value-helper.service.mjs +4 -4
  116. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  117. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +4 -4
  118. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +5 -5
  119. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +4 -4
  120. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +4 -4
  121. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  122. package/esm2020/form-field/form-field-error.directive.mjs +4 -4
  123. package/esm2020/form-field/form-field-help-text.directive.mjs +4 -4
  124. package/esm2020/form-field/form-field-label-tpl.directive.mjs +4 -4
  125. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  126. package/esm2020/form-field/form-field.component.mjs +4 -4
  127. package/esm2020/form-field/form-field.module.mjs +5 -5
  128. package/esm2020/form-field/input.directive.mjs +4 -4
  129. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +4 -4
  130. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  131. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +4 -4
  132. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +4 -4
  133. package/esm2020/form-field-error/form-field-error.module.mjs +5 -5
  134. package/esm2020/framework/base-layout/base-layout.component.mjs +16 -6
  135. package/esm2020/framework/base-layout/base-layout.module.mjs +10 -5
  136. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +4 -4
  137. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +4 -4
  138. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +4 -4
  139. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +22 -6
  140. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +4 -4
  141. package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
  142. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +4 -4
  143. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +4 -4
  144. package/esm2020/framework/base-layout/index.mjs +2 -1
  145. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +4 -4
  146. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -4
  147. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +4 -4
  148. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +4 -4
  149. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
  150. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +4 -4
  151. package/esm2020/framework/dashboard/dashboard.component.mjs +4 -4
  152. package/esm2020/framework/dashboard/dashboard.module.mjs +5 -5
  153. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  154. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +4 -4
  155. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +4 -4
  156. package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
  157. package/esm2020/framework/nav/index.mjs +6 -0
  158. package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
  159. package/esm2020/framework/nav/nav-utils.mjs +107 -0
  160. package/esm2020/framework/nav/nav.models.mjs +2 -0
  161. package/esm2020/framework/nav/nav.module.mjs +67 -0
  162. package/esm2020/framework/nav/nav.service.mjs +204 -0
  163. package/esm2020/framework/public-api.mjs +2 -1
  164. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +4 -4
  165. package/esm2020/framework/schema-form/schema-form-framework.mjs +4 -4
  166. package/esm2020/framework/schema-form/schema-form.module.mjs +5 -5
  167. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +4 -4
  168. package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +4 -4
  169. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +4 -4
  170. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +4 -4
  171. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +4 -4
  172. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +4 -4
  173. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +4 -4
  174. package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +4 -4
  175. package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +4 -4
  176. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +29 -68
  177. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +14 -7
  178. package/esm2020/framework/side-nav/side-nav.component.mjs +117 -39
  179. package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
  180. package/esm2020/framework/side-nav/side-nav.module.mjs +11 -41
  181. package/esm2020/framework/side-nav/side-nav.service.mjs +4 -4
  182. package/esm2020/framework/top-bar/index.mjs +3 -1
  183. package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
  184. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +12 -6
  185. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +4 -4
  186. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +8 -6
  187. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +4 -4
  188. package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
  189. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +4 -4
  190. package/esm2020/framework/top-bar/top-bar.component.mjs +57 -13
  191. package/esm2020/framework/top-bar/top-bar.module.mjs +19 -9
  192. package/esm2020/google-maps/google-maps/google-maps.component.mjs +4 -4
  193. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +4 -4
  194. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +4 -4
  195. package/esm2020/google-maps/google-maps-controls.service.mjs +4 -4
  196. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +5 -5
  197. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +4 -4
  198. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +4 -4
  199. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +4 -4
  200. package/esm2020/google-maps/google-maps.module.mjs +5 -5
  201. package/esm2020/google-maps/google-maps.service.mjs +4 -4
  202. package/esm2020/google-maps/map-control.component.mjs +4 -4
  203. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  204. package/esm2020/google-maps/map-value-manager.service.mjs +4 -4
  205. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  206. package/esm2020/graphql/datatable/index.mjs +4 -1
  207. package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
  208. package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
  209. package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
  210. package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
  211. package/esm2020/icon/icon/icon.component.mjs +4 -4
  212. package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -4
  213. package/esm2020/icon/icon-notification/icon-notification.component.mjs +4 -4
  214. package/esm2020/icon/icon.module.mjs +5 -5
  215. package/esm2020/layout/layout.module.mjs +5 -5
  216. package/esm2020/layout/layout.service.mjs +15 -5
  217. package/esm2020/loading/loading/loading.component.mjs +4 -4
  218. package/esm2020/loading/loading-overlay.service.mjs +4 -4
  219. package/esm2020/loading/loading.module.mjs +5 -5
  220. package/esm2020/menu/menu-divider.component.mjs +4 -4
  221. package/esm2020/menu/menu-footer/menu-footer.component.mjs +4 -4
  222. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
  223. package/esm2020/menu/menu-header/menu-header.component.mjs +4 -4
  224. package/esm2020/menu/menu-item.component.mjs +4 -4
  225. package/esm2020/menu/menu-toggle.directive.mjs +9 -4
  226. package/esm2020/menu/menu.component.mjs +4 -4
  227. package/esm2020/menu/menu.module.mjs +5 -5
  228. package/esm2020/modal/directives/modal-close.directive.mjs +4 -4
  229. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +4 -4
  230. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +4 -4
  231. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +4 -4
  232. package/esm2020/modal/directives/modal-title.directive.mjs +4 -4
  233. package/esm2020/modal/directives/modal.directive.mjs +4 -4
  234. package/esm2020/modal/modal/modal.component.mjs +4 -4
  235. package/esm2020/modal/modal-body/modal-body.component.mjs +4 -4
  236. package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
  237. package/esm2020/modal/modal-footer/modal-footer.component.mjs +4 -4
  238. package/esm2020/modal/modal-header/modal-header.component.mjs +4 -4
  239. package/esm2020/modal/modal.module.mjs +5 -5
  240. package/esm2020/modal/modal.service.mjs +4 -4
  241. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -4
  242. package/esm2020/navigation-reload/navigation-reload.service.mjs +5 -5
  243. package/esm2020/popover/popover/popover.component.mjs +9 -5
  244. package/esm2020/popover/popover.directive.mjs +8 -4
  245. package/esm2020/popover/popover.module.mjs +5 -5
  246. package/esm2020/progress/progress-circle/progress-circle.component.mjs +4 -4
  247. package/esm2020/progress/progress.module.mjs +5 -5
  248. package/esm2020/rich-text/rich-text/rich-text.component.mjs +4 -4
  249. package/esm2020/rich-text/rich-text.module.mjs +5 -5
  250. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -4
  251. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  252. package/esm2020/scrollbar/scrollbar.module.mjs +5 -5
  253. package/esm2020/services/asset-loader.service.mjs +4 -4
  254. package/esm2020/services/font-loader.service.mjs +4 -4
  255. package/esm2020/services/preferences/preferences-manager.service.mjs +4 -4
  256. package/esm2020/services/router-helpers.service.mjs +4 -4
  257. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +4 -4
  258. package/esm2020/shared/directives/auto-focus.directive.mjs +4 -4
  259. package/esm2020/shared/directives/click-outside.directive.mjs +4 -4
  260. package/esm2020/shared/directives/disable-control.directive.mjs +4 -4
  261. package/esm2020/shared/directives/elem-resized.directive.mjs +4 -4
  262. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
  263. package/esm2020/shared/directives/hover-class.directive.mjs +4 -4
  264. package/esm2020/shared/directives/ng-select-extra.directive.mjs +4 -4
  265. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +4 -4
  266. package/esm2020/shared/pipes/mask-chars.pipe.mjs +4 -4
  267. package/esm2020/shared/pipes/truncate.pipe.mjs +4 -4
  268. package/esm2020/shared/shared.module.mjs +5 -5
  269. package/esm2020/storage/local-storage.service.mjs +4 -4
  270. package/esm2020/story-helpers/initial-route.service.mjs +4 -4
  271. package/esm2020/story-helpers/story-empty-with-route.component.mjs +4 -4
  272. package/esm2020/story-helpers/story-empty.component.mjs +4 -4
  273. package/esm2020/story-helpers/story-helper-components.module.mjs +5 -5
  274. package/esm2020/story-helpers/story-initial-route.mjs +5 -5
  275. package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
  276. package/esm2020/story-helpers/story-preferences-accessor.service.mjs +4 -4
  277. package/esm2020/story-helpers/story-toastr.service.mjs +4 -4
  278. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +4 -4
  279. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +4 -4
  280. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +4 -4
  281. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +4 -4
  282. package/esm2020/tabbed/tabbed.component.mjs +4 -4
  283. package/esm2020/tabbed/tabbed.module.mjs +5 -5
  284. package/esm2020/tabbed/tabbed.service.mjs +4 -4
  285. package/esm2020/table/public-api.mjs +4 -1
  286. package/esm2020/table/table/table.component.mjs +92 -7
  287. package/esm2020/table/table-cell-tpl.directive.mjs +17 -0
  288. package/esm2020/table/table-column-header-tpl.directive.mjs +17 -0
  289. package/esm2020/table/table-column.component.mjs +68 -0
  290. package/esm2020/table/table.module.mjs +25 -9
  291. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +4 -4
  292. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +4 -4
  293. package/esm2020/table-cell-type/table-cell-type.module.mjs +5 -5
  294. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +4 -4
  295. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +4 -4
  296. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +4 -4
  297. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +4 -4
  298. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +4 -4
  299. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +4 -4
  300. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +4 -4
  301. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +4 -4
  302. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +7 -5
  303. package/esm2020/table-cell-types/table-cell-types.module.mjs +5 -5
  304. package/esm2020/tel-input/phone-number.pipe.mjs +4 -4
  305. package/esm2020/tel-input/tel-input/tel-input.component.mjs +4 -4
  306. package/esm2020/tel-input/tel-input.directive.mjs +4 -4
  307. package/esm2020/tel-input/tel-input.module.mjs +5 -5
  308. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +4 -4
  309. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -4
  310. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +4 -4
  311. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +4 -4
  312. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +4 -4
  313. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +4 -4
  314. package/esm2020/tiled-select/tiled-select.module.mjs +5 -5
  315. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +4 -4
  316. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +4 -4
  317. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +4 -4
  318. package/esm2020/toggle-edit/toggle-edit.component.mjs +4 -4
  319. package/esm2020/toggle-edit/toggle-edit.module.mjs +5 -5
  320. package/esm2020/toggle-group/toggle-group-option.directive.mjs +4 -4
  321. package/esm2020/toggle-group/toggle-group.directive.mjs +4 -4
  322. package/esm2020/toggle-group/toggle-group.module.mjs +5 -5
  323. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +4 -4
  324. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +4 -4
  325. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +4 -4
  326. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +5 -5
  327. package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
  328. package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
  329. package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
  330. package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
  331. package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
  332. package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
  333. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +4 -4
  334. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
  335. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +5 -5
  336. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +4 -4
  337. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  338. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
  339. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +5 -5
  340. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +4 -4
  341. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +4 -4
  342. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +4 -4
  343. package/esm2020/widget/preferences/widget-preferences.service.mjs +4 -4
  344. package/esm2020/widget/widget/widget.component.mjs +4 -4
  345. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +4 -4
  346. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +5 -5
  347. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +4 -4
  348. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +5 -5
  349. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +4 -4
  350. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +5 -5
  351. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +4 -4
  352. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +5 -5
  353. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +4 -4
  354. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +5 -5
  355. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +4 -4
  356. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +5 -5
  357. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +4 -4
  358. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +5 -5
  359. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +4 -4
  360. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -16
  361. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +4 -4
  362. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +5 -5
  363. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +4 -4
  364. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +5 -5
  365. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +4 -4
  366. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +4 -4
  367. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +4 -4
  368. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +4 -4
  369. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +7 -7
  370. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +5 -5
  371. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +4 -4
  372. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +5 -5
  373. package/esm2020/widget/widget-footer/widget-footer.component.mjs +4 -4
  374. package/esm2020/widget/widget-registry.service.mjs +4 -4
  375. package/esm2020/widget/widget.module.mjs +5 -5
  376. package/fesm2015/theseam-ui-common-asset-reader.mjs +10 -10
  377. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  378. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +11 -11
  379. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  380. package/fesm2015/theseam-ui-common-buttons.mjs +25 -25
  381. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  382. package/fesm2015/theseam-ui-common-card.mjs +19 -19
  383. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  384. package/fesm2015/theseam-ui-common-carousel.mjs +10 -10
  385. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -1
  386. package/fesm2015/theseam-ui-common-checkbox.mjs +7 -7
  387. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  388. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +13 -13
  389. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  390. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  391. package/fesm2015/theseam-ui-common-data-exporter.mjs.map +1 -1
  392. package/fesm2015/theseam-ui-common-data-filters.mjs +13 -13
  393. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  394. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +26 -26
  395. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  396. package/fesm2015/theseam-ui-common-datatable.mjs +1112 -139
  397. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  398. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  399. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  400. package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
  401. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  402. package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
  403. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  404. package/fesm2015/theseam-ui-common-form-field-error.mjs +16 -16
  405. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  406. package/fesm2015/theseam-ui-common-form-field.mjs +22 -22
  407. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  408. package/fesm2015/theseam-ui-common-framework.mjs +1026 -277
  409. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  410. package/fesm2015/theseam-ui-common-google-maps.mjs +41 -41
  411. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  412. package/fesm2015/theseam-ui-common-graphql.mjs +257 -4
  413. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  414. package/fesm2015/theseam-ui-common-icon.mjs +13 -13
  415. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  416. package/fesm2015/theseam-ui-common-layout.mjs +18 -9
  417. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  418. package/fesm2015/theseam-ui-common-loading.mjs +10 -10
  419. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  420. package/fesm2015/theseam-ui-common-menu.mjs +30 -25
  421. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  422. package/fesm2015/theseam-ui-common-modal.mjs +43 -43
  423. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  424. package/fesm2015/theseam-ui-common-navigation-reload.mjs +4 -4
  425. package/fesm2015/theseam-ui-common-navigation-reload.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-popover.mjs +19 -11
  427. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-progress.mjs +7 -7
  429. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-rich-text.mjs +7 -7
  431. package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -10
  433. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  434. package/fesm2015/theseam-ui-common-services.mjs +12 -12
  435. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-shared.mjs +37 -37
  437. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-storage.mjs +3 -3
  439. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-story-helpers.mjs +26 -26
  441. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  442. package/fesm2015/theseam-ui-common-tabbed.mjs +22 -22
  443. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  444. package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
  445. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  446. package/fesm2015/theseam-ui-common-table-cell-types.mjs +34 -32
  447. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  448. package/fesm2015/theseam-ui-common-table.mjs +207 -15
  449. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  450. package/fesm2015/theseam-ui-common-tel-input.mjs +13 -13
  451. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  452. package/fesm2015/theseam-ui-common-tiled-select.mjs +22 -22
  453. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  454. package/fesm2015/theseam-ui-common-toggle-edit.mjs +16 -16
  455. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  456. package/fesm2015/theseam-ui-common-toggle-group.mjs +10 -10
  457. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  458. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  459. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  460. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +3 -3
  462. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-viewers.mjs +20 -20
  464. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-widget.mjs +135 -135
  466. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  467. package/fesm2020/theseam-ui-common-asset-reader.mjs +10 -10
  468. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  469. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +11 -11
  470. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  471. package/fesm2020/theseam-ui-common-buttons.mjs +25 -25
  472. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  473. package/fesm2020/theseam-ui-common-card.mjs +19 -19
  474. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  475. package/fesm2020/theseam-ui-common-carousel.mjs +10 -10
  476. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -1
  477. package/fesm2020/theseam-ui-common-checkbox.mjs +7 -7
  478. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  479. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +13 -13
  480. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  481. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  482. package/fesm2020/theseam-ui-common-data-exporter.mjs.map +1 -1
  483. package/fesm2020/theseam-ui-common-data-filters.mjs +13 -13
  484. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  485. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +26 -26
  486. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  487. package/fesm2020/theseam-ui-common-datatable.mjs +1096 -139
  488. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  489. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  490. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  491. package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
  492. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  493. package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
  494. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  495. package/fesm2020/theseam-ui-common-form-field-error.mjs +16 -16
  496. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  497. package/fesm2020/theseam-ui-common-form-field.mjs +22 -22
  498. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  499. package/fesm2020/theseam-ui-common-framework.mjs +1028 -277
  500. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  501. package/fesm2020/theseam-ui-common-google-maps.mjs +41 -41
  502. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  503. package/fesm2020/theseam-ui-common-graphql.mjs +257 -4
  504. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  505. package/fesm2020/theseam-ui-common-icon.mjs +13 -13
  506. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  507. package/fesm2020/theseam-ui-common-layout.mjs +18 -9
  508. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  509. package/fesm2020/theseam-ui-common-loading.mjs +10 -10
  510. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  511. package/fesm2020/theseam-ui-common-menu.mjs +30 -25
  512. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  513. package/fesm2020/theseam-ui-common-modal.mjs +43 -43
  514. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  515. package/fesm2020/theseam-ui-common-navigation-reload.mjs +4 -4
  516. package/fesm2020/theseam-ui-common-navigation-reload.mjs.map +1 -1
  517. package/fesm2020/theseam-ui-common-popover.mjs +19 -11
  518. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  519. package/fesm2020/theseam-ui-common-progress.mjs +7 -7
  520. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  521. package/fesm2020/theseam-ui-common-rich-text.mjs +7 -7
  522. package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
  523. package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -10
  524. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  525. package/fesm2020/theseam-ui-common-services.mjs +12 -12
  526. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  527. package/fesm2020/theseam-ui-common-shared.mjs +37 -37
  528. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  529. package/fesm2020/theseam-ui-common-storage.mjs +3 -3
  530. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  531. package/fesm2020/theseam-ui-common-story-helpers.mjs +26 -26
  532. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-tabbed.mjs +22 -22
  534. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
  536. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-table-cell-types.mjs +34 -32
  538. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-table.mjs +205 -15
  540. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-tel-input.mjs +13 -13
  542. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-tiled-select.mjs +22 -22
  544. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-toggle-edit.mjs +16 -16
  546. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-toggle-group.mjs +10 -10
  548. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  550. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  552. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +3 -3
  553. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  554. package/fesm2020/theseam-ui-common-viewers.mjs +20 -20
  555. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  556. package/fesm2020/theseam-ui-common-widget.mjs +135 -135
  557. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  558. package/framework/base-layout/base-layout.component.d.ts +4 -2
  559. package/framework/base-layout/base-layout.component.scss +18 -10
  560. package/framework/base-layout/base-layout.module.d.ts +11 -10
  561. package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
  562. package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
  563. package/framework/base-layout/index.d.ts +1 -0
  564. package/framework/base-layout/styles/_variables.scss +21 -0
  565. package/framework/nav/_nav-theme.scss +4 -0
  566. package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
  567. package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
  568. package/framework/nav/index.d.ts +5 -0
  569. package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
  570. package/framework/nav/nav-item/nav-item.component.scss +203 -0
  571. package/framework/nav/nav-utils.d.ts +20 -0
  572. package/framework/nav/nav.models.d.ts +77 -0
  573. package/framework/nav/nav.module.d.ts +17 -0
  574. package/framework/nav/nav.service.d.ts +27 -0
  575. package/framework/nav/styles/_themes/light/_variables.scss +56 -0
  576. package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
  577. package/framework/nav/styles/_utilities.scss +3 -0
  578. package/framework/nav/styles/_variables.scss +2 -0
  579. package/framework/public-api.d.ts +1 -0
  580. package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
  581. package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
  582. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
  583. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
  584. package/framework/side-nav/side-nav.component.d.ts +13 -1
  585. package/framework/side-nav/side-nav.component.scss +0 -1
  586. package/framework/side-nav/side-nav.models.d.ts +7 -1
  587. package/framework/side-nav/side-nav.module.d.ts +1 -9
  588. package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
  589. package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
  590. package/framework/top-bar/index.d.ts +2 -0
  591. package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
  592. package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
  593. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
  594. package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
  595. package/framework/top-bar/top-bar.component.d.ts +25 -3
  596. package/framework/top-bar/top-bar.component.scss +7 -2
  597. package/framework/top-bar/top-bar.module.d.ts +10 -8
  598. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  599. package/graphql/datatable/index.d.ts +3 -0
  600. package/graphql/datatable/map-filter-states.d.ts +2 -2
  601. package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
  602. package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
  603. package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
  604. package/layout/layout.service.d.ts +9 -1
  605. package/menu/menu-toggle.directive.d.ts +2 -1
  606. package/package.json +3 -3
  607. package/popover/popover/popover.component.d.ts +4 -1
  608. package/popover/popover.directive.d.ts +2 -1
  609. package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
  610. package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
  611. package/table/public-api.d.ts +3 -0
  612. package/table/table/table.component.d.ts +21 -3
  613. package/table/table-cell-tpl.directive.d.ts +7 -0
  614. package/table/table-column-header-tpl.directive.d.ts +7 -0
  615. package/table/table-column.component.d.ts +24 -0
  616. package/table/table.module.d.ts +4 -1
@@ -66,9 +66,9 @@ class TheSeamDynamicComponentLoader {
66
66
  return Promise.resolve(moduleRef.componentFactoryResolver.resolveComponentFactory(dynamicComponentType));
67
67
  }
68
68
  }
69
- TheSeamDynamicComponentLoader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoader, deps: [{ token: i0.Compiler }, { token: i0.Injector }, { token: DYNAMIC_COMPONENT_MANIFESTS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
70
- TheSeamDynamicComponentLoader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoader, providedIn: 'root' });
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoader, decorators: [{
69
+ TheSeamDynamicComponentLoader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoader, deps: [{ token: i0.Compiler }, { token: i0.Injector }, { token: DYNAMIC_COMPONENT_MANIFESTS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
70
+ TheSeamDynamicComponentLoader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoader, providedIn: 'root' });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoader, decorators: [{
72
72
  type: Injectable,
73
73
  args: [{
74
74
  providedIn: 'root'
@@ -118,10 +118,10 @@ class TheSeamDynamicComponentLoaderModule {
118
118
  };
119
119
  }
120
120
  }
121
- TheSeamDynamicComponentLoaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
122
- TheSeamDynamicComponentLoaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoaderModule });
123
- TheSeamDynamicComponentLoaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoaderModule });
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamDynamicComponentLoaderModule, decorators: [{
121
+ TheSeamDynamicComponentLoaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
122
+ TheSeamDynamicComponentLoaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoaderModule });
123
+ TheSeamDynamicComponentLoaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoaderModule });
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamDynamicComponentLoaderModule, decorators: [{
125
125
  type: NgModule
126
126
  }] });
127
127
 
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-dynamic-component-loader.mjs","sources":["../../../projects/ui-common/dynamic-component-loader/dynamic-component-tokens.ts","../../../projects/ui-common/dynamic-component-loader/dynamic-component-loader.service.ts","../../../projects/ui-common/dynamic-component-loader/dynamic-component-loader.module.ts","../../../projects/ui-common/dynamic-component-loader/theseam-ui-common-dynamic-component-loader.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nexport const DYNAMIC_COMPONENT = new InjectionToken<any>('DYNAMIC_COMPONENT')\n\nexport const DYNAMIC_MODULE = new InjectionToken<any>('DYNAMIC_MODULE')\n\nexport const DYNAMIC_COMPONENT_MANIFESTS = new InjectionToken<any>('DYNAMIC_COMPONENT_MANIFESTS')\n","import { Compiler, ComponentFactory, Inject, Injectable, Injector, NgModuleFactory, Optional } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { from, throwError } from 'rxjs'\nimport { mergeMap, switchMap } from 'rxjs/operators'\n\nimport { LoadChildren } from '@angular/router'\nimport { DynamicComponentManifest } from './dynamic-component-manifest'\nimport {\n DYNAMIC_COMPONENT,\n DYNAMIC_COMPONENT_MANIFESTS,\n DYNAMIC_MODULE\n} from './dynamic-component-tokens'\n\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TheSeamDynamicComponentLoader {\n\n private _manifests: DynamicComponentManifest[]\n\n constructor(\n private compiler: Compiler,\n private injector: Injector,\n @Optional() @Inject(DYNAMIC_COMPONENT_MANIFESTS) manifests: DynamicComponentManifest[],\n ) { this._manifests = manifests || [] }\n\n /** Retrieve a ComponentFactory, based on the specified componentId (defined in the DynamicComponentManifest array). */\n getComponentFactory<T>(componentId: string, injector?: Injector): Observable<ComponentFactory<T>> {\n const manifest = this._manifests\n .find(m => m.componentId === componentId)\n if (!manifest) {\n return throwError(`TheSeamDynamicComponentLoader: Unknown componentId \"${componentId}\"`)\n }\n\n // const path = manifest.loadChildren\n\n // const p = this.load<T>(path, componentId, injector)\n // return from(p)\n\n const moduleFactory$ = this.loadModuleFactory(manifest.loadChildren)\n\n return moduleFactory$\n .pipe(switchMap(m => from(this.loadFactory<any>(m, componentId, injector))))\n }\n\n private loadModuleFactory(loadChildren: LoadChildren): Observable<NgModuleFactory<any>> {\n return wrapIntoObservable(loadChildren()).pipe(mergeMap((t: any) => {\n if (t instanceof NgModuleFactory) {\n return of(t)\n } else {\n return from(this.compiler.compileModuleAsync(t))\n }\n }))\n }\n\n private loadFactory<T>(ngModuleFactory: NgModuleFactory<any>, componentId: string, injector?: Injector): Promise<ComponentFactory<T>> {\n const moduleRef = ngModuleFactory.create(injector || this.injector)\n const dynamicComponentType = moduleRef.injector.get(DYNAMIC_COMPONENT, null)\n if (!dynamicComponentType) {\n const dynamicModule: DynamicComponentManifest = moduleRef.injector.get(DYNAMIC_MODULE, null)\n\n if (!dynamicModule) {\n throw new Error(\n 'TheSeamDynamicComponentLoader: Dynamic module for' +\n ` componentId \"${componentId}\" does not contain` +\n ' DYNAMIC_COMPONENT or DYNAMIC_MODULE as a provider.',\n )\n }\n if (dynamicModule.componentId !== componentId) {\n throw new Error(\n 'TheSeamDynamicComponentLoader: Dynamic module for' +\n `${componentId} does not match manifest.`,\n )\n }\n\n const path = dynamicModule.loadChildren\n\n if (!path) {\n throw new Error(`${componentId} unknown!`)\n }\n\n // return this.load<T>(path, componentId, injector)\n const moduleFactory$ = this.loadModuleFactory(dynamicModule.loadChildren)\n\n return moduleFactory$\n .pipe(switchMap(m => from(this.loadFactory<any>(m, componentId, injector))))\n .toPromise() as Promise<ComponentFactory<T>>\n }\n\n return Promise.resolve(moduleRef.componentFactoryResolver.resolveComponentFactory<T>(dynamicComponentType))\n }\n}\n","import {\n ANALYZE_FOR_ENTRY_COMPONENTS,\n ModuleWithProviders,\n NgModule,\n Type,\n} from '@angular/core'\nimport { ROUTES } from '@angular/router'\n\nimport { TheSeamDynamicComponentLoader } from './dynamic-component-loader.service'\nimport type { DynamicComponentManifest } from './dynamic-component-manifest'\nimport {\n DYNAMIC_COMPONENT,\n DYNAMIC_COMPONENT_MANIFESTS,\n DYNAMIC_MODULE\n} from './dynamic-component-tokens'\n\n@NgModule()\nexport class TheSeamDynamicComponentLoaderModule {\n static forRoot(manifests: DynamicComponentManifest[]): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n TheSeamDynamicComponentLoader,\n // provider for Angular CLI to analyze\n { provide: ROUTES, useValue: manifests, multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_COMPONENT_MANIFESTS, useValue: manifests },\n ],\n }\n }\n static forModule(manifest: DynamicComponentManifest): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: manifest, multi: true },\n // provider for @angular/router to parse\n { provide: ROUTES, useValue: manifest, multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_MODULE, useValue: manifest }],\n }\n }\n static forChild(component: Type<any>): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: component, multi: true },\n // provider for @angular/router to parse\n { provide: ROUTES, useValue: [], multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_COMPONENT, useValue: component },\n ],\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-dynamic-component-loader.mjs","sources":["../../../projects/ui-common/dynamic-component-loader/dynamic-component-tokens.ts","../../../projects/ui-common/dynamic-component-loader/dynamic-component-loader.service.ts","../../../projects/ui-common/dynamic-component-loader/dynamic-component-loader.module.ts","../../../projects/ui-common/dynamic-component-loader/theseam-ui-common-dynamic-component-loader.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nexport const DYNAMIC_COMPONENT = new InjectionToken<any>('DYNAMIC_COMPONENT')\n\nexport const DYNAMIC_MODULE = new InjectionToken<any>('DYNAMIC_MODULE')\n\nexport const DYNAMIC_COMPONENT_MANIFESTS = new InjectionToken<any>('DYNAMIC_COMPONENT_MANIFESTS')\n","import { Compiler, ComponentFactory, Inject, Injectable, Injector, NgModuleFactory, Optional } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { from, throwError } from 'rxjs'\nimport { mergeMap, switchMap } from 'rxjs/operators'\n\nimport { LoadChildren } from '@angular/router'\nimport { DynamicComponentManifest } from './dynamic-component-manifest'\nimport {\n DYNAMIC_COMPONENT,\n DYNAMIC_COMPONENT_MANIFESTS,\n DYNAMIC_MODULE\n} from './dynamic-component-tokens'\n\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TheSeamDynamicComponentLoader {\n\n private _manifests: DynamicComponentManifest[]\n\n constructor(\n private compiler: Compiler,\n private injector: Injector,\n @Optional() @Inject(DYNAMIC_COMPONENT_MANIFESTS) manifests: DynamicComponentManifest[],\n ) { this._manifests = manifests || [] }\n\n /** Retrieve a ComponentFactory, based on the specified componentId (defined in the DynamicComponentManifest array). */\n getComponentFactory<T>(componentId: string, injector?: Injector): Observable<ComponentFactory<T>> {\n const manifest = this._manifests\n .find(m => m.componentId === componentId)\n if (!manifest) {\n return throwError(`TheSeamDynamicComponentLoader: Unknown componentId \"${componentId}\"`)\n }\n\n // const path = manifest.loadChildren\n\n // const p = this.load<T>(path, componentId, injector)\n // return from(p)\n\n const moduleFactory$ = this.loadModuleFactory(manifest.loadChildren)\n\n return moduleFactory$\n .pipe(switchMap(m => from(this.loadFactory<any>(m, componentId, injector))))\n }\n\n private loadModuleFactory(loadChildren: LoadChildren): Observable<NgModuleFactory<any>> {\n return wrapIntoObservable(loadChildren()).pipe(mergeMap((t: any) => {\n if (t instanceof NgModuleFactory) {\n return of(t)\n } else {\n return from(this.compiler.compileModuleAsync(t))\n }\n }))\n }\n\n private loadFactory<T>(ngModuleFactory: NgModuleFactory<any>, componentId: string, injector?: Injector): Promise<ComponentFactory<T>> {\n const moduleRef = ngModuleFactory.create(injector || this.injector)\n const dynamicComponentType = moduleRef.injector.get(DYNAMIC_COMPONENT, null)\n if (!dynamicComponentType) {\n const dynamicModule: DynamicComponentManifest = moduleRef.injector.get(DYNAMIC_MODULE, null)\n\n if (!dynamicModule) {\n throw new Error(\n 'TheSeamDynamicComponentLoader: Dynamic module for' +\n ` componentId \"${componentId}\" does not contain` +\n ' DYNAMIC_COMPONENT or DYNAMIC_MODULE as a provider.',\n )\n }\n if (dynamicModule.componentId !== componentId) {\n throw new Error(\n 'TheSeamDynamicComponentLoader: Dynamic module for' +\n `${componentId} does not match manifest.`,\n )\n }\n\n const path = dynamicModule.loadChildren\n\n if (!path) {\n throw new Error(`${componentId} unknown!`)\n }\n\n // return this.load<T>(path, componentId, injector)\n const moduleFactory$ = this.loadModuleFactory(dynamicModule.loadChildren)\n\n return moduleFactory$\n .pipe(switchMap(m => from(this.loadFactory<any>(m, componentId, injector))))\n .toPromise() as Promise<ComponentFactory<T>>\n }\n\n return Promise.resolve(moduleRef.componentFactoryResolver.resolveComponentFactory<T>(dynamicComponentType))\n }\n}\n","import {\n ANALYZE_FOR_ENTRY_COMPONENTS,\n ModuleWithProviders,\n NgModule,\n Type,\n} from '@angular/core'\nimport { ROUTES } from '@angular/router'\n\nimport { TheSeamDynamicComponentLoader } from './dynamic-component-loader.service'\nimport type { DynamicComponentManifest } from './dynamic-component-manifest'\nimport {\n DYNAMIC_COMPONENT,\n DYNAMIC_COMPONENT_MANIFESTS,\n DYNAMIC_MODULE\n} from './dynamic-component-tokens'\n\n@NgModule()\nexport class TheSeamDynamicComponentLoaderModule {\n static forRoot(manifests: DynamicComponentManifest[]): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n TheSeamDynamicComponentLoader,\n // provider for Angular CLI to analyze\n { provide: ROUTES, useValue: manifests, multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_COMPONENT_MANIFESTS, useValue: manifests },\n ],\n }\n }\n static forModule(manifest: DynamicComponentManifest): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: manifest, multi: true },\n // provider for @angular/router to parse\n { provide: ROUTES, useValue: manifest, multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_MODULE, useValue: manifest }],\n }\n }\n static forChild(component: Type<any>): ModuleWithProviders<TheSeamDynamicComponentLoaderModule> {\n return {\n ngModule: TheSeamDynamicComponentLoaderModule,\n providers: [\n { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: component, multi: true },\n // provider for @angular/router to parse\n { provide: ROUTES, useValue: [], multi: true },\n // provider for TheSeamDynamicComponentLoader to analyze\n { provide: DYNAMIC_COMPONENT, useValue: component },\n ],\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -133,9 +133,9 @@ class DynamicValueHelperService {
133
133
  return evaluator.evalSync(value, context);
134
134
  }
135
135
  }
136
- DynamicValueHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicValueHelperService, deps: [{ token: THESEAM_DYNAMIC_VALUE_EVALUATOR, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
137
- DynamicValueHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicValueHelperService, providedIn: 'root' });
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicValueHelperService, decorators: [{
136
+ DynamicValueHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicValueHelperService, deps: [{ token: THESEAM_DYNAMIC_VALUE_EVALUATOR, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
137
+ DynamicValueHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicValueHelperService, providedIn: 'root' });
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicValueHelperService, decorators: [{
139
139
  type: Injectable,
140
140
  args: [{
141
141
  providedIn: 'root'
@@ -333,9 +333,9 @@ class DynamicActionApiService {
333
333
  return true;
334
334
  }
335
335
  }
336
- DynamicActionApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionApiService, deps: [{ token: DynamicValueHelperService }, { token: i2.HttpClient, optional: true }, { token: THESEAM_API_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
337
- DynamicActionApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionApiService });
338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionApiService, decorators: [{
336
+ DynamicActionApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionApiService, deps: [{ token: DynamicValueHelperService }, { token: i2.HttpClient, optional: true }, { token: THESEAM_API_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
337
+ DynamicActionApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionApiService });
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionApiService, decorators: [{
339
339
  type: Injectable
340
340
  }], ctorParameters: function () { return [{ type: DynamicValueHelperService }, { type: i2.HttpClient, decorators: [{
341
341
  type: Optional
@@ -384,9 +384,9 @@ class DynamicActionLinkService {
384
384
  return def;
385
385
  }
386
386
  }
387
- DynamicActionLinkService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionLinkService, deps: [{ token: DynamicValueHelperService }], target: i0.ɵɵFactoryTarget.Injectable });
388
- DynamicActionLinkService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionLinkService });
389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionLinkService, decorators: [{
387
+ DynamicActionLinkService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionLinkService, deps: [{ token: DynamicValueHelperService }], target: i0.ɵɵFactoryTarget.Injectable });
388
+ DynamicActionLinkService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionLinkService });
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionLinkService, decorators: [{
390
390
  type: Injectable
391
391
  }], ctorParameters: function () { return [{ type: DynamicValueHelperService }]; } });
392
392
 
@@ -527,9 +527,9 @@ class DynamicActionHelperService {
527
527
  return modalDef.afterClosed().pipe(map(v => v === 'confirm')).toPromise().then(x => x ?? false);
528
528
  }
529
529
  }
530
- DynamicActionHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionHelperService, deps: [{ token: DynamicValueHelperService }, { token: i2$1.SeamConfirmDialogService, optional: true }, { token: THESEAM_DYNAMIC_ACTION, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
531
- DynamicActionHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionHelperService, providedIn: 'root' });
532
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionHelperService, decorators: [{
530
+ DynamicActionHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionHelperService, deps: [{ token: DynamicValueHelperService }, { token: i2$1.SeamConfirmDialogService, optional: true }, { token: THESEAM_DYNAMIC_ACTION, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
531
+ DynamicActionHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionHelperService, providedIn: 'root' });
532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionHelperService, decorators: [{
533
533
  type: Injectable,
534
534
  args: [{
535
535
  providedIn: 'root'
@@ -615,9 +615,9 @@ class DynamicActionModalService {
615
615
  }
616
616
  }
617
617
  }
618
- DynamicActionModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionModalService, deps: [{ token: DynamicValueHelperService }, { token: i2$2.Modal }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
619
- DynamicActionModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionModalService });
620
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DynamicActionModalService, decorators: [{
618
+ DynamicActionModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionModalService, deps: [{ token: DynamicValueHelperService }, { token: i2$2.Modal }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
619
+ DynamicActionModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionModalService });
620
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicActionModalService, decorators: [{
621
621
  type: Injectable
622
622
  }], ctorParameters: function () { return [{ type: DynamicValueHelperService }, { type: i2$2.Modal }, { type: i0.Injector }]; } });
623
623
 
@@ -641,9 +641,9 @@ class ExportersDataEvaluator {
641
641
  .filter(notNullOrUndefined);
642
642
  }
643
643
  }
644
- ExportersDataEvaluator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ExportersDataEvaluator, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
645
- ExportersDataEvaluator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ExportersDataEvaluator });
646
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ExportersDataEvaluator, decorators: [{
644
+ ExportersDataEvaluator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExportersDataEvaluator, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
645
+ ExportersDataEvaluator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExportersDataEvaluator });
646
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExportersDataEvaluator, decorators: [{
647
647
  type: Injectable
648
648
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
649
649
 
@@ -667,9 +667,9 @@ class JexlEvaluator {
667
667
  return this._jexl.evalSync(value.expr, context);
668
668
  }
669
669
  }
670
- JexlEvaluator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: JexlEvaluator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
671
- JexlEvaluator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: JexlEvaluator });
672
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: JexlEvaluator, decorators: [{
670
+ JexlEvaluator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: JexlEvaluator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
671
+ JexlEvaluator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: JexlEvaluator });
672
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: JexlEvaluator, decorators: [{
673
673
  type: Injectable
674
674
  }], ctorParameters: function () { return []; } });
675
675
 
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-dynamic.mjs","sources":["../../../projects/ui-common/dynamic/tokens/api-config.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api-errors.ts","../../../projects/ui-common/dynamic/tokens/dynamic-value-evaluator.ts","../../../projects/ui-common/dynamic/dynamic-value-helper.service.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api.service.ts","../../../projects/ui-common/dynamic/action/link/dynamic-action-link.service.ts","../../../projects/ui-common/dynamic/tokens/dynamic-action.ts","../../../projects/ui-common/dynamic/action/dynamic-action-helper.service.ts","../../../projects/ui-common/dynamic/action/modal/dynamic-action-modal.service.ts","../../../projects/ui-common/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.ts","../../../projects/ui-common/dynamic/evaluators/jexl-evaluator/jexl-evaluator.ts","../../../projects/ui-common/dynamic/models/dynamic-action-def.ts","../../../projects/ui-common/dynamic/tokens/dynamic-data.ts","../../../projects/ui-common/dynamic/utils/is-action-type.ts","../../../projects/ui-common/dynamic/theseam-ui-common-dynamic.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nimport { DynamicValue } from '../models/dynamic-value'\n\nexport type ApiRequestMethodHeader = string | { [name: string]: string | string[] }\n\nexport interface ApiRequestMethodHeaders {\n 'GET'?: ApiRequestMethodHeader\n 'POST'?: ApiRequestMethodHeader\n 'PUT'?: ApiRequestMethodHeader\n 'PATCH'?: ApiRequestMethodHeader\n 'DELETE'?: ApiRequestMethodHeader\n}\n\nexport const VALID_REQUEST_METHODS: (keyof ApiRequestMethodHeaders)[] = [\n 'GET',\n 'POST',\n 'PUT',\n 'PATCH',\n 'DELETE'\n]\n\nexport function isValidRequestMethod(method: string): method is keyof ApiRequestMethodHeaders {\n return VALID_REQUEST_METHODS.indexOf(method as any) !== -1\n}\n\nexport interface IApiConfig {\n /**\n * Used to identify this config if multiple are provided.\n */\n id?: string\n\n /**\n * Base url that non-absolute endpoints will be appended to.\n */\n url?: DynamicValue<string>\n\n /**\n * Default headers to add to requests.\n */\n methodHeaders?: ApiRequestMethodHeaders\n}\n\nexport const THESEAM_API_CONFIG_DEFAULT: IApiConfig = {\n url: '/',\n\n methodHeaders: {\n 'GET': { 'Content-Type': 'application/json' },\n 'POST': { 'Content-Type': 'application/json' },\n 'PUT': { 'Content-Type': 'application/json' },\n 'PATCH': { 'Content-Type': 'application/json' },\n 'DELETE': { 'Content-Type': 'application/json' }\n }\n}\n\n// export const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n// 'Api config token, config options for actions that make an api request in library'\n// )\n\nexport const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n 'Api config token, config options for actions that make an api request in library', {\n providedIn: 'root',\n factory: () => [ THESEAM_API_CONFIG_DEFAULT ]\n })\n","\nexport function dynamicActionApiNotSupportedError(): Error {\n return Error(`Dynamic action type 'api' not supported.`)\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { IDynamicValueEvaluator } from '../models/dynamic-value-evaluator'\n\nexport const THESEAM_DYNAMIC_VALUE_EVALUATOR = new InjectionToken<IDynamicValueEvaluator>(\n 'Evaluator that can be used for evaluating a DynamicValue'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\n\nimport { DynamicValue } from './models/dynamic-value'\nimport { DynamicValueBaseType } from './models/dynamic-value-base-type'\nimport { DynamicValueEvaluatableType } from './models/dynamic-value-evaluatable-type'\nimport { IDynamicValueEvaluator } from './models/dynamic-value-evaluator'\nimport { THESEAM_DYNAMIC_VALUE_EVALUATOR } from './tokens/dynamic-value-evaluator'\n\n/**\n *\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicValueHelperService {\n\n private _evaluatorMap = new Map<string, IDynamicValueEvaluator>()\n\n constructor(\n @Optional() @Inject(THESEAM_DYNAMIC_VALUE_EVALUATOR) evaluators?: IDynamicValueEvaluator[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of evaluators || []) {\n if (isDevMode()) {\n if (this._evaluatorMap.has(e.type)) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicValueHelperService] Multiple evaluators found for type '${e.type}'`)\n }\n }\n this._evaluatorMap.set(e.type, e)\n }\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public eval<R extends DynamicValueBaseType>(value: DynamicValue<R>, context?: any): Promise<R> {\n if (this.isEvaluatableType(value, true)) {\n return this._evalEvaluatable(value, context)\n }\n\n // Use `evalSync` if `eval` isn't provided and `evalSync` is.\n if (this.isEvaluatableType(value, false)) {\n return Promise.resolve<R>(this._evalEvaluatableSync(value, context))\n }\n\n return Promise.resolve<R>(value)\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public evalSync<R extends DynamicValueBaseType>(value: DynamicValue<R>, context?: any): R {\n if (this.isEvaluatableType(value, false)) {\n return this._evalEvaluatableSync(value, context)\n }\n\n return value\n }\n\n /**\n * Checks if a DynamicValue is a type that can be evaluated.\n */\n public isEvaluatableType<R extends DynamicValueBaseType>(value: DynamicValue<R>, isAsync: boolean): value is DynamicValueEvaluatableType<R> {\n if (value === undefined || value === null) {\n return false\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n return false\n }\n\n if (!(value as DynamicValueEvaluatableType<R>).type) {\n return false\n }\n\n if (this._evaluatorMap.has((value as DynamicValueEvaluatableType<R>).type)) {\n return true\n }\n\n return false\n }\n\n /**\n *\n */\n private _evalEvaluatable<R extends DynamicValueBaseType>(value: DynamicValueEvaluatableType<R>, context?: any): Promise<R> {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.eval) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'eval()'.`)\n }\n return evaluator.eval(value, context)\n }\n\n /**\n *\n */\n private _evalEvaluatableSync<R extends DynamicValueBaseType>(value: DynamicValueEvaluatableType<R>, context?: any): R {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.evalSync) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'evalSync()'.`)\n }\n return evaluator.evalSync(value, context)\n }\n\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http'\nimport { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { from } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { isAbsoluteUrl } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicValue } from '../../models/dynamic-value'\nimport { ApiRequestMethodHeader, ApiRequestMethodHeaders, IApiConfig, isValidRequestMethod, THESEAM_API_CONFIG, VALID_REQUEST_METHODS } from '../../tokens/api-config'\n\nimport { DynamicActionApi } from './dynamic-action-api'\nimport { DynamicActionApiDef } from './dynamic-action-api-def'\nimport { dynamicActionApiNotSupportedError } from './dynamic-action-api-errors'\n\n/**\n * Handles execution of api call actions.\n *\n * This action service should be generic enough to\n * work with any url endpoint, but will be biased towards our api where needed.\n */\n@Injectable()\nexport class DynamicActionApiService implements DynamicActionApi {\n\n readonly type = 'api'\n\n label = 'Api Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n @Optional() private _http: HttpClient,\n @Optional() @Inject(THESEAM_API_CONFIG) private _configs: IApiConfig[]\n ) { }\n\n public exec(args: DynamicActionApiDef, context: any): Promise<any> {\n if (!this._isSupported()) {\n throw dynamicActionApiNotSupportedError()\n }\n\n return from(this._getExecInfo(args, context)).pipe(\n switchMap(x => this._http.request<any>(x.method, x.url, x.options)),\n ).toPromise()\n }\n\n public async getUiProps(args: DynamicActionApiDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n private async _getExecInfo(args: DynamicActionApiDef, context?: any) {\n const method = args.method || 'GET'\n\n const url = await this._getUrl(args, context)\n if (url === null) {\n throw new Error('[DynamicActionApiService] Unable to determine url.')\n }\n\n const body = await this._getBody(args, context)\n const params = await this._getParams(args, context)\n\n const headers = await this._getHeaders(args, context)\n\n const result = {\n url,\n method,\n options: { body, params, headers }\n }\n\n return result\n }\n\n private async _getUrl(args: DynamicActionApiDef, context?: any): Promise<string | null> {\n const config = this._getApiConfig(args)\n\n let endpoint = ''\n if (args.endpoint) {\n endpoint = await this._valueHelper.eval(args.endpoint, context)\n }\n\n if (isAbsoluteUrl(endpoint)) {\n return endpoint\n }\n\n if (config && config.url !== undefined && config.url !== null) {\n const url = await this._valueHelper.eval(config.url, context)\n if (typeof url === 'string') {\n const addSlash = endpoint.length > 0 && endpoint.indexOf('/') !== 0 &&\n url.length > 0 && url.indexOf('/') !== 0\n return `${config.url}${addSlash ? '/' : ''}${endpoint}`\n }\n }\n\n return null\n }\n\n private _getApiConfig(args: DynamicActionApiDef): IApiConfig | null {\n const configs = this._configs || []\n\n if (args.id === undefined || args.id === null) {\n return configs.length > 0 ? configs[0] : null\n }\n\n for (const config of configs) {\n if (config.id && config.id === args.id) {\n return config\n }\n }\n\n return null\n }\n\n private async _getBody(args: DynamicActionApiDef, context?: any) {\n if (args.body !== undefined && args.body !== null) {\n return this._valueHelper.eval(args.body, context)\n }\n\n return undefined\n }\n\n private async _getParams(args: DynamicActionApiDef, context?: any) {\n if (args.params !== undefined && args.params !== null) {\n return this._valueHelper.eval(args.params, context)\n }\n\n return undefined\n }\n\n private async _getHeaders(args: DynamicActionApiDef, context?: any): Promise<HttpHeaders> {\n let headers: ApiRequestMethodHeaders = {}\n\n const config = this._getApiConfig(args)\n\n // TODO: Make sure I am handling these values correctly. This could be\n // much cleaner. Tests with all the js primitives, null, undefined, and\n // dynamic action types should be written.\n\n if (config && config.methodHeaders) {\n const method = typeof args.method === 'string'\n ? args.method.trim().toUpperCase()\n : 'GET' // Default method type\n\n if (!isValidRequestMethod(method)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n const h = method && config.methodHeaders[method]\n if (h !== undefined && h !== null) {\n headers = await this._evalHeaders(h, context) as any\n }\n }\n\n // TODO: Cleanup messing multiple level logic\n const argHeaders = args.headers\n if (argHeaders !== undefined && argHeaders !== null) {\n if (typeof argHeaders === 'string') {\n headers = argHeaders as any\n } else {\n const _val = this._valueHelper.eval(argHeaders as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n headers = _val\n } else {\n const keys = Object.keys(argHeaders)\n for (const key of keys) {\n if (!isValidRequestMethod(key)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n // TODO: Fix types\n const value = (argHeaders as any)[key]\n if (typeof value === 'string') {\n headers[key] = value\n } else if (Array.isArray(value)) {\n headers[key] = await Promise.all(value.map(async v => this._valueHelper.eval(v, context))) as any\n } else {\n headers[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n }\n\n return new HttpHeaders(headers as any)\n }\n\n private async _evalHeaders(\n headers: string | DynamicValue<string> | { [name: string]: DynamicValue<string> | DynamicValue<string>[] },\n context?: any\n ) {\n let res: string | { [name: string]: string | string[] } = {}\n\n // TODO: Cleanup messing multiple level logic\n if (typeof headers === 'string') {\n res = headers\n } else {\n const _val = this._valueHelper.eval(headers as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n res = _val\n } else {\n const keys = Object.keys(headers)\n for (const key of keys) {\n const value = (headers as any)[key]\n if (typeof value === 'string') {\n res[key] = value\n } else if (Array.isArray(value)) {\n res[key] = await Promise.all(value.map(async v => this._valueHelper.eval(v, context)))\n } else {\n res[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n return res\n }\n\n private _isSupported(): boolean {\n if (isDevMode()) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionApiService] Action is not ready for production yet.`)\n } else {\n // I don't expect this to be attempted in prod before completed, so I am just adding a console warning.\n // eslint-disable-next-line no-console\n console.warn(`Unable to complete request. Contact support for assistance.`)\n }\n\n if (!this._http) {\n if (isDevMode()) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionApiService] Endpoint actions require \\`HttpClientModule\\` to be imported.`)\n }\n return false\n }\n return true\n }\n}\n","import { Injectable } from '@angular/core'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiAnchorDef } from '../../models/dynamic-action-ui-anchor-def'\nimport { DynamicActionLink } from './dynamic-action-link'\nimport { DynamicActionLinkDef } from './dynamic-action-link-def'\n\n/**\n * Handles execution of link actions.\n */\n@Injectable()\nexport class DynamicActionLinkService implements DynamicActionLink {\n\n readonly type = 'link'\n\n label = 'Link Action'\n\n constructor(\n private _valueHandler: DynamicValueHelperService\n ) { }\n\n // exec?: (args: IDynamicActionDef<T>, context: D) => Observable<R>\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionLinkDef, context: any): Promise<DynamicActionUiAnchorDef> {\n const link: string = await this._valueHandler.eval(args.link)\n const external = !!(await this._valueHandler.eval(args.external))\n const asset = !!(await this._valueHandler.eval(args.asset))\n const target: string | undefined = await this._valueHandler.eval(args.target)\n const queryParams: { [k: string]: any } | undefined = await this._valueHandler.eval(args.queryParams)\n\n const def: DynamicActionUiAnchorDef = {\n _actionDef: args,\n triggerType: asset ? 'link-asset' : external ? 'link-external' : 'link',\n linkUrl: link,\n // blockClickExpr: { type: 'jexl', expr: 'event.button == 0 && event.ctrlKey == true ? true : false' }\n }\n\n if (target) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.target = target\n }\n\n if (queryParams) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.queryParams = queryParams\n }\n\n return def\n }\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicAction } from '../models/dynamic-action'\n\nexport const THESEAM_DYNAMIC_ACTION = new InjectionToken<DynamicAction<string>>(\n 'Action for executing a DynamicAction'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { map } from 'rxjs/operators'\n\nimport { SeamConfirmDialogService } from '@theseam/ui-common/confirm-dialog'\nimport { ThemeTypes } from '@theseam/ui-common/models'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../dynamic-value-helper.service'\nimport { DynamicAction } from '../models/dynamic-action'\nimport { DynamicActionDef } from '../models/dynamic-action-def'\nimport { DynamicActionUiDef } from '../models/dynamic-action-ui-def'\nimport { THESEAM_DYNAMIC_ACTION } from '../tokens/dynamic-action'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicActionHelperService {\n\n private _actionMap = new Map<string, DynamicAction<string>>()\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n // TODO: Consider making the action confirm more generic\n @Optional() private _confirmDialog?: SeamConfirmDialogService,\n @Optional() @Inject(THESEAM_DYNAMIC_ACTION) actions?: DynamicAction<string>[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of (actions || [])) {\n if (isDevMode()) {\n if (this._actionMap.has(e.type)) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionHelperService] Multiple actions found for type '${e.type}'`)\n }\n }\n this._actionMap.set(e.type, e)\n }\n }\n\n /**\n * Execute an async action.\n *\n * TODO: Improve context and return typing.\n */\n public async exec<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionDef<T>> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.exec) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'exec()'.`)\n }\n\n if (await this.requiresConfirmation(actionDef, context)) {\n const confirmed = await this.promptConfirmation(actionDef, context)\n if (!confirmed) {\n // TODO: Decide a good way to handle a rejected confirm.\n return 'rejected' as any\n }\n }\n\n return action.exec(actionDef, context)\n }\n\n /**\n * Execute an action.\n *\n * TODO: Improve context and return typing.\n */\n public execSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): DynamicActionDef<T> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.execSync) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'execSync()'.`)\n }\n\n return action.execSync(actionDef, context)\n }\n\n /**\n * Get UI props for action.\n *\n * TODO: Improve context and return typing.\n */\n public getUiProps<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionUiDef> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.getUiProps) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'getUiProps()'.`)\n }\n\n return action.getUiProps(actionDef, context)\n }\n\n /**\n * Checks if a DynamicActionDef is a type that can be executed.\n */\n public isExecutableType<T extends string>(value: DynamicActionDef<T>, isAsync: boolean): boolean {\n if (value === undefined || value === null) {\n return false\n }\n\n const action = this._actionMap.get(value.type)\n if (!action) {\n return false\n }\n\n if (isAsync && !action.exec) {\n return false\n }\n if (!isAsync && !action.execSync) {\n return false\n }\n\n return true\n }\n\n public async requiresConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n return !(await this._valueHelper.eval(actionDef.confirmDef.disabled, context))\n }\n\n return true\n }\n\n public requiresConfirmationSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): boolean {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n const disabled = !this._valueHelper.evalSync(actionDef.confirmDef.disabled, context)\n if (!disabled) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n return false\n }\n\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n\n public async promptConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!this._confirmDialog) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm dialog service is not injected.`\n )\n }\n\n const confirmDef = actionDef.confirmDef\n if (!confirmDef) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm def is not defined.`\n )\n }\n\n let message: string | undefined\n if (hasProperty(confirmDef, 'message')) {\n message = await this._valueHelper.eval(confirmDef.message, context)\n }\n let alert: string | { message: string, type: ThemeTypes } | undefined\n if (hasProperty(confirmDef, 'alert')) {\n alert = await this._valueHelper.eval(confirmDef.alert, context)\n }\n\n const modalDef = this._confirmDialog.open(message, alert)\n return modalDef.afterClosed().pipe(\n map(v => v === 'confirm')\n ).toPromise().then(x => x ?? false)\n }\n\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Injectable, Injector } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { Modal, ModalConfig, ModalRef } from '@theseam/ui-common/modal'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicActionHelperService } from '../dynamic-action-helper.service'\nimport { DynamicActionModal } from './dynamic-action-modal'\nimport { DynamicActionModalDef } from './dynamic-action-modal-def'\n\n/**\n * Handles execution of modal actions.\n */\n@Injectable()\nexport class DynamicActionModalService implements DynamicActionModal {\n\n readonly type = 'modal'\n\n label = 'Modal Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n private _modal: Modal,\n private _injector: Injector\n ) { }\n\n async exec(args: DynamicActionModalDef, context: any): Promise<any> {\n const component = this._getComponent(args, context)\n const data = this._getData(args, context)\n\n return this._openModal(component, data).pipe(\n switchMap(modalRef => modalRef.afterClosed().pipe(\n switchMap(result => {\n const resultAction = this._getModalResultAction(args, result)\n\n // TODO: Come up with a way to pass data from previous action\n if (resultAction) {\n const dynamicActionHelper = this._getDynamicActionHelper()\n return dynamicActionHelper.exec(resultAction, context)\n }\n return of(result)\n })\n ))\n ).toPromise()\n }\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionModalDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n /**\n * Get the dynamic action helper from the injector. The injector order causes\n * the dynamic action helper to not be in the injector when the constructor is\n * called.\n */\n private _getDynamicActionHelper(): DynamicActionHelperService {\n return this._injector.get(DynamicActionHelperService)\n }\n\n private _getComponent(args: DynamicActionModalDef, context: any): string | ComponentType<object> | undefined {\n let component = args && args.component\n if (component) {\n component = this._valueHelper.evalSync(component, context)\n }\n return component\n }\n\n private _getData(args: DynamicActionModalDef, context: any): any | undefined {\n let data = args && args.data\n if (data) {\n data = this._valueHelper.evalSync(data, context)\n }\n return data\n }\n\n private _getModalResultAction(args: DynamicActionModalDef, result: any) {\n if (args.resultActions && args.resultActions[result]) {\n return args.resultActions[result]\n }\n }\n\n private _openModal(modal: any, data?: any): Observable<ModalRef<any>> {\n // TODO: Replace with JSON valid config from input def model\n const config: ModalConfig = {\n data,\n modalSize: 'lg'\n }\n\n if (typeof modal === 'string') {\n return this._modal.openFromLazyComponent(modal, config)\n } else {\n return of(this._modal.openFromComponent(modal, config))\n }\n }\n}\n","import { Injectable, Injector } from '@angular/core'\n\nimport { IDataExporter, THESEAM_DATA_EXPORTER } from '@theseam/ui-common/data-exporter'\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IExportersDataValue } from './exporters-data-value'\n\n@Injectable()\nexport class ExportersDataEvaluator implements IDynamicValueEvaluator<'exporters-data'> {\n\n public readonly type = 'exporters-data'\n\n constructor(\n private _injector: Injector\n ) { }\n\n public async eval(value: IExportersDataValue<IDataExporter[]>, context?: any): Promise<{ exporters: IDataExporter[] }> {\n return this.evalSync(value, context)\n }\n\n public evalSync(value: IExportersDataValue<IDataExporter[]>, context?: any): { exporters: IDataExporter[] } {\n return {\n exporters: this._exporters(value.exporters || [])\n }\n }\n\n private _exporters(exporters: string[]) {\n const dataExporters: IDataExporter[] = (this._injector.get(THESEAM_DATA_EXPORTER) as any || []) as IDataExporter[]\n return exporters\n .map(e => dataExporters.find(de => de.name === e))\n .filter(notNullOrUndefined)\n }\n\n}\n","// NOTE: ng-packagr ignores the \"types\" and \"typeRoots\" settings in tsconfig.\n// Unless there is a way to make it stop ignoring those settings, tripple slash\n// reference to a `.d.ts` file was the only way I could stop the missing types\n// error.\n// /// <reference path=\"./jexl.d.ts\" />\n// /// <reference path=\"../../../../../custom_types/jexl/index.d.ts\" />\n\nimport { DatePipe } from '@angular/common'\nimport { Injectable } from '@angular/core'\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore: Missing types\nimport jexl from 'jexl'\n\nimport { DynamicValueBaseType } from '../../models/dynamic-value-base-type'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IJexlValue } from './jexl-value'\n\n@Injectable()\nexport class JexlEvaluator implements IDynamicValueEvaluator<'jexl'> {\n\n public readonly type = 'jexl'\n\n private readonly _jexl = new jexl.Jexl()\n\n constructor() {\n this._jexl.addTransform('date', (val: any, row: any) => new DatePipe('en-US').transform(val, 'yyyy-MM-dd h:mm aaa'))\n this._jexl.addTransform('length', (val: any) => val !== null && val !== undefined ? val.length : 0)\n }\n\n public eval<R extends DynamicValueBaseType>(value: IJexlValue<R>, context?: any): Promise<R> {\n return this._jexl.eval(value.expr, context)\n }\n\n public evalSync<R extends DynamicValueBaseType>(value: IJexlValue<R>, context?: any): R {\n return this._jexl.evalSync(value.expr, context)\n }\n\n}\n","// import { TableCellTypeName } from '@theseam/ui-common/table-cell-type'\n\nimport { DynamicActionConfirmDef } from './dynamic-action-confirm-def'\n\n// TODO: Add something to the model that clarifies what is supported from JSON or javascript only.\n// export interface DynamicActionDef<T extends TableCellTypeName> {\nexport interface DynamicActionDef<T> {\n\n readonly type: T\n\n /**\n * If defined, the action must be confirmed.\n */\n confirmDef?: DynamicActionConfirmDef\n\n // TODO: Fix model to avoid this.\n [key: string]: any\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const THESEAM_DYNAMIC_DATA = new InjectionToken<any>('THESEAM_DYNAMIC_DATA')\n","import { DynamicActionDef } from '../models/dynamic-action-def'\n\nexport function isActionType<T extends string>(\n action: DynamicActionDef<T>,\n typeName: T\n): action is DynamicActionDef<T> {\n return action.type === typeName\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.DynamicValueHelperService","i2"],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-dynamic.mjs","sources":["../../../projects/ui-common/dynamic/tokens/api-config.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api-errors.ts","../../../projects/ui-common/dynamic/tokens/dynamic-value-evaluator.ts","../../../projects/ui-common/dynamic/dynamic-value-helper.service.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api.service.ts","../../../projects/ui-common/dynamic/action/link/dynamic-action-link.service.ts","../../../projects/ui-common/dynamic/tokens/dynamic-action.ts","../../../projects/ui-common/dynamic/action/dynamic-action-helper.service.ts","../../../projects/ui-common/dynamic/action/modal/dynamic-action-modal.service.ts","../../../projects/ui-common/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.ts","../../../projects/ui-common/dynamic/evaluators/jexl-evaluator/jexl-evaluator.ts","../../../projects/ui-common/dynamic/models/dynamic-action-def.ts","../../../projects/ui-common/dynamic/tokens/dynamic-data.ts","../../../projects/ui-common/dynamic/utils/is-action-type.ts","../../../projects/ui-common/dynamic/theseam-ui-common-dynamic.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nimport { DynamicValue } from '../models/dynamic-value'\n\nexport type ApiRequestMethodHeader = string | { [name: string]: string | string[] }\n\nexport interface ApiRequestMethodHeaders {\n 'GET'?: ApiRequestMethodHeader\n 'POST'?: ApiRequestMethodHeader\n 'PUT'?: ApiRequestMethodHeader\n 'PATCH'?: ApiRequestMethodHeader\n 'DELETE'?: ApiRequestMethodHeader\n}\n\nexport const VALID_REQUEST_METHODS: (keyof ApiRequestMethodHeaders)[] = [\n 'GET',\n 'POST',\n 'PUT',\n 'PATCH',\n 'DELETE'\n]\n\nexport function isValidRequestMethod(method: string): method is keyof ApiRequestMethodHeaders {\n return VALID_REQUEST_METHODS.indexOf(method as any) !== -1\n}\n\nexport interface IApiConfig {\n /**\n * Used to identify this config if multiple are provided.\n */\n id?: string\n\n /**\n * Base url that non-absolute endpoints will be appended to.\n */\n url?: DynamicValue<string>\n\n /**\n * Default headers to add to requests.\n */\n methodHeaders?: ApiRequestMethodHeaders\n}\n\nexport const THESEAM_API_CONFIG_DEFAULT: IApiConfig = {\n url: '/',\n\n methodHeaders: {\n 'GET': { 'Content-Type': 'application/json' },\n 'POST': { 'Content-Type': 'application/json' },\n 'PUT': { 'Content-Type': 'application/json' },\n 'PATCH': { 'Content-Type': 'application/json' },\n 'DELETE': { 'Content-Type': 'application/json' }\n }\n}\n\n// export const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n// 'Api config token, config options for actions that make an api request in library'\n// )\n\nexport const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n 'Api config token, config options for actions that make an api request in library', {\n providedIn: 'root',\n factory: () => [ THESEAM_API_CONFIG_DEFAULT ]\n })\n","\nexport function dynamicActionApiNotSupportedError(): Error {\n return Error(`Dynamic action type 'api' not supported.`)\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { IDynamicValueEvaluator } from '../models/dynamic-value-evaluator'\n\nexport const THESEAM_DYNAMIC_VALUE_EVALUATOR = new InjectionToken<IDynamicValueEvaluator>(\n 'Evaluator that can be used for evaluating a DynamicValue'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\n\nimport { DynamicValue } from './models/dynamic-value'\nimport { DynamicValueBaseType } from './models/dynamic-value-base-type'\nimport { DynamicValueEvaluatableType } from './models/dynamic-value-evaluatable-type'\nimport { IDynamicValueEvaluator } from './models/dynamic-value-evaluator'\nimport { THESEAM_DYNAMIC_VALUE_EVALUATOR } from './tokens/dynamic-value-evaluator'\n\n/**\n *\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicValueHelperService {\n\n private _evaluatorMap = new Map<string, IDynamicValueEvaluator>()\n\n constructor(\n @Optional() @Inject(THESEAM_DYNAMIC_VALUE_EVALUATOR) evaluators?: IDynamicValueEvaluator[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of evaluators || []) {\n if (isDevMode()) {\n if (this._evaluatorMap.has(e.type)) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicValueHelperService] Multiple evaluators found for type '${e.type}'`)\n }\n }\n this._evaluatorMap.set(e.type, e)\n }\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public eval<R extends DynamicValueBaseType>(value: DynamicValue<R>, context?: any): Promise<R> {\n if (this.isEvaluatableType(value, true)) {\n return this._evalEvaluatable(value, context)\n }\n\n // Use `evalSync` if `eval` isn't provided and `evalSync` is.\n if (this.isEvaluatableType(value, false)) {\n return Promise.resolve<R>(this._evalEvaluatableSync(value, context))\n }\n\n return Promise.resolve<R>(value)\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public evalSync<R extends DynamicValueBaseType>(value: DynamicValue<R>, context?: any): R {\n if (this.isEvaluatableType(value, false)) {\n return this._evalEvaluatableSync(value, context)\n }\n\n return value\n }\n\n /**\n * Checks if a DynamicValue is a type that can be evaluated.\n */\n public isEvaluatableType<R extends DynamicValueBaseType>(value: DynamicValue<R>, isAsync: boolean): value is DynamicValueEvaluatableType<R> {\n if (value === undefined || value === null) {\n return false\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n return false\n }\n\n if (!(value as DynamicValueEvaluatableType<R>).type) {\n return false\n }\n\n if (this._evaluatorMap.has((value as DynamicValueEvaluatableType<R>).type)) {\n return true\n }\n\n return false\n }\n\n /**\n *\n */\n private _evalEvaluatable<R extends DynamicValueBaseType>(value: DynamicValueEvaluatableType<R>, context?: any): Promise<R> {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.eval) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'eval()'.`)\n }\n return evaluator.eval(value, context)\n }\n\n /**\n *\n */\n private _evalEvaluatableSync<R extends DynamicValueBaseType>(value: DynamicValueEvaluatableType<R>, context?: any): R {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.evalSync) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'evalSync()'.`)\n }\n return evaluator.evalSync(value, context)\n }\n\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http'\nimport { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { from } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { isAbsoluteUrl } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicValue } from '../../models/dynamic-value'\nimport { ApiRequestMethodHeader, ApiRequestMethodHeaders, IApiConfig, isValidRequestMethod, THESEAM_API_CONFIG, VALID_REQUEST_METHODS } from '../../tokens/api-config'\n\nimport { DynamicActionApi } from './dynamic-action-api'\nimport { DynamicActionApiDef } from './dynamic-action-api-def'\nimport { dynamicActionApiNotSupportedError } from './dynamic-action-api-errors'\n\n/**\n * Handles execution of api call actions.\n *\n * This action service should be generic enough to\n * work with any url endpoint, but will be biased towards our api where needed.\n */\n@Injectable()\nexport class DynamicActionApiService implements DynamicActionApi {\n\n readonly type = 'api'\n\n label = 'Api Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n @Optional() private _http: HttpClient,\n @Optional() @Inject(THESEAM_API_CONFIG) private _configs: IApiConfig[]\n ) { }\n\n public exec(args: DynamicActionApiDef, context: any): Promise<any> {\n if (!this._isSupported()) {\n throw dynamicActionApiNotSupportedError()\n }\n\n return from(this._getExecInfo(args, context)).pipe(\n switchMap(x => this._http.request<any>(x.method, x.url, x.options)),\n ).toPromise()\n }\n\n public async getUiProps(args: DynamicActionApiDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n private async _getExecInfo(args: DynamicActionApiDef, context?: any) {\n const method = args.method || 'GET'\n\n const url = await this._getUrl(args, context)\n if (url === null) {\n throw new Error('[DynamicActionApiService] Unable to determine url.')\n }\n\n const body = await this._getBody(args, context)\n const params = await this._getParams(args, context)\n\n const headers = await this._getHeaders(args, context)\n\n const result = {\n url,\n method,\n options: { body, params, headers }\n }\n\n return result\n }\n\n private async _getUrl(args: DynamicActionApiDef, context?: any): Promise<string | null> {\n const config = this._getApiConfig(args)\n\n let endpoint = ''\n if (args.endpoint) {\n endpoint = await this._valueHelper.eval(args.endpoint, context)\n }\n\n if (isAbsoluteUrl(endpoint)) {\n return endpoint\n }\n\n if (config && config.url !== undefined && config.url !== null) {\n const url = await this._valueHelper.eval(config.url, context)\n if (typeof url === 'string') {\n const addSlash = endpoint.length > 0 && endpoint.indexOf('/') !== 0 &&\n url.length > 0 && url.indexOf('/') !== 0\n return `${config.url}${addSlash ? '/' : ''}${endpoint}`\n }\n }\n\n return null\n }\n\n private _getApiConfig(args: DynamicActionApiDef): IApiConfig | null {\n const configs = this._configs || []\n\n if (args.id === undefined || args.id === null) {\n return configs.length > 0 ? configs[0] : null\n }\n\n for (const config of configs) {\n if (config.id && config.id === args.id) {\n return config\n }\n }\n\n return null\n }\n\n private async _getBody(args: DynamicActionApiDef, context?: any) {\n if (args.body !== undefined && args.body !== null) {\n return this._valueHelper.eval(args.body, context)\n }\n\n return undefined\n }\n\n private async _getParams(args: DynamicActionApiDef, context?: any) {\n if (args.params !== undefined && args.params !== null) {\n return this._valueHelper.eval(args.params, context)\n }\n\n return undefined\n }\n\n private async _getHeaders(args: DynamicActionApiDef, context?: any): Promise<HttpHeaders> {\n let headers: ApiRequestMethodHeaders = {}\n\n const config = this._getApiConfig(args)\n\n // TODO: Make sure I am handling these values correctly. This could be\n // much cleaner. Tests with all the js primitives, null, undefined, and\n // dynamic action types should be written.\n\n if (config && config.methodHeaders) {\n const method = typeof args.method === 'string'\n ? args.method.trim().toUpperCase()\n : 'GET' // Default method type\n\n if (!isValidRequestMethod(method)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n const h = method && config.methodHeaders[method]\n if (h !== undefined && h !== null) {\n headers = await this._evalHeaders(h, context) as any\n }\n }\n\n // TODO: Cleanup messing multiple level logic\n const argHeaders = args.headers\n if (argHeaders !== undefined && argHeaders !== null) {\n if (typeof argHeaders === 'string') {\n headers = argHeaders as any\n } else {\n const _val = this._valueHelper.eval(argHeaders as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n headers = _val\n } else {\n const keys = Object.keys(argHeaders)\n for (const key of keys) {\n if (!isValidRequestMethod(key)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n // TODO: Fix types\n const value = (argHeaders as any)[key]\n if (typeof value === 'string') {\n headers[key] = value\n } else if (Array.isArray(value)) {\n headers[key] = await Promise.all(value.map(async v => this._valueHelper.eval(v, context))) as any\n } else {\n headers[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n }\n\n return new HttpHeaders(headers as any)\n }\n\n private async _evalHeaders(\n headers: string | DynamicValue<string> | { [name: string]: DynamicValue<string> | DynamicValue<string>[] },\n context?: any\n ) {\n let res: string | { [name: string]: string | string[] } = {}\n\n // TODO: Cleanup messing multiple level logic\n if (typeof headers === 'string') {\n res = headers\n } else {\n const _val = this._valueHelper.eval(headers as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n res = _val\n } else {\n const keys = Object.keys(headers)\n for (const key of keys) {\n const value = (headers as any)[key]\n if (typeof value === 'string') {\n res[key] = value\n } else if (Array.isArray(value)) {\n res[key] = await Promise.all(value.map(async v => this._valueHelper.eval(v, context)))\n } else {\n res[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n return res\n }\n\n private _isSupported(): boolean {\n if (isDevMode()) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionApiService] Action is not ready for production yet.`)\n } else {\n // I don't expect this to be attempted in prod before completed, so I am just adding a console warning.\n // eslint-disable-next-line no-console\n console.warn(`Unable to complete request. Contact support for assistance.`)\n }\n\n if (!this._http) {\n if (isDevMode()) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionApiService] Endpoint actions require \\`HttpClientModule\\` to be imported.`)\n }\n return false\n }\n return true\n }\n}\n","import { Injectable } from '@angular/core'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiAnchorDef } from '../../models/dynamic-action-ui-anchor-def'\nimport { DynamicActionLink } from './dynamic-action-link'\nimport { DynamicActionLinkDef } from './dynamic-action-link-def'\n\n/**\n * Handles execution of link actions.\n */\n@Injectable()\nexport class DynamicActionLinkService implements DynamicActionLink {\n\n readonly type = 'link'\n\n label = 'Link Action'\n\n constructor(\n private _valueHandler: DynamicValueHelperService\n ) { }\n\n // exec?: (args: IDynamicActionDef<T>, context: D) => Observable<R>\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionLinkDef, context: any): Promise<DynamicActionUiAnchorDef> {\n const link: string = await this._valueHandler.eval(args.link)\n const external = !!(await this._valueHandler.eval(args.external))\n const asset = !!(await this._valueHandler.eval(args.asset))\n const target: string | undefined = await this._valueHandler.eval(args.target)\n const queryParams: { [k: string]: any } | undefined = await this._valueHandler.eval(args.queryParams)\n\n const def: DynamicActionUiAnchorDef = {\n _actionDef: args,\n triggerType: asset ? 'link-asset' : external ? 'link-external' : 'link',\n linkUrl: link,\n // blockClickExpr: { type: 'jexl', expr: 'event.button == 0 && event.ctrlKey == true ? true : false' }\n }\n\n if (target) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.target = target\n }\n\n if (queryParams) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.queryParams = queryParams\n }\n\n return def\n }\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicAction } from '../models/dynamic-action'\n\nexport const THESEAM_DYNAMIC_ACTION = new InjectionToken<DynamicAction<string>>(\n 'Action for executing a DynamicAction'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { map } from 'rxjs/operators'\n\nimport { SeamConfirmDialogService } from '@theseam/ui-common/confirm-dialog'\nimport { ThemeTypes } from '@theseam/ui-common/models'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../dynamic-value-helper.service'\nimport { DynamicAction } from '../models/dynamic-action'\nimport { DynamicActionDef } from '../models/dynamic-action-def'\nimport { DynamicActionUiDef } from '../models/dynamic-action-ui-def'\nimport { THESEAM_DYNAMIC_ACTION } from '../tokens/dynamic-action'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicActionHelperService {\n\n private _actionMap = new Map<string, DynamicAction<string>>()\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n // TODO: Consider making the action confirm more generic\n @Optional() private _confirmDialog?: SeamConfirmDialogService,\n @Optional() @Inject(THESEAM_DYNAMIC_ACTION) actions?: DynamicAction<string>[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of (actions || [])) {\n if (isDevMode()) {\n if (this._actionMap.has(e.type)) {\n // eslint-disable-next-line no-console\n console.warn(`[DynamicActionHelperService] Multiple actions found for type '${e.type}'`)\n }\n }\n this._actionMap.set(e.type, e)\n }\n }\n\n /**\n * Execute an async action.\n *\n * TODO: Improve context and return typing.\n */\n public async exec<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionDef<T>> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.exec) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'exec()'.`)\n }\n\n if (await this.requiresConfirmation(actionDef, context)) {\n const confirmed = await this.promptConfirmation(actionDef, context)\n if (!confirmed) {\n // TODO: Decide a good way to handle a rejected confirm.\n return 'rejected' as any\n }\n }\n\n return action.exec(actionDef, context)\n }\n\n /**\n * Execute an action.\n *\n * TODO: Improve context and return typing.\n */\n public execSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): DynamicActionDef<T> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.execSync) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'execSync()'.`)\n }\n\n return action.execSync(actionDef, context)\n }\n\n /**\n * Get UI props for action.\n *\n * TODO: Improve context and return typing.\n */\n public getUiProps<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionUiDef> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.getUiProps) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'getUiProps()'.`)\n }\n\n return action.getUiProps(actionDef, context)\n }\n\n /**\n * Checks if a DynamicActionDef is a type that can be executed.\n */\n public isExecutableType<T extends string>(value: DynamicActionDef<T>, isAsync: boolean): boolean {\n if (value === undefined || value === null) {\n return false\n }\n\n const action = this._actionMap.get(value.type)\n if (!action) {\n return false\n }\n\n if (isAsync && !action.exec) {\n return false\n }\n if (!isAsync && !action.execSync) {\n return false\n }\n\n return true\n }\n\n public async requiresConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n return !(await this._valueHelper.eval(actionDef.confirmDef.disabled, context))\n }\n\n return true\n }\n\n public requiresConfirmationSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): boolean {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n const disabled = !this._valueHelper.evalSync(actionDef.confirmDef.disabled, context)\n if (!disabled) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n return false\n }\n\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n\n public async promptConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!this._confirmDialog) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm dialog service is not injected.`\n )\n }\n\n const confirmDef = actionDef.confirmDef\n if (!confirmDef) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm def is not defined.`\n )\n }\n\n let message: string | undefined\n if (hasProperty(confirmDef, 'message')) {\n message = await this._valueHelper.eval(confirmDef.message, context)\n }\n let alert: string | { message: string, type: ThemeTypes } | undefined\n if (hasProperty(confirmDef, 'alert')) {\n alert = await this._valueHelper.eval(confirmDef.alert, context)\n }\n\n const modalDef = this._confirmDialog.open(message, alert)\n return modalDef.afterClosed().pipe(\n map(v => v === 'confirm')\n ).toPromise().then(x => x ?? false)\n }\n\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Injectable, Injector } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { Modal, ModalConfig, ModalRef } from '@theseam/ui-common/modal'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicActionHelperService } from '../dynamic-action-helper.service'\nimport { DynamicActionModal } from './dynamic-action-modal'\nimport { DynamicActionModalDef } from './dynamic-action-modal-def'\n\n/**\n * Handles execution of modal actions.\n */\n@Injectable()\nexport class DynamicActionModalService implements DynamicActionModal {\n\n readonly type = 'modal'\n\n label = 'Modal Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n private _modal: Modal,\n private _injector: Injector\n ) { }\n\n async exec(args: DynamicActionModalDef, context: any): Promise<any> {\n const component = this._getComponent(args, context)\n const data = this._getData(args, context)\n\n return this._openModal(component, data).pipe(\n switchMap(modalRef => modalRef.afterClosed().pipe(\n switchMap(result => {\n const resultAction = this._getModalResultAction(args, result)\n\n // TODO: Come up with a way to pass data from previous action\n if (resultAction) {\n const dynamicActionHelper = this._getDynamicActionHelper()\n return dynamicActionHelper.exec(resultAction, context)\n }\n return of(result)\n })\n ))\n ).toPromise()\n }\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionModalDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n /**\n * Get the dynamic action helper from the injector. The injector order causes\n * the dynamic action helper to not be in the injector when the constructor is\n * called.\n */\n private _getDynamicActionHelper(): DynamicActionHelperService {\n return this._injector.get(DynamicActionHelperService)\n }\n\n private _getComponent(args: DynamicActionModalDef, context: any): string | ComponentType<object> | undefined {\n let component = args && args.component\n if (component) {\n component = this._valueHelper.evalSync(component, context)\n }\n return component\n }\n\n private _getData(args: DynamicActionModalDef, context: any): any | undefined {\n let data = args && args.data\n if (data) {\n data = this._valueHelper.evalSync(data, context)\n }\n return data\n }\n\n private _getModalResultAction(args: DynamicActionModalDef, result: any) {\n if (args.resultActions && args.resultActions[result]) {\n return args.resultActions[result]\n }\n }\n\n private _openModal(modal: any, data?: any): Observable<ModalRef<any>> {\n // TODO: Replace with JSON valid config from input def model\n const config: ModalConfig = {\n data,\n modalSize: 'lg'\n }\n\n if (typeof modal === 'string') {\n return this._modal.openFromLazyComponent(modal, config)\n } else {\n return of(this._modal.openFromComponent(modal, config))\n }\n }\n}\n","import { Injectable, Injector } from '@angular/core'\n\nimport { IDataExporter, THESEAM_DATA_EXPORTER } from '@theseam/ui-common/data-exporter'\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IExportersDataValue } from './exporters-data-value'\n\n@Injectable()\nexport class ExportersDataEvaluator implements IDynamicValueEvaluator<'exporters-data'> {\n\n public readonly type = 'exporters-data'\n\n constructor(\n private _injector: Injector\n ) { }\n\n public async eval(value: IExportersDataValue<IDataExporter[]>, context?: any): Promise<{ exporters: IDataExporter[] }> {\n return this.evalSync(value, context)\n }\n\n public evalSync(value: IExportersDataValue<IDataExporter[]>, context?: any): { exporters: IDataExporter[] } {\n return {\n exporters: this._exporters(value.exporters || [])\n }\n }\n\n private _exporters(exporters: string[]) {\n const dataExporters: IDataExporter[] = (this._injector.get(THESEAM_DATA_EXPORTER) as any || []) as IDataExporter[]\n return exporters\n .map(e => dataExporters.find(de => de.name === e))\n .filter(notNullOrUndefined)\n }\n\n}\n","// NOTE: ng-packagr ignores the \"types\" and \"typeRoots\" settings in tsconfig.\n// Unless there is a way to make it stop ignoring those settings, tripple slash\n// reference to a `.d.ts` file was the only way I could stop the missing types\n// error.\n// /// <reference path=\"./jexl.d.ts\" />\n// /// <reference path=\"../../../../../custom_types/jexl/index.d.ts\" />\n\nimport { DatePipe } from '@angular/common'\nimport { Injectable } from '@angular/core'\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore: Missing types\nimport jexl from 'jexl'\n\nimport { DynamicValueBaseType } from '../../models/dynamic-value-base-type'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IJexlValue } from './jexl-value'\n\n@Injectable()\nexport class JexlEvaluator implements IDynamicValueEvaluator<'jexl'> {\n\n public readonly type = 'jexl'\n\n private readonly _jexl = new jexl.Jexl()\n\n constructor() {\n this._jexl.addTransform('date', (val: any, row: any) => new DatePipe('en-US').transform(val, 'yyyy-MM-dd h:mm aaa'))\n this._jexl.addTransform('length', (val: any) => val !== null && val !== undefined ? val.length : 0)\n }\n\n public eval<R extends DynamicValueBaseType>(value: IJexlValue<R>, context?: any): Promise<R> {\n return this._jexl.eval(value.expr, context)\n }\n\n public evalSync<R extends DynamicValueBaseType>(value: IJexlValue<R>, context?: any): R {\n return this._jexl.evalSync(value.expr, context)\n }\n\n}\n","// import { TableCellTypeName } from '@theseam/ui-common/table-cell-type'\n\nimport { DynamicActionConfirmDef } from './dynamic-action-confirm-def'\n\n// TODO: Add something to the model that clarifies what is supported from JSON or javascript only.\n// export interface DynamicActionDef<T extends TableCellTypeName> {\nexport interface DynamicActionDef<T> {\n\n readonly type: T\n\n /**\n * If defined, the action must be confirmed.\n */\n confirmDef?: DynamicActionConfirmDef\n\n // TODO: Fix model to avoid this.\n [key: string]: any\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const THESEAM_DYNAMIC_DATA = new InjectionToken<any>('THESEAM_DYNAMIC_DATA')\n","import { DynamicActionDef } from '../models/dynamic-action-def'\n\nexport function isActionType<T extends string>(\n action: DynamicActionDef<T>,\n typeName: T\n): action is DynamicActionDef<T> {\n return action.type === typeName\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.DynamicValueHelperService","i2"],"mappings":"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"}
@@ -4,19 +4,19 @@ import { CommonModule } from '@angular/common';
4
4
 
5
5
  class FooterBarComponent {
6
6
  }
7
- FooterBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FooterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- FooterBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FooterBarComponent, selector: "seam-footer-bar", ngImport: i0, template: "<p>footer-bar works!</p>\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FooterBarComponent, decorators: [{
7
+ FooterBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ FooterBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FooterBarComponent, selector: "seam-footer-bar", ngImport: i0, template: "<p>footer-bar works!</p>\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterBarComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'seam-footer-bar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p>footer-bar works!</p>\n" }]
12
12
  }] });
13
13
 
14
14
  class FooterBarModule {
15
15
  }
16
- FooterBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FooterBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- FooterBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: FooterBarModule, declarations: [FooterBarComponent], imports: [CommonModule], exports: [FooterBarComponent] });
18
- FooterBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FooterBarModule, imports: [CommonModule] });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FooterBarModule, decorators: [{
16
+ FooterBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ FooterBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FooterBarModule, declarations: [FooterBarComponent], imports: [CommonModule], exports: [FooterBarComponent] });
18
+ FooterBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterBarModule, imports: [CommonModule] });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterBarModule, decorators: [{
20
20
  type: NgModule,
21
21
  args: [{
22
22
  declarations: [FooterBarComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-footer-bar.mjs","sources":["../../../projects/ui-common/footer-bar/footer-bar/footer-bar.component.ts","../../../projects/ui-common/footer-bar/footer-bar/footer-bar.component.html","../../../projects/ui-common/footer-bar/footer-bar.module.ts","../../../projects/ui-common/footer-bar/theseam-ui-common-footer-bar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'seam-footer-bar',\n templateUrl: './footer-bar.component.html',\n styleUrls: ['./footer-bar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FooterBarComponent { }\n","<p>footer-bar works!</p>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { FooterBarComponent } from './footer-bar/footer-bar.component'\n\n@NgModule({\n declarations: [FooterBarComponent],\n imports: [\n CommonModule\n ],\n exports: [FooterBarComponent]\n})\nexport class FooterBarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAQa,kBAAkB,CAAA;;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,uDCR/B,4BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDOa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BACE,iBAAiB,EAAA,eAAA,EAGV,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA;;;MEKpC,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EANX,YAAA,EAAA,CAAA,kBAAkB,CAE/B,EAAA,OAAA,EAAA,CAAA,YAAY,aAEJ,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAEjB,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAJxB,YAAY,CAAA,EAAA,CAAA,CAAA;2FAIH,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;AAClC,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;oBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAC9B,iBAAA,CAAA;;;ACVD;;AAEG;;;;"}
1
+ {"version":3,"file":"theseam-ui-common-footer-bar.mjs","sources":["../../../projects/ui-common/footer-bar/footer-bar/footer-bar.component.ts","../../../projects/ui-common/footer-bar/footer-bar/footer-bar.component.html","../../../projects/ui-common/footer-bar/footer-bar.module.ts","../../../projects/ui-common/footer-bar/theseam-ui-common-footer-bar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'seam-footer-bar',\n templateUrl: './footer-bar.component.html',\n styleUrls: ['./footer-bar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FooterBarComponent { }\n","<p>footer-bar works!</p>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { FooterBarComponent } from './footer-bar/footer-bar.component'\n\n@NgModule({\n declarations: [FooterBarComponent],\n imports: [\n CommonModule\n ],\n exports: [FooterBarComponent]\n})\nexport class FooterBarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAQa,kBAAkB,CAAA;;gHAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,uDCR/B,4BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDOa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BACE,iBAAiB,EAAA,eAAA,EAGV,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA;;;MEKpC,eAAe,CAAA;;6GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EANX,YAAA,EAAA,CAAA,kBAAkB,CAE/B,EAAA,OAAA,EAAA,CAAA,YAAY,aAEJ,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAEjB,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAJxB,YAAY,CAAA,EAAA,CAAA,CAAA;4FAIH,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;AAClC,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;oBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAC9B,iBAAA,CAAA;;;ACVD;;AAEG;;;;"}
@@ -13,12 +13,12 @@ class FormFieldErrorListItemTplDirective {
13
13
  this.external = false;
14
14
  }
15
15
  }
16
- FormFieldErrorListItemTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListItemTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
17
- FormFieldErrorListItemTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldErrorListItemTplDirective, selector: "[seamFormFieldErrorListItemTpl]", inputs: { validatorName: "validatorName", external: "external" }, ngImport: i0 });
16
+ FormFieldErrorListItemTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListItemTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
17
+ FormFieldErrorListItemTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FormFieldErrorListItemTplDirective, selector: "[seamFormFieldErrorListItemTpl]", inputs: { validatorName: "validatorName", external: "external" }, ngImport: i0 });
18
18
  __decorate([
19
19
  InputBoolean()
20
20
  ], FormFieldErrorListItemTplDirective.prototype, "external", void 0);
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListItemTplDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListItemTplDirective, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: '[seamFormFieldErrorListItemTpl]'
@@ -34,9 +34,9 @@ class FormFieldErrorListItemDirective {
34
34
  this.template = template;
35
35
  }
36
36
  }
37
- FormFieldErrorListItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
38
- FormFieldErrorListItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldErrorListItemDirective, selector: "[seamFormFieldErrorListItem]", inputs: { validatorName: "validatorName" }, ngImport: i0 });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListItemDirective, decorators: [{
37
+ FormFieldErrorListItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
38
+ FormFieldErrorListItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FormFieldErrorListItemDirective, selector: "[seamFormFieldErrorListItem]", inputs: { validatorName: "validatorName" }, ngImport: i0 });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListItemDirective, decorators: [{
40
40
  type: Directive,
41
41
  args: [{
42
42
  selector: '[seamFormFieldErrorListItem]'
@@ -50,12 +50,12 @@ class FormFieldErrorComponent {
50
50
  this.showValidatorName = false;
51
51
  }
52
52
  }
53
- FormFieldErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
- FormFieldErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldErrorComponent, selector: "seam-form-field-error", inputs: { validatorName: "validatorName", message: "message", showValidatorName: "showValidatorName" }, ngImport: i0, template: "<em style=\"display: block;\">\n <span *ngIf=\"showValidatorName && validatorName\"\n style=\"font-weight: bold;\">{{ validatorName }}: </span>\n <span class=\"msg-text\">{{ message }}</span>\n</em>\n", styles: ["@charset \"UTF-8\";.msg-text:empty:after{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
53
+ FormFieldErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
+ FormFieldErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormFieldErrorComponent, selector: "seam-form-field-error", inputs: { validatorName: "validatorName", message: "message", showValidatorName: "showValidatorName" }, ngImport: i0, template: "<em style=\"display: block;\">\n <span *ngIf=\"showValidatorName && validatorName\"\n style=\"font-weight: bold;\">{{ validatorName }}: </span>\n <span class=\"msg-text\">{{ message }}</span>\n</em>\n", styles: ["@charset \"UTF-8\";.msg-text:empty:after{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
55
55
  __decorate([
56
56
  InputBoolean()
57
57
  ], FormFieldErrorComponent.prototype, "showValidatorName", void 0);
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorComponent, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorComponent, decorators: [{
59
59
  type: Component,
60
60
  args: [{ selector: 'seam-form-field-error', template: "<em style=\"display: block;\">\n <span *ngIf=\"showValidatorName && validatorName\"\n style=\"font-weight: bold;\">{{ validatorName }}: </span>\n <span class=\"msg-text\">{{ message }}</span>\n</em>\n", styles: ["@charset \"UTF-8\";.msg-text:empty:after{content:\"\\200b\"}\n"] }]
61
61
  }], propDecorators: { validatorName: [{
@@ -416,9 +416,9 @@ FormFieldErrorListComponent.defaultMessages = {
416
416
  // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,
417
417
  // pattern: (params) => 'The required pattern is: ' + params.requiredPattern
418
418
  };
419
- FormFieldErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
420
- FormFieldErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldErrorListComponent, selector: "seam-form-field-error-list", inputs: { errors: "errors", showValidatorName: "showValidatorName", numPaddingErrors: "numPaddingErrors", listItemTpls: "listItemTpls", maxErrors: "maxErrors", control: "control", showErrors: "showErrors" }, host: { properties: { "style.display": "this._display" } }, queries: [{ propertyName: "_listItemTpls", predicate: FormFieldErrorListItemTplDirective }], ngImport: i0, template: "<ng-container *ngFor=\"let record of displayRecords$ | async\">\n <ng-container *ngIf=\"record.template; else noTemplate\">\n <div>\n <ng-template\n [ngTemplateOutlet]=\"record.template\"\n [ngTemplateOutletContext]=\"{ $implicit: record.error, errors: record._errors }\">\n </ng-template>\n </div>\n </ng-container>\n <ng-template #noTemplate>\n <seam-form-field-error\n [validatorName]=\"record.validatorName\"\n [message]=\"record.message\"\n [showValidatorName]=\"showValidatorName\">\n </seam-form-field-error>\n </ng-template>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FormFieldErrorComponent, selector: "seam-form-field-error", inputs: ["validatorName", "message", "showValidatorName"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
421
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldErrorListComponent, decorators: [{
419
+ FormFieldErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
420
+ FormFieldErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormFieldErrorListComponent, selector: "seam-form-field-error-list", inputs: { errors: "errors", showValidatorName: "showValidatorName", numPaddingErrors: "numPaddingErrors", listItemTpls: "listItemTpls", maxErrors: "maxErrors", control: "control", showErrors: "showErrors" }, host: { properties: { "style.display": "this._display" } }, queries: [{ propertyName: "_listItemTpls", predicate: FormFieldErrorListItemTplDirective }], ngImport: i0, template: "<ng-container *ngFor=\"let record of displayRecords$ | async\">\n <ng-container *ngIf=\"record.template; else noTemplate\">\n <div>\n <ng-template\n [ngTemplateOutlet]=\"record.template\"\n [ngTemplateOutletContext]=\"{ $implicit: record.error, errors: record._errors }\">\n </ng-template>\n </div>\n </ng-container>\n <ng-template #noTemplate>\n <seam-form-field-error\n [validatorName]=\"record.validatorName\"\n [message]=\"record.message\"\n [showValidatorName]=\"showValidatorName\">\n </seam-form-field-error>\n </ng-template>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FormFieldErrorComponent, selector: "seam-form-field-error", inputs: ["validatorName", "message", "showValidatorName"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormFieldErrorListComponent, decorators: [{
422
422
  type: Component,
423
423
  args: [{ selector: 'seam-form-field-error-list', template: "<ng-container *ngFor=\"let record of displayRecords$ | async\">\n <ng-container *ngIf=\"record.template; else noTemplate\">\n <div>\n <ng-template\n [ngTemplateOutlet]=\"record.template\"\n [ngTemplateOutletContext]=\"{ $implicit: record.error, errors: record._errors }\">\n </ng-template>\n </div>\n </ng-container>\n <ng-template #noTemplate>\n <seam-form-field-error\n [validatorName]=\"record.validatorName\"\n [message]=\"record.message\"\n [showValidatorName]=\"showValidatorName\">\n </seam-form-field-error>\n </ng-template>\n</ng-container>\n" }]
424
424
  }], ctorParameters: function () { return []; }, propDecorators: { _display: [{
@@ -445,16 +445,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
445
445
 
446
446
  class TheSeamFormFieldErrorModule {
447
447
  }
448
- TheSeamFormFieldErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamFormFieldErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
449
- TheSeamFormFieldErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: TheSeamFormFieldErrorModule, declarations: [FormFieldErrorComponent,
448
+ TheSeamFormFieldErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamFormFieldErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
449
+ TheSeamFormFieldErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamFormFieldErrorModule, declarations: [FormFieldErrorComponent,
450
450
  FormFieldErrorListComponent,
451
451
  FormFieldErrorListItemDirective,
452
452
  FormFieldErrorListItemTplDirective], imports: [CommonModule], exports: [FormFieldErrorComponent,
453
453
  FormFieldErrorListComponent,
454
454
  FormFieldErrorListItemDirective,
455
455
  FormFieldErrorListItemTplDirective] });
456
- TheSeamFormFieldErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamFormFieldErrorModule, imports: [CommonModule] });
457
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamFormFieldErrorModule, decorators: [{
456
+ TheSeamFormFieldErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamFormFieldErrorModule, imports: [CommonModule] });
457
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamFormFieldErrorModule, decorators: [{
458
458
  type: NgModule,
459
459
  args: [{
460
460
  declarations: [