@elderbyte/ngx-starter 14.12.0-beta6 → 14.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1360) hide show
  1. package/esm2020/elderbyte-ngx-starter.mjs +5 -0
  2. package/esm2020/lib/common/async/public_api.mjs +2 -0
  3. package/esm2020/lib/common/async/refreshing-entity.mjs +86 -0
  4. package/esm2020/lib/common/csv/csv-serializer.mjs +55 -0
  5. package/esm2020/lib/common/csv/csv-spec.mjs +99 -0
  6. package/esm2020/lib/common/csv/public_api.mjs +3 -0
  7. package/esm2020/lib/common/data/continuable-listing.mjs +10 -0
  8. package/esm2020/lib/common/data/data-context/data-context-active-page.mjs +130 -0
  9. package/esm2020/lib/common/data/data-context/data-context-auto-starter.mjs +74 -0
  10. package/esm2020/lib/common/data/data-context/data-context-base.mjs +283 -0
  11. package/esm2020/lib/common/data/data-context/data-context-builder.mjs +246 -0
  12. package/esm2020/lib/common/data/data-context/data-context-continuable-base.mjs +69 -0
  13. package/esm2020/lib/common/data/data-context/data-context-continuable-paged.mjs +143 -0
  14. package/esm2020/lib/common/data/data-context/data-context-continuable-token.mjs +136 -0
  15. package/esm2020/lib/common/data/data-context/data-context-life-cycle-binding.mjs +30 -0
  16. package/esm2020/lib/common/data/data-context/data-context-simple.mjs +59 -0
  17. package/esm2020/lib/common/data/data-context/data-context-source-auto-reloader.mjs +12 -0
  18. package/esm2020/lib/common/data/data-context/data-context-status.mjs +46 -0
  19. package/esm2020/lib/common/data/data-context/data-context.mjs +30 -0
  20. package/esm2020/lib/common/data/data-context/mat-table-data-context-binding.mjs +139 -0
  21. package/esm2020/lib/common/data/data-context/public_api.mjs +14 -0
  22. package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +55 -0
  23. package/esm2020/lib/common/data/datasource/data-source-processor.mjs +199 -0
  24. package/esm2020/lib/common/data/datasource/data-source.mjs +23 -0
  25. package/esm2020/lib/common/data/datasource/entity-id-util.mjs +11 -0
  26. package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +127 -0
  27. package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +102 -0
  28. package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +73 -0
  29. package/esm2020/lib/common/data/datasource/public_api.mjs +8 -0
  30. package/esm2020/lib/common/data/datasource/rest/public_api.mjs +2 -0
  31. package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +294 -0
  32. package/esm2020/lib/common/data/entity-set-patch.mjs +164 -0
  33. package/esm2020/lib/common/data/field-comparator.mjs +99 -0
  34. package/esm2020/lib/common/data/filters/filter-context.mjs +141 -0
  35. package/esm2020/lib/common/data/filters/filter.mjs +109 -0
  36. package/esm2020/lib/common/data/http-params-builder.mjs +110 -0
  37. package/esm2020/lib/common/data/page.mjs +58 -0
  38. package/esm2020/lib/common/data/public_api.mjs +12 -0
  39. package/esm2020/lib/common/data/required-filter-evaluator.mjs +70 -0
  40. package/esm2020/lib/common/data/sort-context.mjs +75 -0
  41. package/esm2020/lib/common/data/sort.mjs +11 -0
  42. package/esm2020/lib/common/data/token-chunk-request.mjs +8 -0
  43. package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +81 -0
  44. package/esm2020/lib/common/enums/public_api.mjs +2 -0
  45. package/esm2020/lib/common/errors/exception-detail.mjs +2 -0
  46. package/esm2020/lib/common/errors/public_api.mjs +3 -0
  47. package/esm2020/lib/common/errors/standard-error-detail.mjs +2 -0
  48. package/esm2020/lib/common/format/bytes-format.mjs +22 -0
  49. package/esm2020/lib/common/format/bytes-per-second-format.mjs +41 -0
  50. package/esm2020/lib/common/format/public_api.mjs +3 -0
  51. package/esm2020/lib/common/forms/elder-entity-value-accessor.mjs +22 -0
  52. package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +178 -0
  53. package/esm2020/lib/common/forms/elder-from-field-base.mjs +94 -0
  54. package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +39 -0
  55. package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +47 -0
  56. package/esm2020/lib/common/forms/elder-multi-entity-value-accessor.mjs +22 -0
  57. package/esm2020/lib/common/forms/form-field-base.component.mjs +106 -0
  58. package/esm2020/lib/common/forms/multi-model-base.component.mjs +32 -0
  59. package/esm2020/lib/common/forms/public_api.mjs +12 -0
  60. package/esm2020/lib/common/forms/template-composite-control.mjs +133 -0
  61. package/esm2020/lib/common/forms/value-accessor-base.mjs +146 -0
  62. package/esm2020/lib/common/forms/view-providers.mjs +30 -0
  63. package/esm2020/lib/common/http/http-client-builder.service.mjs +14 -0
  64. package/esm2020/lib/common/http/http-client-pristine.mjs +21 -0
  65. package/esm2020/lib/common/http/public_api.mjs +5 -0
  66. package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +95 -0
  67. package/esm2020/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +49 -0
  68. package/esm2020/lib/common/http/transfer/data-transfer-progress.mjs +17 -0
  69. package/esm2020/lib/common/http/transfer/data-transfer-state.mjs +82 -0
  70. package/esm2020/lib/common/http/transfer/data-transfer-status.mjs +24 -0
  71. package/esm2020/lib/common/http/transfer/http-data-transfer.mjs +180 -0
  72. package/esm2020/lib/common/http/transfer/public_api.mjs +7 -0
  73. package/esm2020/lib/common/http/upload/file-upload-client.mjs +42 -0
  74. package/esm2020/lib/common/i18n/entity/impl/i18n-base.mjs +6 -0
  75. package/esm2020/lib/common/i18n/entity/impl/i18n-text.mjs +16 -0
  76. package/esm2020/lib/common/i18n/entity/language-tag.mjs +12 -0
  77. package/esm2020/lib/common/i18n/entity/locale.mjs +12 -0
  78. package/esm2020/lib/common/i18n/entity/localisation-picker.mjs +30 -0
  79. package/esm2020/lib/common/i18n/entity/localized.mjs +2 -0
  80. package/esm2020/lib/common/i18n/entity/public_api.mjs +6 -0
  81. package/esm2020/lib/common/i18n/public_api.mjs +2 -0
  82. package/esm2020/lib/common/json-map.mjs +18 -0
  83. package/esm2020/lib/common/objects.mjs +41 -0
  84. package/esm2020/lib/common/public_api.mjs +19 -0
  85. package/esm2020/lib/common/reactive-map.mjs +69 -0
  86. package/esm2020/lib/common/selection/public_api.mjs +2 -0
  87. package/esm2020/lib/common/selection/selection-model.mjs +212 -0
  88. package/esm2020/lib/common/sets.mjs +44 -0
  89. package/esm2020/lib/common/suggestion-provider.mjs +12 -0
  90. package/esm2020/lib/common/templates/template-slot-manager.mjs +135 -0
  91. package/esm2020/lib/common/time/date-util.mjs +93 -0
  92. package/esm2020/lib/common/time/interval.mjs +419 -0
  93. package/esm2020/lib/common/time/period-duration.mjs +130 -0
  94. package/esm2020/lib/common/time/public_api.mjs +5 -0
  95. package/esm2020/lib/common/time/time-util.mjs +41 -0
  96. package/esm2020/lib/common/url/elder-router.service.mjs +54 -0
  97. package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +119 -0
  98. package/esm2020/lib/common/url/public_api.mjs +4 -0
  99. package/esm2020/lib/common/url/url-query-params.mjs +133 -0
  100. package/esm2020/lib/common/utils/batcher.mjs +35 -0
  101. package/esm2020/lib/common/utils/collection-util.mjs +109 -0
  102. package/esm2020/lib/common/utils/filter-util.mjs +52 -0
  103. package/esm2020/lib/common/utils/next-number-util.mjs +88 -0
  104. package/esm2020/lib/common/utils/ng-zone-utils.mjs +16 -0
  105. package/esm2020/lib/common/utils/parse-util.mjs +16 -0
  106. package/esm2020/lib/common/utils/property-path-util.mjs +28 -0
  107. package/esm2020/lib/common/utils/public_api.mjs +12 -0
  108. package/esm2020/lib/common/utils/query-list-binding.mjs +67 -0
  109. package/esm2020/lib/common/utils/sort-util.mjs +30 -0
  110. package/esm2020/lib/common/utils/url-builder.mjs +275 -0
  111. package/esm2020/lib/common/utils/uuid-util.mjs +29 -0
  112. package/esm2020/lib/common/utils/value-wrapper.mjs +19 -0
  113. package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +16 -0
  114. package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +30 -0
  115. package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +39 -0
  116. package/esm2020/lib/components/auditing/elder-audit.module.mjs +42 -0
  117. package/esm2020/lib/components/auditing/i-audited-entity.mjs +3 -0
  118. package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +15 -0
  119. package/esm2020/lib/components/button-group/elder-button-group.module.mjs +35 -0
  120. package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +123 -0
  121. package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +15 -0
  122. package/esm2020/lib/components/card-organizer/card-organizer-data.mjs +93 -0
  123. package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +205 -0
  124. package/esm2020/lib/components/card-organizer/card-stack.mjs +176 -0
  125. package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +49 -0
  126. package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +17 -0
  127. package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +156 -0
  128. package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +65 -0
  129. package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +56 -0
  130. package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +63 -0
  131. package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +46 -0
  132. package/esm2020/lib/components/connectivity/public_api.mjs +3 -0
  133. package/esm2020/lib/components/containers/elder-containers.module.mjs +25 -0
  134. package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +24 -0
  135. package/esm2020/lib/components/containers/public_api.mjs +2 -0
  136. package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +77 -0
  137. package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.mjs +40 -0
  138. package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +38 -0
  139. package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +114 -0
  140. package/esm2020/lib/components/csv/elder-csv.module.mjs +37 -0
  141. package/esm2020/lib/components/currency/elder-currency.module.mjs +24 -0
  142. package/esm2020/lib/components/currency/elder-currency.pipe.mjs +33 -0
  143. package/esm2020/lib/components/currency/model/currency-code.mjs +38 -0
  144. package/esm2020/lib/components/currency/model/currency-unit-registry.mjs +30 -0
  145. package/esm2020/lib/components/currency/model/currency-unit.mjs +10 -0
  146. package/esm2020/lib/components/currency/model/currency.mjs +15 -0
  147. package/esm2020/lib/components/currency/public_api.mjs +7 -0
  148. package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +75 -0
  149. package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +89 -0
  150. package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +67 -0
  151. package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +34 -0
  152. package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +47 -0
  153. package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +32 -0
  154. package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +67 -0
  155. package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +259 -0
  156. package/esm2020/lib/components/data-view/base/elder-data-view-options-provider.mjs +44 -0
  157. package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +45 -0
  158. package/esm2020/lib/components/data-view/base/elder-data-view.mjs +3 -0
  159. package/esm2020/lib/components/data-view/base/public_api.mjs +6 -0
  160. package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +45 -0
  161. package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +89 -0
  162. package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +149 -0
  163. package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +89 -0
  164. package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +98 -0
  165. package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +37 -0
  166. package/esm2020/lib/components/data-view/common/selection/master-selection-state.mjs +10 -0
  167. package/esm2020/lib/components/data-view/elder-data-view-interaction-mode.mjs +2 -0
  168. package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +306 -0
  169. package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +81 -0
  170. package/esm2020/lib/components/data-view/public_api.mjs +6 -0
  171. package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +19 -0
  172. package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +78 -0
  173. package/esm2020/lib/components/data-view/table/activation/elder-item-activator.mjs +2 -0
  174. package/esm2020/lib/components/data-view/table/activation/elder-table-activation-options.mjs +2 -0
  175. package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +261 -0
  176. package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +29 -0
  177. package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +72 -0
  178. package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +18 -0
  179. package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +321 -0
  180. package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +17 -0
  181. package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +96 -0
  182. package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +29 -0
  183. package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +136 -0
  184. package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +20 -0
  185. package/esm2020/lib/components/data-view/table/elder-table.module.mjs +141 -0
  186. package/esm2020/lib/components/data-view/table/model/elder-column-layout.mjs +110 -0
  187. package/esm2020/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +81 -0
  188. package/esm2020/lib/components/data-view/table/model/elder-table-model-provider.mjs +40 -0
  189. package/esm2020/lib/components/data-view/table/model/elder-table-model-query-group.mjs +87 -0
  190. package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +165 -0
  191. package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +25 -0
  192. package/esm2020/lib/components/dialogs/elder-dialog-config.mjs +3 -0
  193. package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +84 -0
  194. package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +168 -0
  195. package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +43 -0
  196. package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +43 -0
  197. package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +46 -0
  198. package/esm2020/lib/components/errors/elder-error.module.mjs +41 -0
  199. package/esm2020/lib/components/errors/error-util.mjs +94 -0
  200. package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +66 -0
  201. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +55 -0
  202. package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +27 -0
  203. package/esm2020/lib/components/files/blob-url.mjs +10 -0
  204. package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +225 -0
  205. package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +109 -0
  206. package/esm2020/lib/components/files/elder-file-select.directive.mjs +143 -0
  207. package/esm2020/lib/components/files/elder-file.module.mjs +67 -0
  208. package/esm2020/lib/components/files/file-select/file-select.component.mjs +55 -0
  209. package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +74 -0
  210. package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +51 -0
  211. package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +34 -0
  212. package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +35 -0
  213. package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +42 -0
  214. package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +34 -0
  215. package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +82 -0
  216. package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +34 -0
  217. package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +34 -0
  218. package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +159 -0
  219. package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +77 -0
  220. package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +111 -0
  221. package/esm2020/lib/components/forms/directives/elder-max.directive.mjs +39 -0
  222. package/esm2020/lib/components/forms/directives/elder-min.directive.mjs +39 -0
  223. package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +101 -0
  224. package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +36 -0
  225. package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +29 -0
  226. package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +157 -0
  227. package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +27 -0
  228. package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +120 -0
  229. package/esm2020/lib/components/forms/directives/validation/elder-multiple-of.validator.mjs +57 -0
  230. package/esm2020/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.mjs +68 -0
  231. package/esm2020/lib/components/forms/elder-forms.module.mjs +22 -0
  232. package/esm2020/lib/components/forms/public_api.mjs +2 -0
  233. package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +146 -0
  234. package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +185 -0
  235. package/esm2020/lib/components/forms/search/elder-search.module.mjs +66 -0
  236. package/esm2020/lib/components/forms/search/model/search-input-state.mjs +78 -0
  237. package/esm2020/lib/components/forms/search/model/search-input.mjs +2 -0
  238. package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +123 -0
  239. package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +16 -0
  240. package/esm2020/lib/components/global-search/elder-global-search.component.mjs +126 -0
  241. package/esm2020/lib/components/global-search/elder-global-search.module.mjs +32 -0
  242. package/esm2020/lib/components/global-search/elder-global-search.service.mjs +93 -0
  243. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +90 -0
  244. package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +26 -0
  245. package/esm2020/lib/components/graph/elder-progress-bar/sub-bar.mjs +7 -0
  246. package/esm2020/lib/components/graph/public_api.mjs +2 -0
  247. package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +28 -0
  248. package/esm2020/lib/components/headers/elder-header.module.mjs +43 -0
  249. package/esm2020/lib/components/http-support/elder-http-client.service.mjs +68 -0
  250. package/esm2020/lib/components/http-support/public_api.mjs +2 -0
  251. package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +119 -0
  252. package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +135 -0
  253. package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +28 -0
  254. package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +30 -0
  255. package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +151 -0
  256. package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +28 -0
  257. package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +56 -0
  258. package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +39 -0
  259. package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +30 -0
  260. package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +74 -0
  261. package/esm2020/lib/components/i18n/language/elder-language-config.mjs +3 -0
  262. package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +69 -0
  263. package/esm2020/lib/components/i18n/language/elder-language.module.mjs +72 -0
  264. package/esm2020/lib/components/i18n/language/elder-language.service.mjs +121 -0
  265. package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +65 -0
  266. package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +53 -0
  267. package/esm2020/lib/components/i18n/public_api.mjs +4 -0
  268. package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +127 -0
  269. package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +136 -0
  270. package/esm2020/lib/components/iframes/elder-iframe.module.mjs +95 -0
  271. package/esm2020/lib/components/iframes/iframe-close.directive.mjs +41 -0
  272. package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +51 -0
  273. package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +126 -0
  274. package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +78 -0
  275. package/esm2020/lib/components/iframes/iframe.service.mjs +48 -0
  276. package/esm2020/lib/components/iframes/typed-event-message.mjs +42 -0
  277. package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +61 -0
  278. package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +157 -0
  279. package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +40 -0
  280. package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +9 -0
  281. package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +186 -0
  282. package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +197 -0
  283. package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +114 -0
  284. package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +58 -0
  285. package/esm2020/lib/components/input/autocomplete/many/word-position-finder.mjs +58 -0
  286. package/esm2020/lib/components/input/public_api.mjs +2 -0
  287. package/esm2020/lib/components/labels/elder-labels.module.mjs +30 -0
  288. package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +230 -0
  289. package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +229 -0
  290. package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +64 -0
  291. package/esm2020/lib/components/measures/elder-measures.module.mjs +116 -0
  292. package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +41 -0
  293. package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +73 -0
  294. package/esm2020/lib/components/measures/elder-unit.service.mjs +115 -0
  295. package/esm2020/lib/components/measures/model/dimensions.mjs +17 -0
  296. package/esm2020/lib/components/measures/model/quantity.mjs +12 -0
  297. package/esm2020/lib/components/measures/model/unit-dimension.mjs +14 -0
  298. package/esm2020/lib/components/measures/model/unit-registry.mjs +81 -0
  299. package/esm2020/lib/components/measures/model/unit.mjs +143 -0
  300. package/esm2020/lib/components/measures/public_api.mjs +8 -0
  301. package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +189 -0
  302. package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +237 -0
  303. package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +164 -0
  304. package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +55 -0
  305. package/esm2020/lib/components/navigation/bread-crumbs/path/path.mjs +37 -0
  306. package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +51 -0
  307. package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +93 -0
  308. package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +64 -0
  309. package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +12 -0
  310. package/esm2020/lib/components/navigation/public_api.mjs +4 -0
  311. package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +46 -0
  312. package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +76 -0
  313. package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +68 -0
  314. package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +66 -0
  315. package/esm2020/lib/components/navigation/toolbar/toolbar-column-position.mjs +2 -0
  316. package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +39 -0
  317. package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +85 -0
  318. package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +43 -0
  319. package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +72 -0
  320. package/esm2020/lib/components/overlays/elder-overlay.component.mjs +204 -0
  321. package/esm2020/lib/components/overlays/elder-overlay.module.mjs +41 -0
  322. package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +12 -0
  323. package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +12 -0
  324. package/esm2020/lib/components/panels/elder-panel.module.mjs +38 -0
  325. package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +26 -0
  326. package/esm2020/lib/components/public_api.mjs +40 -0
  327. package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +77 -0
  328. package/esm2020/lib/components/select/auto/elder-select-first-util.mjs +62 -0
  329. package/esm2020/lib/components/select/elder-select-base.mjs +284 -0
  330. package/esm2020/lib/components/select/elder-select-chip.directive.mjs +45 -0
  331. package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +133 -0
  332. package/esm2020/lib/components/select/elder-select-value.directive.mjs +15 -0
  333. package/esm2020/lib/components/select/elder-select.module.mjs +133 -0
  334. package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +356 -0
  335. package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +237 -0
  336. package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +67 -0
  337. package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +86 -0
  338. package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +126 -0
  339. package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +47 -0
  340. package/esm2020/lib/components/select/public_api.mjs +6 -0
  341. package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +57 -0
  342. package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +442 -0
  343. package/esm2020/lib/components/select/single/elder-select-form-field.mjs +45 -0
  344. package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +152 -0
  345. package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +48 -0
  346. package/esm2020/lib/components/select-list/elder-select-list.module.mjs +36 -0
  347. package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +75 -0
  348. package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +118 -0
  349. package/esm2020/lib/components/shell/drawers/drawer-outlet-binding.mjs +60 -0
  350. package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +117 -0
  351. package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +128 -0
  352. package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +46 -0
  353. package/esm2020/lib/components/shell/elder-shell.module.mjs +90 -0
  354. package/esm2020/lib/components/shell/elder-shell.service.mjs +145 -0
  355. package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +73 -0
  356. package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +206 -0
  357. package/esm2020/lib/components/shell/shell-content-slot.mjs +2 -0
  358. package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +137 -0
  359. package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +25 -0
  360. package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +256 -0
  361. package/esm2020/lib/components/tabs/elder-tab.module.mjs +32 -0
  362. package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +62 -0
  363. package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +74 -0
  364. package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +72 -0
  365. package/esm2020/lib/components/theme/elder-theme.directive.mjs +61 -0
  366. package/esm2020/lib/components/theme/elder-theme.module.mjs +74 -0
  367. package/esm2020/lib/components/theme/elder-theme.service.mjs +123 -0
  368. package/esm2020/lib/components/theme/known-elder-themes.mjs +6 -0
  369. package/esm2020/lib/components/theme/public_api.mjs +2 -0
  370. package/esm2020/lib/components/theme/theme-spec.mjs +15 -0
  371. package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +23 -0
  372. package/esm2020/lib/components/time/duration/duration-bucket.mjs +67 -0
  373. package/esm2020/lib/components/time/duration/duration-format.mjs +271 -0
  374. package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +109 -0
  375. package/esm2020/lib/components/time/duration/iso-duration-str.mjs +2 -0
  376. package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +100 -0
  377. package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +79 -0
  378. package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +126 -0
  379. package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +189 -0
  380. package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +84 -0
  381. package/esm2020/lib/components/time/elder-time.module.mjs +133 -0
  382. package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +119 -0
  383. package/esm2020/lib/components/time/period/period-bucket.mjs +31 -0
  384. package/esm2020/lib/components/time/period/period-format.mjs +89 -0
  385. package/esm2020/lib/components/time/public_api.mjs +8 -0
  386. package/esm2020/lib/components/toasts/elder-toast.module.mjs +22 -0
  387. package/esm2020/lib/components/toasts/elder-toast.service.mjs +197 -0
  388. package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +73 -0
  389. package/esm2020/lib/components/toasts/toast-type.mjs +7 -0
  390. package/esm2020/lib/components/toasts/toast.mjs +2 -0
  391. package/esm2020/lib/components/url-fragment/elder-url-fragment.mjs +9 -0
  392. package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +54 -0
  393. package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +84 -0
  394. package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +65 -0
  395. package/esm2020/lib/components/viewers/elder-viewers.module.mjs +25 -0
  396. package/esm2020/lib/features/event-source/elder-event-source.service.mjs +56 -0
  397. package/esm2020/lib/features/event-source/public_api.mjs +3 -0
  398. package/esm2020/lib/features/event-source/reactive-event-source.mjs +198 -0
  399. package/esm2020/lib/features/kafent/access-token-provider.mjs +20 -0
  400. package/esm2020/lib/features/kafent/kafent-config.mjs +24 -0
  401. package/esm2020/lib/features/kafent/kafent-event-stream.mjs +25 -0
  402. package/esm2020/lib/features/kafent/kafent-event.mjs +3 -0
  403. package/esm2020/lib/features/kafent/kafent-event.service.mjs +107 -0
  404. package/esm2020/lib/features/kafent/kafent-live-event-request.mjs +2 -0
  405. package/esm2020/lib/features/kafent/kafent.module.mjs +61 -0
  406. package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +128 -0
  407. package/esm2020/lib/features/kafent/sse/kafent-topic-sse.mjs +98 -0
  408. package/esm2020/lib/features/public_api.mjs +3 -0
  409. package/esm2020/lib/pipes/bytes.pipe.mjs +24 -0
  410. package/esm2020/lib/pipes/elder-pipes.module.mjs +67 -0
  411. package/esm2020/lib/pipes/elder-repeat.pipe.mjs +21 -0
  412. package/esm2020/lib/pipes/elder-round.pipe.mjs +35 -0
  413. package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +20 -0
  414. package/esm2020/lib/pipes/elder-truncate.pipe.mjs +40 -0
  415. package/esm2020/lib/pipes/iso-duration.pipe.mjs +58 -0
  416. package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +49 -0
  417. package/esm2020/lib/pipes/iso-interval.pipe.mjs +109 -0
  418. package/esm2020/lib/pipes/public_api.mjs +2 -0
  419. package/esm2020/lib/pipes/time-ago.pipe.mjs +104 -0
  420. package/esm2020/lib/pipes/time-duration.pipe.mjs +98 -0
  421. package/esm2020/lib/pipes/weight.pipe.mjs +56 -0
  422. package/esm2020/public_api.mjs +8 -0
  423. package/fesm2015/elderbyte-ngx-starter.mjs +27485 -0
  424. package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -0
  425. package/fesm2020/elderbyte-ngx-starter.mjs +27371 -0
  426. package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -0
  427. package/index.d.ts +5 -0
  428. package/lib/common/async/public_api.d.ts +1 -0
  429. package/lib/common/async/refreshing-entity.d.ts +55 -0
  430. package/lib/common/csv/csv-serializer.d.ts +33 -0
  431. package/lib/common/csv/csv-spec.d.ts +71 -0
  432. package/lib/common/csv/public_api.d.ts +2 -0
  433. package/lib/common/data/continuable-listing.d.ts +28 -0
  434. package/lib/common/data/data-context/data-context-active-page.d.ts +75 -0
  435. package/lib/common/data/data-context/data-context-auto-starter.d.ts +41 -0
  436. package/lib/common/data/data-context/data-context-base.d.ts +149 -0
  437. package/lib/common/data/data-context/data-context-builder.d.ts +142 -0
  438. package/lib/common/data/data-context/data-context-continuable-base.d.ts +43 -0
  439. package/lib/common/data/data-context/data-context-continuable-paged.d.ts +58 -0
  440. package/lib/common/data/data-context/data-context-continuable-token.d.ts +48 -0
  441. package/lib/common/data/data-context/data-context-life-cycle-binding.d.ts +33 -0
  442. package/lib/common/data/data-context/data-context-simple.d.ts +30 -0
  443. package/lib/common/data/data-context/data-context-source-auto-reloader.d.ts +8 -0
  444. package/lib/common/data/data-context/data-context-status.d.ts +30 -0
  445. package/lib/common/data/data-context/data-context.d.ts +154 -0
  446. package/lib/common/data/data-context/mat-table-data-context-binding.d.ts +60 -0
  447. package/lib/common/data/data-context/public_api.d.ts +13 -0
  448. package/lib/common/data/datasource/data-source-adapter.d.ts +39 -0
  449. package/lib/common/data/datasource/data-source-processor.d.ts +106 -0
  450. package/lib/common/data/datasource/data-source.d.ts +58 -0
  451. package/lib/common/data/datasource/entity-id-util.d.ts +3 -0
  452. package/lib/common/data/datasource/fetcher/delegate-data-source.d.ts +84 -0
  453. package/lib/common/data/datasource/local/local-list-data-source.d.ts +61 -0
  454. package/lib/common/data/datasource/local/local-paged-data-source.d.ts +49 -0
  455. package/lib/common/data/datasource/public_api.d.ts +7 -0
  456. package/lib/common/data/datasource/rest/public_api.d.ts +1 -0
  457. package/lib/common/data/datasource/rest/rest-client.d.ts +162 -0
  458. package/lib/common/data/entity-set-patch.d.ts +74 -0
  459. package/lib/common/data/field-comparator.d.ts +43 -0
  460. package/lib/common/data/filters/filter-context.d.ts +63 -0
  461. package/lib/common/data/filters/filter.d.ts +52 -0
  462. package/lib/common/data/http-params-builder.d.ts +45 -0
  463. package/lib/common/data/page.d.ts +41 -0
  464. package/lib/common/data/public_api.d.ts +11 -0
  465. package/lib/common/data/required-filter-evaluator.d.ts +46 -0
  466. package/lib/common/data/sort-context.d.ts +42 -0
  467. package/lib/common/data/sort.d.ts +8 -0
  468. package/lib/common/data/token-chunk-request.d.ts +8 -0
  469. package/lib/common/enums/elder-enum-translation.service.d.ts +52 -0
  470. package/lib/common/enums/public_api.d.ts +1 -0
  471. package/lib/common/errors/exception-detail.d.ts +5 -0
  472. package/{src/lib/common/errors/public_api.ts → lib/common/errors/public_api.d.ts} +0 -0
  473. package/lib/common/errors/standard-error-detail.d.ts +22 -0
  474. package/lib/common/format/bytes-format.d.ts +4 -0
  475. package/lib/common/format/bytes-per-second-format.d.ts +5 -0
  476. package/{src/lib/common/format/public_api.ts → lib/common/format/public_api.d.ts} +0 -0
  477. package/lib/common/forms/elder-entity-value-accessor.d.ts +42 -0
  478. package/lib/common/forms/elder-form-field-control-base.directive.d.ts +103 -0
  479. package/lib/common/forms/elder-from-field-base.d.ts +52 -0
  480. package/lib/common/forms/elder-from-field-entity-base.d.ts +31 -0
  481. package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +35 -0
  482. package/lib/common/forms/elder-multi-entity-value-accessor.d.ts +52 -0
  483. package/lib/common/forms/form-field-base.component.d.ts +74 -0
  484. package/lib/common/forms/multi-model-base.component.d.ts +23 -0
  485. package/lib/common/forms/public_api.d.ts +11 -0
  486. package/lib/common/forms/template-composite-control.d.ts +64 -0
  487. package/lib/common/forms/value-accessor-base.d.ts +98 -0
  488. package/lib/common/forms/view-providers.d.ts +23 -0
  489. package/lib/common/http/http-client-builder.service.d.ts +6 -0
  490. package/lib/common/http/http-client-pristine.d.ts +10 -0
  491. package/lib/common/http/public_api.d.ts +4 -0
  492. package/lib/common/http/transfer/data-transfer-factory.d.ts +70 -0
  493. package/lib/common/http/transfer/data-transfer-progress-aggregate.d.ts +27 -0
  494. package/lib/common/http/transfer/data-transfer-progress.d.ts +13 -0
  495. package/lib/common/http/transfer/data-transfer-state.d.ts +52 -0
  496. package/lib/common/http/transfer/data-transfer-status.d.ts +22 -0
  497. package/lib/common/http/transfer/http-data-transfer.d.ts +96 -0
  498. package/lib/common/http/transfer/public_api.d.ts +6 -0
  499. package/lib/common/http/upload/file-upload-client.d.ts +38 -0
  500. package/lib/common/i18n/entity/impl/i18n-base.d.ts +6 -0
  501. package/lib/common/i18n/entity/impl/i18n-text.d.ts +11 -0
  502. package/lib/common/i18n/entity/language-tag.d.ts +15 -0
  503. package/lib/common/i18n/entity/locale.d.ts +8 -0
  504. package/lib/common/i18n/entity/localisation-picker.d.ts +14 -0
  505. package/lib/common/i18n/entity/localized.d.ts +10 -0
  506. package/lib/common/i18n/entity/public_api.d.ts +5 -0
  507. package/lib/common/i18n/public_api.d.ts +1 -0
  508. package/lib/common/json-map.d.ts +7 -0
  509. package/lib/common/objects.d.ts +19 -0
  510. package/lib/common/public_api.d.ts +18 -0
  511. package/lib/common/reactive-map.d.ts +40 -0
  512. package/{src/lib/common/selection/public_api.ts → lib/common/selection/public_api.d.ts} +0 -0
  513. package/lib/common/selection/selection-model.d.ts +82 -0
  514. package/lib/common/sets.d.ts +20 -0
  515. package/lib/common/suggestion-provider.d.ts +13 -0
  516. package/lib/common/templates/template-slot-manager.d.ts +70 -0
  517. package/lib/common/time/date-util.d.ts +54 -0
  518. package/lib/common/time/interval.d.ts +287 -0
  519. package/lib/common/time/period-duration.d.ts +84 -0
  520. package/lib/common/time/public_api.d.ts +4 -0
  521. package/lib/common/time/time-util.d.ts +15 -0
  522. package/lib/common/url/elder-router.service.d.ts +36 -0
  523. package/lib/common/url/elder-url-fragment-params.service.d.ts +62 -0
  524. package/lib/common/url/public_api.d.ts +3 -0
  525. package/lib/common/url/url-query-params.d.ts +96 -0
  526. package/lib/common/utils/batcher.d.ts +14 -0
  527. package/lib/common/utils/collection-util.d.ts +35 -0
  528. package/lib/common/utils/filter-util.d.ts +7 -0
  529. package/lib/common/utils/next-number-util.d.ts +39 -0
  530. package/lib/common/utils/ng-zone-utils.d.ts +7 -0
  531. package/lib/common/utils/parse-util.d.ts +8 -0
  532. package/lib/common/utils/property-path-util.d.ts +8 -0
  533. package/{src/lib/common/utils/public_api.ts → lib/common/utils/public_api.d.ts} +0 -0
  534. package/lib/common/utils/query-list-binding.d.ts +57 -0
  535. package/lib/common/utils/sort-util.d.ts +10 -0
  536. package/lib/common/utils/url-builder.d.ts +160 -0
  537. package/lib/common/utils/uuid-util.d.ts +18 -0
  538. package/lib/common/utils/value-wrapper.d.ts +15 -0
  539. package/lib/components/access-denied/elder-access-denied.component.d.ts +8 -0
  540. package/lib/components/access-denied/elder-access-denied.module.d.ts +11 -0
  541. package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +20 -0
  542. package/lib/components/auditing/elder-audit.module.d.ts +14 -0
  543. package/lib/components/auditing/i-audited-entity.d.ts +13 -0
  544. package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +8 -0
  545. package/lib/components/button-group/elder-button-group.module.d.ts +12 -0
  546. package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +64 -0
  547. package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +9 -0
  548. package/lib/components/card-organizer/card-organizer-data.d.ts +57 -0
  549. package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +89 -0
  550. package/lib/components/card-organizer/card-stack.d.ts +146 -0
  551. package/lib/components/card-organizer/elder-card-organizer.module.d.ts +22 -0
  552. package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +6 -0
  553. package/lib/components/cards/elder-card/elder-card.component.d.ts +68 -0
  554. package/lib/components/cards/elder-card/elder-card.module.d.ts +13 -0
  555. package/lib/components/connectivity/elder-connectivity.module.d.ts +14 -0
  556. package/lib/components/connectivity/elder-connectivity.service.d.ts +36 -0
  557. package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +33 -0
  558. package/lib/components/connectivity/public_api.d.ts +2 -0
  559. package/lib/components/containers/elder-containers.module.d.ts +9 -0
  560. package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +12 -0
  561. package/lib/components/containers/public_api.d.ts +1 -0
  562. package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +51 -0
  563. package/lib/components/csv/elder-csv-stream-exporter-builder.d.ts +35 -0
  564. package/lib/components/csv/elder-csv-stream-exporter-builder.service.d.ts +28 -0
  565. package/lib/components/csv/elder-csv-stream-exporter.d.ts +58 -0
  566. package/lib/components/csv/elder-csv.module.d.ts +14 -0
  567. package/lib/components/currency/elder-currency.module.d.ts +8 -0
  568. package/lib/components/currency/elder-currency.pipe.d.ts +21 -0
  569. package/lib/components/currency/model/currency-code.d.ts +36 -0
  570. package/lib/components/currency/model/currency-unit-registry.d.ts +23 -0
  571. package/lib/components/currency/model/currency-unit.d.ts +7 -0
  572. package/lib/components/currency/model/currency.d.ts +10 -0
  573. package/lib/components/currency/public_api.d.ts +6 -0
  574. package/lib/components/data-transfer/elder-data-transfer.module.d.ts +26 -0
  575. package/lib/components/data-transfer/elder-data-transfer.service.d.ts +55 -0
  576. package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +30 -0
  577. package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +29 -0
  578. package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +31 -0
  579. package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +28 -0
  580. package/lib/components/data-view/base/data-view-options-provider-binding.d.ts +39 -0
  581. package/lib/components/data-view/base/elder-data-view-base.d.ts +129 -0
  582. package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +38 -0
  583. package/lib/components/data-view/base/elder-data-view-options.d.ts +34 -0
  584. package/lib/components/data-view/base/elder-data-view.d.ts +7 -0
  585. package/lib/components/data-view/base/public_api.d.ts +5 -0
  586. package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +32 -0
  587. package/lib/components/data-view/common/elder-data-common.module.d.ts +29 -0
  588. package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +66 -0
  589. package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +45 -0
  590. package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +48 -0
  591. package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +26 -0
  592. package/lib/components/data-view/common/selection/master-selection-state.d.ts +8 -0
  593. package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +21 -0
  594. package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +113 -0
  595. package/lib/components/data-view/grid/elder-grid.module.d.ts +24 -0
  596. package/lib/components/data-view/public_api.d.ts +5 -0
  597. package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +9 -0
  598. package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +28 -0
  599. package/lib/components/data-view/table/activation/elder-item-activator.d.ts +3 -0
  600. package/lib/components/data-view/table/activation/elder-table-activation-options.d.ts +16 -0
  601. package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +78 -0
  602. package/lib/components/data-view/table/elder-number-cell.directive.d.ts +12 -0
  603. package/lib/components/data-view/table/elder-paginator-intl.d.ts +38 -0
  604. package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +12 -0
  605. package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +129 -0
  606. package/lib/components/data-view/table/elder-table-column.directive.d.ts +9 -0
  607. package/lib/components/data-view/table/elder-table-extension.directive.d.ts +53 -0
  608. package/lib/components/data-view/table/elder-table-root.directive.d.ts +15 -0
  609. package/lib/components/data-view/table/elder-table-row.directive.d.ts +63 -0
  610. package/lib/components/data-view/table/elder-table-sort.directive.d.ts +11 -0
  611. package/lib/components/data-view/table/elder-table.module.d.ts +47 -0
  612. package/lib/components/data-view/table/model/elder-column-layout.d.ts +44 -0
  613. package/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.d.ts +44 -0
  614. package/lib/components/data-view/table/model/elder-table-model-provider.d.ts +25 -0
  615. package/lib/components/data-view/table/model/elder-table-model-query-group.d.ts +53 -0
  616. package/lib/components/data-view/table/model/elder-table-model.d.ts +83 -0
  617. package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +22 -0
  618. package/lib/components/dialogs/elder-dialog-config.d.ts +16 -0
  619. package/lib/components/dialogs/elder-dialog.module.d.ts +37 -0
  620. package/lib/components/dialogs/elder-dialog.service.d.ts +72 -0
  621. package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +22 -0
  622. package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +29 -0
  623. package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +24 -0
  624. package/lib/components/errors/elder-error.module.d.ts +16 -0
  625. package/lib/components/errors/error-util.d.ts +23 -0
  626. package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +42 -0
  627. package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +33 -0
  628. package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +11 -0
  629. package/lib/components/files/blob-url.d.ts +6 -0
  630. package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +107 -0
  631. package/lib/components/files/elder-file-drop-zone.directive.d.ts +45 -0
  632. package/lib/components/files/elder-file-select.directive.d.ts +66 -0
  633. package/lib/components/files/elder-file.module.d.ts +23 -0
  634. package/lib/components/files/file-select/file-select.component.d.ts +34 -0
  635. package/lib/components/files/file-upload/file-upload.component.d.ts +45 -0
  636. package/lib/components/forms/clipboard/elder-clipboard.service.d.ts +26 -0
  637. package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +32 -0
  638. package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +22 -0
  639. package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +21 -0
  640. package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +19 -0
  641. package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +58 -0
  642. package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +19 -0
  643. package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +19 -0
  644. package/lib/components/forms/directives/elder-forms-directives.module.d.ts +68 -0
  645. package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +41 -0
  646. package/lib/components/forms/directives/elder-key-event.directive.d.ts +58 -0
  647. package/lib/components/forms/directives/elder-max.directive.d.ts +11 -0
  648. package/lib/components/forms/directives/elder-min.directive.d.ts +11 -0
  649. package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +48 -0
  650. package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +13 -0
  651. package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +16 -0
  652. package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +63 -0
  653. package/lib/components/forms/directives/elder-touched.directive.d.ts +14 -0
  654. package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +51 -0
  655. package/lib/components/forms/directives/validation/elder-multiple-of.validator.d.ts +20 -0
  656. package/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.d.ts +33 -0
  657. package/lib/components/forms/elder-forms.module.d.ts +12 -0
  658. package/lib/components/forms/public_api.d.ts +1 -0
  659. package/lib/components/forms/search/elder-search-context.directive.d.ts +79 -0
  660. package/lib/components/forms/search/elder-search-input.directive.d.ts +85 -0
  661. package/lib/components/forms/search/elder-search.module.d.ts +25 -0
  662. package/lib/components/forms/search/model/search-input-state.d.ts +67 -0
  663. package/lib/components/forms/search/model/search-input.d.ts +21 -0
  664. package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +72 -0
  665. package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +6 -0
  666. package/lib/components/global-search/elder-global-search.component.d.ts +39 -0
  667. package/lib/components/global-search/elder-global-search.module.d.ts +18 -0
  668. package/lib/components/global-search/elder-global-search.service.d.ts +54 -0
  669. package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +47 -0
  670. package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +10 -0
  671. package/lib/components/graph/elder-progress-bar/sub-bar.d.ts +5 -0
  672. package/{src/lib/components/graph/public_api.ts → lib/components/graph/public_api.d.ts} +0 -0
  673. package/lib/components/headers/elder-header/elder-header.component.d.ts +25 -0
  674. package/lib/components/headers/elder-header.module.d.ts +11 -0
  675. package/lib/components/http-support/elder-http-client.service.d.ts +48 -0
  676. package/lib/components/http-support/public_api.d.ts +1 -0
  677. package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +37 -0
  678. package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +62 -0
  679. package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +22 -0
  680. package/lib/components/i18n/entities/elder-localized-input-dialog.service.d.ts +13 -0
  681. package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +67 -0
  682. package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +17 -0
  683. package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +37 -0
  684. package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +23 -0
  685. package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +22 -0
  686. package/lib/components/i18n/entities/picker/localisation-picker.service.d.ts +44 -0
  687. package/lib/components/i18n/language/elder-language-config.d.ts +14 -0
  688. package/lib/components/i18n/language/elder-language-interceptor.d.ts +41 -0
  689. package/lib/components/i18n/language/elder-language.module.d.ts +26 -0
  690. package/lib/components/i18n/language/elder-language.service.d.ts +77 -0
  691. package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +37 -0
  692. package/lib/components/i18n/locales/elder-locales-de-ch.module.d.ts +10 -0
  693. package/{src/lib/components/i18n/public_api.ts → lib/components/i18n/public_api.d.ts} +0 -0
  694. package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +68 -0
  695. package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +62 -0
  696. package/lib/components/iframes/elder-iframe.module.d.ts +27 -0
  697. package/lib/components/iframes/iframe-close.directive.d.ts +24 -0
  698. package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +36 -0
  699. package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +92 -0
  700. package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +48 -0
  701. package/lib/components/iframes/iframe.service.d.ts +25 -0
  702. package/lib/components/iframes/typed-event-message.d.ts +26 -0
  703. package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +30 -0
  704. package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +63 -0
  705. package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +19 -0
  706. package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.d.ts +8 -0
  707. package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +87 -0
  708. package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +78 -0
  709. package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +60 -0
  710. package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +19 -0
  711. package/lib/components/input/autocomplete/many/word-position-finder.d.ts +15 -0
  712. package/lib/components/input/public_api.d.ts +1 -0
  713. package/lib/components/labels/elder-labels.module.d.ts +15 -0
  714. package/lib/components/labels/labels-input/labels-input.component.d.ts +91 -0
  715. package/lib/components/measures/dimensions-input/elder-dimensions-input.component.d.ts +109 -0
  716. package/lib/components/measures/directives/elder-unit-select.directive.d.ts +30 -0
  717. package/lib/components/measures/elder-measures.module.d.ts +32 -0
  718. package/lib/components/measures/elder-quantity-transform.pipe.d.ts +22 -0
  719. package/lib/components/measures/elder-quantity.pipe.d.ts +40 -0
  720. package/lib/components/measures/elder-unit.service.d.ts +39 -0
  721. package/lib/components/measures/model/dimensions.d.ts +11 -0
  722. package/lib/components/measures/model/quantity.d.ts +7 -0
  723. package/lib/components/measures/model/unit-dimension.d.ts +12 -0
  724. package/lib/components/measures/model/unit-registry.d.ts +46 -0
  725. package/lib/components/measures/model/unit.d.ts +111 -0
  726. package/lib/components/measures/public_api.d.ts +7 -0
  727. package/lib/components/measures/quantity-input/elder-quantity-input.component.d.ts +94 -0
  728. package/lib/components/measures/util/elder-quantity.service.d.ts +116 -0
  729. package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +69 -0
  730. package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +18 -0
  731. package/lib/components/navigation/bread-crumbs/path/path.d.ts +31 -0
  732. package/lib/components/navigation/nav/elder-nav.module.d.ts +18 -0
  733. package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +45 -0
  734. package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +27 -0
  735. package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +6 -0
  736. package/{src/lib/components/navigation/public_api.ts → lib/components/navigation/public_api.d.ts} +0 -0
  737. package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +34 -0
  738. package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +23 -0
  739. package/lib/components/navigation/toolbar/elder-toolbar.service.d.ts +46 -0
  740. package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +42 -0
  741. package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +9 -0
  742. package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +30 -0
  743. package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.d.ts +47 -0
  744. package/lib/components/overlays/elder-overlay-origin.directive.d.ts +28 -0
  745. package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +36 -0
  746. package/lib/components/overlays/elder-overlay.component.d.ts +88 -0
  747. package/lib/components/overlays/elder-overlay.module.d.ts +14 -0
  748. package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +6 -0
  749. package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +6 -0
  750. package/lib/components/panels/elder-panel.module.d.ts +14 -0
  751. package/lib/components/panels/flat/elder-panel.component.d.ts +15 -0
  752. package/{src/lib/components/public_api.ts → lib/components/public_api.d.ts} +0 -0
  753. package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +45 -0
  754. package/lib/components/select/auto/elder-select-first-util.d.ts +22 -0
  755. package/lib/components/select/elder-select-base.d.ts +149 -0
  756. package/lib/components/select/elder-select-chip.directive.d.ts +23 -0
  757. package/lib/components/select/elder-select-on-tab.directive.d.ts +55 -0
  758. package/lib/components/select/elder-select-value.directive.d.ts +9 -0
  759. package/lib/components/select/elder-select.module.d.ts +48 -0
  760. package/lib/components/select/multi/elder-multi-select-base.d.ts +120 -0
  761. package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +105 -0
  762. package/lib/components/select/multi/elder-multi-select-form-field.d.ts +34 -0
  763. package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +42 -0
  764. package/lib/components/select/popup/selection-model-popup.directive.d.ts +49 -0
  765. package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +32 -0
  766. package/lib/components/select/public_api.d.ts +5 -0
  767. package/lib/components/select/single/elder-clear-select.directive.d.ts +34 -0
  768. package/lib/components/select/single/elder-select/elder-select.component.d.ts +155 -0
  769. package/lib/components/select/single/elder-select-form-field.d.ts +30 -0
  770. package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +78 -0
  771. package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +12 -0
  772. package/lib/components/select-list/elder-select-list.module.d.ts +15 -0
  773. package/lib/components/select-list/select-list/elder-select-list.component.d.ts +53 -0
  774. package/lib/components/select-list/select-list-item/elder-select-list-item.component.d.ts +57 -0
  775. package/lib/components/shell/drawers/drawer-outlet-binding.d.ts +36 -0
  776. package/lib/components/shell/drawers/elder-route-outlet-drawer.service.d.ts +55 -0
  777. package/lib/components/shell/drawers/elder-router-outlet.service.d.ts +64 -0
  778. package/lib/components/shell/elder-shell-slot.directive.d.ts +34 -0
  779. package/lib/components/shell/elder-shell.module.d.ts +30 -0
  780. package/lib/components/shell/elder-shell.service.d.ts +98 -0
  781. package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +43 -0
  782. package/lib/components/shell/shell/elder-shell.component.d.ts +99 -0
  783. package/lib/components/shell/shell-content-slot.d.ts +4 -0
  784. package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +66 -0
  785. package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +19 -0
  786. package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +100 -0
  787. package/lib/components/tabs/elder-tab.module.d.ts +12 -0
  788. package/lib/components/theme/elder-theme-applier.directive.d.ts +36 -0
  789. package/lib/components/theme/elder-theme-preference.service.d.ts +35 -0
  790. package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +37 -0
  791. package/lib/components/theme/elder-theme.directive.d.ts +38 -0
  792. package/lib/components/theme/elder-theme.module.d.ts +22 -0
  793. package/lib/components/theme/elder-theme.service.d.ts +51 -0
  794. package/lib/components/theme/known-elder-themes.d.ts +5 -0
  795. package/{src/lib/components/theme/public_api.ts → lib/components/theme/public_api.d.ts} +0 -0
  796. package/lib/components/theme/theme-spec.d.ts +18 -0
  797. package/lib/components/time/date-adapters/custom-date-adapter.d.ts +12 -0
  798. package/lib/components/time/duration/duration-bucket.d.ts +37 -0
  799. package/lib/components/time/duration/duration-format.d.ts +62 -0
  800. package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +58 -0
  801. package/lib/components/time/duration/iso-duration-str.d.ts +5 -0
  802. package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +60 -0
  803. package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +42 -0
  804. package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +84 -0
  805. package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +78 -0
  806. package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +47 -0
  807. package/lib/components/time/elder-time.module.d.ts +38 -0
  808. package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +71 -0
  809. package/lib/components/time/period/period-bucket.d.ts +21 -0
  810. package/lib/components/time/period/period-format.d.ts +43 -0
  811. package/lib/components/time/public_api.d.ts +7 -0
  812. package/lib/components/toasts/elder-toast.module.d.ts +12 -0
  813. package/lib/components/toasts/elder-toast.service.d.ts +96 -0
  814. package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +38 -0
  815. package/lib/components/toasts/toast-type.d.ts +5 -0
  816. package/lib/components/toasts/toast.d.ts +7 -0
  817. package/lib/components/url-fragment/elder-url-fragment.d.ts +7 -0
  818. package/lib/components/url-fragment/elder-url-fragment.module.d.ts +17 -0
  819. package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +38 -0
  820. package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +41 -0
  821. package/lib/components/viewers/elder-viewers.module.d.ts +9 -0
  822. package/lib/features/event-source/elder-event-source.service.d.ts +43 -0
  823. package/lib/features/event-source/public_api.d.ts +2 -0
  824. package/lib/features/event-source/reactive-event-source.d.ts +97 -0
  825. package/lib/features/kafent/access-token-provider.d.ts +12 -0
  826. package/lib/features/kafent/kafent-config.d.ts +32 -0
  827. package/lib/features/kafent/kafent-event-stream.d.ts +28 -0
  828. package/lib/features/kafent/kafent-event.d.ts +11 -0
  829. package/lib/features/kafent/kafent-event.service.d.ts +77 -0
  830. package/lib/features/kafent/kafent-live-event-request.d.ts +58 -0
  831. package/lib/features/kafent/kafent.module.d.ts +30 -0
  832. package/lib/features/kafent/sse/kafent-event-stream-sse.service.d.ts +56 -0
  833. package/lib/features/kafent/sse/kafent-topic-sse.d.ts +70 -0
  834. package/lib/features/public_api.d.ts +2 -0
  835. package/lib/pipes/bytes.pipe.d.ts +7 -0
  836. package/lib/pipes/elder-pipes.module.d.ts +46 -0
  837. package/lib/pipes/elder-repeat.pipe.d.ts +7 -0
  838. package/lib/pipes/elder-round.pipe.d.ts +23 -0
  839. package/lib/pipes/elder-safe-url.pipe.d.ts +10 -0
  840. package/lib/pipes/elder-truncate.pipe.d.ts +17 -0
  841. package/lib/pipes/iso-duration.pipe.d.ts +26 -0
  842. package/lib/pipes/iso-interval-parse.pipe.d.ts +30 -0
  843. package/lib/pipes/iso-interval.pipe.d.ts +43 -0
  844. package/lib/pipes/public_api.d.ts +1 -0
  845. package/lib/pipes/time-ago.pipe.d.ts +18 -0
  846. package/lib/pipes/time-duration.pipe.d.ts +13 -0
  847. package/lib/pipes/weight.pipe.d.ts +7 -0
  848. package/package.json +22 -6
  849. package/public_api.d.ts +4 -0
  850. package/theming/_elder-flex-layout.scss +28 -0
  851. package/.eslintrc.json +0 -44
  852. package/karma-ci.conf.js +0 -46
  853. package/karma.conf.js +0 -44
  854. package/ng-package.json +0 -15
  855. package/ng-package.prod.json +0 -14
  856. package/src/lib/common/async/public_api.ts +0 -3
  857. package/src/lib/common/async/refreshing-entity.ts +0 -128
  858. package/src/lib/common/csv/csv-serializer.ts +0 -82
  859. package/src/lib/common/csv/csv-spec.ts +0 -148
  860. package/src/lib/common/csv/public_api.ts +0 -3
  861. package/src/lib/common/data/continuable-listing.ts +0 -35
  862. package/src/lib/common/data/data-context/data-context-active-page.ts +0 -184
  863. package/src/lib/common/data/data-context/data-context-auto-starter.ts +0 -108
  864. package/src/lib/common/data/data-context/data-context-base.ts +0 -406
  865. package/src/lib/common/data/data-context/data-context-builder.ts +0 -354
  866. package/src/lib/common/data/data-context/data-context-continuable-base.ts +0 -100
  867. package/src/lib/common/data/data-context/data-context-continuable-paged.ts +0 -191
  868. package/src/lib/common/data/data-context/data-context-continuable-token.ts +0 -177
  869. package/src/lib/common/data/data-context/data-context-life-cycle-binding.ts +0 -59
  870. package/src/lib/common/data/data-context/data-context-simple.ts +0 -80
  871. package/src/lib/common/data/data-context/data-context-source-auto-reloader.ts +0 -21
  872. package/src/lib/common/data/data-context/data-context-status.ts +0 -56
  873. package/src/lib/common/data/data-context/data-context.ts +0 -204
  874. package/src/lib/common/data/data-context/mat-table-data-context-binding.ts +0 -209
  875. package/src/lib/common/data/data-context/public_api.ts +0 -19
  876. package/src/lib/common/data/datasource/data-source-adapter.ts +0 -96
  877. package/src/lib/common/data/datasource/data-source-processor.ts +0 -318
  878. package/src/lib/common/data/datasource/data-source.ts +0 -87
  879. package/src/lib/common/data/datasource/entity-id-util.ts +0 -11
  880. package/src/lib/common/data/datasource/fetcher/delegate-data-source.ts +0 -230
  881. package/src/lib/common/data/datasource/local/local-list-data-source.ts +0 -161
  882. package/src/lib/common/data/datasource/local/local-paged-data-source.ts +0 -129
  883. package/src/lib/common/data/datasource/public_api.ts +0 -14
  884. package/src/lib/common/data/datasource/rest/public_api.ts +0 -2
  885. package/src/lib/common/data/datasource/rest/rest-client.ts +0 -474
  886. package/src/lib/common/data/entity-set-patch.ts +0 -210
  887. package/src/lib/common/data/field-comparator.ts +0 -122
  888. package/src/lib/common/data/filters/filter-context.spec.ts +0 -150
  889. package/src/lib/common/data/filters/filter-context.ts +0 -163
  890. package/src/lib/common/data/filters/filter.spec.ts +0 -136
  891. package/src/lib/common/data/filters/filter.ts +0 -137
  892. package/src/lib/common/data/http-params-builder.ts +0 -138
  893. package/src/lib/common/data/page.ts +0 -92
  894. package/src/lib/common/data/public_api.ts +0 -12
  895. package/src/lib/common/data/required-filter-evaluator.ts +0 -122
  896. package/src/lib/common/data/sort-context.ts +0 -90
  897. package/src/lib/common/data/sort.ts +0 -16
  898. package/src/lib/common/data/token-chunk-request.ts +0 -10
  899. package/src/lib/common/enums/elder-enum-translation.service.ts +0 -116
  900. package/src/lib/common/enums/public_api.ts +0 -3
  901. package/src/lib/common/errors/exception-detail.ts +0 -6
  902. package/src/lib/common/errors/standard-error-detail.ts +0 -27
  903. package/src/lib/common/format/bytes-format.ts +0 -25
  904. package/src/lib/common/format/bytes-per-second-format.ts +0 -44
  905. package/src/lib/common/forms/elder-entity-value-accessor.ts +0 -70
  906. package/src/lib/common/forms/elder-form-field-control-base.directive.ts +0 -240
  907. package/src/lib/common/forms/elder-from-field-base.ts +0 -113
  908. package/src/lib/common/forms/elder-from-field-entity-base.ts +0 -63
  909. package/src/lib/common/forms/elder-from-field-multi-entity-base.ts +0 -86
  910. package/src/lib/common/forms/elder-multi-entity-value-accessor.ts +0 -84
  911. package/src/lib/common/forms/form-field-base.component.ts +0 -152
  912. package/src/lib/common/forms/multi-model-base.component.ts +0 -40
  913. package/src/lib/common/forms/public_api.ts +0 -12
  914. package/src/lib/common/forms/template-composite-control.ts +0 -158
  915. package/src/lib/common/forms/value-accessor-base.ts +0 -165
  916. package/src/lib/common/forms/view-providers.ts +0 -34
  917. package/src/lib/common/http/http-client-builder.service.ts +0 -55
  918. package/src/lib/common/http/http-client-pristine.ts +0 -15
  919. package/src/lib/common/http/public_api.ts +0 -5
  920. package/src/lib/common/http/transfer/data-transfer-factory.ts +0 -145
  921. package/src/lib/common/http/transfer/data-transfer-progress-aggregate.ts +0 -74
  922. package/src/lib/common/http/transfer/data-transfer-progress.ts +0 -18
  923. package/src/lib/common/http/transfer/data-transfer-state.ts +0 -129
  924. package/src/lib/common/http/transfer/data-transfer-status.ts +0 -28
  925. package/src/lib/common/http/transfer/http-data-transfer.ts +0 -276
  926. package/src/lib/common/http/transfer/public_api.ts +0 -9
  927. package/src/lib/common/http/upload/file-upload-client.ts +0 -74
  928. package/src/lib/common/i18n/entity/impl/i18n-base.ts +0 -9
  929. package/src/lib/common/i18n/entity/impl/i18n-text.ts +0 -25
  930. package/src/lib/common/i18n/entity/language-tag.ts +0 -19
  931. package/src/lib/common/i18n/entity/locale.ts +0 -20
  932. package/src/lib/common/i18n/entity/localisation-picker.ts +0 -51
  933. package/src/lib/common/i18n/entity/localized.ts +0 -11
  934. package/src/lib/common/i18n/entity/public_api.ts +0 -7
  935. package/src/lib/common/i18n/public_api.ts +0 -3
  936. package/src/lib/common/json-map.ts +0 -26
  937. package/src/lib/common/objects.ts +0 -46
  938. package/src/lib/common/public_api.ts +0 -20
  939. package/src/lib/common/reactive-map.ts +0 -113
  940. package/src/lib/common/selection/selection-model.ts +0 -274
  941. package/src/lib/common/sets.ts +0 -48
  942. package/src/lib/common/suggestion-provider.ts +0 -28
  943. package/src/lib/common/templates/public_api.ts +0 -1
  944. package/src/lib/common/templates/template-slot-manager.ts +0 -153
  945. package/src/lib/common/time/date-util.ts +0 -120
  946. package/src/lib/common/time/interval.spec.ts +0 -53
  947. package/src/lib/common/time/interval.ts +0 -539
  948. package/src/lib/common/time/period-duration.ts +0 -147
  949. package/src/lib/common/time/public_api.ts +0 -6
  950. package/src/lib/common/time/time-util.ts +0 -54
  951. package/src/lib/common/url/elder-router.service.ts +0 -55
  952. package/src/lib/common/url/elder-url-fragment-params.service.ts +0 -139
  953. package/src/lib/common/url/public_api.ts +0 -5
  954. package/src/lib/common/url/url-query-params.ts +0 -169
  955. package/src/lib/common/utils/batcher.spec.ts +0 -39
  956. package/src/lib/common/utils/batcher.ts +0 -55
  957. package/src/lib/common/utils/collection-util.ts +0 -125
  958. package/src/lib/common/utils/filter-util.ts +0 -67
  959. package/src/lib/common/utils/next-number-util.ts +0 -102
  960. package/src/lib/common/utils/ng-zone-utils.ts +0 -18
  961. package/src/lib/common/utils/parse-util.ts +0 -17
  962. package/src/lib/common/utils/property-path-util.ts +0 -29
  963. package/src/lib/common/utils/query-list-binding.ts +0 -105
  964. package/src/lib/common/utils/sort-util.spec.ts +0 -41
  965. package/src/lib/common/utils/sort-util.ts +0 -38
  966. package/src/lib/common/utils/url-builder.spec.ts +0 -83
  967. package/src/lib/common/utils/url-builder.ts +0 -363
  968. package/src/lib/common/utils/uuid-util.ts +0 -34
  969. package/src/lib/common/utils/value-wrapper.ts +0 -25
  970. package/src/lib/components/access-denied/elder-access-denied.component.html +0 -12
  971. package/src/lib/components/access-denied/elder-access-denied.component.ts +0 -16
  972. package/src/lib/components/access-denied/elder-access-denied.module.ts +0 -23
  973. package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.html +0 -23
  974. package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.ts +0 -39
  975. package/src/lib/components/auditing/elder-audit.module.ts +0 -28
  976. package/src/lib/components/auditing/i-audited-entity.ts +0 -17
  977. package/src/lib/components/button-group/elder-button-group/elder-button-group.component.html +0 -3
  978. package/src/lib/components/button-group/elder-button-group/elder-button-group.component.ts +0 -21
  979. package/src/lib/components/button-group/elder-button-group.module.ts +0 -23
  980. package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.html +0 -26
  981. package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.ts +0 -148
  982. package/src/lib/components/card-organizer/card-organizer/elder-stack-card.directive.ts +0 -9
  983. package/src/lib/components/card-organizer/card-organizer-data.ts +0 -124
  984. package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.html +0 -70
  985. package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.ts +0 -250
  986. package/src/lib/components/card-organizer/card-stack.ts +0 -231
  987. package/src/lib/components/card-organizer/elder-card-organizer.module.ts +0 -37
  988. package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.css +0 -5
  989. package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.html +0 -16
  990. package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.ts +0 -14
  991. package/src/lib/components/cards/elder-card/elder-card.component.html +0 -21
  992. package/src/lib/components/cards/elder-card/elder-card.component.ts +0 -141
  993. package/src/lib/components/cards/elder-card/elder-card.module.ts +0 -47
  994. package/src/lib/components/connectivity/elder-connectivity.module.ts +0 -37
  995. package/src/lib/components/connectivity/elder-connectivity.service.ts +0 -83
  996. package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.html +0 -11
  997. package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.ts +0 -51
  998. package/src/lib/components/connectivity/public_api.ts +0 -3
  999. package/src/lib/components/containers/elder-containers.module.ts +0 -18
  1000. package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.html +0 -14
  1001. package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.ts +0 -30
  1002. package/src/lib/components/containers/public_api.ts +0 -3
  1003. package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.html +0 -5
  1004. package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.ts +0 -105
  1005. package/src/lib/components/csv/elder-csv-stream-exporter-builder.service.ts +0 -56
  1006. package/src/lib/components/csv/elder-csv-stream-exporter-builder.ts +0 -68
  1007. package/src/lib/components/csv/elder-csv-stream-exporter.ts +0 -192
  1008. package/src/lib/components/csv/elder-csv.module.ts +0 -27
  1009. package/src/lib/components/currency/elder-currency.module.ts +0 -18
  1010. package/src/lib/components/currency/elder-currency.pipe.ts +0 -44
  1011. package/src/lib/components/currency/elder-currency.service.ts +0 -83
  1012. package/src/lib/components/currency/model/currency-code.ts +0 -37
  1013. package/src/lib/components/currency/model/currency-unit-registry.ts +0 -39
  1014. package/src/lib/components/currency/model/currency-unit.ts +0 -18
  1015. package/src/lib/components/currency/model/currency.ts +0 -22
  1016. package/src/lib/components/currency/public_api.ts +0 -7
  1017. package/src/lib/components/data-transfer/elder-data-transfer.module.ts +0 -52
  1018. package/src/lib/components/data-transfer/elder-data-transfer.service.ts +0 -120
  1019. package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.html +0 -47
  1020. package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.ts +0 -82
  1021. package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.html +0 -26
  1022. package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.ts +0 -46
  1023. package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.html +0 -31
  1024. package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.ts +0 -61
  1025. package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.html +0 -24
  1026. package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.ts +0 -41
  1027. package/src/lib/components/data-view/base/data-view-options-provider-binding.ts +0 -99
  1028. package/src/lib/components/data-view/base/elder-data-view-base.ts +0 -322
  1029. package/src/lib/components/data-view/base/elder-data-view-options-provider.ts +0 -55
  1030. package/src/lib/components/data-view/base/elder-data-view-options.ts +0 -89
  1031. package/src/lib/components/data-view/base/elder-data-view.ts +0 -14
  1032. package/src/lib/components/data-view/base/public_api.ts +0 -5
  1033. package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.html +0 -50
  1034. package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.ts +0 -51
  1035. package/src/lib/components/data-view/common/elder-data-common.module.ts +0 -62
  1036. package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.html +0 -113
  1037. package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.ts +0 -181
  1038. package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.html +0 -25
  1039. package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.ts +0 -99
  1040. package/src/lib/components/data-view/common/selection/data-context-selection.directive.ts +0 -127
  1041. package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.html +0 -22
  1042. package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.ts +0 -53
  1043. package/src/lib/components/data-view/common/selection/master-selection-state.ts +0 -10
  1044. package/src/lib/components/data-view/elder-data-view-interaction-mode.ts +0 -26
  1045. package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.html +0 -158
  1046. package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.ts +0 -359
  1047. package/src/lib/components/data-view/grid/elder-grid.module.ts +0 -54
  1048. package/src/lib/components/data-view/public_api.ts +0 -5
  1049. package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.css +0 -0
  1050. package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.html +0 -3
  1051. package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.ts +0 -22
  1052. package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.ts +0 -50
  1053. package/src/lib/components/data-view/table/activation/elder-item-activator.ts +0 -6
  1054. package/src/lib/components/data-view/table/activation/elder-table-activation-options.ts +0 -19
  1055. package/src/lib/components/data-view/table/activation/elder-table-activation.directive.ts +0 -308
  1056. package/src/lib/components/data-view/table/elder-number-cell.directive.ts +0 -26
  1057. package/src/lib/components/data-view/table/elder-paginator-intl.ts +0 -92
  1058. package/src/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.ts +0 -14
  1059. package/src/lib/components/data-view/table/elder-table/elder-table.component.html +0 -99
  1060. package/src/lib/components/data-view/table/elder-table/elder-table.component.ts +0 -388
  1061. package/src/lib/components/data-view/table/elder-table-column.directive.ts +0 -29
  1062. package/src/lib/components/data-view/table/elder-table-extension.directive.ts +0 -107
  1063. package/src/lib/components/data-view/table/elder-table-root.directive.ts +0 -24
  1064. package/src/lib/components/data-view/table/elder-table-row.directive.ts +0 -154
  1065. package/src/lib/components/data-view/table/elder-table-sort.directive.ts +0 -16
  1066. package/src/lib/components/data-view/table/elder-table.module.ts +0 -94
  1067. package/src/lib/components/data-view/table/model/elder-column-layout.ts +0 -164
  1068. package/src/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.ts +0 -115
  1069. package/src/lib/components/data-view/table/model/elder-table-model-provider.ts +0 -49
  1070. package/src/lib/components/data-view/table/model/elder-table-model-query-group.ts +0 -153
  1071. package/src/lib/components/data-view/table/model/elder-table-model.ts +0 -221
  1072. package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.html +0 -34
  1073. package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.ts +0 -34
  1074. package/src/lib/components/dialogs/elder-dialog-config.ts +0 -21
  1075. package/src/lib/components/dialogs/elder-dialog.module.ts +0 -66
  1076. package/src/lib/components/dialogs/elder-dialog.service.ts +0 -204
  1077. package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.html +0 -36
  1078. package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.ts +0 -44
  1079. package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.html +0 -27
  1080. package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.ts +0 -55
  1081. package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.ts +0 -54
  1082. package/src/lib/components/errors/elder-error.module.ts +0 -28
  1083. package/src/lib/components/errors/error-util.ts +0 -107
  1084. package/src/lib/components/errors/exception-detail/elder-exception-detail.component.html +0 -33
  1085. package/src/lib/components/errors/exception-detail/elder-exception-detail.component.ts +0 -77
  1086. package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.html +0 -14
  1087. package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.ts +0 -57
  1088. package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.module.ts +0 -23
  1089. package/src/lib/components/files/blob-url.ts +0 -13
  1090. package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.html +0 -62
  1091. package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.ts +0 -304
  1092. package/src/lib/components/files/elder-file-drop-zone.directive.ts +0 -116
  1093. package/src/lib/components/files/elder-file-select.directive.ts +0 -184
  1094. package/src/lib/components/files/elder-file.module.ts +0 -49
  1095. package/src/lib/components/files/file-select/file-select.component.html +0 -9
  1096. package/src/lib/components/files/file-select/file-select.component.ts +0 -61
  1097. package/src/lib/components/files/file-upload/file-upload.component.html +0 -36
  1098. package/src/lib/components/files/file-upload/file-upload.component.ts +0 -81
  1099. package/src/lib/components/forms/clipboard/elder-clipboard.service.ts +0 -57
  1100. package/src/lib/components/forms/directives/base/elder-class-hostbinding-base.ts +0 -55
  1101. package/src/lib/components/forms/directives/elder-clipboard-put.directive.ts +0 -44
  1102. package/src/lib/components/forms/directives/elder-delayed-focus.directive.ts +0 -44
  1103. package/src/lib/components/forms/directives/elder-form-field-dense.directive.ts +0 -31
  1104. package/src/lib/components/forms/directives/elder-form-field-label.directive.ts +0 -92
  1105. package/src/lib/components/forms/directives/elder-form-field-no-hint.directive.ts +0 -28
  1106. package/src/lib/components/forms/directives/elder-form-field-no-spinner.directive.ts +0 -32
  1107. package/src/lib/components/forms/directives/elder-forms-directives.module.ts +0 -115
  1108. package/src/lib/components/forms/directives/elder-input-pattern.directive.ts +0 -76
  1109. package/src/lib/components/forms/directives/elder-key-event.directive.ts +0 -126
  1110. package/src/lib/components/forms/directives/elder-max.directive.ts +0 -38
  1111. package/src/lib/components/forms/directives/elder-min.directive.ts +0 -38
  1112. package/src/lib/components/forms/directives/elder-next-focusable.directive.ts +0 -101
  1113. package/src/lib/components/forms/directives/elder-plug-parent-form.directive.ts +0 -28
  1114. package/src/lib/components/forms/directives/elder-stop-event-propagation.directive.ts +0 -22
  1115. package/src/lib/components/forms/directives/elder-tab-focus-trap.directive.ts +0 -188
  1116. package/src/lib/components/forms/directives/elder-touched.directive.ts +0 -25
  1117. package/src/lib/components/forms/directives/elder-triple-state-checkbox.directive.ts +0 -132
  1118. package/src/lib/components/forms/directives/validation/elder-multiple-of.validator.ts +0 -59
  1119. package/src/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.ts +0 -80
  1120. package/src/lib/components/forms/elder-forms.module.ts +0 -17
  1121. package/src/lib/components/forms/public_api.ts +0 -3
  1122. package/src/lib/components/forms/search/elder-search-context.directive.ts +0 -181
  1123. package/src/lib/components/forms/search/elder-search-input.directive.ts +0 -244
  1124. package/src/lib/components/forms/search/elder-search.module.ts +0 -48
  1125. package/src/lib/components/forms/search/model/search-input-state.ts +0 -95
  1126. package/src/lib/components/forms/search/model/search-input.ts +0 -30
  1127. package/src/lib/components/forms/search/model/simple-search-input.ts +0 -69
  1128. package/src/lib/components/forms/search/search-box/elder-search-box.component.html +0 -66
  1129. package/src/lib/components/forms/search/search-box/elder-search-box.component.ts +0 -149
  1130. package/src/lib/components/forms/search/search-box/elder-search-panel.component.ts +0 -10
  1131. package/src/lib/components/global-search/elder-global-search.component.html +0 -51
  1132. package/src/lib/components/global-search/elder-global-search.component.ts +0 -158
  1133. package/src/lib/components/global-search/elder-global-search.module.ts +0 -27
  1134. package/src/lib/components/global-search/elder-global-search.service.ts +0 -118
  1135. package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.html +0 -19
  1136. package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.ts +0 -102
  1137. package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.module.ts +0 -20
  1138. package/src/lib/components/graph/elder-progress-bar/sub-bar.ts +0 -6
  1139. package/src/lib/components/headers/elder-header/elder-header.component.css +0 -0
  1140. package/src/lib/components/headers/elder-header/elder-header.component.html +0 -4
  1141. package/src/lib/components/headers/elder-header/elder-header.component.ts +0 -38
  1142. package/src/lib/components/headers/elder-header.module.ts +0 -28
  1143. package/src/lib/components/http-support/elder-http-client.service.ts +0 -82
  1144. package/src/lib/components/http-support/public_api.ts +0 -3
  1145. package/src/lib/components/i18n/entities/elder-i18n-entities.module.ts +0 -74
  1146. package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.html +0 -40
  1147. package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.ts +0 -176
  1148. package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.html +0 -36
  1149. package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.ts +0 -33
  1150. package/src/lib/components/i18n/entities/elder-localized-input-dialog.service.ts +0 -35
  1151. package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.html +0 -56
  1152. package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.ts +0 -200
  1153. package/src/lib/components/i18n/entities/elder-localized-text-column.directive.ts +0 -34
  1154. package/src/lib/components/i18n/entities/elder-localized-texts.directive.ts +0 -62
  1155. package/src/lib/components/i18n/entities/picker/i18n-pick-async.pipe.ts +0 -49
  1156. package/src/lib/components/i18n/entities/picker/i18n-pick.pipe.ts +0 -36
  1157. package/src/lib/components/i18n/entities/picker/localisation-picker.service.ts +0 -104
  1158. package/src/lib/components/i18n/language/elder-language-config.ts +0 -18
  1159. package/src/lib/components/i18n/language/elder-language-interceptor.ts +0 -94
  1160. package/src/lib/components/i18n/language/elder-language.module.ts +0 -57
  1161. package/src/lib/components/i18n/language/elder-language.service.ts +0 -139
  1162. package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.html +0 -24
  1163. package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.ts +0 -71
  1164. package/src/lib/components/i18n/locales/elder-locales-de-ch.module.ts +0 -46
  1165. package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.html +0 -6
  1166. package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.ts +0 -173
  1167. package/src/lib/components/iframes/data-view/data-view-iframe-adapter.directive.ts +0 -150
  1168. package/src/lib/components/iframes/elder-iframe.module.ts +0 -61
  1169. package/src/lib/components/iframes/iframe-close.directive.ts +0 -49
  1170. package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.html +0 -9
  1171. package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.ts +0 -63
  1172. package/src/lib/components/iframes/iframe-host/iframe-host.component.html +0 -41
  1173. package/src/lib/components/iframes/iframe-host/iframe-host.component.ts +0 -172
  1174. package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.html +0 -8
  1175. package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.ts +0 -102
  1176. package/src/lib/components/iframes/iframe.service.ts +0 -59
  1177. package/src/lib/components/iframes/typed-event-message.ts +0 -66
  1178. package/src/lib/components/infinitescroll/elder-infinite-autocomplete.directive.ts +0 -79
  1179. package/src/lib/components/infinitescroll/elder-infinite-scroll.directive.ts +0 -187
  1180. package/src/lib/components/infinitescroll/elder-infinite-scroll.module.ts +0 -32
  1181. package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.ts +0 -11
  1182. package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.html +0 -66
  1183. package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.ts +0 -233
  1184. package/src/lib/components/input/autocomplete/elder-autocomplete-many.directive.ts +0 -244
  1185. package/src/lib/components/input/autocomplete/elder-autocomplete.directive.ts +0 -145
  1186. package/src/lib/components/input/autocomplete/elder-autocomplete.module.ts +0 -39
  1187. package/src/lib/components/input/autocomplete/many/word-position-finder.spec.ts +0 -74
  1188. package/src/lib/components/input/autocomplete/many/word-position-finder.ts +0 -76
  1189. package/src/lib/components/input/public_api.ts +0 -3
  1190. package/src/lib/components/labels/elder-labels.module.ts +0 -22
  1191. package/src/lib/components/labels/labels-input/labels-input.component.html +0 -44
  1192. package/src/lib/components/labels/labels-input/labels-input.component.ts +0 -255
  1193. package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.html +0 -64
  1194. package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.ts +0 -293
  1195. package/src/lib/components/measures/directives/elder-unit-select.directive.ts +0 -70
  1196. package/src/lib/components/measures/elder-measures.module.ts +0 -76
  1197. package/src/lib/components/measures/elder-quantity-transform.pipe.ts +0 -46
  1198. package/src/lib/components/measures/elder-quantity.pipe.ts +0 -102
  1199. package/src/lib/components/measures/elder-unit.service.ts +0 -135
  1200. package/src/lib/components/measures/model/dimensions.ts +0 -40
  1201. package/src/lib/components/measures/model/quantity.ts +0 -19
  1202. package/src/lib/components/measures/model/unit-dimension.ts +0 -16
  1203. package/src/lib/components/measures/model/unit-registry.ts +0 -110
  1204. package/src/lib/components/measures/model/unit.ts +0 -192
  1205. package/src/lib/components/measures/public_api.ts +0 -9
  1206. package/src/lib/components/measures/quantity-input/elder-quantity-input.component.html +0 -63
  1207. package/src/lib/components/measures/quantity-input/elder-quantity-input.component.ts +0 -221
  1208. package/src/lib/components/measures/util/elder-quantity.service.ts +0 -313
  1209. package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.html +0 -82
  1210. package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.ts +0 -221
  1211. package/src/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.ts +0 -37
  1212. package/src/lib/components/navigation/bread-crumbs/path/path.ts +0 -49
  1213. package/src/lib/components/navigation/nav/elder-nav.module.ts +0 -35
  1214. package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.html +0 -30
  1215. package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.ts +0 -94
  1216. package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.html +0 -86
  1217. package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.ts +0 -78
  1218. package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.html +0 -5
  1219. package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.ts +0 -11
  1220. package/src/lib/components/navigation/toolbar/elder-toolbar-column.directive.ts +0 -53
  1221. package/src/lib/components/navigation/toolbar/elder-toolbar.module.ts +0 -51
  1222. package/src/lib/components/navigation/toolbar/elder-toolbar.service.ts +0 -77
  1223. package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.html +0 -47
  1224. package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.ts +0 -78
  1225. package/src/lib/components/navigation/toolbar/toolbar-column-position.ts +0 -20
  1226. package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.html +0 -1
  1227. package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.ts +0 -54
  1228. package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.ts +0 -107
  1229. package/src/lib/components/overlays/elder-overlay-origin.directive.ts +0 -45
  1230. package/src/lib/components/overlays/elder-overlay-trigger.directive.ts +0 -71
  1231. package/src/lib/components/overlays/elder-overlay.component.ts +0 -262
  1232. package/src/lib/components/overlays/elder-overlay.module.ts +0 -29
  1233. package/src/lib/components/panels/card-panel/elder-card-panel.component.html +0 -4
  1234. package/src/lib/components/panels/card-panel/elder-card-panel.component.ts +0 -11
  1235. package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.html +0 -4
  1236. package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.ts +0 -11
  1237. package/src/lib/components/panels/elder-panel.module.ts +0 -28
  1238. package/src/lib/components/panels/flat/elder-panel.component.html +0 -2
  1239. package/src/lib/components/panels/flat/elder-panel.component.ts +0 -30
  1240. package/src/lib/components/select/auto/elder-auto-select-first.directive.ts +0 -87
  1241. package/src/lib/components/select/auto/elder-select-first-util.ts +0 -98
  1242. package/src/lib/components/select/elder-select-base.ts +0 -355
  1243. package/src/lib/components/select/elder-select-chip.directive.ts +0 -32
  1244. package/src/lib/components/select/elder-select-on-tab.directive.ts +0 -150
  1245. package/src/lib/components/select/elder-select-value.directive.ts +0 -9
  1246. package/src/lib/components/select/elder-select.module.ts +0 -93
  1247. package/src/lib/components/select/multi/elder-multi-select-base.ts +0 -451
  1248. package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.html +0 -89
  1249. package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.ts +0 -316
  1250. package/src/lib/components/select/multi/elder-multi-select-form-field.ts +0 -80
  1251. package/src/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.ts +0 -102
  1252. package/src/lib/components/select/popup/selection-model-popup.directive.ts +0 -145
  1253. package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.html +0 -18
  1254. package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.ts +0 -56
  1255. package/src/lib/components/select/public_api.ts +0 -5
  1256. package/src/lib/components/select/single/elder-clear-select.directive.ts +0 -64
  1257. package/src/lib/components/select/single/elder-select/elder-select.component.html +0 -90
  1258. package/src/lib/components/select/single/elder-select/elder-select.component.ts +0 -530
  1259. package/src/lib/components/select/single/elder-select-form-field.ts +0 -57
  1260. package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.html +0 -13
  1261. package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.ts +0 -169
  1262. package/src/lib/components/select-chip-list/elder-chip-list-select.module.ts +0 -30
  1263. package/src/lib/components/select-list/elder-select-list.module.ts +0 -26
  1264. package/src/lib/components/select-list/select-list/elder-select-list.component.html +0 -5
  1265. package/src/lib/components/select-list/select-list/elder-select-list.component.ts +0 -91
  1266. package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.html +0 -29
  1267. package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.ts +0 -135
  1268. package/src/lib/components/shell/drawers/drawer-outlet-binding.ts +0 -73
  1269. package/src/lib/components/shell/drawers/elder-route-outlet-drawer.service.ts +0 -137
  1270. package/src/lib/components/shell/drawers/elder-router-outlet.service.ts +0 -145
  1271. package/src/lib/components/shell/elder-shell-slot.directive.ts +0 -61
  1272. package/src/lib/components/shell/elder-shell.module.ts +0 -68
  1273. package/src/lib/components/shell/elder-shell.service.ts +0 -176
  1274. package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.html +0 -25
  1275. package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.ts +0 -89
  1276. package/src/lib/components/shell/shell/elder-shell.component.html +0 -86
  1277. package/src/lib/components/shell/shell/elder-shell.component.ts +0 -243
  1278. package/src/lib/components/shell/shell-content-slot.ts +0 -8
  1279. package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.html +0 -4
  1280. package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.ts +0 -153
  1281. package/src/lib/components/tabs/elder-tab/elder-tab.directive.ts +0 -31
  1282. package/src/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.ts +0 -320
  1283. package/src/lib/components/tabs/elder-tab.module.ts +0 -24
  1284. package/src/lib/components/theme/elder-theme-applier.directive.ts +0 -73
  1285. package/src/lib/components/theme/elder-theme-preference.service.ts +0 -79
  1286. package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.html +0 -9
  1287. package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.ts +0 -86
  1288. package/src/lib/components/theme/elder-theme.directive.ts +0 -65
  1289. package/src/lib/components/theme/elder-theme.module.ts +0 -52
  1290. package/src/lib/components/theme/elder-theme.service.ts +0 -151
  1291. package/src/lib/components/theme/known-elder-themes.ts +0 -17
  1292. package/src/lib/components/theme/theme-spec.ts +0 -32
  1293. package/src/lib/components/time/date-adapters/custom-date-adapter.ts +0 -34
  1294. package/src/lib/components/time/duration/duration-bucket.ts +0 -143
  1295. package/src/lib/components/time/duration/duration-format.ts +0 -346
  1296. package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.html +0 -51
  1297. package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.ts +0 -132
  1298. package/src/lib/components/time/duration/iso-duration-str.ts +0 -5
  1299. package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.html +0 -29
  1300. package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.ts +0 -120
  1301. package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.html +0 -15
  1302. package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.ts +0 -93
  1303. package/src/lib/components/time/elder-interval-input/elder-interval-input.component.html +0 -92
  1304. package/src/lib/components/time/elder-interval-input/elder-interval-input.component.ts +0 -222
  1305. package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.html +0 -40
  1306. package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.ts +0 -213
  1307. package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.html +0 -18
  1308. package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.ts +0 -98
  1309. package/src/lib/components/time/elder-time.module.ts +0 -89
  1310. package/src/lib/components/time/period/elder-period-input/elder-period-input.component.html +0 -40
  1311. package/src/lib/components/time/period/elder-period-input/elder-period-input.component.ts +0 -148
  1312. package/src/lib/components/time/period/period-bucket.ts +0 -51
  1313. package/src/lib/components/time/period/period-format.ts +0 -127
  1314. package/src/lib/components/time/public_api.ts +0 -8
  1315. package/src/lib/components/toasts/elder-toast.module.ts +0 -21
  1316. package/src/lib/components/toasts/elder-toast.service.ts +0 -244
  1317. package/src/lib/components/toasts/standard-toast/standard-toast.component.html +0 -34
  1318. package/src/lib/components/toasts/standard-toast/standard-toast.component.ts +0 -80
  1319. package/src/lib/components/toasts/toast-type.ts +0 -5
  1320. package/src/lib/components/toasts/toast.ts +0 -12
  1321. package/src/lib/components/url-fragment/elder-url-fragment.module.ts +0 -34
  1322. package/src/lib/components/url-fragment/elder-url-fragment.ts +0 -10
  1323. package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.html +0 -25
  1324. package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.ts +0 -107
  1325. package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.html +0 -1
  1326. package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.ts +0 -81
  1327. package/src/lib/components/viewers/elder-viewers.module.ts +0 -18
  1328. package/src/lib/features/event-source/elder-event-source.service.ts +0 -71
  1329. package/src/lib/features/event-source/public_api.ts +0 -3
  1330. package/src/lib/features/event-source/reactive-event-source.ts +0 -252
  1331. package/src/lib/features/kafent/access-token-provider.ts +0 -21
  1332. package/src/lib/features/kafent/kafent-config.ts +0 -42
  1333. package/src/lib/features/kafent/kafent-event-stream.ts +0 -48
  1334. package/src/lib/features/kafent/kafent-event.service.ts +0 -128
  1335. package/src/lib/features/kafent/kafent-event.ts +0 -14
  1336. package/src/lib/features/kafent/kafent-live-event-request.ts +0 -75
  1337. package/src/lib/features/kafent/kafent.module.ts +0 -61
  1338. package/src/lib/features/kafent/sse/kafent-event-stream-sse.service.ts +0 -167
  1339. package/src/lib/features/kafent/sse/kafent-topic-sse.ts +0 -145
  1340. package/src/lib/features/public_api.ts +0 -4
  1341. package/src/lib/i18n/elder-composite-translation-loader.ts +0 -14
  1342. package/src/lib/i18n/elder-starter-translation-loader.ts +0 -20
  1343. package/src/lib/pipes/bytes.pipe.ts +0 -18
  1344. package/src/lib/pipes/elder-pipes.module.ts +0 -51
  1345. package/src/lib/pipes/elder-repeat.pipe.ts +0 -16
  1346. package/src/lib/pipes/elder-round.pipe.ts +0 -37
  1347. package/src/lib/pipes/elder-safe-url.pipe.ts +0 -12
  1348. package/src/lib/pipes/elder-truncate.pipe.ts +0 -45
  1349. package/src/lib/pipes/iso-duration.pipe.ts +0 -64
  1350. package/src/lib/pipes/iso-interval-parse.pipe.ts +0 -61
  1351. package/src/lib/pipes/iso-interval.pipe.ts +0 -146
  1352. package/src/lib/pipes/public_api.ts +0 -3
  1353. package/src/lib/pipes/time-ago.pipe.ts +0 -88
  1354. package/src/lib/pipes/time-duration.pipe.ts +0 -81
  1355. package/src/lib/pipes/weight.pipe.ts +0 -45
  1356. package/src/public_api.ts +0 -8
  1357. package/src/test.ts +0 -28
  1358. package/tsconfig.lib.json +0 -33
  1359. package/tsconfig.lib.prod.json +0 -10
  1360. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,79 @@
