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

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 (519) hide show
  1. package/breadcrumbs/breadcrumb.d.ts +1 -1
  2. package/breadcrumbs/breadcrumbs-resolver.d.ts +1 -1
  3. package/core/common-behaviors/active.d.ts +1 -1
  4. package/core/common-behaviors/constructor.d.ts +1 -1
  5. package/core/common-behaviors/disabled.d.ts +1 -1
  6. package/core/common-behaviors/initialized.d.ts +1 -1
  7. package/core/common-behaviors/size.d.ts +1 -1
  8. package/core/common-behaviors/tabindex.d.ts +1 -1
  9. package/core/common-behaviors/theme.d.ts +1 -1
  10. package/data-exporter/data-exporter.d.ts +1 -1
  11. package/data-filters/data-filter.d.ts +3 -3
  12. package/data-filters/filters/data-filter-search/search-filter-options.d.ts +1 -1
  13. package/datatable/datatable-column/datatable-column.component.d.ts +1 -1
  14. package/datatable/models/preferences.d.ts +1 -1
  15. package/datatable/models/table-column.d.ts +1 -1
  16. package/datatable/services/columns-manager.service.d.ts +1 -1
  17. package/datatable-dynamic/datatable-dynamic-def.d.ts +3 -3
  18. package/datatable-dynamic/models/dynamic-datatable-action-menu-record.d.ts +1 -1
  19. package/dynamic/models/dynamic-value-base-type.d.ts +1 -1
  20. package/dynamic/models/dynamic-value-evaluatable-type.d.ts +1 -1
  21. package/dynamic/models/dynamic-value-primitive.d.ts +1 -1
  22. package/dynamic/models/dynamic-value.d.ts +1 -1
  23. package/dynamic/tokens/api-config.d.ts +1 -1
  24. package/esm2020/asset-reader/asset-reader-helper.service.mjs +3 -3
  25. package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
  26. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +12 -12
  27. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +3 -3
  28. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +4 -4
  29. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +3 -3
  30. package/esm2020/buttons/badge-button/badge-button.component.mjs +6 -6
  31. package/esm2020/buttons/button/button.component.mjs +9 -9
  32. package/esm2020/buttons/buttons.module.mjs +4 -4
  33. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +3 -3
  34. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +5 -5
  35. package/esm2020/card/card-action/card-action.component.mjs +3 -3
  36. package/esm2020/card/card-body/card-body.component.mjs +3 -3
  37. package/esm2020/card/card-footer/card-footer.component.mjs +3 -3
  38. package/esm2020/card/card-header/card-header.component.mjs +3 -3
  39. package/esm2020/card/card.component.mjs +3 -3
  40. package/esm2020/card/card.module.mjs +4 -4
  41. package/esm2020/checkbox/checkbox.component.mjs +43 -43
  42. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  43. package/esm2020/confirm-dialog/confirm-click.directive.mjs +9 -9
  44. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
  45. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
  46. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
  47. package/esm2020/core/common-behaviors/active.mjs +3 -3
  48. package/esm2020/core/common-behaviors/disabled.mjs +3 -3
  49. package/esm2020/core/common-behaviors/size.mjs +6 -6
  50. package/esm2020/core/common-behaviors/tabindex.mjs +5 -5
  51. package/esm2020/core/common-behaviors/theme.mjs +6 -6
  52. package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
  53. package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
  54. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
  55. package/esm2020/data-filters/data-filters.module.mjs +4 -4
  56. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +10 -10
  57. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +10 -10
  58. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +11 -11
  59. package/esm2020/datatable/datatable/datatable.component.mjs +108 -108
  60. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
  61. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +3 -3
  62. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +7 -7
  63. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
  64. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +3 -3
  65. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +7 -7
  66. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
  67. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +3 -3
  68. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +8 -8
  69. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +3 -3
  70. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +3 -3
  71. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +3 -3
  72. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +3 -3
  73. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +3 -3
  74. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
  75. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +3 -3
  76. package/esm2020/datatable/datatable.module.mjs +4 -4
  77. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +3 -3
  78. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +11 -11
  79. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
  80. package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
  81. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
  82. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +3 -3
  83. package/esm2020/datatable/services/columns-manager.service.mjs +3 -3
  84. package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
  85. package/esm2020/datatable/services/datatable-preferences.service.mjs +6 -6
  86. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +3 -3
  87. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +12 -12
  88. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +8 -8
  89. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +6 -6
  90. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +8 -8
  91. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
  92. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +7 -7
  93. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +3 -3
  94. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +3 -3
  95. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +3 -3
  96. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +3 -3
  97. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +3 -3
  98. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +3 -3
  99. package/esm2020/dynamic/dynamic-value-helper.service.mjs +3 -3
  100. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +3 -3
  101. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +3 -3
  102. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
  103. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +3 -3
  104. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +3 -3
  105. package/esm2020/footer-bar/footer-bar.module.mjs +4 -4
  106. package/esm2020/form-field/form-field-error.directive.mjs +6 -6
  107. package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
  108. package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
  109. package/esm2020/form-field/form-field-required-indicator.component.mjs +3 -3
  110. package/esm2020/form-field/form-field.component.mjs +48 -48
  111. package/esm2020/form-field/form-field.module.mjs +4 -4
  112. package/esm2020/form-field/input.directive.mjs +43 -43
  113. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +3 -3
  114. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +3 -3
  115. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
  116. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +92 -92
  117. package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
  118. package/esm2020/framework/base-layout/base-layout.component.mjs +6 -6
  119. package/esm2020/framework/base-layout/base-layout.module.mjs +4 -4
  120. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
  121. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
  122. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
  123. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +10 -10
  124. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
  125. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
  126. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
  127. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +3 -3
  128. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +3 -3
  129. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +3 -3
  130. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +3 -3
  131. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +18 -18
  132. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +12 -12
  133. package/esm2020/framework/dashboard/dashboard.component.mjs +3 -3
  134. package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
  135. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +4 -4
  136. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +3 -3
  137. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +3 -3
  138. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
  139. package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
  140. package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
  141. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
  142. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
  143. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
  144. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
  145. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
  146. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
  147. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +3 -3
  148. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +24 -24
  149. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +3 -3
  150. package/esm2020/framework/side-nav/side-nav.component.mjs +17 -17
  151. package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
  152. package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
  153. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
  154. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
  155. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +3 -3
  156. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
  157. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +3 -3
  158. package/esm2020/framework/top-bar/top-bar.component.mjs +3 -3
  159. package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
  160. package/esm2020/google-maps/google-maps/google-maps.component.mjs +17 -17
  161. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +103 -0
  162. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +25 -0
  163. package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
  164. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +19 -19
  165. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +7 -7
  166. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +7 -7
  167. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +7 -7
  168. package/esm2020/google-maps/google-maps.module.mjs +4 -4
  169. package/esm2020/google-maps/google-maps.service.mjs +5 -5
  170. package/esm2020/google-maps/map-control.component.mjs +9 -9
  171. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +3 -3
  172. package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
  173. package/esm2020/google-maps/public-api.mjs +4 -1
  174. package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +5 -5
  175. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +3 -3
  176. package/esm2020/icon/icon/icon.component.mjs +3 -3
  177. package/esm2020/icon/icon-btn/icon-btn.component.mjs +24 -24
  178. package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
  179. package/esm2020/icon/icon.module.mjs +4 -4
  180. package/esm2020/layout/layout.module.mjs +4 -4
  181. package/esm2020/layout/layout.service.mjs +3 -3
  182. package/esm2020/loading/loading/loading.component.mjs +7 -7
  183. package/esm2020/loading/loading-overlay.service.mjs +3 -3
  184. package/esm2020/loading/loading.module.mjs +4 -4
  185. package/esm2020/menu/menu-divider.component.mjs +3 -3
  186. package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
  187. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +7 -7
  188. package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
  189. package/esm2020/menu/menu-item.component.mjs +3 -3
  190. package/esm2020/menu/menu-toggle.directive.mjs +42 -42
  191. package/esm2020/menu/menu.component.mjs +15 -15
  192. package/esm2020/menu/menu.module.mjs +4 -4
  193. package/esm2020/modal/directives/modal-close.directive.mjs +11 -11
  194. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
  195. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
  196. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
  197. package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
  198. package/esm2020/modal/directives/modal.directive.mjs +3 -3
  199. package/esm2020/modal/modal/modal.component.mjs +19 -19
  200. package/esm2020/modal/modal-body/modal-body.component.mjs +3 -3
  201. package/esm2020/modal/modal-container/modal-container.component.mjs +12 -12
  202. package/esm2020/modal/modal-footer/modal-footer.component.mjs +3 -3
  203. package/esm2020/modal/modal-header/modal-header.component.mjs +3 -3
  204. package/esm2020/modal/modal.module.mjs +4 -4
  205. package/esm2020/modal/modal.service.mjs +16 -16
  206. package/esm2020/modal/route-modal/route-modal.component.mjs +3 -3
  207. package/esm2020/popover/popover/popover.component.mjs +18 -18
  208. package/esm2020/popover/popover.directive.mjs +32 -32
  209. package/esm2020/popover/popover.module.mjs +4 -4
  210. package/esm2020/progress/progress-circle/progress-circle.component.mjs +9 -9
  211. package/esm2020/progress/progress.module.mjs +4 -4
  212. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +10 -10
  213. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +3 -3
  214. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  215. package/esm2020/services/asset-loader.service.mjs +3 -3
  216. package/esm2020/services/font-loader.service.mjs +3 -3
  217. package/esm2020/services/router-helpers.service.mjs +3 -3
  218. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
  219. package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
  220. package/esm2020/shared/directives/click-outside.directive.mjs +9 -9
  221. package/esm2020/shared/directives/disable-control.directive.mjs +7 -7
  222. package/esm2020/shared/directives/elem-resized.directive.mjs +3 -3
  223. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +10 -10
  224. package/esm2020/shared/directives/hover-class.directive.mjs +9 -9
  225. package/esm2020/shared/directives/ng-select-extra.directive.mjs +26 -26
  226. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +10 -10
  227. package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
  228. package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
  229. package/esm2020/shared/shared.module.mjs +4 -4
  230. package/esm2020/storage/local-storage.service.mjs +3 -3
  231. package/esm2020/story-helpers/initial-route.service.mjs +3 -3
  232. package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
  233. package/esm2020/story-helpers/story-empty.component.mjs +3 -3
  234. package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
  235. package/esm2020/story-helpers/story-initial-route.mjs +4 -4
  236. package/esm2020/story-helpers/story-modal-container.component.mjs +6 -6
  237. package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
  238. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +3 -3
  239. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +3 -3
  240. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +3 -3
  241. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +3 -3
  242. package/esm2020/tabbed/tabbed.component.mjs +13 -13
  243. package/esm2020/tabbed/tabbed.module.mjs +4 -4
  244. package/esm2020/tabbed/tabbed.service.mjs +3 -3
  245. package/esm2020/table/table/table.component.mjs +11 -11
  246. package/esm2020/table/table.module.mjs +4 -4
  247. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +3 -3
  248. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +3 -3
  249. package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
  250. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +3 -3
  251. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +3 -3
  252. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +3 -3
  253. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +31 -31
  254. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +3 -3
  255. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +6 -6
  256. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +3 -3
  257. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +3 -3
  258. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +23 -23
  259. package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
  260. package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
  261. package/esm2020/tel-input/tel-input/tel-input.component.mjs +34 -34
  262. package/esm2020/tel-input/tel-input.directive.mjs +18 -18
  263. package/esm2020/tel-input/tel-input.module.mjs +4 -4
  264. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +20 -20
  265. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +6 -6
  266. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +10 -10
  267. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
  268. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
  269. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
  270. package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
  271. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +3 -3
  272. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
  273. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
  274. package/esm2020/toggle-edit/toggle-edit.component.mjs +16 -16
  275. package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
  276. package/esm2020/toggle-group/toggle-group-option.directive.mjs +12 -12
  277. package/esm2020/toggle-group/toggle-group.directive.mjs +3 -3
  278. package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
  279. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +3 -3
  280. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +3 -3
  281. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +3 -3
  282. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  283. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +37 -37
  284. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
  285. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +10 -10
  286. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +3 -3
  287. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +38 -38
  288. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
  289. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +12 -12
  290. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
  291. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
  292. package/esm2020/widget/widget/widget.component.mjs +3 -3
  293. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +3 -3
  294. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
  295. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +3 -3
  296. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
  297. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
  298. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
  299. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +7 -7
  300. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
  301. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +3 -3
  302. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
  303. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +3 -3
  304. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
  305. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +3 -3
  306. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
  307. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
  308. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +15 -15
  309. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +3 -3
  310. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
  311. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +3 -3
  312. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
  313. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +3 -3
  314. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +8 -8
  315. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +3 -3
  316. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +3 -3
  317. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +16 -16
  318. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +4 -4
  319. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +3 -3
  320. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
  321. package/esm2020/widget/widget-footer/widget-footer.component.mjs +3 -3
  322. package/esm2020/widget/widget-registry.service.mjs +3 -3
  323. package/esm2020/widget/widget.module.mjs +4 -4
  324. package/fesm2015/theseam-ui-common-asset-reader.mjs +18 -18
  325. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  326. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +10 -10
  327. package/fesm2015/theseam-ui-common-buttons.mjs +26 -26
  328. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  329. package/fesm2015/theseam-ui-common-card.mjs +19 -19
  330. package/fesm2015/theseam-ui-common-checkbox.mjs +46 -46
  331. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  332. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +18 -18
  333. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  334. package/fesm2015/theseam-ui-common-core.mjs +18 -18
  335. package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
  336. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  337. package/fesm2015/theseam-ui-common-data-filters.mjs +32 -32
  338. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  339. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +46 -46
  340. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  341. package/fesm2015/theseam-ui-common-datatable.mjs +208 -208
  342. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  343. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  344. package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
  345. package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
  346. package/fesm2015/theseam-ui-common-form-field-error.mjs +104 -104
  347. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  348. package/fesm2015/theseam-ui-common-form-field.mjs +107 -107
  349. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  350. package/fesm2015/theseam-ui-common-framework.mjs +196 -196
  351. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  352. package/fesm2015/theseam-ui-common-google-maps.mjs +202 -80
  353. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  354. package/fesm2015/theseam-ui-common-graphql.mjs +7 -7
  355. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  356. package/fesm2015/theseam-ui-common-icon.mjs +33 -33
  357. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  358. package/fesm2015/theseam-ui-common-layout.mjs +7 -7
  359. package/fesm2015/theseam-ui-common-loading.mjs +13 -13
  360. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  361. package/fesm2015/theseam-ui-common-menu.mjs +79 -79
  362. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  363. package/fesm2015/theseam-ui-common-modal.mjs +85 -85
  364. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  365. package/fesm2015/theseam-ui-common-popover.mjs +52 -52
  366. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  367. package/fesm2015/theseam-ui-common-progress.mjs +12 -12
  368. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  369. package/fesm2015/theseam-ui-common-scrollbar.mjs +16 -16
  370. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  371. package/fesm2015/theseam-ui-common-services.mjs +9 -9
  372. package/fesm2015/theseam-ui-common-shared.mjs +84 -84
  373. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  374. package/fesm2015/theseam-ui-common-storage.mjs +3 -3
  375. package/fesm2015/theseam-ui-common-story-helpers.mjs +25 -25
  376. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  377. package/fesm2015/theseam-ui-common-tabbed.mjs +31 -31
  378. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  379. package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
  380. package/fesm2015/theseam-ui-common-table-cell-types.mjs +80 -80
  381. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  382. package/fesm2015/theseam-ui-common-table.mjs +14 -14
  383. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  384. package/fesm2015/theseam-ui-common-tel-input.mjs +59 -59
  385. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  386. package/fesm2015/theseam-ui-common-tiled-select.mjs +46 -46
  387. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  388. package/fesm2015/theseam-ui-common-toggle-edit.mjs +28 -28
  389. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  390. package/fesm2015/theseam-ui-common-toggle-group.mjs +18 -18
  391. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  392. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  393. package/fesm2015/theseam-ui-common-viewers.mjs +93 -93
  394. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  395. package/fesm2015/theseam-ui-common-widget.mjs +156 -156
  396. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  397. package/fesm2020/theseam-ui-common-asset-reader.mjs +18 -18
  398. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  399. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +10 -10
  400. package/fesm2020/theseam-ui-common-buttons.mjs +26 -26
  401. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  402. package/fesm2020/theseam-ui-common-card.mjs +19 -19
  403. package/fesm2020/theseam-ui-common-checkbox.mjs +46 -46
  404. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  405. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +18 -18
  406. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  407. package/fesm2020/theseam-ui-common-core.mjs +18 -18
  408. package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
  409. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  410. package/fesm2020/theseam-ui-common-data-filters.mjs +32 -32
  411. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  412. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +46 -46
  413. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  414. package/fesm2020/theseam-ui-common-datatable.mjs +208 -208
  415. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  416. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  417. package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
  418. package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
  419. package/fesm2020/theseam-ui-common-form-field-error.mjs +104 -104
  420. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  421. package/fesm2020/theseam-ui-common-form-field.mjs +107 -107
  422. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  423. package/fesm2020/theseam-ui-common-framework.mjs +196 -196
  424. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  425. package/fesm2020/theseam-ui-common-google-maps.mjs +200 -80
  426. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  427. package/fesm2020/theseam-ui-common-graphql.mjs +7 -7
  428. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  429. package/fesm2020/theseam-ui-common-icon.mjs +33 -33
  430. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  431. package/fesm2020/theseam-ui-common-layout.mjs +7 -7
  432. package/fesm2020/theseam-ui-common-loading.mjs +13 -13
  433. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  434. package/fesm2020/theseam-ui-common-menu.mjs +77 -77
  435. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  436. package/fesm2020/theseam-ui-common-modal.mjs +85 -85
  437. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  438. package/fesm2020/theseam-ui-common-popover.mjs +52 -52
  439. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  440. package/fesm2020/theseam-ui-common-progress.mjs +12 -12
  441. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  442. package/fesm2020/theseam-ui-common-scrollbar.mjs +16 -16
  443. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  444. package/fesm2020/theseam-ui-common-services.mjs +9 -9
  445. package/fesm2020/theseam-ui-common-shared.mjs +84 -84
  446. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  447. package/fesm2020/theseam-ui-common-storage.mjs +3 -3
  448. package/fesm2020/theseam-ui-common-story-helpers.mjs +25 -25
  449. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  450. package/fesm2020/theseam-ui-common-tabbed.mjs +31 -31
  451. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  452. package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
  453. package/fesm2020/theseam-ui-common-table-cell-types.mjs +80 -80
  454. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  455. package/fesm2020/theseam-ui-common-table.mjs +14 -14
  456. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  457. package/fesm2020/theseam-ui-common-tel-input.mjs +57 -57
  458. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  459. package/fesm2020/theseam-ui-common-tiled-select.mjs +46 -46
  460. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  461. package/fesm2020/theseam-ui-common-toggle-edit.mjs +28 -28
  462. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  463. package/fesm2020/theseam-ui-common-toggle-group.mjs +18 -18
  464. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  465. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  466. package/fesm2020/theseam-ui-common-viewers.mjs +93 -93
  467. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  468. package/fesm2020/theseam-ui-common-widget.mjs +156 -156
  469. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  470. package/framework/base-layout/base-layout-action.d.ts +1 -1
  471. package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +1 -1
  472. package/framework/side-nav/side-nav.models.d.ts +1 -1
  473. package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +73 -0
  474. package/google-maps/google-maps-api-loader/noop-google-maps-api-loader.d.ts +13 -0
  475. package/google-maps/map-value-manager.service.d.ts +1 -1
  476. package/google-maps/public-api.d.ts +3 -0
  477. package/graphql/datatable/datatable-graphql-query-ref.d.ts +2 -2
  478. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  479. package/graphql/datatable/datatable-helpers.d.ts +2 -2
  480. package/graphql/datatable/map-filter-states.d.ts +2 -2
  481. package/graphql/datatable/map-page-info.d.ts +1 -1
  482. package/graphql/datatable/mapper-context.d.ts +1 -1
  483. package/graphql/models/gql-datatable-accessor.d.ts +1 -1
  484. package/graphql/models/hint-transformer.d.ts +1 -1
  485. package/icon/icon/icon.component.d.ts +1 -1
  486. package/icon/icon.d.ts +1 -1
  487. package/layout/breakpoint-aliases.d.ts +1 -1
  488. package/loading/loading.models.d.ts +1 -1
  489. package/modal/modal-config.d.ts +1 -1
  490. package/models/component-type.d.ts +1 -1
  491. package/models/size-prefixes.d.ts +1 -1
  492. package/models/size-types.d.ts +1 -1
  493. package/models/theme-prefixes.d.ts +1 -1
  494. package/models/theme-types.d.ts +2 -2
  495. package/package.json +1 -1
  496. package/scrollbar/overlay-scrollbars-config-model.d.ts +1 -1
  497. package/services/font-loader.service.d.ts +1 -1
  498. package/table/table/table.component.d.ts +1 -1
  499. package/table-cell-type/table-cell-type-models.d.ts +3 -3
  500. package/table-cell-type/table-cell-type-name.d.ts +1 -1
  501. package/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.d.ts +1 -1
  502. package/table-cell-types/table-cell-type-currency/table-cell-type-currency.d.ts +1 -1
  503. package/table-cell-types/table-cell-type-date/table-cell-type-date.d.ts +1 -1
  504. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +1 -1
  505. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.d.ts +1 -1
  506. package/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.d.ts +1 -1
  507. package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +1 -1
  508. package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +1 -1
  509. package/table-cell-types/table-cell-type-integer/table-cell-type-integer.d.ts +1 -1
  510. package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.d.ts +1 -1
  511. package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.d.ts +1 -1
  512. package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +1 -1
  513. package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +1 -1
  514. package/tel-input/utils/coerce-phone-number-format.d.ts +1 -1
  515. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +1 -1
  516. package/tiled-select/tiled-select.models.d.ts +2 -2
  517. package/utils/polling-ticker.d.ts +1 -1
  518. package/utils/subscriber-count.d.ts +1 -1
  519. package/widget/directives/widget-drag-handle.directive.d.ts +1 -1
