@elderbyte/ngx-starter 15.8.0 → 15.8.2

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 (273) hide show
  1. package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +3 -3
  2. package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +3 -3
  3. package/esm2020/lib/common/forms/elder-from-field-base.mjs +3 -3
  4. package/esm2020/lib/common/forms/elder-from-field-customizable-base.mjs +3 -3
  5. package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +3 -3
  6. package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +3 -3
  7. package/esm2020/lib/common/forms/form-field-base.component.mjs +3 -3
  8. package/esm2020/lib/common/forms/multi-model-base.component.mjs +3 -3
  9. package/esm2020/lib/common/forms/template-composite-control.mjs +3 -3
  10. package/esm2020/lib/common/forms/value-accessor-base.mjs +3 -3
  11. package/esm2020/lib/common/http/http-client-builder.service.mjs +3 -3
  12. package/esm2020/lib/common/http/http-client-pristine.mjs +3 -3
  13. package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +3 -3
  14. package/esm2020/lib/common/url/elder-router.service.mjs +3 -3
  15. package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +3 -3
  16. package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +3 -3
  17. package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +4 -4
  18. package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +3 -3
  19. package/esm2020/lib/components/auditing/elder-audit.module.mjs +4 -4
  20. package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +3 -3
  21. package/esm2020/lib/components/button-group/elder-button-group.module.mjs +4 -4
  22. package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +3 -3
  23. package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +3 -3
  24. package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +3 -3
  25. package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +4 -4
  26. package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +3 -3
  27. package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +18 -18
  28. package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +4 -4
  29. package/esm2020/lib/components/chips/elder-chip-label.directive.mjs +3 -3
  30. package/esm2020/lib/components/chips/elder-chips.module.mjs +4 -4
  31. package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +4 -4
  32. package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +3 -3
  33. package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +3 -3
  34. package/esm2020/lib/components/containers/elder-containers.module.mjs +4 -4
  35. package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +3 -3
  36. package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +3 -3
  37. package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +3 -3
  38. package/esm2020/lib/components/csv/elder-csv.module.mjs +4 -4
  39. package/esm2020/lib/components/currency/elder-currency.module.mjs +4 -4
  40. package/esm2020/lib/components/currency/elder-currency.pipe.mjs +3 -3
  41. package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +4 -4
  42. package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +3 -3
  43. package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +3 -3
  44. package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +3 -3
  45. package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +3 -3
  46. package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +3 -3
  47. package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +3 -3
  48. package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +3 -3
  49. package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +4 -4
  50. package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +6 -6
  51. package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +3 -3
  52. package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +3 -3
  53. package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +3 -3
  54. package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +9 -9
  55. package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +4 -4
  56. package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +3 -3
  57. package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +4 -4
  58. package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +3 -3
  59. package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +3 -3
  60. package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +3 -3
  61. package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +3 -3
  62. package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +3 -3
  63. package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +3 -3
  64. package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +3 -3
  65. package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +3 -3
  66. package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +3 -3
  67. package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +3 -3
  68. package/esm2020/lib/components/data-view/table/elder-table.module.mjs +4 -4
  69. package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +3 -3
  70. package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +3 -3
  71. package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +4 -4
  72. package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +3 -3
  73. package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +3 -3
  74. package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +3 -3
  75. package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +3 -3
  76. package/esm2020/lib/components/errors/elder-error.module.mjs +4 -4
  77. package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +3 -3
  78. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +3 -3
  79. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +4 -4
  80. package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +3 -3
  81. package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +5 -22
  82. package/esm2020/lib/components/files/elder-file-select.directive.mjs +3 -3
  83. package/esm2020/lib/components/files/elder-file.module.mjs +4 -4
  84. package/esm2020/lib/components/files/file-select/file-select.component.mjs +3 -3
  85. package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +3 -3
  86. package/esm2020/lib/components/files/listing/file-listing-rx.mjs +16 -2
  87. package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +3 -3
  88. package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +3 -3
  89. package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +3 -3
  90. package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +3 -3
  91. package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +41 -6
  92. package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +3 -3
  93. package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +3 -3
  94. package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +3 -3
  95. package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +4 -4
  96. package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +3 -3
  97. package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +3 -3
  98. package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +3 -3
  99. package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +3 -3
  100. package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +3 -3
  101. package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +3 -3
  102. package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +3 -3
  103. package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +3 -3
  104. package/esm2020/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +3 -3
  105. package/esm2020/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +3 -3
  106. package/esm2020/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +3 -3
  107. package/esm2020/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +3 -3
  108. package/esm2020/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +3 -3
  109. package/esm2020/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +3 -3
  110. package/esm2020/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +3 -3
  111. package/esm2020/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +3 -3
  112. package/esm2020/lib/components/forms/elder-forms.module.mjs +4 -4
  113. package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +3 -3
  114. package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +3 -3
  115. package/esm2020/lib/components/forms/search/elder-search.module.mjs +4 -4
  116. package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +3 -3
  117. package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +3 -3
  118. package/esm2020/lib/components/global-search/elder-global-search.component.mjs +3 -3
  119. package/esm2020/lib/components/global-search/elder-global-search.module.mjs +4 -4
  120. package/esm2020/lib/components/global-search/elder-global-search.service.mjs +3 -3
  121. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +3 -3
  122. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +4 -4
  123. package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +3 -3
  124. package/esm2020/lib/components/headers/elder-header.module.mjs +4 -4
  125. package/esm2020/lib/components/http-support/elder-http-client.service.mjs +3 -3
  126. package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +4 -4
  127. package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +3 -3
  128. package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +3 -3
  129. package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +3 -3
  130. package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +3 -3
  131. package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +3 -3
  132. package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +3 -3
  133. package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +3 -3
  134. package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +3 -3
  135. package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +3 -3
  136. package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +3 -3
  137. package/esm2020/lib/components/i18n/language/elder-language.module.mjs +4 -4
  138. package/esm2020/lib/components/i18n/language/elder-language.service.mjs +3 -3
  139. package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +3 -3
  140. package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +4 -4
  141. package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +3 -3
  142. package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +3 -3
  143. package/esm2020/lib/components/iframes/elder-iframe.module.mjs +4 -4
  144. package/esm2020/lib/components/iframes/iframe-close.directive.mjs +3 -3
  145. package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +3 -3
  146. package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +3 -3
  147. package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +3 -3
  148. package/esm2020/lib/components/iframes/iframe.service.mjs +3 -3
  149. package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +3 -3
  150. package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +3 -3
  151. package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +7 -7
  152. package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +3 -3
  153. package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +3 -3
  154. package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +3 -3
  155. package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +4 -4
  156. package/esm2020/lib/components/labels/elder-labels.module.mjs +4 -4
  157. package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +3 -3
  158. package/esm2020/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +3 -3
  159. package/esm2020/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +3 -3
  160. package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +3 -3
  161. package/esm2020/lib/components/measures/elder-measures.module.mjs +8 -8
  162. package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +3 -3
  163. package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +3 -3
  164. package/esm2020/lib/components/measures/elder-unit.service.mjs +3 -3
  165. package/esm2020/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +3 -3
  166. package/esm2020/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +3 -3
  167. package/esm2020/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +3 -3
  168. package/esm2020/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +3 -3
  169. package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +3 -3
  170. package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +3 -3
  171. package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +4 -4
  172. package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +4 -4
  173. package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +3 -3
  174. package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +3 -3
  175. package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +3 -3
  176. package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +3 -3
  177. package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +4 -4
  178. package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +3 -3
  179. package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +3 -3
  180. package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +3 -3
  181. package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +3 -3
  182. package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +3 -3
  183. package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +3 -3
  184. package/esm2020/lib/components/overlays/elder-overlay.component.mjs +3 -3
  185. package/esm2020/lib/components/overlays/elder-overlay.module.mjs +4 -4
  186. package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +3 -3
  187. package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +3 -3
  188. package/esm2020/lib/components/panels/elder-panel.module.mjs +4 -4
  189. package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +3 -3
  190. package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +3 -3
  191. package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +9 -9
  192. package/esm2020/lib/components/scrollbar/elder-scrollbar.directive.mjs +3 -3
  193. package/esm2020/lib/components/scrollbar/elder-scrollbar.module.mjs +4 -4
  194. package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +3 -3
  195. package/esm2020/lib/components/select/elder-select-base.mjs +3 -3
  196. package/esm2020/lib/components/select/elder-select-chip.directive.mjs +9 -9
  197. package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +3 -3
  198. package/esm2020/lib/components/select/elder-select-value.directive.mjs +3 -3
  199. package/esm2020/lib/components/select/elder-select.module.mjs +4 -4
  200. package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +3 -3
  201. package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +4 -4
  202. package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +3 -3
  203. package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +3 -3
  204. package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +3 -3
  205. package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +3 -3
  206. package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +3 -3
  207. package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +3 -3
  208. package/esm2020/lib/components/select/single/elder-select-form-field.mjs +3 -3
  209. package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +4 -4
  210. package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +4 -4
  211. package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +3 -3
  212. package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +3 -3
  213. package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +3 -3
  214. package/esm2020/lib/components/shell/elder-shell.module.mjs +4 -4
  215. package/esm2020/lib/components/shell/elder-shell.service.mjs +3 -3
  216. package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +3 -3
  217. package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +12 -12
  218. package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +3 -3
  219. package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +3 -3
  220. package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +3 -3
  221. package/esm2020/lib/components/tabs/elder-tab.module.mjs +4 -4
  222. package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +3 -3
  223. package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +3 -3
  224. package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +3 -3
  225. package/esm2020/lib/components/theme/elder-theme.directive.mjs +3 -3
  226. package/esm2020/lib/components/theme/elder-theme.module.mjs +4 -4
  227. package/esm2020/lib/components/theme/elder-theme.service.mjs +3 -3
  228. package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +3 -3
  229. package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +3 -3
  230. package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +4 -4
  231. package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +3 -3
  232. package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +3 -3
  233. package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +3 -3
  234. package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +3 -3
  235. package/esm2020/lib/components/time/elder-time.module.mjs +4 -4
  236. package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +3 -3
  237. package/esm2020/lib/components/time/pipes/to-iso-date-string.pipe.mjs +3 -3
  238. package/esm2020/lib/components/toasts/elder-toast.module.mjs +4 -4
  239. package/esm2020/lib/components/toasts/elder-toast.service.mjs +3 -3
  240. package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +3 -3
  241. package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +4 -4
  242. package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +3 -3
  243. package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +3 -3
  244. package/esm2020/lib/components/viewers/elder-viewers.module.mjs +4 -4
  245. package/esm2020/lib/features/event-source/elder-event-source.service.mjs +3 -3
  246. package/esm2020/lib/features/kafent/access-token-provider.mjs +3 -3
  247. package/esm2020/lib/features/kafent/kafent-config.mjs +3 -3
  248. package/esm2020/lib/features/kafent/kafent-event-stream.mjs +3 -3
  249. package/esm2020/lib/features/kafent/kafent-event.service.mjs +3 -3
  250. package/esm2020/lib/features/kafent/kafent.module.mjs +4 -4
  251. package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +3 -3
  252. package/esm2020/lib/pipes/bytes.pipe.mjs +3 -3
  253. package/esm2020/lib/pipes/elder-pipes.module.mjs +10 -10
  254. package/esm2020/lib/pipes/elder-repeat.pipe.mjs +3 -3
  255. package/esm2020/lib/pipes/elder-round.pipe.mjs +3 -3
  256. package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +3 -3
  257. package/esm2020/lib/pipes/elder-truncate.pipe.mjs +3 -3
  258. package/esm2020/lib/pipes/iso-duration.pipe.mjs +3 -3
  259. package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +3 -3
  260. package/esm2020/lib/pipes/iso-interval.pipe.mjs +3 -3
  261. package/esm2020/lib/pipes/time-ago.pipe.mjs +3 -3
  262. package/esm2020/lib/pipes/time-duration.pipe.mjs +3 -3
  263. package/esm2020/lib/pipes/weight.pipe.mjs +3 -3
  264. package/fesm2015/elderbyte-ngx-starter.mjs +949 -914
  265. package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
  266. package/fesm2020/elderbyte-ngx-starter.mjs +949 -914
  267. package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
  268. package/lib/components/files/elder-file-drop-zone.directive.d.ts +0 -1
  269. package/lib/components/files/listing/file-listing-rx.d.ts +1 -0
  270. package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +27 -2
  271. package/package.json +1 -1
  272. package/theming/_elder-common.scss +1 -1
  273. package/theming/_elder-style-fixes.scss +27 -26
