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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (720) hide show
  1. package/breadcrumbs/breadcrumb.d.ts +1 -1
  2. package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +1 -3
  3. package/breadcrumbs/breadcrumbs-resolver.d.ts +1 -1
  4. package/card/card-body/card-body.component.d.ts +2 -4
  5. package/card/card-footer/card-footer.component.d.ts +1 -4
  6. package/card/card-header/card-header.component.d.ts +1 -4
  7. package/card/card.component.d.ts +1 -4
  8. package/carousel/carousel-slide.directive.d.ts +8 -0
  9. package/carousel/carousel.component.d.ts +85 -0
  10. package/carousel/carousel.module.d.ts +11 -0
  11. package/carousel/index.d.ts +5 -0
  12. package/carousel/public-api.d.ts +3 -0
  13. package/checkbox/checkbox.component.d.ts +2 -4
  14. package/core/common-behaviors/active.d.ts +2 -2
  15. package/core/common-behaviors/constructor.d.ts +1 -1
  16. package/core/common-behaviors/disabled.d.ts +2 -2
  17. package/core/common-behaviors/initialized.d.ts +2 -2
  18. package/core/common-behaviors/size.d.ts +1 -1
  19. package/core/common-behaviors/tabindex.d.ts +1 -1
  20. package/core/common-behaviors/theme.d.ts +1 -1
  21. package/data-exporter/data-exporter.d.ts +1 -1
  22. package/data-filters/data-filter.d.ts +4 -4
  23. package/data-filters/filters/data-filter-search/search-filter-options.d.ts +1 -1
  24. package/datatable/datatable-column/datatable-column.component.d.ts +3 -4
  25. package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +1 -3
  26. package/datatable/datatable-export-button/datatable-export-button.component.d.ts +1 -3
  27. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -5
  28. package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +1 -4
  29. package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +1 -4
  30. package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +1 -4
  31. package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +1 -4
  32. package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +1 -3
  33. package/datatable/directives/datatable-action-menu-item.directive.d.ts +2 -4
  34. package/datatable/models/preferences.d.ts +1 -1
  35. package/datatable/models/table-column.d.ts +1 -1
  36. package/datatable/services/columns-manager.service.d.ts +1 -1
  37. package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +1 -3
  38. package/datatable-dynamic/datatable-dynamic-def.d.ts +3 -3
  39. package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +3 -4
  40. package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +1 -1
  41. package/datatable-dynamic/datatable-dynamic.component.d.ts +1 -4
  42. package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +3 -4
  43. package/datatable-dynamic/models/dynamic-datatable-action-menu-record.d.ts +1 -1
  44. package/dynamic/action/modal/dynamic-action-modal-def.d.ts +1 -1
  45. package/dynamic/models/dynamic-value-base-type.d.ts +1 -1
  46. package/dynamic/models/dynamic-value-evaluatable-type.d.ts +1 -1
  47. package/dynamic/models/dynamic-value-primitive.d.ts +1 -1
  48. package/dynamic/models/dynamic-value.d.ts +1 -1
  49. package/dynamic/tokens/api-config.d.ts +1 -1
  50. package/esm2020/asset-reader/asset-reader-helper.service.mjs +7 -5
  51. package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
  52. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +12 -12
  53. package/esm2020/breadcrumbs/breadcrumb.mjs +1 -1
  54. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +4 -5
  55. package/esm2020/breadcrumbs/breadcrumbs-resolver.mjs +1 -1
  56. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  57. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +7 -7
  58. package/esm2020/buttons/badge-button/badge-button.component.mjs +9 -7
  59. package/esm2020/buttons/button/button.component.mjs +12 -10
  60. package/esm2020/buttons/buttons.module.mjs +4 -4
  61. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  62. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +7 -7
  63. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  64. package/esm2020/card/card-body/card-body.component.mjs +5 -6
  65. package/esm2020/card/card-footer/card-footer.component.mjs +5 -8
  66. package/esm2020/card/card-header/card-header.component.mjs +5 -7
  67. package/esm2020/card/card.component.mjs +5 -7
  68. package/esm2020/card/card.module.mjs +4 -4
  69. package/esm2020/carousel/carousel-slide.directive.mjs +16 -0
  70. package/esm2020/carousel/carousel.component.mjs +211 -0
  71. package/esm2020/carousel/carousel.module.mjs +38 -0
  72. package/esm2020/carousel/public-api.mjs +4 -0
  73. package/esm2020/carousel/theseam-ui-common-carousel.mjs +5 -0
  74. package/esm2020/checkbox/checkbox.component.mjs +44 -45
  75. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  76. package/esm2020/checkbox/testing/checkbox.harness.mjs +1 -1
  77. package/esm2020/checkbox/testing/index.mjs +1 -1
  78. package/esm2020/confirm-dialog/confirm-click.directive.mjs +11 -11
  79. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
  80. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
  81. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
  82. package/esm2020/core/common-behaviors/active.mjs +4 -3
  83. package/esm2020/core/common-behaviors/disabled.mjs +4 -3
  84. package/esm2020/core/common-behaviors/initialized.mjs +2 -1
  85. package/esm2020/core/common-behaviors/size.mjs +6 -6
  86. package/esm2020/core/common-behaviors/tabindex.mjs +6 -5
  87. package/esm2020/core/common-behaviors/theme.mjs +6 -6
  88. package/esm2020/core/input-decorators/input-boolean.decorator.mjs +4 -5
  89. package/esm2020/core/input-decorators/input-number.decorator.mjs +4 -5
  90. package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
  91. package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
  92. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
  93. package/esm2020/data-filters/data-filter.mjs +1 -1
  94. package/esm2020/data-filters/data-filters.module.mjs +4 -4
  95. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +11 -11
  96. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +12 -12
  97. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +18 -15
  98. package/esm2020/datatable/datatable/datatable.component.mjs +114 -109
  99. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
  100. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +5 -4
  101. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +7 -8
  102. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
  103. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -5
  104. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +8 -8
  105. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
  106. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +5 -5
  107. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +5 -9
  108. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +5 -8
  109. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +5 -8
  110. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +5 -8
  111. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +5 -8
  112. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -5
  113. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
  114. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +5 -5
  115. package/esm2020/datatable/datatable.module.mjs +4 -4
  116. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +5 -6
  117. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +11 -11
  118. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
  119. package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
  120. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
  121. package/esm2020/datatable/models/columns-alteration.mjs +1 -1
  122. package/esm2020/datatable/models/columns-alterations/order.columns-alteration.mjs +3 -1
  123. package/esm2020/datatable/models/datatable-gql-data-source.mjs +1 -1
  124. package/esm2020/datatable/models/internal-column-props.mjs +1 -1
  125. package/esm2020/datatable/models/sort-item.mjs +1 -1
  126. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  127. package/esm2020/datatable/services/columns-manager.service.mjs +5 -5
  128. package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
  129. package/esm2020/datatable/services/datatable-preferences.service.mjs +7 -6
  130. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +5 -5
  131. package/esm2020/datatable/utils/map-columns-alterations-states.mjs +4 -1
  132. package/esm2020/datatable/utils/set-column-defaults.mjs +2 -2
  133. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +13 -14
  134. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +8 -8
  135. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +8 -9
  136. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.mjs +1 -1
  137. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +8 -10
  138. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
  139. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +9 -9
  140. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +7 -7
  141. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +6 -6
  142. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +11 -8
  143. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +6 -5
  144. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  145. package/esm2020/dynamic/action/modal/dynamic-action-modal-def.mjs +1 -1
  146. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  147. package/esm2020/dynamic/dynamic-value-helper.service.mjs +5 -4
  148. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  149. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +5 -5
  150. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
  151. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +9 -9
  152. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +5 -8
  153. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  154. package/esm2020/form-field/form-field-error.directive.mjs +6 -6
  155. package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
  156. package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
  157. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  158. package/esm2020/form-field/form-field.component.mjs +49 -49
  159. package/esm2020/form-field/form-field.module.mjs +4 -4
  160. package/esm2020/form-field/input.directive.mjs +49 -48
  161. package/esm2020/form-field/testing/form-field-required-indicator.harness.mjs +1 -1
  162. package/esm2020/form-field/testing/index.mjs +1 -1
  163. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +5 -7
  164. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  165. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
  166. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +96 -96
  167. package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
  168. package/esm2020/framework/base-layout/base-layout.component.mjs +7 -6
  169. package/esm2020/framework/base-layout/base-layout.module.mjs +5 -5
  170. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
  171. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
  172. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
  173. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +10 -10
  174. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
  175. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
  176. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
  177. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +5 -7
  178. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -5
  179. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +7 -7
  180. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +6 -5
  181. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +18 -18
  182. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +15 -13
  183. package/esm2020/framework/dashboard/dashboard.component.mjs +5 -5
  184. package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
  185. package/esm2020/framework/dynamic-router/dynamic-route-def.mjs +1 -1
  186. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  187. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.mjs +1 -1
  188. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +5 -6
  189. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +5 -6
  190. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
  191. package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
  192. package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
  193. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
  194. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
  195. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
  196. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
  197. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
  198. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
  199. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +5 -4
  200. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +25 -25
  201. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +5 -6
  202. package/esm2020/framework/side-nav/side-nav-utils.mjs +2 -1
  203. package/esm2020/framework/side-nav/side-nav.component.mjs +19 -20
  204. package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
  205. package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
  206. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
  207. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
  208. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +4 -6
  209. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
  210. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +5 -7
  211. package/esm2020/framework/top-bar/top-bar.component.mjs +4 -6
  212. package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
  213. package/esm2020/google-maps/google-maps/google-maps.component.mjs +36 -39
  214. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +103 -0
  215. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +25 -0
  216. package/esm2020/google-maps/google-maps-contextmenu.mjs +9 -8
  217. package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
  218. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +24 -25
  219. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +12 -12
  220. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +9 -9
  221. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +9 -9
  222. package/esm2020/google-maps/google-maps.module.mjs +4 -4
  223. package/esm2020/google-maps/google-maps.service.mjs +9 -9
  224. package/esm2020/google-maps/map-control.component.mjs +9 -9
  225. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  226. package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
  227. package/esm2020/google-maps/public-api.mjs +4 -1
  228. package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +5 -31
  229. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  230. package/esm2020/graphql/datatable/datatable-helpers.mjs +2 -2
  231. package/esm2020/graphql/datatable/map-filter-states.mjs +2 -1
  232. package/esm2020/graphql/utils/inline-variables.mjs +2 -1
  233. package/esm2020/graphql/utils/parse-hints.mjs +3 -3
  234. package/esm2020/graphql/utils/to-gql.mjs +3 -3
  235. package/esm2020/icon/icon/icon.component.mjs +5 -5
  236. package/esm2020/icon/icon-btn/icon-btn.component.mjs +24 -25
  237. package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
  238. package/esm2020/icon/icon.module.mjs +4 -4
  239. package/esm2020/icon/utils/get-known-icon.mjs +71 -71
  240. package/esm2020/layout/breakpoint-aliases.mjs +1 -1
  241. package/esm2020/layout/layout.module.mjs +4 -4
  242. package/esm2020/layout/layout.service.mjs +3 -3
  243. package/esm2020/layout/observe-media-query.mjs +1 -1
  244. package/esm2020/loading/loading/loading.component.mjs +5 -6
  245. package/esm2020/loading/loading-overlay.service.mjs +3 -3
  246. package/esm2020/loading/loading.module.mjs +4 -4
  247. package/esm2020/menu/menu-divider.component.mjs +3 -3
  248. package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
  249. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +7 -7
  250. package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
  251. package/esm2020/menu/menu-item.component.mjs +4 -5
  252. package/esm2020/menu/menu-toggle.directive.mjs +42 -42
  253. package/esm2020/menu/menu.component.mjs +15 -15
  254. package/esm2020/menu/menu.module.mjs +4 -4
  255. package/esm2020/modal/directives/modal-close.directive.mjs +11 -11
  256. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
  257. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
  258. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
  259. package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
  260. package/esm2020/modal/directives/modal.directive.mjs +5 -5
  261. package/esm2020/modal/modal/modal.component.mjs +20 -21
  262. package/esm2020/modal/modal-body/modal-body.component.mjs +5 -7
  263. package/esm2020/modal/modal-config.mjs +1 -1
  264. package/esm2020/modal/modal-container/modal-container.component.mjs +12 -12
  265. package/esm2020/modal/modal-footer/modal-footer.component.mjs +5 -7
  266. package/esm2020/modal/modal-header/modal-header.component.mjs +5 -7
  267. package/esm2020/modal/modal-ref.mjs +1 -1
  268. package/esm2020/modal/modal.module.mjs +4 -4
  269. package/esm2020/modal/modal.service.mjs +38 -35
  270. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -5
  271. package/esm2020/popover/popover/popover.component.mjs +18 -18
  272. package/esm2020/popover/popover.directive.mjs +32 -32
  273. package/esm2020/popover/popover.module.mjs +5 -5
  274. package/esm2020/progress/progress-circle/progress-circle.component.mjs +5 -5
  275. package/esm2020/progress/progress.module.mjs +4 -4
  276. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +10 -11
  277. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  278. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  279. package/esm2020/services/asset-loader.service.mjs +5 -6
  280. package/esm2020/services/font-loader.service.mjs +5 -6
  281. package/esm2020/services/router-helpers.service.mjs +3 -3
  282. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
  283. package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
  284. package/esm2020/shared/directives/click-outside.directive.mjs +9 -9
  285. package/esm2020/shared/directives/disable-control.directive.mjs +7 -7
  286. package/esm2020/shared/directives/elem-resized.directive.mjs +5 -5
  287. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +10 -10
  288. package/esm2020/shared/directives/hover-class.directive.mjs +9 -9
  289. package/esm2020/shared/directives/ng-select-extra.directive.mjs +29 -29
  290. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +11 -11
  291. package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
  292. package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
  293. package/esm2020/shared/shared.module.mjs +4 -4
  294. package/esm2020/storage/local-storage.service.mjs +8 -8
  295. package/esm2020/storage/localstorage-memory.mjs +4 -4
  296. package/esm2020/story-helpers/arg-type-helpers.mjs +1 -1
  297. package/esm2020/story-helpers/initial-route.service.mjs +3 -3
  298. package/esm2020/story-helpers/on-story-bootstrapped-trigger.mjs +2 -1
  299. package/esm2020/story-helpers/public-api.mjs +2 -2
  300. package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
  301. package/esm2020/story-helpers/story-empty.component.mjs +3 -3
  302. package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
  303. package/esm2020/story-helpers/story-initial-route.mjs +4 -4
  304. package/esm2020/story-helpers/story-modal-container.component.mjs +6 -6
  305. package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
  306. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +5 -5
  307. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +5 -4
  308. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +5 -7
  309. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +5 -6
  310. package/esm2020/tabbed/tabbed.component.mjs +13 -13
  311. package/esm2020/tabbed/tabbed.module.mjs +4 -4
  312. package/esm2020/tabbed/tabbed.service.mjs +5 -5
  313. package/esm2020/table/table/table.component.mjs +12 -13
  314. package/esm2020/table/table.module.mjs +4 -4
  315. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +5 -5
  316. package/esm2020/table-cell-type/table-cell-type-export-props.mjs +1 -1
  317. package/esm2020/table-cell-type/table-cell-type-models.mjs +1 -1
  318. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +5 -6
  319. package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
  320. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +12 -12
  321. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +8 -12
  322. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +14 -14
  323. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +37 -37
  324. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +14 -14
  325. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +8 -9
  326. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +11 -10
  327. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +7 -8
  328. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +30 -27
  329. package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
  330. package/esm2020/tel-input/intl-tel-input.mjs +2 -2
  331. package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
  332. package/esm2020/tel-input/tel-input/tel-input.component.mjs +35 -36
  333. package/esm2020/tel-input/tel-input.directive.mjs +18 -18
  334. package/esm2020/tel-input/tel-input.module.mjs +4 -4
  335. package/esm2020/tel-input/utils/add-country-code.mjs +4 -4
  336. package/esm2020/tel-input/utils/process-country-codes.mjs +4 -7
  337. package/esm2020/testing/story-expect.mjs +2 -1
  338. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +21 -22
  339. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +6 -7
  340. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +6 -7
  341. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
  342. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
  343. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
  344. package/esm2020/tiled-select/testing/index.mjs +1 -1
  345. package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
  346. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +5 -8
  347. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
  348. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
  349. package/esm2020/toggle-edit/toggle-edit.component.mjs +19 -19
  350. package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
  351. package/esm2020/toggle-group/toggle-group-option.directive.mjs +12 -12
  352. package/esm2020/toggle-group/toggle-group.directive.mjs +6 -6
  353. package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
  354. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +5 -5
  355. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +5 -8
  356. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +5 -4
  357. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  358. package/esm2020/utils/array-move.mjs +1 -1
  359. package/esm2020/utils/cdk/get-closest-widget-cdk-drag.mjs +3 -3
  360. package/esm2020/utils/file-utils.mjs +2 -2
  361. package/esm2020/utils/form/get-control-path.mjs +6 -5
  362. package/esm2020/utils/geo-json/geo-json-to-area.mjs +3 -3
  363. package/esm2020/utils/geo-json/is-only-geometry-types.validator.mjs +1 -1
  364. package/esm2020/utils/geo-json/min-max-points.validator.mjs +5 -5
  365. package/esm2020/utils/geo-json/read-geo-file.mjs +3 -2
  366. package/esm2020/utils/has-property.mjs +2 -2
  367. package/esm2020/utils/load-style-sheet.mjs +2 -2
  368. package/esm2020/utils/load-style.mjs +2 -2
  369. package/esm2020/utils/obj-utils.mjs +2 -2
  370. package/esm2020/utils/polling-ticker.mjs +2 -2
  371. package/esm2020/utils/router/operators/activated-routes-with-data-property.mjs +2 -2
  372. package/esm2020/utils/router/route-snapshot-path-full.mjs +2 -2
  373. package/esm2020/utils/router/route-snapshot-path-relative.mjs +2 -2
  374. package/esm2020/utils/router/will-have-data-prop.mjs +3 -3
  375. package/esm2020/utils/subscriber-count.mjs +2 -1
  376. package/esm2020/utils/toggle-attribute.mjs +6 -5
  377. package/esm2020/utils/wait-on-condition-async.mjs +5 -5
  378. package/esm2020/vertical-list-filter/public-api.mjs +3 -0
  379. package/esm2020/vertical-list-filter/testing/index.mjs +2 -0
  380. package/esm2020/vertical-list-filter/testing/vertical-list-filter.harness.mjs +28 -0
  381. package/esm2020/vertical-list-filter/theseam-ui-common-vertical-list-filter.mjs +5 -0
  382. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +52 -0
  383. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +37 -37
  384. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
  385. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +11 -10
  386. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  387. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +39 -38
  388. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
  389. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +15 -15
  390. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
  391. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
  392. package/esm2020/widget/widget/widget.component.mjs +3 -3
  393. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +5 -8
  394. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
  395. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +5 -8
  396. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
  397. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
  398. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
  399. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +9 -10
  400. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
  401. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +5 -7
  402. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
  403. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +5 -8
  404. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
  405. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +5 -5
  406. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
  407. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
  408. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -19
  409. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +5 -7
  410. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
  411. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +5 -5
  412. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
  413. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +6 -9
  414. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +9 -10
  415. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +5 -8
  416. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +5 -5
  417. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +17 -16
  418. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +10 -10
  419. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +5 -8
  420. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
  421. package/esm2020/widget/widget-footer/widget-footer.component.mjs +5 -7
  422. package/esm2020/widget/widget-registry.service.mjs +6 -5
  423. package/esm2020/widget/widget.module.mjs +7 -7
  424. package/fesm2015/theseam-ui-common-asset-reader.mjs +21 -19
  425. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +13 -14
  427. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-buttons.mjs +32 -28
  429. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-card.mjs +23 -31
  431. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-carousel.mjs +265 -0
  433. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -0
  434. package/fesm2015/theseam-ui-common-checkbox.mjs +47 -48
  435. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +20 -20
  437. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-core.mjs +28 -26
  439. package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  441. package/fesm2015/theseam-ui-common-data-filters.mjs +42 -39
  442. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  443. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +55 -59
  444. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  445. package/fesm2015/theseam-ui-common-datatable.mjs +229 -237
  446. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  447. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  448. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  449. package/fesm2015/theseam-ui-common-dynamic.mjs +36 -26
  450. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  451. package/fesm2015/theseam-ui-common-footer-bar.mjs +8 -11
  452. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  453. package/fesm2015/theseam-ui-common-form-field-error.mjs +109 -111
  454. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  455. package/fesm2015/theseam-ui-common-form-field.mjs +114 -113
  456. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  457. package/fesm2015/theseam-ui-common-framework.mjs +216 -223
  458. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  459. package/fesm2015/theseam-ui-common-google-maps.mjs +246 -126
  460. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-graphql.mjs +14 -38
  462. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-icon.mjs +104 -105
  464. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-layout.mjs +7 -7
  466. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  467. package/fesm2015/theseam-ui-common-loading.mjs +11 -12
  468. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  469. package/fesm2015/theseam-ui-common-menu.mjs +79 -80
  470. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  471. package/fesm2015/theseam-ui-common-modal.mjs +112 -117
  472. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  473. package/fesm2015/theseam-ui-common-popover.mjs +52 -52
  474. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  475. package/fesm2015/theseam-ui-common-progress.mjs +8 -8
  476. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  477. package/fesm2015/theseam-ui-common-scrollbar.mjs +16 -17
  478. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  479. package/fesm2015/theseam-ui-common-services.mjs +11 -13
  480. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  481. package/fesm2015/theseam-ui-common-shared.mjs +89 -89
  482. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  483. package/fesm2015/theseam-ui-common-storage.mjs +10 -10
  484. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  485. package/fesm2015/theseam-ui-common-story-helpers.mjs +27 -102
  486. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  487. package/fesm2015/theseam-ui-common-tabbed.mjs +36 -38
  488. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  489. package/fesm2015/theseam-ui-common-table-cell-type.mjs +12 -13
  490. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  491. package/fesm2015/theseam-ui-common-table-cell-types.mjs +136 -138
  492. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  493. package/fesm2015/theseam-ui-common-table.mjs +15 -16
  494. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  495. package/fesm2015/theseam-ui-common-tel-input.mjs +67 -71
  496. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  497. package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
  498. package/fesm2015/theseam-ui-common-tiled-select.mjs +43 -46
  499. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  500. package/fesm2015/theseam-ui-common-toggle-edit.mjs +32 -35
  501. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  502. package/fesm2015/theseam-ui-common-toggle-group.mjs +20 -20
  503. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  504. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  505. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  506. package/fesm2015/theseam-ui-common-utils.mjs +36 -32
  507. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  508. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +96 -0
  509. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  510. package/fesm2015/theseam-ui-common-viewers.mjs +95 -93
  511. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  512. package/fesm2015/theseam-ui-common-widget.mjs +182 -209
  513. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  514. package/fesm2020/theseam-ui-common-asset-reader.mjs +21 -19
  515. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  516. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +13 -14
  517. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  518. package/fesm2020/theseam-ui-common-buttons.mjs +32 -28
  519. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  520. package/fesm2020/theseam-ui-common-card.mjs +23 -31
  521. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  522. package/fesm2020/theseam-ui-common-carousel.mjs +265 -0
  523. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -0
  524. package/fesm2020/theseam-ui-common-checkbox.mjs +47 -48
  525. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  526. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +20 -20
  527. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  528. package/fesm2020/theseam-ui-common-core.mjs +28 -26
  529. package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
  530. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  531. package/fesm2020/theseam-ui-common-data-filters.mjs +42 -39
  532. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +55 -59
  534. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-datatable.mjs +229 -237
  536. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +12 -12
  538. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-dynamic.mjs +36 -26
  540. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-footer-bar.mjs +8 -11
  542. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-form-field-error.mjs +109 -111
  544. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-form-field.mjs +114 -113
  546. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-framework.mjs +216 -223
  548. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-google-maps.mjs +243 -126
  550. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-graphql.mjs +14 -38
  552. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  553. package/fesm2020/theseam-ui-common-icon.mjs +104 -105
  554. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  555. package/fesm2020/theseam-ui-common-layout.mjs +16 -8
  556. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  557. package/fesm2020/theseam-ui-common-loading.mjs +11 -12
  558. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  559. package/fesm2020/theseam-ui-common-menu.mjs +77 -78
  560. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  561. package/fesm2020/theseam-ui-common-modal.mjs +112 -117
  562. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  563. package/fesm2020/theseam-ui-common-models.mjs +2 -1
  564. package/fesm2020/theseam-ui-common-models.mjs.map +1 -1
  565. package/fesm2020/theseam-ui-common-popover.mjs +52 -52
  566. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  567. package/fesm2020/theseam-ui-common-progress.mjs +8 -8
  568. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  569. package/fesm2020/theseam-ui-common-scrollbar.mjs +16 -17
  570. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  571. package/fesm2020/theseam-ui-common-services.mjs +11 -13
  572. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  573. package/fesm2020/theseam-ui-common-shared.mjs +89 -89
  574. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  575. package/fesm2020/theseam-ui-common-storage.mjs +10 -10
  576. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  577. package/fesm2020/theseam-ui-common-story-helpers.mjs +27 -98
  578. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  579. package/fesm2020/theseam-ui-common-tabbed.mjs +36 -38
  580. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  581. package/fesm2020/theseam-ui-common-table-cell-type.mjs +12 -13
  582. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  583. package/fesm2020/theseam-ui-common-table-cell-types.mjs +136 -138
  584. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  585. package/fesm2020/theseam-ui-common-table.mjs +15 -16
  586. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  587. package/fesm2020/theseam-ui-common-tel-input.mjs +65 -69
  588. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  589. package/fesm2020/theseam-ui-common-testing.mjs +1 -0
  590. package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
  591. package/fesm2020/theseam-ui-common-tiled-select.mjs +43 -46
  592. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  593. package/fesm2020/theseam-ui-common-toggle-edit.mjs +32 -35
  594. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  595. package/fesm2020/theseam-ui-common-toggle-group.mjs +20 -20
  596. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  597. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
  598. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  599. package/fesm2020/theseam-ui-common-utils.mjs +36 -32
  600. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  601. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +87 -0
  602. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
  603. package/fesm2020/theseam-ui-common-viewers.mjs +95 -93
  604. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  605. package/fesm2020/theseam-ui-common-widget.mjs +182 -209
  606. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  607. package/footer-bar/footer-bar/footer-bar.component.d.ts +1 -4
  608. package/form-field-error/form-field-error/form-field-error.component.d.ts +1 -4
  609. package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +2 -3
  610. package/framework/base-layout/base-layout-action.d.ts +1 -1
  611. package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +2 -4
  612. package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +2 -3
  613. package/framework/dashboard/dashboard.component.d.ts +0 -1
  614. package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +2 -3
  615. package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +0 -1
  616. package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +1 -1
  617. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +2 -4
  618. package/framework/side-nav/side-nav.models.d.ts +1 -1
  619. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -5
  620. package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +1 -4
  621. package/framework/top-bar/top-bar.component.d.ts +2 -4
  622. package/google-maps/google-maps/google-maps.component.d.ts +3 -6
  623. package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +73 -0
  624. package/google-maps/google-maps-api-loader/noop-google-maps-api-loader.d.ts +13 -0
  625. package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +2 -3
  626. package/google-maps/map-value-manager.service.d.ts +1 -1
  627. package/google-maps/public-api.d.ts +3 -0
  628. package/graphql/datatable/datatable-graphql-query-ref.d.ts +2 -3
  629. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  630. package/graphql/datatable/datatable-helpers.d.ts +2 -2
  631. package/graphql/datatable/map-filter-states.d.ts +2 -2
  632. package/graphql/datatable/map-page-info.d.ts +1 -1
  633. package/graphql/datatable/mapper-context.d.ts +1 -1
  634. package/graphql/models/gql-datatable-accessor.d.ts +1 -1
  635. package/graphql/models/hint-transformer.d.ts +1 -1
  636. package/icon/icon/icon.component.d.ts +1 -1
  637. package/icon/icon-btn/icon-btn.component.d.ts +2 -3
  638. package/icon/icon.d.ts +1 -1
  639. package/layout/breakpoint-aliases.d.ts +1 -1
  640. package/loading/loading/loading.component.d.ts +1 -4
  641. package/loading/loading.models.d.ts +1 -1
  642. package/menu/menu-item.component.d.ts +2 -3
  643. package/modal/modal/modal.component.d.ts +3 -4
  644. package/modal/modal-body/modal-body.component.d.ts +1 -4
  645. package/modal/modal-config.d.ts +1 -1
  646. package/modal/modal-footer/modal-footer.component.d.ts +1 -4
  647. package/modal/modal-header/modal-header.component.d.ts +1 -4
  648. package/modal/route-modal/route-modal.component.d.ts +2 -3
  649. package/models/component-type.d.ts +1 -1
  650. package/models/size-prefixes.d.ts +1 -1
  651. package/models/size-types.d.ts +1 -1
  652. package/models/theme-prefixes.d.ts +1 -1
  653. package/models/theme-types.d.ts +2 -2
  654. package/package.json +17 -1
  655. package/progress/progress-circle/progress-circle.component.d.ts +0 -1
  656. package/scrollbar/overlay-scrollbar.directive.d.ts +2 -3
  657. package/scrollbar/overlay-scrollbars-config-model.d.ts +1 -1
  658. package/services/asset-loader.service.d.ts +0 -1
  659. package/services/font-loader.service.d.ts +1 -2
  660. package/story-helpers/public-api.d.ts +0 -1
  661. package/tabbed/directives/tabbed-tab-content.directive.d.ts +0 -1
  662. package/tabbed/tabbed-content/tabbed-content.component.d.ts +1 -4
  663. package/tabbed/tabbed-item/tabbed-item.component.d.ts +2 -4
  664. package/tabbed/tabbed.service.d.ts +0 -1
  665. package/table/table/table.component.d.ts +3 -4
  666. package/table-cell-type/table-cell-type-models.d.ts +4 -4
  667. package/table-cell-type/table-cell-type-name.d.ts +1 -1
  668. package/table-cell-type/table-cell-type-selector.component.d.ts +3 -4
  669. package/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.d.ts +1 -1
  670. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.d.ts +2 -3
  671. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.d.ts +1 -1
  672. package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +2 -3
  673. package/table-cell-types/table-cell-type-date/table-cell-type-date.d.ts +1 -1
  674. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +1 -1
  675. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.d.ts +2 -3
  676. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.d.ts +1 -1
  677. package/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.d.ts +1 -1
  678. package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +3 -4
  679. package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +1 -1
  680. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.d.ts +2 -3
  681. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.d.ts +1 -1
  682. package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +2 -3
  683. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.d.ts +1 -1
  684. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +2 -3
  685. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.d.ts +1 -1
  686. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +2 -3
  687. package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +1 -1
  688. package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +1 -1
  689. package/tel-input/utils/coerce-phone-number-format.d.ts +1 -1
  690. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +3 -4
  691. package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +1 -4
  692. package/tiled-select/tiled-select.models.d.ts +2 -2
  693. package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +1 -4
  694. package/toggle-group/toggle-group.directive.d.ts +0 -1
  695. package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +1 -4
  696. package/utils/obj-utils.d.ts +2 -2
  697. package/utils/polling-ticker.d.ts +1 -1
  698. package/utils/subscriber-count.d.ts +1 -1
  699. package/vertical-list-filter/index.d.ts +5 -0
  700. package/vertical-list-filter/public-api.d.ts +2 -0
  701. package/vertical-list-filter/testing/index.d.ts +1 -0
  702. package/vertical-list-filter/testing/vertical-list-filter.harness.d.ts +9 -0
  703. package/vertical-list-filter/vertical-list-filter.component.d.ts +17 -0
  704. package/widget/directives/widget-drag-handle.directive.d.ts +1 -1
  705. package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +1 -4
  706. package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +1 -4
  707. package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +2 -3
  708. package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +1 -4
  709. package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +1 -4
  710. package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +2 -3
  711. package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +4 -7
  712. package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +1 -4
  713. package/widget/widget-content-components/widget-table/widget-table.component.d.ts +0 -1
  714. package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +1 -4
  715. package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +2 -3
  716. package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +1 -4
  717. package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +1 -4
  718. package/widget/widget-footer/widget-footer.component.d.ts +1 -4
  719. package/esm2020/story-helpers/args-to-tpl.mjs +0 -72
  720. package/story-helpers/args-to-tpl.d.ts +0 -24