@@ -7,6 +7,14 @@ import * as i0 from "@angular/core";
7
7
  import * as i1 from "@theseam/ui-common/dynamic-component-loader";
8
8
  import * as i2 from "./dashboard-widgets-preferences.service";
9
9
  export class DashboardWidgetsService {
10
+ get widgets() { return this._widgets.value; }
11
+ set widgets(value) { this._widgets.next(value); }
12
+ get numColumns() { return this._numColumns.value; }
13
+ set numColumns(value) {
14
+ if (value !== this._numColumns.value) {
15
+ this._numColumns.next(value);
16
+ }
17
+ }
10
18
  constructor(_dynamicComponentLoaderModule, _preferences) {
11
19
  this._dynamicComponentLoaderModule = _dynamicComponentLoaderModule;
12
20
  this._preferences = _preferences;
@@ -32,14 +40,6 @@ export class DashboardWidgetsService {
32
40
  this.widgetColumns$ = this.widgetItems$
33
41
  .pipe(map(items => this.toColumnRecords(items)), shareReplay({ bufferSize: 1, refCount: true }));
34
42
  }
35
- get widgets() { return this._widgets.value; }
36
- set widgets(value) { this._widgets.next(value); }
37
- get numColumns() { return this._numColumns.value; }
38
- set numColumns(value) {
39
- if (value !== this._numColumns.value) {
40
- this._numColumns.next(value);
41
- }
42
- }
43
43
  _layoutName(numColumns) {
44
44
  return `columns-${numColumns}`;
45
45
  }
@@ -159,12 +159,12 @@ export class DashboardWidgetsService {
159
159
  }), mapTo(undefined));