@@ -157,9 +157,9 @@ export class ElderTableModel {
157
157
  }));
158
158
  }
159
159
  }
160
- ElderTableModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderTableModel, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
161
- ElderTableModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderTableModel });
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderTableModel, decorators: [{
160
+ ElderTableModel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderTableModel, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
161
+ ElderTableModel.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderTableModel });
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderTableModel, decorators: [{
163
163
  type: Injectable
164
164
  }], ctorParameters: function () { return []; } });
165
165
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdmlldy90YWJsZS9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUVoRSxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRTVELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDeEUsT0FBTyxFQUFtQixpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQUUxRSxNQUFNLE9BQU8sZUFBZTtJQWUxQixZQUNrQixFQUFVLEVBQ1YsS0FBYTtRQURiLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixVQUFLLEdBQUwsS0FBSyxDQUFRO0lBRS9CLENBQUM7SUFqQk0sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsVUFBa0I7UUFFbEIsT0FBTyxlQUFlLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sTUFBTSxDQUFDLEVBQUUsQ0FDZCxFQUFVLEVBQ1YsVUFBa0I7UUFFbEIsT0FBTyxJQUFJLGVBQWUs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OzRHQXhMVSxlQUFlO2dIQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q2RrQ29sdW1uRGVmLCBDZGtSb3dEZWZ9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtSZWFjdGl2ZU1hcH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3JlYWN0aXZlLW1hcCc7XG5pbXBvcnQge01hdFNvcnR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHtVdWlkVXRpbH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3V0aWxzL3V1aWQtdXRpbCc7XG5pbXBvcnQge25hdHVyYWxWYWx1ZUNvbXBhcmF0b3J9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9kYXRhL2ZpZWxkLWNvbXBhcmF0b3InO1xuaW1wb3J0IHtDb2xsZWN0aW9uVXRpbH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3V0aWxzL2NvbGxlY3Rpb24tdXRpbCc7XG5pbXBvcnQge0VsZGVyQ29sdW1uR3JvdXAsIEVsZGVyQ29sdW1uTGF5b3V0fSBmcm9tICcuL2VsZGVyLWNvbHVtbi1sYXlvdXQnO1xuXG5leHBvcnQgY2xhc3MgRWxkZXJUYWJsZUdyb3VwIHtcblxuICBwdWJsaWMgc3RhdGljIGNyZWF0ZShcbiAgICBncm91cEluZGV4OiBudW1iZXJcbiAgKTogRWxkZXJUYWJsZUdyb3VwIHtcbiAgICByZXR1cm4gRWxkZXJUYWJsZUdyb3VwLm9mKFV1aWRVdGlsLndlYWtVdWlkNCgpLCBncm91cEluZGV4KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgb2YoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBncm91cEluZGV4OiBudW1iZXJcbiAgKTogRWxkZXJUYWJsZUdyb3VwIHtcbiAgICByZXR1cm4gbmV3IEVsZGVyVGFibGVHcm91cChpZCwgZ3JvdXBJbmRleCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5kZXg6IG51bWJlclxuICApIHtcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWxkZXJUYWJsZU1vZGVsPFQgPSBhbnk+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbGRlckNvbHVtbkxheW91dCA9IG5ldyBFbGRlckNvbHVtbkxheW91dCgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2dyb3VwcyA9IG5ldyBNYXA8c3RyaW5nLCBFbGRlclRhYmxlR3JvdXA+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbHVtbkdyb3VwcyA9IG5ldyBSZWFjdGl2ZU1hcDxzdHJpbmcsIEVsZGVyQ29sdW1uR3JvdXA+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Jvd0RlZkdyb3VwcyA9IG5ldyBSZWFjdGl2ZU1hcDxzdHJpbmcsIENka1Jvd0RlZjxUPltdPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zb3J0R3JvdXBzID0gbmV3IFJlYWN0aXZlTWFwPHN0cmluZywgTWF0U29ydD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0aW9uVmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAvKipcbiAgICogVGhlIGNvbHVtbnMgdG8gZGlzcGxheSBleHBsaWNpdGx5IHNldCBieSB0aGUgdXNlci5cbiAgICogV2UgbmVlZCB0byBzdXBwb3J0IGluc2VydGluZyBkaXNwbGF5IGNvbHVtbnMgYnkgaW5kZXggb3IgYW5jaG9yZWQgdG8gZXhpc3Rpbmcgb25lcy5cbiAgICogYmVmb3JlKFtjb2x1bW5zXSlcbiAgICogYWZ0ZXIoKVxuICAgKiBzdGFydCgpXG4gICAqIGVuZChbXSlcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgZGlzcGxheWVkQ29sdW1ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPih1bmRlZmluZWQpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkaXNwbGF5ZWRDb2x1bW5zSW5uZXIkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbnNJbm5lciQgPSB0aGlzLnJlbmRlckRpc3BsYXllZENvbHVtbnMoXG4gICAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMkLFxuICAgICAgdGhpcy5jb2x1bW5EZWZzJCxcbiAgICAgIHRoaXMuc2VsZWN0aW9uVmlzaWJsZSRcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHNldCBzZWxlY3Rpb25WaXNpYmxlKHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNlbGVjdGlvblZpc2libGUkLm5leHQodmlzaWJsZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNlbGVjdGlvblZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uVmlzaWJsZSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGlzcGxheWVkQ29sdW1ucyhjb2x1bW5zOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyQubmV4dChjb2x1bW5zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheWVkQ29sdW1ucygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheWVkQ29sdW1ucyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBSZW5kZXJlZCBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgY29sdW1uRGVmcyQoKTogT2JzZXJ2YWJsZTxDZGtDb2x1bW5EZWZbXT4ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5Hcm91cHMudmFsdWVzJC5waXBlKFxuICAgICAgbWFwKGdyb3VwcyA9PiB0aGlzLmVsZGVyQ29sdW1uTGF5b3V0LmxheW91dENvbHVtbnMoZ3JvdXBzKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm93RGVmcyQoKTogT2JzZXJ2YWJsZTxDZGtSb3dEZWY8VD5bXT4ge1xuICAgIHJldHVybiB0aGlzLnNvcnRBbmRGbGF0dGVuKHRoaXMuX3Jvd0RlZkdyb3Vwcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNvcnRzJCgpOiBPYnNlcnZhYmxlPE1hdFNvcnRbXT4ge1xuICAgIHJldHVybiB0aGlzLl9zb3J0R3JvdXBzLnZhbHVlcyQ7XG4gIH1cblxuICAvLyAtLS1cblxuICBwcml2YXRlIHZhbHVlc1NvcnRlZEJ5R3JvdXBJbmRleDxUVmFsdWU+KG15TWFwOiBNYXA8c3RyaW5nLCBUVmFsdWU+LCBncm91cHM6IE1hcDxzdHJpbmcsIEVsZGVyVGFibGVHcm91cD4pOiBUVmFsdWVbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20obXlNYXAuZW50cmllcygpKVxuICAgICAgLnNvcnQoKFthX2tleV0sIFtiX2tleV0pID0+IHtcbiAgICAgICAgY29uc3QgZ3JwQUluZGV4ID0gZ3JvdXBzLmdldChhX2tleSk/LmluZGV4ID8/IDA7XG4gICAgICAgIGNvbnN0IGdycEJJbmRleCA9IGdyb3Vwcy5nZXQoYl9rZXkpPy5pbmRleCA/PyAwO1xuICAgICAgICByZXR1cm4gbmF0dXJhbFZhbHVlQ29tcGFyYXRvcihncnBBSW5kZXgsIGdycEJJbmRleCk7XG4gICAgICB9KS5tYXAoKFthX2tleSwgYV92YWx1ZV0pID0+IGFfdmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzb3J0QW5kRmxhdHRlbjxUVmFsdWU+KHJlYWN0TWFwOiBSZWFjdGl2ZU1hcDxzdHJpbmcsIFRWYWx1ZVtdPik6IE9ic2VydmFibGU8VFZhbHVlW10+IHtcbiAgICByZXR1cm4gcmVhY3RNYXAubWFwJC5waXBlKFxuICAgICAgbWFwKG15TWFwID0+IHRoaXMudmFsdWVzU29ydGVkQnlHcm91cEluZGV4KG15TWFwLCB0aGlzLl9ncm91cHMpKSxcbiAgICAgIG1hcChjb2x1bW5zID0+IENvbGxlY3Rpb25VdGlsLmZsYXR0ZW4oY29sdW1ucykpXG4gICAgKTtcbiAgfVxuXG4gIC8qXG4gIHB1YmxpYyBnZXQgc29ydEhlYWRlcnMkKCk6IE9ic2VydmFibGU8TWF0U29ydEhlYWRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX3NvcnRHcm91cHMudmFsdWVzJC5waXBlKFxuICAgICAgbWFwKGdyb3VwcyA9PiB0aGlzLmZsYXR0ZW5EZWZzKGdyb3VwcykpXG4gICAgKTtcbiAgfSovXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHJlZ2lzdGVyR3JvdXAoZ3JvdXA6IEVsZGVyVGFibGVHcm91cCk6IHZvaWQgeyAvLyBUT0RPXG4gICAgdGhpcy5fZ3JvdXBzLnNldChncm91cC5pZCwgZ3JvdXApO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUNvbHVtbkdyb3VwKGdyb3VwOiBFbGRlclRhYmxlR3JvdXAsIGNvbHVtbkdyb3VwOiBFbGRlckNvbHVtbkdyb3VwKTogdm9pZCB7XG4gICAgdGhpcy5fY29sdW1uR3JvdXBzLnNldChncm91cC5pZCwgY29sdW1uR3JvdXApO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVJvd0RlZnMoZ3JvdXA6IEVsZGVyVGFibGVHcm91cCwgcm93czogQ2RrUm93RGVmPFQ+W10pOiB2b2lkIHtcbiAgICB0aGlzLl9yb3dEZWZHcm91cHMuc2V0KGdyb3VwLmlkLCByb3dzKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVTb3J0R3JvdXAoZ3JvdXA6IEVsZGVyVGFibGVHcm91cCwgc29ydDogTWF0U29ydCk6IHZvaWQge1xuICAgIHRoaXMuX3NvcnRHcm91cHMuc2V0KGdyb3VwLmlkLCBzb3J0KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckNvbHVtbkRlZkdyb3VwKGdyb3VwOiBFbGRlclRhYmxlR3JvdXApIHtcbiAgICB0aGlzLl9jb2x1bW5Hcm91cHMuZGVsZXRlKGdyb3VwLmlkKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclJvd0RlZkdyb3VwKGdyb3VwOiBFbGRlclRhYmxlR3JvdXApIHtcbiAgICB0aGlzLl9yb3dEZWZHcm91cHMuZGVsZXRlKGdyb3VwLmlkKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNvcnRHcm91cChncm91cDogRWxkZXJUYWJsZUdyb3VwKSB7XG4gICAgdGhpcy5fc29ydEdyb3Vwcy5kZWxldGUoZ3JvdXAuaWQpO1xuICB9XG5cbiAgcHVibGljIGRlUmVnaXN0ZXJHcm91cChncm91cDogRWxkZXJUYWJsZUdyb3VwKSB7XG4gICAgdGhpcy5jbGVhckNvbHVtbkRlZkdyb3VwKGdyb3VwKTtcbiAgICB0aGlzLmNsZWFyUm93RGVmR3JvdXAoZ3JvdXApO1xuICAgIHRoaXMuY2xlYXJTb3J0R3JvdXAoZ3JvdXApO1xuICAgIHRoaXMuX2dyb3Vwcy5kZWxldGUoZ3JvdXAuaWQpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZW5kZXJEaXNwbGF5ZWRDb2x1bW5zKFxuICAgIHVzZXJEZWZpbmVkQ29sdW1ucyQ6IE9ic2VydmFibGU8c3RyaW5nW10+LFxuICAgIGNvbHVtbkRlZnMkOiBPYnNlcnZhYmxlPENka0NvbHVtbkRlZltdPixcbiAgICBzZWxlY3Rpb25WaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuICApOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3VzZXJEZWZpbmVkQ29sdW1ucyQsIGNvbHVtbkRlZnMkLCBzZWxlY3Rpb25WaXNpYmxlJF0pLnBpcGUoXG4gICAgICBtYXAoKFtkaXNwbGF5ZWRDb2x1bW5zLCBjb2x1bW5EZWZzLCBzZWxlY3Rpb25WaXNpYmxlXSkgPT4ge1xuICAgICAgICBsZXQgY29sdW1ucyA9IGRpc3BsYXllZENvbHVtbnM7XG4gICAgICAgIGlmICghY29sdW1ucykge1xuICAgICAgICAgIGNvbHVtbnMgPSBbXTtcbiAgICAgICAgICAvLyBJZiB0aGUgdXNlciBkaWQgbm90IGRlZmluZSBjb2x1bW5zIHRvIGRpc3BsYXlcbiAgICAgICAgICAvLyBBc3N1bWUgaGUgd2FudHMgYWxsIGhpcyBvd24gY29sdW1ucyBpbiBnaXZlbiBvcmRlclxuICAgICAgICAgIGlmIChjb2x1bW5EZWZzKSB7XG4gICAgICAgICAgICBjb2x1bW5EZWZzLmZvckVhY2goY29sID0+IHtcbiAgICAgICAgICAgICAgY29sdW1ucy5wdXNoKGNvbC5uYW1lKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5zZWxlY3Rpb25WaXNpYmxlKSB7XG4gICAgICAgICAgY29sdW1ucyA9IFsnc2VsZWN0JywgLi4uY29sdW1uc107XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbHVtbnM7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -16,9 +16,9 @@ export class ElderConfirmDialogComponent {
16
16
  this.yesNo = false;
17
17
  }