1
+ import { Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
2
+ import { LoggerFactory } from '@elderbyte/ts-logger';
3
+ import { FormFieldBaseComponent } from '../../../common/forms/form-field-base.component';
4
+ import { Instant } from '@js-joda/core';
5
+ import { buildFormIntegrationProviders } from '../../../common/forms/template-composite-control';
6
+ import { ViewProviders } from '../../../common/forms/view-providers';
7
+ import { TimeUtil } from '../../../common/time/time-util';
8
+ import { map } from 'rxjs/operators';
9
+ import { DateUtil } from '../../../common/time/date-util';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/common";
12
+ import * as i2 from "@angular/forms";
13
+ import * as i3 from "@angular/material/form-field";
14
+ import * as i4 from "@angular/material/input";
15
+ import * as i5 from "@ngx-translate/core";
16
+ export class ElderDateTimeInputComponent extends FormFieldBaseComponent {
17
+ /***************************************************************************
18
+ * *
19
+ * Constructor *
20
+ * *
21
+ **************************************************************************/
22
+ constructor() {
23
+ super();
24
+ /***************************************************************************
25
+ * *
26
+ * Fields *
27
+ * *
28
+ **************************************************************************/
29
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
30
+ this.valueDate$ = this.value$.pipe(map(instant => instant ? DateUtil.instantToDate(instant) : null));
31
+ }
32
+ /***************************************************************************
33
+ * *
34
+ * Life Cycle *
35
+ * *
36
+ **************************************************************************/
37
+ ngOnInit() { }
38
+ /***************************************************************************
39
+ * *
40
+ * Properties *
41
+ * *
42
+ **************************************************************************/
43
+ get isoValueChange() {
44
+ return this.valueChange.pipe(map(instant => instant ? instant.toJSON() : null));
45
+ }
46
+ set isoValue(value) {
47
+ this.value = value ? Instant.parse(value) : null;
48
+ }
49
+ /***************************************************************************
50
+ * *
51
+ * Public API *
52
+ * *
53
+ **************************************************************************/
54
+ onDateTimeChanged(eventDate) {
55
+ const newDate = !!eventDate ? new Date(eventDate) : null;
56
+ if (newDate) {
57
+ this.updateValue(TimeUtil.instant(newDate));
58
+ }
59
+ else {
60
+ this.updateValue(null);
61
+ }
62
+ }
63
+ valuesEquals(a, b) {
64
+ return (a && b)
65
+ ? a.equals(b)
66
+ : a === b;
67
+ }
68
+ }
69
+ ElderDateTimeInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDateTimeInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
+ ElderDateTimeInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderDateTimeInputComponent, selector: "elder-date-time-input", inputs: { isoValue: "isoValue" }, outputs: { isoValueChange: "isoValueChange" }, providers: buildFormIntegrationProviders(ElderDateTimeInputComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"elder-flex-control\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <input matInput class=\"flex-grow\"\n [name]=\"name + '-inner'\"\n type=\"datetime-local\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\">\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.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: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { 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: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDateTimeInputComponent, decorators: [{
72
+ type: Component,
73
+ args: [{ selector: 'elder-date-time-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderDateTimeInputComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field class=\"elder-flex-control\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <input matInput class=\"flex-grow\"\n [name]=\"name + '-inner'\"\n type=\"datetime-local\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\">\n</mat-form-field>\n" }]
74
+ }], ctorParameters: function () { return []; }, propDecorators: { isoValueChange: [{
75
+ type: Output
76
+ }], isoValue: [{
77
+ type: Input
78
+ }] } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdkYsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRXhELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7QUFVeEQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHNCQUErQjtJQVk5RTs7OztnRkFJNEU7SUFFNUU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQWpCVjs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVl2RSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNoQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUNqRSxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUUxQjs7OztnRkFJNEU7SUFFNUUsSUFDVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FDbEQsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUNXLFFBQVEsQ0FBQyxLQUFvQjtRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ25ELENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsaUJBQWlCLENBQUMsU0FBaUI7UUFDeEMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN6RCxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxXQUFXLENBQ2QsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FDMUIsQ0FBQztTQUNIO2FBQU07WUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVTLFlBQVksQ0FBQyxDQUFVLEVBQUUsQ0FBVTtRQUMzQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNiLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNiLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2QsQ0FBQzs7eUhBeEVVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLGlJQUgzQiw2QkFBNkIsQ0FBQywyQkFBMkIsQ0FBQyxpRENoQnZFLDRsQkFlQSwwcURERWlCLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzRGQUUxQywyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0UsdUJBQXVCLG1CQUdoQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLDZCQUE2Qiw2QkFBNkIsaUJBQ3RELENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzBFQTBDMUMsY0FBYztzQkFEeEIsTUFBTTtnQkFRSSxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0Zvcm1GaWVsZEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9mb3JtLWZpZWxkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7SW5zdGFudH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5pbXBvcnQge2J1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdGVtcGxhdGUtY29tcG9zaXRlLWNvbnRyb2wnO1xuaW1wb3J0IHtWaWV3UHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdmlldy1wcm92aWRlcnMnO1xuaW1wb3J0IHtUaW1lVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEYXRlVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvZGF0ZS11dGlsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZGF0ZS10aW1lLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtdGltZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWRhdGUtdGltZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVycyhFbGRlckRhdGVUaW1lSW5wdXRDb21wb25lbnQpLFxuICB2aWV3UHJvdmlkZXJzOiBbVmlld1Byb3ZpZGVycy5QYXJlbnRDb250cm9sQ29udGFpbmVyXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckRhdGVUaW1lSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRCYXNlQ29tcG9uZW50PEluc3RhbnQ+IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlRGF0ZSQ6IE9ic2VydmFibGU8RGF0ZT47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnZhbHVlRGF0ZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGluc3RhbnQgPT4gaW5zdGFudCA/IERhdGVVdGlsLmluc3RhbnRUb0RhdGUoaW5zdGFudCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGlzb1ZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAoaW5zdGFudCA9PiBpbnN0YW50ID8gaW5zdGFudC50b0pTT04oKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBJbnN0YW50LnBhcnNlKHZhbHVlKSA6IG51bGw7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25EYXRlVGltZUNoYW5nZWQoZXZlbnREYXRlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdEYXRlID0gISFldmVudERhdGUgPyBuZXcgRGF0ZShldmVudERhdGUpIDogbnVsbDtcbiAgICBpZiAobmV3RGF0ZSkge1xuICAgICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgICAgVGltZVV0aWwuaW5zdGFudChuZXdEYXRlKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IEluc3RhbnQsIGI6IEluc3RhbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKGEgJiYgYilcbiAgICAgID8gYS5lcXVhbHMoYilcbiAgICAgIDogYSA9PT0gYjtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZWxkZXItZmxleC1jb250cm9sXCJcbiAgICAgICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuPlxuICA8bWF0LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57e2xhYmVsIHwgdHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwiZmxleC1ncm93XCJcbiAgICAgICAgIFtuYW1lXT1cIm5hbWUgKyAnLWlubmVyJ1wiXG4gICAgICAgICB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIlxuICAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlRGF0ZSQgfCBhc3luYyB8IGRhdGU6J3l5eXktTU0tZGRUSEg6bW0nXCJcbiAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uRGF0ZVRpbWVDaGFuZ2VkKCRldmVudClcIj5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -0,0 +1,126 @@
1
+ import { Component, ChangeDetectionStrategy, Output, Input } from '@angular/core';
2
+ import { LoggerFactory } from '@elderbyte/ts-logger';
3
+ import { FormFieldBaseComponent } from '../../../common/forms/form-field-base.component';
4
+ import { buildFormIntegrationProviders } from '../../../common/forms/template-composite-control';
5
+ import { ViewProviders } from '../../../common/forms/view-providers';
6
+ import { Interval } from '../../../common/time/interval';
7
+ import { map } from 'rxjs/operators';
8
+ import { LocalDate, LocalTime, ZoneId } from '@js-joda/core';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/common";
11
+ import * as i2 from "../elder-date-time-input/elder-date-time-input.component";
12
+ import * as i3 from "../elder-local-time-input/elder-local-time-input.component";
13
+ import * as i4 from "../elder-local-date-input/elder-local-date-input.component";
14
+ import * as i5 from "@ngx-translate/core";
15
+ export class ElderIntervalInputComponent extends FormFieldBaseComponent {
16
+ /***************************************************************************
17
+ * *
18
+ * Constructor *
19
+ * *
20
+ **************************************************************************/
21
+ constructor() {
22
+ super();
23
+ /***************************************************************************
24
+ * *
25
+ * Fields *
26
+ * *
27
+ **************************************************************************/
28
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
29
+ this.mode = 'date-time-range';
30
+ this.zone = ZoneId.systemDefault();
31
+ this.endTime$ = this.value$.pipe(map(interval => interval?.end ? LocalTime.from(interval.end.atZone(this.zone)) : null));
32
+ this.startDate$ = this.value$.pipe(map(interval => interval?.start ? LocalDate.from(interval.start.atZone(this.zone)) : null));
33
+ this.endDate$ = this.value$.pipe(map(interval => interval?.end ? LocalDate.from(interval.end.atZone(this.zone)) : null));
34
+ }
35
+ /***************************************************************************
36
+ * *
37
+ * Life Cycle *
38
+ * *
39
+ **************************************************************************/
40
+ ngOnInit() {
41
+ }
42
+ /***************************************************************************
43
+ * *
44
+ * Properties *
45
+ * *
46
+ **************************************************************************/
47
+ get isoValueChange() {
48
+ return this.valueChange.pipe(map(interval => interval ? interval.toInstantString() : null));
49
+ }
50
+ set isoValue(value) {
51
+ this.value = value ? Interval.parse(value) : null;
52
+ }
53
+ /***************************************************************************
54
+ * *
55
+ * Public API *
56
+ * *
57
+ **************************************************************************/
58
+ onDayTimeStartChanged(start) {
59
+ this.updateValue(Interval.of(start, this.instantAtEndOfDay(start)));
60
+ }
61
+ onDayTimeEndTimeChanged(endTime) {
62
+ const start = this.value.start;
63
+ const end = this.instantWithTime(start, endTime);
64
+ this.updateValue(Interval.of(start, !end.isAfter(start) ? this.instantAtEndOfDay(start) : end));
65
+ }
66
+ onStartChanged(start) {
67
+ this.updateValue(Interval.of(start, this.value.end));
68
+ }
69
+ onEndChanged(end) {
70
+ this.updateValue(Interval.of(this.value.start, end));
71
+ }
72
+ onStartDateChanged(date) {
73
+ this.updateValue(Interval.of(this.instantAtDate(this.value?.start ?? this.instantAtStartOfDayNow(), date), this.value?.end));
74
+ }
75
+ onEndDateChanged(date) {
76
+ this.updateValue(Interval.of(this.value?.start, this.instantAtDate(this.value?.end ?? this.instantAtStartOfDayNow(), date)));
77
+ }
78
+ onSingleDayDateChanged(date) {
79
+ this.updateValue(Interval.ofDay(date, this.zone));
80
+ }
81
+ /***************************************************************************
82
+ * *
83
+ * Private methods *
84
+ * *
85
+ **************************************************************************/
86
+ instantAtStartOfDayNow() {
87
+ return LocalDate.now().atStartOfDay().atZone(this.zone).toInstant();
88
+ }
89
+ instantAtEndOfDay(instant) {
90
+ return LocalDate.ofInstant(instant).atStartOfDay().plusDays(1).atZone(this.zone).toInstant();
91
+ }
92
+ instantAtDate(instant, date) {
93
+ return instant.atZone(this.zone)
94
+ .withYear(date.year())
95
+ .withMonth(date.monthValue())
96
+ .withDayOfMonth(date.dayOfMonth())
97
+ .toInstant();
98
+ }
99
+ valuesEquals(a, b) {
100
+ return (a && b)
101
+ ? a.equals(b)
102
+ : a === b;
103
+ }
104
+ instantWithTime(instant, time) {
105
+ return instant
106
+ .atZone(this.zone)
107
+ .withHour(time.hour())
108
+ .withMinute(time.minute())
109
+ .toInstant();
110
+ }
111
+ }
112
+ ElderIntervalInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderIntervalInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
+ ElderIntervalInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderIntervalInputComponent, selector: "elder-interval-input", inputs: { mode: "mode", zone: "zone", isoValue: "isoValue" }, outputs: { isoValueChange: "isoValueChange" }, providers: buildFormIntegrationProviders(ElderIntervalInputComponent), usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row gap-sm\">\n <elder-date-time-input\n [name]=\"name + '-dt-start'\"\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <elder-date-time-input\n [name]=\"name + '-dt-end'\"\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-sm\">\n <elder-date-time-input\n [name]=\"name + '-day-start'\"\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <elder-local-time-input\n [name]=\"name + '-day-end'\"\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-sm\">\n <elder-local-date-input\n [name]=\"name + '-date-start'\"\n [value]=\"startDate$ | async\"\n (valueUpdated)=\"onStartDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-local-date-input>\n\n <elder-local-date-input\n [name]=\"name + '-date-end'\"\n [value]=\"endDate$ | async\"\n (valueUpdated)=\"onEndDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-date-input>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row gap-sm\">\n <elder-local-date-input\n [name]=\"name\"\n [value]=\"startDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.ElderDateTimeInputComponent, selector: "elder-date-time-input", inputs: ["isoValue"], outputs: ["isoValueChange"] }, { kind: "component", type: i3.ElderLocalTimeInputComponent, selector: "elder-local-time-input", inputs: ["isoValue"], outputs: ["isoValueChange"] }, { kind: "component", type: i4.ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "datePickerEnabled", "datePickerTouchUi", "allowNull", "isoValue", "dateValue", "isoDateValue"], outputs: ["blur", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderIntervalInputComponent, decorators: [{
115
+ type: Component,
116
+ args: [{ selector: 'elder-interval-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderIntervalInputComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row gap-sm\">\n <elder-date-time-input\n [name]=\"name + '-dt-start'\"\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <elder-date-time-input\n [name]=\"name + '-dt-end'\"\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-sm\">\n <elder-date-time-input\n [name]=\"name + '-day-start'\"\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <elder-local-time-input\n [name]=\"name + '-day-end'\"\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-sm\">\n <elder-local-date-input\n [name]=\"name + '-date-start'\"\n [value]=\"startDate$ | async\"\n (valueUpdated)=\"onStartDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-local-date-input>\n\n <elder-local-date-input\n [name]=\"name + '-date-end'\"\n [value]=\"endDate$ | async\"\n (valueUpdated)=\"onEndDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-date-input>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row gap-sm\">\n <elder-local-date-input\n [name]=\"name\"\n [value]=\"startDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n" }]
117
+ }], ctorParameters: function () { return []; }, propDecorators: { mode: [{
118
+ type: Input
119
+ }], zone: [{
120
+ type: Input
121
+ }], isoValueChange: [{
122
+ type: Output
123
+ }], isoValue: [{
124
+ type: Input
125
+ }] } });
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaW50ZXJ2YWwtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2VsZGVyLWludGVydmFsLWlucHV0L2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1pbnRlcnZhbC1pbnB1dC9lbGRlci1pbnRlcnZhbC1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFVLHVCQUF1QixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBVSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQXNDcEUsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHNCQUFnQztJQXFCL0U7Ozs7Z0ZBSTRFO0lBRTVFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUExQlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENB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LElBQUk7c0JBRFYsS0FBSztnQkE2Q0ssY0FBYztzQkFEeEIsTUFBTTtnQkFRSSxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE91dHB1dCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0Zvcm1GaWVsZEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9mb3JtLWZpZWxkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7YnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCc7XG5pbXBvcnQge1ZpZXdQcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy92aWV3LXByb3ZpZGVycyc7XG5pbXBvcnQge0ludGVydmFsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdGltZS9pbnRlcnZhbCc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5zdGFudCwgTG9jYWxEYXRlLCBMb2NhbFRpbWUsIFpvbmVJZH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5cbmV4cG9ydCB0eXBlIEludGVydmFsSW5wdXRNb2RlID1cblxuICAvKipcbiAgICogU3VwcG9ydHMgdGhlIHNlbGVjdGlvbiBvZiBhIHNpbmdsZSAoZnVsbCkgZGF5OlxuICAgKiAxMi4xMi4yMDIwXG4gICAqL1xuICAnc2luZ2xlLWRheScgfFxuXG4gIC8qKlxuICAgKiBTdXBwb3J0cyBhIHRpbWUgaW50ZXJ2YWwgaW4gYSBkYXk6XG4gICAqIDEyLjEyLjIwMjAgMTM6MDAgLSAxODowMFxuICAgKi9cbiAgJ2RheS10aW1lLXJhbmdlJyB8XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRzIGEgZGF0ZSBpbnRlcnZhbCB3aXRob3V0IHRpbWVcbiAgICogMTIuMTIuMjAyMCAtIDIyLjA2LjIwMjFcbiAgICovXG4gICdkYXRlLXJhbmdlJyB8XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRzIGEgZGF0ZS10aW1lIHRvIGRhdGUtdGltZSBpbnRlcnZhbFxuICAgKiAxMi4xMi4yMDIwIDg6MDAgLSAyMi4wNi4yMDIxIDE3OjAwXG4gICAqIFRoaXMgaXMgdGhlIGRlZmF1bHQgYXMgaXQgc3VwcG9ydHMgdGhlIG1vc3QgZGV0YWlsZWQgaW5wdXQuXG4gICAqL1xuICAnZGF0ZS10aW1lLXJhbmdlJ1xuICA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWludGVydmFsLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItaW50ZXJ2YWwtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJJbnRlcnZhbElucHV0Q29tcG9uZW50KSxcbiAgdmlld1Byb3ZpZGVyczogW1ZpZXdQcm92aWRlcnMuUGFyZW50Q29udHJvbENvbnRhaW5lcl1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJJbnRlcnZhbElucHV0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQmFzZUNvbXBvbmVudDxJbnRlcnZhbD4gaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbW9kZTogSW50ZXJ2YWxJbnB1dE1vZGUgPSAnZGF0ZS10aW1lLXJhbmdlJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgem9uZSA9IFpvbmVJZC5zeXN0ZW1EZWZhdWx0KCk7XG4gIFxuICBwdWJsaWMgcmVhZG9ubHkgZW5kVGltZSQ6IE9ic2VydmFibGU8TG9jYWxUaW1lPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RhcnREYXRlJDogT2JzZXJ2YWJsZTxMb2NhbERhdGU+O1xuICBwdWJsaWMgcmVhZG9ubHkgZW5kRGF0ZSQ6IE9ic2VydmFibGU8TG9jYWxEYXRlPjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZW5kVGltZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsPy5lbmQgPyBMb2NhbFRpbWUuZnJvbShpbnRlcnZhbC5lbmQuYXRab25lKHRoaXMuem9uZSkpIDogbnVsbClcbiAgICApO1xuXG4gICAgdGhpcy5zdGFydERhdGUkID0gdGhpcy52YWx1ZSQucGlwZShcbiAgICAgIG1hcChpbnRlcnZhbCA9PiBpbnRlcnZhbD8uc3RhcnQgPyBMb2NhbERhdGUuZnJvbShpbnRlcnZhbC5zdGFydC5hdFpvbmUodGhpcy56b25lKSkgOiBudWxsKVxuICAgICk7XG5cbiAgICB0aGlzLmVuZERhdGUkID0gdGhpcy52YWx1ZSQucGlwZShcbiAgICAgIG1hcChpbnRlcnZhbCA9PiBpbnRlcnZhbD8uZW5kID8gTG9jYWxEYXRlLmZyb20oaW50ZXJ2YWwuZW5kLmF0Wm9uZSh0aGlzLnpvbmUpKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGlzb1ZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAoaW50ZXJ2YWwgPT4gaW50ZXJ2YWwgPyBpbnRlcnZhbC50b0luc3RhbnRTdHJpbmcoKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBJbnRlcnZhbC5wYXJzZSh2YWx1ZSkgOiBudWxsO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uRGF5VGltZVN0YXJ0Q2hhbmdlZChzdGFydDogSW5zdGFudCkge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgc3RhcnQsXG4gICAgICAgIHRoaXMuaW5zdGFudEF0RW5kT2ZEYXkoc3RhcnQpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkRheVRpbWVFbmRUaW1lQ2hhbmdlZChlbmRUaW1lOiBMb2NhbFRpbWUpOiB2b2lkIHtcbiAgICBjb25zdCBzdGFydCA9IHRoaXMudmFsdWUuc3RhcnQ7XG4gICAgY29uc3QgZW5kID0gdGhpcy5pbnN0YW50V2l0aFRpbWUoc3RhcnQsIGVuZFRpbWUpO1xuXG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICBzdGFydCxcbiAgICAgICAgIWVuZC5pc0FmdGVyKHN0YXJ0KSA/IHRoaXMuaW5zdGFudEF0RW5kT2ZEYXkoc3RhcnQpIDogZW5kXG4gICAgICApXG4gICAgKTtcblxuICB9XG5cbiAgcHVibGljIG9uU3RhcnRDaGFuZ2VkKHN0YXJ0OiBJbnN0YW50KTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICBzdGFydCxcbiAgICAgICAgdGhpcy52YWx1ZS5lbmRcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uRW5kQ2hhbmdlZChlbmQ6IEluc3RhbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgSW50ZXJ2YWwub2YoXG4gICAgICAgIHRoaXMudmFsdWUuc3RhcnQsXG4gICAgICAgIGVuZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25TdGFydERhdGVDaGFuZ2VkKGRhdGU6IExvY2FsRGF0ZSk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy5pbnN0YW50QXREYXRlKHRoaXMudmFsdWU/LnN0YXJ0ID8/IHRoaXMuaW5zdGFudEF0U3RhcnRPZkRheU5vdygpLCBkYXRlKSxcbiAgICAgICAgdGhpcy52YWx1ZT8uZW5kXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVuZERhdGVDaGFuZ2VkKGRhdGU6IExvY2FsRGF0ZSk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy52YWx1ZT8uc3RhcnQsXG4gICAgICAgIHRoaXMuaW5zdGFudEF0RGF0ZSh0aGlzLnZhbHVlPy5lbmQgPz8gdGhpcy5pbnN0YW50QXRTdGFydE9mRGF5Tm93KCksIGRhdGUpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNpbmdsZURheURhdGVDaGFuZ2VkKGRhdGU6IExvY2FsRGF0ZSk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZkRheShkYXRlLCB0aGlzLnpvbmUpXG4gICAgKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaW5zdGFudEF0U3RhcnRPZkRheU5vdygpOiBJbnN0YW50IHtcbiAgICByZXR1cm4gTG9jYWxEYXRlLm5vdygpLmF0U3RhcnRPZkRheSgpLmF0Wm9uZSh0aGlzLnpvbmUpLnRvSW5zdGFudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YW50QXRFbmRPZkRheShpbnN0YW50OiBJbnN0YW50KTogSW5zdGFudCB7XG4gICAgcmV0dXJuIExvY2FsRGF0ZS5vZkluc3RhbnQoaW5zdGFudCkuYXRTdGFydE9mRGF5KCkucGx1c0RheXMoMSkuYXRab25lKHRoaXMuem9uZSkudG9JbnN0YW50KCk7XG4gIH1cblxuICBwcml2YXRlIGluc3RhbnRBdERhdGUoaW5zdGFudDogSW5zdGFudCwgZGF0ZTogTG9jYWxEYXRlKTogSW5zdGFudCB7XG4gICAgcmV0dXJuIGluc3RhbnQuYXRab25lKHRoaXMuem9uZSlcbiAgICAgIC53aXRoWWVhcihkYXRlLnllYXIoKSlcbiAgICAgIC53aXRoTW9udGgoZGF0ZS5tb250aFZhbHVlKCkpXG4gICAgICAud2l0aERheU9mTW9udGgoZGF0ZS5kYXlPZk1vbnRoKCkpXG4gICAgICAudG9JbnN0YW50KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IEludGVydmFsLCBiOiBJbnRlcnZhbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoYSAmJiBiKVxuICAgICAgPyBhLmVxdWFscyhiKVxuICAgICAgOiBhID09PSBiO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YW50V2l0aFRpbWUoaW5zdGFudDogSW5zdGFudCwgdGltZTogTG9jYWxUaW1lKTogSW5zdGFudCB7XG4gICAgcmV0dXJuIGluc3RhbnRcbiAgICAgIC5hdFpvbmUodGhpcy56b25lKVxuICAgICAgLndpdGhIb3VyKHRpbWUuaG91cigpKVxuICAgICAgLndpdGhNaW51dGUodGltZS5taW51dGUoKSlcbiAgICAgIC50b0luc3RhbnQoKTtcbiAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJtb2RlXCI+XG5cbiAgPCEtLSBEQVRFX1RJTUVfUkFOR0UgLS0+XG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidkYXRlLXRpbWUtcmFuZ2UnXCJcbiAgICAgICBjbGFzcz1cImxheW91dC1yb3cgZ2FwLXNtXCI+XG4gICAgPGVsZGVyLWRhdGUtdGltZS1pbnB1dFxuICAgICAgW25hbWVdPVwibmFtZSArICctZHQtc3RhcnQnXCJcbiAgICAgIFt2YWx1ZV09XCIodmFsdWUkIHwgYXN5bmMpPy5zdGFydFwiXG4gICAgICAodmFsdWVVcGRhdGVkKT1cIm9uU3RhcnRDaGFuZ2VkKCRldmVudClcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIihwbGFjZWhvbGRlciB8fCAnJykgKyAnICcgKyAoJ2ludGVydmFsLmZyb20nIHwgdHJhbnNsYXRlKVwiXG4gICAgPjwvZWxkZXItZGF0ZS10aW1lLWlucHV0PlxuXG4gICAgPGVsZGVyLWRhdGUtdGltZS1pbnB1dFxuICAgICAgW25hbWVdPVwibmFtZSArICctZHQtZW5kJ1wiXG4gICAgICBbdmFsdWVdPVwiKHZhbHVlJCB8IGFzeW5jKT8uZW5kXCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25FbmRDaGFuZ2VkKCRldmVudClcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIihwbGFjZWhvbGRlciB8fCAnJykgKyAnICcgKyAoJ2ludGVydmFsLnRvJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWRhdGUtdGltZS1pbnB1dD5cbiAgPC9kaXY+XG5cbiAgPCEtLSBEQVlfVElNRV9SQU5HRSAtLT5cbiAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RheS10aW1lLXJhbmdlJ1wiXG4gICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IGdhcC1zbVwiPlxuICAgIDxlbGRlci1kYXRlLXRpbWUtaW5wdXRcbiAgICAgIFtuYW1lXT1cIm5hbWUgKyAnLWRheS1zdGFydCdcIlxuICAgICAgW3ZhbHVlXT1cIih2YWx1ZSQgfCBhc3luYyk/LnN0YXJ0XCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25EYXlUaW1lU3RhcnRDaGFuZ2VkKCRldmVudClcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIihwbGFjZWhvbGRlciB8fCAnJykgKyAnICcgKyAoJ2ludGVydmFsLmZyb20nIHwgdHJhbnNsYXRlKVwiXG4gICAgPjwvZWxkZXItZGF0ZS10aW1lLWlucHV0PlxuXG4gICAgPGVsZGVyLWxvY2FsLXRpbWUtaW5wdXRcbiAgICAgIFtuYW1lXT1cIm5hbWUgKyAnLWRheS1lbmQnXCJcbiAgICAgIFt2YWx1ZV09XCJlbmRUaW1lJCB8IGFzeW5jXCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25EYXlUaW1lRW5kVGltZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiKHBsYWNlaG9sZGVyIHx8ICcnKSArICcgJyArICgnaW50ZXJ2YWwudG8nIHwgdHJhbnNsYXRlKVwiXG4gICAgPjwvZWxkZXItbG9jYWwtdGltZS1pbnB1dD5cbiAgPC9kaXY+XG5cbiAgPCEtLSBEQVRFX1JBTkdFIC0tPlxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZGF0ZS1yYW5nZSdcIlxuICAgICAgIGNsYXNzPVwibGF5b3V0LXJvdyBnYXAtc21cIj5cbiAgICA8ZWxkZXItbG9jYWwtZGF0ZS1pbnB1dFxuICAgICAgW25hbWVdPVwibmFtZSArICctZGF0ZS1zdGFydCdcIlxuICAgICAgW3ZhbHVlXT1cInN0YXJ0RGF0ZSQgfCBhc3luY1wiXG4gICAgICAodmFsdWVVcGRhdGVkKT1cIm9uU3RhcnREYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC5mcm9tJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQ+XG5cbiAgICA8ZWxkZXItbG9jYWwtZGF0ZS1pbnB1dFxuICAgICAgW25hbWVdPVwibmFtZSArICctZGF0ZS1lbmQnXCJcbiAgICAgIFt2YWx1ZV09XCJlbmREYXRlJCB8IGFzeW5jXCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25FbmREYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC50bycgfCB0cmFuc2xhdGUpXCJcbiAgICA+PC9lbGRlci1sb2NhbC1kYXRlLWlucHV0PlxuICA8L2Rpdj5cblxuICA8IS0tIFNJTkdMRV9EQVkgLS0+XG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidzaW5nbGUtZGF5J1wiXG4gICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IGdhcC1zbVwiPlxuICAgIDxlbGRlci1sb2NhbC1kYXRlLWlucHV0XG4gICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgIFt2YWx1ZV09XCJzdGFydERhdGUkIHwgYXN5bmNcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvblNpbmdsZURheURhdGVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIihwbGFjZWhvbGRlciB8fCAnJylcIlxuICAgID48L2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQ+XG4gIDwvZGl2PlxuXG48L25nLWNvbnRhaW5lcj5cblxuXG5cbiJdfQ==
@@ -0,0 +1,189 @@
1
+ import { Component, ChangeDetectionStrategy, Output, Input, ViewChild } from '@angular/core';
2
+ import { FormFieldBaseComponent } from '../../../common/forms/form-field-base.component';
3
+ import { LocalDate, ZoneId } from '@js-joda/core';
4
+ import { LoggerFactory } from '@elderbyte/ts-logger';
5
+ import { buildFormIntegrationProviders } from '../../../common/forms/template-composite-control';
6
+ import { ViewProviders } from '../../../common/forms/view-providers';
7
+ import { combineLatest, of, Subject } from 'rxjs';
8
+ import { catchError, map } from 'rxjs/operators';
9
+ import { MatDatepicker } from '@angular/material/datepicker';
10
+ import { TimeUtil } from '../../../common/time/time-util';
11
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/common";
14
+ import * as i2 from "@angular/forms";
15
+ import * as i3 from "@angular/material/form-field";
16
+ import * as i4 from "@angular/material/input";
17
+ import * as i5 from "@angular/material/datepicker";
18
+ import * as i6 from "@angular/material/button";
19
+ import * as i7 from "@angular/material/icon";
20
+ import * as i8 from "../../forms/directives/elder-stop-event-propagation.directive";
21
+ import * as i9 from "../../forms/directives/elder-form-field-no-spinner.directive";
22
+ import * as i10 from "@ngx-translate/core";
23
+ export class ElderLocalDateInputComponent extends FormFieldBaseComponent {
24
+ /***************************************************************************
25
+ * *
26
+ * Constructor *
27
+ * *
28
+ **************************************************************************/
29
+ constructor() {
30
+ super();
31
+ /***************************************************************************
32
+ * *
33
+ * Fields *
34
+ * *
35
+ **************************************************************************/
36
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
37
+ this._allowNull = false;
38
+ this.zone = ZoneId.systemDefault();
39
+ /** If true, date picker functionality is enabled. */
40
+ this.datePickerEnabled = true;
41
+ /** If true, touch optimized mode of date picker is enabled. */
42
+ this.datePickerTouchUi = false;
43
+ this.blur = new Subject();
44
+ this.date$ = this.mapIgnoreErrorObservable(this.value$, (v) => TimeUtil.localDateToDate(v, this.zone));
45
+ this.valueUpdatedBlur = combineLatest([this.valueUpdated, this.blur]).pipe(map(([value, focusEvent]) => value));
46
+ }
47
+ /***************************************************************************
48
+ * *
49
+ * Life Cycle *
50
+ * *
51
+ **************************************************************************/
52
+ ngOnInit() {
53
+ }
54
+ /***************************************************************************
55
+ * *
56
+ * Properties *
57
+ * *
58
+ **************************************************************************/
59
+ /**
60
+ * Allows the user to select 'nothing' / null.
61
+ */
62
+ set allowNull(val) {
63
+ this._allowNull = coerceBooleanProperty(val);
64
+ }
65
+ get allowNull() {
66
+ return this._allowNull;
67
+ }
68
+ get isoValueChange() {
69
+ return this.mapIgnoreErrorObservable(this.valueChange, (d) => d.toJSON());
70
+ }
71
+ set isoValue(value) {
72
+ this.value = this.mapIgnoreError(value, (d) => LocalDate.parse(d));
73
+ }
74
+ get dateValueChange() {
75
+ return this.mapIgnoreErrorObservable(this.valueChange, (d) => TimeUtil.localDateToDate(d));
76
+ }
77
+ set dateValue(value) {
78
+ this.value = this.mapIgnoreError(value, (d) => TimeUtil.dateToLocalDate(d));
79
+ }
80
+ get isoDateValueChange() {
81
+ return this.mapIgnoreErrorObservable(this.valueChange, (d) => TimeUtil.localDateToDate(d).toISOString());
82
+ }
83
+ set isoDateValue(value) {
84
+ this.value = this.mapIgnoreError(value, (d) => TimeUtil.dateToLocalDate(new Date(d)));
85
+ }
86
+ /***************************************************************************
87
+ * *
88
+ * Public API *
89
+ * *
90
+ **************************************************************************/
91
+ clear(event) {
92
+ this.updateValue(null);
93
+ }
94
+ openDatePicker() {
95
+ this.picker.open();
96
+ }
97
+ onDateInputChanged(newDate) {
98
+ try {
99
+ this.logger.debug('onDateInputChanged: "' + newDate + '"');
100
+ if (newDate === '' || newDate.startsWith('0')) {
101
+ return;
102
+ } // Ignore while updating the year
103
+ this.setDateStrInternally(newDate);
104
+ }
105
+ catch (err) {
106
+ this.logger.error('Failed to parse from date-input-changed event: ' + newDate, err);
107
+ }
108
+ }
109
+ onDatepickerInputChange(event) {
110
+ this.logger.debug('Datepicker Input has changed: ' + event.value);
111
+ this.setDateInternally(event.value);
112
+ }
113
+ /***************************************************************************
114
+ * *
115
+ * Private methods *
116
+ * *
117
+ **************************************************************************/
118
+ mapIgnoreError(value, conversionFn) {
119
+ try {
120
+ const ld = value ? conversionFn(value) : null;
121
+ this.logger.info('Setting local date: ' + ld);
122
+ return ld;
123
+ }
124
+ catch (err) {
125
+ this.logger.warn('Failed to apply value to dateValue: ' + value, err);
126
+ }
127
+ }
128
+ mapIgnoreErrorObservable(date, conversionFn) {
129
+ return date.pipe(map(localDate => localDate ? conversionFn(localDate) : null), catchError(err => {
130
+ this.logger.error('Failed to convert local date!', err);
131
+ return of(null);
132
+ }));
133
+ }
134
+ setDateStrInternally(date) {
135
+ if (date) {
136
+ this.updateValue(LocalDate.parse(date));
137
+ }
138
+ else {
139
+ this.updateValue(null);
140
+ }
141
+ }
142
+ setDateInternally(date) {
143
+ if (date) {
144
+ this.updateValue(TimeUtil.dateToLocalDate(date));
145
+ }
146
+ else {
147
+ this.updateValue(null);
148
+ }
149
+ }
150
+ valuesEquals(a, b) {
151
+ return (a && b)
152
+ ? a.equals(b)
153
+ : a === b;
154
+ }
155
+ }
156
+ ElderLocalDateInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderLocalDateInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
157
+ ElderLocalDateInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: { zone: "zone", datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", allowNull: "allowNull", isoValue: "isoValue", dateValue: "dateValue", isoDateValue: "isoDateValue" }, outputs: { blur: "blur", valueUpdatedBlur: "valueUpdatedBlur", isoValueChange: "isoValueChange", dateValueChange: "dateValueChange", isoDateValueChange: "isoDateValueChange" }, providers: buildFormIntegrationProviders(ElderLocalDateInputComponent), viewQueries: [{ propertyName: "picker", first: true, predicate: MatDatepicker, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"elder-flex-control\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <input matInput elderNoSpinner class=\"flex\"\n type=\"date\"\n [name]=\"name + '-inner'\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"date$ | async | date: 'yyyy-MM-dd'\"\n (ngModelChange)=\"onDateInputChanged($event)\"\n (blur)=\"blur.next($event)\"\n >\n <input style=\"display: none\" [matDatepicker]=\"picker\" (dateChange)=\"onDatepickerInputChange($event)\">\n\n <ng-container matSuffix>\n <mat-datepicker-toggle\n *ngIf=\"!isLocked && datePickerEnabled\"\n [for]=\"picker\">\n </mat-datepicker-toggle>\n\n <!-- valueWrapper.value && -->\n <button mat-icon-button type=\"button\"\n *ngIf=\"allowNull\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n >\n <mat-icon>close</mat-icon>\n </button>\n\n </ng-container>\n\n <mat-datepicker [touchUi]=\"datePickerTouchUi\" #picker></mat-datepicker>\n\n</mat-form-field>\n\n", styles: ["input::-webkit-calendar-picker-indicator{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.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: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix]" }, { 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.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "directive", type: i9.ElderFormFieldNoSpinnerDirective, selector: "input[elderNoSpinner]", inputs: ["elderNoSpinner"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderLocalDateInputComponent, decorators: [{
159
+ type: Component,
160
+ args: [{ selector: 'elder-local-date-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderLocalDateInputComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field class=\"elder-flex-control\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <input matInput elderNoSpinner class=\"flex\"\n type=\"date\"\n [name]=\"name + '-inner'\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"date$ | async | date: 'yyyy-MM-dd'\"\n (ngModelChange)=\"onDateInputChanged($event)\"\n (blur)=\"blur.next($event)\"\n >\n <input style=\"display: none\" [matDatepicker]=\"picker\" (dateChange)=\"onDatepickerInputChange($event)\">\n\n <ng-container matSuffix>\n <mat-datepicker-toggle\n *ngIf=\"!isLocked && datePickerEnabled\"\n [for]=\"picker\">\n </mat-datepicker-toggle>\n\n <!-- valueWrapper.value && -->\n <button mat-icon-button type=\"button\"\n *ngIf=\"allowNull\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n >\n <mat-icon>close</mat-icon>\n </button>\n\n </ng-container>\n\n <mat-datepicker [touchUi]=\"datePickerTouchUi\" #picker></mat-datepicker>\n\n</mat-form-field>\n\n", styles: ["input::-webkit-calendar-picker-indicator{display:none}\n"] }]
161
+ }], ctorParameters: function () { return []; }, propDecorators: { zone: [{
162
+ type: Input
163
+ }], datePickerEnabled: [{
164
+ type: Input
165
+ }], datePickerTouchUi: [{
166
+ type: Input
167
+ }], picker: [{
168
+ type: ViewChild,
169
+ args: [MatDatepicker, { static: true }]
170
+ }], blur: [{
171
+ type: Output
172
+ }], valueUpdatedBlur: [{
173
+ type: Output
174
+ }], allowNull: [{
175
+ type: Input
176
+ }], isoValueChange: [{
177
+ type: Output
178
+ }], isoValue: [{
179
+ type: Input
180
+ }], dateValueChange: [{
181
+ type: Output
182
+ }], dateValue: [{
183
+ type: Input
184
+ }], isoDateValueChange: [{
185
+ type: Output
186
+ }], isoDateValue: [{
187
+ type: Input
188
+ }] } });
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbG9jYWwtZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RpbWUvZWxkZXItbG9jYWwtZGF0ZS1pbnB1dC9lbGRlci1sb2NhbC1kYXRlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1sb2NhbC1kYXRlLWlucHV0L2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDL0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxhQUFhLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxhQUFhLEVBQTBCLE1BQU0sOEJBQThCLENBQUM7QUFDcEYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFD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LENBQVk7UUFDL0MsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDYixDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDYixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNkLENBQUM7OzBIQTdMVSw0QkFBNEI7OEdBQTVCLDRCQUE0QixnYkFINUIsNkJBQTZCLENBQUMsNEJBQTRCLENBQUMsa0VBMkIzRCxhQUFhLHFGQzdDMUIsMHlDQXdDQSx5OEZEckJpQixDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQzs0RkFFMUMsNEJBQTRCO2tCQVJ4QyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyw2QkFBNkIsOEJBQThCLGlCQUN2RCxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQzswRUFnQjlDLElBQUk7c0JBRFYsS0FBSztnQkFLQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBS0MsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLE1BQU07c0JBRFosU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQU14QixJQUFJO3NCQURuQixNQUFNO2dCQVFTLGdCQUFnQjtzQkFEL0IsTUFBTTtnQkFvQ0ksU0FBUztzQkFEbkIsS0FBSztnQkFVSyxjQUFjO3NCQUR4QixNQUFNO2dCQU1JLFFBQVE7c0JBRGxCLEtBQUs7Z0JBTUssZUFBZTtzQkFEekIsTUFBTTtnQkFNSSxTQUFTO3NCQURuQixLQUFLO2dCQU1LLGtCQUFrQjtzQkFENUIsTUFBTTtnQkFNSSxZQUFZO3NCQUR0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE91dHB1dCwgSW5wdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1GaWVsZEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9mb3JtLWZpZWxkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7TG9jYWxEYXRlLCBab25lSWR9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge2J1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdGVtcGxhdGUtY29tcG9zaXRlLWNvbnRyb2wnO1xuaW1wb3J0IHtWaWV3UHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdmlldy1wcm92aWRlcnMnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtNYXREYXRlcGlja2VyLCBNYXREYXRlcGlja2VySW5wdXRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQge1RpbWVVdGlsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdGltZS90aW1lLXV0aWwnO1xuaW1wb3J0IHtJc29EYXRlU3RyfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdGltZS9kYXRlLXV0aWwnO1xuaW1wb3J0IHtjb2VyY2VCb29sZWFuUHJvcGVydHl9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItbG9jYWwtZGF0ZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJMb2NhbERhdGVJbnB1dENvbXBvbmVudCksXG4gIHZpZXdQcm92aWRlcnM6IFtWaWV3UHJvdmlkZXJzLlBhcmVudENvbnRyb2xDb250YWluZXJdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyTG9jYWxEYXRlSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRCYXNlQ29tcG9uZW50PExvY2FsRGF0ZT4gaW1wbGVtZW50cyBPbkluaXQge1xuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX2FsbG93TnVsbCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB6b25lID0gWm9uZUlkLnN5c3RlbURlZmF1bHQoKTtcblxuICAvKiogSWYgdHJ1ZSwgZGF0ZSBwaWNrZXIgZnVuY3Rpb25hbGl0eSBpcyBlbmFibGVkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0ZVBpY2tlckVuYWJsZWQgPSB0cnVlO1xuXG4gIC8qKiBJZiB0cnVlLCB0b3VjaCBvcHRpbWl6ZWQgbW9kZSBvZiBkYXRlIHBpY2tlciBpcyBlbmFibGVkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0ZVBpY2tlclRvdWNoVWkgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKE1hdERhdGVwaWNrZXIsIHtzdGF0aWM6IHRydWV9KVxuICBwdWJsaWMgcGlja2VyOiBNYXREYXRlcGlja2VyPERhdGU+O1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRlJDogT2JzZXJ2YWJsZTxEYXRlPjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGJsdXIgPSBuZXcgU3ViamVjdDxGb2N1c0V2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgdXBkYXRlZCB2YWx1ZSBhZnRlciB0aGUgY29udHJvbCBibHVycmVkLlxuICAgKiAodXBkYXRlICYgYmx1cikgZXZlbnRzIG11c3QgaGF2ZSBoYXBwZW5lZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWVVcGRhdGVkQmx1cjogT2JzZXJ2YWJsZTxMb2NhbERhdGU+O1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5kYXRlJCA9IHRoaXMubWFwSWdub3JlRXJyb3JPYnNlcnZhYmxlKHRoaXMudmFsdWUkLCAodjogTG9jYWxEYXRlKSA9PiBUaW1lVXRpbC5sb2NhbERhdGVUb0RhdGUodiwgdGhpcy56b25lKSk7XG4gICAgdGhpcy52YWx1ZVVwZGF0ZWRCbHVyID0gY29tYmluZUxhdGVzdChbdGhpcy52YWx1ZVVwZGF0ZWQsIHRoaXMuYmx1cl0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZSwgZm9jdXNFdmVudF0pID0+IHZhbHVlKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogQWxsb3dzIHRoZSB1c2VyIHRvIHNlbGVjdCAnbm90aGluZycgLyBudWxsLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhbGxvd051bGwodmFsOiBib29sZWFuKSB7XG4gICAgdGhpcy5fYWxsb3dOdWxsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFsbG93TnVsbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYWxsb3dOdWxsO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgaXNvVmFsdWVDaGFuZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMubWFwSWdub3JlRXJyb3JPYnNlcnZhYmxlKHRoaXMudmFsdWVDaGFuZ2UsIChkOiBMb2NhbERhdGUpID0+IGQudG9KU09OKCkpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc29WYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLm1hcElnbm9yZUVycm9yKHZhbHVlLCAoZDogc3RyaW5nKSA9PiBMb2NhbERhdGUucGFyc2UoZCkpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZGF0ZVZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8RGF0ZSB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5tYXBJZ25vcmVFcnJvck9ic2VydmFibGUodGhpcy52YWx1ZUNoYW5nZSwgKGQ6IExvY2FsRGF0ZSkgPT4gVGltZVV0aWwubG9jYWxEYXRlVG9EYXRlKGQpKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0ZVZhbHVlKHZhbHVlOiBEYXRlIHwgbnVsbCkge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLm1hcElnbm9yZUVycm9yKHZhbHVlLCAoZDogRGF0ZSkgPT4gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKGQpKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGlzb0RhdGVWYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPElzb0RhdGVTdHIgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMubWFwSWdub3JlRXJyb3JPYnNlcnZhYmxlKHRoaXMudmFsdWVDaGFuZ2UsIChkOiBMb2NhbERhdGUpID0+IFRpbWVVdGlsLmxvY2FsRGF0ZVRvRGF0ZShkKS50b0lTT1N0cmluZygpKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvRGF0ZVZhbHVlKHZhbHVlOiBJc29EYXRlU3RyIHwgbnVsbCkge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLm1hcElnbm9yZUVycm9yKHZhbHVlLCAoZDogSXNvRGF0ZVN0cikgPT4gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKG5ldyBEYXRlKGQpKSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgY2xlYXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuRGF0ZVBpY2tlcigpOiB2b2lkIHtcbiAgICB0aGlzLnBpY2tlci5vcGVuKCk7XG4gIH1cblxuICBwdWJsaWMgb25EYXRlSW5wdXRDaGFuZ2VkKG5ld0RhdGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRyeSB7XG5cbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdvbkRhdGVJbnB1dENoYW5nZWQ6IFwiJyArIG5ld0RhdGUgKyAnXCInKTtcblxuICAgICAgaWYgKG5ld0RhdGUgPT09ICcnIHx8IG5ld0RhdGUuc3RhcnRzV2l0aCgnMCcpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0gLy8gSWdub3JlIHdoaWxlIHVwZGF0aW5nIHRoZSB5ZWFyXG4gICAgICB0aGlzLnNldERhdGVTdHJJbnRlcm5hbGx5KG5ld0RhdGUpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBwYXJzZSBmcm9tIGRhdGUtaW5wdXQtY2hhbmdlZCBldmVudDogJyArIG5ld0RhdGUsIGVycik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uRGF0ZXBpY2tlcklucHV0Q2hhbmdlKGV2ZW50OiBNYXREYXRlcGlja2VySW5wdXRFdmVudDxEYXRlPik6IHZvaWQge1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdEYXRlcGlja2VyIElucHV0IGhhcyBjaGFuZ2VkOiAnICsgZXZlbnQudmFsdWUpO1xuICAgIHRoaXMuc2V0RGF0ZUludGVybmFsbHkoZXZlbnQudmFsdWUpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBtYXBJZ25vcmVFcnJvcih2YWx1ZTogRGF0ZSB8IHN0cmluZywgY29udmVyc2lvbkZuOiAoZDogRGF0ZSB8IHN0cmluZykgPT4gTG9jYWxEYXRlKTogTG9jYWxEYXRlIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbGQgPSB2YWx1ZSA/IGNvbnZlcnNpb25Gbih2YWx1ZSkgOiBudWxsO1xuICAgICAgdGhpcy5sb2dnZXIuaW5mbygnU2V0dGluZyBsb2NhbCBkYXRlOiAnICsgbGQpO1xuICAgICAgcmV0dXJuIGxkO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5sb2dnZXIud2FybignRmFpbGVkIHRvIGFwcGx5IHZhbHVlIHRvIGRhdGVWYWx1ZTogJyArIHZhbHVlLCBlcnIpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbWFwSWdub3JlRXJyb3JPYnNlcnZhYmxlPFQ+KGRhdGU6IE9ic2VydmFibGU8TG9jYWxEYXRlPiwgY29udmVyc2lvbkZuOiAoZDogTG9jYWxEYXRlKSA9PiBUKTogT2JzZXJ2YWJsZTxUIHwgbnVsbD4ge1xuICAgIHJldHVybiBkYXRlLnBpcGUoXG4gICAgICBtYXAobG9jYWxEYXRlID0+IGxvY2FsRGF0ZSA/IGNvbnZlcnNpb25Gbihsb2NhbERhdGUpIDogbnVsbCksXG4gICAgICBjYXRjaEVycm9yKGVyciA9PiB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gY29udmVydCBsb2NhbCBkYXRlIScsIGVycik7XG4gICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RGF0ZVN0ckludGVybmFsbHkoZGF0ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKGRhdGUpIHtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUoTG9jYWxEYXRlLnBhcnNlKGRhdGUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldERhdGVJbnRlcm5hbGx5KGRhdGU6IERhdGUpOiB2b2lkIHtcbiAgICBpZiAoZGF0ZSkge1xuICAgICAgdGhpcy51cGRhdGVWYWx1ZShUaW1lVXRpbC5kYXRlVG9Mb2NhbERhdGUoZGF0ZSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB2YWx1ZXNFcXVhbHMoYTogTG9jYWxEYXRlLCBiOiBMb2NhbERhdGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKGEgJiYgYilcbiAgICAgID8gYS5lcXVhbHMoYilcbiAgICAgIDogYSA9PT0gYjtcbiAgfVxuXG59XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJlbGRlci1mbGV4LWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICA8aW5wdXQgbWF0SW5wdXQgZWxkZXJOb1NwaW5uZXIgY2xhc3M9XCJmbGV4XCJcbiAgICAgICAgIHR5cGU9XCJkYXRlXCJcbiAgICAgICAgIFtuYW1lXT1cIm5hbWUgKyAnLWlubmVyJ1wiXG4gICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgW25nTW9kZWxdPVwiZGF0ZSQgfCBhc3luYyB8IGRhdGU6ICd5eXl5LU1NLWRkJ1wiXG4gICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkRhdGVJbnB1dENoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAoYmx1cik9XCJibHVyLm5leHQoJGV2ZW50KVwiXG4gID5cbiAgPGlucHV0IHN0eWxlPVwiZGlzcGxheTogbm9uZVwiIFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiIChkYXRlQ2hhbmdlKT1cIm9uRGF0ZXBpY2tlcklucHV0Q2hhbmdlKCRldmVudClcIj5cblxuICA8bmctY29udGFpbmVyIG1hdFN1ZmZpeD5cbiAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlXG4gICAgICAqbmdJZj1cIiFpc0xvY2tlZCAmJiBkYXRlUGlja2VyRW5hYmxlZFwiXG4gICAgICBbZm9yXT1cInBpY2tlclwiPlxuICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuXG4gICAgPCEtLSB2YWx1ZVdyYXBwZXIudmFsdWUgJiYgLS0+XG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAqbmdJZj1cImFsbG93TnVsbFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNMb2NrZWRcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyKCRldmVudClcIiBhcmlhLWxhYmVsPVwiQ2xlYXJcIlxuICAgICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG1hdC1kYXRlcGlja2VyIFt0b3VjaFVpXT1cImRhdGVQaWNrZXJUb3VjaFVpXCIgI3BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuXG48L21hdC1mb3JtLWZpZWxkPlxuXG4iXX0=