160
160
  }
161
161
  }
162
- DashboardWidgetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DashboardWidgetsService, deps: [{ token: i1.TheSeamDynamicComponentLoader }, { token: i2.DashboardWidgetsPreferencesService }], target: i0.ɵɵFactoryTarget.Injectable });
163
- DashboardWidgetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DashboardWidgetsService, providedIn: 'root' });
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DashboardWidgetsService, decorators: [{
162
+ DashboardWidgetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: DashboardWidgetsService, deps: [{ token: i1.TheSeamDynamicComponentLoader }, { token: i2.DashboardWidgetsPreferencesService }], target: i0.ɵɵFactoryTarget.Injectable });
163
+ DashboardWidgetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: DashboardWidgetsService, providedIn: 'root' });
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: DashboardWidgetsService, decorators: [{
165
165
  type: Injectable,
166
166
  args: [{
167
167
  providedIn: 'root'
168
168
  }]
169
169
  }], ctorParameters: function () { return [{ type: i1.TheSeamDynamicComponentLoader }, { type: i2.DashboardWidgetsPreferencesService }]; } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLXdpZGdldHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvZGFzaGJvYXJkL2Rhc2hib2FyZC13aWRnZXRzL2Rhc2hib2FyZC13aWRnZXRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBR3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBYTdELE1BQU0sT0FBTyx1QkFBdUI7SUEyQmxDLFlBQ21CLDZCQUE0RCxFQUM1RCxZQUFnRDtRQURoRCxrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStCO1FBQzVELGlCQUFZLEdBQVosWUFBWSxDQUFvQztRQTNCbkQsa0JBQWEsR0FBVyxtQkFBbUIsQ0FBQTtRQUUzQyxzQkFBaUIsR0FBVyxDQUFDLENBQUE7UUFFN0MsZ0ZBQWdGO1FBQ2hFLGtCQUFhLEdBQVcsQ0FBQyxDQUFBO1FBSWpDLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBNkIsRUFBRSxDQUFDLENBQUE7UUFROUQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBUyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQU14RCw2QkFBd0IsR0FBRyxJQUFJLGVBQWUsQ0FBK0IsU0FBUyxDQUFDLENBQUE7UUFNdEcsSUFBSSxDQUFDLFdB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YXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IEluamVjdGFibGUsIGlzRGV2TW9kZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgbWFwLCBtYXBUbywgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IFRoZVNlYW1EeW5hbWljQ29tcG9uZW50TG9hZGVyIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2R5bmFtaWMtY29tcG9uZW50LWxvYWRlcidcbmltcG9ydCB7IG5vdE51bGxPclVuZGVmaW5lZCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuaW1wb3J0IHtcbiAgSURhc2hib2FyZFdpZGdldEl0ZW1MYXlvdXRQcmVmZXJlbmNlLFxuICBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCxcbiAgSURhc2hib2FyZFdpZGdldHNJdGVtLFxuICBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZcbn0gZnJvbSAnLi9kYXNoYm9hcmQtd2lkZ2V0cy1pdGVtJ1xuaW1wb3J0IHsgRGFzaGJvYXJkV2lkZ2V0c1ByZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4vZGFzaGJvYXJkLXdpZGdldHMtcHJlZmVyZW5jZXMuc2VydmljZSdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkV2lkZ2V0c1NlcnZpY2Uge1xuXG4gIHB1YmxpYyByZWFkb25seSBwcmVmZXJlbmNlS2V5OiBzdHJpbmcgPSAnZGF0YXRhYmxlLXdpZGdldHMnXG5cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHROdW1Db2x1bW5zOiBudW1iZXIgPSAzXG5cbiAgLyoqIFVzZWQgZm9yIG9wZXJhdGlvbnMsIHN1Y2ggYXMgJ2FkZFdpZGdldCcsIGlmIHRoZSBjb2x1bW4gaXMgbm90IHNwZWNpZmllZC4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRDb2x1bW46IG51bWJlciA9IDBcblxuICBnZXQgd2lkZ2V0cygpOiBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZbXSB7IHJldHVybiB0aGlzLl93aWRnZXRzLnZhbHVlIH1cbiAgc2V0IHdpZGdldHModmFsdWU6IElEYXNoYm9hcmRXaWRnZXRzSXRlbURlZltdKSB7IHRoaXMuX3dpZGdldHMubmV4dCh2YWx1ZSkgfVxuICBwcml2YXRlIF93aWRnZXRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZbXT4oW10pXG5cbiAgZ2V0IG51bUNvbHVtbnMoKTogbnVtYmVyIHsgcmV0dXJuIHRoaXMuX251bUNvbHVtbnMudmFsdWUgfVxuICBzZXQgbnVtQ29sdW1ucyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLl9udW1Db2x1bW5zLnZhbHVlKSB7XG4gICAgICB0aGlzLl9udW1Db2x1bW5zLm5leHQodmFsdWUpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX251bUNvbHVtbnMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4odGhpcy5kZWZhdWx0TnVtQ29sdW1ucylcblxuICBwdWJsaWMgcmVhZG9ubHkgbnVtQ29sdW1ucyQ6IE9ic2VydmFibGU8bnVtYmVyPlxuICBwdWJsaWMgcmVhZG9ubHkgd2lkZ2V0SXRlbXMkOiBPYnNlcnZhYmxlPElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdPlxuICBwdWJsaWMgcmVhZG9ubHkgd2lkZ2V0Q29sdW1ucyQ6IE9ic2VydmFibGU8SURhc2hib2FyZFdpZGdldHNDb2x1bW5SZWNvcmRbXT5cblxuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Vmlld0NvbnRhaW5lclJlZiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2R5bmFtaWNDb21wb25lbnRMb2FkZXJNb2R1bGU6IFRoZVNlYW1EeW5hbWljQ29tcG9uZW50TG9hZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ByZWZlcmVuY2VzOiBEYXNoYm9hcmRXaWRnZXRzUHJlZmVyZW5jZXNTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubnVtQ29sdW1ucyQgPSB0aGlzLl9udW1Db2x1bW5zLmFzT2JzZXJ2YWJsZSgpXG5cbiAgICAvLyBXaWRnZXQgaXRlbXMgd2l0aG91dCBwcmVmZXJlbmNlc1xuICAgIGNvbnN0IF93aWRnZXRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFsgdGhpcy5fd2lkZ2V0cywgdGhpcy5fdmlld0NvbnRhaW5lclJlZlN1YmplY3QgXSlcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoWyBkZWZzLCB2Y3IgXSkgPT4gdGhpcy5jcmVhdGVXaWRnZXRJdGVtcyhkZWZzLCB2Y3IpKSlcblxuICAgIC8vIFdpZGdldCBpdGVtcyB3aXRoIHByZWZlcmVuY2VzXG4gICAgdGhpcy53aWRnZXRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFsgX3dpZGdldEl0ZW1zJCwgdGhpcy5udW1Db2x1bW5zJCBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIFdhaXQgdW50aWwgdGhlIGN1cnJlbnQgdGljayBpcyBkb25lLCBpbmNhc2UgYm90aCB0aGUgd2lkZ2V0cyBhbmRcbiAgICAgICAgLy8gbnVtYmVyIG9mIGNvbHVtbnMgYXJlIHNldCBkdXJyaW5nIHRoZSBzYW1lIHRpY2suIFdpdGhvdXQgdGhlIGF1ZGl0LFxuICAgICAgICAvLyB0aGlzIHdvdWxkIGdldCBjYWxsZWQgdHdpY2Ugd2hlbiB0aGUgY29tcG9uZW50IGlzIGluaXRpYWxpemVkIHdpdGhcbiAgICAgICAgLy8gYm90aCBpbnB1dHMgc2V0IG9uZSBhZnRlciB0aGUgb3RoZXIgaW5kaXZpZHVhbGx5LlxuICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgIHN3aXRjaE1hcCgoWyBpdGVtcywgbnVtQ29sdW1ucyBdKSA9PlxuICAgICAgICAgIHRoaXMuX3ByZWZlcmVuY2VzLnNlbGVjdExheW91dCh0aGlzLnByZWZlcmVuY2VLZXksIHRoaXMuX2xheW91dE5hbWUobnVtQ29sdW1ucykpLnBpcGUoXG4gICAgICAgICAgICBtYXAobGF5b3V0ID0+IGxheW91dCA/IHRoaXMud2l0aExheW91dFByZWZlcmVuY2VzKGl0ZW1zLCBsYXlvdXQpIDogaXRlbXMpXG4gICAgICAgICAgKVxuICAgICAgICApLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgICApXG5cbiAgICB0aGlzLndpZGdldENvbHVtbnMkID0gdGhpcy53aWRnZXRJdGVtcyRcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoaXRlbXMgPT4gdGhpcy50b0NvbHVtblJlY29yZHMoaXRlbXMpKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KVxuICAgICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBfbGF5b3V0TmFtZShudW1Db2x1bW5zOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiBgY29sdW1ucy0ke251bUNvbHVtbnN9YFxuICB9XG5cbiAgcHVibGljIHNldFZpZXdDb250YWluZXJSZWYodmNyOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZlN1YmplY3QubmV4dCh2Y3IpXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0SXRlbXMoZGVmczogSURhc2hib2FyZFdpZGdldHNJdGVtRGVmW10sIHZjcj86IFZpZXdDb250YWluZXJSZWYpOiBPYnNlcnZhYmxlPElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdPiB7XG4gICAgY29uc3QgX2NyZWF0ZU9ic2VydmFibGVzID0gKGRlZnMgfHwgW10pLm1hcChkID0+IHRoaXMuY3JlYXRlV2lkZ2V0SXRlbShkLCB2Y3IpKVxuICAgIGNvbnN0IGl0ZW1zJCA9IF9jcmVhdGVPYnNlcnZhYmxlcy5sZW5ndGggPiAwID8gY29tYmluZUxhdGVzdChfY3JlYXRlT2JzZXJ2YWJsZXMpIDogb2YoW10pXG4gICAgcmV0dXJuIGl0ZW1zJC5waXBlKFxuICAgICAgbWFwKGl0ZW1zID0+IGl0ZW1zLmZpbHRlcihub3ROdWxsT3JVbmRlZmluZWQpKSxcbiAgICAgIHRhcChpdGVtcyA9PiB7XG4gICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICAgIGNvbnN0IGlkczogc3RyaW5nW10gPSBpdGVtcy5tYXAodiA9PiB2LndpZGdldElkKVxuICAgICAgICAgIGlmICgobmV3IFNldChpZHMpKS5zaXplICE9PSBpZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYFtEYXNoYm9hcmRXaWRnZXRzU2VydmljZV0gRHVwbGljYXRlIHdpZGdldCdzIHdpdGggdGhlIHNhbWUgJ3dpZGdldElkJyBmb3VuZC5gKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0SXRlbShkZWY6IElEYXNoYm9hcmRXaWRnZXRzSXRlbURlZiwgdmNyPzogVmlld0NvbnRhaW5lclJlZik6IE9ic2VydmFibGU8SURhc2hib2FyZFdpZGdldHNJdGVtIHwgdW5kZWZpbmVkPiB7XG4gICAgaWYgKCFkZWYud2lkZ2V0SWQgfHwgdHlwZW9mIGRlZi53aWRnZXRJZCAhPT0gJ3N0cmluZycgfHwgZGVmLndpZGdldElkLmxlbmd0aCA8IDEpIHtcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYFtEYXNoYm9hcmRXaWRnZXRzU2VydmljZV0gV2lkZ2V0IGlnbm9yZWQuIEFsbCB3aWRnZXRzIG11c3QgaGF2ZSBhICd3aWRnZXRJZCcuYCwgZGVmKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVXaWRnZXRQb3J0YWwoZGVmLCB2Y3IpLnBpcGUoXG4gICAgICBtYXAocG9ydGFsID0+ICh7XG4gICAgICAgIC4uLmRlZixcbiAgICAgICAgY29sOiBkZWYuY29sIHx8IHRoaXMuZGVmYXVsdENvbHVtbixcbiAgICAgICAgb3JkZXI6IGRlZi5vcmRlciB8fCAwLFxuICAgICAgICBwb3J0YWwsXG4gICAgICAgIF9faXRlbURlZjogZGVmXG4gICAgICB9KSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0UG9ydGFsKGRlZjogSURhc2hib2FyZFdpZGdldHNJdGVtRGVmLCB2Y3I/OiBWaWV3Q29udGFpbmVyUmVmKTogT2JzZXJ2YWJsZTxDb21wb25lbnRQb3J0YWw8YW55Pj4ge1xuICAgIGlmICh0eXBlb2YgZGVmLmNvbXBvbmVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLl9keW5hbWljQ29tcG9uZW50TG9hZGVyTW9kdWxlXG4gICAgICAgIC5nZXRDb21wb25lbnRGYWN0b3J5KGRlZi5jb21wb25lbnQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcChjb21wb25lbnRGYWN0b3J5ID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgICAgICAgICBjb21wb25lbnRGYWN0b3J5LmNvbXBvbmVudFR5cGUsXG4gICAgICAgICAgICAgIHZjcixcbiAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAoPGFueSAvKiBDb21wb25lbnRGYWN0b3J5Qm91bmRUb01vZHVsZSAqLz5jb21wb25lbnRGYWN0b3J5KS5uZ01vZHVsZS5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlKDEpXG4gICAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gZGVmLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlclxuICAgICAgPyBvZihuZXcgQ29tcG9uZW50UG9ydGFsKGRlZi5jb21wb25lbnQsIHZjciwgdW5kZWZpbmVkLCBkZWYuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSlcbiAgICAgIDogb2YobmV3IENvbXBvbmVudFBvcnRhbChkZWYuY29tcG9uZW50LCB2Y3IpKVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZU9yZGVyKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLndpZGdldENvbHVtbnMkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFwKGNvbHVtbnMgPT4gY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgICAgbGV0IGkgPSAwXG4gICAgICAgICAgY29sLml0ZW1zLmZvckVhY2goaXRtID0+IGl0bS5vcmRlciA9IGkrKylcbiAgICAgICAgfSkpLFxuICAgICAgICBtYXBUbyh1bmRlZmluZWQpXG4gICAgICApXG4gIH1cblxuICBwdWJsaWMgdG9Db2x1bW5SZWNvcmRzKGl0ZW1zOiBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1bXSk6IElEYXNoYm9hcmRXaWRnZXRzQ29sdW1uUmVjb3JkW10ge1xuICAgIGxldCBjb2x1bW5zOiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZFtdID0gW11cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5udW1Db2x1bW5zOyBpKyspIHtcbiAgICAgIGNvbHVtbnMucHVzaCh7IGNvbHVtbjogaSwgaXRlbXM6IFtdIH0pXG4gICAgfVxuXG4gICAgY29uc3QgY29sTm90Rm91bmQ6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdID0gW11cblxuICAgIC8vIERpc3RyaWJ1dGUgaXRlbXMgaW50byBjb2x1bW5zXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICBjb25zdCBjb2w6IElEYXNoYm9hcmRXaWRnZXRzQ29sdW1uUmVjb3JkIHwgdW5kZWZpbmVkID0gY29sdW1ucy5maW5kKGMgPT4gYy5jb2x1bW4gPT09IGl0ZW0uY29sKVxuICAgICAgaWYgKCFjb2wpIHtcbiAgICAgICAgLy8gY29sdW1ucy5wdXNoKHsgY29sdW1uOiBpdGVtLmNvbCwgaXRlbXM6IFsgaXRlbSBdIH0pXG4gICAgICAgIC8vIGlmIChpdGVtLmNvbCA8IDApIHtcbiAgICAgICAgLy8gICBjb25zdCBjb2wwOiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCB8IHVuZGVmaW5lZCA9IGNvbHVtbnMuZmluZChjID0+IGMuY29sdW1uID09PSAwKVxuICAgICAgICAvLyAgIGlmIChjb2wwKSB7XG4gICAgICAgIC8vICAgICBjb2wwLml0ZW1zLnB1c2goaXRlbSlcbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH0gZWxzZSBpZiAoaXRlbS5jb2wgPiB0aGlzLm51bUNvbHVtbnMgLSAxKSB7XG4gICAgICAgIC8vICAgY29uc3QgY29sTWF4OiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCB8IHVuZGVmaW5lZCA9IGNvbHVtbnMuZmluZChjID0+IGMuY29sdW1uID09PSB0aGlzLm51bUNvbHVtbnMgLSAxKVxuICAgICAgICAvLyAgIGlmIChjb2xNYXgpIHtcbiAgICAgICAgLy8gICAgIGNvbE1heC5pdGVtcy5wdXNoKGl0ZW0pXG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9XG4gICAgICAgIGNvbE5vdEZvdW5kLnB1c2goaXRlbSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbC5pdGVtcy5wdXNoKGl0ZW0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xOb3RGb3VuZC5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgaXRlbSA9IGNvbE5vdEZvdW5kW2ldXG5cbiAgICAgIGNvbnN0IGNvbDogSURhc2hib2FyZFdpZGdldHNDb2x1bW5SZWNvcmQgfCB1bmRlZmluZWQgPSBjb2x1bW5zXG4gICAgICAgIC5maW5kKGMgPT4gYy5jb2x1bW4gPT09IGkgJSB0aGlzLm51bUNvbHVtbnMpXG5cbiAgICAgIGlmIChjb2wpIHtcbiAgICAgICAgY29sLml0ZW1zLnB1c2goaXRlbSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IGNvbHVtbnNcbiAgICBjb2x1bW5zID0gY29sdW1ucy5zb3J0KChhLCBiKSA9PiBhLmNvbHVtbiAtIGIuY29sdW1uKVxuXG4gICAgLy8gU29ydCBjb2x1bW5zIGl0ZW1zXG4gICAgY29sdW1ucy5mb3JFYWNoKGNvbCA9PiBjb2wuaXRlbXMuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpKVxuXG4gICAgcmV0dXJuIGNvbHVtbnNcbiAgfVxuXG4gIHB1YmxpYyB3aXRoTGF5b3V0UHJlZmVyZW5jZXMoaXRlbXM6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdLCBsYXlvdXQ6IElEYXNoYm9hcmRXaWRnZXRJdGVtTGF5b3V0UHJlZmVyZW5jZSk6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdIHtcbiAgICBjb25zdCBfaXRlbXM6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdID0gW11cblxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgY29uc3QgaXRlbVByZWYgPSBsYXlvdXQuaXRlbXMuZmluZCh4ID0+IHgud2lkZ2V0SWQgPT09IGl0ZW0ud2lkZ2V0SWQpXG4gICAgICBfaXRlbXMucHVzaCh7XG4gICAgICAgIC4uLml0ZW0sXG4gICAgICAgIC4uLihpdGVtUHJlZiB8fCB7fSlcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIF9pdGVtc1xuICB9XG5cbiAgcHVibGljIHNhdmVQcmVmZXJlbmNlcygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAvLyBSaWdodCBub3cgdGhlIGl0ZW1zIGFyZSBtb3ZlZCBiZXR3ZWVuIHRoZSBjb2x1bW4gcmVjb3JkIGFycmF5cywgYnV0IHRoZVxuICAgIC8vICdjb2wnIHByb3AgaXMgbm90IHVwZGF0ZWQsIHNvIGl0IGlzIG1hcHBlZCB0byBjb3JyZWN0ZWQgaXRlbXMgaGVyZSBmcm9tXG4gICAgLy8gdGhlIGNvbHVtbiByZWNvcmRzLlxuICAgIGNvbnN0IGl0ZW1zJCA9IHRoaXMud2lkZ2V0Q29sdW1ucyQucGlwZShcbiAgICAgIG1hcChjb2x1bW5zID0+IChbXSBhcyBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1bXSlcbiAgICAgICAgLmNvbmNhdCguLi4oY29sdW1ucy5tYXAoYyA9PiBjLml0ZW1zLm1hcChpdG0gPT4gKHsgLi4uaXRtLCBjb2w6IGMuY29sdW1uIH0pKSkpKVxuICAgICAgKSxcbiAgICApXG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbIGl0ZW1zJCwgdGhpcy5udW1Db2x1bW5zJCBdKS5waXBlKFxuICAgICAgYXVkaXRUaW1lKDApLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHN3aXRjaE1hcCgoWyBpdGVtcywgbnVtQ29sdW1ucyBdKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcmVmZXJlbmNlcy51cGRhdGVMYXlvdXQodGhpcy5wcmVmZXJlbmNlS2V5LCB7XG4gICAgICAgICAgbmFtZTogdGhpcy5fbGF5b3V0TmFtZShudW1Db2x1bW5zKSxcbiAgICAgICAgICBpdGVtc1xuICAgICAgICB9KVxuICAgICAgfSksXG4gICAgICBtYXBUbyh1bmRlZmluZWQpXG4gICAgKVxuICB9XG5cbn1cbiJdfQ==
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLXdpZGdldHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvZGFzaGJvYXJkL2Rhc2hib2FyZC13aWRnZXRzL2Rhc2hib2FyZC13aWRnZXRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBR3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBYTdELE1BQU0sT0FBTyx1QkFBdUI7SUFTbEMsSUFBSSxPQUFPLEtBQWlDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBQ3hFLElBQUksT0FBTyxDQUFDLEtBQWlDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUEsQ0FBQyxDQUFDO0lBRzVFLElBQUksVUFBVSxLQUFhLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBQzFELElBQUksVUFBVSxDQUFDLEtBQWE7UUFDMUIsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDN0I7SUFDSCxDQUFD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Y2RrL3BvcnRhbCdcbmltcG9ydCB7IEluamVjdGFibGUsIGlzRGV2TW9kZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGF1ZGl0VGltZSwgbWFwLCBtYXBUbywgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IFRoZVNlYW1EeW5hbWljQ29tcG9uZW50TG9hZGVyIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2R5bmFtaWMtY29tcG9uZW50LWxvYWRlcidcbmltcG9ydCB7IG5vdE51bGxPclVuZGVmaW5lZCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuaW1wb3J0IHtcbiAgSURhc2hib2FyZFdpZGdldEl0ZW1MYXlvdXRQcmVmZXJlbmNlLFxuICBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCxcbiAgSURhc2hib2FyZFdpZGdldHNJdGVtLFxuICBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZcbn0gZnJvbSAnLi9kYXNoYm9hcmQtd2lkZ2V0cy1pdGVtJ1xuaW1wb3J0IHsgRGFzaGJvYXJkV2lkZ2V0c1ByZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4vZGFzaGJvYXJkLXdpZGdldHMtcHJlZmVyZW5jZXMuc2VydmljZSdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkV2lkZ2V0c1NlcnZpY2Uge1xuXG4gIHB1YmxpYyByZWFkb25seSBwcmVmZXJlbmNlS2V5OiBzdHJpbmcgPSAnZGF0YXRhYmxlLXdpZGdldHMnXG5cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHROdW1Db2x1bW5zOiBudW1iZXIgPSAzXG5cbiAgLyoqIFVzZWQgZm9yIG9wZXJhdGlvbnMsIHN1Y2ggYXMgJ2FkZFdpZGdldCcsIGlmIHRoZSBjb2x1bW4gaXMgbm90IHNwZWNpZmllZC4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRDb2x1bW46IG51bWJlciA9IDBcblxuICBnZXQgd2lkZ2V0cygpOiBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZbXSB7IHJldHVybiB0aGlzLl93aWRnZXRzLnZhbHVlIH1cbiAgc2V0IHdpZGdldHModmFsdWU6IElEYXNoYm9hcmRXaWRnZXRzSXRlbURlZltdKSB7IHRoaXMuX3dpZGdldHMubmV4dCh2YWx1ZSkgfVxuICBwcml2YXRlIF93aWRnZXRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1EZWZbXT4oW10pXG5cbiAgZ2V0IG51bUNvbHVtbnMoKTogbnVtYmVyIHsgcmV0dXJuIHRoaXMuX251bUNvbHVtbnMudmFsdWUgfVxuICBzZXQgbnVtQ29sdW1ucyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLl9udW1Db2x1bW5zLnZhbHVlKSB7XG4gICAgICB0aGlzLl9udW1Db2x1bW5zLm5leHQodmFsdWUpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX251bUNvbHVtbnMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4odGhpcy5kZWZhdWx0TnVtQ29sdW1ucylcblxuICBwdWJsaWMgcmVhZG9ubHkgbnVtQ29sdW1ucyQ6IE9ic2VydmFibGU8bnVtYmVyPlxuICBwdWJsaWMgcmVhZG9ubHkgd2lkZ2V0SXRlbXMkOiBPYnNlcnZhYmxlPElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdPlxuICBwdWJsaWMgcmVhZG9ubHkgd2lkZ2V0Q29sdW1ucyQ6IE9ic2VydmFibGU8SURhc2hib2FyZFdpZGdldHNDb2x1bW5SZWNvcmRbXT5cblxuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Vmlld0NvbnRhaW5lclJlZiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2R5bmFtaWNDb21wb25lbnRMb2FkZXJNb2R1bGU6IFRoZVNlYW1EeW5hbWljQ29tcG9uZW50TG9hZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ByZWZlcmVuY2VzOiBEYXNoYm9hcmRXaWRnZXRzUHJlZmVyZW5jZXNTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubnVtQ29sdW1ucyQgPSB0aGlzLl9udW1Db2x1bW5zLmFzT2JzZXJ2YWJsZSgpXG5cbiAgICAvLyBXaWRnZXQgaXRlbXMgd2l0aG91dCBwcmVmZXJlbmNlc1xuICAgIGNvbnN0IF93aWRnZXRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFsgdGhpcy5fd2lkZ2V0cywgdGhpcy5fdmlld0NvbnRhaW5lclJlZlN1YmplY3QgXSlcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoWyBkZWZzLCB2Y3IgXSkgPT4gdGhpcy5jcmVhdGVXaWRnZXRJdGVtcyhkZWZzLCB2Y3IpKSlcblxuICAgIC8vIFdpZGdldCBpdGVtcyB3aXRoIHByZWZlcmVuY2VzXG4gICAgdGhpcy53aWRnZXRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFsgX3dpZGdldEl0ZW1zJCwgdGhpcy5udW1Db2x1bW5zJCBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIFdhaXQgdW50aWwgdGhlIGN1cnJlbnQgdGljayBpcyBkb25lLCBpbmNhc2UgYm90aCB0aGUgd2lkZ2V0cyBhbmRcbiAgICAgICAgLy8gbnVtYmVyIG9mIGNvbHVtbnMgYXJlIHNldCBkdXJyaW5nIHRoZSBzYW1lIHRpY2suIFdpdGhvdXQgdGhlIGF1ZGl0LFxuICAgICAgICAvLyB0aGlzIHdvdWxkIGdldCBjYWxsZWQgdHdpY2Ugd2hlbiB0aGUgY29tcG9uZW50IGlzIGluaXRpYWxpemVkIHdpdGhcbiAgICAgICAgLy8gYm90aCBpbnB1dHMgc2V0IG9uZSBhZnRlciB0aGUgb3RoZXIgaW5kaXZpZHVhbGx5LlxuICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgIHN3aXRjaE1hcCgoWyBpdGVtcywgbnVtQ29sdW1ucyBdKSA9PlxuICAgICAgICAgIHRoaXMuX3ByZWZlcmVuY2VzLnNlbGVjdExheW91dCh0aGlzLnByZWZlcmVuY2VLZXksIHRoaXMuX2xheW91dE5hbWUobnVtQ29sdW1ucykpLnBpcGUoXG4gICAgICAgICAgICBtYXAobGF5b3V0ID0+IGxheW91dCA/IHRoaXMud2l0aExheW91dFByZWZlcmVuY2VzKGl0ZW1zLCBsYXlvdXQpIDogaXRlbXMpXG4gICAgICAgICAgKVxuICAgICAgICApLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgICApXG5cbiAgICB0aGlzLndpZGdldENvbHVtbnMkID0gdGhpcy53aWRnZXRJdGVtcyRcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoaXRlbXMgPT4gdGhpcy50b0NvbHVtblJlY29yZHMoaXRlbXMpKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KVxuICAgICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBfbGF5b3V0TmFtZShudW1Db2x1bW5zOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiBgY29sdW1ucy0ke251bUNvbHVtbnN9YFxuICB9XG5cbiAgcHVibGljIHNldFZpZXdDb250YWluZXJSZWYodmNyOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZlN1YmplY3QubmV4dCh2Y3IpXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0SXRlbXMoZGVmczogSURhc2hib2FyZFdpZGdldHNJdGVtRGVmW10sIHZjcj86IFZpZXdDb250YWluZXJSZWYpOiBPYnNlcnZhYmxlPElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdPiB7XG4gICAgY29uc3QgX2NyZWF0ZU9ic2VydmFibGVzID0gKGRlZnMgfHwgW10pLm1hcChkID0+IHRoaXMuY3JlYXRlV2lkZ2V0SXRlbShkLCB2Y3IpKVxuICAgIGNvbnN0IGl0ZW1zJCA9IF9jcmVhdGVPYnNlcnZhYmxlcy5sZW5ndGggPiAwID8gY29tYmluZUxhdGVzdChfY3JlYXRlT2JzZXJ2YWJsZXMpIDogb2YoW10pXG4gICAgcmV0dXJuIGl0ZW1zJC5waXBlKFxuICAgICAgbWFwKGl0ZW1zID0+IGl0ZW1zLmZpbHRlcihub3ROdWxsT3JVbmRlZmluZWQpKSxcbiAgICAgIHRhcChpdGVtcyA9PiB7XG4gICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICAgIGNvbnN0IGlkczogc3RyaW5nW10gPSBpdGVtcy5tYXAodiA9PiB2LndpZGdldElkKVxuICAgICAgICAgIGlmICgobmV3IFNldChpZHMpKS5zaXplICE9PSBpZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYFtEYXNoYm9hcmRXaWRnZXRzU2VydmljZV0gRHVwbGljYXRlIHdpZGdldCdzIHdpdGggdGhlIHNhbWUgJ3dpZGdldElkJyBmb3VuZC5gKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0SXRlbShkZWY6IElEYXNoYm9hcmRXaWRnZXRzSXRlbURlZiwgdmNyPzogVmlld0NvbnRhaW5lclJlZik6IE9ic2VydmFibGU8SURhc2hib2FyZFdpZGdldHNJdGVtIHwgdW5kZWZpbmVkPiB7XG4gICAgaWYgKCFkZWYud2lkZ2V0SWQgfHwgdHlwZW9mIGRlZi53aWRnZXRJZCAhPT0gJ3N0cmluZycgfHwgZGVmLndpZGdldElkLmxlbmd0aCA8IDEpIHtcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYFtEYXNoYm9hcmRXaWRnZXRzU2VydmljZV0gV2lkZ2V0IGlnbm9yZWQuIEFsbCB3aWRnZXRzIG11c3QgaGF2ZSBhICd3aWRnZXRJZCcuYCwgZGVmKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVXaWRnZXRQb3J0YWwoZGVmLCB2Y3IpLnBpcGUoXG4gICAgICBtYXAocG9ydGFsID0+ICh7XG4gICAgICAgIC4uLmRlZixcbiAgICAgICAgY29sOiBkZWYuY29sIHx8IHRoaXMuZGVmYXVsdENvbHVtbixcbiAgICAgICAgb3JkZXI6IGRlZi5vcmRlciB8fCAwLFxuICAgICAgICBwb3J0YWwsXG4gICAgICAgIF9faXRlbURlZjogZGVmXG4gICAgICB9KSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgY3JlYXRlV2lkZ2V0UG9ydGFsKGRlZjogSURhc2hib2FyZFdpZGdldHNJdGVtRGVmLCB2Y3I/OiBWaWV3Q29udGFpbmVyUmVmKTogT2JzZXJ2YWJsZTxDb21wb25lbnRQb3J0YWw8YW55Pj4ge1xuICAgIGlmICh0eXBlb2YgZGVmLmNvbXBvbmVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLl9keW5hbWljQ29tcG9uZW50TG9hZGVyTW9kdWxlXG4gICAgICAgIC5nZXRDb21wb25lbnRGYWN0b3J5KGRlZi5jb21wb25lbnQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcChjb21wb25lbnRGYWN0b3J5ID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgICAgICAgICBjb21wb25lbnRGYWN0b3J5LmNvbXBvbmVudFR5cGUsXG4gICAgICAgICAgICAgIHZjcixcbiAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAoPGFueSAvKiBDb21wb25lbnRGYWN0b3J5Qm91bmRUb01vZHVsZSAqLz5jb21wb25lbnRGYWN0b3J5KS5uZ01vZHVsZS5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlKDEpXG4gICAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gZGVmLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlclxuICAgICAgPyBvZihuZXcgQ29tcG9uZW50UG9ydGFsKGRlZi5jb21wb25lbnQsIHZjciwgdW5kZWZpbmVkLCBkZWYuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSlcbiAgICAgIDogb2YobmV3IENvbXBvbmVudFBvcnRhbChkZWYuY29tcG9uZW50LCB2Y3IpKVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZU9yZGVyKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLndpZGdldENvbHVtbnMkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFwKGNvbHVtbnMgPT4gY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgICAgbGV0IGkgPSAwXG4gICAgICAgICAgY29sLml0ZW1zLmZvckVhY2goaXRtID0+IGl0bS5vcmRlciA9IGkrKylcbiAgICAgICAgfSkpLFxuICAgICAgICBtYXBUbyh1bmRlZmluZWQpXG4gICAgICApXG4gIH1cblxuICBwdWJsaWMgdG9Db2x1bW5SZWNvcmRzKGl0ZW1zOiBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1bXSk6IElEYXNoYm9hcmRXaWRnZXRzQ29sdW1uUmVjb3JkW10ge1xuICAgIGxldCBjb2x1bW5zOiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZFtdID0gW11cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5udW1Db2x1bW5zOyBpKyspIHtcbiAgICAgIGNvbHVtbnMucHVzaCh7IGNvbHVtbjogaSwgaXRlbXM6IFtdIH0pXG4gICAgfVxuXG4gICAgY29uc3QgY29sTm90Rm91bmQ6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdID0gW11cblxuICAgIC8vIERpc3RyaWJ1dGUgaXRlbXMgaW50byBjb2x1bW5zXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICBjb25zdCBjb2w6IElEYXNoYm9hcmRXaWRnZXRzQ29sdW1uUmVjb3JkIHwgdW5kZWZpbmVkID0gY29sdW1ucy5maW5kKGMgPT4gYy5jb2x1bW4gPT09IGl0ZW0uY29sKVxuICAgICAgaWYgKCFjb2wpIHtcbiAgICAgICAgLy8gY29sdW1ucy5wdXNoKHsgY29sdW1uOiBpdGVtLmNvbCwgaXRlbXM6IFsgaXRlbSBdIH0pXG4gICAgICAgIC8vIGlmIChpdGVtLmNvbCA8IDApIHtcbiAgICAgICAgLy8gICBjb25zdCBjb2wwOiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCB8IHVuZGVmaW5lZCA9IGNvbHVtbnMuZmluZChjID0+IGMuY29sdW1uID09PSAwKVxuICAgICAgICAvLyAgIGlmIChjb2wwKSB7XG4gICAgICAgIC8vICAgICBjb2wwLml0ZW1zLnB1c2goaXRlbSlcbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH0gZWxzZSBpZiAoaXRlbS5jb2wgPiB0aGlzLm51bUNvbHVtbnMgLSAxKSB7XG4gICAgICAgIC8vICAgY29uc3QgY29sTWF4OiBJRGFzaGJvYXJkV2lkZ2V0c0NvbHVtblJlY29yZCB8IHVuZGVmaW5lZCA9IGNvbHVtbnMuZmluZChjID0+IGMuY29sdW1uID09PSB0aGlzLm51bUNvbHVtbnMgLSAxKVxuICAgICAgICAvLyAgIGlmIChjb2xNYXgpIHtcbiAgICAgICAgLy8gICAgIGNvbE1heC5pdGVtcy5wdXNoKGl0ZW0pXG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9XG4gICAgICAgIGNvbE5vdEZvdW5kLnB1c2goaXRlbSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbC5pdGVtcy5wdXNoKGl0ZW0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xOb3RGb3VuZC5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgaXRlbSA9IGNvbE5vdEZvdW5kW2ldXG5cbiAgICAgIGNvbnN0IGNvbDogSURhc2hib2FyZFdpZGdldHNDb2x1bW5SZWNvcmQgfCB1bmRlZmluZWQgPSBjb2x1bW5zXG4gICAgICAgIC5maW5kKGMgPT4gYy5jb2x1bW4gPT09IGkgJSB0aGlzLm51bUNvbHVtbnMpXG5cbiAgICAgIGlmIChjb2wpIHtcbiAgICAgICAgY29sLml0ZW1zLnB1c2goaXRlbSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IGNvbHVtbnNcbiAgICBjb2x1bW5zID0gY29sdW1ucy5zb3J0KChhLCBiKSA9PiBhLmNvbHVtbiAtIGIuY29sdW1uKVxuXG4gICAgLy8gU29ydCBjb2x1bW5zIGl0ZW1zXG4gICAgY29sdW1ucy5mb3JFYWNoKGNvbCA9PiBjb2wuaXRlbXMuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpKVxuXG4gICAgcmV0dXJuIGNvbHVtbnNcbiAgfVxuXG4gIHB1YmxpYyB3aXRoTGF5b3V0UHJlZmVyZW5jZXMoaXRlbXM6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdLCBsYXlvdXQ6IElEYXNoYm9hcmRXaWRnZXRJdGVtTGF5b3V0UHJlZmVyZW5jZSk6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdIHtcbiAgICBjb25zdCBfaXRlbXM6IElEYXNoYm9hcmRXaWRnZXRzSXRlbVtdID0gW11cblxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgY29uc3QgaXRlbVByZWYgPSBsYXlvdXQuaXRlbXMuZmluZCh4ID0+IHgud2lkZ2V0SWQgPT09IGl0ZW0ud2lkZ2V0SWQpXG4gICAgICBfaXRlbXMucHVzaCh7XG4gICAgICAgIC4uLml0ZW0sXG4gICAgICAgIC4uLihpdGVtUHJlZiB8fCB7fSlcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIF9pdGVtc1xuICB9XG5cbiAgcHVibGljIHNhdmVQcmVmZXJlbmNlcygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAvLyBSaWdodCBub3cgdGhlIGl0ZW1zIGFyZSBtb3ZlZCBiZXR3ZWVuIHRoZSBjb2x1bW4gcmVjb3JkIGFycmF5cywgYnV0IHRoZVxuICAgIC8vICdjb2wnIHByb3AgaXMgbm90IHVwZGF0ZWQsIHNvIGl0IGlzIG1hcHBlZCB0byBjb3JyZWN0ZWQgaXRlbXMgaGVyZSBmcm9tXG4gICAgLy8gdGhlIGNvbHVtbiByZWNvcmRzLlxuICAgIGNvbnN0IGl0ZW1zJCA9IHRoaXMud2lkZ2V0Q29sdW1ucyQucGlwZShcbiAgICAgIG1hcChjb2x1bW5zID0+IChbXSBhcyBJRGFzaGJvYXJkV2lkZ2V0c0l0ZW1bXSlcbiAgICAgICAgLmNvbmNhdCguLi4oY29sdW1ucy5tYXAoYyA9PiBjLml0ZW1zLm1hcChpdG0gPT4gKHsgLi4uaXRtLCBjb2w6IGMuY29sdW1uIH0pKSkpKVxuICAgICAgKSxcbiAgICApXG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbIGl0ZW1zJCwgdGhpcy5udW1Db2x1bW5zJCBdKS5waXBlKFxuICAgICAgYXVkaXRUaW1lKDApLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHN3aXRjaE1hcCgoWyBpdGVtcywgbnVtQ29sdW1ucyBdKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcmVmZXJlbmNlcy51cGRhdGVMYXlvdXQodGhpcy5wcmVmZXJlbmNlS2V5LCB7XG4gICAgICAgICAgbmFtZTogdGhpcy5fbGF5b3V0TmFtZShudW1Db2x1bW5zKSxcbiAgICAgICAgICBpdGVtc1xuICAgICAgICB9KVxuICAgICAgfSksXG4gICAgICBtYXBUbyh1bmRlZmluZWQpXG4gICAgKVxuICB9XG5cbn1cbiJdfQ==
@@ -8,12 +8,12 @@ export class DashboardComponent {
8
8
  this.widgetsDraggable = true;
9
9
  }