18
18
  }
19
- ElderConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderConfirmDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
20
- ElderConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderConfirmDialogComponent, selector: "elder-confirm-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <div class=\"layout-col flex p-md\">\n <div class=\"flex\">\n <p translate>{{ message }}</p>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\" cdkTrapFocus>\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n </div>\n </div>\n</div>\n\n\n\n\n\n\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i4.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i7.ElderThemeDirective, selector: "[elderTheme]" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderConfirmDialogComponent, decorators: [{
19
+ ElderConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderConfirmDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
20
+ ElderConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderConfirmDialogComponent, selector: "elder-confirm-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <div class=\"layout-col flex p-md\">\n <div class=\"flex\">\n <p translate>{{ message }}</p>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\" cdkTrapFocus>\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n </div>\n </div>\n</div>\n\n\n\n\n\n\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i4.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i7.ElderThemeDirective, selector: "[elderTheme]" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderConfirmDialogComponent, decorators: [{
22
22
  type: Component,
23
23
  args: [{ selector: 'elder-confirm-dialog', template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <div class=\"layout-col flex p-md\">\n <div class=\"flex\">\n <p translate>{{ message }}</p>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\" cdkTrapFocus>\n <button type=\"button\" mat-button\n (click)=\"dialogRef.close(false)\">\n {{ (yesNo ? \"actions.no\" : \"actions.cancel\") | translate}}\n </button>\n\n <button type=\"submit\" mat-raised-button cdkFocusInitial\n (click)=\"dialogRef.close(true)\">\n {{ (yesNo ? \"actions.yes\" : \"actions.ok\") | translate}}\n </button>\n </div>\n </div>\n</div>\n\n\n\n\n\n\n\n\n" }]
