@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.
- package/esm2020/elderbyte-ngx-starter.mjs +5 -0
- package/esm2020/lib/common/async/public_api.mjs +2 -0
- package/esm2020/lib/common/async/refreshing-entity.mjs +86 -0
- package/esm2020/lib/common/csv/csv-serializer.mjs +55 -0
- package/esm2020/lib/common/csv/csv-spec.mjs +99 -0
- package/esm2020/lib/common/csv/public_api.mjs +3 -0
- package/esm2020/lib/common/data/continuable-listing.mjs +10 -0
- package/esm2020/lib/common/data/data-context/data-context-active-page.mjs +130 -0
- package/esm2020/lib/common/data/data-context/data-context-auto-starter.mjs +74 -0
- package/esm2020/lib/common/data/data-context/data-context-base.mjs +283 -0
- package/esm2020/lib/common/data/data-context/data-context-builder.mjs +246 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-base.mjs +69 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-paged.mjs +143 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-token.mjs +136 -0
- package/esm2020/lib/common/data/data-context/data-context-life-cycle-binding.mjs +30 -0
- package/esm2020/lib/common/data/data-context/data-context-simple.mjs +59 -0
- package/esm2020/lib/common/data/data-context/data-context-source-auto-reloader.mjs +12 -0
- package/esm2020/lib/common/data/data-context/data-context-status.mjs +46 -0
- package/esm2020/lib/common/data/data-context/data-context.mjs +30 -0
- package/esm2020/lib/common/data/data-context/mat-table-data-context-binding.mjs +139 -0
- package/esm2020/lib/common/data/data-context/public_api.mjs +14 -0
- package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +55 -0
- package/esm2020/lib/common/data/datasource/data-source-processor.mjs +199 -0
- package/esm2020/lib/common/data/datasource/data-source.mjs +23 -0
- package/esm2020/lib/common/data/datasource/entity-id-util.mjs +11 -0
- package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +127 -0
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +102 -0
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +73 -0
- package/esm2020/lib/common/data/datasource/public_api.mjs +8 -0
- package/esm2020/lib/common/data/datasource/rest/public_api.mjs +2 -0
- package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +294 -0
- package/esm2020/lib/common/data/entity-set-patch.mjs +164 -0
- package/esm2020/lib/common/data/field-comparator.mjs +99 -0
- package/esm2020/lib/common/data/filters/filter-context.mjs +141 -0
- package/esm2020/lib/common/data/filters/filter.mjs +109 -0
- package/esm2020/lib/common/data/http-params-builder.mjs +110 -0
- package/esm2020/lib/common/data/page.mjs +58 -0
- package/esm2020/lib/common/data/public_api.mjs +12 -0
- package/esm2020/lib/common/data/required-filter-evaluator.mjs +70 -0
- package/esm2020/lib/common/data/sort-context.mjs +75 -0
- package/esm2020/lib/common/data/sort.mjs +11 -0
- package/esm2020/lib/common/data/token-chunk-request.mjs +8 -0
- package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +81 -0
- package/esm2020/lib/common/enums/public_api.mjs +2 -0
- package/esm2020/lib/common/errors/exception-detail.mjs +2 -0
- package/esm2020/lib/common/errors/public_api.mjs +3 -0
- package/esm2020/lib/common/errors/standard-error-detail.mjs +2 -0
- package/esm2020/lib/common/format/bytes-format.mjs +22 -0
- package/esm2020/lib/common/format/bytes-per-second-format.mjs +41 -0
- package/esm2020/lib/common/format/public_api.mjs +3 -0
- package/esm2020/lib/common/forms/elder-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +178 -0
- package/esm2020/lib/common/forms/elder-from-field-base.mjs +94 -0
- package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +39 -0
- package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +47 -0
- package/esm2020/lib/common/forms/elder-multi-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/form-field-base.component.mjs +106 -0
- package/esm2020/lib/common/forms/multi-model-base.component.mjs +32 -0
- package/esm2020/lib/common/forms/public_api.mjs +12 -0
- package/esm2020/lib/common/forms/template-composite-control.mjs +133 -0
- package/esm2020/lib/common/forms/value-accessor-base.mjs +146 -0
- package/esm2020/lib/common/forms/view-providers.mjs +30 -0
- package/esm2020/lib/common/http/http-client-builder.service.mjs +14 -0
- package/esm2020/lib/common/http/http-client-pristine.mjs +21 -0
- package/esm2020/lib/common/http/public_api.mjs +5 -0
- package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +95 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +49 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress.mjs +17 -0
- package/esm2020/lib/common/http/transfer/data-transfer-state.mjs +82 -0
- package/esm2020/lib/common/http/transfer/data-transfer-status.mjs +24 -0
- package/esm2020/lib/common/http/transfer/http-data-transfer.mjs +180 -0
- package/esm2020/lib/common/http/transfer/public_api.mjs +7 -0
- package/esm2020/lib/common/http/upload/file-upload-client.mjs +42 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-base.mjs +6 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-text.mjs +16 -0
- package/esm2020/lib/common/i18n/entity/language-tag.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/locale.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/localisation-picker.mjs +30 -0
- package/esm2020/lib/common/i18n/entity/localized.mjs +2 -0
- package/esm2020/lib/common/i18n/entity/public_api.mjs +6 -0
- package/esm2020/lib/common/i18n/public_api.mjs +2 -0
- package/esm2020/lib/common/json-map.mjs +18 -0
- package/esm2020/lib/common/objects.mjs +41 -0
- package/esm2020/lib/common/public_api.mjs +19 -0
- package/esm2020/lib/common/reactive-map.mjs +69 -0
- package/esm2020/lib/common/selection/public_api.mjs +2 -0
- package/esm2020/lib/common/selection/selection-model.mjs +212 -0
- package/esm2020/lib/common/sets.mjs +44 -0
- package/esm2020/lib/common/suggestion-provider.mjs +12 -0
- package/esm2020/lib/common/templates/template-slot-manager.mjs +135 -0
- package/esm2020/lib/common/time/date-util.mjs +93 -0
- package/esm2020/lib/common/time/interval.mjs +419 -0
- package/esm2020/lib/common/time/period-duration.mjs +130 -0
- package/esm2020/lib/common/time/public_api.mjs +5 -0
- package/esm2020/lib/common/time/time-util.mjs +41 -0
- package/esm2020/lib/common/url/elder-router.service.mjs +54 -0
- package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +119 -0
- package/esm2020/lib/common/url/public_api.mjs +4 -0
- package/esm2020/lib/common/url/url-query-params.mjs +133 -0
- package/esm2020/lib/common/utils/batcher.mjs +35 -0
- package/esm2020/lib/common/utils/collection-util.mjs +109 -0
- package/esm2020/lib/common/utils/filter-util.mjs +52 -0
- package/esm2020/lib/common/utils/next-number-util.mjs +88 -0
- package/esm2020/lib/common/utils/ng-zone-utils.mjs +16 -0
- package/esm2020/lib/common/utils/parse-util.mjs +16 -0
- package/esm2020/lib/common/utils/property-path-util.mjs +28 -0
- package/esm2020/lib/common/utils/public_api.mjs +12 -0
- package/esm2020/lib/common/utils/query-list-binding.mjs +67 -0
- package/esm2020/lib/common/utils/sort-util.mjs +30 -0
- package/esm2020/lib/common/utils/url-builder.mjs +275 -0
- package/esm2020/lib/common/utils/uuid-util.mjs +29 -0
- package/esm2020/lib/common/utils/value-wrapper.mjs +19 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +16 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +30 -0
- package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +39 -0
- package/esm2020/lib/components/auditing/elder-audit.module.mjs +42 -0
- package/esm2020/lib/components/auditing/i-audited-entity.mjs +3 -0
- package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +15 -0
- package/esm2020/lib/components/button-group/elder-button-group.module.mjs +35 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +123 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +15 -0
- package/esm2020/lib/components/card-organizer/card-organizer-data.mjs +93 -0
- package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +205 -0
- package/esm2020/lib/components/card-organizer/card-stack.mjs +176 -0
- package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +49 -0
- package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +17 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +156 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +65 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +56 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +63 -0
- package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +46 -0
- package/esm2020/lib/components/connectivity/public_api.mjs +3 -0
- package/esm2020/lib/components/containers/elder-containers.module.mjs +25 -0
- package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +24 -0
- package/esm2020/lib/components/containers/public_api.mjs +2 -0
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +77 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.mjs +40 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +38 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +114 -0
- package/esm2020/lib/components/csv/elder-csv.module.mjs +37 -0
- package/esm2020/lib/components/currency/elder-currency.module.mjs +24 -0
- package/esm2020/lib/components/currency/elder-currency.pipe.mjs +33 -0
- package/esm2020/lib/components/currency/model/currency-code.mjs +38 -0
- package/esm2020/lib/components/currency/model/currency-unit-registry.mjs +30 -0
- package/esm2020/lib/components/currency/model/currency-unit.mjs +10 -0
- package/esm2020/lib/components/currency/model/currency.mjs +15 -0
- package/esm2020/lib/components/currency/public_api.mjs +7 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +75 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +89 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +67 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +34 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +47 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +32 -0
- package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +67 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +259 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options-provider.mjs +44 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +45 -0
- package/esm2020/lib/components/data-view/base/elder-data-view.mjs +3 -0
- package/esm2020/lib/components/data-view/base/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +45 -0
- package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +89 -0
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +149 -0
- package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +89 -0
- package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +98 -0
- package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +37 -0
- package/esm2020/lib/components/data-view/common/selection/master-selection-state.mjs +10 -0
- package/esm2020/lib/components/data-view/elder-data-view-interaction-mode.mjs +2 -0
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +306 -0
- package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +81 -0
- package/esm2020/lib/components/data-view/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +19 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +78 -0
- package/esm2020/lib/components/data-view/table/activation/elder-item-activator.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation-options.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +261 -0
- package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +72 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +18 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +321 -0
- package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +17 -0
- package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +96 -0
- package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +136 -0
- package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +20 -0
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +141 -0
- package/esm2020/lib/components/data-view/table/model/elder-column-layout.mjs +110 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +81 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-provider.mjs +40 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-query-group.mjs +87 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +165 -0
- package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +25 -0
- package/esm2020/lib/components/dialogs/elder-dialog-config.mjs +3 -0
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +84 -0
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +168 -0
- package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +46 -0
- package/esm2020/lib/components/errors/elder-error.module.mjs +41 -0
- package/esm2020/lib/components/errors/error-util.mjs +94 -0
- package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +66 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +55 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +27 -0
- package/esm2020/lib/components/files/blob-url.mjs +10 -0
- package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +225 -0
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +109 -0
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +143 -0
- package/esm2020/lib/components/files/elder-file.module.mjs +67 -0
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +55 -0
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +74 -0
- package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +51 -0
- package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +35 -0
- package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +42 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +82 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +159 -0
- package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +77 -0
- package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +111 -0
- package/esm2020/lib/components/forms/directives/elder-max.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-min.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +101 -0
- package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +36 -0
- package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +29 -0
- package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +157 -0
- package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +27 -0
- package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +120 -0
- package/esm2020/lib/components/forms/directives/validation/elder-multiple-of.validator.mjs +57 -0
- package/esm2020/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.mjs +68 -0
- package/esm2020/lib/components/forms/elder-forms.module.mjs +22 -0
- package/esm2020/lib/components/forms/public_api.mjs +2 -0
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +146 -0
- package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +185 -0
- package/esm2020/lib/components/forms/search/elder-search.module.mjs +66 -0
- package/esm2020/lib/components/forms/search/model/search-input-state.mjs +78 -0
- package/esm2020/lib/components/forms/search/model/search-input.mjs +2 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +123 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +16 -0
- package/esm2020/lib/components/global-search/elder-global-search.component.mjs +126 -0
- package/esm2020/lib/components/global-search/elder-global-search.module.mjs +32 -0
- package/esm2020/lib/components/global-search/elder-global-search.service.mjs +93 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +90 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +26 -0
- package/esm2020/lib/components/graph/elder-progress-bar/sub-bar.mjs +7 -0
- package/esm2020/lib/components/graph/public_api.mjs +2 -0
- package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +28 -0
- package/esm2020/lib/components/headers/elder-header.module.mjs +43 -0
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +68 -0
- package/esm2020/lib/components/http-support/public_api.mjs +2 -0
- package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +119 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +135 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +151 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +56 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +39 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +74 -0
- package/esm2020/lib/components/i18n/language/elder-language-config.mjs +3 -0
- package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +69 -0
- package/esm2020/lib/components/i18n/language/elder-language.module.mjs +72 -0
- package/esm2020/lib/components/i18n/language/elder-language.service.mjs +121 -0
- package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +65 -0
- package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +53 -0
- package/esm2020/lib/components/i18n/public_api.mjs +4 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +127 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +136 -0
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +95 -0
- package/esm2020/lib/components/iframes/iframe-close.directive.mjs +41 -0
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +51 -0
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +126 -0
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +78 -0
- package/esm2020/lib/components/iframes/iframe.service.mjs +48 -0
- package/esm2020/lib/components/iframes/typed-event-message.mjs +42 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +61 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +157 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +40 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +9 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +186 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +197 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +114 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +58 -0
- package/esm2020/lib/components/input/autocomplete/many/word-position-finder.mjs +58 -0
- package/esm2020/lib/components/input/public_api.mjs +2 -0
- package/esm2020/lib/components/labels/elder-labels.module.mjs +30 -0
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +230 -0
- package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +229 -0
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +64 -0
- package/esm2020/lib/components/measures/elder-measures.module.mjs +116 -0
- package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +41 -0
- package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +73 -0
- package/esm2020/lib/components/measures/elder-unit.service.mjs +115 -0
- package/esm2020/lib/components/measures/model/dimensions.mjs +17 -0
- package/esm2020/lib/components/measures/model/quantity.mjs +12 -0
- package/esm2020/lib/components/measures/model/unit-dimension.mjs +14 -0
- package/esm2020/lib/components/measures/model/unit-registry.mjs +81 -0
- package/esm2020/lib/components/measures/model/unit.mjs +143 -0
- package/esm2020/lib/components/measures/public_api.mjs +8 -0
- package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +189 -0
- package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +237 -0
- package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +164 -0
- package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +55 -0
- package/esm2020/lib/components/navigation/bread-crumbs/path/path.mjs +37 -0
- package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +51 -0
- package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +93 -0
- package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +64 -0
- package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +12 -0
- package/esm2020/lib/components/navigation/public_api.mjs +4 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +46 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +76 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +68 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +66 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-column-position.mjs +2 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +39 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +85 -0
- package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +43 -0
- package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +72 -0
- package/esm2020/lib/components/overlays/elder-overlay.component.mjs +204 -0
- package/esm2020/lib/components/overlays/elder-overlay.module.mjs +41 -0
- package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-panel.module.mjs +38 -0
- package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +26 -0
- package/esm2020/lib/components/public_api.mjs +40 -0
- package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +77 -0
- package/esm2020/lib/components/select/auto/elder-select-first-util.mjs +62 -0
- package/esm2020/lib/components/select/elder-select-base.mjs +284 -0
- package/esm2020/lib/components/select/elder-select-chip.directive.mjs +45 -0
- package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +133 -0
- package/esm2020/lib/components/select/elder-select-value.directive.mjs +15 -0
- package/esm2020/lib/components/select/elder-select.module.mjs +133 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +356 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +237 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +67 -0
- package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +86 -0
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +126 -0
- package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +47 -0
- package/esm2020/lib/components/select/public_api.mjs +6 -0
- package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +57 -0
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +442 -0
- package/esm2020/lib/components/select/single/elder-select-form-field.mjs +45 -0
- package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +152 -0
- package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +48 -0
- package/esm2020/lib/components/select-list/elder-select-list.module.mjs +36 -0
- package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +75 -0
- package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +118 -0
- package/esm2020/lib/components/shell/drawers/drawer-outlet-binding.mjs +60 -0
- package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +117 -0
- package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +128 -0
- package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +46 -0
- package/esm2020/lib/components/shell/elder-shell.module.mjs +90 -0
- package/esm2020/lib/components/shell/elder-shell.service.mjs +145 -0
- package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +73 -0
- package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +206 -0
- package/esm2020/lib/components/shell/shell-content-slot.mjs +2 -0
- package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +137 -0
- package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +25 -0
- package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +256 -0
- package/esm2020/lib/components/tabs/elder-tab.module.mjs +32 -0
- package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +62 -0
- package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +72 -0
- package/esm2020/lib/components/theme/elder-theme.directive.mjs +61 -0
- package/esm2020/lib/components/theme/elder-theme.module.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme.service.mjs +123 -0
- package/esm2020/lib/components/theme/known-elder-themes.mjs +6 -0
- package/esm2020/lib/components/theme/public_api.mjs +2 -0
- package/esm2020/lib/components/theme/theme-spec.mjs +15 -0
- package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +23 -0
- package/esm2020/lib/components/time/duration/duration-bucket.mjs +67 -0
- package/esm2020/lib/components/time/duration/duration-format.mjs +271 -0
- package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +109 -0
- package/esm2020/lib/components/time/duration/iso-duration-str.mjs +2 -0
- package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +100 -0
- package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +79 -0
- package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +126 -0
- package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +189 -0
- package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +84 -0
- package/esm2020/lib/components/time/elder-time.module.mjs +133 -0
- package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +119 -0
- package/esm2020/lib/components/time/period/period-bucket.mjs +31 -0
- package/esm2020/lib/components/time/period/period-format.mjs +89 -0
- package/esm2020/lib/components/time/public_api.mjs +8 -0
- package/esm2020/lib/components/toasts/elder-toast.module.mjs +22 -0
- package/esm2020/lib/components/toasts/elder-toast.service.mjs +197 -0
- package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +73 -0
- package/esm2020/lib/components/toasts/toast-type.mjs +7 -0
- package/esm2020/lib/components/toasts/toast.mjs +2 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.mjs +9 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +54 -0
- package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +84 -0
- package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +65 -0
- package/esm2020/lib/components/viewers/elder-viewers.module.mjs +25 -0
- package/esm2020/lib/features/event-source/elder-event-source.service.mjs +56 -0
- package/esm2020/lib/features/event-source/public_api.mjs +3 -0
- package/esm2020/lib/features/event-source/reactive-event-source.mjs +198 -0
- package/esm2020/lib/features/kafent/access-token-provider.mjs +20 -0
- package/esm2020/lib/features/kafent/kafent-config.mjs +24 -0
- package/esm2020/lib/features/kafent/kafent-event-stream.mjs +25 -0
- package/esm2020/lib/features/kafent/kafent-event.mjs +3 -0
- package/esm2020/lib/features/kafent/kafent-event.service.mjs +107 -0
- package/esm2020/lib/features/kafent/kafent-live-event-request.mjs +2 -0
- package/esm2020/lib/features/kafent/kafent.module.mjs +61 -0
- package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +128 -0
- package/esm2020/lib/features/kafent/sse/kafent-topic-sse.mjs +98 -0
- package/esm2020/lib/features/public_api.mjs +3 -0
- package/esm2020/lib/pipes/bytes.pipe.mjs +24 -0
- package/esm2020/lib/pipes/elder-pipes.module.mjs +67 -0
- package/esm2020/lib/pipes/elder-repeat.pipe.mjs +21 -0
- package/esm2020/lib/pipes/elder-round.pipe.mjs +35 -0
- package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +20 -0
- package/esm2020/lib/pipes/elder-truncate.pipe.mjs +40 -0
- package/esm2020/lib/pipes/iso-duration.pipe.mjs +58 -0
- package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +49 -0
- package/esm2020/lib/pipes/iso-interval.pipe.mjs +109 -0
- package/esm2020/lib/pipes/public_api.mjs +2 -0
- package/esm2020/lib/pipes/time-ago.pipe.mjs +104 -0
- package/esm2020/lib/pipes/time-duration.pipe.mjs +98 -0
- package/esm2020/lib/pipes/weight.pipe.mjs +56 -0
- package/esm2020/public_api.mjs +8 -0
- package/fesm2015/elderbyte-ngx-starter.mjs +27485 -0
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -0
- package/fesm2020/elderbyte-ngx-starter.mjs +27371 -0
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/common/async/public_api.d.ts +1 -0
- package/lib/common/async/refreshing-entity.d.ts +55 -0
- package/lib/common/csv/csv-serializer.d.ts +33 -0
- package/lib/common/csv/csv-spec.d.ts +71 -0
- package/lib/common/csv/public_api.d.ts +2 -0
- package/lib/common/data/continuable-listing.d.ts +28 -0
- package/lib/common/data/data-context/data-context-active-page.d.ts +75 -0
- package/lib/common/data/data-context/data-context-auto-starter.d.ts +41 -0
- package/lib/common/data/data-context/data-context-base.d.ts +149 -0
- package/lib/common/data/data-context/data-context-builder.d.ts +142 -0
- package/lib/common/data/data-context/data-context-continuable-base.d.ts +43 -0
- package/lib/common/data/data-context/data-context-continuable-paged.d.ts +58 -0
- package/lib/common/data/data-context/data-context-continuable-token.d.ts +48 -0
- package/lib/common/data/data-context/data-context-life-cycle-binding.d.ts +33 -0
- package/lib/common/data/data-context/data-context-simple.d.ts +30 -0
- package/lib/common/data/data-context/data-context-source-auto-reloader.d.ts +8 -0
- package/lib/common/data/data-context/data-context-status.d.ts +30 -0
- package/lib/common/data/data-context/data-context.d.ts +154 -0
- package/lib/common/data/data-context/mat-table-data-context-binding.d.ts +60 -0
- package/lib/common/data/data-context/public_api.d.ts +13 -0
- package/lib/common/data/datasource/data-source-adapter.d.ts +39 -0
- package/lib/common/data/datasource/data-source-processor.d.ts +106 -0
- package/lib/common/data/datasource/data-source.d.ts +58 -0
- package/lib/common/data/datasource/entity-id-util.d.ts +3 -0
- package/lib/common/data/datasource/fetcher/delegate-data-source.d.ts +84 -0
- package/lib/common/data/datasource/local/local-list-data-source.d.ts +61 -0
- package/lib/common/data/datasource/local/local-paged-data-source.d.ts +49 -0
- package/lib/common/data/datasource/public_api.d.ts +7 -0
- package/lib/common/data/datasource/rest/public_api.d.ts +1 -0
- package/lib/common/data/datasource/rest/rest-client.d.ts +162 -0
- package/lib/common/data/entity-set-patch.d.ts +74 -0
- package/lib/common/data/field-comparator.d.ts +43 -0
- package/lib/common/data/filters/filter-context.d.ts +63 -0
- package/lib/common/data/filters/filter.d.ts +52 -0
- package/lib/common/data/http-params-builder.d.ts +45 -0
- package/lib/common/data/page.d.ts +41 -0
- package/lib/common/data/public_api.d.ts +11 -0
- package/lib/common/data/required-filter-evaluator.d.ts +46 -0
- package/lib/common/data/sort-context.d.ts +42 -0
- package/lib/common/data/sort.d.ts +8 -0
- package/lib/common/data/token-chunk-request.d.ts +8 -0
- package/lib/common/enums/elder-enum-translation.service.d.ts +52 -0
- package/lib/common/enums/public_api.d.ts +1 -0
- package/lib/common/errors/exception-detail.d.ts +5 -0
- package/{src/lib/common/errors/public_api.ts → lib/common/errors/public_api.d.ts} +0 -0
- package/lib/common/errors/standard-error-detail.d.ts +22 -0
- package/lib/common/format/bytes-format.d.ts +4 -0
- package/lib/common/format/bytes-per-second-format.d.ts +5 -0
- package/{src/lib/common/format/public_api.ts → lib/common/format/public_api.d.ts} +0 -0
- package/lib/common/forms/elder-entity-value-accessor.d.ts +42 -0
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +103 -0
- package/lib/common/forms/elder-from-field-base.d.ts +52 -0
- package/lib/common/forms/elder-from-field-entity-base.d.ts +31 -0
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +35 -0
- package/lib/common/forms/elder-multi-entity-value-accessor.d.ts +52 -0
- package/lib/common/forms/form-field-base.component.d.ts +74 -0
- package/lib/common/forms/multi-model-base.component.d.ts +23 -0
- package/lib/common/forms/public_api.d.ts +11 -0
- package/lib/common/forms/template-composite-control.d.ts +64 -0
- package/lib/common/forms/value-accessor-base.d.ts +98 -0
- package/lib/common/forms/view-providers.d.ts +23 -0
- package/lib/common/http/http-client-builder.service.d.ts +6 -0
- package/lib/common/http/http-client-pristine.d.ts +10 -0
- package/lib/common/http/public_api.d.ts +4 -0
- package/lib/common/http/transfer/data-transfer-factory.d.ts +70 -0
- package/lib/common/http/transfer/data-transfer-progress-aggregate.d.ts +27 -0
- package/lib/common/http/transfer/data-transfer-progress.d.ts +13 -0
- package/lib/common/http/transfer/data-transfer-state.d.ts +52 -0
- package/lib/common/http/transfer/data-transfer-status.d.ts +22 -0
- package/lib/common/http/transfer/http-data-transfer.d.ts +96 -0
- package/lib/common/http/transfer/public_api.d.ts +6 -0
- package/lib/common/http/upload/file-upload-client.d.ts +38 -0
- package/lib/common/i18n/entity/impl/i18n-base.d.ts +6 -0
- package/lib/common/i18n/entity/impl/i18n-text.d.ts +11 -0
- package/lib/common/i18n/entity/language-tag.d.ts +15 -0
- package/lib/common/i18n/entity/locale.d.ts +8 -0
- package/lib/common/i18n/entity/localisation-picker.d.ts +14 -0
- package/lib/common/i18n/entity/localized.d.ts +10 -0
- package/lib/common/i18n/entity/public_api.d.ts +5 -0
- package/lib/common/i18n/public_api.d.ts +1 -0
- package/lib/common/json-map.d.ts +7 -0
- package/lib/common/objects.d.ts +19 -0
- package/lib/common/public_api.d.ts +18 -0
- package/lib/common/reactive-map.d.ts +40 -0
- package/{src/lib/common/selection/public_api.ts → lib/common/selection/public_api.d.ts} +0 -0
- package/lib/common/selection/selection-model.d.ts +82 -0
- package/lib/common/sets.d.ts +20 -0
- package/lib/common/suggestion-provider.d.ts +13 -0
- package/lib/common/templates/template-slot-manager.d.ts +70 -0
- package/lib/common/time/date-util.d.ts +54 -0
- package/lib/common/time/interval.d.ts +287 -0
- package/lib/common/time/period-duration.d.ts +84 -0
- package/lib/common/time/public_api.d.ts +4 -0
- package/lib/common/time/time-util.d.ts +15 -0
- package/lib/common/url/elder-router.service.d.ts +36 -0
- package/lib/common/url/elder-url-fragment-params.service.d.ts +62 -0
- package/lib/common/url/public_api.d.ts +3 -0
- package/lib/common/url/url-query-params.d.ts +96 -0
- package/lib/common/utils/batcher.d.ts +14 -0
- package/lib/common/utils/collection-util.d.ts +35 -0
- package/lib/common/utils/filter-util.d.ts +7 -0
- package/lib/common/utils/next-number-util.d.ts +39 -0
- package/lib/common/utils/ng-zone-utils.d.ts +7 -0
- package/lib/common/utils/parse-util.d.ts +8 -0
- package/lib/common/utils/property-path-util.d.ts +8 -0
- package/{src/lib/common/utils/public_api.ts → lib/common/utils/public_api.d.ts} +0 -0
- package/lib/common/utils/query-list-binding.d.ts +57 -0
- package/lib/common/utils/sort-util.d.ts +10 -0
- package/lib/common/utils/url-builder.d.ts +160 -0
- package/lib/common/utils/uuid-util.d.ts +18 -0
- package/lib/common/utils/value-wrapper.d.ts +15 -0
- package/lib/components/access-denied/elder-access-denied.component.d.ts +8 -0
- package/lib/components/access-denied/elder-access-denied.module.d.ts +11 -0
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +20 -0
- package/lib/components/auditing/elder-audit.module.d.ts +14 -0
- package/lib/components/auditing/i-audited-entity.d.ts +13 -0
- package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +8 -0
- package/lib/components/button-group/elder-button-group.module.d.ts +12 -0
- package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +64 -0
- package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +9 -0
- package/lib/components/card-organizer/card-organizer-data.d.ts +57 -0
- package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +89 -0
- package/lib/components/card-organizer/card-stack.d.ts +146 -0
- package/lib/components/card-organizer/elder-card-organizer.module.d.ts +22 -0
- package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +6 -0
- package/lib/components/cards/elder-card/elder-card.component.d.ts +68 -0
- package/lib/components/cards/elder-card/elder-card.module.d.ts +13 -0
- package/lib/components/connectivity/elder-connectivity.module.d.ts +14 -0
- package/lib/components/connectivity/elder-connectivity.service.d.ts +36 -0
- package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +33 -0
- package/lib/components/connectivity/public_api.d.ts +2 -0
- package/lib/components/containers/elder-containers.module.d.ts +9 -0
- package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +12 -0
- package/lib/components/containers/public_api.d.ts +1 -0
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +51 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.d.ts +35 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.service.d.ts +28 -0
- package/lib/components/csv/elder-csv-stream-exporter.d.ts +58 -0
- package/lib/components/csv/elder-csv.module.d.ts +14 -0
- package/lib/components/currency/elder-currency.module.d.ts +8 -0
- package/lib/components/currency/elder-currency.pipe.d.ts +21 -0
- package/lib/components/currency/model/currency-code.d.ts +36 -0
- package/lib/components/currency/model/currency-unit-registry.d.ts +23 -0
- package/lib/components/currency/model/currency-unit.d.ts +7 -0
- package/lib/components/currency/model/currency.d.ts +10 -0
- package/lib/components/currency/public_api.d.ts +6 -0
- package/lib/components/data-transfer/elder-data-transfer.module.d.ts +26 -0
- package/lib/components/data-transfer/elder-data-transfer.service.d.ts +55 -0
- package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +30 -0
- package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +29 -0
- package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +31 -0
- package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +28 -0
- package/lib/components/data-view/base/data-view-options-provider-binding.d.ts +39 -0
- package/lib/components/data-view/base/elder-data-view-base.d.ts +129 -0
- package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +38 -0
- package/lib/components/data-view/base/elder-data-view-options.d.ts +34 -0
- package/lib/components/data-view/base/elder-data-view.d.ts +7 -0
- package/lib/components/data-view/base/public_api.d.ts +5 -0
- package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +32 -0
- package/lib/components/data-view/common/elder-data-common.module.d.ts +29 -0
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +66 -0
- package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +45 -0
- package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +48 -0
- package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +26 -0
- package/lib/components/data-view/common/selection/master-selection-state.d.ts +8 -0
- package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +21 -0
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +113 -0
- package/lib/components/data-view/grid/elder-grid.module.d.ts +24 -0
- package/lib/components/data-view/public_api.d.ts +5 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +9 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +28 -0
- package/lib/components/data-view/table/activation/elder-item-activator.d.ts +3 -0
- package/lib/components/data-view/table/activation/elder-table-activation-options.d.ts +16 -0
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +78 -0
- package/lib/components/data-view/table/elder-number-cell.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-paginator-intl.d.ts +38 -0
- package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +129 -0
- package/lib/components/data-view/table/elder-table-column.directive.d.ts +9 -0
- package/lib/components/data-view/table/elder-table-extension.directive.d.ts +53 -0
- package/lib/components/data-view/table/elder-table-root.directive.d.ts +15 -0
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +63 -0
- package/lib/components/data-view/table/elder-table-sort.directive.d.ts +11 -0
- package/lib/components/data-view/table/elder-table.module.d.ts +47 -0
- package/lib/components/data-view/table/model/elder-column-layout.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-provider.d.ts +25 -0
- package/lib/components/data-view/table/model/elder-table-model-query-group.d.ts +53 -0
- package/lib/components/data-view/table/model/elder-table-model.d.ts +83 -0
- package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/elder-dialog-config.d.ts +16 -0
- package/lib/components/dialogs/elder-dialog.module.d.ts +37 -0
- package/lib/components/dialogs/elder-dialog.service.d.ts +72 -0
- package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +29 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +24 -0
- package/lib/components/errors/elder-error.module.d.ts +16 -0
- package/lib/components/errors/error-util.d.ts +23 -0
- package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +42 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +33 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +11 -0
- package/lib/components/files/blob-url.d.ts +6 -0
- package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +107 -0
- package/lib/components/files/elder-file-drop-zone.directive.d.ts +45 -0
- package/lib/components/files/elder-file-select.directive.d.ts +66 -0
- package/lib/components/files/elder-file.module.d.ts +23 -0
- package/lib/components/files/file-select/file-select.component.d.ts +34 -0
- package/lib/components/files/file-upload/file-upload.component.d.ts +45 -0
- package/lib/components/forms/clipboard/elder-clipboard.service.d.ts +26 -0
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +32 -0
- package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +22 -0
- package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +21 -0
- package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-forms-directives.module.d.ts +68 -0
- package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +41 -0
- package/lib/components/forms/directives/elder-key-event.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-max.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-min.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +48 -0
- package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +13 -0
- package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +16 -0
- package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +63 -0
- package/lib/components/forms/directives/elder-touched.directive.d.ts +14 -0
- package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +51 -0
- package/lib/components/forms/directives/validation/elder-multiple-of.validator.d.ts +20 -0
- package/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.d.ts +33 -0
- package/lib/components/forms/elder-forms.module.d.ts +12 -0
- package/lib/components/forms/public_api.d.ts +1 -0
- package/lib/components/forms/search/elder-search-context.directive.d.ts +79 -0
- package/lib/components/forms/search/elder-search-input.directive.d.ts +85 -0
- package/lib/components/forms/search/elder-search.module.d.ts +25 -0
- package/lib/components/forms/search/model/search-input-state.d.ts +67 -0
- package/lib/components/forms/search/model/search-input.d.ts +21 -0
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +72 -0
- package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +6 -0
- package/lib/components/global-search/elder-global-search.component.d.ts +39 -0
- package/lib/components/global-search/elder-global-search.module.d.ts +18 -0
- package/lib/components/global-search/elder-global-search.service.d.ts +54 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +47 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +10 -0
- package/lib/components/graph/elder-progress-bar/sub-bar.d.ts +5 -0
- package/{src/lib/components/graph/public_api.ts → lib/components/graph/public_api.d.ts} +0 -0
- package/lib/components/headers/elder-header/elder-header.component.d.ts +25 -0
- package/lib/components/headers/elder-header.module.d.ts +11 -0
- package/lib/components/http-support/elder-http-client.service.d.ts +48 -0
- package/lib/components/http-support/public_api.d.ts +1 -0
- package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +37 -0
- package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +62 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +22 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog.service.d.ts +13 -0
- package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +67 -0
- package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +17 -0
- package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +37 -0
- package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +23 -0
- package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +22 -0
- package/lib/components/i18n/entities/picker/localisation-picker.service.d.ts +44 -0
- package/lib/components/i18n/language/elder-language-config.d.ts +14 -0
- package/lib/components/i18n/language/elder-language-interceptor.d.ts +41 -0
- package/lib/components/i18n/language/elder-language.module.d.ts +26 -0
- package/lib/components/i18n/language/elder-language.service.d.ts +77 -0
- package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +37 -0
- package/lib/components/i18n/locales/elder-locales-de-ch.module.d.ts +10 -0
- package/{src/lib/components/i18n/public_api.ts → lib/components/i18n/public_api.d.ts} +0 -0
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +68 -0
- package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +62 -0
- package/lib/components/iframes/elder-iframe.module.d.ts +27 -0
- package/lib/components/iframes/iframe-close.directive.d.ts +24 -0
- package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +36 -0
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +92 -0
- package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +48 -0
- package/lib/components/iframes/iframe.service.d.ts +25 -0
- package/lib/components/iframes/typed-event-message.d.ts +26 -0
- package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +30 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +63 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +19 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.d.ts +8 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +87 -0
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +78 -0
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +60 -0
- package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +19 -0
- package/lib/components/input/autocomplete/many/word-position-finder.d.ts +15 -0
- package/lib/components/input/public_api.d.ts +1 -0
- package/lib/components/labels/elder-labels.module.d.ts +15 -0
- package/lib/components/labels/labels-input/labels-input.component.d.ts +91 -0
- package/lib/components/measures/dimensions-input/elder-dimensions-input.component.d.ts +109 -0
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +30 -0
- package/lib/components/measures/elder-measures.module.d.ts +32 -0
- package/lib/components/measures/elder-quantity-transform.pipe.d.ts +22 -0
- package/lib/components/measures/elder-quantity.pipe.d.ts +40 -0
- package/lib/components/measures/elder-unit.service.d.ts +39 -0
- package/lib/components/measures/model/dimensions.d.ts +11 -0
- package/lib/components/measures/model/quantity.d.ts +7 -0
- package/lib/components/measures/model/unit-dimension.d.ts +12 -0
- package/lib/components/measures/model/unit-registry.d.ts +46 -0
- package/lib/components/measures/model/unit.d.ts +111 -0
- package/lib/components/measures/public_api.d.ts +7 -0
- package/lib/components/measures/quantity-input/elder-quantity-input.component.d.ts +94 -0
- package/lib/components/measures/util/elder-quantity.service.d.ts +116 -0
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +69 -0
- package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +18 -0
- package/lib/components/navigation/bread-crumbs/path/path.d.ts +31 -0
- package/lib/components/navigation/nav/elder-nav.module.d.ts +18 -0
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +45 -0
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +27 -0
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +6 -0
- package/{src/lib/components/navigation/public_api.ts → lib/components/navigation/public_api.d.ts} +0 -0
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +34 -0
- package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +23 -0
- package/lib/components/navigation/toolbar/elder-toolbar.service.d.ts +46 -0
- package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +42 -0
- package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +9 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +30 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.d.ts +47 -0
- package/lib/components/overlays/elder-overlay-origin.directive.d.ts +28 -0
- package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +36 -0
- package/lib/components/overlays/elder-overlay.component.d.ts +88 -0
- package/lib/components/overlays/elder-overlay.module.d.ts +14 -0
- package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-panel.module.d.ts +14 -0
- package/lib/components/panels/flat/elder-panel.component.d.ts +15 -0
- package/{src/lib/components/public_api.ts → lib/components/public_api.d.ts} +0 -0
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +45 -0
- package/lib/components/select/auto/elder-select-first-util.d.ts +22 -0
- package/lib/components/select/elder-select-base.d.ts +149 -0
- package/lib/components/select/elder-select-chip.directive.d.ts +23 -0
- package/lib/components/select/elder-select-on-tab.directive.d.ts +55 -0
- package/lib/components/select/elder-select-value.directive.d.ts +9 -0
- package/lib/components/select/elder-select.module.d.ts +48 -0
- package/lib/components/select/multi/elder-multi-select-base.d.ts +120 -0
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +105 -0
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +34 -0
- package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +42 -0
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +49 -0
- package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +32 -0
- package/lib/components/select/public_api.d.ts +5 -0
- package/lib/components/select/single/elder-clear-select.directive.d.ts +34 -0
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +155 -0
- package/lib/components/select/single/elder-select-form-field.d.ts +30 -0
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +78 -0
- package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +12 -0
- package/lib/components/select-list/elder-select-list.module.d.ts +15 -0
- package/lib/components/select-list/select-list/elder-select-list.component.d.ts +53 -0
- package/lib/components/select-list/select-list-item/elder-select-list-item.component.d.ts +57 -0
- package/lib/components/shell/drawers/drawer-outlet-binding.d.ts +36 -0
- package/lib/components/shell/drawers/elder-route-outlet-drawer.service.d.ts +55 -0
- package/lib/components/shell/drawers/elder-router-outlet.service.d.ts +64 -0
- package/lib/components/shell/elder-shell-slot.directive.d.ts +34 -0
- package/lib/components/shell/elder-shell.module.d.ts +30 -0
- package/lib/components/shell/elder-shell.service.d.ts +98 -0
- package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +43 -0
- package/lib/components/shell/shell/elder-shell.component.d.ts +99 -0
- package/lib/components/shell/shell-content-slot.d.ts +4 -0
- package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +66 -0
- package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +19 -0
- package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +100 -0
- package/lib/components/tabs/elder-tab.module.d.ts +12 -0
- package/lib/components/theme/elder-theme-applier.directive.d.ts +36 -0
- package/lib/components/theme/elder-theme-preference.service.d.ts +35 -0
- package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +37 -0
- package/lib/components/theme/elder-theme.directive.d.ts +38 -0
- package/lib/components/theme/elder-theme.module.d.ts +22 -0
- package/lib/components/theme/elder-theme.service.d.ts +51 -0
- package/lib/components/theme/known-elder-themes.d.ts +5 -0
- package/{src/lib/components/theme/public_api.ts → lib/components/theme/public_api.d.ts} +0 -0
- package/lib/components/theme/theme-spec.d.ts +18 -0
- package/lib/components/time/date-adapters/custom-date-adapter.d.ts +12 -0
- package/lib/components/time/duration/duration-bucket.d.ts +37 -0
- package/lib/components/time/duration/duration-format.d.ts +62 -0
- package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +58 -0
- package/lib/components/time/duration/iso-duration-str.d.ts +5 -0
- package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +60 -0
- package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +42 -0
- package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +84 -0
- package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +78 -0
- package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +47 -0
- package/lib/components/time/elder-time.module.d.ts +38 -0
- package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +71 -0
- package/lib/components/time/period/period-bucket.d.ts +21 -0
- package/lib/components/time/period/period-format.d.ts +43 -0
- package/lib/components/time/public_api.d.ts +7 -0
- package/lib/components/toasts/elder-toast.module.d.ts +12 -0
- package/lib/components/toasts/elder-toast.service.d.ts +96 -0
- package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +38 -0
- package/lib/components/toasts/toast-type.d.ts +5 -0
- package/lib/components/toasts/toast.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.module.d.ts +17 -0
- package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +38 -0
- package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +41 -0
- package/lib/components/viewers/elder-viewers.module.d.ts +9 -0
- package/lib/features/event-source/elder-event-source.service.d.ts +43 -0
- package/lib/features/event-source/public_api.d.ts +2 -0
- package/lib/features/event-source/reactive-event-source.d.ts +97 -0
- package/lib/features/kafent/access-token-provider.d.ts +12 -0
- package/lib/features/kafent/kafent-config.d.ts +32 -0
- package/lib/features/kafent/kafent-event-stream.d.ts +28 -0
- package/lib/features/kafent/kafent-event.d.ts +11 -0
- package/lib/features/kafent/kafent-event.service.d.ts +77 -0
- package/lib/features/kafent/kafent-live-event-request.d.ts +58 -0
- package/lib/features/kafent/kafent.module.d.ts +30 -0
- package/lib/features/kafent/sse/kafent-event-stream-sse.service.d.ts +56 -0
- package/lib/features/kafent/sse/kafent-topic-sse.d.ts +70 -0
- package/lib/features/public_api.d.ts +2 -0
- package/lib/pipes/bytes.pipe.d.ts +7 -0
- package/lib/pipes/elder-pipes.module.d.ts +46 -0
- package/lib/pipes/elder-repeat.pipe.d.ts +7 -0
- package/lib/pipes/elder-round.pipe.d.ts +23 -0
- package/lib/pipes/elder-safe-url.pipe.d.ts +10 -0
- package/lib/pipes/elder-truncate.pipe.d.ts +17 -0
- package/lib/pipes/iso-duration.pipe.d.ts +26 -0
- package/lib/pipes/iso-interval-parse.pipe.d.ts +30 -0
- package/lib/pipes/iso-interval.pipe.d.ts +43 -0
- package/lib/pipes/public_api.d.ts +1 -0
- package/lib/pipes/time-ago.pipe.d.ts +18 -0
- package/lib/pipes/time-duration.pipe.d.ts +13 -0
- package/lib/pipes/weight.pipe.d.ts +7 -0
- package/package.json +22 -6
- package/public_api.d.ts +4 -0
- package/theming/_elder-flex-layout.scss +28 -0
- package/.eslintrc.json +0 -44
- package/karma-ci.conf.js +0 -46
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -15
- package/ng-package.prod.json +0 -14
- package/src/lib/common/async/public_api.ts +0 -3
- package/src/lib/common/async/refreshing-entity.ts +0 -128
- package/src/lib/common/csv/csv-serializer.ts +0 -82
- package/src/lib/common/csv/csv-spec.ts +0 -148
- package/src/lib/common/csv/public_api.ts +0 -3
- package/src/lib/common/data/continuable-listing.ts +0 -35
- package/src/lib/common/data/data-context/data-context-active-page.ts +0 -184
- package/src/lib/common/data/data-context/data-context-auto-starter.ts +0 -108
- package/src/lib/common/data/data-context/data-context-base.ts +0 -406
- package/src/lib/common/data/data-context/data-context-builder.ts +0 -354
- package/src/lib/common/data/data-context/data-context-continuable-base.ts +0 -100
- package/src/lib/common/data/data-context/data-context-continuable-paged.ts +0 -191
- package/src/lib/common/data/data-context/data-context-continuable-token.ts +0 -177
- package/src/lib/common/data/data-context/data-context-life-cycle-binding.ts +0 -59
- package/src/lib/common/data/data-context/data-context-simple.ts +0 -80
- package/src/lib/common/data/data-context/data-context-source-auto-reloader.ts +0 -21
- package/src/lib/common/data/data-context/data-context-status.ts +0 -56
- package/src/lib/common/data/data-context/data-context.ts +0 -204
- package/src/lib/common/data/data-context/mat-table-data-context-binding.ts +0 -209
- package/src/lib/common/data/data-context/public_api.ts +0 -19
- package/src/lib/common/data/datasource/data-source-adapter.ts +0 -96
- package/src/lib/common/data/datasource/data-source-processor.ts +0 -318
- package/src/lib/common/data/datasource/data-source.ts +0 -87
- package/src/lib/common/data/datasource/entity-id-util.ts +0 -11
- package/src/lib/common/data/datasource/fetcher/delegate-data-source.ts +0 -230
- package/src/lib/common/data/datasource/local/local-list-data-source.ts +0 -161
- package/src/lib/common/data/datasource/local/local-paged-data-source.ts +0 -129
- package/src/lib/common/data/datasource/public_api.ts +0 -14
- package/src/lib/common/data/datasource/rest/public_api.ts +0 -2
- package/src/lib/common/data/datasource/rest/rest-client.ts +0 -474
- package/src/lib/common/data/entity-set-patch.ts +0 -210
- package/src/lib/common/data/field-comparator.ts +0 -122
- package/src/lib/common/data/filters/filter-context.spec.ts +0 -150
- package/src/lib/common/data/filters/filter-context.ts +0 -163
- package/src/lib/common/data/filters/filter.spec.ts +0 -136
- package/src/lib/common/data/filters/filter.ts +0 -137
- package/src/lib/common/data/http-params-builder.ts +0 -138
- package/src/lib/common/data/page.ts +0 -92
- package/src/lib/common/data/public_api.ts +0 -12
- package/src/lib/common/data/required-filter-evaluator.ts +0 -122
- package/src/lib/common/data/sort-context.ts +0 -90
- package/src/lib/common/data/sort.ts +0 -16
- package/src/lib/common/data/token-chunk-request.ts +0 -10
- package/src/lib/common/enums/elder-enum-translation.service.ts +0 -116
- package/src/lib/common/enums/public_api.ts +0 -3
- package/src/lib/common/errors/exception-detail.ts +0 -6
- package/src/lib/common/errors/standard-error-detail.ts +0 -27
- package/src/lib/common/format/bytes-format.ts +0 -25
- package/src/lib/common/format/bytes-per-second-format.ts +0 -44
- package/src/lib/common/forms/elder-entity-value-accessor.ts +0 -70
- package/src/lib/common/forms/elder-form-field-control-base.directive.ts +0 -240
- package/src/lib/common/forms/elder-from-field-base.ts +0 -113
- package/src/lib/common/forms/elder-from-field-entity-base.ts +0 -63
- package/src/lib/common/forms/elder-from-field-multi-entity-base.ts +0 -86
- package/src/lib/common/forms/elder-multi-entity-value-accessor.ts +0 -84
- package/src/lib/common/forms/form-field-base.component.ts +0 -152
- package/src/lib/common/forms/multi-model-base.component.ts +0 -40
- package/src/lib/common/forms/public_api.ts +0 -12
- package/src/lib/common/forms/template-composite-control.ts +0 -158
- package/src/lib/common/forms/value-accessor-base.ts +0 -165
- package/src/lib/common/forms/view-providers.ts +0 -34
- package/src/lib/common/http/http-client-builder.service.ts +0 -55
- package/src/lib/common/http/http-client-pristine.ts +0 -15
- package/src/lib/common/http/public_api.ts +0 -5
- package/src/lib/common/http/transfer/data-transfer-factory.ts +0 -145
- package/src/lib/common/http/transfer/data-transfer-progress-aggregate.ts +0 -74
- package/src/lib/common/http/transfer/data-transfer-progress.ts +0 -18
- package/src/lib/common/http/transfer/data-transfer-state.ts +0 -129
- package/src/lib/common/http/transfer/data-transfer-status.ts +0 -28
- package/src/lib/common/http/transfer/http-data-transfer.ts +0 -276
- package/src/lib/common/http/transfer/public_api.ts +0 -9
- package/src/lib/common/http/upload/file-upload-client.ts +0 -74
- package/src/lib/common/i18n/entity/impl/i18n-base.ts +0 -9
- package/src/lib/common/i18n/entity/impl/i18n-text.ts +0 -25
- package/src/lib/common/i18n/entity/language-tag.ts +0 -19
- package/src/lib/common/i18n/entity/locale.ts +0 -20
- package/src/lib/common/i18n/entity/localisation-picker.ts +0 -51
- package/src/lib/common/i18n/entity/localized.ts +0 -11
- package/src/lib/common/i18n/entity/public_api.ts +0 -7
- package/src/lib/common/i18n/public_api.ts +0 -3
- package/src/lib/common/json-map.ts +0 -26
- package/src/lib/common/objects.ts +0 -46
- package/src/lib/common/public_api.ts +0 -20
- package/src/lib/common/reactive-map.ts +0 -113
- package/src/lib/common/selection/selection-model.ts +0 -274
- package/src/lib/common/sets.ts +0 -48
- package/src/lib/common/suggestion-provider.ts +0 -28
- package/src/lib/common/templates/public_api.ts +0 -1
- package/src/lib/common/templates/template-slot-manager.ts +0 -153
- package/src/lib/common/time/date-util.ts +0 -120
- package/src/lib/common/time/interval.spec.ts +0 -53
- package/src/lib/common/time/interval.ts +0 -539
- package/src/lib/common/time/period-duration.ts +0 -147
- package/src/lib/common/time/public_api.ts +0 -6
- package/src/lib/common/time/time-util.ts +0 -54
- package/src/lib/common/url/elder-router.service.ts +0 -55
- package/src/lib/common/url/elder-url-fragment-params.service.ts +0 -139
- package/src/lib/common/url/public_api.ts +0 -5
- package/src/lib/common/url/url-query-params.ts +0 -169
- package/src/lib/common/utils/batcher.spec.ts +0 -39
- package/src/lib/common/utils/batcher.ts +0 -55
- package/src/lib/common/utils/collection-util.ts +0 -125
- package/src/lib/common/utils/filter-util.ts +0 -67
- package/src/lib/common/utils/next-number-util.ts +0 -102
- package/src/lib/common/utils/ng-zone-utils.ts +0 -18
- package/src/lib/common/utils/parse-util.ts +0 -17
- package/src/lib/common/utils/property-path-util.ts +0 -29
- package/src/lib/common/utils/query-list-binding.ts +0 -105
- package/src/lib/common/utils/sort-util.spec.ts +0 -41
- package/src/lib/common/utils/sort-util.ts +0 -38
- package/src/lib/common/utils/url-builder.spec.ts +0 -83
- package/src/lib/common/utils/url-builder.ts +0 -363
- package/src/lib/common/utils/uuid-util.ts +0 -34
- package/src/lib/common/utils/value-wrapper.ts +0 -25
- package/src/lib/components/access-denied/elder-access-denied.component.html +0 -12
- package/src/lib/components/access-denied/elder-access-denied.component.ts +0 -16
- package/src/lib/components/access-denied/elder-access-denied.module.ts +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.html +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.ts +0 -39
- package/src/lib/components/auditing/elder-audit.module.ts +0 -28
- package/src/lib/components/auditing/i-audited-entity.ts +0 -17
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.html +0 -3
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.ts +0 -21
- package/src/lib/components/button-group/elder-button-group.module.ts +0 -23
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.html +0 -26
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.ts +0 -148
- package/src/lib/components/card-organizer/card-organizer/elder-stack-card.directive.ts +0 -9
- package/src/lib/components/card-organizer/card-organizer-data.ts +0 -124
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.html +0 -70
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.ts +0 -250
- package/src/lib/components/card-organizer/card-stack.ts +0 -231
- package/src/lib/components/card-organizer/elder-card-organizer.module.ts +0 -37
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.css +0 -5
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.html +0 -16
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.ts +0 -14
- package/src/lib/components/cards/elder-card/elder-card.component.html +0 -21
- package/src/lib/components/cards/elder-card/elder-card.component.ts +0 -141
- package/src/lib/components/cards/elder-card/elder-card.module.ts +0 -47
- package/src/lib/components/connectivity/elder-connectivity.module.ts +0 -37
- package/src/lib/components/connectivity/elder-connectivity.service.ts +0 -83
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.html +0 -11
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.ts +0 -51
- package/src/lib/components/connectivity/public_api.ts +0 -3
- package/src/lib/components/containers/elder-containers.module.ts +0 -18
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.html +0 -14
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.ts +0 -30
- package/src/lib/components/containers/public_api.ts +0 -3
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.html +0 -5
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.ts +0 -105
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.service.ts +0 -56
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.ts +0 -68
- package/src/lib/components/csv/elder-csv-stream-exporter.ts +0 -192
- package/src/lib/components/csv/elder-csv.module.ts +0 -27
- package/src/lib/components/currency/elder-currency.module.ts +0 -18
- package/src/lib/components/currency/elder-currency.pipe.ts +0 -44
- package/src/lib/components/currency/elder-currency.service.ts +0 -83
- package/src/lib/components/currency/model/currency-code.ts +0 -37
- package/src/lib/components/currency/model/currency-unit-registry.ts +0 -39
- package/src/lib/components/currency/model/currency-unit.ts +0 -18
- package/src/lib/components/currency/model/currency.ts +0 -22
- package/src/lib/components/currency/public_api.ts +0 -7
- package/src/lib/components/data-transfer/elder-data-transfer.module.ts +0 -52
- package/src/lib/components/data-transfer/elder-data-transfer.service.ts +0 -120
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.html +0 -47
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.ts +0 -82
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.html +0 -26
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.ts +0 -46
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.html +0 -31
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.ts +0 -61
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.html +0 -24
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.ts +0 -41
- package/src/lib/components/data-view/base/data-view-options-provider-binding.ts +0 -99
- package/src/lib/components/data-view/base/elder-data-view-base.ts +0 -322
- package/src/lib/components/data-view/base/elder-data-view-options-provider.ts +0 -55
- package/src/lib/components/data-view/base/elder-data-view-options.ts +0 -89
- package/src/lib/components/data-view/base/elder-data-view.ts +0 -14
- package/src/lib/components/data-view/base/public_api.ts +0 -5
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.html +0 -50
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.ts +0 -51
- package/src/lib/components/data-view/common/elder-data-common.module.ts +0 -62
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.html +0 -113
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.ts +0 -181
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.html +0 -25
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.ts +0 -99
- package/src/lib/components/data-view/common/selection/data-context-selection.directive.ts +0 -127
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.html +0 -22
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.ts +0 -53
- package/src/lib/components/data-view/common/selection/master-selection-state.ts +0 -10
- package/src/lib/components/data-view/elder-data-view-interaction-mode.ts +0 -26
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.html +0 -158
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.ts +0 -359
- package/src/lib/components/data-view/grid/elder-grid.module.ts +0 -54
- package/src/lib/components/data-view/public_api.ts +0 -5
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.css +0 -0
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.html +0 -3
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.ts +0 -22
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.ts +0 -50
- package/src/lib/components/data-view/table/activation/elder-item-activator.ts +0 -6
- package/src/lib/components/data-view/table/activation/elder-table-activation-options.ts +0 -19
- package/src/lib/components/data-view/table/activation/elder-table-activation.directive.ts +0 -308
- package/src/lib/components/data-view/table/elder-number-cell.directive.ts +0 -26
- package/src/lib/components/data-view/table/elder-paginator-intl.ts +0 -92
- package/src/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.ts +0 -14
- package/src/lib/components/data-view/table/elder-table/elder-table.component.html +0 -99
- package/src/lib/components/data-view/table/elder-table/elder-table.component.ts +0 -388
- package/src/lib/components/data-view/table/elder-table-column.directive.ts +0 -29
- package/src/lib/components/data-view/table/elder-table-extension.directive.ts +0 -107
- package/src/lib/components/data-view/table/elder-table-root.directive.ts +0 -24
- package/src/lib/components/data-view/table/elder-table-row.directive.ts +0 -154
- package/src/lib/components/data-view/table/elder-table-sort.directive.ts +0 -16
- package/src/lib/components/data-view/table/elder-table.module.ts +0 -94
- package/src/lib/components/data-view/table/model/elder-column-layout.ts +0 -164
- package/src/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.ts +0 -115
- package/src/lib/components/data-view/table/model/elder-table-model-provider.ts +0 -49
- package/src/lib/components/data-view/table/model/elder-table-model-query-group.ts +0 -153
- package/src/lib/components/data-view/table/model/elder-table-model.ts +0 -221
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.html +0 -34
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.ts +0 -34
- package/src/lib/components/dialogs/elder-dialog-config.ts +0 -21
- package/src/lib/components/dialogs/elder-dialog.module.ts +0 -66
- package/src/lib/components/dialogs/elder-dialog.service.ts +0 -204
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.html +0 -36
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.ts +0 -44
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.html +0 -27
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.ts +0 -55
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.ts +0 -54
- package/src/lib/components/errors/elder-error.module.ts +0 -28
- package/src/lib/components/errors/error-util.ts +0 -107
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.html +0 -33
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.ts +0 -77
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.html +0 -14
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.ts +0 -57
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.module.ts +0 -23
- package/src/lib/components/files/blob-url.ts +0 -13
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.html +0 -62
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.ts +0 -304
- package/src/lib/components/files/elder-file-drop-zone.directive.ts +0 -116
- package/src/lib/components/files/elder-file-select.directive.ts +0 -184
- package/src/lib/components/files/elder-file.module.ts +0 -49
- package/src/lib/components/files/file-select/file-select.component.html +0 -9
- package/src/lib/components/files/file-select/file-select.component.ts +0 -61
- package/src/lib/components/files/file-upload/file-upload.component.html +0 -36
- package/src/lib/components/files/file-upload/file-upload.component.ts +0 -81
- package/src/lib/components/forms/clipboard/elder-clipboard.service.ts +0 -57
- package/src/lib/components/forms/directives/base/elder-class-hostbinding-base.ts +0 -55
- package/src/lib/components/forms/directives/elder-clipboard-put.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-delayed-focus.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-form-field-dense.directive.ts +0 -31
- package/src/lib/components/forms/directives/elder-form-field-label.directive.ts +0 -92
- package/src/lib/components/forms/directives/elder-form-field-no-hint.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-form-field-no-spinner.directive.ts +0 -32
- package/src/lib/components/forms/directives/elder-forms-directives.module.ts +0 -115
- package/src/lib/components/forms/directives/elder-input-pattern.directive.ts +0 -76
- package/src/lib/components/forms/directives/elder-key-event.directive.ts +0 -126
- package/src/lib/components/forms/directives/elder-max.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-min.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-next-focusable.directive.ts +0 -101
- package/src/lib/components/forms/directives/elder-plug-parent-form.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-stop-event-propagation.directive.ts +0 -22
- package/src/lib/components/forms/directives/elder-tab-focus-trap.directive.ts +0 -188
- package/src/lib/components/forms/directives/elder-touched.directive.ts +0 -25
- package/src/lib/components/forms/directives/elder-triple-state-checkbox.directive.ts +0 -132
- package/src/lib/components/forms/directives/validation/elder-multiple-of.validator.ts +0 -59
- package/src/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.ts +0 -80
- package/src/lib/components/forms/elder-forms.module.ts +0 -17
- package/src/lib/components/forms/public_api.ts +0 -3
- package/src/lib/components/forms/search/elder-search-context.directive.ts +0 -181
- package/src/lib/components/forms/search/elder-search-input.directive.ts +0 -244
- package/src/lib/components/forms/search/elder-search.module.ts +0 -48
- package/src/lib/components/forms/search/model/search-input-state.ts +0 -95
- package/src/lib/components/forms/search/model/search-input.ts +0 -30
- package/src/lib/components/forms/search/model/simple-search-input.ts +0 -69
- package/src/lib/components/forms/search/search-box/elder-search-box.component.html +0 -66
- package/src/lib/components/forms/search/search-box/elder-search-box.component.ts +0 -149
- package/src/lib/components/forms/search/search-box/elder-search-panel.component.ts +0 -10
- package/src/lib/components/global-search/elder-global-search.component.html +0 -51
- package/src/lib/components/global-search/elder-global-search.component.ts +0 -158
- package/src/lib/components/global-search/elder-global-search.module.ts +0 -27
- package/src/lib/components/global-search/elder-global-search.service.ts +0 -118
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.html +0 -19
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.ts +0 -102
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.module.ts +0 -20
- package/src/lib/components/graph/elder-progress-bar/sub-bar.ts +0 -6
- package/src/lib/components/headers/elder-header/elder-header.component.css +0 -0
- package/src/lib/components/headers/elder-header/elder-header.component.html +0 -4
- package/src/lib/components/headers/elder-header/elder-header.component.ts +0 -38
- package/src/lib/components/headers/elder-header.module.ts +0 -28
- package/src/lib/components/http-support/elder-http-client.service.ts +0 -82
- package/src/lib/components/http-support/public_api.ts +0 -3
- package/src/lib/components/i18n/entities/elder-i18n-entities.module.ts +0 -74
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.html +0 -40
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.ts +0 -176
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.html +0 -36
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.ts +0 -33
- package/src/lib/components/i18n/entities/elder-localized-input-dialog.service.ts +0 -35
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.html +0 -56
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.ts +0 -200
- package/src/lib/components/i18n/entities/elder-localized-text-column.directive.ts +0 -34
- package/src/lib/components/i18n/entities/elder-localized-texts.directive.ts +0 -62
- package/src/lib/components/i18n/entities/picker/i18n-pick-async.pipe.ts +0 -49
- package/src/lib/components/i18n/entities/picker/i18n-pick.pipe.ts +0 -36
- package/src/lib/components/i18n/entities/picker/localisation-picker.service.ts +0 -104
- package/src/lib/components/i18n/language/elder-language-config.ts +0 -18
- package/src/lib/components/i18n/language/elder-language-interceptor.ts +0 -94
- package/src/lib/components/i18n/language/elder-language.module.ts +0 -57
- package/src/lib/components/i18n/language/elder-language.service.ts +0 -139
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.html +0 -24
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.ts +0 -71
- package/src/lib/components/i18n/locales/elder-locales-de-ch.module.ts +0 -46
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.html +0 -6
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.ts +0 -173
- package/src/lib/components/iframes/data-view/data-view-iframe-adapter.directive.ts +0 -150
- package/src/lib/components/iframes/elder-iframe.module.ts +0 -61
- package/src/lib/components/iframes/iframe-close.directive.ts +0 -49
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.html +0 -9
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.ts +0 -63
- package/src/lib/components/iframes/iframe-host/iframe-host.component.html +0 -41
- package/src/lib/components/iframes/iframe-host/iframe-host.component.ts +0 -172
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.html +0 -8
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.ts +0 -102
- package/src/lib/components/iframes/iframe.service.ts +0 -59
- package/src/lib/components/iframes/typed-event-message.ts +0 -66
- package/src/lib/components/infinitescroll/elder-infinite-autocomplete.directive.ts +0 -79
- package/src/lib/components/infinitescroll/elder-infinite-scroll.directive.ts +0 -187
- package/src/lib/components/infinitescroll/elder-infinite-scroll.module.ts +0 -32
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.ts +0 -11
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.html +0 -66
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.ts +0 -233
- package/src/lib/components/input/autocomplete/elder-autocomplete-many.directive.ts +0 -244
- package/src/lib/components/input/autocomplete/elder-autocomplete.directive.ts +0 -145
- package/src/lib/components/input/autocomplete/elder-autocomplete.module.ts +0 -39
- package/src/lib/components/input/autocomplete/many/word-position-finder.spec.ts +0 -74
- package/src/lib/components/input/autocomplete/many/word-position-finder.ts +0 -76
- package/src/lib/components/input/public_api.ts +0 -3
- package/src/lib/components/labels/elder-labels.module.ts +0 -22
- package/src/lib/components/labels/labels-input/labels-input.component.html +0 -44
- package/src/lib/components/labels/labels-input/labels-input.component.ts +0 -255
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.html +0 -64
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.ts +0 -293
- package/src/lib/components/measures/directives/elder-unit-select.directive.ts +0 -70
- package/src/lib/components/measures/elder-measures.module.ts +0 -76
- package/src/lib/components/measures/elder-quantity-transform.pipe.ts +0 -46
- package/src/lib/components/measures/elder-quantity.pipe.ts +0 -102
- package/src/lib/components/measures/elder-unit.service.ts +0 -135
- package/src/lib/components/measures/model/dimensions.ts +0 -40
- package/src/lib/components/measures/model/quantity.ts +0 -19
- package/src/lib/components/measures/model/unit-dimension.ts +0 -16
- package/src/lib/components/measures/model/unit-registry.ts +0 -110
- package/src/lib/components/measures/model/unit.ts +0 -192
- package/src/lib/components/measures/public_api.ts +0 -9
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.html +0 -63
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.ts +0 -221
- package/src/lib/components/measures/util/elder-quantity.service.ts +0 -313
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.html +0 -82
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.ts +0 -221
- package/src/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.ts +0 -37
- package/src/lib/components/navigation/bread-crumbs/path/path.ts +0 -49
- package/src/lib/components/navigation/nav/elder-nav.module.ts +0 -35
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.html +0 -30
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.ts +0 -94
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.html +0 -86
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.ts +0 -78
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.html +0 -5
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.ts +0 -11
- package/src/lib/components/navigation/toolbar/elder-toolbar-column.directive.ts +0 -53
- package/src/lib/components/navigation/toolbar/elder-toolbar.module.ts +0 -51
- package/src/lib/components/navigation/toolbar/elder-toolbar.service.ts +0 -77
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.html +0 -47
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.ts +0 -78
- package/src/lib/components/navigation/toolbar/toolbar-column-position.ts +0 -20
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.html +0 -1
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.ts +0 -54
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.ts +0 -107
- package/src/lib/components/overlays/elder-overlay-origin.directive.ts +0 -45
- package/src/lib/components/overlays/elder-overlay-trigger.directive.ts +0 -71
- package/src/lib/components/overlays/elder-overlay.component.ts +0 -262
- package/src/lib/components/overlays/elder-overlay.module.ts +0 -29
- package/src/lib/components/panels/card-panel/elder-card-panel.component.html +0 -4
- package/src/lib/components/panels/card-panel/elder-card-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.html +0 -4
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-panel.module.ts +0 -28
- package/src/lib/components/panels/flat/elder-panel.component.html +0 -2
- package/src/lib/components/panels/flat/elder-panel.component.ts +0 -30
- package/src/lib/components/select/auto/elder-auto-select-first.directive.ts +0 -87
- package/src/lib/components/select/auto/elder-select-first-util.ts +0 -98
- package/src/lib/components/select/elder-select-base.ts +0 -355
- package/src/lib/components/select/elder-select-chip.directive.ts +0 -32
- package/src/lib/components/select/elder-select-on-tab.directive.ts +0 -150
- package/src/lib/components/select/elder-select-value.directive.ts +0 -9
- package/src/lib/components/select/elder-select.module.ts +0 -93
- package/src/lib/components/select/multi/elder-multi-select-base.ts +0 -451
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.html +0 -89
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.ts +0 -316
- package/src/lib/components/select/multi/elder-multi-select-form-field.ts +0 -80
- package/src/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.ts +0 -102
- package/src/lib/components/select/popup/selection-model-popup.directive.ts +0 -145
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.html +0 -18
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.ts +0 -56
- package/src/lib/components/select/public_api.ts +0 -5
- package/src/lib/components/select/single/elder-clear-select.directive.ts +0 -64
- package/src/lib/components/select/single/elder-select/elder-select.component.html +0 -90
- package/src/lib/components/select/single/elder-select/elder-select.component.ts +0 -530
- package/src/lib/components/select/single/elder-select-form-field.ts +0 -57
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.html +0 -13
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.ts +0 -169
- package/src/lib/components/select-chip-list/elder-chip-list-select.module.ts +0 -30
- package/src/lib/components/select-list/elder-select-list.module.ts +0 -26
- package/src/lib/components/select-list/select-list/elder-select-list.component.html +0 -5
- package/src/lib/components/select-list/select-list/elder-select-list.component.ts +0 -91
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.html +0 -29
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.ts +0 -135
- package/src/lib/components/shell/drawers/drawer-outlet-binding.ts +0 -73
- package/src/lib/components/shell/drawers/elder-route-outlet-drawer.service.ts +0 -137
- package/src/lib/components/shell/drawers/elder-router-outlet.service.ts +0 -145
- package/src/lib/components/shell/elder-shell-slot.directive.ts +0 -61
- package/src/lib/components/shell/elder-shell.module.ts +0 -68
- package/src/lib/components/shell/elder-shell.service.ts +0 -176
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.html +0 -25
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.ts +0 -89
- package/src/lib/components/shell/shell/elder-shell.component.html +0 -86
- package/src/lib/components/shell/shell/elder-shell.component.ts +0 -243
- package/src/lib/components/shell/shell-content-slot.ts +0 -8
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.html +0 -4
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.ts +0 -153
- package/src/lib/components/tabs/elder-tab/elder-tab.directive.ts +0 -31
- package/src/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.ts +0 -320
- package/src/lib/components/tabs/elder-tab.module.ts +0 -24
- package/src/lib/components/theme/elder-theme-applier.directive.ts +0 -73
- package/src/lib/components/theme/elder-theme-preference.service.ts +0 -79
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.html +0 -9
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.ts +0 -86
- package/src/lib/components/theme/elder-theme.directive.ts +0 -65
- package/src/lib/components/theme/elder-theme.module.ts +0 -52
- package/src/lib/components/theme/elder-theme.service.ts +0 -151
- package/src/lib/components/theme/known-elder-themes.ts +0 -17
- package/src/lib/components/theme/theme-spec.ts +0 -32
- package/src/lib/components/time/date-adapters/custom-date-adapter.ts +0 -34
- package/src/lib/components/time/duration/duration-bucket.ts +0 -143
- package/src/lib/components/time/duration/duration-format.ts +0 -346
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.html +0 -51
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.ts +0 -132
- package/src/lib/components/time/duration/iso-duration-str.ts +0 -5
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.html +0 -29
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.ts +0 -120
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.html +0 -15
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.ts +0 -93
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.html +0 -92
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.ts +0 -222
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.html +0 -40
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.ts +0 -213
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.html +0 -18
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.ts +0 -98
- package/src/lib/components/time/elder-time.module.ts +0 -89
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.html +0 -40
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.ts +0 -148
- package/src/lib/components/time/period/period-bucket.ts +0 -51
- package/src/lib/components/time/period/period-format.ts +0 -127
- package/src/lib/components/time/public_api.ts +0 -8
- package/src/lib/components/toasts/elder-toast.module.ts +0 -21
- package/src/lib/components/toasts/elder-toast.service.ts +0 -244
- package/src/lib/components/toasts/standard-toast/standard-toast.component.html +0 -34
- package/src/lib/components/toasts/standard-toast/standard-toast.component.ts +0 -80
- package/src/lib/components/toasts/toast-type.ts +0 -5
- package/src/lib/components/toasts/toast.ts +0 -12
- package/src/lib/components/url-fragment/elder-url-fragment.module.ts +0 -34
- package/src/lib/components/url-fragment/elder-url-fragment.ts +0 -10
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.html +0 -25
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.ts +0 -107
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.html +0 -1
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.ts +0 -81
- package/src/lib/components/viewers/elder-viewers.module.ts +0 -18
- package/src/lib/features/event-source/elder-event-source.service.ts +0 -71
- package/src/lib/features/event-source/public_api.ts +0 -3
- package/src/lib/features/event-source/reactive-event-source.ts +0 -252
- package/src/lib/features/kafent/access-token-provider.ts +0 -21
- package/src/lib/features/kafent/kafent-config.ts +0 -42
- package/src/lib/features/kafent/kafent-event-stream.ts +0 -48
- package/src/lib/features/kafent/kafent-event.service.ts +0 -128
- package/src/lib/features/kafent/kafent-event.ts +0 -14
- package/src/lib/features/kafent/kafent-live-event-request.ts +0 -75
- package/src/lib/features/kafent/kafent.module.ts +0 -61
- package/src/lib/features/kafent/sse/kafent-event-stream-sse.service.ts +0 -167
- package/src/lib/features/kafent/sse/kafent-topic-sse.ts +0 -145
- package/src/lib/features/public_api.ts +0 -4
- package/src/lib/i18n/elder-composite-translation-loader.ts +0 -14
- package/src/lib/i18n/elder-starter-translation-loader.ts +0 -20
- package/src/lib/pipes/bytes.pipe.ts +0 -18
- package/src/lib/pipes/elder-pipes.module.ts +0 -51
- package/src/lib/pipes/elder-repeat.pipe.ts +0 -16
- package/src/lib/pipes/elder-round.pipe.ts +0 -37
- package/src/lib/pipes/elder-safe-url.pipe.ts +0 -12
- package/src/lib/pipes/elder-truncate.pipe.ts +0 -45
- package/src/lib/pipes/iso-duration.pipe.ts +0 -64
- package/src/lib/pipes/iso-interval-parse.pipe.ts +0 -61
- package/src/lib/pipes/iso-interval.pipe.ts +0 -146
- package/src/lib/pipes/public_api.ts +0 -3
- package/src/lib/pipes/time-ago.pipe.ts +0 -88
- package/src/lib/pipes/time-duration.pipe.ts +0 -81
- package/src/lib/pipes/weight.pipe.ts +0 -45
- package/src/public_api.ts +0 -8
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -33
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
import { Duration, Period } from '@js-joda/core';
|
|
2
|
+
import { DurationBucket } from './duration-bucket';
|
|
3
|
+
import { PeriodDuration } from '../../../common/time/period-duration';
|
|
4
|
+
/**
|
|
5
|
+
* yyyy:MM:dd hh:mm:ss
|
|
6
|
+
*/
|
|
7
|
+
export class DurationFormat {
|
|
8
|
+
/***************************************************************************
|
|
9
|
+
* *
|
|
10
|
+
* Constructor *
|
|
11
|
+
* *
|
|
12
|
+
**************************************************************************/
|
|
13
|
+
constructor(formatStr, nanos, seconds, minutes, hours, days, months, years) {
|
|
14
|
+
this.formatStr = formatStr;
|
|
15
|
+
this.nanos = nanos;
|
|
16
|
+
this.seconds = seconds;
|
|
17
|
+
this.minutes = minutes;
|
|
18
|
+
this.hours = hours;
|
|
19
|
+
this.days = days;
|
|
20
|
+
this.months = months;
|
|
21
|
+
this.years = years;
|
|
22
|
+
}
|
|
23
|
+
static parse(format) {
|
|
24
|
+
if (format) {
|
|
25
|
+
if (format === DurationFormat.FORMAT_DYNAMIC) {
|
|
26
|
+
return DurationFormat.DYNAMIC;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return new DurationFormat(format, format.includes('nn'), format.includes('ss'), format.includes('mm'), format.includes('hh'), format.includes('dd'), format.includes('MM'), format.includes('yyyy'));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
return DurationFormat.DEFAULT;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/***************************************************************************
|
|
37
|
+
* *
|
|
38
|
+
* Public API *
|
|
39
|
+
* *
|
|
40
|
+
**************************************************************************/
|
|
41
|
+
bucket(periodDuration) {
|
|
42
|
+
if (!periodDuration) {
|
|
43
|
+
periodDuration = PeriodDuration.ofDuration(Duration.ZERO);
|
|
44
|
+
}
|
|
45
|
+
let period = periodDuration.period ?? Period.ZERO;
|
|
46
|
+
let duration = periodDuration.duration ?? Duration.ZERO;
|
|
47
|
+
let actualYears = null;
|
|
48
|
+
let actualMonths = null;
|
|
49
|
+
let actualDays = null;
|
|
50
|
+
let actualHours = null;
|
|
51
|
+
let actualMinutes = null;
|
|
52
|
+
let actualSeconds = null;
|
|
53
|
+
let actualNanos = null;
|
|
54
|
+
if (this.years) {
|
|
55
|
+
actualYears = period.years();
|
|
56
|
+
period = period.minusYears(actualYears);
|
|
57
|
+
if (this.yearsIsLast()) {
|
|
58
|
+
actualYears += this.remainderToYears(period, duration);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (this.months) {
|
|
62
|
+
actualMonths = period.months();
|
|
63
|
+
period = period.minusMonths(actualMonths);
|
|
64
|
+
if (this.monthsIsLast()) {
|
|
65
|
+
actualMonths += this.remainderToMonths(period, duration);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (this.days) {
|
|
69
|
+
const pdays = period.days();
|
|
70
|
+
const dDays = duration.toDays();
|
|
71
|
+
actualDays = pdays + dDays;
|
|
72
|
+
duration = duration.minusDays(dDays);
|
|
73
|
+
if (this.daysIsLast()) {
|
|
74
|
+
actualDays += this.remainderToDays(duration);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
duration = duration.plusDays(period.days()); // Transfer from Period to duration
|
|
79
|
+
}
|
|
80
|
+
if (this.hours) {
|
|
81
|
+
actualHours = duration.toHours();
|
|
82
|
+
duration = duration.minusHours(actualHours);
|
|
83
|
+
if (this.hoursIsLast()) {
|
|
84
|
+
actualHours += this.remainderToHours(duration);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
if (this.minutes) {
|
|
88
|
+
actualMinutes = duration.toMinutes();
|
|
89
|
+
duration = duration.minusMinutes(actualMinutes);
|
|
90
|
+
if (this.minutesIsLast()) {
|
|
91
|
+
actualMinutes += this.remainderToMinutes(duration);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (this.seconds) {
|
|
95
|
+
actualSeconds = duration.seconds();
|
|
96
|
+
duration = duration.minusSeconds(actualSeconds);
|
|
97
|
+
if (this.secondsIsLast()) {
|
|
98
|
+
actualSeconds += this.remainderToSeconds(duration);
|
|
99
|
+
duration = Duration.ZERO;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (this.nanos) {
|
|
103
|
+
actualNanos = duration.toNanos();
|
|
104
|
+
}
|
|
105
|
+
return new DurationBucket(actualNanos, actualSeconds, actualMinutes, actualHours, actualDays, actualMonths, actualYears);
|
|
106
|
+
}
|
|
107
|
+
format(duration) {
|
|
108
|
+
return this.formatDynamic(duration);
|
|
109
|
+
}
|
|
110
|
+
/***************************************************************************
|
|
111
|
+
* *
|
|
112
|
+
* Private methods *
|
|
113
|
+
* *
|
|
114
|
+
**************************************************************************/
|
|
115
|
+
secondsIsLast() {
|
|
116
|
+
return !this.nanos;
|
|
117
|
+
}
|
|
118
|
+
minutesIsLast() {
|
|
119
|
+
return this.secondsIsLast() && !this.seconds;
|
|
120
|
+
}
|
|
121
|
+
hoursIsLast() {
|
|
122
|
+
return this.minutesIsLast() && !this.minutes;
|
|
123
|
+
}
|
|
124
|
+
daysIsLast() {
|
|
125
|
+
return this.hoursIsLast() && !this.hours;
|
|
126
|
+
}
|
|
127
|
+
monthsIsLast() {
|
|
128
|
+
return this.daysIsLast() && !this.days;
|
|
129
|
+
}
|
|
130
|
+
yearsIsLast() {
|
|
131
|
+
return this.monthsIsLast() && !this.months;
|
|
132
|
+
}
|
|
133
|
+
remainderToSeconds(duration) {
|
|
134
|
+
let seconds = 0;
|
|
135
|
+
const nanos = duration?.toNanos();
|
|
136
|
+
if (nanos) {
|
|
137
|
+
seconds += nanos / 1000000000;
|
|
138
|
+
}
|
|
139
|
+
return seconds;
|
|
140
|
+
}
|
|
141
|
+
remainderToMinutes(duration) {
|
|
142
|
+
let minutes = 0;
|
|
143
|
+
const seconds = duration?.seconds();
|
|
144
|
+
if (seconds) {
|
|
145
|
+
minutes += seconds / 60;
|
|
146
|
+
duration = duration.minusSeconds(seconds);
|
|
147
|
+
}
|
|
148
|
+
minutes += this.remainderToSeconds(duration) / 60;
|
|
149
|
+
return minutes;
|
|
150
|
+
}
|
|
151
|
+
remainderToHours(duration) {
|
|
152
|
+
let hours = 0;
|
|
153
|
+
const minutes = duration?.toMinutes();
|
|
154
|
+
if (minutes) {
|
|
155
|
+
hours += minutes / 60;
|
|
156
|
+
duration = duration.minusMinutes(minutes);
|
|
157
|
+
}
|
|
158
|
+
hours += this.remainderToMinutes(duration) / 60;
|
|
159
|
+
return hours;
|
|
160
|
+
}
|
|
161
|
+
remainderToDays(duration) {
|
|
162
|
+
let days = 0;
|
|
163
|
+
const hours = duration?.toMinutes();
|
|
164
|
+
if (hours) {
|
|
165
|
+
days += hours / 24;
|
|
166
|
+
duration = duration.minusHours(hours);
|
|
167
|
+
}
|
|
168
|
+
days += this.remainderToHours(duration) / 24;
|
|
169
|
+
return days;
|
|
170
|
+
}
|
|
171
|
+
remainderToMonths(period, duration) {
|
|
172
|
+
let months = 0;
|
|
173
|
+
const pDays = period?.days();
|
|
174
|
+
if (pDays) {
|
|
175
|
+
months += pDays / 30; // Approximation
|
|
176
|
+
}
|
|
177
|
+
const dDays = duration?.toDays();
|
|
178
|
+
if (dDays) {
|
|
179
|
+
months += dDays / 30; // Approximation
|
|
180
|
+
duration = duration.minusDays(dDays);
|
|
181
|
+
}
|
|
182
|
+
months += this.remainderToDays(duration) / 30; // Approximation
|
|
183
|
+
return months;
|
|
184
|
+
}
|
|
185
|
+
remainderToYears(period, duration) {
|
|
186
|
+
let years = 0;
|
|
187
|
+
const months = period?.months();
|
|
188
|
+
if (months) {
|
|
189
|
+
years += months / 12;
|
|
190
|
+
period = period.minusMonths(months);
|
|
191
|
+
}
|
|
192
|
+
years += this.remainderToMonths(period, duration) / 12;
|
|
193
|
+
return years;
|
|
194
|
+
}
|
|
195
|
+
formatDynamic(duration) {
|
|
196
|
+
const bucket = this.bucket(duration);
|
|
197
|
+
const time = this.formatTime(bucket);
|
|
198
|
+
const period = this.formatPeriod(bucket);
|
|
199
|
+
if (period && time) {
|
|
200
|
+
return period + ' and ' + time;
|
|
201
|
+
}
|
|
202
|
+
else if (period) {
|
|
203
|
+
return period;
|
|
204
|
+
}
|
|
205
|
+
else if (time) {
|
|
206
|
+
return time;
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
return '-';
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
formatPeriod(bucket) {
|
|
213
|
+
const parts = [];
|
|
214
|
+
if (bucket.years) {
|
|
215
|
+
parts.push(this.ceilAndFormatNumber(bucket.years) + 'yr');
|
|
216
|
+
}
|
|
217
|
+
if (bucket.months) {
|
|
218
|
+
parts.push(this.ceilAndFormatNumber(bucket.months) + 'mo');
|
|
219
|
+
}
|
|
220
|
+
if (bucket.days) {
|
|
221
|
+
parts.push(this.ceilAndFormatNumber(bucket.days) + 'd');
|
|
222
|
+
}
|
|
223
|
+
return parts.join(', ');
|
|
224
|
+
}
|
|
225
|
+
formatTime(bucket) {
|
|
226
|
+
const parts = [];
|
|
227
|
+
if (bucket.hours) {
|
|
228
|
+
parts.push(this.ceilAndFormatNumber(bucket.hours) + 'h');
|
|
229
|
+
}
|
|
230
|
+
if (bucket.minutes) {
|
|
231
|
+
parts.push(this.ceilAndFormatNumber(bucket.minutes) + 'min');
|
|
232
|
+
}
|
|
233
|
+
if (bucket.seconds) {
|
|
234
|
+
parts.push(this.ceilAndFormatNumber(bucket.seconds) + 'sec');
|
|
235
|
+
}
|
|
236
|
+
if (bucket.nanos) {
|
|
237
|
+
parts.push(this.formatNanos(bucket.nanos));
|
|
238
|
+
}
|
|
239
|
+
return parts.join(' ');
|
|
240
|
+
}
|
|
241
|
+
ceilAndFormatNumber(number) {
|
|
242
|
+
return Math.ceil(number * 10) / 10;
|
|
243
|
+
}
|
|
244
|
+
formatNanos(nanoseconds) {
|
|
245
|
+
const microseconds = nanoseconds / 1000;
|
|
246
|
+
const milliseconds = microseconds / 1000;
|
|
247
|
+
if (nanoseconds <= 999) {
|
|
248
|
+
return this.formatNumber(nanoseconds, 0) + ' ns';
|
|
249
|
+
}
|
|
250
|
+
else if (microseconds <= 999) {
|
|
251
|
+
return this.formatNumber(microseconds, 0) + ' µs';
|
|
252
|
+
}
|
|
253
|
+
else if (milliseconds <= 999) {
|
|
254
|
+
return this.formatNumber(milliseconds, 0) + ' ms';
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
formatNumber(value, precision) {
|
|
258
|
+
return +value.toFixed(precision);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
/***************************************************************************
|
|
262
|
+
* *
|
|
263
|
+
* Static Builder *
|
|
264
|
+
* *
|
|
265
|
+
**************************************************************************/
|
|
266
|
+
DurationFormat.FORMAT_DYNAMIC = 'dynamic';
|
|
267
|
+
DurationFormat.FORMAT_HH_MM_SS = 'hh:mm:ss';
|
|
268
|
+
DurationFormat.FORMAT_HH_MM = 'hh:mm';
|
|
269
|
+
DurationFormat.DYNAMIC = new DurationFormat(DurationFormat.FORMAT_DYNAMIC, true, true, true, true, true, true, true);
|
|
270
|
+
DurationFormat.DEFAULT = DurationFormat.DYNAMIC;
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tZm9ybWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2R1cmF0aW9uL2R1cmF0aW9uLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUF5Q3pCOzs7O2dGQUk0RTtJQUU1RSxZQUNrQixTQUFpQixFQUNqQixLQUFjLEVBQ2QsT0FBZ0IsRUFDaEIsT0FBZ0IsRUFDaEIsS0FBYyxFQUNkLElBQWEsRUFDYixNQUFlLEVBQ2YsS0FBYztRQVBkLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBUztRQUNkLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUFTO1FBQ2QsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNiLFdBQU0sR0FBTixNQUFNLENBQVM7UUFDZixVQUFLLEdBQUwsS0FBSyxDQUFTO0lBRWhDLENBQUM7SUF0Q00sTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFjO1FBQ2hDLElBQUksTUFBTSxFQUFFO1lBRVYsSUFBSSxNQUFNLEtBQUssY0FBYyxDQUFDLGNBQWMsRUFBRTtnQkFDNUMsT0FBTyxjQUFjLENBQUMsT0FBTyxDQUFDO2FBQy9CO2lCQUFNO2dCQUNMLE9BQU8sSUFBSSxjQUFjLENBQ3ZCLE1BQU0sRUFDTixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUNy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SUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQ3hFLENBQUM7QUFFWSxzQkFBTyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0R1cmF0aW9uLCBQZXJpb2R9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IHtEdXJhdGlvbkJ1Y2tldH0gZnJvbSAnLi9kdXJhdGlvbi1idWNrZXQnO1xuaW1wb3J0IHtQZXJpb2REdXJhdGlvbn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvcGVyaW9kLWR1cmF0aW9uJztcblxuLyoqXG4gKiB5eXl5Ok1NOmRkIGhoOm1tOnNzXG4gKi9cbmV4cG9ydCBjbGFzcyBEdXJhdGlvbkZvcm1hdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFN0YXRpYyBCdWlsZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBGT1JNQVRfRFlOQU1JQyA9ICdkeW5hbWljJztcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZPUk1BVF9ISF9NTV9TUyA9ICdoaDptbTpzcyc7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRk9STUFUX0hIX01NID0gJ2hoOm1tJztcblxuICBwdWJsaWMgc3RhdGljIERZTkFNSUMgPSBuZXcgRHVyYXRpb25Gb3JtYXQoXG4gICAgRHVyYXRpb25Gb3JtYXQuRk9STUFUX0RZTkFNSUMsIHRydWUsIHRydWUsIHRydWUsIHRydWUsIHRydWUsIHRydWUsIHRydWVcbiAgKTtcblxuICBwdWJsaWMgc3RhdGljIERFRkFVTFQgPSBEdXJhdGlvbkZvcm1hdC5EWU5BTUlDO1xuXG4gIHB1YmxpYyBzdGF0aWMgcGFyc2UoZm9ybWF0OiBzdHJpbmcpOiBEdXJhdGlvbkZvcm1hdCB7XG4gICAgaWYgKGZvcm1hdCkge1xuXG4gICAgICBpZiAoZm9ybWF0ID09PSBEdXJhdGlvbkZvcm1hdC5GT1JNQVRfRFlOQU1JQykge1xuICAgICAgICByZXR1cm4gRHVyYXRpb25Gb3JtYXQuRFlOQU1JQztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBuZXcgRHVyYXRpb25Gb3JtYXQoXG4gICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgIGZvcm1hdC5pbmNsdWRlcygnbm4nKSxcbiAgICAgICAgICBmb3JtYXQuaW5jbHVkZXMoJ3NzJyksXG4gICAgICAgICAgZm9ybWF0LmluY2x1ZGVzKCdtbScpLFxuICAgICAgICAgIGZvcm1hdC5pbmNsdWRlcygnaGgnKSxcbiAgICAgICAgICBmb3JtYXQuaW5jbHVkZXMoJ2RkJyksXG4gICAgICAgICAgZm9ybWF0LmluY2x1ZGVzKCdNTScpLFxuICAgICAgICAgIGZvcm1hdC5pbmNsdWRlcygneXl5eScpLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRHVyYXRpb25Gb3JtYXQuREVGQVVMVDtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybWF0U3RyOiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IG5hbm9zOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBzZWNvbmRzOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBtaW51dGVzOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBob3VyczogYm9vbGVhbixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGF5czogYm9vbGVhbixcbiAgICBwdWJsaWMgcmVhZG9ubHkgbW9udGhzOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSB5ZWFyczogYm9vbGVhbixcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgYnVja2V0KHBlcmlvZER1cmF0aW9uOiBQZXJpb2REdXJhdGlvbik6IER1cmF0aW9uQnVja2V0IHtcblxuICAgIGlmICghcGVyaW9kRHVyYXRpb24pIHtcbiAgICAgIHBlcmlvZER1cmF0aW9uID0gUGVyaW9kRHVyYXRpb24ub2ZEdXJhdGlvbihEdXJhdGlvbi5aRVJPKTtcbiAgICB9XG5cbiAgICBsZXQgcGVyaW9kID0gcGVyaW9kRHVyYXRpb24ucGVyaW9kID8/IFBlcmlvZC5aRVJPO1xuICAgIGxldCBkdXJhdGlvbiA9IHBlcmlvZER1cmF0aW9uLmR1cmF0aW9uID8/IER1cmF0aW9uLlpFUk87XG5cbiAgICBsZXQgYWN0dWFsWWVhcnM6IG51bWJlciA9IG51bGw7XG4gICAgbGV0IGFjdHVhbE1vbnRoczogbnVtYmVyID0gbnVsbDtcbiAgICBsZXQgYWN0dWFsRGF5czogbnVtYmVyID0gbnVsbDtcbiAgICBsZXQgYWN0dWFsSG91cnM6IG51bWJlciA9IG51bGw7XG4gICAgbGV0IGFjdHVhbE1pbnV0ZXM6IG51bWJlciA9IG51bGw7XG4gICAgbGV0IGFjdHVhbFNlY29uZHM6IG51bWJlciA9IG51bGw7XG4gICAgbGV0IGFjdHVhbE5hbm9zOiBudW1iZXIgPSBudWxsO1xuXG4gICAgaWYgKHRoaXMueWVhcnMpIHtcbiAgICAgIGFjdHVhbFllYXJzID0gcGVyaW9kLnllYXJzKCk7XG4gICAgICBwZXJpb2QgPSBwZXJpb2QubWludXNZZWFycyhhY3R1YWxZZWFycyk7XG5cbiAgICAgIGlmICh0aGlzLnllYXJzSXNMYXN0KCkpIHtcbiAgICAgICAgYWN0dWFsWWVhcnMgKz0gdGhpcy5yZW1haW5kZXJUb1llYXJzKHBlcmlvZCwgZHVyYXRpb24pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLm1vbnRocykge1xuICAgICAgYWN0dWFsTW9udGhzID0gcGVyaW9kLm1vbnRocygpO1xuICAgICAgcGVyaW9kID0gcGVyaW9kLm1pbnVzTW9udGhzKGFjdHVhbE1vbnRocyk7XG5cbiAgICAgIGlmICh0aGlzLm1vbnRoc0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbE1vbnRocyArPSB0aGlzLnJlbWFpbmRlclRvTW9udGhzKHBlcmlvZCwgZHVyYXRpb24pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmRheXMpIHtcbiAgICAgIGNvbnN0IHBkYXlzID0gcGVyaW9kLmRheXMoKTtcbiAgICAgIGNvbnN0IGREYXlzID0gZHVyYXRpb24udG9EYXlzKCk7XG4gICAgICBhY3R1YWxEYXlzID0gcGRheXMgKyBkRGF5cztcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNEYXlzKGREYXlzKTtcblxuICAgICAgaWYgKHRoaXMuZGF5c0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbERheXMgKz0gdGhpcy5yZW1haW5kZXJUb0RheXMoZHVyYXRpb24pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLnBsdXNEYXlzKHBlcmlvZC5kYXlzKCkpOyAvLyBUcmFuc2ZlciBmcm9tIFBlcmlvZCB0byBkdXJhdGlvblxuICAgIH1cblxuICAgIGlmICh0aGlzLmhvdXJzKSB7XG4gICAgICBhY3R1YWxIb3VycyA9IGR1cmF0aW9uLnRvSG91cnMoKTtcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNIb3VycyhhY3R1YWxIb3Vycyk7XG5cbiAgICAgIGlmICh0aGlzLmhvdXJzSXNMYXN0KCkpIHtcbiAgICAgICAgYWN0dWFsSG91cnMgKz0gdGhpcy5yZW1haW5kZXJUb0hvdXJzKGR1cmF0aW9uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5taW51dGVzKSB7XG4gICAgICBhY3R1YWxNaW51dGVzID0gZHVyYXRpb24udG9NaW51dGVzKCk7XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLm1pbnVzTWludXRlcyhhY3R1YWxNaW51dGVzKTtcblxuICAgICAgaWYgKHRoaXMubWludXRlc0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbE1pbnV0ZXMgKz0gdGhpcy5yZW1haW5kZXJUb01pbnV0ZXMoZHVyYXRpb24pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnNlY29uZHMpIHtcbiAgICAgIGFjdHVhbFNlY29uZHMgPSBkdXJhdGlvbi5zZWNvbmRzKCk7XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLm1pbnVzU2Vjb25kcyhhY3R1YWxTZWNvbmRzKTtcblxuICAgICAgaWYgKHRoaXMuc2Vjb25kc0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbFNlY29uZHMgKz0gdGhpcy5yZW1haW5kZXJUb1NlY29uZHMoZHVyYXRpb24pO1xuICAgICAgICBkdXJhdGlvbiA9IER1cmF0aW9uLlpFUk87XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBpZiAodGhpcy5uYW5vcykge1xuICAgICAgYWN0dWFsTmFub3MgPSBkdXJhdGlvbi50b05hbm9zKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBEdXJhdGlvbkJ1Y2tldChcbiAgICAgIGFjdHVhbE5hbm9zLFxuICAgICAgYWN0dWFsU2Vjb25kcyxcbiAgICAgIGFjdHVhbE1pbnV0ZXMsXG4gICAgICBhY3R1YWxIb3VycyxcbiAgICAgIGFjdHVhbERheXMsXG4gICAgICBhY3R1YWxNb250aHMsXG4gICAgICBhY3R1YWxZZWFyc1xuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZm9ybWF0KGR1cmF0aW9uOiBQZXJpb2REdXJhdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybWF0RHluYW1pYyhkdXJhdGlvbik7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHNlY29uZHNJc0xhc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLm5hbm9zO1xuICB9XG5cbiAgcHJpdmF0ZSBtaW51dGVzSXNMYXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlY29uZHNJc0xhc3QoKSAmJiAhdGhpcy5zZWNvbmRzO1xuICB9XG5cbiAgcHJpdmF0ZSBob3Vyc0lzTGFzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5taW51dGVzSXNMYXN0KCkgJiYgIXRoaXMubWludXRlcztcbiAgfVxuXG4gIHByaXZhdGUgZGF5c0lzTGFzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5ob3Vyc0lzTGFzdCgpICYmICF0aGlzLmhvdXJzO1xuICB9XG5cbiAgcHJpdmF0ZSBtb250aHNJc0xhc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGF5c0lzTGFzdCgpICYmICF0aGlzLmRheXM7XG4gIH1cblxuICBwcml2YXRlIHllYXJzSXNMYXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1vbnRoc0lzTGFzdCgpICYmICF0aGlzLm1vbnRocztcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9TZWNvbmRzKGR1cmF0aW9uOiBEdXJhdGlvbik6IG51bWJlciB7XG4gICAgbGV0IHNlY29uZHMgPSAwO1xuICAgIGNvbnN0IG5hbm9zID0gZHVyYXRpb24/LnRvTmFub3MoKTtcbiAgICBpZiAobmFub3MpIHtcbiAgICAgIHNlY29uZHMgKz0gbmFub3MgLyAxMDAwMDAwMDAwO1xuICAgIH1cbiAgICByZXR1cm4gc2Vjb25kcztcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9NaW51dGVzKGR1cmF0aW9uOiBEdXJhdGlvbik6IG51bWJlciB7XG4gICAgbGV0IG1pbnV0ZXMgPSAwO1xuICAgIGNvbnN0IHNlY29uZHMgPSBkdXJhdGlvbj8uc2Vjb25kcygpO1xuICAgIGlmIChzZWNvbmRzKSB7XG4gICAgICBtaW51dGVzICs9IHNlY29uZHMgLyA2MDtcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNTZWNvbmRzKHNlY29uZHMpO1xuICAgIH1cbiAgICBtaW51dGVzICs9IHRoaXMucmVtYWluZGVyVG9TZWNvbmRzKGR1cmF0aW9uKSAvIDYwO1xuICAgIHJldHVybiBtaW51dGVzO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1haW5kZXJUb0hvdXJzKGR1cmF0aW9uOiBEdXJhdGlvbik6IG51bWJlciB7XG4gICAgbGV0IGhvdXJzID0gMDtcbiAgICBjb25zdCBtaW51dGVzID0gZHVyYXRpb24/LnRvTWludXRlcygpO1xuICAgIGlmIChtaW51dGVzKSB7XG4gICAgICBob3VycyArPSBtaW51dGVzIC8gNjA7XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLm1pbnVzTWludXRlcyhtaW51dGVzKTtcbiAgICB9XG4gICAgaG91cnMgKz0gdGhpcy5yZW1haW5kZXJUb01pbnV0ZXMoZHVyYXRpb24pIC8gNjA7XG4gICAgcmV0dXJuIGhvdXJzO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1haW5kZXJUb0RheXMoZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgZGF5cyA9IDA7XG4gICAgY29uc3QgaG91cnMgPSBkdXJhdGlvbj8udG9NaW51dGVzKCk7XG4gICAgaWYgKGhvdXJzKSB7XG4gICAgICBkYXlzICs9IGhvdXJzIC8gMjQ7XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLm1pbnVzSG91cnMoaG91cnMpO1xuICAgIH1cbiAgICBkYXlzICs9IHRoaXMucmVtYWluZGVyVG9Ib3VycyhkdXJhdGlvbikgLyAyNDtcbiAgICByZXR1cm4gZGF5cztcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9Nb250aHMocGVyaW9kOiBQZXJpb2QsIGR1cmF0aW9uOiBEdXJhdGlvbik6IG51bWJlciB7XG4gICAgbGV0IG1vbnRocyA9IDA7XG4gICAgY29uc3QgcERheXMgPSBwZXJpb2Q/LmRheXMoKTtcbiAgICBpZiAocERheXMpIHtcbiAgICAgIG1vbnRocyArPSBwRGF5cyAvIDMwOyAvLyBBcHByb3hpbWF0aW9uXG4gICAgfVxuICAgIGNvbnN0IGREYXlzID0gZHVyYXRpb24/LnRvRGF5cygpO1xuICAgIGlmIChkRGF5cykge1xuICAgICAgbW9udGhzICs9IGREYXlzIC8gMzA7IC8vIEFwcHJveGltYXRpb25cbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNEYXlzKGREYXlzKTtcbiAgICB9XG4gICAgbW9udGhzICs9IHRoaXMucmVtYWluZGVyVG9EYXlzKGR1cmF0aW9uKSAvIDMwOyAvLyBBcHByb3hpbWF0aW9uXG4gICAgcmV0dXJuIG1vbnRocztcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9ZZWFycyhwZXJpb2Q6IFBlcmlvZCwgZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgeWVhcnMgPSAwO1xuICAgIGNvbnN0IG1vbnRocyA9IHBlcmlvZD8ubW9udGhzKCk7XG4gICAgaWYgKG1vbnRocykge1xuICAgICAgeWVhcnMgKz0gbW9udGhzIC8gMTI7XG4gICAgICBwZXJpb2QgPSBwZXJpb2QubWludXNNb250aHMobW9udGhzKTtcbiAgICB9XG4gICAgeWVhcnMgKz0gdGhpcy5yZW1haW5kZXJUb01vbnRocyhwZXJpb2QsIGR1cmF0aW9uKSAvIDEyO1xuICAgIHJldHVybiB5ZWFycztcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0RHluYW1pYyhkdXJhdGlvbjogUGVyaW9kRHVyYXRpb24pOiBzdHJpbmcge1xuXG4gICAgY29uc3QgYnVja2V0ID0gdGhpcy5idWNrZXQoZHVyYXRpb24pO1xuXG4gICAgY29uc3QgdGltZSA9IHRoaXMuZm9ybWF0VGltZShidWNrZXQpO1xuICAgIGNvbnN0IHBlcmlvZCA9IHRoaXMuZm9ybWF0UGVyaW9kKGJ1Y2tldCk7XG5cbiAgICBpZiAocGVyaW9kICYmIHRpbWUpIHtcbiAgICAgIHJldHVybiBwZXJpb2QgKyAnIGFuZCAnICsgdGltZTtcbiAgICB9IGVsc2UgaWYgKHBlcmlvZCkge1xuICAgICAgcmV0dXJuIHBlcmlvZDtcbiAgICB9IGVsc2UgaWYgKHRpbWUpIHtcbiAgICAgIHJldHVybiB0aW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJy0nO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0UGVyaW9kKGJ1Y2tldDogRHVyYXRpb25CdWNrZXQpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcnRzOiBzdHJpbmdbXSA9IFtdO1xuXG5cbiAgICBpZiAoYnVja2V0LnllYXJzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQueWVhcnMpICsgJ3lyJyk7XG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5tb250aHMpIHtcbiAgICAgIHBhcnRzLnB1c2godGhpcy5jZWlsQW5kRm9ybWF0TnVtYmVyKGJ1Y2tldC5tb250aHMpICsgJ21vJyk7XG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5kYXlzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQuZGF5cykgKyAnZCcpO1xuICAgIH1cblxuICAgIHJldHVybiBwYXJ0cy5qb2luKCcsICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRUaW1lKGJ1Y2tldDogRHVyYXRpb25CdWNrZXQpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcnRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgaWYgKGJ1Y2tldC5ob3Vycykge1xuICAgICAgcGFydHMucHVzaCh0aGlzLmNlaWxBbmRGb3JtYXROdW1iZXIoYnVja2V0LmhvdXJzKSArICdoJyk7XG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5taW51dGVzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQubWludXRlcykgKyAnbWluJyk7XG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5zZWNvbmRzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQuc2Vjb25kcykgKyAnc2VjJyk7XG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5uYW5vcykge1xuICAgICAgcGFydHMucHVzaCh0aGlzLmZvcm1hdE5hbm9zKGJ1Y2tldC5uYW5vcykpO1xuICAgIH1cbiAgICByZXR1cm4gcGFydHMuam9pbignICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBjZWlsQW5kRm9ybWF0TnVtYmVyKG51bWJlcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5jZWlsKG51bWJlciAqIDEwKSAvIDEwO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXROYW5vcyhuYW5vc2Vjb25kczogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBtaWNyb3NlY29uZHMgPSBuYW5vc2Vjb25kcyAvIDEwMDA7XG4gICAgY29uc3QgbWlsbGlzZWNvbmRzID0gbWljcm9zZWNvbmRzIC8gMTAwMDtcblxuICAgIGlmIChuYW5vc2Vjb25kcyA8PSA5OTkpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdE51bWJlcihuYW5vc2Vjb25kcywgMCkgKyAnIG5zJztcbiAgICB9IGVsc2UgaWYgKG1pY3Jvc2Vjb25kcyA8PSA5OTkpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdE51bWJlcihtaWNyb3NlY29uZHMsIDApICsgJyDCtXMnO1xuICAgIH0gZWxzZSBpZiAobWlsbGlzZWNvbmRzIDw9IDk5OSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0TnVtYmVyKG1pbGxpc2Vjb25kcywgMCkgKyAnIG1zJztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdE51bWJlcih2YWx1ZTogbnVtYmVyLCBwcmVjaXNpb246IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuICt2YWx1ZS50b0ZpeGVkKHByZWNpc2lvbik7XG4gIH1cblxufVxuIl19
|
package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormFieldBaseComponent } from '../../../../common/forms/form-field-base.component';
|
|
3
|
+
import { Duration, Period } from '@js-joda/core';
|
|
4
|
+
import { buildFormIntegrationProviders } from '../../../../common/forms/template-composite-control';
|
|
5
|
+
import { ViewProviders } from '../../../../common/forms/view-providers';
|
|
6
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
7
|
+
import { map } from 'rxjs/operators';
|
|
8
|
+
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
9
|
+
import { DurationFormat } from '../duration-format';
|
|
10
|
+
import { PeriodDuration } from '../../../../common/time/period-duration';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/common";
|
|
13
|
+
import * as i2 from "@angular/forms";
|
|
14
|
+
import * as i3 from "@angular/material/form-field";
|
|
15
|
+
import * as i4 from "@angular/material/input";
|
|
16
|
+
import * as i5 from "../../../forms/directives/elder-form-field-no-spinner.directive";
|
|
17
|
+
class DurationInputContext {
|
|
18
|
+
constructor(bucket, format) {
|
|
19
|
+
this.bucket = bucket;
|
|
20
|
+
this.format = format;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export class ElderDurationInputComponent 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.durationFormat$ = new BehaviorSubject(DurationFormat.DEFAULT);
|
|
38
|
+
this.durationContext$ = combineLatest([this.value$, this.durationFormat$]).pipe(map(([duration, format]) => {
|
|
39
|
+
return new DurationInputContext(format.bucket(PeriodDuration.ofDuration(duration)), format);
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
/***************************************************************************
|
|
43
|
+
* *
|
|
44
|
+
* Life Cycle *
|
|
45
|
+
* *
|
|
46
|
+
**************************************************************************/
|
|
47
|
+
ngOnInit() {
|
|
48
|
+
}
|
|
49
|
+
/***************************************************************************
|
|
50
|
+
* *
|
|
51
|
+
* Properties *
|
|
52
|
+
* *
|
|
53
|
+
**************************************************************************/
|
|
54
|
+
get isoValueChange() {
|
|
55
|
+
return this.valueChange.pipe(map(duration => duration ? duration.toJSON() : null));
|
|
56
|
+
}
|
|
57
|
+
set isoValue(value) {
|
|
58
|
+
if (value) {
|
|
59
|
+
const pd = PeriodDuration.parse(value);
|
|
60
|
+
const duration = pd.duration ?? Duration.ZERO;
|
|
61
|
+
const period = pd.period ?? Period.ZERO;
|
|
62
|
+
this.value = duration.plusDays(period.days());
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
this.value = null;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* yyyy:MM:dd hh:mm:ss
|
|
70
|
+
* @param durationFormat
|
|
71
|
+
*/
|
|
72
|
+
set format(durationFormat) {
|
|
73
|
+
this.durationFormat = DurationFormat.parse(durationFormat);
|
|
74
|
+
}
|
|
75
|
+
set durationFormat(format) {
|
|
76
|
+
this.durationFormat$.next(format);
|
|
77
|
+
}
|
|
78
|
+
/***************************************************************************
|
|
79
|
+
* *
|
|
80
|
+
* Public API *
|
|
81
|
+
* *
|
|
82
|
+
**************************************************************************/
|
|
83
|
+
round(value) {
|
|
84
|
+
return Math.round(value);
|
|
85
|
+
}
|
|
86
|
+
onBucketChanged(bucket) {
|
|
87
|
+
this.value = bucket.toDuration();
|
|
88
|
+
}
|
|
89
|
+
valuesEquals(a, b) {
|
|
90
|
+
return (a && b)
|
|
91
|
+
? a.equals(b)
|
|
92
|
+
: a === b;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
ElderDurationInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDurationInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
+
ElderDurationInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderDurationInputComponent, selector: "elder-duration-input", inputs: { isoValue: "isoValue", format: "format", durationFormat: "durationFormat" }, outputs: { isoValueChange: "isoValueChange" }, providers: buildFormIntegrationProviders(ElderDurationInputComponent), usesInheritance: true, ngImport: i0, template: "<div class=\"layout-row flex-none\" *ngIf=\"durationContext$ | async as durationCtx\">\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.days\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-days'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.days)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withDays($event))\">\n <span matSuffix class=\"suffix\">d</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.hours\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-hours'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.hours)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withHours($event))\">\n <span matSuffix class=\"suffix\">h</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.minutes\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-minutes'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.minutes)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withMinutes($event))\">\n <span matSuffix class=\"suffix\">min</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.seconds\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-seconds'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.seconds)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withSeconds($event))\">\n <span matSuffix class=\"suffix\">sec</span>\n </mat-form-field>\n\n</div>\n", styles: [".duration-field{width:50px}.suffix{margin-left:4px;opacity:.7;font-size:12px}.duration-input{text-align:right}input.duration-input::-webkit-outer-spin-button,input.duration-input::-webkit-inner-spin-button{display:none}input.duration-input{-moz-appearance:textfield}\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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.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: "directive", type: i5.ElderFormFieldNoSpinnerDirective, selector: "input[elderNoSpinner]", inputs: ["elderNoSpinner"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDurationInputComponent, decorators: [{
|
|
98
|
+
type: Component,
|
|
99
|
+
args: [{ selector: 'elder-duration-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderDurationInputComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<div class=\"layout-row flex-none\" *ngIf=\"durationContext$ | async as durationCtx\">\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.days\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-days'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.days)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withDays($event))\">\n <span matSuffix class=\"suffix\">d</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.hours\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-hours'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.hours)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withHours($event))\">\n <span matSuffix class=\"suffix\">h</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.minutes\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-minutes'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.minutes)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withMinutes($event))\">\n <span matSuffix class=\"suffix\">min</span>\n </mat-form-field>\n\n <mat-form-field class=\"duration-field\" *ngIf=\"durationCtx.format.seconds\">\n <input matInput elderNoSpinner\n [name]=\"name + '-inner-seconds'\"\n type=\"number\" class=\"duration-input\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.seconds)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withSeconds($event))\">\n <span matSuffix class=\"suffix\">sec</span>\n </mat-form-field>\n\n</div>\n", styles: [".duration-field{width:50px}.suffix{margin-left:4px;opacity:.7;font-size:12px}.duration-input{text-align:right}input.duration-input::-webkit-outer-spin-button,input.duration-input::-webkit-inner-spin-button{display:none}input.duration-input{-moz-appearance:textfield}\n"] }]
|
|
100
|
+
}], ctorParameters: function () { return []; }, propDecorators: { isoValueChange: [{
|
|
101
|
+
type: Output
|
|
102
|
+
}], isoValue: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], format: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], durationFormat: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}] } });
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZHVyYXRpb24taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2R1cmF0aW9uL2VsZGVyLWR1cmF0aW9uLWlucHV0L2VsZGVyLWR1cmF0aW9uLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9kdXJhdGlvbi9lbGRlci1kdXJhdGlvbi1pbnB1dC9lbGRlci1kdXJhdGlvbi1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFVLHVCQUF1QixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0scURBQXFELENBQUM7QUFDbEcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFFaEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7OztBQUV2RSxNQUFN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aURDMUJ2RSxndUVBbURBLDRtRUR4QmlCLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzRGQUUxQywyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsNkJBQTZCLDZCQUE2QixpQkFDdEQsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7MEVBb0QxQyxjQUFjO3NCQUR4QixNQUFNO2dCQVFJLFFBQVE7c0JBRGxCLEtBQUs7Z0JBaUJLLE1BQU07c0JBRGhCLEtBQUs7Z0JBTUssY0FBYztzQkFEeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUZpZWxkQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2Zvcm1zL2Zvcm0tZmllbGQtYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHtEdXJhdGlvbiwgUGVyaW9kfSBmcm9tICdAanMtam9kYS9jb3JlJztcbmltcG9ydCB7YnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCc7XG5pbXBvcnQge1ZpZXdQcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy92aWV3LXByb3ZpZGVycyc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0R1cmF0aW9uQnVja2V0fSBmcm9tICcuLi9kdXJhdGlvbi1idWNrZXQnO1xuaW1wb3J0IHtEdXJhdGlvbkZvcm1hdH0gZnJvbSAnLi4vZHVyYXRpb24tZm9ybWF0JztcbmltcG9ydCB7UGVyaW9kRHVyYXRpb259IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi90aW1lL3BlcmlvZC1kdXJhdGlvbic7XG5cbmNsYXNzIER1cmF0aW9uSW5wdXRDb250ZXh0IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGJ1Y2tldDogRHVyYXRpb25CdWNrZXQsXG4gICAgcHVibGljIHJlYWRvbmx5IGZvcm1hdDogRHVyYXRpb25Gb3JtYXQsXG4gICkge1xuICB9XG59XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZHVyYXRpb24taW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItZHVyYXRpb24taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kdXJhdGlvbi1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVycyhFbGRlckR1cmF0aW9uSW5wdXRDb21wb25lbnQpLFxuICB2aWV3UHJvdmlkZXJzOiBbVmlld1Byb3ZpZGVycy5QYXJlbnRDb250cm9sQ29udGFpbmVyXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckR1cmF0aW9uSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRCYXNlQ29tcG9uZW50PER1cmF0aW9uPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGR1cmF0aW9uRm9ybWF0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RHVyYXRpb25Gb3JtYXQ+KER1cmF0aW9uRm9ybWF0LkRFRkFVTFQpO1xuICBwdWJsaWMgcmVhZG9ubHkgZHVyYXRpb25Db250ZXh0JDogT2JzZXJ2YWJsZTxEdXJhdGlvbklucHV0Q29udGV4dD47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmR1cmF0aW9uQ29udGV4dCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnZhbHVlJCwgdGhpcy5kdXJhdGlvbkZvcm1hdCRdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2R1cmF0aW9uLCBmb3JtYXRdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBEdXJhdGlvbklucHV0Q29udGV4dChcbiAgICAgICAgICAgIGZvcm1hdC5idWNrZXQoUGVyaW9kRHVyYXRpb24ub2ZEdXJhdGlvbihkdXJhdGlvbikpLFxuICAgICAgICAgICAgZm9ybWF0XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBpc29WYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGR1cmF0aW9uID0+IGR1cmF0aW9uID8gZHVyYXRpb24udG9KU09OKCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzb1ZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBwZCA9IFBlcmlvZER1cmF0aW9uLnBhcnNlKHZhbHVlKTtcbiAgICAgIGNvbnN0IGR1cmF0aW9uID0gcGQuZHVyYXRpb24gPz8gRHVyYXRpb24uWkVSTztcbiAgICAgIGNvbnN0IHBlcmlvZCA9IHBkLnBlcmlvZCA/PyBQZXJpb2QuWkVSTztcbiAgICAgIHRoaXMudmFsdWUgPSBkdXJhdGlvbi5wbHVzRGF5cyhwZXJpb2QuZGF5cygpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIHl5eXk6TU06ZGQgaGg6bW06c3NcbiAgICogQHBhcmFtIGR1cmF0aW9uRm9ybWF0XG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZvcm1hdChkdXJhdGlvbkZvcm1hdDogc3RyaW5nKSB7XG4gICAgdGhpcy5kdXJhdGlvbkZvcm1hdCA9IER1cmF0aW9uRm9ybWF0LnBhcnNlKGR1cmF0aW9uRm9ybWF0KTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZHVyYXRpb25Gb3JtYXQoZm9ybWF0OiBEdXJhdGlvbkZvcm1hdCkge1xuICAgIHRoaXMuZHVyYXRpb25Gb3JtYXQkLm5leHQoZm9ybWF0KTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyByb3VuZCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25CdWNrZXRDaGFuZ2VkKGJ1Y2tldDogRHVyYXRpb25CdWNrZXQpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gYnVja2V0LnRvRHVyYXRpb24oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWx1ZXNFcXVhbHMoYTogRHVyYXRpb24sIGI6IER1cmF0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChhICYmIGIpXG4gICAgICA/IGEuZXF1YWxzKGIpXG4gICAgICA6IGEgPT09IGI7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImxheW91dC1yb3cgZmxleC1ub25lXCIgKm5nSWY9XCJkdXJhdGlvbkNvbnRleHQkIHwgYXN5bmMgYXMgZHVyYXRpb25DdHhcIj5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkdXJhdGlvbi1maWVsZFwiICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0LmRheXNcIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgZWxkZXJOb1NwaW5uZXJcbiAgICAgICAgICAgW25hbWVdPVwibmFtZSArICctaW5uZXItZGF5cydcIlxuICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/LmRheXMpXCJcbiAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25CdWNrZXRDaGFuZ2VkKGR1cmF0aW9uQ3R4LmJ1Y2tldC53aXRoRGF5cygkZXZlbnQpKVwiPlxuICAgIDxzcGFuIG1hdFN1ZmZpeCBjbGFzcz1cInN1ZmZpeFwiPmQ8L3NwYW4+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZHVyYXRpb24tZmllbGRcIiAqbmdJZj1cImR1cmF0aW9uQ3R4LmZvcm1hdC5ob3Vyc1wiPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBlbGRlck5vU3Bpbm5lclxuICAgICAgICAgICBbbmFtZV09XCJuYW1lICsgJy1pbm5lci1ob3VycydcIlxuICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/LmhvdXJzKVwiXG4gICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQnVja2V0Q2hhbmdlZChkdXJhdGlvbkN0eC5idWNrZXQud2l0aEhvdXJzKCRldmVudCkpXCI+XG4gICAgPHNwYW4gbWF0U3VmZml4IGNsYXNzPVwic3VmZml4XCI+aDwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkdXJhdGlvbi1maWVsZFwiICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0Lm1pbnV0ZXNcIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgZWxkZXJOb1NwaW5uZXJcbiAgICAgICAgICAgW25hbWVdPVwibmFtZSArICctaW5uZXItbWludXRlcydcIlxuICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/Lm1pbnV0ZXMpXCJcbiAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25CdWNrZXRDaGFuZ2VkKGR1cmF0aW9uQ3R4LmJ1Y2tldC53aXRoTWludXRlcygkZXZlbnQpKVwiPlxuICAgIDxzcGFuIG1hdFN1ZmZpeCBjbGFzcz1cInN1ZmZpeFwiPm1pbjwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkdXJhdGlvbi1maWVsZFwiICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0LnNlY29uZHNcIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgZWxkZXJOb1NwaW5uZXJcbiAgICAgICAgICAgW25hbWVdPVwibmFtZSArICctaW5uZXItc2Vjb25kcydcIlxuICAgICAgICAgICB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/LnNlY29uZHMpXCJcbiAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25CdWNrZXRDaGFuZ2VkKGR1cmF0aW9uQ3R4LmJ1Y2tldC53aXRoU2Vjb25kcygkZXZlbnQpKVwiPlxuICAgIDxzcGFuIG1hdFN1ZmZpeCBjbGFzcz1cInN1ZmZpeFwiPnNlYzwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvLWR1cmF0aW9uLXN0ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9kdXJhdGlvbi9pc28tZHVyYXRpb24tc3RyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcHJlc2VudHMgYSByYXcgSVNPIGR1cmF0aW9uIGZvcm1hdHRlZCBzdHJpbmcgc3VjaCBhcyAnUDIzRFQyM0gnXG4gKiBBIHBhcnNlZCBkdXJhdGlvbiBpcyByZXByZXNlbnRlZCBieSBhIGpvZGEgRHVyYXRpb24gY2xhc3MuXG4gKi9cbmV4cG9ydCB0eXBlIElzb0R1cmF0aW9uU3RyID0gc3RyaW5nO1xuIl19
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, Output } from '@angular/core';
|
|
2
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
+
import { FormFieldBaseComponent } from '../../../common/forms/form-field-base.component';
|
|
4
|
+
import { LocalDate } 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 * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/forms";
|
|
11
|
+
import * as i2 from "@angular/material/button";
|
|
12
|
+
import * as i3 from "@angular/material/icon";
|
|
13
|
+
import * as i4 from "@angular/material/tooltip";
|
|
14
|
+
import * as i5 from "../elder-local-date-input/elder-local-date-input.component";
|
|
15
|
+
import * as i6 from "@angular/common";
|
|
16
|
+
export class ElderDateSwitcherComponent 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
|
+
/** If true, date picker functionality is enabled. */
|
|
31
|
+
this.datePickerEnabled = true;
|
|
32
|
+
/** If true, touch optimized mode of date picker is enabled. */
|
|
33
|
+
this.datePickerTouchUi = false;
|
|
34
|
+
this.updateValue(LocalDate.now());
|
|
35
|
+
}
|
|
36
|
+
/***************************************************************************
|
|
37
|
+
* *
|
|
38
|
+
* Life Cycle *
|
|
39
|
+
* *
|
|
40
|
+
**************************************************************************/
|
|
41
|
+
ngOnInit() { }
|
|
42
|
+
/***************************************************************************
|
|
43
|
+
* *
|
|
44
|
+
* Properties *
|
|
45
|
+
* *
|
|
46
|
+
**************************************************************************/
|
|
47
|
+
/**
|
|
48
|
+
* Emits date upon internal date change.
|
|
49
|
+
* @deprecated Migrate your code to use LocalDate
|
|
50
|
+
*/
|
|
51
|
+
get dateChange() {
|
|
52
|
+
return this.valueChange.pipe(map(localDate => localDate ? TimeUtil.localDateToDate(localDate) : null));
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* @param date
|
|
56
|
+
* @deprecated Migrate your code to use LocalDate
|
|
57
|
+
*/
|
|
58
|
+
set date(date) {
|
|
59
|
+
this.value = date ? TimeUtil.dateToLocalDate(date) : null;
|
|
60
|
+
}
|
|
61
|
+
/***************************************************************************
|
|
62
|
+
* *
|
|
63
|
+
* Public API *
|
|
64
|
+
* *
|
|
65
|
+
**************************************************************************/
|
|
66
|
+
previousDay() {
|
|
67
|
+
this.updateValue(this.value.minusDays(1));
|
|
68
|
+
}
|
|
69
|
+
nextDay() {
|
|
70
|
+
this.updateValue(this.value.plusDays(1));
|
|
71
|
+
}
|
|
72
|
+
today() {
|
|
73
|
+
this.updateValue(LocalDate.now());
|
|
74
|
+
}
|
|
75
|
+
/***************************************************************************
|
|
76
|
+
* *
|
|
77
|
+
* Private Methods *
|
|
78
|
+
* *
|
|
79
|
+
**************************************************************************/
|
|
80
|
+
valuesEquals(a, b) {
|
|
81
|
+
return (a && b)
|
|
82
|
+
? a.equals(b)
|
|
83
|
+
: a === b;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
ElderDateSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDateSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
87
|
+
ElderDateSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderDateSwitcherComponent, selector: "elder-date-switcher, ebs-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", date: "date" }, outputs: { dateChange: "dateChange" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "\n\n<form #frm=\"ngForm\" class=\"layout-row place-start-center gap-md\">\n\n <button mat-icon-button type=\"button\" (click)=\"previousDay()\">\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n\n <elder-local-date-input\n name=\"date\" #dateInput\n [value]=\"value$ | async\"\n (valueChange)=\"updateValue($event)\"\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [readonly]=\"true\" style=\"cursor: pointer\"\n (click)=\"dateInput.openDatePicker()\"\n ></elder-local-date-input>\n\n\n <button mat-icon-button type=\"button\" (click)=\"nextDay()\">\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\" (click)=\"today()\" matTooltip=\"Today\">\n <mat-icon>event</mat-icon>\n </button>\n\n</form>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.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: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i5.ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "datePickerEnabled", "datePickerTouchUi", "allowNull", "isoValue", "dateValue", "isoDateValue"], outputs: ["blur", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDateSwitcherComponent, decorators: [{
|
|
89
|
+
type: Component,
|
|
90
|
+
args: [{ selector: 'elder-date-switcher, ebs-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "\n\n<form #frm=\"ngForm\" class=\"layout-row place-start-center gap-md\">\n\n <button mat-icon-button type=\"button\" (click)=\"previousDay()\">\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n\n <elder-local-date-input\n name=\"date\" #dateInput\n [value]=\"value$ | async\"\n (valueChange)=\"updateValue($event)\"\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [readonly]=\"true\" style=\"cursor: pointer\"\n (click)=\"dateInput.openDatePicker()\"\n ></elder-local-date-input>\n\n\n <button mat-icon-button type=\"button\" (click)=\"nextDay()\">\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\" (click)=\"today()\" matTooltip=\"Today\">\n <mat-icon>event</mat-icon>\n </button>\n\n</form>\n" }]
|
|
91
|
+
}], ctorParameters: function () { return []; }, propDecorators: { datePickerEnabled: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], datePickerTouchUi: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], dateChange: [{
|
|
96
|
+
type: Output
|
|
97
|
+
}], date: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}] } });
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS1zd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RpbWUvZWxkZXItZGF0ZS1zd2l0Y2hlci9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXN3aXRjaGVyL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBZ0IsS0FBSyxFQUFVLE1BQU0sRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUVqSCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFbkUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFVbkMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHNCQUFpQztJQWtCL0U7Ozs7Z0ZBSTRFO0lBRTVFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUF2QlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFekUscURBQXFEO1FBRTlDLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUVoQywrREFBK0Q7UUFFeEQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBVS9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUUxQjs7OztnRkFJNEU7SUFFNUU7OztPQUdHO0lBQ0gsSUFDVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3pFLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxJQUFJLENBQUMsSUFBVTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsV0FBVztRQUNoQixJQUFJLENBQUMsV0FBVyxDQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUN4QixDQUFDO0lBQ0osQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsV0FBVyxDQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsV0FBVyxDQUNkLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFbEUsWUFBWSxDQUFDLENBQVksRUFBRSxDQUFZO1FBQy9DLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZCxDQUFDOzt3SEFqR1UsMEJBQTBCOzRHQUExQiwwQkFBMEIsa05BSDFCLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLGlEQ2hCdEUsd3pCQTZCQSxvNENEWmlCLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzRGQUUxQywwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0Usd0NBQXdDLG1CQUdqQyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLDZCQUE2Qiw0QkFBNEIsaUJBQ3JELENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzBFQWM5QyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBS0MsaUJBQWlCO3NCQUR2QixLQUFLO2dCQWlDSyxVQUFVO3NCQURwQixNQUFNO2dCQVlJLElBQUk7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyLCBNYXREYXRlcGlja2VySW5wdXRFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0Zvcm1GaWVsZEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9mb3JtLWZpZWxkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7TG9jYWxEYXRlfSBmcm9tICdAanMtam9kYS9jb3JlJztcbmltcG9ydCB7YnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCc7XG5pbXBvcnQge1ZpZXdQcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy92aWV3LXByb3ZpZGVycyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUaW1lVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRhdGUtc3dpdGNoZXIsIGVicy1kYXRlLXN3aXRjaGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IGJ1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzKEVsZGVyRGF0ZVN3aXRjaGVyQ29tcG9uZW50KSxcbiAgdmlld1Byb3ZpZGVyczogW1ZpZXdQcm92aWRlcnMuUGFyZW50Q29udHJvbENvbnRhaW5lcl1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJEYXRlU3dpdGNoZXJDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRCYXNlQ29tcG9uZW50PExvY2FsRGF0ZT4gaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICAvKiogSWYgdHJ1ZSwgZGF0ZSBwaWNrZXIgZnVuY3Rpb25hbGl0eSBpcyBlbmFibGVkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0ZVBpY2tlckVuYWJsZWQgPSB0cnVlO1xuXG4gIC8qKiBJZiB0cnVlLCB0b3VjaCBvcHRpbWl6ZWQgbW9kZSBvZiBkYXRlIHBpY2tlciBpcyBlbmFibGVkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0ZVBpY2tlclRvdWNoVWkgPSBmYWxzZTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudXBkYXRlVmFsdWUoTG9jYWxEYXRlLm5vdygpKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEVtaXRzIGRhdGUgdXBvbiBpbnRlcm5hbCBkYXRlIGNoYW5nZS5cbiAgICogQGRlcHJlY2F0ZWQgTWlncmF0ZSB5b3VyIGNvZGUgdG8gdXNlIExvY2FsRGF0ZVxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZGF0ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPERhdGU+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGxvY2FsRGF0ZSA9PiBsb2NhbERhdGUgPyBUaW1lVXRpbC5sb2NhbERhdGVUb0RhdGUobG9jYWxEYXRlKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKiBAZGVwcmVjYXRlZCBNaWdyYXRlIHlvdXIgY29kZSB0byB1c2UgTG9jYWxEYXRlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGUoZGF0ZTogRGF0ZSkge1xuICAgIHRoaXMudmFsdWUgPSBkYXRlID8gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKGRhdGUpIDogbnVsbDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBwcmV2aW91c0RheSgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgdGhpcy52YWx1ZS5taW51c0RheXMoMSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5leHREYXkoKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIHRoaXMudmFsdWUucGx1c0RheXMoMSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHRvZGF5KCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBMb2NhbERhdGUubm93KClcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBMb2NhbERhdGUsIGI6IExvY2FsRGF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoYSAmJiBiKVxuICAgICAgPyBhLmVxdWFscyhiKVxuICAgICAgOiBhID09PSBiO1xuICB9XG5cblxufVxuIiwiXG5cbjxmb3JtICNmcm09XCJuZ0Zvcm1cIiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGdhcC1tZFwiPlxuXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwicHJldmlvdXNEYXkoKVwiPlxuICAgIDxtYXQtaWNvbj5rZXlib2FyZF9hcnJvd19sZWZ0PC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG5cblxuICA8ZWxkZXItbG9jYWwtZGF0ZS1pbnB1dFxuICAgIG5hbWU9XCJkYXRlXCIgI2RhdGVJbnB1dFxuICAgIFt2YWx1ZV09XCJ2YWx1ZSQgfCBhc3luY1wiXG4gICAgKHZhbHVlQ2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIlxuICAgIFtkYXRlUGlja2VyRW5hYmxlZF09XCJmYWxzZVwiXG4gICAgW2RhdGVQaWNrZXJUb3VjaFVpXT1cImRhdGVQaWNrZXJUb3VjaFVpXCJcbiAgICBbcmVhZG9ubHldPVwidHJ1ZVwiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCJcbiAgICAoY2xpY2spPVwiZGF0ZUlucHV0Lm9wZW5EYXRlUGlja2VyKClcIlxuICA+PC9lbGRlci1sb2NhbC1kYXRlLWlucHV0PlxuXG5cbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJuZXh0RGF5KClcIj5cbiAgICA8bWF0LWljb24+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInRvZGF5KClcIiBtYXRUb29sdGlwPVwiVG9kYXlcIj5cbiAgICA8bWF0LWljb24+ZXZlbnQ8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cblxuPC9mb3JtPlxuIl19
|