@@ -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.4", ngImport: i0, type: FormFieldErrorListItemTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
17
- FormFieldErrorListItemTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: FormFieldErrorListItemTplDirective, selector: "[seamFormFieldErrorListItemTpl]", inputs: { validatorName: "validatorName", external: "external" }, ngImport: i0 });
16
+ FormFieldErrorListItemTplDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorListItemTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
17
+ FormFieldErrorListItemTplDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", 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.4", ngImport: i0, type: FormFieldErrorListItemTplDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", 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.4", ngImport: i0, type: FormFieldErrorListItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
38
- FormFieldErrorListItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: FormFieldErrorListItemDirective, selector: "[seamFormFieldErrorListItem]", inputs: { validatorName: "validatorName" }, ngImport: i0 });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FormFieldErrorListItemDirective, decorators: [{
37
+ FormFieldErrorListItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorListItemDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
38
+ FormFieldErrorListItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: FormFieldErrorListItemDirective, selector: "[seamFormFieldErrorListItem]", inputs: { validatorName: "validatorName" }, ngImport: i0 });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorListItemDirective, decorators: [{
40
40
  type: Directive,
41
41
  args: [{
42
42
  selector: '[seamFormFieldErrorListItem]'
@@ -49,18 +49,16 @@ class FormFieldErrorComponent {
49
49
  constructor() {
50
50
  this.showValidatorName = false;
51
51
  }
52
- ngOnInit() {
53
- }
54
52
  }
55
- FormFieldErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FormFieldErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
- FormFieldErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", 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.9", ngImport: i0, type: FormFieldErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
+ FormFieldErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", 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"] }] });
57
55
  __decorate([
58
56
  InputBoolean()
59
57
  ], FormFieldErrorComponent.prototype, "showValidatorName", void 0);
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FormFieldErrorComponent, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorComponent, decorators: [{
61
59
  type: Component,
62
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"] }]
63
- }], ctorParameters: function () { return []; }, propDecorators: { validatorName: [{
61
+ }], propDecorators: { validatorName: [{
64
62
  type: Input
65
63
  }], message: [{
66
64
  type: Input
@@ -75,6 +73,94 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
75
73
  * TODO: Cleanup remaining code from before refactor.
76
74
  */
77
75
  class FormFieldErrorListComponent {
76
+ get _display() {
77
+ return this.showErrors ? 'block' : 'none';
78
+ }
79
+ set errors(records) {
80
+ // if (val instanceof Array) {
81
+ // this._errors = val
82
+ // } else {
83
+ // const errs = []
84
+ // for (const k in val) {
85
+ // if (val[k]) {
86
+ // const err = val[k]
87
+ // const newErr = {
88
+ // validatorName: k,
89
+ // error: err,
90
+ // message: '',
91
+ // template: err.template,
92
+ // external: !!err.external
93
+ // }
94
+ // if (err.message) {
95
+ // const msgTmp = err.message
96
+ // if (typeof msgTmp === 'string') {
97
+ // newErr.message = msgTmp
98
+ // } else if (typeof msgTmp === 'function') {
99
+ // newErr.message = msgTmp(err)
100
+ // }
101
+ // } else if (FormFieldErrorListComponent.defaultMessages[k]) {
102
+ // const defaultMsg = FormFieldErrorListComponent.defaultMessages[k]
103
+ // if (typeof defaultMsg === 'string') {
104
+ // newErr.message = defaultMsg
105
+ // } else if (typeof defaultMsg === 'function') {
106
+ // newErr.message = defaultMsg(err)
107
+ // }
108
+ // }
109
+ // errs.push(newErr)
110
+ // }
111
+ // }
112
+ // this._errors = errs
113
+ // }
114
+ this._initErrorInput(records || []);
115
+ }
116
+ // private errorTpl: TemplateRef<any>
117
+ // private _listItemTpls: QueryList<FormFieldErrorListItemTplDirective>
118
+ // private listItemTplsObj = {}
119
+ set _listItemTpls(val) {
120
+ this._initErrorTemplates(val);
121
+ }
122
+ set listItemTpls(val) {
123
+ this._initErrorTemplates(val);
124
+ // for (const v of val.toArray()) {
125
+ // if (v.validatorName !== undefined) {
126
+ // this.listItemTplsObj[v.validatorName] = v
127
+ // }
128
+ // }
129
+ // const tmp = val.find(v => v.validatorName === undefined)
130
+ // if (tmp) {
131
+ // this.errorTpl = tmp.template
132
+ // }
133
+ // this._listItemTpls = val
134
+ }
135
+ get control() { return this._control; }
136
+ set control(value) {
137
+ this._control = value;
138
+ if (value) {
139
+ this._initControlListeners(value);
140
+ }
141
+ }
142
+ set showErrors(val) {
143
+ this._showErrors = val;
144
+ }
145
+ get showErrors() {
146
+ let show = this._showErrors;
147
+ if (show && this.control) {
148
+ if (this.numPaddingErrors > 0) {
149
+ show = true;
150
+ }
151
+ else {
152
+ show = !!(this.control.invalid && (this.control.dirty || this.control.touched));
153
+ }
154
+ }
155
+ return show;
156
+ }
157
+ get showControlErrors() {
158
+ let show = false;
159
+ if (this.control && this.showErrors) {
160
+ show = !!(this.control.invalid && (this.control.dirty || this.control.touched));
161
+ }
162
+ return show;
163
+ }
78
164
  constructor() {
79
165
  this._defaultMessages = {
80
166
  // required: () => 'Required',
@@ -161,6 +247,7 @@ class FormFieldErrorListComponent {
161
247
  .pipe(map(records => {
162
248
  let resultRecords = [];
163
249
  if (!this.showErrors) {
250
+ // TODO: Implement
164
251
  }
165
252
  else {
166
253
  let errs = [...records];
@@ -185,95 +272,6 @@ class FormFieldErrorListComponent {
185
272
  }))
186
273
  .pipe(shareReplay(1));
187
274
  }
188
- get _display() {
189
- return this.showErrors ? 'block' : 'none';
190
- }
191
- set errors(records) {
192
- // if (val instanceof Array) {
193
- // this._errors = val
194
- // } else {
195
- // const errs = []
196
- // for (const k in val) {
197
- // if (val[k]) {
198
- // const err = val[k]
199
- // const newErr = {
200
- // validatorName: k,
201
- // error: err,
202
- // message: '',
203
- // template: err.template,
204
- // external: !!err.external
205
- // }
206
- // if (err.message) {
207
- // const msgTmp = err.message
208
- // if (typeof msgTmp === 'string') {
209
- // newErr.message = msgTmp
210
- // } else if (typeof msgTmp === 'function') {
211
- // newErr.message = msgTmp(err)
212
- // }
213
- // } else if (FormFieldErrorListComponent.defaultMessages[k]) {
214
- // const defaultMsg = FormFieldErrorListComponent.defaultMessages[k]
215
- // if (typeof defaultMsg === 'string') {
216
- // newErr.message = defaultMsg
217
- // } else if (typeof defaultMsg === 'function') {
218
- // newErr.message = defaultMsg(err)
219
- // }
220
- // }
221
- // errs.push(newErr)
222
- // }
223
- // }
224
- // this._errors = errs
225
- // }
226
- this._initErrorInput(records || []);
227
- }
228
- // private errorTpl: TemplateRef<any>
229
- // private _listItemTpls: QueryList<FormFieldErrorListItemTplDirective>
230
- // private listItemTplsObj = {}
231
- set _listItemTpls(val) {
232
- this._initErrorTemplates(val);
233
- }
234
- set listItemTpls(val) {
235
- this._initErrorTemplates(val);
236
- // for (const v of val.toArray()) {
237
- // if (v.validatorName !== undefined) {
238
- // this.listItemTplsObj[v.validatorName] = v
239
- // }
240
- // }
241
- // const tmp = val.find(v => v.validatorName === undefined)
242
- // if (tmp) {
243
- // this.errorTpl = tmp.template
244
- // }
245
- // this._listItemTpls = val
246
- }
247
- get control() { return this._control; }
248
- set control(value) {
249
- this._control = value;
250
- if (value) {
251
- this._initControlListeners(value);
252
- }
253
- }
254
- set showErrors(val) {
255
- this._showErrors = val;
256
- }
257
- get showErrors() {
258
- let show = this._showErrors;
259
- if (show && this.control) {
260
- if (this.numPaddingErrors > 0) {
261
- show = true;
262
- }
263
- else {
264
- show = !!(this.control.invalid && (this.control.dirty || this.control.touched));
265
- }
266
- }
267
- return show;
268
- }
269
- get showControlErrors() {
270
- let show = false;
271
- if (this.control && this.showErrors) {
272
- show = !!(this.control.invalid && (this.control.dirty || this.control.touched));
273
- }
274
- return show;
275
- }
276
- ngOnInit() { }
277
275
  ngOnDestroy() {
278
276
  this._valueChangeSub.unsubscribe();
279
277
  this._errorTplsChangeSub.unsubscribe();
@@ -298,7 +296,7 @@ class FormFieldErrorListComponent {
298
296
  _updateControlErrors(errors) {
299
297
  const errs = [];
300
298
  for (const validatorName in errors) {
301
- if (errors.hasOwnProperty(validatorName)) {
299
+ if (Object.prototype.hasOwnProperty.call(errors, validatorName)) {
302
300
  const error = errors[validatorName];
303
301
  const message = this._parseMessage(this._defaultMessages[validatorName], error);
304
302
  const external = false;
@@ -382,7 +380,7 @@ class FormFieldErrorListComponent {
382
380
  }
383
381
  }
384
382
  for (const validatorName in errsMap) {
385
- if (errsMap.hasOwnProperty(validatorName)) {
383
+ if (Object.prototype.hasOwnProperty.call(errsMap, validatorName)) {
386
384
  errs.push(errsMap[validatorName]);
387
385
  }
388
386
  }
@@ -401,7 +399,7 @@ class FormFieldErrorListComponent {
401
399
  }
402
400
  const arr = validatorName.split(' ').filter(v => v.trim().length > 0);
403
401
  for (const item of arr) {
404
- if (errors.hasOwnProperty(item)) {
402
+ if (Object.prototype.hasOwnProperty.call(errors, item)) {
405
403
  return true;
406
404
  }
407
405
  }
@@ -414,9 +412,9 @@ FormFieldErrorListComponent.defaultMessages = {
414
412
  // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,
415
413
  // pattern: (params) => 'The required pattern is: ' + params.requiredPattern
416
414
  };
417
- FormFieldErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FormFieldErrorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
418
- FormFieldErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", 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" }] });
419
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FormFieldErrorListComponent, decorators: [{
415
+ FormFieldErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
416
+ FormFieldErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", 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" }] });
417
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormFieldErrorListComponent, decorators: [{
420
418
  type: Component,
421
419
  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" }]
422
420
  }], ctorParameters: function () { return []; }, propDecorators: { _display: [{
@@ -443,16 +441,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
443
441
 
444
442
  class TheSeamFormFieldErrorModule {
445
443
  }
446
- TheSeamFormFieldErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFormFieldErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
447
- TheSeamFormFieldErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFormFieldErrorModule, declarations: [FormFieldErrorComponent,
444
+ TheSeamFormFieldErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFormFieldErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
445
+ TheSeamFormFieldErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFormFieldErrorModule, declarations: [FormFieldErrorComponent,
448
446
  FormFieldErrorListComponent,
449
447
  FormFieldErrorListItemDirective,
450
448
  FormFieldErrorListItemTplDirective], imports: [CommonModule], exports: [FormFieldErrorComponent,
451
449
  FormFieldErrorListComponent,
452
450
  FormFieldErrorListItemDirective,
453
451
  FormFieldErrorListItemTplDirective] });
454
- TheSeamFormFieldErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFormFieldErrorModule, imports: [CommonModule] });
455
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFormFieldErrorModule, decorators: [{
452
+ TheSeamFormFieldErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFormFieldErrorModule, imports: [CommonModule] });
453
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamFormFieldErrorModule, decorators: [{
456
454
  type: NgModule,
457
455
  args: [{
458
456
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-form-field-error.mjs","sources":["../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.ts","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list-item.directive.ts","../../../projects/ui-common/form-field-error/form-field-error/form-field-error.component.ts","../../../projects/ui-common/form-field-error/form-field-error/form-field-error.component.html","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list.component.ts","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list.component.html","../../../projects/ui-common/form-field-error/form-field-error.module.ts","../../../projects/ui-common/form-field-error/theseam-ui-common-form-field-error.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion'\nimport { Directive, Input, TemplateRef } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Directive({\n selector: '[seamFormFieldErrorListItemTpl]'\n})\nexport class FormFieldErrorListItemTplDirective {\n static ngAcceptInputType_external: BooleanInput\n\n @Input() validatorName: string | undefined | null\n\n @Input() @InputBoolean() external: boolean = false\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Directive, Input, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldErrorListItem]'\n})\nexport class FormFieldErrorListItemDirective {\n\n @Input() validatorName: string | undefined | null\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Component, Input, OnInit } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Component({\n selector: 'seam-form-field-error',\n templateUrl: './form-field-error.component.html',\n styleUrls: ['./form-field-error.component.scss']\n})\nexport class FormFieldErrorComponent implements OnInit {\n\n @Input() validatorName: string | undefined | null\n @Input() message: string | undefined | null\n\n @Input() @InputBoolean() showValidatorName: boolean = false\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","<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","import { Component, ContentChildren, DoCheck, HostBinding, Input, OnDestroy, OnInit, QueryList, TemplateRef } from '@angular/core'\nimport { AbstractControl, AbstractControlDirective, ValidationErrors } from '@angular/forms'\nimport { BehaviorSubject, combineLatest, Observable, Subscription } from 'rxjs'\nimport { distinctUntilChanged, map, shareReplay, startWith } from 'rxjs/operators'\n\nimport { FormFieldErrorListItemTplDirective } from './form-field-error-list-item-tpl.directive'\n\nexport interface IErrorRecord {\n validatorName: string\n error: any,\n message?: string\n template?: TemplateRef<any>\n\n external?: boolean\n\n _errors?: ValidationErrors\n}\n\n/**\n * NOTE: This class has some issues with filtering duplicate validators. The\n * inputs will be cleaned up soon to fix the input confusion.\n *\n * TODO: Cleanup remaining code from before refactor.\n */\n@Component({\n selector: 'seam-form-field-error-list',\n templateUrl: './form-field-error-list.component.html',\n styleUrls: ['./form-field-error-list.component.scss']\n})\nexport class FormFieldErrorListComponent implements OnInit, OnDestroy, DoCheck {\n\n @HostBinding('style.display') get _display() {\n return this.showErrors ? 'block' : 'none'\n }\n\n private static readonly defaultMessages: { [name: string]: ((params: any) => string) | (() => string) } = {\n // required: () => 'Required',\n // minlength: (params) => 'The min number of characters is ' + params.requiredLength,\n // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,\n // pattern: (params) => 'The required pattern is: ' + params.requiredPattern\n }\n\n private readonly _defaultMessages: { [name: string]: ((params: any) => string) | (() => string) } = {\n // required: () => 'Required',\n // minlength: (params) => 'The min number of characters is ' + params.requiredLength,\n // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,\n // pattern: (params) => 'The required pattern is: ' + params.requiredPattern\n }\n\n private _errors: any[] = []\n\n public _paddingErrors = []\n\n @Input()\n set errors(records: IErrorRecord[] | undefined | null) {\n // if (val instanceof Array) {\n // this._errors = val\n // } else {\n // const errs = []\n // for (const k in val) {\n // if (val[k]) {\n // const err = val[k]\n // const newErr = {\n // validatorName: k,\n // error: err,\n // message: '',\n // template: err.template,\n // external: !!err.external\n // }\n\n // if (err.message) {\n // const msgTmp = err.message\n // if (typeof msgTmp === 'string') {\n // newErr.message = msgTmp\n // } else if (typeof msgTmp === 'function') {\n // newErr.message = msgTmp(err)\n // }\n // } else if (FormFieldErrorListComponent.defaultMessages[k]) {\n // const defaultMsg = FormFieldErrorListComponent.defaultMessages[k]\n // if (typeof defaultMsg === 'string') {\n // newErr.message = defaultMsg\n // } else if (typeof defaultMsg === 'function') {\n // newErr.message = defaultMsg(err)\n // }\n // }\n\n // errs.push(newErr)\n // }\n // }\n // this._errors = errs\n // }\n\n this._initErrorInput(records || [])\n }\n\n // get errors() {\n // let errs = []\n\n // if (this._errors) {\n // if (!this.messages) {\n // errs = this._errors\n // } else {\n // errs = this._errors.map(err => {\n // if (this.messages && err.validatorName && this.messages[err.validatorName]) {\n // return Object.assign({}, err, {\n // message: this.messages[err.validatorName]\n // })\n // } else {\n // return err\n // }\n // })\n // }\n // }\n\n // if (this.control) {\n // for (const key in this.control.errors) {\n // if (this.control.errors[key]) {\n // const err = this.control.errors[key]\n\n // const newErr = {\n // validatorName: key,\n // error: err,\n // message: '',\n // external: false\n // }\n\n // if (FormFieldErrorListComponent.defaultMessages[key]) {\n // const defaultMsg = FormFieldErrorListComponent.defaultMessages[key]\n // if (typeof defaultMsg === 'string') {\n // newErr.message = defaultMsg\n // } else if (typeof defaultMsg === 'function') {\n // newErr.message = defaultMsg(err)\n // }\n // }\n\n // errs = [ ...errs, newErr ]\n // }\n // }\n // }\n\n // if (this.maxErrors >= 0) {\n // errs = errs.slice(0, this.maxErrors)\n // }\n\n // const count = this.showControlErrors ? this.numPaddingErrors - errs.length : this.numPaddingErrors\n // if (count > 0) {\n // this._paddingErrors = []\n // for (let i = 0; i < count; i++) {\n // this._paddingErrors.push({ validatorName: '__padding__', error: {}, message: '', external: false })\n // }\n // } else {\n // this._paddingErrors = []\n // }\n\n // return errs\n // }\n\n // @Input() messages: any = {}\n @Input() showValidatorName = false\n\n @Input() numPaddingErrors = 1\n\n // private errorTpl: TemplateRef<any>\n\n // private _listItemTpls: QueryList<FormFieldErrorListItemTplDirective>\n // private listItemTplsObj = {}\n\n @ContentChildren(FormFieldErrorListItemTplDirective)\n set _listItemTpls(val: QueryList<FormFieldErrorListItemTplDirective>) {\n this._initErrorTemplates(val)\n }\n\n @Input()\n set listItemTpls(val: QueryList<FormFieldErrorListItemTplDirective>) {\n this._initErrorTemplates(val)\n\n // for (const v of val.toArray()) {\n // if (v.validatorName !== undefined) {\n // this.listItemTplsObj[v.validatorName] = v\n // }\n // }\n\n // const tmp = val.find(v => v.validatorName === undefined)\n // if (tmp) {\n // this.errorTpl = tmp.template\n // }\n\n // this._listItemTpls = val\n }\n\n // get listItemTpls(): QueryList<FormFieldErrorListItemTplDirective> {\n // return this._listItemTpls\n // }\n\n @Input() maxErrors = -1\n\n @Input()\n get control(): AbstractControlDirective | AbstractControl | undefined | null { return this._control }\n set control(value: AbstractControlDirective | AbstractControl | undefined | null) {\n this._control = value\n if (value) {\n this._initControlListeners(value)\n }\n }\n private _control: AbstractControlDirective | AbstractControl | undefined | null\n\n private _valueChangeSub = Subscription.EMPTY\n private _errorTplsChangeSub = Subscription.EMPTY\n\n private _controlErrors = new BehaviorSubject<IErrorRecord[]>([])\n private _errorTpls = new BehaviorSubject<IErrorRecord[]>([])\n private _errorInput = new BehaviorSubject<IErrorRecord[]>([])\n\n private _showControlErrorsSubject = new BehaviorSubject<boolean>(false)\n\n public displayRecords$: Observable<IErrorRecord[]>\n public showControlErrors$: Observable<boolean>\n\n private _showErrors = true\n\n @Input()\n set showErrors(val: boolean) {\n this._showErrors = val\n }\n\n get showErrors(): boolean {\n let show = this._showErrors\n\n if (show && this.control) {\n if (this.numPaddingErrors > 0) {\n show = true\n } else {\n show = !!(this.control.invalid && (this.control.dirty || this.control.touched))\n }\n }\n\n return show\n }\n\n get showControlErrors(): boolean {\n let show = false\n if (this.control && this.showErrors) {\n show = !!(this.control.invalid && (this.control.dirty || this.control.touched))\n }\n\n return show\n }\n\n public errorRecords$: Observable<IErrorRecord[]>\n\n constructor() {\n this.showControlErrors$ = this._showControlErrorsSubject.asObservable()\n .pipe(distinctUntilChanged())\n .pipe(shareReplay(1))\n\n this.errorRecords$ = combineLatest([this._controlErrors, this._errorTpls, this._errorInput])\n .pipe(map(([ctrlErrs, errTpls, errorInput]) => this._composeErrorInputs(ctrlErrs, errTpls, errorInput)))\n .pipe(shareReplay(1))\n\n this.displayRecords$ = this.errorRecords$\n .pipe(map(records => {\n let resultRecords: IErrorRecord[] = []\n\n if (!this.showErrors) {\n\n } else {\n let errs = [ ...records ]\n\n if (this.maxErrors >= 0) {\n errs = errs.slice(0, this.maxErrors)\n }\n\n const count = this.showControlErrors ? this.numPaddingErrors - errs.length : this.numPaddingErrors\n const paddingErrors: IErrorRecord[] = []\n if (count > 0) {\n for (let i = 0; i < count; i++) {\n paddingErrors.push({ validatorName: '__padding__', error: {}, message: '', external: false })\n }\n }\n\n if (this.showControlErrors) {\n resultRecords = [ ...errs, ...paddingErrors ]\n } else {\n resultRecords = [ ...paddingErrors ]\n }\n }\n\n return resultRecords\n }))\n .pipe(shareReplay(1))\n }\n\n ngOnInit() { }\n\n ngOnDestroy() {\n this._valueChangeSub.unsubscribe()\n this._errorTplsChangeSub.unsubscribe()\n }\n\n ngDoCheck() {\n this._showControlErrorsSubject.next(this.showControlErrors)\n }\n\n private _initControlListeners(control: AbstractControlDirective | AbstractControl): void {\n // Unsubscribe from old control changes\n if (this._valueChangeSub && !this._valueChangeSub.closed) {\n this._valueChangeSub.unsubscribe()\n }\n\n if (control.valueChanges !== null) {\n this._valueChangeSub = combineLatest([this.showControlErrors$, control.valueChanges.pipe(startWith(undefined))])\n .pipe(startWith(undefined))\n .subscribe(_ => this._updateControlErrors(control.errors))\n } else {\n this._setControlErrors([])\n }\n }\n\n private _updateControlErrors(errors: ValidationErrors | null): void {\n const errs: IErrorRecord[] = []\n for (const validatorName in errors) {\n if (errors.hasOwnProperty(validatorName)) {\n const error = errors[validatorName]\n const message = this._parseMessage(this._defaultMessages[validatorName], error)\n const external = false\n errs.push({ validatorName, error, message, external })\n }\n }\n this._setControlErrors(errs)\n }\n\n private _setControlErrors(errors: IErrorRecord[]) {\n this._controlErrors.next(errors)\n }\n\n private _parseMessage(message: any, error: any) {\n if (!message) { return }\n\n if (typeof message === 'string') {\n return message\n } else if (typeof message === 'function') {\n return message(error)\n }\n }\n\n private _initErrorTemplates(tplsQueryList: QueryList<FormFieldErrorListItemTplDirective>) {\n if (this._errorTplsChangeSub && !this._errorTplsChangeSub.closed) {\n this._errorTplsChangeSub.unsubscribe()\n }\n\n if (tplsQueryList) {\n this._errorTplsChangeSub = tplsQueryList.changes\n .pipe(startWith(undefined))\n .subscribe(_ => this._updateErrorTemplates(tplsQueryList.toArray()))\n } else {\n this._setErrorTemplates([])\n }\n }\n\n private _updateErrorTemplates(tplsList: FormFieldErrorListItemTplDirective[]): void {\n const errs: IErrorRecord[] = []\n for (const tpl of tplsList) {\n if (tpl.validatorName !== undefined && tpl.validatorName !== null) {\n errs.push({\n validatorName: tpl.validatorName,\n error: null,\n template: tpl.template,\n external: !!tpl.external\n })\n } else {\n // this.errorTpl = tpl.template\n }\n }\n this._setErrorTemplates(errs)\n }\n\n private _setErrorTemplates(errorTpls: IErrorRecord[]): void {\n this._errorTpls.next(errorTpls)\n }\n\n private _initErrorInput(errors: IErrorRecord[]): void {\n this._updateErrorInputs(errors)\n }\n\n private _updateErrorInputs(errors: IErrorRecord[]): void {\n this._setErrorInput(errors)\n }\n\n private _setErrorInput(errors: IErrorRecord[]): void {\n this._errorInput.next(errors)\n }\n\n private _composeErrorInputs(\n controlErrors: IErrorRecord[],\n errorTemplates: IErrorRecord[],\n errorInput: IErrorRecord[]\n ): IErrorRecord[] {\n const errs: IErrorRecord[] = []\n\n const errsMap: { [name: string]: IErrorRecord } = {}\n\n for (const err of controlErrors) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const err of errorInput) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const err of errorTemplates) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const validatorName in errsMap) {\n if (errsMap.hasOwnProperty(validatorName)) {\n errs.push(errsMap[validatorName])\n }\n }\n\n const control = this.control\n if (!control) {\n return []\n }\n\n return errs\n .filter(err => this._isErrorValidator(control.errors, err.validatorName))\n .filter(err => !err.external)\n .map(err => ({\n ...err,\n error: control.errors ? control.errors[err.validatorName] : null,\n _errors: control.errors\n } as IErrorRecord))\n }\n\n private _isErrorValidator(errors: ValidationErrors | null, validatorName: string): boolean {\n if (!errors) {\n return false\n }\n const arr = validatorName.split(' ').filter(v => v.trim().length > 0)\n for (const item of arr) {\n if (errors.hasOwnProperty(item)) {\n return true\n }\n }\n return false\n }\n\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { FormFieldErrorListItemTplDirective } from './form-field-error-list/form-field-error-list-item-tpl.directive'\nimport { FormFieldErrorListItemDirective } from './form-field-error-list/form-field-error-list-item.directive'\nimport { FormFieldErrorListComponent } from './form-field-error-list/form-field-error-list.component'\nimport { FormFieldErrorComponent } from './form-field-error/form-field-error.component'\n\n@NgModule({\n declarations: [\n FormFieldErrorComponent,\n FormFieldErrorListComponent,\n FormFieldErrorListItemDirective,\n FormFieldErrorListItemTplDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n FormFieldErrorComponent,\n FormFieldErrorListComponent,\n FormFieldErrorListItemDirective,\n FormFieldErrorListItemTplDirective\n ]\n})\nexport class TheSeamFormFieldErrorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.FormFieldErrorComponent"],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-form-field-error.mjs","sources":["../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.ts","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list-item.directive.ts","../../../projects/ui-common/form-field-error/form-field-error/form-field-error.component.ts","../../../projects/ui-common/form-field-error/form-field-error/form-field-error.component.html","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list.component.ts","../../../projects/ui-common/form-field-error/form-field-error-list/form-field-error-list.component.html","../../../projects/ui-common/form-field-error/form-field-error.module.ts","../../../projects/ui-common/form-field-error/theseam-ui-common-form-field-error.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion'\nimport { Directive, Input, TemplateRef } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Directive({\n selector: '[seamFormFieldErrorListItemTpl]'\n})\nexport class FormFieldErrorListItemTplDirective {\n static ngAcceptInputType_external: BooleanInput\n\n @Input() validatorName: string | undefined | null\n\n @Input() @InputBoolean() external = false\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Directive, Input, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldErrorListItem]'\n})\nexport class FormFieldErrorListItemDirective {\n\n @Input() validatorName: string | undefined | null\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Component, Input } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Component({\n selector: 'seam-form-field-error',\n templateUrl: './form-field-error.component.html',\n styleUrls: ['./form-field-error.component.scss']\n})\nexport class FormFieldErrorComponent {\n\n @Input() validatorName: string | undefined | null\n @Input() message: string | undefined | null\n\n @Input() @InputBoolean() showValidatorName = false\n\n}\n","<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","import { Component, ContentChildren, DoCheck, HostBinding, Input, OnDestroy, QueryList, TemplateRef } from '@angular/core'\nimport { AbstractControl, AbstractControlDirective, ValidationErrors } from '@angular/forms'\nimport { BehaviorSubject, combineLatest, Observable, Subscription } from 'rxjs'\nimport { distinctUntilChanged, map, shareReplay, startWith } from 'rxjs/operators'\n\nimport { FormFieldErrorListItemTplDirective } from './form-field-error-list-item-tpl.directive'\n\nexport interface IErrorRecord {\n validatorName: string\n error: any,\n message?: string\n template?: TemplateRef<any>\n\n external?: boolean\n\n _errors?: ValidationErrors\n}\n\n/**\n * NOTE: This class has some issues with filtering duplicate validators. The\n * inputs will be cleaned up soon to fix the input confusion.\n *\n * TODO: Cleanup remaining code from before refactor.\n */\n@Component({\n selector: 'seam-form-field-error-list',\n templateUrl: './form-field-error-list.component.html',\n styleUrls: ['./form-field-error-list.component.scss']\n})\nexport class FormFieldErrorListComponent implements OnDestroy, DoCheck {\n\n @HostBinding('style.display') get _display() {\n return this.showErrors ? 'block' : 'none'\n }\n\n private static readonly defaultMessages: { [name: string]: ((params: any) => string) | (() => string) } = {\n // required: () => 'Required',\n // minlength: (params) => 'The min number of characters is ' + params.requiredLength,\n // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,\n // pattern: (params) => 'The required pattern is: ' + params.requiredPattern\n }\n\n private readonly _defaultMessages: { [name: string]: ((params: any) => string) | (() => string) } = {\n // required: () => 'Required',\n // minlength: (params) => 'The min number of characters is ' + params.requiredLength,\n // maxlength: (params) => 'The max allowed number of characters is ' + params.requiredLength,\n // pattern: (params) => 'The required pattern is: ' + params.requiredPattern\n }\n\n private _errors: any[] = []\n\n public _paddingErrors = []\n\n @Input()\n set errors(records: IErrorRecord[] | undefined | null) {\n // if (val instanceof Array) {\n // this._errors = val\n // } else {\n // const errs = []\n // for (const k in val) {\n // if (val[k]) {\n // const err = val[k]\n // const newErr = {\n // validatorName: k,\n // error: err,\n // message: '',\n // template: err.template,\n // external: !!err.external\n // }\n\n // if (err.message) {\n // const msgTmp = err.message\n // if (typeof msgTmp === 'string') {\n // newErr.message = msgTmp\n // } else if (typeof msgTmp === 'function') {\n // newErr.message = msgTmp(err)\n // }\n // } else if (FormFieldErrorListComponent.defaultMessages[k]) {\n // const defaultMsg = FormFieldErrorListComponent.defaultMessages[k]\n // if (typeof defaultMsg === 'string') {\n // newErr.message = defaultMsg\n // } else if (typeof defaultMsg === 'function') {\n // newErr.message = defaultMsg(err)\n // }\n // }\n\n // errs.push(newErr)\n // }\n // }\n // this._errors = errs\n // }\n\n this._initErrorInput(records || [])\n }\n\n // get errors() {\n // let errs = []\n\n // if (this._errors) {\n // if (!this.messages) {\n // errs = this._errors\n // } else {\n // errs = this._errors.map(err => {\n // if (this.messages && err.validatorName && this.messages[err.validatorName]) {\n // return Object.assign({}, err, {\n // message: this.messages[err.validatorName]\n // })\n // } else {\n // return err\n // }\n // })\n // }\n // }\n\n // if (this.control) {\n // for (const key in this.control.errors) {\n // if (this.control.errors[key]) {\n // const err = this.control.errors[key]\n\n // const newErr = {\n // validatorName: key,\n // error: err,\n // message: '',\n // external: false\n // }\n\n // if (FormFieldErrorListComponent.defaultMessages[key]) {\n // const defaultMsg = FormFieldErrorListComponent.defaultMessages[key]\n // if (typeof defaultMsg === 'string') {\n // newErr.message = defaultMsg\n // } else if (typeof defaultMsg === 'function') {\n // newErr.message = defaultMsg(err)\n // }\n // }\n\n // errs = [ ...errs, newErr ]\n // }\n // }\n // }\n\n // if (this.maxErrors >= 0) {\n // errs = errs.slice(0, this.maxErrors)\n // }\n\n // const count = this.showControlErrors ? this.numPaddingErrors - errs.length : this.numPaddingErrors\n // if (count > 0) {\n // this._paddingErrors = []\n // for (let i = 0; i < count; i++) {\n // this._paddingErrors.push({ validatorName: '__padding__', error: {}, message: '', external: false })\n // }\n // } else {\n // this._paddingErrors = []\n // }\n\n // return errs\n // }\n\n // @Input() messages: any = {}\n @Input() showValidatorName = false\n\n @Input() numPaddingErrors = 1\n\n // private errorTpl: TemplateRef<any>\n\n // private _listItemTpls: QueryList<FormFieldErrorListItemTplDirective>\n // private listItemTplsObj = {}\n\n @ContentChildren(FormFieldErrorListItemTplDirective)\n set _listItemTpls(val: QueryList<FormFieldErrorListItemTplDirective>) {\n this._initErrorTemplates(val)\n }\n\n @Input()\n set listItemTpls(val: QueryList<FormFieldErrorListItemTplDirective>) {\n this._initErrorTemplates(val)\n\n // for (const v of val.toArray()) {\n // if (v.validatorName !== undefined) {\n // this.listItemTplsObj[v.validatorName] = v\n // }\n // }\n\n // const tmp = val.find(v => v.validatorName === undefined)\n // if (tmp) {\n // this.errorTpl = tmp.template\n // }\n\n // this._listItemTpls = val\n }\n\n // get listItemTpls(): QueryList<FormFieldErrorListItemTplDirective> {\n // return this._listItemTpls\n // }\n\n @Input() maxErrors = -1\n\n @Input()\n get control(): AbstractControlDirective | AbstractControl | undefined | null { return this._control }\n set control(value: AbstractControlDirective | AbstractControl | undefined | null) {\n this._control = value\n if (value) {\n this._initControlListeners(value)\n }\n }\n private _control: AbstractControlDirective | AbstractControl | undefined | null\n\n private _valueChangeSub = Subscription.EMPTY\n private _errorTplsChangeSub = Subscription.EMPTY\n\n private _controlErrors = new BehaviorSubject<IErrorRecord[]>([])\n private _errorTpls = new BehaviorSubject<IErrorRecord[]>([])\n private _errorInput = new BehaviorSubject<IErrorRecord[]>([])\n\n private _showControlErrorsSubject = new BehaviorSubject<boolean>(false)\n\n public displayRecords$: Observable<IErrorRecord[]>\n public showControlErrors$: Observable<boolean>\n\n private _showErrors = true\n\n @Input()\n set showErrors(val: boolean) {\n this._showErrors = val\n }\n\n get showErrors(): boolean {\n let show = this._showErrors\n\n if (show && this.control) {\n if (this.numPaddingErrors > 0) {\n show = true\n } else {\n show = !!(this.control.invalid && (this.control.dirty || this.control.touched))\n }\n }\n\n return show\n }\n\n get showControlErrors(): boolean {\n let show = false\n if (this.control && this.showErrors) {\n show = !!(this.control.invalid && (this.control.dirty || this.control.touched))\n }\n\n return show\n }\n\n public errorRecords$: Observable<IErrorRecord[]>\n\n constructor() {\n this.showControlErrors$ = this._showControlErrorsSubject.asObservable()\n .pipe(distinctUntilChanged())\n .pipe(shareReplay(1))\n\n this.errorRecords$ = combineLatest([this._controlErrors, this._errorTpls, this._errorInput])\n .pipe(map(([ctrlErrs, errTpls, errorInput]) => this._composeErrorInputs(ctrlErrs, errTpls, errorInput)))\n .pipe(shareReplay(1))\n\n this.displayRecords$ = this.errorRecords$\n .pipe(map(records => {\n let resultRecords: IErrorRecord[] = []\n\n if (!this.showErrors) {\n // TODO: Implement\n } else {\n let errs = [ ...records ]\n\n if (this.maxErrors >= 0) {\n errs = errs.slice(0, this.maxErrors)\n }\n\n const count = this.showControlErrors ? this.numPaddingErrors - errs.length : this.numPaddingErrors\n const paddingErrors: IErrorRecord[] = []\n if (count > 0) {\n for (let i = 0; i < count; i++) {\n paddingErrors.push({ validatorName: '__padding__', error: {}, message: '', external: false })\n }\n }\n\n if (this.showControlErrors) {\n resultRecords = [ ...errs, ...paddingErrors ]\n } else {\n resultRecords = [ ...paddingErrors ]\n }\n }\n\n return resultRecords\n }))\n .pipe(shareReplay(1))\n }\n\n ngOnDestroy() {\n this._valueChangeSub.unsubscribe()\n this._errorTplsChangeSub.unsubscribe()\n }\n\n ngDoCheck() {\n this._showControlErrorsSubject.next(this.showControlErrors)\n }\n\n private _initControlListeners(control: AbstractControlDirective | AbstractControl): void {\n // Unsubscribe from old control changes\n if (this._valueChangeSub && !this._valueChangeSub.closed) {\n this._valueChangeSub.unsubscribe()\n }\n\n if (control.valueChanges !== null) {\n this._valueChangeSub = combineLatest([this.showControlErrors$, control.valueChanges.pipe(startWith(undefined))])\n .pipe(startWith(undefined))\n .subscribe(_ => this._updateControlErrors(control.errors))\n } else {\n this._setControlErrors([])\n }\n }\n\n private _updateControlErrors(errors: ValidationErrors | null): void {\n const errs: IErrorRecord[] = []\n for (const validatorName in errors) {\n if (Object.prototype.hasOwnProperty.call(errors, validatorName)) {\n const error = errors[validatorName]\n const message = this._parseMessage(this._defaultMessages[validatorName], error)\n const external = false\n errs.push({ validatorName, error, message, external })\n }\n }\n this._setControlErrors(errs)\n }\n\n private _setControlErrors(errors: IErrorRecord[]) {\n this._controlErrors.next(errors)\n }\n\n private _parseMessage(message: any, error: any) {\n if (!message) { return }\n\n if (typeof message === 'string') {\n return message\n } else if (typeof message === 'function') {\n return message(error)\n }\n }\n\n private _initErrorTemplates(tplsQueryList: QueryList<FormFieldErrorListItemTplDirective>) {\n if (this._errorTplsChangeSub && !this._errorTplsChangeSub.closed) {\n this._errorTplsChangeSub.unsubscribe()\n }\n\n if (tplsQueryList) {\n this._errorTplsChangeSub = tplsQueryList.changes\n .pipe(startWith(undefined))\n .subscribe(_ => this._updateErrorTemplates(tplsQueryList.toArray()))\n } else {\n this._setErrorTemplates([])\n }\n }\n\n private _updateErrorTemplates(tplsList: FormFieldErrorListItemTplDirective[]): void {\n const errs: IErrorRecord[] = []\n for (const tpl of tplsList) {\n if (tpl.validatorName !== undefined && tpl.validatorName !== null) {\n errs.push({\n validatorName: tpl.validatorName,\n error: null,\n template: tpl.template,\n external: !!tpl.external\n })\n } else {\n // this.errorTpl = tpl.template\n }\n }\n this._setErrorTemplates(errs)\n }\n\n private _setErrorTemplates(errorTpls: IErrorRecord[]): void {\n this._errorTpls.next(errorTpls)\n }\n\n private _initErrorInput(errors: IErrorRecord[]): void {\n this._updateErrorInputs(errors)\n }\n\n private _updateErrorInputs(errors: IErrorRecord[]): void {\n this._setErrorInput(errors)\n }\n\n private _setErrorInput(errors: IErrorRecord[]): void {\n this._errorInput.next(errors)\n }\n\n private _composeErrorInputs(\n controlErrors: IErrorRecord[],\n errorTemplates: IErrorRecord[],\n errorInput: IErrorRecord[]\n ): IErrorRecord[] {\n const errs: IErrorRecord[] = []\n\n const errsMap: { [name: string]: IErrorRecord } = {}\n\n for (const err of controlErrors) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const err of errorInput) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const err of errorTemplates) {\n if (err.message || err.template) {\n errsMap[err.validatorName] = err\n }\n }\n\n for (const validatorName in errsMap) {\n if (Object.prototype.hasOwnProperty.call(errsMap, validatorName)) {\n errs.push(errsMap[validatorName])\n }\n }\n\n const control = this.control\n if (!control) {\n return []\n }\n\n return errs\n .filter(err => this._isErrorValidator(control.errors, err.validatorName))\n .filter(err => !err.external)\n .map(err => ({\n ...err,\n error: control.errors ? control.errors[err.validatorName] : null,\n _errors: control.errors\n } as IErrorRecord))\n }\n\n private _isErrorValidator(errors: ValidationErrors | null, validatorName: string): boolean {\n if (!errors) {\n return false\n }\n const arr = validatorName.split(' ').filter(v => v.trim().length > 0)\n for (const item of arr) {\n if (Object.prototype.hasOwnProperty.call(errors, item)) {\n return true\n }\n }\n return false\n }\n\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { FormFieldErrorListItemTplDirective } from './form-field-error-list/form-field-error-list-item-tpl.directive'\nimport { FormFieldErrorListItemDirective } from './form-field-error-list/form-field-error-list-item.directive'\nimport { FormFieldErrorListComponent } from './form-field-error-list/form-field-error-list.component'\nimport { FormFieldErrorComponent } from './form-field-error/form-field-error.component'\n\n@NgModule({\n declarations: [\n FormFieldErrorComponent,\n FormFieldErrorListComponent,\n FormFieldErrorListItemDirective,\n FormFieldErrorListItemTplDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n FormFieldErrorComponent,\n FormFieldErrorListComponent,\n FormFieldErrorListItemDirective,\n FormFieldErrorListItemTplDirective\n ]\n})\nexport class TheSeamFormFieldErrorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.FormFieldErrorComponent"],"mappings":"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"}