24
24
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }]; } });
@@ -23,8 +23,8 @@ export * from './confirm-dialog/elder-confirm-dialog.component';
23
23
  export * from './question-dialog/elder-question-dialog.component';
24
24
  export class ElderDialogModule {
25
25
  }
26
- ElderDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
- ElderDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogModule, declarations: [ElderConfirmDialogComponent,
26
+ ElderDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
+ ElderDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogModule, declarations: [ElderConfirmDialogComponent,
28
28
  ElderQuestionDialogComponent,
29
29
  ElderSelectionDialogComponent,
30
30
  ElderSelectionDialogDirective], imports: [CommonModule, FormsModule,
@@ -34,11 +34,11 @@ ElderDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
34
34
  ElderQuestionDialogComponent,
35
35
  ElderSelectionDialogComponent,
36
36
  ElderSelectionDialogDirective] });
37
- ElderDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogModule, imports: [CommonModule, FormsModule,
37
+ ElderDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogModule, imports: [CommonModule, FormsModule,
38
38
  MatIconModule, MatButtonModule, MatDialogModule, MatToolbarModule, MatInputModule,
39
39
  A11yModule,
40
40
  TranslateModule, ElderThemeModule, ElderHeaderModule] });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogModule, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogModule, decorators: [{
42
42
  type: NgModule,
43
43
  args: [{
44
44
  imports: [
@@ -157,9 +157,9 @@ export class ElderDialogService {
157
157
  return matConfig;
158
158
  }
159
159
  }
160
- ElderDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogService, deps: [{ token: i1.MatDialog }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
161
- ElderDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogService, providedIn: 'root' });
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderDialogService, decorators: [{
160
+ ElderDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogService, deps: [{ token: i1.MatDialog }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
161
+ ElderDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogService, providedIn: 'root' });
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderDialogService, decorators: [{
163
163
  type: Injectable,
164
164
  args: [{
165
165
  providedIn: 'root'
@@ -31,9 +31,9 @@ export class ElderQuestionDialogComponent {
31
31
  return !!this.answer;
32
32
  }
33
33
  }
34
- ElderQuestionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderQuestionDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
35
- ElderQuestionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderQuestionDialogComponent, selector: "elder-question-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ data.title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <form #f=\"ngForm\" class=\"layout-col flex p-md\" (ngSubmit)=\"confirm($event)\" cdkTrapFocus>\n\n <div class=\"layout-col flex\">\n <p>{{data.question}}</p>\n\n <mat-form-field class=\"full-width\">\n <input matInput type=\"text\" name=\"name\" [(ngModel)]=\"answer\" cdkFocusInitial\n placeholder=\"{{'context.name' | translate}}\" required>\n </mat-form-field>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\">\n\n <button mat-button type=\"button\"\n (click)=\"cancel($event)\">\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-button type=\"submit\" color=\"primary\"\n [disabled]=\"!isValid\">\n {{'actions.ok' | translate}}\n </button>\n </div>\n </form>\n</div>\n\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i5.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i5.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i9.ElderThemeDirective, selector: "[elderTheme]" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderQuestionDialogComponent, decorators: [{
34
+ ElderQuestionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderQuestionDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
35
+ ElderQuestionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderQuestionDialogComponent, selector: "elder-question-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ data.title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <form #f=\"ngForm\" class=\"layout-col flex p-md\" (ngSubmit)=\"confirm($event)\" cdkTrapFocus>\n\n <div class=\"layout-col flex\">\n <p>{{data.question}}</p>\n\n <mat-form-field class=\"full-width\">\n <input matInput type=\"text\" name=\"name\" [(ngModel)]=\"answer\" cdkFocusInitial\n placeholder=\"{{'context.name' | translate}}\" required>\n </mat-form-field>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\">\n\n <button mat-button type=\"button\"\n (click)=\"cancel($event)\">\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-button type=\"submit\" color=\"primary\"\n [disabled]=\"!isValid\">\n {{'actions.ok' | translate}}\n </button>\n </div>\n </form>\n</div>\n\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i5.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i5.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i9.ElderThemeDirective, selector: "[elderTheme]" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderQuestionDialogComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ selector: 'elder-question-dialog', template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <mat-toolbar-row class=\"gap-sm\">\n <button mat-icon-button [matDialogClose]=\"false\"><mat-icon>close</mat-icon></button>\n <h3>{{ data.title | translate }}</h3>\n </mat-toolbar-row>\n </mat-toolbar>\n\n <form #f=\"ngForm\" class=\"layout-col flex p-md\" (ngSubmit)=\"confirm($event)\" cdkTrapFocus>\n\n <div class=\"layout-col flex\">\n <p>{{data.question}}</p>\n\n <mat-form-field class=\"full-width\">\n <input matInput type=\"text\" name=\"name\" [(ngModel)]=\"answer\" cdkFocusInitial\n placeholder=\"{{'context.name' | translate}}\" required>\n </mat-form-field>\n </div>\n\n <div class=\"layout-row place-end-center gap-md flex-none\">\n\n <button mat-button type=\"button\"\n (click)=\"cancel($event)\">\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-button type=\"submit\" color=\"primary\"\n [disabled]=\"!isValid\">\n {{'actions.ok' | translate}}\n </button>\n </div>\n </form>\n</div>\n\n\n\n" }]
39
39
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
@@ -29,9 +29,9 @@ export class ElderSelectionDialogComponent {
29
29
  // this.dialogRef.updateSize('20vw', '20vh');
30
30
  }
31
31
  }
32
- ElderSelectionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderSelectionDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
33
- ElderSelectionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderSelectionDialogComponent, selector: "elder-selection-dialog", inputs: { title: "title" }, ngImport: i0, template: "\n\n<div class=\"layout-col full\">\n\n <div class=\"layout-col flex-none\">\n <h2 *ngIf=\"title\">{{title | translate}}</h2>\n </div>\n\n <div class=\"layout-col flex\">\n <ng-template [ngTemplateOutlet]=\"data.template\"></ng-template>\n </div>\n\n <div class=\"layout-row place-end-center\">\n <button mat-button type=\"button\" mat-dialog-close>\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\"\n [disabled]=\"data.selectionModel.isEmpty()\"\n (click)=\"confirmSelection()\">\n {{'actions.select' | translate}}\n </button>\n </div>\n\n\n</div>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderSelectionDialogComponent, decorators: [{
32
+ ElderSelectionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderSelectionDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
33
+ ElderSelectionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderSelectionDialogComponent, selector: "elder-selection-dialog", inputs: { title: "title" }, ngImport: i0, template: "\n\n<div class=\"layout-col full\">\n\n <div class=\"layout-col flex-none\">\n <h2 *ngIf=\"title\">{{title | translate}}</h2>\n </div>\n\n <div class=\"layout-col flex\">\n <ng-template [ngTemplateOutlet]=\"data.template\"></ng-template>\n </div>\n\n <div class=\"layout-row place-end-center\">\n <button mat-button type=\"button\" mat-dialog-close>\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\"\n [disabled]=\"data.selectionModel.isEmpty()\"\n (click)=\"confirmSelection()\">\n {{'actions.select' | translate}}\n </button>\n </div>\n\n\n</div>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderSelectionDialogComponent, decorators: [{
35
35
  type: Component,
36
36
  args: [{ selector: 'elder-selection-dialog', template: "\n\n<div class=\"layout-col full\">\n\n <div class=\"layout-col flex-none\">\n <h2 *ngIf=\"title\">{{title | translate}}</h2>\n </div>\n\n <div class=\"layout-col flex\">\n <ng-template [ngTemplateOutlet]=\"data.template\"></ng-template>\n </div>\n\n <div class=\"layout-row place-end-center\">\n <button mat-button type=\"button\" mat-dialog-close>\n {{'actions.cancel' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\"\n [disabled]=\"data.selectionModel.isEmpty()\"\n (click)=\"confirmSelection()\">\n {{'actions.select' | translate}}\n </button>\n </div>\n\n\n</div>\n\n" }]
37
37
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
@@ -30,9 +30,9 @@ export class ElderSelectionDialogDirective {
30
30
  dialogRef.afterClosed().subscribe(result => this.close.emit(result));
31
31
  }
32
32
  }
33
- ElderSelectionDialogDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderSelectionDialogDirective, deps: [{ token: i0.TemplateRef }, { token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
34
- ElderSelectionDialogDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: ElderSelectionDialogDirective, selector: "[elderDialog]", inputs: { selectionModel: "selectionModel" }, outputs: { close: "close" }, exportAs: ["elderSelection"], ngImport: i0 });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderSelectionDialogDirective, decorators: [{
33
+ ElderSelectionDialogDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderSelectionDialogDirective, deps: [{ token: i0.TemplateRef }, { token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
34
+ ElderSelectionDialogDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ElderSelectionDialogDirective, selector: "[elderDialog]", inputs: { selectionModel: "selectionModel" }, outputs: { close: "close" }, exportAs: ["elderSelection"], ngImport: i0 });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderSelectionDialogDirective, decorators: [{
36
36
  type: Directive,
37
37
  args: [{
38
38
  selector: '[elderDialog]',
@@ -12,16 +12,16 @@ export * from './error-util';
12
12
  */
13
13
  export class ElderErrorModule {
14
14
  }
15
- ElderErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- ElderErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ElderErrorModule, declarations: [ElderExceptionDetailComponent], imports: [CommonModule,
15
+ ElderErrorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ ElderErrorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ElderErrorModule, declarations: [ElderExceptionDetailComponent], imports: [CommonModule,
17
17
  MatExpansionModule,
18
18
  MatIconModule,
19
19
  MatInputModule], exports: [ElderExceptionDetailComponent] });
20
- ElderErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderErrorModule, imports: [CommonModule,
20
+ ElderErrorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderErrorModule, imports: [CommonModule,
21
21
  MatExpansionModule,
22
22
  MatIconModule,
23
23
  MatInputModule] });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderErrorModule, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderErrorModule, decorators: [{
25
25
  type: NgModule,
26
26
  args: [{
27
27
  declarations: [
@@ -51,9 +51,9 @@ export class ElderExceptionDetailComponent {
51
51
  this.errorCtx$.next(ExceptionDetailCtx.of(error));
52
52
  }
53
53
  }
54
- ElderExceptionDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExceptionDetailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
55
- ElderExceptionDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderExceptionDetailComponent, selector: "elder-exception-detail", inputs: { expanded: "expanded", stacktraceRows: "stacktraceRows", error: "error" }, ngImport: i0, template: "<ng-container *ngIf=\"errorCtx$ | async as errorCtx\">\n\n <mat-accordion *ngIf=\"errorCtx.detail as error\" class=\"full\">\n <mat-expansion-panel [expanded]=\"expanded\">\n <mat-expansion-panel-header>\n <mat-panel-title class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\" class=\"noselect\">warning</mat-icon>\n <span class=\"noselect\">{{errorCtx.panelTitle}}</span>\n </mat-panel-title>\n <mat-panel-description class=\"noselect\">\n <span class=\"mat-caption\">{{errorCtx.panelDescription}}</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n\n <div class=\"layout-col flex p-xs\" style=\"overflow: hidden\">\n\n <mat-form-field class=\"full-width\">\n <mat-label>Detail</mat-label>\n <input matInput [value]=\"error.detail\" readonly>\n </mat-form-field>\n\n <mat-form-field class=\"full-width\">\n <mat-label>Stacktrace</mat-label>\n <textarea class=\"stacktrace\" matInput [value]=\"error.stacktrace\" [rows]=\"stacktraceRows\"></textarea>\n </mat-form-field>\n\n </div>\n </mat-expansion-panel>\n </mat-accordion>\n\n</ng-container>\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i2.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i2.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i2.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i2.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExceptionDetailComponent, decorators: [{
54
+ ElderExceptionDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExceptionDetailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
55
+ ElderExceptionDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderExceptionDetailComponent, selector: "elder-exception-detail", inputs: { expanded: "expanded", stacktraceRows: "stacktraceRows", error: "error" }, ngImport: i0, template: "<ng-container *ngIf=\"errorCtx$ | async as errorCtx\">\n\n <mat-accordion *ngIf=\"errorCtx.detail as error\" class=\"full\">\n <mat-expansion-panel [expanded]=\"expanded\">\n <mat-expansion-panel-header>\n <mat-panel-title class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\" class=\"noselect\">warning</mat-icon>\n <span class=\"noselect\">{{errorCtx.panelTitle}}</span>\n </mat-panel-title>\n <mat-panel-description class=\"noselect\">\n <span class=\"mat-caption\">{{errorCtx.panelDescription}}</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n\n <div class=\"layout-col flex p-xs\" style=\"overflow: hidden\">\n\n <mat-form-field class=\"full-width\">\n <mat-label>Detail</mat-label>\n <input matInput [value]=\"error.detail\" readonly>\n </mat-form-field>\n\n <mat-form-field class=\"full-width\">\n <mat-label>Stacktrace</mat-label>\n <textarea class=\"stacktrace\" matInput [value]=\"error.stacktrace\" [rows]=\"stacktraceRows\"></textarea>\n </mat-form-field>\n\n </div>\n </mat-expansion-panel>\n </mat-accordion>\n\n</ng-container>\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i2.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i2.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i2.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i2.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExceptionDetailComponent, decorators: [{
57
57
  type: Component,
58
58
  args: [{ selector: 'elder-exception-detail', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"errorCtx$ | async as errorCtx\">\n\n <mat-accordion *ngIf=\"errorCtx.detail as error\" class=\"full\">\n <mat-expansion-panel [expanded]=\"expanded\">\n <mat-expansion-panel-header>\n <mat-panel-title class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\" class=\"noselect\">warning</mat-icon>\n <span class=\"noselect\">{{errorCtx.panelTitle}}</span>\n </mat-panel-title>\n <mat-panel-description class=\"noselect\">\n <span class=\"mat-caption\">{{errorCtx.panelDescription}}</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n\n <div class=\"layout-col flex p-xs\" style=\"overflow: hidden\">\n\n <mat-form-field class=\"full-width\">\n <mat-label>Detail</mat-label>\n <input matInput [value]=\"error.detail\" readonly>\n </mat-form-field>\n\n <mat-form-field class=\"full-width\">\n <mat-label>Stacktrace</mat-label>\n <textarea class=\"stacktrace\" matInput [value]=\"error.stacktrace\" [rows]=\"stacktraceRows\"></textarea>\n </mat-form-field>\n\n </div>\n </mat-expansion-panel>\n </mat-accordion>\n\n</ng-container>\n\n\n" }]
59
59
  }], ctorParameters: function () { return []; }, propDecorators: { expanded: [{
@@ -42,9 +42,9 @@ export class ElderExpandToggleButtonComponent {
42
42
  this.expanded = !this.expanded;
43
43
  }
44
44
  }
45
- ElderExpandToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
46
- ElderExpandToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderExpandToggleButtonComponent, selector: "elder-expand-toggle-button", inputs: { expanded: "expanded" }, outputs: { expandedChange: "expandedChange" }, ngImport: i0, template: "\n<a matRipple class=\"layout-row place-start-center full toggle-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row place-start-center flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</a>\n", dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonComponent, decorators: [{
45
+ ElderExpandToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
46
+ ElderExpandToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderExpandToggleButtonComponent, selector: "elder-expand-toggle-button", inputs: { expanded: "expanded" }, outputs: { expandedChange: "expandedChange" }, ngImport: i0, template: "\n<a matRipple class=\"layout-row place-start-center full toggle-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row place-start-center flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</a>\n", dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonComponent, decorators: [{
48
48
  type: Component,
49
49
  args: [{ selector: 'elder-expand-toggle-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<a matRipple class=\"layout-row place-start-center full toggle-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row place-start-center flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</a>\n" }]
50
50
  }], propDecorators: { expandedChange: [{
@@ -8,10 +8,10 @@ import * as i0 from "@angular/core";
8
8
  export { ElderExpandToggleButtonComponent } from './elder-expand-toggle-button.component';
9
9
  export class ElderExpandToggleButtonModule {
10
10
  }
11
- ElderExpandToggleButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- ElderExpandToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonModule, declarations: [ElderExpandToggleButtonComponent], imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule], exports: [ElderExpandToggleButtonComponent] });
13
- ElderExpandToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonModule, imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderExpandToggleButtonModule, decorators: [{
11
+ ElderExpandToggleButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ ElderExpandToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonModule, declarations: [ElderExpandToggleButtonComponent], imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule], exports: [ElderExpandToggleButtonComponent] });
13
+ ElderExpandToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonModule, imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderExpandToggleButtonModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  imports: [
@@ -206,9 +206,9 @@ export class ElderBlobViewerComponent {
206
206
  });
207
207
  }
208
208
  }
209
- ElderBlobViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderBlobViewerComponent, deps: [{ token: i1.HttpClientPristine }, { token: i2.DomSanitizer }, { token: i3.ElderToastService }], target: i0.ɵɵFactoryTarget.Component });
210
- ElderBlobViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderBlobViewerComponent, selector: "elder-blob-viewer", inputs: { displayUnknownAsText: "displayUnknownAsText", blob: "blob", blobUrl: "blobUrl", url: "url", mimeType: "mimeType" }, ngImport: i0, template: "<div class=\"layout-col full place-center-center document-viewer\">\n\n <ng-container *ngIf=\"blobContext$ | async as blobContext\">\n\n <!-- Video -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isVideo\">\n <video class=\"video\"\n controls autoplay loop\n\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 video.\n </video>\n </div>\n\n <!-- Audio -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isAudio\">\n <audio class=\"audio\"\n controls autoplay loop\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 audio.\n </audio>\n </div>\n\n <!-- Image -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.mimeType.isImage\" style=\"overflow: hidden\">\n <img class=\"cover flex\"\n [src]=\"blobContext.safeUrl\" alt=\"blob image\"/>\n </div>\n\n <!-- Embedded (PDFs etc) -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayEmbedded\">\n <div class=\"full\">\n <embed class=\"embedded\" [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\" width=\"100%\" height=\"100%\">\n </div>\n </div>\n\n <!-- Plain Text -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayAsText\">\n <textarea\n class=\"document-content\"\n placeholder=\"Content\"\n [value]=\"blobContext.text\" wrap=\"off\"\n readonly\n ></textarea>\n </div>\n\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.cantDisplay\">\n <p>Cant display {{blobContext.mimeType.value}}!</p>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!(blobContext$ | async)\">\n <div class=\"layout-col place-center-center full\">\n <p>No Document.</p>\n </div>\n </ng-container>\n\n\n</div>\n", styles: [":host{overflow:hidden}.document-viewer{background-color:#dedede;color:#1f1e1e}.video,.audio{width:100%;height:auto}.embedded{width:100%;height:100%}.cover{-o-object-fit:scale-down;object-fit:scale-down;width:100%;height:auto;overflow:hidden}.document-content{font-family:Courier,monospace;font-size:14px;background-color:#575757;color:#ccc;outline:none;resize:none;width:100%;height:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-radius:0;box-shadow:0 2px 14px #000;border-top:1px solid #FFF;border-bottom:1px solid #FFF}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
211
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderBlobViewerComponent, decorators: [{
209
+ ElderBlobViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderBlobViewerComponent, deps: [{ token: i1.HttpClientPristine }, { token: i2.DomSanitizer }, { token: i3.ElderToastService }], target: i0.ɵɵFactoryTarget.Component });
210
+ ElderBlobViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderBlobViewerComponent, selector: "elder-blob-viewer", inputs: { displayUnknownAsText: "displayUnknownAsText", blob: "blob", blobUrl: "blobUrl", url: "url", mimeType: "mimeType" }, ngImport: i0, template: "<div class=\"layout-col full place-center-center document-viewer\">\n\n <ng-container *ngIf=\"blobContext$ | async as blobContext\">\n\n <!-- Video -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isVideo\">\n <video class=\"video\"\n controls autoplay loop\n\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 video.\n </video>\n </div>\n\n <!-- Audio -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isAudio\">\n <audio class=\"audio\"\n controls autoplay loop\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 audio.\n </audio>\n </div>\n\n <!-- Image -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.mimeType.isImage\" style=\"overflow: hidden\">\n <img class=\"cover flex\"\n [src]=\"blobContext.safeUrl\" alt=\"blob image\"/>\n </div>\n\n <!-- Embedded (PDFs etc) -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayEmbedded\">\n <div class=\"full\">\n <embed class=\"embedded\" [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\" width=\"100%\" height=\"100%\">\n </div>\n </div>\n\n <!-- Plain Text -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayAsText\">\n <textarea\n class=\"document-content\"\n placeholder=\"Content\"\n [value]=\"blobContext.text\" wrap=\"off\"\n readonly\n ></textarea>\n </div>\n\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.cantDisplay\">\n <p>Cant display {{blobContext.mimeType.value}}!</p>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!(blobContext$ | async)\">\n <div class=\"layout-col place-center-center full\">\n <p>No Document.</p>\n </div>\n </ng-container>\n\n\n</div>\n", styles: [":host{overflow:hidden}.document-viewer{background-color:#dedede;color:#1f1e1e}.video,.audio{width:100%;height:auto}.embedded{width:100%;height:100%}.cover{-o-object-fit:scale-down;object-fit:scale-down;width:100%;height:auto;overflow:hidden}.document-content{font-family:Courier,monospace;font-size:14px;background-color:#575757;color:#ccc;outline:none;resize:none;width:100%;height:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-radius:0;box-shadow:0 2px 14px #000;border-top:1px solid #FFF;border-bottom:1px solid #FFF}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
211
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderBlobViewerComponent, decorators: [{
212
212
  type: Component,
213
213
  args: [{ selector: 'elder-blob-viewer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"layout-col full place-center-center document-viewer\">\n\n <ng-container *ngIf=\"blobContext$ | async as blobContext\">\n\n <!-- Video -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isVideo\">\n <video class=\"video\"\n controls autoplay loop\n\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 video.\n </video>\n </div>\n\n <!-- Audio -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isAudio\">\n <audio class=\"audio\"\n controls autoplay loop\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 audio.\n </audio>\n </div>\n\n <!-- Image -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.mimeType.isImage\" style=\"overflow: hidden\">\n <img class=\"cover flex\"\n [src]=\"blobContext.safeUrl\" alt=\"blob image\"/>\n </div>\n\n <!-- Embedded (PDFs etc) -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayEmbedded\">\n <div class=\"full\">\n <embed class=\"embedded\" [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\" width=\"100%\" height=\"100%\">\n </div>\n </div>\n\n <!-- Plain Text -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayAsText\">\n <textarea\n class=\"document-content\"\n placeholder=\"Content\"\n [value]=\"blobContext.text\" wrap=\"off\"\n readonly\n ></textarea>\n </div>\n\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.cantDisplay\">\n <p>Cant display {{blobContext.mimeType.value}}!</p>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!(blobContext$ | async)\">\n <div class=\"layout-col place-center-center full\">\n <p>No Document.</p>\n </div>\n </ng-container>\n\n\n</div>\n", styles: [":host{overflow:hidden}.document-viewer{background-color:#dedede;color:#1f1e1e}.video,.audio{width:100%;height:auto}.embedded{width:100%;height:100%}.cover{-o-object-fit:scale-down;object-fit:scale-down;width:100%;height:auto;overflow:hidden}.document-content{font-family:Courier,monospace;font-size:14px;background-color:#575757;color:#ccc;outline:none;resize:none;width:100%;height:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-radius:0;box-shadow:0 2px 14px #000;border-top:1px solid #FFF;border-bottom:1px solid #FFF}\n"] }]
214
214
  }], ctorParameters: function () { return [{ type: i1.HttpClientPristine }, { type: i2.DomSanitizer }, { type: i3.ElderToastService }]; }, propDecorators: { displayUnknownAsText: [{
@@ -1,8 +1,5 @@
1
1
  import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
2
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
- import { of, zip } from 'rxjs';
4
- import { map } from 'rxjs/operators';
5
- import { FileEntry } from './listing/file-entry';
6
3
  import { FileListingRx } from './listing/file-listing-rx';
7
4
  import * as i0 from "@angular/core";
8
5
  export class ElderFileDropZoneDirective {
@@ -57,7 +54,7 @@ export class ElderFileDropZoneDirective {
57
54
  this.ngZone.runOutsideAngular(() => {
58
55
  try {
59
56
  const items = event.dataTransfer.items;
60
- this.toFileList(items).subscribe({
57
+ FileListingRx.INSTANCE.toFileList(items).subscribe({
61
58
  next: files => this.ngZone.run(() => this.elderFileDropZoneChange.emit(files)),
62
59
  error: err => this.logger.error('Failed to list Files from DataTransferItemList', err)
63
60
  });
@@ -68,24 +65,10 @@ export class ElderFileDropZoneDirective {
68
65
  }
69
66
  });
70
67
  }
71
- toFileList(transferItemList) {
72
- const obs = [];
73
- for (let i = 0; i < transferItemList.length; i++) {
74
- const transferItem = transferItemList[i];
75
- const entry = transferItem.webkitGetAsEntry();
76
- if (entry) {
77
- obs.push(FileListingRx.INSTANCE.listFilesRecursive(entry));
78
- }
79
- else {
80
- obs.push(of([FileEntry.ofFile(transferItem.getAsFile())]));
81
- }
82
- }
83
- return zip(obs).pipe(map(files => files.flat()));
84
- }
85
68
  }
86
- ElderFileDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileDropZoneDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
87
- ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileDropZoneDirective, decorators: [{
69
+ ElderFileDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileDropZoneDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
70
+ ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileDropZoneDirective, decorators: [{
89
72
  type: Directive,
90
73
  args: [{
91
74
  selector: '[elderFileDropZone]'
@@ -107,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
107
90
  type: HostListener,
108
91
  args: ['drop', ['$event']]
109
92
  }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQ08sRUFBRSxFQUNkLEdBQUcsRUFDSixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUt4RCxNQUFNLE9BQU8sMEJBQTBCO0lBZ0JyQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxPQUFtQixFQUNuQixRQUFtQixFQUNuQixNQUFjO1FBRmQsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUF2QnhCOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBR3pELDRCQUF1QixHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFHbkUsa0JBQWEsR0FBRyxhQUFhLENBQUM7SUFhckMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUdyRSxVQUFVLENBQUMsR0FBYztRQUM5QixHQUFHLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxpQ0FBaUM7UUFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFJTSxTQUFTLENBQUMsR0FBYztRQUM3QixHQUFHLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxpQ0FBaUM7UUFDdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBR00sTUFBTSxDQUFDLEdBQWM7UUFFMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXRDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQixHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLHFCQUFxQjtRQUV4QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIscUVBQXFFO0lBQ3ZFLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsT0FBTyxDQUFDLEdBQWM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFnQjtRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJO2dCQUNGLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztvQkFDN0IsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQ2xDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQ3pDO29CQUNELEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdEQUFnRCxFQUFFLEdBQUcsQ0FBQztpQkFDdkYsQ0FDRixDQUFDO2FBQ0g7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDeEQsMEZBQTBGO2FBQzNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLGdCQUFzQztRQUN2RCxNQUFNLEdBQUcsR0FBOEIsRUFBRSxDQUFDO1FBQzFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDOUMsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDNUQ7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzVEO1NBQ0Y7UUFDRCxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQ2xCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUMzQixDQUFDO0lBQ0osQ0FBQzs7dUhBdkdVLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OElBWWlCLHVCQUF1QjtzQkFEdEMsTUFBTTtnQkFJQSxhQUFhO3NCQURuQixLQUFLO2dCQXVCQyxVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRN0IsU0FBUztzQkFGZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2xDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU85QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlLCBvZixcbiAgemlwXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RmlsZUVudHJ5fSBmcm9tICcuL2xpc3RpbmcvZmlsZS1lbnRyeSc7XG5pbXBvcnQge0ZpbGVMaXN0aW5nUnh9IGZyb20gJy4vbGlzdGluZy9maWxlLWxpc3RpbmctcngnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJGaWxlRHJvcFpvbmVdJ1xufSlcbmV4cG9ydCBjbGFzcyBFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZWxkZXJGaWxlRHJvcFpvbmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVFbnRyeVtdPigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkcmFnT3ZlckNsYXNzID0gJ2lzLWRyYWdvdmVyJztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyYWdPdmVyKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBicm93c2VyIGFjdGlvblxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZHJhZ092ZXJDbGFzcyk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcmFnZW5kJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ0VuZChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpOyAvLyBQcmV2ZW50IGRlZmF1bHQgYnJvd3NlciBhY3Rpb25cbiAgICB0aGlzLmRyYWdFbmQoZXZ0KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2Ryb3AnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25Ecm9wKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG5cbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnRHJvcCBldmVudCEnLCBldnQpO1xuXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZHJhZ0VuZChldnQpOyAvLyBUT0RPIERvIHRoaXMgbGF0ZXJcblxuICAgIHRoaXMuY29sbGVjdEZpbGVzQXN5bmMoZXZ0KTtcbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnVXNlciBkcm9wcGVkICcgKyBmaWxlcy5zaXplICsgJ2ZpbGVzIScsIGZpbGVzKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZHJhZ0VuZChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5ob3N0UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZHJhZ092ZXJDbGFzcyk7XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RGaWxlc0FzeW5jKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBpdGVtcyA9IGV2ZW50LmRhdGFUcmFuc2Zlci5pdGVtcztcbiAgICAgICAgdGhpcy50b0ZpbGVMaXN0KGl0ZW1zKS5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgbmV4dDogZmlsZXMgPT4gdGhpcy5uZ1pvbmUucnVuKCgpID0+XG4gICAgICAgICAgICAgIHRoaXMuZWxkZXJGaWxlRHJvcFpvbmVDaGFuZ2UuZW1pdChmaWxlcylcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBlcnJvcjogZXJyID0+IHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gbGlzdCBGaWxlcyBmcm9tIERhdGFUcmFuc2Zlckl0ZW1MaXN0JywgZXJyKVxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gaGFuZGxlIERyYWdFdmVudCEnLCBlcnJvcik7XG4gICAgICAgIC8vIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLmVycm9yLmVtaXQoJ0ZvbGRlciB1cGxvYWQgaXMgdW5zdXBwb3J0ZWQgYnkgdGhpcyBicm93c2VyJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB0b0ZpbGVMaXN0KHRyYW5zZmVySXRlbUxpc3Q6IERhdGFUcmFuc2Zlckl0ZW1MaXN0KTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGNvbnN0IG9iczogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT5bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJhbnNmZXJJdGVtTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgdHJhbnNmZXJJdGVtID0gdHJhbnNmZXJJdGVtTGlzdFtpXTtcbiAgICAgIGNvbnN0IGVudHJ5ID0gdHJhbnNmZXJJdGVtLndlYmtpdEdldEFzRW50cnkoKTtcbiAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICBvYnMucHVzaChGaWxlTGlzdGluZ1J4LklOU1RBTkNFLmxpc3RGaWxlc1JlY3Vyc2l2ZShlbnRyeSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JzLnB1c2gob2YoW0ZpbGVFbnRyeS5vZkZpbGUodHJhbnNmZXJJdGVtLmdldEFzRmlsZSgpKV0pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHppcChvYnMpLnBpcGUoXG4gICAgICBtYXAoZmlsZXMgPT4gZmlsZXMuZmxhdCgpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQU9uRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7O0FBS3hELE1BQU0sT0FBTywwQkFBMEI7SUFnQnJDOzs7O2dGQUk0RTtJQUU1RSxZQUNVLE9BQW1CLEVBQ25CLFFBQW1CLEVBQ25CLE1BQWM7UUFGZCxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXZCeEI7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFHekQsNEJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUduRSxrQkFBYSxHQUFHLGFBQWEsQ0FBQztJQWFyQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBR3JFLFVBQVUsQ0FBQyxHQUFjO1FBQzlCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGlDQUFpQztRQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUlNLFNBQVMsQ0FBQyxHQUFjO1FBQzdCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGlDQUFpQztRQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFHTSxNQUFNLENBQUMsR0FBYztRQUUxQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFdEMsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMscUJBQXFCO1FBRXhDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixxRUFBcUU7SUFDdkUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVwRSxPQUFPLENBQUMsR0FBYztRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQWdCO1FBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUk7Z0JBQ0YsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7Z0JBQ3ZDLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztvQkFDL0MsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQ2xDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQ3pDO29CQUNELEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdEQUFnRCxFQUFFLEdBQUcsQ0FBQztpQkFDdkYsQ0FDRixDQUFDO2FBQ0g7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDeEQsMEZBQTBGO2FBQzNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt1SEF2RlUsMEJBQTBCOzJHQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs4SUFZaUIsdUJBQXVCO3NCQUR0QyxNQUFNO2dCQUlBLGFBQWE7c0JBRG5CLEtBQUs7Z0JBdUJDLFVBQVU7c0JBRGhCLFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVE3QixTQUFTO3NCQUZmLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDbEMsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTzlCLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFJlbmRlcmVyMn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsIG9mLFxuICB6aXBcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vbGlzdGluZy9maWxlLWVudHJ5JztcbmltcG9ydCB7RmlsZUxpc3RpbmdSeH0gZnJvbSAnLi9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckZpbGVEcm9wWm9uZV0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbGRlckZpbGVEcm9wWm9uZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRyYWdPdmVyQ2xhc3MgPSAnaXMtZHJhZ292ZXInO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxuICApIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ092ZXIoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdlbmQnLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBicm93c2VyIGFjdGlvblxuICAgIHRoaXMuZHJhZ0VuZChldnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyb3AoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcblxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdEcm9wIGV2ZW50IScsIGV2dCk7XG5cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5kcmFnRW5kKGV2dCk7IC8vIFRPRE8gRG8gdGhpcyBsYXRlclxuXG4gICAgdGhpcy5jb2xsZWN0RmlsZXNBc3luYyhldnQpO1xuICAgIC8vIHRoaXMubG9nZ2VyLmRlYnVnKCdVc2VyIGRyb3BwZWQgJyArIGZpbGVzLnNpemUgKyAnZmlsZXMhJywgZmlsZXMpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBkcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGVjdEZpbGVzQXN5bmMoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gZXZlbnQuZGF0YVRyYW5zZmVyLml0ZW1zO1xuICAgICAgICBGaWxlTGlzdGluZ1J4LklOU1RBTkNFLnRvRmlsZUxpc3QoaXRlbXMpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiBmaWxlcyA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT5cbiAgICAgICAgICAgICAgdGhpcy5lbGRlckZpbGVEcm9wWm9uZUNoYW5nZS5lbWl0KGZpbGVzKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGVycm9yOiBlcnIgPT4gdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBsaXN0IEZpbGVzIGZyb20gRGF0YVRyYW5zZmVySXRlbUxpc3QnLCBlcnIpXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBoYW5kbGUgRHJhZ0V2ZW50IScsIGVycm9yKTtcbiAgICAgICAgLy8gdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMuZXJyb3IuZW1pdCgnRm9sZGVyIHVwbG9hZCBpcyB1bnN1cHBvcnRlZCBieSB0aGlzIGJyb3dzZXInKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -142,9 +142,9 @@ export class ElderFileSelectDirective {
142
142
  return files;
143
143
  }
144
144
  }
145
- ElderFileSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
146
- ElderFileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: { elderFileSelect: "elderFileSelect", elderFileSelectMultiple: "elderFileSelectMultiple", elderFileSelectDirectory: "elderFileSelectDirectory" }, outputs: { elderFileSelectChange: "elderFileSelectChange", elderSingleFileSelectChange: "elderSingleFileSelectChange" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectDirective, decorators: [{
145
+ ElderFileSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileSelectDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
146
+ ElderFileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: { elderFileSelect: "elderFileSelect", elderFileSelectMultiple: "elderFileSelectMultiple", elderFileSelectDirectory: "elderFileSelectDirectory" }, outputs: { elderFileSelectChange: "elderFileSelectChange", elderSingleFileSelectChange: "elderSingleFileSelectChange" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileSelectDirective, decorators: [{
148
148
  type: Directive,
149
149
  args: [{
150
150
  selector: '[elderFileSelect]'
@@ -21,8 +21,8 @@ export * from './listing/file-entry';
21
21
  export * from './listing/file-listing-rx';
22
22
  export class ElderFileModule {
23
23
  }
24
- ElderFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
- ElderFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ElderFileModule, declarations: [ElderFileSelectComponent,
24
+ ElderFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ ElderFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ElderFileModule, declarations: [ElderFileSelectComponent,
26
26
  ElderFileUploadComponent,
27
27
  ElderFileSelectDirective,
28
28
  ElderFileDropZoneDirective,
@@ -35,12 +35,12 @@ ElderFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
35
35
  ElderFileSelectDirective,
36
36
  ElderFileDropZoneDirective,
37
37
  ElderBlobViewerComponent] });
38
- ElderFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileModule, imports: [CommonModule,
38
+ ElderFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileModule, imports: [CommonModule,
39
39
  MatListModule,
40
40
  MatButtonModule, MatIconModule,
41
41
  MatProgressBarModule,
42
42
  ElderPipesModule] });
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileModule, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileModule, decorators: [{
44
44
  type: NgModule,
45
45
  args: [{
46
46
  imports: [
@@ -36,9 +36,9 @@ export class ElderFileSelectComponent {
36
36
  this.filesChange.next(files);
37
37
  }
38
38
  }
39
- ElderFileSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
- ElderFileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: { multiple: "multiple", accept: "accept", icon: "icon", color: "color" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: ["elderFileSelect", "elderFileSelectMultiple", "elderFileSelectDirectory"], outputs: ["elderFileSelectChange", "elderSingleFileSelectChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileSelectComponent, decorators: [{
39
+ ElderFileSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
+ ElderFileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: { multiple: "multiple", accept: "accept", icon: "icon", color: "color" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: ["elderFileSelect", "elderFileSelectMultiple", "elderFileSelectDirectory"], outputs: ["elderFileSelectChange", "elderSingleFileSelectChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileSelectComponent, decorators: [{
42
42
  type: Component,
43
43
  args: [{ selector: 'elder-file-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n\n<button mat-icon-button type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{icon}}</mat-icon>\n</button>\n" }]
44
44
  }], ctorParameters: function () { return []; }, propDecorators: { multiple: [{
@@ -50,9 +50,9 @@ export class ElderFileUploadComponent {
50
50
  return forkJoin(Array.from(this.uploadProgress.values()));
51
51
  }
52
52
  }
53
- ElderFileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
- ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.BytesPipe, name: "bytes" }, { kind: "pipe", type: i8.TimeAgoPipe, name: "timeAgo" }] });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, decorators: [{
53
+ ElderFileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
+ ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.BytesPipe, name: "bytes" }, { kind: "pipe", type: i8.TimeAgoPipe, name: "timeAgo" }] });
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ElderFileUploadComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ selector: 'elder-file-upload', template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n" }]
58
58
  }], ctorParameters: function () { return []; }, propDecorators: { files: [{