10
10
  }
11
- DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- DashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: DashboardComponent, selector: "seam-dashboard", inputs: { widgets: "widgets", widgetsDraggable: "widgetsDraggable" }, ngImport: i0, template: "<seam-dashboard-widgets [widgets]=\"widgets\" [widgetsDraggable]=\"widgetsDraggable\"></seam-dashboard-widgets>\n", styles: [""], dependencies: [{ kind: "component", type: i1.DashboardWidgetsComponent, selector: "seam-dashboard-widgets", inputs: ["gapSize", "widgetsDraggable", "dragToggleVisible", "numColumns", "widgets"], outputs: ["widgetsChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11
+ DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ DashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: DashboardComponent, selector: "seam-dashboard", inputs: { widgets: "widgets", widgetsDraggable: "widgetsDraggable" }, ngImport: i0, template: "<seam-dashboard-widgets [widgets]=\"widgets\" [widgetsDraggable]=\"widgetsDraggable\"></seam-dashboard-widgets>\n", styles: [""], dependencies: [{ kind: "component", type: i1.DashboardWidgetsComponent, selector: "seam-dashboard-widgets", inputs: ["gapSize", "widgetsDraggable", "dragToggleVisible", "numColumns", "widgets"], outputs: ["widgetsChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
13
  __decorate([
14
14
  InputBoolean()
15
15
  ], DashboardComponent.prototype, "widgetsDraggable", void 0);
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DashboardComponent, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: DashboardComponent, decorators: [{
17
17
  type: Component,
18
18
  args: [{ selector: 'seam-dashboard', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-dashboard-widgets [widgets]=\"widgets\" [widgetsDraggable]=\"widgetsDraggable\"></seam-dashboard-widgets>\n" }]
19
19
  }], ctorParameters: function () { return []; }, propDecorators: { widgets: [{
@@ -13,8 +13,8 @@ import { DashboardComponent } from './dashboard.component';
13
13
  import * as i0 from "@angular/core";
14
14
  export class TheSeamDashboardModule {
15
15
  }
16
- TheSeamDashboardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDashboardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- TheSeamDashboardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDashboardModule, declarations: [DashboardComponent,
16
+ TheSeamDashboardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDashboardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ TheSeamDashboardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDashboardModule, declarations: [DashboardComponent,
18
18
  DashboardWidgetsComponent,
19
19
  DashboardWidgetContainerComponent,
20
20
  DashboardWidgetTemplateContainerComponent,
@@ -26,13 +26,13 @@ TheSeamDashboardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
26
26
  TheSeamSharedModule], exports: [DashboardComponent,
27
27
  DashboardWidgetsComponent,
28
28
  DashboardWidgetPortalOutletDirective] });
29
- TheSeamDashboardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDashboardModule, imports: [CommonModule,
29
+ TheSeamDashboardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDashboardModule, imports: [CommonModule,
30
30
  PortalModule,
31
31
  DragDropModule,
32
32
  TheSeamButtonsModule,
33
33
  TheSeamIconModule,
34
34
  TheSeamSharedModule] });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDashboardModule, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDashboardModule, decorators: [{
36
36
  type: NgModule,
37
37
  args: [{
38
38
  declarations: [
@@ -5,12 +5,12 @@ import { HierarchyRouterOutletComponent } from './hierarchy-router-outlet/hierar
5
5
  import * as i0 from "@angular/core";
6
6
  export class TheSeamDynamicRouterModule {
7
7
  }
8
- TheSeamDynamicRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDynamicRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- TheSeamDynamicRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDynamicRouterModule, declarations: [HierarchyRouterOutletComponent], imports: [CommonModule,
8
+ TheSeamDynamicRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TheSeamDynamicRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, declarations: [HierarchyRouterOutletComponent], imports: [CommonModule,
10
10
  RouterModule], exports: [HierarchyRouterOutletComponent] });
11
- TheSeamDynamicRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDynamicRouterModule, imports: [CommonModule,
11
+ TheSeamDynamicRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, imports: [CommonModule,
12
12
  RouterModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamDynamicRouterModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamDynamicRouterModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [
@@ -94,8 +94,8 @@ export class HierarchyRouterOutletComponent {
94
94
  this.ngContentVisible = !this.outletActive;
95
95
  }
96
96
  }
97
- HierarchyRouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: HierarchyRouterOutletComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
98
- HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: HierarchyRouterOutletComponent, selector: "seam-hierarchy-router-outlet", ngImport: i0, template: "<div class=\"h-100\"\n [@routeAnimations]=\"prepareRoute(outlet)\"\n (@routeAnimations.start)=\"routeAnimationsStart($event)\"\n (@routeAnimations.done)=\"routeAnimationsDone($event)\">\n <div class=\"hierarchy-router-outlet--content h-100\" *ngIf=\"ngContentVisible\">\n <!-- {{ animState }} -->\n <div class=\"border border-info h-100\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"router-container\"\n [class.h-100]=\"!ngContentVisible\"\n >\n <!-- <div [@routeAnimations]=\"animState\"> -->\n <!-- <div class=\"hierarchy-router-outlet--route-content\"> -->\n <router-outlet #outlet=\"outlet\"\n (activate)=\"outletActivate($event)\"\n (deactivate)=\"outletDeactivate($event)\">\n </router-outlet>\n </div>\n</div>\n", styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], animations: [
97
+ HierarchyRouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyRouterOutletComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
98
+ HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: HierarchyRouterOutletComponent, selector: "seam-hierarchy-router-outlet", ngImport: i0, template: "<div class=\"h-100\"\n [@routeAnimations]=\"prepareRoute(outlet)\"\n (@routeAnimations.start)=\"routeAnimationsStart($event)\"\n (@routeAnimations.done)=\"routeAnimationsDone($event)\">\n <div class=\"hierarchy-router-outlet--content h-100\" *ngIf=\"ngContentVisible\">\n <!-- {{ animState }} -->\n <div class=\"border border-info h-100\">\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"router-container\"\n [class.h-100]=\"!ngContentVisible\"\n >\n <!-- <div [@routeAnimations]=\"animState\"> -->\n <!-- <div class=\"hierarchy-router-outlet--route-content\"> -->\n <router-outlet #outlet=\"outlet\"\n (activate)=\"outletActivate($event)\"\n (deactivate)=\"outletDeactivate($event)\">\n </router-outlet>\n </div>\n</div>\n", styles: [":host{display:block;height:100%}:host ::ng-deep router-outlet+*{background-color:#fff;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], animations: [
99
99
  // fader,
100
100
  slider,
101
101
  // transformer,
@@ -103,7 +103,7 @@ HierarchyRouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
103
103
  // sideToSide
104
104
  // contentLeave
105
105
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: HierarchyRouterOutletComponent, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyRouterOutletComponent, decorators: [{
107
107
  type: Component,
108
108
  args: [{ selector: 'seam-hierarchy-router-outlet', animations: [
109
109
  // fader,
@@ -18,9 +18,9 @@ export class HierarchyLevelResolver {
18
18
  return 0;
19
19
  }
20
20
  }
21
- HierarchyLevelResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: HierarchyLevelResolver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
- HierarchyLevelResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: HierarchyLevelResolver, providedIn: 'root' });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: HierarchyLevelResolver, decorators: [{
21
+ HierarchyLevelResolver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
+ HierarchyLevelResolver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, providedIn: 'root' });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: HierarchyLevelResolver, decorators: [{
24
24
  type: Injectable,
25
25
  args: [{ providedIn: 'root' }]
26
26
  }], ctorParameters: function () { return []; } });
@@ -3,9 +3,9 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "@ajsf/core";
4
4
  export class TheSeamSchemaFormFrameworkComponent {
5
5
  }
6
- TheSeamSchemaFormFrameworkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- TheSeamSchemaFormFrameworkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormFrameworkComponent, selector: "seam-schema-form-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n", styles: [""], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, decorators: [{
6
+ TheSeamSchemaFormFrameworkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ TheSeamSchemaFormFrameworkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormFrameworkComponent, selector: "seam-schema-form-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n", styles: [""], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormFrameworkComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'seam-schema-form-framework', template: "<select-widget-widget\n [dataIndex]=\"$any(dataIndex)\"\n [layoutIndex]=\"$any(layoutIndex)\"\n [layoutNode]=\"layoutNode\">\n</select-widget-widget>\n" }]
11
11
  }], propDecorators: { layoutNode: [{
@@ -22,9 +22,9 @@ export class TheSeamFramework extends Framework {
22
22
  };
23
23
  }
24
24
  }
25
- TheSeamFramework.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
26
- TheSeamFramework.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFramework });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamFramework, decorators: [{
25
+ TheSeamFramework.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
26
+ TheSeamFramework.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamFramework, decorators: [{
28
28
  type: Injectable
29
29
  }] });
30
30
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS9zY2hlbWEtZm9ybS1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRXRDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDZFQUE2RSxDQUFBO0FBQ2hJLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVFQUF1RSxDQUFBO0FBQ3ZILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlFQUF5RSxDQUFBO0FBQzFILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlFQUF5RSxDQUFBO0FBQzFILE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHFGQUFxRixDQUFBO0FBRzNJLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOztBQUd2RixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQUQvQzs7UUFFRSxTQUFJLEdBQUcsZ0JBQWdCLENBQUE7UUFFdkIsY0FBUyxHQUFHLG1DQUFtQyxDQUFBO1FBRS9DLFlBQU8sR0FBRztZQUNSLFVBQVUsRUFBRSxrQ0FBa0M7WUFDOUMsOENBQThDO1lBQzlDLFFBQVEsRUFBRSxxQ0FBcUM7WUFDL0MsTUFBTSxFQUFFLCtCQUErQjtZQUN2QyxRQUFRLEVBQUUsZ0NBQWdDO1lBQzFDLFFBQVEsRUFBRSxnQ0FBZ0M7U0FDM0MsQ0FBQTtLQUNGOzs2R0FiWSxnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IEZyYW1ld29yayB9IGZyb20gJ0BhanNmL2NvcmUnXG5cbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1jaGVja2JveC9zY2hlbWEtZm9ybS1jaGVja2JveC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0taW5wdXQvc2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1OdW1iZXJDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1udW1iZXIvc2NoZW1hLWZvcm0tbnVtYmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc2VsZWN0L3NjaGVtYS1mb3JtLXNlbGVjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdFNwbGl0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0LXNwbGl0L3NjaGVtYS1mb3JtLXN1Ym1pdC1zcGxpdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdENvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXN1Ym1pdC9zY2hlbWEtZm9ybS1zdWJtaXQuY29tcG9uZW50J1xuXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya0NvbXBvbmVudCB9IGZyb20gJy4vc2NoZW1hLWZvcm0tZnJhbWV3b3JrLmNvbXBvbmVudCdcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1GcmFtZXdvcmsgZXh0ZW5kcyBGcmFtZXdvcmsge1xuICBuYW1lID0gJ3NlYW0tZnJhbWV3b3JrJ1xuXG4gIGZyYW1ld29yayA9IFRoZVNlYW1TY2hlbWFGb3JtRnJhbWV3b3JrQ29tcG9uZW50XG5cbiAgd2lkZ2V0cyA9IHtcbiAgICAnY2hlY2tib3gnOiBUaGVTZWFtU2NoZW1hRm9ybUNoZWNrYm94Q29tcG9uZW50LFxuICAgIC8vICdzdWJtaXQnOiBUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdENvbXBvbmVudCxcbiAgICAnc3VibWl0JzogVGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRTcGxpdENvbXBvbmVudCxcbiAgICAndGV4dCc6IFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQsXG4gICAgJ251bWJlcic6IFRoZVNlYW1TY2hlbWFGb3JtTnVtYmVyQ29tcG9uZW50LFxuICAgICdzZWxlY3QnOiBUaGVTZWFtU2NoZW1hRm9ybVNlbGVjdENvbXBvbmVudFxuICB9XG59XG4iXX0=
@@ -7,13 +7,13 @@ import { TheSeamSchemaFormFrameworkComponent } from './schema-form-framework.com
7
7
  import * as i0 from "@angular/core";
8
8
  export class TheSeamSchemaFormModule {
9
9
  }
10
- TheSeamSchemaFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- TheSeamSchemaFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormModule, declarations: [TheSeamSchemaFormFrameworkComponent], imports: [CommonModule,
10
+ TheSeamSchemaFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ TheSeamSchemaFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, declarations: [TheSeamSchemaFormFrameworkComponent], imports: [CommonModule,
12
12
  JsonSchemaFormModule,
13
13
  TheSeamSchemaFormControlsModule,
14
14
  WidgetLibraryModule], exports: [TheSeamSchemaFormFrameworkComponent,
15
15
  JsonSchemaFormModule] });
16
- TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormModule, providers: [
16
+ TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, providers: [
17
17
  JsonSchemaFormService,
18
18
  FrameworkLibraryService,
19
19
  WidgetLibraryService,
@@ -22,7 +22,7 @@ TheSeamSchemaFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
22
22
  JsonSchemaFormModule,
23
23
  TheSeamSchemaFormControlsModule,
24
24
  WidgetLibraryModule, JsonSchemaFormModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [
@@ -28,9 +28,9 @@ export class TheSeamSchemaFormCheckboxComponent {
28
28
  return this.jsf.getFormControlValue(this) === this.trueValue;
29
29
  }
30
30
  }
31
- TheSeamSchemaFormCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
32
- TheSeamSchemaFormCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormCheckboxComponent, selector: "seam-schema-form-checkbox", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: ["tabIndex", "id", "aria-label", "aria-labelledby", "required", "checked", "disabled", "indeterminate", "name", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["seamCheckbox"] }] });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, decorators: [{
31
+ TheSeamSchemaFormCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
32
+ TheSeamSchemaFormCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormCheckboxComponent, selector: "seam-schema-form-checkbox", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: ["tabIndex", "id", "aria-label", "aria-labelledby", "required", "checked", "disabled", "indeterminate", "name", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["seamCheckbox"] }] });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormCheckboxComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{ selector: 'seam-schema-form-checkbox', template: "<div class=\"mb-3\">\n <seam-form-field *ngIf=\"boundControl\">\n <seam-checkbox seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <seam-checkbox seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (change)=\"updateValue($event)\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </seam-checkbox>\n </seam-form-field>\n</div>\n" }]
36
36
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -24,8 +24,8 @@ const controls = [
24
24
  ];
25
25
  export class TheSeamSchemaFormControlsModule {
26
26
  }
27
- TheSeamSchemaFormControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
- TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormControlsModule, declarations: [TheSeamSchemaFormCheckboxComponent,
27
+ TheSeamSchemaFormControlsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
+ TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, declarations: [TheSeamSchemaFormCheckboxComponent,
29
29
  TheSeamSchemaFormSubmitComponent,
30
30
  TheSeamSchemaFormSelectComponent,
31
31
  TheSeamSchemaFormInputComponent,
@@ -43,7 +43,7 @@ TheSeamSchemaFormControlsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
43
43
  TheSeamSchemaFormInputComponent,
44
44
  TheSeamSchemaFormNumberComponent,
45
45
  TheSeamSchemaFormSubmitSplitComponent, JsonSchemaFormModule] });
46
- TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormControlsModule, imports: [CommonModule,
46
+ TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, imports: [CommonModule,
47
47
  ReactiveFormsModule,
48
48
  JsonSchemaFormModule,
49
49
  TheSeamFormFieldModule,
@@ -51,7 +51,7 @@ TheSeamSchemaFormControlsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "
51
51
  TheSeamMenuModule,
52
52
  TheSeamButtonsModule,
53
53
  NgSelectModule, JsonSchemaFormModule] });
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormControlsModule, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormControlsModule, decorators: [{
55
55
  type: NgModule,
56
56
  args: [{
57
57
  declarations: [
@@ -19,9 +19,9 @@ export class TheSeamSchemaFormInputComponent {
19
19
  this.jsf.updateValue(this, event.target.value);
20
20
  }
21
21
  }
22
- TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
23
- TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormInputComponent, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
22
+ TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
23
+ TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormInputComponent, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{ selector: 'seam-schema-form-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
27
27
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -25,9 +25,9 @@ export class TheSeamSchemaFormNumberComponent {
25
25
  this.jsf.updateValue(this, event.target.value);
26
26
  }
27
27
  }
28
- TheSeamSchemaFormNumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormNumberComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
29
- TheSeamSchemaFormNumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormNumberComponent, selector: "seam-schema-form-number", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormNumberComponent, decorators: [{
28
+ TheSeamSchemaFormNumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormNumberComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
29
+ TheSeamSchemaFormNumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormNumberComponent, selector: "seam-schema-form-number", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormNumberComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'seam-schema-form-number', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [attr.max]=\"options?.maximum\"\n [attr.min]=\"options?.minimum\"\n [attr.step]=\"options?.multipleOf || options?.step || 'any'\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type === 'range' ? 'range' : 'number'\"\n [disabled]=\"controlDisabled\">\n <span *ngIf=\"layoutNode?.type === 'range'\" [innerHTML]=\"controlValue\"></span>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
33
33
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -23,9 +23,9 @@ export class TheSeamSchemaFormSelectComponent {
23
23
  this.jsf.updateValue(this, event.value);
24
24
  }
25
25
  }
26
- TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
27
- TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormSelectComponent, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
26
+ TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
27
+ TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormSelectComponent, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'seam-schema-form-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
31
31
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
@@ -31,9 +31,9 @@ export class TheSeamSchemaFormSubmitComponent {
31
31
  }
32
32
  }
33
33
  }
34
- TheSeamSchemaFormSubmitComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormSubmitComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
35
- TheSeamSchemaFormSubmitComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: TheSeamSchemaFormSubmitComponent, selector: "seam-schema-form-submit", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div\n [class]=\"options?.htmlClass || ''\">\n <input\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.readonly]=\"options?.readonly ? 'readonly' : null\"\n [attr.required]=\"options?.required\"\n [class]=\"'btn btn-primary ' + (options?.fieldHtmlClass || '')\"\n [disabled]=\"controlDisabled\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [type]=\"layoutNode?.type\"\n [value]=\"controlValue\"\n (click)=\"updateValue($event)\">\n</div>\n" });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: TheSeamSchemaFormSubmitComponent, decorators: [{
34
+ TheSeamSchemaFormSubmitComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSubmitComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
35
+ TheSeamSchemaFormSubmitComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: TheSeamSchemaFormSubmitComponent, selector: "seam-schema-form-submit", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div\n [class]=\"options?.htmlClass || ''\">\n <input\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.readonly]=\"options?.readonly ? 'readonly' : null\"\n [attr.required]=\"options?.required\"\n [class]=\"'btn btn-primary ' + (options?.fieldHtmlClass || '')\"\n [disabled]=\"controlDisabled\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [type]=\"layoutNode?.type\"\n [value]=\"controlValue\"\n (click)=\"updateValue($event)\">\n</div>\n" });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: TheSeamSchemaFormSubmitComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ selector: 'seam-schema-form-submit', template: "<div\n [class]=\"options?.htmlClass || ''\">\n <input\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.readonly]=\"options?.readonly ? 'readonly' : null\"\n [attr.required]=\"options?.required\"\n [class]=\"'btn btn-primary ' + (options?.fieldHtmlClass || '')\"\n [disabled]=\"controlDisabled\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [type]=\"layoutNode?.type\"\n [value]=\"controlValue\"\n (click)=\"updateValue($event)\">\n</div>\n" }]
39
39
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{