@elderbyte/ngx-starter 18.15.2 → 19.0.0
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/fesm2022/elderbyte-ngx-starter.mjs +1097 -1125
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +1 -1
- package/lib/common/forms/elder-from-field-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-customizable-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-entity-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +1 -1
- package/lib/common/forms/form-field-base.component.d.ts +1 -1
- package/lib/common/forms/multi-model-base.component.d.ts +1 -1
- package/lib/common/forms/template-composite-control.d.ts +1 -1
- package/lib/common/forms/value-accessor-base.d.ts +1 -1
- package/lib/common/reactive-map.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-base.d.ts +1 -1
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +1 -1
- package/lib/components/iframes/typed-event-message.d.ts +1 -1
- package/lib/components/panels/elder-panel.module.d.ts +5 -7
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +1 -1
- package/lib/components/select/single/elder-select-form-field.d.ts +1 -1
- package/package.json +6 -8
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -3
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +3 -0
- package/esm2022/elderbyte-ngx-starter.mjs +0 -5
- package/esm2022/lib/common/arrays.mjs +0 -29
- package/esm2022/lib/common/async/public_api.mjs +0 -2
- package/esm2022/lib/common/async/refreshing-entity.mjs +0 -88
- package/esm2022/lib/common/csv/csv-serializer.mjs +0 -55
- package/esm2022/lib/common/csv/csv-spec.mjs +0 -99
- package/esm2022/lib/common/csv/public_api.mjs +0 -3
- package/esm2022/lib/common/data/continuable-listing.mjs +0 -10
- package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +0 -131
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +0 -78
- package/esm2022/lib/common/data/data-context/data-context-base.mjs +0 -339
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +0 -245
- package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +0 -67
- package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +0 -142
- package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +0 -146
- package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +0 -32
- package/esm2022/lib/common/data/data-context/data-context-simple.mjs +0 -61
- package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +0 -63
- package/esm2022/lib/common/data/data-context/data-context-status.mjs +0 -46
- package/esm2022/lib/common/data/data-context/data-context.mjs +0 -30
- package/esm2022/lib/common/data/data-context/indexed-entities.mjs +0 -153
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +0 -145
- package/esm2022/lib/common/data/data-context/public_api.mjs +0 -15
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +0 -59
- package/esm2022/lib/common/data/datasource/data-source-base.mjs +0 -38
- package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +0 -34
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +0 -198
- package/esm2022/lib/common/data/datasource/data-source.mjs +0 -23
- package/esm2022/lib/common/data/datasource/entity-id-util.mjs +0 -11
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +0 -127
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +0 -153
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +0 -75
- package/esm2022/lib/common/data/datasource/patch/deep-partial-patcher.mjs +0 -58
- package/esm2022/lib/common/data/datasource/public_api.mjs +0 -10
- package/esm2022/lib/common/data/datasource/rest/public_api.mjs +0 -2
- package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +0 -290
- package/esm2022/lib/common/data/entity-set-patch.mjs +0 -161
- package/esm2022/lib/common/data/field-comparator.mjs +0 -108
- package/esm2022/lib/common/data/filters/filter-commons.mjs +0 -12
- package/esm2022/lib/common/data/filters/filter-context.mjs +0 -135
- package/esm2022/lib/common/data/filters/filter-value.mjs +0 -2
- package/esm2022/lib/common/data/filters/filter.mjs +0 -104
- package/esm2022/lib/common/data/http-params-builder.mjs +0 -116
- package/esm2022/lib/common/data/page.mjs +0 -58
- package/esm2022/lib/common/data/public_api.mjs +0 -12
- package/esm2022/lib/common/data/required-filter-evaluator.mjs +0 -71
- package/esm2022/lib/common/data/sort-context.mjs +0 -73
- package/esm2022/lib/common/data/sort.mjs +0 -11
- package/esm2022/lib/common/data/token-chunk-request.mjs +0 -8
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +0 -84
- package/esm2022/lib/common/enums/public_api.mjs +0 -2
- package/esm2022/lib/common/errors/exception-detail.mjs +0 -2
- package/esm2022/lib/common/errors/public_api.mjs +0 -3
- package/esm2022/lib/common/errors/standard-error-detail.mjs +0 -2
- package/esm2022/lib/common/exceptions/public_api.mjs +0 -2
- package/esm2022/lib/common/exceptions/unreachable-case-error.mjs +0 -8
- package/esm2022/lib/common/format/bytes-format.mjs +0 -15
- package/esm2022/lib/common/format/bytes-per-second-format.mjs +0 -41
- package/esm2022/lib/common/format/curency-format-util.mjs +0 -43
- package/esm2022/lib/common/format/duration-format-util.mjs +0 -44
- package/esm2022/lib/common/format/iso-interval-format-util.mjs +0 -111
- package/esm2022/lib/common/format/public_api.mjs +0 -6
- package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +0 -188
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +0 -94
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +0 -52
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +0 -39
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +0 -47
- package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/form-field-base.component.mjs +0 -111
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +0 -32
- package/esm2022/lib/common/forms/public_api.mjs +0 -12
- package/esm2022/lib/common/forms/template-composite-control.mjs +0 -136
- package/esm2022/lib/common/forms/value-accessor-base.mjs +0 -146
- package/esm2022/lib/common/forms/view-providers.mjs +0 -30
- package/esm2022/lib/common/http/http-client-builder.service.mjs +0 -14
- package/esm2022/lib/common/http/http-client-pristine.mjs +0 -21
- package/esm2022/lib/common/http/public_api.mjs +0 -5
- package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +0 -77
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +0 -106
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +0 -60
- package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +0 -17
- package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +0 -82
- package/esm2022/lib/common/http/transfer/data-transfer-status.mjs +0 -24
- package/esm2022/lib/common/http/transfer/data-transfer.mjs +0 -2
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +0 -132
- package/esm2022/lib/common/http/transfer/public_api.mjs +0 -7
- package/esm2022/lib/common/http/upload/file-upload-client.mjs +0 -42
- package/esm2022/lib/common/i18n/entity/elder-multi-translate-loader.mjs +0 -53
- package/esm2022/lib/common/i18n/entity/impl/i18n-base.mjs +0 -6
- package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +0 -16
- package/esm2022/lib/common/i18n/entity/impl/translated.mjs +0 -15
- package/esm2022/lib/common/i18n/entity/language-tag.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/locale.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +0 -30
- package/esm2022/lib/common/i18n/entity/localized.mjs +0 -2
- package/esm2022/lib/common/i18n/entity/public_api.mjs +0 -10
- package/esm2022/lib/common/i18n/entity/translated-converter.mjs +0 -18
- package/esm2022/lib/common/i18n/entity/translated.mjs +0 -2
- package/esm2022/lib/common/i18n/public_api.mjs +0 -2
- package/esm2022/lib/common/json-map.mjs +0 -17
- package/esm2022/lib/common/objects.mjs +0 -43
- package/esm2022/lib/common/public_api.mjs +0 -23
- package/esm2022/lib/common/reactive-map.mjs +0 -69
- package/esm2022/lib/common/rxjs/operators/lazy-sample.mjs +0 -34
- package/esm2022/lib/common/rxjs/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/selection-model.mjs +0 -213
- package/esm2022/lib/common/sets.mjs +0 -45
- package/esm2022/lib/common/suggestion-provider.mjs +0 -12
- package/esm2022/lib/common/templates/template-slot-manager.mjs +0 -135
- package/esm2022/lib/common/theme-sizes.mjs +0 -2
- package/esm2022/lib/common/time/date-util.mjs +0 -91
- package/esm2022/lib/common/time/interval-coerce.mjs +0 -30
- package/esm2022/lib/common/time/interval.mjs +0 -442
- package/esm2022/lib/common/time/period-duration.mjs +0 -133
- package/esm2022/lib/common/time/public_api.mjs +0 -8
- package/esm2022/lib/common/time/temporal-plain-date-interval.mjs +0 -34
- package/esm2022/lib/common/time/temporal-util.mjs +0 -205
- package/esm2022/lib/common/time/time-util.mjs +0 -38
- package/esm2022/lib/common/url/elder-router.service.mjs +0 -54
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +0 -117
- package/esm2022/lib/common/url/public_api.mjs +0 -4
- package/esm2022/lib/common/url/url-query-params.mjs +0 -133
- package/esm2022/lib/common/utils/batcher.mjs +0 -35
- package/esm2022/lib/common/utils/collection-util.mjs +0 -111
- package/esm2022/lib/common/utils/filter-util.mjs +0 -133
- package/esm2022/lib/common/utils/focus-util.mjs +0 -23
- package/esm2022/lib/common/utils/input-utils.mjs +0 -6
- package/esm2022/lib/common/utils/next-number-util.mjs +0 -89
- package/esm2022/lib/common/utils/ng-zone-utils.mjs +0 -16
- package/esm2022/lib/common/utils/parse-util.mjs +0 -17
- package/esm2022/lib/common/utils/property-path-util.mjs +0 -28
- package/esm2022/lib/common/utils/public_api.mjs +0 -14
- package/esm2022/lib/common/utils/query-list-binding.mjs +0 -68
- package/esm2022/lib/common/utils/signal-input.mjs +0 -3
- package/esm2022/lib/common/utils/sort-util.mjs +0 -42
- package/esm2022/lib/common/utils/url-builder.mjs +0 -275
- package/esm2022/lib/common/utils/uuid-util.mjs +0 -28
- package/esm2022/lib/common/utils/value-wrapper.mjs +0 -19
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +0 -15
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +0 -20
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +0 -50
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +0 -40
- package/esm2022/lib/components/auditing/i-audited-entity.mjs +0 -3
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +0 -162
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +0 -124
- package/esm2022/lib/components/badge/elder-badge.module.mjs +0 -58
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +0 -13
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +0 -21
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +0 -118
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +0 -18
- package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +0 -93
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +0 -220
- package/esm2022/lib/components/card-organizer/card-stack.mjs +0 -176
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +0 -62
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +0 -17
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +0 -167
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +0 -71
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +0 -171
- package/esm2022/lib/components/chips/elder-chips.module.mjs +0 -45
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +0 -57
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +0 -61
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +0 -46
- package/esm2022/lib/components/connectivity/public_api.mjs +0 -3
- package/esm2022/lib/components/containers/elder-containers.module.mjs +0 -18
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +0 -24
- package/esm2022/lib/components/containers/public_api.mjs +0 -2
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +0 -77
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +0 -114
- package/esm2022/lib/components/csv/elder-csv.module.mjs +0 -24
- package/esm2022/lib/components/currency/elder-currency.module.mjs +0 -18
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +0 -37
- package/esm2022/lib/components/currency/model/currency-code.mjs +0 -38
- package/esm2022/lib/components/currency/model/currency-unit-registry.mjs +0 -30
- package/esm2022/lib/components/currency/model/currency-unit.mjs +0 -10
- package/esm2022/lib/components/currency/model/currency.mjs +0 -15
- package/esm2022/lib/components/currency/public_api.mjs +0 -7
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +0 -91
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +0 -93
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +0 -102
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +0 -34
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +0 -57
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +0 -34
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +0 -69
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +0 -265
- package/esm2022/lib/components/data-view/base/elder-data-view-options-provider.mjs +0 -44
- package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +0 -45
- package/esm2022/lib/components/data-view/base/elder-data-view.mjs +0 -3
- package/esm2022/lib/components/data-view/base/public_api.mjs +0 -6
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-context.mjs +0 -30
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-dc.directive.mjs +0 -55
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort.mjs +0 -68
- package/esm2022/lib/components/data-view/common/composite-sort/elder-composite-sort/elder-composite-sort.component.mjs +0 -101
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +0 -45
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +0 -125
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +0 -140
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +0 -100
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +0 -103
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +0 -36
- package/esm2022/lib/components/data-view/common/selection/master-selection-state.mjs +0 -10
- package/esm2022/lib/components/data-view/elder-data-view-interaction-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +0 -345
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +0 -91
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +0 -75
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +0 -50
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +0 -79
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +0 -20
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +0 -119
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +0 -116
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +0 -89
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +0 -12
- package/esm2022/lib/components/data-view/public_api.mjs +0 -7
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +0 -18
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +0 -104
- package/esm2022/lib/components/data-view/table/activation/activation-event-source.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/elder-activation-context.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +0 -114
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation-options.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +0 -315
- package/esm2022/lib/components/data-view/table/activation/item-activation-event.mjs +0 -8
- package/esm2022/lib/components/data-view/table/activation/item-activation-options.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/public_api.mjs +0 -8
- package/esm2022/lib/components/data-view/table/elder-center-cell.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +0 -30
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +0 -73
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +0 -21
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +0 -338
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +0 -18
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +0 -92
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +0 -26
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +0 -156
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +0 -184
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +0 -110
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +0 -85
- package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +0 -40
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +0 -89
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +0 -167
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +0 -37
- package/esm2022/lib/components/dialogs/elder-dialog-config.mjs +0 -3
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +0 -87
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +0 -199
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +0 -57
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +0 -43
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +0 -47
- package/esm2022/lib/components/errors/elder-error.module.mjs +0 -39
- package/esm2022/lib/components/errors/error-util.mjs +0 -94
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +0 -77
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +0 -55
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +0 -35
- package/esm2022/lib/components/files/blob-url.mjs +0 -10
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +0 -224
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +0 -44
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +0 -84
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +0 -145
- package/esm2022/lib/components/files/elder-file-select-input.mjs +0 -119
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +0 -167
- package/esm2022/lib/components/files/elder-file.module.mjs +0 -85
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +0 -54
- package/esm2022/lib/components/files/file-system-api.mjs +0 -100
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +0 -80
- package/esm2022/lib/components/files/listing/file-entry.mjs +0 -92
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +0 -64
- package/esm2022/lib/components/files/listing/file-listing-system-handle.mjs +0 -35
- package/esm2022/lib/components/files/listing/file-listing-webkit.mjs +0 -76
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +0 -51
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +0 -34
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox-controller.mjs +0 -97
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox-controller.mjs +0 -102
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +0 -38
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +0 -43
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +0 -83
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +0 -84
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +0 -42
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +0 -35
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +0 -142
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +0 -67
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +0 -78
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +0 -112
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +0 -102
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +0 -37
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +0 -30
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +0 -161
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +0 -28
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +0 -88
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +0 -47
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +0 -48
- package/esm2022/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +0 -6
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +0 -53
- package/esm2022/lib/components/forms/directives/validation/validation-message-strategy.mjs +0 -2
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +0 -112
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +0 -69
- package/esm2022/lib/components/forms/elder-forms.module.mjs +0 -22
- package/esm2022/lib/components/forms/public_api.mjs +0 -6
- package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +0 -73
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +0 -42
- package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +0 -88
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/simple-search-input.mjs +0 -50
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +0 -92
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +0 -166
- package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +0 -81
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +0 -256
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +0 -258
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +0 -115
- package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +0 -45
- package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +0 -2
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +0 -131
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +0 -24
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +0 -136
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +0 -47
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +0 -95
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +0 -90
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +0 -19
- package/esm2022/lib/components/graph/elder-progress-bar/sub-bar.mjs +0 -7
- package/esm2022/lib/components/graph/public_api.mjs +0 -2
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +0 -29
- package/esm2022/lib/components/headers/elder-header.module.mjs +0 -42
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +0 -63
- package/esm2022/lib/components/http-support/public_api.mjs +0 -2
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +0 -125
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +0 -157
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +0 -39
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +0 -30
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +0 -177
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +0 -56
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +0 -40
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +0 -74
- package/esm2022/lib/components/i18n/language/elder-language-config.mjs +0 -3
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +0 -70
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +0 -73
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +0 -120
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +0 -79
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +0 -53
- package/esm2022/lib/components/i18n/public_api.mjs +0 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +0 -129
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +0 -141
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +0 -106
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +0 -41
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +0 -51
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +0 -144
- package/esm2022/lib/components/iframes/iframe-messages.mjs +0 -5
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +0 -80
- package/esm2022/lib/components/iframes/iframe.service.mjs +0 -54
- package/esm2022/lib/components/iframes/typed-event-message.mjs +0 -42
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +0 -65
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +0 -166
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +0 -20
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +0 -9
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +0 -233
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +0 -202
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +0 -120
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +0 -61
- package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +0 -58
- package/esm2022/lib/components/input/public_api.mjs +0 -2
- package/esm2022/lib/components/labels/elder-labels.module.mjs +0 -50
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +0 -239
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +0 -268
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +0 -92
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +0 -65
- package/esm2022/lib/components/measures/elder-measures.module.mjs +0 -130
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +0 -31
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +0 -43
- package/esm2022/lib/components/measures/elder-unit.service.mjs +0 -113
- package/esm2022/lib/components/measures/model/dimensions.mjs +0 -17
- package/esm2022/lib/components/measures/model/quantity.mjs +0 -12
- package/esm2022/lib/components/measures/model/unit-dimension.mjs +0 -14
- package/esm2022/lib/components/measures/model/unit-registry.mjs +0 -81
- package/esm2022/lib/components/measures/model/unit.mjs +0 -143
- package/esm2022/lib/components/measures/public_api.mjs +0 -8
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +0 -44
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +0 -173
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +0 -84
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +0 -73
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +0 -341
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +0 -184
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +0 -59
- package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +0 -37
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +0 -60
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +0 -121
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +0 -174
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +0 -68
- package/esm2022/lib/components/navigation/public_api.mjs +0 -4
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +0 -48
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +0 -83
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +0 -68
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +0 -71
- package/esm2022/lib/components/navigation/toolbar/toolbar-column-position.mjs +0 -2
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +0 -39
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +0 -86
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +0 -44
- package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +0 -41
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +0 -73
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +0 -232
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +0 -35
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.module.mjs +0 -20
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.service.mjs +0 -129
- package/esm2022/lib/components/page/exit-guard/page-exit-lock/page-exit-lock.component.mjs +0 -25
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +0 -29
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +0 -26
- package/esm2022/lib/components/page/public_api.mjs +0 -2
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-panel.module.mjs +0 -60
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +0 -26
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +0 -70
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +0 -74
- package/esm2022/lib/components/public_api.mjs +0 -43
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +0 -63
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +0 -17
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +0 -95
- package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +0 -38
- package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +0 -64
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +0 -55
- package/esm2022/lib/components/select/elder-select-base.mjs +0 -333
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +0 -48
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +0 -139
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +0 -18
- package/esm2022/lib/components/select/elder-select.module.mjs +0 -229
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +0 -74
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +0 -148
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +0 -51
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +0 -61
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +0 -160
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +0 -16
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +0 -386
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +0 -87
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +0 -263
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/select-option-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +0 -274
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/select-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +0 -86
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +0 -34
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +0 -146
- package/esm2022/lib/components/select/multi/public_api.mjs +0 -5
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +0 -89
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +0 -126
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +0 -58
- package/esm2022/lib/components/select/public_api.mjs +0 -5
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +0 -60
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +0 -444
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +0 -45
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +0 -148
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +0 -46
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +0 -64
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +0 -119
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +0 -128
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +0 -47
- package/esm2022/lib/components/shell/elder-shell.module.mjs +0 -101
- package/esm2022/lib/components/shell/elder-shell.service.mjs +0 -142
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +0 -75
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +0 -238
- package/esm2022/lib/components/shell/shell-content-slot.mjs +0 -2
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +0 -137
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +0 -26
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +0 -257
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +0 -21
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +0 -62
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +0 -73
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +0 -74
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +0 -64
- package/esm2022/lib/components/theme/elder-theme.module.mjs +0 -68
- package/esm2022/lib/components/theme/elder-theme.service.mjs +0 -121
- package/esm2022/lib/components/theme/known-elder-themes.mjs +0 -6
- package/esm2022/lib/components/theme/public_api.mjs +0 -2
- package/esm2022/lib/components/theme/theme-spec.mjs +0 -11
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +0 -43
- package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +0 -28
- package/esm2022/lib/components/time/duration/duration-bucket.mjs +0 -68
- package/esm2022/lib/components/time/duration/duration-format.mjs +0 -271
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +0 -110
- package/esm2022/lib/components/time/duration/iso-duration-str.mjs +0 -2
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +0 -96
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +0 -98
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +0 -217
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-anchor-controller.mjs +0 -21
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-calendar-controller.mjs +0 -24
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-controller.mjs +0 -43
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-form-controller.mjs +0 -69
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-select-controller.mjs +0 -117
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-shift-controller.mjs +0 -44
- package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.component.mjs +0 -198
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-binding/elder-interval-picker-binding.directive.mjs +0 -41
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-toggle/elder-interval-picker-toggle.component.mjs +0 -144
- package/esm2022/lib/components/time/elder-interval-picker/manager/interval-picker-state-manager.mjs +0 -93
- package/esm2022/lib/components/time/elder-interval-picker/model/anchor-state.mjs +0 -54
- package/esm2022/lib/components/time/elder-interval-picker/model/interval-state.mjs +0 -37
- package/esm2022/lib/components/time/elder-interval-picker/model/smart-shift-state.mjs +0 -10
- package/esm2022/lib/components/time/elder-interval-picker/presenter/interval-picker-presenter.mjs +0 -96
- package/esm2022/lib/components/time/elder-interval-picker/util/interval-picker-util.mjs +0 -194
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +0 -268
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +0 -85
- package/esm2022/lib/components/time/elder-time.module.mjs +0 -154
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +0 -118
- package/esm2022/lib/components/time/period/period-bucket.mjs +0 -31
- package/esm2022/lib/components/time/period/period-format.mjs +0 -89
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +0 -39
- package/esm2022/lib/components/time/public_api.mjs +0 -8
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +0 -36
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +0 -170
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +0 -80
- package/esm2022/lib/components/toasts/toast-type.mjs +0 -7
- package/esm2022/lib/components/toasts/toast.mjs +0 -2
- package/esm2022/lib/components/url-fragment/elder-url-fragment.mjs +0 -9
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +0 -52
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +0 -95
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +0 -64
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +0 -18
- package/esm2022/lib/features/event-source/fetch/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +0 -219
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +0 -53
- package/esm2022/lib/features/event-source/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +0 -56
- package/esm2022/lib/features/event-source/standard/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +0 -199
- package/esm2022/lib/features/kafent/access-token-provider.mjs +0 -20
- package/esm2022/lib/features/kafent/kafent-config.mjs +0 -24
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +0 -25
- package/esm2022/lib/features/kafent/kafent-event.mjs +0 -3
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +0 -115
- package/esm2022/lib/features/kafent/kafent-live-event-request.mjs +0 -2
- package/esm2022/lib/features/kafent/kafent.module.mjs +0 -58
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +0 -131
- package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +0 -97
- package/esm2022/lib/features/public_api.mjs +0 -3
- package/esm2022/lib/pipes/bytes.pipe.mjs +0 -27
- package/esm2022/lib/pipes/elder-pipes.module.mjs +0 -114
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +0 -24
- package/esm2022/lib/pipes/elder-round.pipe.mjs +0 -36
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +0 -21
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +0 -49
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +0 -62
- package/esm2022/lib/pipes/public_api.mjs +0 -2
- package/esm2022/lib/pipes/time-ago.pipe.mjs +0 -110
- package/esm2022/lib/pipes/time-duration.pipe.mjs +0 -101
- package/esm2022/lib/pipes/weight.pipe.mjs +0 -60
- package/esm2022/public_api.mjs +0 -8
- package/lib/components/panels/flat/elder-panel.component.d.ts +0 -15
- package/src/lib/components/panels/flat/elder-panel.component.scss +0 -3
|
@@ -1,271 +0,0 @@
|
|
|
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
|
-
* Static Builder *
|
|
11
|
-
* *
|
|
12
|
-
**************************************************************************/
|
|
13
|
-
static { this.FORMAT_DYNAMIC = 'dynamic'; }
|
|
14
|
-
static { this.FORMAT_HH_MM_SS = 'hh:mm:ss'; }
|
|
15
|
-
static { this.FORMAT_HH_MM = 'hh:mm'; }
|
|
16
|
-
static { this.DYNAMIC = new DurationFormat(DurationFormat.FORMAT_DYNAMIC, true, true, true, true, true, true, true); }
|
|
17
|
-
static { this.DEFAULT = DurationFormat.DYNAMIC; }
|
|
18
|
-
static parse(format) {
|
|
19
|
-
if (format) {
|
|
20
|
-
if (format === DurationFormat.FORMAT_DYNAMIC) {
|
|
21
|
-
return DurationFormat.DYNAMIC;
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
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'));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
return DurationFormat.DEFAULT;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
/***************************************************************************
|
|
32
|
-
* *
|
|
33
|
-
* Constructor *
|
|
34
|
-
* *
|
|
35
|
-
**************************************************************************/
|
|
36
|
-
constructor(formatStr, nanos, seconds, minutes, hours, days, months, years) {
|
|
37
|
-
this.formatStr = formatStr;
|
|
38
|
-
this.nanos = nanos;
|
|
39
|
-
this.seconds = seconds;
|
|
40
|
-
this.minutes = minutes;
|
|
41
|
-
this.hours = hours;
|
|
42
|
-
this.days = days;
|
|
43
|
-
this.months = months;
|
|
44
|
-
this.years = years;
|
|
45
|
-
}
|
|
46
|
-
/***************************************************************************
|
|
47
|
-
* *
|
|
48
|
-
* Public API *
|
|
49
|
-
* *
|
|
50
|
-
**************************************************************************/
|
|
51
|
-
bucket(periodDuration) {
|
|
52
|
-
if (!periodDuration) {
|
|
53
|
-
periodDuration = PeriodDuration.ofDuration(Duration.ZERO);
|
|
54
|
-
}
|
|
55
|
-
let period = periodDuration.period ?? Period.ZERO;
|
|
56
|
-
let duration = periodDuration.duration ?? Duration.ZERO;
|
|
57
|
-
let actualYears = null;
|
|
58
|
-
let actualMonths = null;
|
|
59
|
-
let actualDays = null;
|
|
60
|
-
let actualHours = null;
|
|
61
|
-
let actualMinutes = null;
|
|
62
|
-
let actualSeconds = null;
|
|
63
|
-
let actualNanos = null;
|
|
64
|
-
if (this.years) {
|
|
65
|
-
actualYears = period.years();
|
|
66
|
-
period = period.minusYears(actualYears);
|
|
67
|
-
if (this.yearsIsLast()) {
|
|
68
|
-
actualYears += this.remainderToYears(period, duration);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
if (this.months) {
|
|
72
|
-
actualMonths = period.months();
|
|
73
|
-
period = period.minusMonths(actualMonths);
|
|
74
|
-
if (this.monthsIsLast()) {
|
|
75
|
-
actualMonths += this.remainderToMonths(period, duration);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
if (this.days) {
|
|
79
|
-
const pdays = period.days();
|
|
80
|
-
const dDays = duration.toDays();
|
|
81
|
-
actualDays = pdays + dDays;
|
|
82
|
-
duration = duration.minusDays(dDays);
|
|
83
|
-
if (this.daysIsLast()) {
|
|
84
|
-
actualDays += this.remainderToDays(duration);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
duration = duration.plusDays(period.days()); // Transfer from Period to duration
|
|
89
|
-
}
|
|
90
|
-
if (this.hours) {
|
|
91
|
-
actualHours = duration.toHours();
|
|
92
|
-
duration = duration.minusHours(actualHours);
|
|
93
|
-
if (this.hoursIsLast()) {
|
|
94
|
-
actualHours += this.remainderToHours(duration);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
if (this.minutes) {
|
|
98
|
-
actualMinutes = duration.toMinutes();
|
|
99
|
-
duration = duration.minusMinutes(actualMinutes);
|
|
100
|
-
if (this.minutesIsLast()) {
|
|
101
|
-
actualMinutes += this.remainderToMinutes(duration);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (this.seconds) {
|
|
105
|
-
actualSeconds = duration.seconds();
|
|
106
|
-
duration = duration.minusSeconds(actualSeconds);
|
|
107
|
-
if (this.secondsIsLast()) {
|
|
108
|
-
actualSeconds += this.remainderToSeconds(duration);
|
|
109
|
-
duration = Duration.ZERO;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
if (this.nanos) {
|
|
113
|
-
actualNanos = duration.toNanos();
|
|
114
|
-
}
|
|
115
|
-
return new DurationBucket(actualNanos, actualSeconds, actualMinutes, actualHours, actualDays, actualMonths, actualYears);
|
|
116
|
-
}
|
|
117
|
-
format(duration) {
|
|
118
|
-
return this.formatDynamic(duration);
|
|
119
|
-
}
|
|
120
|
-
/***************************************************************************
|
|
121
|
-
* *
|
|
122
|
-
* Private methods *
|
|
123
|
-
* *
|
|
124
|
-
**************************************************************************/
|
|
125
|
-
secondsIsLast() {
|
|
126
|
-
return !this.nanos;
|
|
127
|
-
}
|
|
128
|
-
minutesIsLast() {
|
|
129
|
-
return this.secondsIsLast() && !this.seconds;
|
|
130
|
-
}
|
|
131
|
-
hoursIsLast() {
|
|
132
|
-
return this.minutesIsLast() && !this.minutes;
|
|
133
|
-
}
|
|
134
|
-
daysIsLast() {
|
|
135
|
-
return this.hoursIsLast() && !this.hours;
|
|
136
|
-
}
|
|
137
|
-
monthsIsLast() {
|
|
138
|
-
return this.daysIsLast() && !this.days;
|
|
139
|
-
}
|
|
140
|
-
yearsIsLast() {
|
|
141
|
-
return this.monthsIsLast() && !this.months;
|
|
142
|
-
}
|
|
143
|
-
remainderToSeconds(duration) {
|
|
144
|
-
let seconds = 0;
|
|
145
|
-
const nanos = duration?.toNanos();
|
|
146
|
-
if (nanos) {
|
|
147
|
-
seconds += nanos / 1000000000;
|
|
148
|
-
}
|
|
149
|
-
return seconds;
|
|
150
|
-
}
|
|
151
|
-
remainderToMinutes(duration) {
|
|
152
|
-
let minutes = 0;
|
|
153
|
-
const seconds = duration?.seconds();
|
|
154
|
-
if (seconds) {
|
|
155
|
-
minutes += seconds / 60;
|
|
156
|
-
duration = duration.minusSeconds(seconds);
|
|
157
|
-
}
|
|
158
|
-
minutes += this.remainderToSeconds(duration) / 60;
|
|
159
|
-
return minutes;
|
|
160
|
-
}
|
|
161
|
-
remainderToHours(duration) {
|
|
162
|
-
let hours = 0;
|
|
163
|
-
const minutes = duration?.toMinutes();
|
|
164
|
-
if (minutes) {
|
|
165
|
-
hours += minutes / 60;
|
|
166
|
-
duration = duration.minusMinutes(minutes);
|
|
167
|
-
}
|
|
168
|
-
hours += this.remainderToMinutes(duration) / 60;
|
|
169
|
-
return hours;
|
|
170
|
-
}
|
|
171
|
-
remainderToDays(duration) {
|
|
172
|
-
let days = 0;
|
|
173
|
-
const hours = duration?.toMinutes();
|
|
174
|
-
if (hours) {
|
|
175
|
-
days += hours / 24;
|
|
176
|
-
duration = duration.minusHours(hours);
|
|
177
|
-
}
|
|
178
|
-
days += this.remainderToHours(duration) / 24;
|
|
179
|
-
return days;
|
|
180
|
-
}
|
|
181
|
-
remainderToMonths(period, duration) {
|
|
182
|
-
let months = 0;
|
|
183
|
-
const pDays = period?.days();
|
|
184
|
-
if (pDays) {
|
|
185
|
-
months += pDays / 30; // Approximation
|
|
186
|
-
}
|
|
187
|
-
const dDays = duration?.toDays();
|
|
188
|
-
if (dDays) {
|
|
189
|
-
months += dDays / 30; // Approximation
|
|
190
|
-
duration = duration.minusDays(dDays);
|
|
191
|
-
}
|
|
192
|
-
months += this.remainderToDays(duration) / 30; // Approximation
|
|
193
|
-
return months;
|
|
194
|
-
}
|
|
195
|
-
remainderToYears(period, duration) {
|
|
196
|
-
let years = 0;
|
|
197
|
-
const months = period?.months();
|
|
198
|
-
if (months) {
|
|
199
|
-
years += months / 12;
|
|
200
|
-
period = period.minusMonths(months);
|
|
201
|
-
}
|
|
202
|
-
years += this.remainderToMonths(period, duration) / 12;
|
|
203
|
-
return years;
|
|
204
|
-
}
|
|
205
|
-
formatDynamic(duration) {
|
|
206
|
-
const bucket = this.bucket(duration);
|
|
207
|
-
const time = this.formatTime(bucket);
|
|
208
|
-
const period = this.formatPeriod(bucket);
|
|
209
|
-
if (period && time) {
|
|
210
|
-
return period + ' and ' + time;
|
|
211
|
-
}
|
|
212
|
-
else if (period) {
|
|
213
|
-
return period;
|
|
214
|
-
}
|
|
215
|
-
else if (time) {
|
|
216
|
-
return time;
|
|
217
|
-
}
|
|
218
|
-
else {
|
|
219
|
-
return '-';
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
formatPeriod(bucket) {
|
|
223
|
-
const parts = [];
|
|
224
|
-
if (bucket.years) {
|
|
225
|
-
parts.push(this.ceilAndFormatNumber(bucket.years) + 'yr');
|
|
226
|
-
}
|
|
227
|
-
if (bucket.months) {
|
|
228
|
-
parts.push(this.ceilAndFormatNumber(bucket.months) + 'mo');
|
|
229
|
-
}
|
|
230
|
-
if (bucket.days) {
|
|
231
|
-
parts.push(this.ceilAndFormatNumber(bucket.days) + 'd');
|
|
232
|
-
}
|
|
233
|
-
return parts.join(', ');
|
|
234
|
-
}
|
|
235
|
-
formatTime(bucket) {
|
|
236
|
-
const parts = [];
|
|
237
|
-
if (bucket.hours) {
|
|
238
|
-
parts.push(this.ceilAndFormatNumber(bucket.hours) + 'h');
|
|
239
|
-
}
|
|
240
|
-
if (bucket.minutes) {
|
|
241
|
-
parts.push(this.ceilAndFormatNumber(bucket.minutes) + 'min');
|
|
242
|
-
}
|
|
243
|
-
if (bucket.seconds) {
|
|
244
|
-
parts.push(this.ceilAndFormatNumber(bucket.seconds) + 'sec');
|
|
245
|
-
}
|
|
246
|
-
if (bucket.nanos) {
|
|
247
|
-
parts.push(this.formatNanos(bucket.nanos));
|
|
248
|
-
}
|
|
249
|
-
return parts.join(' ');
|
|
250
|
-
}
|
|
251
|
-
ceilAndFormatNumber(number) {
|
|
252
|
-
return Math.ceil(number * 10) / 10;
|
|
253
|
-
}
|
|
254
|
-
formatNanos(nanoseconds) {
|
|
255
|
-
const microseconds = nanoseconds / 1000;
|
|
256
|
-
const milliseconds = microseconds / 1000;
|
|
257
|
-
if (nanoseconds <= 999) {
|
|
258
|
-
return this.formatNumber(nanoseconds, 0) + ' ns';
|
|
259
|
-
}
|
|
260
|
-
else if (microseconds <= 999) {
|
|
261
|
-
return this.formatNumber(microseconds, 0) + ' µs';
|
|
262
|
-
}
|
|
263
|
-
else if (milliseconds <= 999) {
|
|
264
|
-
return this.formatNumber(milliseconds, 0) + ' ms';
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
formatNumber(value, precision) {
|
|
268
|
-
return +value.toFixed(precision);
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tZm9ybWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2R1cmF0aW9uL2R1cmF0aW9uLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBRXJFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFDekI7Ozs7Z0ZBSTRFO2FBRXJELG1CQUFjLEdBQUcsU0FBUyxDQUFBO2FBRTFCLG9CQUFlLEdBQUcsVUFBVSxDQUFBO2FBQzVCLGlCQUFZLEdBQUcsT0FBTyxDQUFBO2FBRS9CLFlBQU8sR0FBRyxJQUFJLGNBQWMsQ0FDeEMsY0FBYyxDQUFDLGNBQWMsRUFDN0IsSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxDQUNMLENBQUE7YUFFYSxZQUFPLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQTtJQUV2QyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQWM7UUFDaEMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLElBQUksTUFBTSxLQUFLLGNBQWMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDN0MsT0FBTyxjQUFjLENBQUMsT0FBTyxDQUFBO1lBQy9CLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLElBQUksY0FBYyxDQUN2QixNQUFNLEVBQ04sTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFDckIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFDckIsTUFBTSxD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R0FBRyxJQUFJLENBQUE7UUFDdkMsTUFBTSxZQUFZLEdBQUcsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUV4QyxJQUFJLFdBQVcsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUN2QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQTtRQUNsRCxDQUFDO2FBQU0sSUFBSSxZQUFZLElBQUksR0FBRyxFQUFFLENBQUM7WUFDL0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUE7UUFDbkQsQ0FBQzthQUFNLElBQUksWUFBWSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQy9CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFBO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQWEsRUFBRSxTQUFpQjtRQUNuRCxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHVyYXRpb24sIFBlcmlvZCB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnXG5pbXBvcnQgeyBEdXJhdGlvbkJ1Y2tldCB9IGZyb20gJy4vZHVyYXRpb24tYnVja2V0J1xuaW1wb3J0IHsgUGVyaW9kRHVyYXRpb24gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdGltZS9wZXJpb2QtZHVyYXRpb24nXG5cbi8qKlxuICogeXl5eTpNTTpkZCBoaDptbTpzc1xuICovXG5leHBvcnQgY2xhc3MgRHVyYXRpb25Gb3JtYXQge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogU3RhdGljIEJ1aWxkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZPUk1BVF9EWU5BTUlDID0gJ2R5bmFtaWMnXG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBGT1JNQVRfSEhfTU1fU1MgPSAnaGg6bW06c3MnXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRk9STUFUX0hIX01NID0gJ2hoOm1tJ1xuXG4gIHB1YmxpYyBzdGF0aWMgRFlOQU1JQyA9IG5ldyBEdXJhdGlvbkZvcm1hdChcbiAgICBEdXJhdGlvbkZvcm1hdC5GT1JNQVRfRFlOQU1JQyxcbiAgICB0cnVlLFxuICAgIHRydWUsXG4gICAgdHJ1ZSxcbiAgICB0cnVlLFxuICAgIHRydWUsXG4gICAgdHJ1ZSxcbiAgICB0cnVlXG4gIClcblxuICBwdWJsaWMgc3RhdGljIERFRkFVTFQgPSBEdXJhdGlvbkZvcm1hdC5EWU5BTUlDXG5cbiAgcHVibGljIHN0YXRpYyBwYXJzZShmb3JtYXQ6IHN0cmluZyk6IER1cmF0aW9uRm9ybWF0IHtcbiAgICBpZiAoZm9ybWF0KSB7XG4gICAgICBpZiAoZm9ybWF0ID09PSBEdXJhdGlvbkZvcm1hdC5GT1JNQVRfRFlOQU1JQykge1xuICAgICAgICByZXR1cm4gRHVyYXRpb25Gb3JtYXQuRFlOQU1JQ1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEdXJhdGlvbkZvcm1hdChcbiAgICAgICAgICBmb3JtYXQsXG4gICAgICAgICAgZm9ybWF0LmluY2x1ZGVzKCdubicpLFxuICAgICAgICAgIGZvcm1hdC5pbmNsdWRlcygnc3MnKSxcbiAgICAgICAgICBmb3JtYXQuaW5jbHVkZXMoJ21tJyksXG4gICAgICAgICAgZm9ybWF0LmluY2x1ZGVzKCdoaCcpLFxuICAgICAgICAgIGZvcm1hdC5pbmNsdWRlcygnZGQnKSxcbiAgICAgICAgICBmb3JtYXQuaW5jbHVkZXMoJ01NJyksXG4gICAgICAgICAgZm9ybWF0LmluY2x1ZGVzKCd5eXl5JylcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRHVyYXRpb25Gb3JtYXQuREVGQVVMVFxuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBmb3JtYXRTdHI6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgbmFub3M6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IHNlY29uZHM6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IG1pbnV0ZXM6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IGhvdXJzOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBkYXlzOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBtb250aHM6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IHllYXJzOiBib29sZWFuXG4gICkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgYnVja2V0KHBlcmlvZER1cmF0aW9uOiBQZXJpb2REdXJhdGlvbik6IER1cmF0aW9uQnVja2V0IHtcbiAgICBpZiAoIXBlcmlvZER1cmF0aW9uKSB7XG4gICAgICBwZXJpb2REdXJhdGlvbiA9IFBlcmlvZER1cmF0aW9uLm9mRHVyYXRpb24oRHVyYXRpb24uWkVSTylcbiAgICB9XG5cbiAgICBsZXQgcGVyaW9kID0gcGVyaW9kRHVyYXRpb24ucGVyaW9kID8/IFBlcmlvZC5aRVJPXG4gICAgbGV0IGR1cmF0aW9uID0gcGVyaW9kRHVyYXRpb24uZHVyYXRpb24gPz8gRHVyYXRpb24uWkVST1xuXG4gICAgbGV0IGFjdHVhbFllYXJzOiBudW1iZXIgPSBudWxsXG4gICAgbGV0IGFjdHVhbE1vbnRoczogbnVtYmVyID0gbnVsbFxuICAgIGxldCBhY3R1YWxEYXlzOiBudW1iZXIgPSBudWxsXG4gICAgbGV0IGFjdHVhbEhvdXJzOiBudW1iZXIgPSBudWxsXG4gICAgbGV0IGFjdHVhbE1pbnV0ZXM6IG51bWJlciA9IG51bGxcbiAgICBsZXQgYWN0dWFsU2Vjb25kczogbnVtYmVyID0gbnVsbFxuICAgIGxldCBhY3R1YWxOYW5vczogbnVtYmVyID0gbnVsbFxuXG4gICAgaWYgKHRoaXMueWVhcnMpIHtcbiAgICAgIGFjdHVhbFllYXJzID0gcGVyaW9kLnllYXJzKClcbiAgICAgIHBlcmlvZCA9IHBlcmlvZC5taW51c1llYXJzKGFjdHVhbFllYXJzKVxuXG4gICAgICBpZiAodGhpcy55ZWFyc0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbFllYXJzICs9IHRoaXMucmVtYWluZGVyVG9ZZWFycyhwZXJpb2QsIGR1cmF0aW9uKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLm1vbnRocykge1xuICAgICAgYWN0dWFsTW9udGhzID0gcGVyaW9kLm1vbnRocygpXG4gICAgICBwZXJpb2QgPSBwZXJpb2QubWludXNNb250aHMoYWN0dWFsTW9udGhzKVxuXG4gICAgICBpZiAodGhpcy5tb250aHNJc0xhc3QoKSkge1xuICAgICAgICBhY3R1YWxNb250aHMgKz0gdGhpcy5yZW1haW5kZXJUb01vbnRocyhwZXJpb2QsIGR1cmF0aW9uKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmRheXMpIHtcbiAgICAgIGNvbnN0IHBkYXlzID0gcGVyaW9kLmRheXMoKVxuICAgICAgY29uc3QgZERheXMgPSBkdXJhdGlvbi50b0RheXMoKVxuICAgICAgYWN0dWFsRGF5cyA9IHBkYXlzICsgZERheXNcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNEYXlzKGREYXlzKVxuXG4gICAgICBpZiAodGhpcy5kYXlzSXNMYXN0KCkpIHtcbiAgICAgICAgYWN0dWFsRGF5cyArPSB0aGlzLnJlbWFpbmRlclRvRGF5cyhkdXJhdGlvbilcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZHVyYXRpb24gPSBkdXJhdGlvbi5wbHVzRGF5cyhwZXJpb2QuZGF5cygpKSAvLyBUcmFuc2ZlciBmcm9tIFBlcmlvZCB0byBkdXJhdGlvblxuICAgIH1cblxuICAgIGlmICh0aGlzLmhvdXJzKSB7XG4gICAgICBhY3R1YWxIb3VycyA9IGR1cmF0aW9uLnRvSG91cnMoKVxuICAgICAgZHVyYXRpb24gPSBkdXJhdGlvbi5taW51c0hvdXJzKGFjdHVhbEhvdXJzKVxuXG4gICAgICBpZiAodGhpcy5ob3Vyc0lzTGFzdCgpKSB7XG4gICAgICAgIGFjdHVhbEhvdXJzICs9IHRoaXMucmVtYWluZGVyVG9Ib3VycyhkdXJhdGlvbilcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5taW51dGVzKSB7XG4gICAgICBhY3R1YWxNaW51dGVzID0gZHVyYXRpb24udG9NaW51dGVzKClcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNNaW51dGVzKGFjdHVhbE1pbnV0ZXMpXG5cbiAgICAgIGlmICh0aGlzLm1pbnV0ZXNJc0xhc3QoKSkge1xuICAgICAgICBhY3R1YWxNaW51dGVzICs9IHRoaXMucmVtYWluZGVyVG9NaW51dGVzKGR1cmF0aW9uKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnNlY29uZHMpIHtcbiAgICAgIGFjdHVhbFNlY29uZHMgPSBkdXJhdGlvbi5zZWNvbmRzKClcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNTZWNvbmRzKGFjdHVhbFNlY29uZHMpXG5cbiAgICAgIGlmICh0aGlzLnNlY29uZHNJc0xhc3QoKSkge1xuICAgICAgICBhY3R1YWxTZWNvbmRzICs9IHRoaXMucmVtYWluZGVyVG9TZWNvbmRzKGR1cmF0aW9uKVxuICAgICAgICBkdXJhdGlvbiA9IER1cmF0aW9uLlpFUk9cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5uYW5vcykge1xuICAgICAgYWN0dWFsTmFub3MgPSBkdXJhdGlvbi50b05hbm9zKClcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IER1cmF0aW9uQnVja2V0KFxuICAgICAgYWN0dWFsTmFub3MsXG4gICAgICBhY3R1YWxTZWNvbmRzLFxuICAgICAgYWN0dWFsTWludXRlcyxcbiAgICAgIGFjdHVhbEhvdXJzLFxuICAgICAgYWN0dWFsRGF5cyxcbiAgICAgIGFjdHVhbE1vbnRocyxcbiAgICAgIGFjdHVhbFllYXJzXG4gICAgKVxuICB9XG5cbiAgcHVibGljIGZvcm1hdChkdXJhdGlvbjogUGVyaW9kRHVyYXRpb24pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZvcm1hdER5bmFtaWMoZHVyYXRpb24pXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHNlY29uZHNJc0xhc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLm5hbm9zXG4gIH1cblxuICBwcml2YXRlIG1pbnV0ZXNJc0xhc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2Vjb25kc0lzTGFzdCgpICYmICF0aGlzLnNlY29uZHNcbiAgfVxuXG4gIHByaXZhdGUgaG91cnNJc0xhc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWludXRlc0lzTGFzdCgpICYmICF0aGlzLm1pbnV0ZXNcbiAgfVxuXG4gIHByaXZhdGUgZGF5c0lzTGFzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5ob3Vyc0lzTGFzdCgpICYmICF0aGlzLmhvdXJzXG4gIH1cblxuICBwcml2YXRlIG1vbnRoc0lzTGFzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXlzSXNMYXN0KCkgJiYgIXRoaXMuZGF5c1xuICB9XG5cbiAgcHJpdmF0ZSB5ZWFyc0lzTGFzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tb250aHNJc0xhc3QoKSAmJiAhdGhpcy5tb250aHNcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9TZWNvbmRzKGR1cmF0aW9uOiBEdXJhdGlvbik6IG51bWJlciB7XG4gICAgbGV0IHNlY29uZHMgPSAwXG4gICAgY29uc3QgbmFub3MgPSBkdXJhdGlvbj8udG9OYW5vcygpXG4gICAgaWYgKG5hbm9zKSB7XG4gICAgICBzZWNvbmRzICs9IG5hbm9zIC8gMTAwMDAwMDAwMFxuICAgIH1cbiAgICByZXR1cm4gc2Vjb25kc1xuICB9XG5cbiAgcHJpdmF0ZSByZW1haW5kZXJUb01pbnV0ZXMoZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgbWludXRlcyA9IDBcbiAgICBjb25zdCBzZWNvbmRzID0gZHVyYXRpb24/LnNlY29uZHMoKVxuICAgIGlmIChzZWNvbmRzKSB7XG4gICAgICBtaW51dGVzICs9IHNlY29uZHMgLyA2MFxuICAgICAgZHVyYXRpb24gPSBkdXJhdGlvbi5taW51c1NlY29uZHMoc2Vjb25kcylcbiAgICB9XG4gICAgbWludXRlcyArPSB0aGlzLnJlbWFpbmRlclRvU2Vjb25kcyhkdXJhdGlvbikgLyA2MFxuICAgIHJldHVybiBtaW51dGVzXG4gIH1cblxuICBwcml2YXRlIHJlbWFpbmRlclRvSG91cnMoZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgaG91cnMgPSAwXG4gICAgY29uc3QgbWludXRlcyA9IGR1cmF0aW9uPy50b01pbnV0ZXMoKVxuICAgIGlmIChtaW51dGVzKSB7XG4gICAgICBob3VycyArPSBtaW51dGVzIC8gNjBcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNNaW51dGVzKG1pbnV0ZXMpXG4gICAgfVxuICAgIGhvdXJzICs9IHRoaXMucmVtYWluZGVyVG9NaW51dGVzKGR1cmF0aW9uKSAvIDYwXG4gICAgcmV0dXJuIGhvdXJzXG4gIH1cblxuICBwcml2YXRlIHJlbWFpbmRlclRvRGF5cyhkdXJhdGlvbjogRHVyYXRpb24pOiBudW1iZXIge1xuICAgIGxldCBkYXlzID0gMFxuICAgIGNvbnN0IGhvdXJzID0gZHVyYXRpb24/LnRvTWludXRlcygpXG4gICAgaWYgKGhvdXJzKSB7XG4gICAgICBkYXlzICs9IGhvdXJzIC8gMjRcbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNIb3Vycyhob3VycylcbiAgICB9XG4gICAgZGF5cyArPSB0aGlzLnJlbWFpbmRlclRvSG91cnMoZHVyYXRpb24pIC8gMjRcbiAgICByZXR1cm4gZGF5c1xuICB9XG5cbiAgcHJpdmF0ZSByZW1haW5kZXJUb01vbnRocyhwZXJpb2Q6IFBlcmlvZCwgZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgbW9udGhzID0gMFxuICAgIGNvbnN0IHBEYXlzID0gcGVyaW9kPy5kYXlzKClcbiAgICBpZiAocERheXMpIHtcbiAgICAgIG1vbnRocyArPSBwRGF5cyAvIDMwIC8vIEFwcHJveGltYXRpb25cbiAgICB9XG4gICAgY29uc3QgZERheXMgPSBkdXJhdGlvbj8udG9EYXlzKClcbiAgICBpZiAoZERheXMpIHtcbiAgICAgIG1vbnRocyArPSBkRGF5cyAvIDMwIC8vIEFwcHJveGltYXRpb25cbiAgICAgIGR1cmF0aW9uID0gZHVyYXRpb24ubWludXNEYXlzKGREYXlzKVxuICAgIH1cbiAgICBtb250aHMgKz0gdGhpcy5yZW1haW5kZXJUb0RheXMoZHVyYXRpb24pIC8gMzAgLy8gQXBwcm94aW1hdGlvblxuICAgIHJldHVybiBtb250aHNcbiAgfVxuXG4gIHByaXZhdGUgcmVtYWluZGVyVG9ZZWFycyhwZXJpb2Q6IFBlcmlvZCwgZHVyYXRpb246IER1cmF0aW9uKTogbnVtYmVyIHtcbiAgICBsZXQgeWVhcnMgPSAwXG4gICAgY29uc3QgbW9udGhzID0gcGVyaW9kPy5tb250aHMoKVxuICAgIGlmIChtb250aHMpIHtcbiAgICAgIHllYXJzICs9IG1vbnRocyAvIDEyXG4gICAgICBwZXJpb2QgPSBwZXJpb2QubWludXNNb250aHMobW9udGhzKVxuICAgIH1cbiAgICB5ZWFycyArPSB0aGlzLnJlbWFpbmRlclRvTW9udGhzKHBlcmlvZCwgZHVyYXRpb24pIC8gMTJcbiAgICByZXR1cm4geWVhcnNcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0RHluYW1pYyhkdXJhdGlvbjogUGVyaW9kRHVyYXRpb24pOiBzdHJpbmcge1xuICAgIGNvbnN0IGJ1Y2tldCA9IHRoaXMuYnVja2V0KGR1cmF0aW9uKVxuXG4gICAgY29uc3QgdGltZSA9IHRoaXMuZm9ybWF0VGltZShidWNrZXQpXG4gICAgY29uc3QgcGVyaW9kID0gdGhpcy5mb3JtYXRQZXJpb2QoYnVja2V0KVxuXG4gICAgaWYgKHBlcmlvZCAmJiB0aW1lKSB7XG4gICAgICByZXR1cm4gcGVyaW9kICsgJyBhbmQgJyArIHRpbWVcbiAgICB9IGVsc2UgaWYgKHBlcmlvZCkge1xuICAgICAgcmV0dXJuIHBlcmlvZFxuICAgIH0gZWxzZSBpZiAodGltZSkge1xuICAgICAgcmV0dXJuIHRpbWVcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICctJ1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0UGVyaW9kKGJ1Y2tldDogRHVyYXRpb25CdWNrZXQpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcnRzOiBzdHJpbmdbXSA9IFtdXG5cbiAgICBpZiAoYnVja2V0LnllYXJzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQueWVhcnMpICsgJ3lyJylcbiAgICB9XG5cbiAgICBpZiAoYnVja2V0Lm1vbnRocykge1xuICAgICAgcGFydHMucHVzaCh0aGlzLmNlaWxBbmRGb3JtYXROdW1iZXIoYnVja2V0Lm1vbnRocykgKyAnbW8nKVxuICAgIH1cblxuICAgIGlmIChidWNrZXQuZGF5cykge1xuICAgICAgcGFydHMucHVzaCh0aGlzLmNlaWxBbmRGb3JtYXROdW1iZXIoYnVja2V0LmRheXMpICsgJ2QnKVxuICAgIH1cblxuICAgIHJldHVybiBwYXJ0cy5qb2luKCcsICcpXG4gIH1cblxuICBwcml2YXRlIGZvcm1hdFRpbWUoYnVja2V0OiBEdXJhdGlvbkJ1Y2tldCk6IHN0cmluZyB7XG4gICAgY29uc3QgcGFydHM6IHN0cmluZ1tdID0gW11cblxuICAgIGlmIChidWNrZXQuaG91cnMpIHtcbiAgICAgIHBhcnRzLnB1c2godGhpcy5jZWlsQW5kRm9ybWF0TnVtYmVyKGJ1Y2tldC5ob3VycykgKyAnaCcpXG4gICAgfVxuXG4gICAgaWYgKGJ1Y2tldC5taW51dGVzKSB7XG4gICAgICBwYXJ0cy5wdXNoKHRoaXMuY2VpbEFuZEZvcm1hdE51bWJlcihidWNrZXQubWludXRlcykgKyAnbWluJylcbiAgICB9XG5cbiAgICBpZiAoYnVja2V0LnNlY29uZHMpIHtcbiAgICAgIHBhcnRzLnB1c2godGhpcy5jZWlsQW5kRm9ybWF0TnVtYmVyKGJ1Y2tldC5zZWNvbmRzKSArICdzZWMnKVxuICAgIH1cblxuICAgIGlmIChidWNrZXQubmFub3MpIHtcbiAgICAgIHBhcnRzLnB1c2godGhpcy5mb3JtYXROYW5vcyhidWNrZXQubmFub3MpKVxuICAgIH1cbiAgICByZXR1cm4gcGFydHMuam9pbignICcpXG4gIH1cblxuICBwcml2YXRlIGNlaWxBbmRGb3JtYXROdW1iZXIobnVtYmVyOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmNlaWwobnVtYmVyICogMTApIC8gMTBcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0TmFub3MobmFub3NlY29uZHM6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgbWljcm9zZWNvbmRzID0gbmFub3NlY29uZHMgLyAxMDAwXG4gICAgY29uc3QgbWlsbGlzZWNvbmRzID0gbWljcm9zZWNvbmRzIC8gMTAwMFxuXG4gICAgaWYgKG5hbm9zZWNvbmRzIDw9IDk5OSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0TnVtYmVyKG5hbm9zZWNvbmRzLCAwKSArICcgbnMnXG4gICAgfSBlbHNlIGlmIChtaWNyb3NlY29uZHMgPD0gOTk5KSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXROdW1iZXIobWljcm9zZWNvbmRzLCAwKSArICcgwrVzJ1xuICAgIH0gZWxzZSBpZiAobWlsbGlzZWNvbmRzIDw9IDk5OSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0TnVtYmVyKG1pbGxpc2Vjb25kcywgMCkgKyAnIG1zJ1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0TnVtYmVyKHZhbHVlOiBudW1iZXIsIHByZWNpc2lvbjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gK3ZhbHVlLnRvRml4ZWQocHJlY2lzaW9uKVxuICB9XG59XG4iXX0=
|
package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, Input, Output, } from '@angular/core';
|
|
2
|
-
import { Duration, Period } from '@js-joda/core';
|
|
3
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
4
|
-
import { map } from 'rxjs/operators';
|
|
5
|
-
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
6
|
-
import { DurationFormat } from '../duration-format';
|
|
7
|
-
import { PeriodDuration } from '../../../../common/time/period-duration';
|
|
8
|
-
import { ElderFormFieldControlBase } from '../../../../common/forms/elder-form-field-control-base.directive';
|
|
9
|
-
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
10
|
-
import { FormsModule } from '@angular/forms';
|
|
11
|
-
import { ElderFormFieldNoSpinnerDirective } from '../../../forms/directives/elder-form-field-no-spinner.directive';
|
|
12
|
-
import { MatInput } from '@angular/material/input';
|
|
13
|
-
import { NgIf, AsyncPipe } from '@angular/common';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@angular/forms";
|
|
16
|
-
class DurationInputContext {
|
|
17
|
-
constructor(bucket, format) {
|
|
18
|
-
this.bucket = bucket;
|
|
19
|
-
this.format = format;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
export class ElderDurationInputComponent extends ElderFormFieldControlBase {
|
|
23
|
-
/***************************************************************************
|
|
24
|
-
* *
|
|
25
|
-
* Constructor *
|
|
26
|
-
* *
|
|
27
|
-
**************************************************************************/
|
|
28
|
-
constructor() {
|
|
29
|
-
super('duration-input');
|
|
30
|
-
/***************************************************************************
|
|
31
|
-
* *
|
|
32
|
-
* Fields *
|
|
33
|
-
* *
|
|
34
|
-
**************************************************************************/
|
|
35
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
36
|
-
this.durationFormat$ = new BehaviorSubject(DurationFormat.DEFAULT);
|
|
37
|
-
this.durationContext$ = combineLatest([this.value$, this.durationFormat$]).pipe(map(([duration, format]) => {
|
|
38
|
-
return new DurationInputContext(format.bucket(PeriodDuration.ofDuration(duration)), format);
|
|
39
|
-
}));
|
|
40
|
-
}
|
|
41
|
-
/***************************************************************************
|
|
42
|
-
* *
|
|
43
|
-
* Properties *
|
|
44
|
-
* *
|
|
45
|
-
**************************************************************************/
|
|
46
|
-
get isoValueChange() {
|
|
47
|
-
return this.valueChange.pipe(map((duration) => (duration ? duration.toJSON() : null)));
|
|
48
|
-
}
|
|
49
|
-
set isoValue(value) {
|
|
50
|
-
if (value) {
|
|
51
|
-
const pd = PeriodDuration.parse(value);
|
|
52
|
-
const duration = pd.duration ?? Duration.ZERO;
|
|
53
|
-
const period = pd.period ?? Period.ZERO;
|
|
54
|
-
this.value = duration.plusDays(period.days());
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
this.value = null;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* yyyy:MM:dd hh:mm:ss
|
|
62
|
-
* @param durationFormat
|
|
63
|
-
*/
|
|
64
|
-
set format(durationFormat) {
|
|
65
|
-
this.durationFormat = DurationFormat.parse(durationFormat);
|
|
66
|
-
}
|
|
67
|
-
set durationFormat(format) {
|
|
68
|
-
this.durationFormat$.next(format);
|
|
69
|
-
}
|
|
70
|
-
get shouldLabelFloat() {
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
/***************************************************************************
|
|
74
|
-
* *
|
|
75
|
-
* Public API *
|
|
76
|
-
* *
|
|
77
|
-
**************************************************************************/
|
|
78
|
-
focus(options) {
|
|
79
|
-
this.log.warn('focus() not yet supported!');
|
|
80
|
-
// TODO this.inputRef?.nativeElement?.focus(options);
|
|
81
|
-
}
|
|
82
|
-
blur() {
|
|
83
|
-
this.log.warn('blur() not yet supported!');
|
|
84
|
-
// TODO this.inputRef?.nativeElement?.blur();
|
|
85
|
-
}
|
|
86
|
-
round(value) {
|
|
87
|
-
return Math.round(value);
|
|
88
|
-
}
|
|
89
|
-
onBucketChanged(bucket) {
|
|
90
|
-
this.value = bucket.toDuration();
|
|
91
|
-
}
|
|
92
|
-
valuesEquals(a, b) {
|
|
93
|
-
return a && b ? a.equals(b) : a === b;
|
|
94
|
-
}
|
|
95
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderDurationInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
96
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ElderDurationInputComponent, isStandalone: true, selector: "elder-duration-input", inputs: { isoValue: "isoValue", format: "format", durationFormat: "durationFormat" }, outputs: { isoValueChange: "isoValueChange" }, providers: [{ provide: MatFormFieldControl, useExisting: ElderDurationInputComponent }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"layout-row place-start-center flex-none\"\n *ngIf=\"durationContext$ | async as durationCtx\"\n>\n <div class=\"layout-row place-start-baseline duration-field flex\" *ngIf=\"durationCtx.format.days\">\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-days'\"\n type=\"number\"\n class=\"duration-input duration-input-days flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.days)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withDays($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">d</span>\n </div>\n\n <div class=\"layout-row place-start-baseline duration-field flex\" *ngIf=\"durationCtx.format.hours\">\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-hours'\"\n type=\"number\"\n class=\"duration-input duration-input-hours flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.hours)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withHours($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">h</span>\n </div>\n\n <div\n class=\"layout-row place-start-baseline duration-field flex\"\n *ngIf=\"durationCtx.format.minutes\"\n >\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-minutes'\"\n type=\"number\"\n class=\"duration-input duration-input-minutes flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.minutes)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withMinutes($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">min</span>\n </div>\n\n <div\n class=\"layout-row place-start-baseline duration-field flex\"\n *ngIf=\"durationCtx.format.seconds\"\n >\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-seconds'\"\n type=\"number\"\n class=\"duration-input duration-input-seconds flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.seconds)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withSeconds($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">sec</span>\n </div>\n</div>\n", styles: [".suffix{opacity:.7}.duration-input{text-align:right}.duration-input-days{min-width:26px}.duration-input-hours{min-width:20px}.duration-input-minutes,.duration-input-seconds{min-width:26px}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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: 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: ElderFormFieldNoSpinnerDirective, selector: "input[elderNoSpinner]", inputs: ["elderNoSpinner"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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: i1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
97
|
-
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderDurationInputComponent, decorators: [{
|
|
99
|
-
type: Component,
|
|
100
|
-
args: [{ selector: 'elder-duration-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: MatFormFieldControl, useExisting: ElderDurationInputComponent }], standalone: true, imports: [NgIf, MatInput, ElderFormFieldNoSpinnerDirective, FormsModule, AsyncPipe], template: "<div\n class=\"layout-row place-start-center flex-none\"\n *ngIf=\"durationContext$ | async as durationCtx\"\n>\n <div class=\"layout-row place-start-baseline duration-field flex\" *ngIf=\"durationCtx.format.days\">\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-days'\"\n type=\"number\"\n class=\"duration-input duration-input-days flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.days)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withDays($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">d</span>\n </div>\n\n <div class=\"layout-row place-start-baseline duration-field flex\" *ngIf=\"durationCtx.format.hours\">\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-hours'\"\n type=\"number\"\n class=\"duration-input duration-input-hours flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.hours)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withHours($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">h</span>\n </div>\n\n <div\n class=\"layout-row place-start-baseline duration-field flex\"\n *ngIf=\"durationCtx.format.minutes\"\n >\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-minutes'\"\n type=\"number\"\n class=\"duration-input duration-input-minutes flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.minutes)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withMinutes($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">min</span>\n </div>\n\n <div\n class=\"layout-row place-start-baseline duration-field flex\"\n *ngIf=\"durationCtx.format.seconds\"\n >\n <input\n matInput\n elderNoSpinner\n [name]=\"ngControl?.name + '-inner-seconds'\"\n type=\"number\"\n class=\"duration-input duration-input-seconds flex-auto\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [ngModel]=\"round(durationCtx?.bucket?.seconds)\"\n (ngModelChange)=\"onBucketChanged(durationCtx.bucket.withSeconds($event))\"\n />\n <span class=\"mat-caption suffix flex-none noselect\">sec</span>\n </div>\n</div>\n", styles: [".suffix{opacity:.7}.duration-input{text-align:right}.duration-input-days{min-width:26px}.duration-input-hours{min-width:20px}.duration-input-minutes,.duration-input-seconds{min-width:26px}input.duration-input::-webkit-outer-spin-button,input.duration-input::-webkit-inner-spin-button{display:none}input.duration-input{-moz-appearance:textfield}\n"] }]
|
|
101
|
-
}], ctorParameters: () => [], propDecorators: { isoValueChange: [{
|
|
102
|
-
type: Output
|
|
103
|
-
}], isoValue: [{
|
|
104
|
-
type: Input
|
|
105
|
-
}], format: [{
|
|
106
|
-
type: Input
|
|
107
|
-
}], durationFormat: [{
|
|
108
|
-
type: Input
|
|
109
|
-
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZHVyYXRpb24taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2R1cmF0aW9uL2VsZGVyLWR1cmF0aW9uLWlucHV0L2VsZGVyLWR1cmF0aW9uLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9kdXJhdGlvbi9lbGRlci1kdXJhdGlvbi1pbnB1dC9lbGRlci1kdXJhdGlvbi1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsTUFBTSxHQUtQLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFFakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUN4RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQTtBQUM1RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUdsRSxPQUFPLEVBQWEsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkQsT0FBTyxFQUFF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QUFDO0lBRU0sS0FBSyxDQUFDLEtBQWE7UUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFFTSxlQUFlLENBQUMsTUFBc0I7UUFDM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDbEMsQ0FBQztJQUVTLFlBQVksQ0FBQyxDQUFXLEVBQUUsQ0FBVztRQUM3QyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDdkMsQ0FBQzsrR0E5RlUsMkJBQTJCO21HQUEzQiwyQkFBMkIsd01BSjNCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLDJCQUEyQixFQUFFLENBQUMsaURDdEN6Rixra0ZBMEVBLG9aRGxDWSxJQUFJLDZGQUFFLFFBQVEsaVVBQUUsZ0NBQWdDLDZGQUFFLFdBQVcseStCQUFFLFNBQVM7OzRGQUV2RSwyQkFBMkI7a0JBVHZDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLDZCQUE2QixFQUFFLENBQUMsY0FDM0UsSUFBSSxXQUNQLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxnQ0FBZ0MsRUFBRSxXQUFXLEVBQUUsU0FBUyxDQUFDO3dEQW9DeEUsY0FBYztzQkFEeEIsTUFBTTtnQkFNSSxRQUFRO3NCQURsQixLQUFLO2dCQWlCSyxNQUFNO3NCQURoQixLQUFLO2dCQU1LLGNBQWM7c0JBRHhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFbGVtZW50UmVmLFxuICBOZ1pvbmUsXG4gIE9wdGlvbmFsLFxuICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRHVyYXRpb24sIFBlcmlvZCB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnXG5pbXBvcnQgeyBMb2dnZXJGYWN0b3J5IH0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBEdXJhdGlvbkJ1Y2tldCB9IGZyb20gJy4uL2R1cmF0aW9uLWJ1Y2tldCdcbmltcG9ydCB7IER1cmF0aW9uRm9ybWF0IH0gZnJvbSAnLi4vZHVyYXRpb24tZm9ybWF0J1xuaW1wb3J0IHsgUGVyaW9kRHVyYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vdGltZS9wZXJpb2QtZHVyYXRpb24nXG5pbXBvcnQgeyBFbGRlckZvcm1GaWVsZENvbnRyb2xCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2Zvcm1zL2VsZGVyLWZvcm0tZmllbGQtY29udHJvbC1iYXNlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEZvcm1GaWVsZENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE5nQ29udHJvbCwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IEVsZGVyRm9ybUZpZWxkTm9TcGlubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1mb3JtLWZpZWxkLW5vLXNwaW5uZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTWF0SW5wdXQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCdcbmltcG9ydCB7IE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuY2xhc3MgRHVyYXRpb25JbnB1dENvbnRleHQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgYnVja2V0OiBEdXJhdGlvbkJ1Y2tldCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybWF0OiBEdXJhdGlvbkZvcm1hdFxuICApIHt9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWR1cmF0aW9uLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWR1cmF0aW9uLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItZHVyYXRpb24taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IEVsZGVyRHVyYXRpb25JbnB1dENvbXBvbmVudCB9XSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWYsIE1hdElucHV0LCBFbGRlckZvcm1GaWVsZE5vU3Bpbm5lckRpcmVjdGl2ZSwgRm9ybXNNb2R1bGUsIEFzeW5jUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRHVyYXRpb25JbnB1dENvbXBvbmVudCBleHRlbmRzIEVsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2U8RHVyYXRpb24+IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHVibGljIHJlYWRvbmx5IGR1cmF0aW9uRm9ybWF0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RHVyYXRpb25Gb3JtYXQ+KER1cmF0aW9uRm9ybWF0LkRFRkFVTFQpXG4gIHB1YmxpYyByZWFkb25seSBkdXJhdGlvbkNvbnRleHQkOiBPYnNlcnZhYmxlPER1cmF0aW9uSW5wdXRDb250ZXh0PlxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCdkdXJhdGlvbi1pbnB1dCcpXG4gICAgdGhpcy5kdXJhdGlvbkNvbnRleHQkID0gY29tYmluZUxhdGVzdChbdGhpcy52YWx1ZSQsIHRoaXMuZHVyYXRpb25Gb3JtYXQkXSkucGlwZShcbiAgICAgIG1hcCgoW2R1cmF0aW9uLCBmb3JtYXRdKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgRHVyYXRpb25JbnB1dENvbnRleHQoZm9ybWF0LmJ1Y2tldChQZXJpb2REdXJhdGlvbi5vZkR1cmF0aW9uKGR1cmF0aW9uKSksIGZvcm1hdClcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgaXNvVmFsdWVDaGFuZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVDaGFuZ2UucGlwZShtYXAoKGR1cmF0aW9uKSA9PiAoZHVyYXRpb24gPyBkdXJhdGlvbi50b0pTT04oKSA6IG51bGwpKSlcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnN0IHBkID0gUGVyaW9kRHVyYXRpb24ucGFyc2UodmFsdWUpXG4gICAgICBjb25zdCBkdXJhdGlvbiA9IHBkLmR1cmF0aW9uID8/IER1cmF0aW9uLlpFUk9cbiAgICAgIGNvbnN0IHBlcmlvZCA9IHBkLnBlcmlvZCA/PyBQZXJpb2QuWkVST1xuICAgICAgdGhpcy52YWx1ZSA9IGR1cmF0aW9uLnBsdXNEYXlzKHBlcmlvZC5kYXlzKCkpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIHl5eXk6TU06ZGQgaGg6bW06c3NcbiAgICogQHBhcmFtIGR1cmF0aW9uRm9ybWF0XG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZvcm1hdChkdXJhdGlvbkZvcm1hdDogc3RyaW5nKSB7XG4gICAgdGhpcy5kdXJhdGlvbkZvcm1hdCA9IER1cmF0aW9uRm9ybWF0LnBhcnNlKGR1cmF0aW9uRm9ybWF0KVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkdXJhdGlvbkZvcm1hdChmb3JtYXQ6IER1cmF0aW9uRm9ybWF0KSB7XG4gICAgdGhpcy5kdXJhdGlvbkZvcm1hdCQubmV4dChmb3JtYXQpXG4gIH1cblxuICBwdWJsaWMgZ2V0IHNob3VsZExhYmVsRmxvYXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBmb2N1cyhvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgdGhpcy5sb2cud2FybignZm9jdXMoKSBub3QgeWV0IHN1cHBvcnRlZCEnKVxuICAgIC8vIFRPRE8gdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMob3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy53YXJuKCdibHVyKCkgbm90IHlldCBzdXBwb3J0ZWQhJylcbiAgICAvLyBUT0RPIHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LmJsdXIoKTtcbiAgfVxuXG4gIHB1YmxpYyByb3VuZCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSlcbiAgfVxuXG4gIHB1YmxpYyBvbkJ1Y2tldENoYW5nZWQoYnVja2V0OiBEdXJhdGlvbkJ1Y2tldCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBidWNrZXQudG9EdXJhdGlvbigpXG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IER1cmF0aW9uLCBiOiBEdXJhdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBhICYmIGIgPyBhLmVxdWFscyhiKSA6IGEgPT09IGJcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGZsZXgtbm9uZVwiXG4gICpuZ0lmPVwiZHVyYXRpb25Db250ZXh0JCB8IGFzeW5jIGFzIGR1cmF0aW9uQ3R4XCJcbj5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtYmFzZWxpbmUgZHVyYXRpb24tZmllbGQgZmxleFwiICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0LmRheXNcIj5cbiAgICA8aW5wdXRcbiAgICAgIG1hdElucHV0XG4gICAgICBlbGRlck5vU3Bpbm5lclxuICAgICAgW25hbWVdPVwibmdDb250cm9sPy5uYW1lICsgJy1pbm5lci1kYXlzJ1wiXG4gICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgIGNsYXNzPVwiZHVyYXRpb24taW5wdXQgZHVyYXRpb24taW5wdXQtZGF5cyBmbGV4LWF1dG9cIlxuICAgICAgW3JlcXVpcmVkXT1cIiEhcmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/LmRheXMpXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQnVja2V0Q2hhbmdlZChkdXJhdGlvbkN0eC5idWNrZXQud2l0aERheXMoJGV2ZW50KSlcIlxuICAgIC8+XG4gICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvbiBzdWZmaXggZmxleC1ub25lIG5vc2VsZWN0XCI+ZDwvc3Bhbj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtYmFzZWxpbmUgZHVyYXRpb24tZmllbGQgZmxleFwiICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0LmhvdXJzXCI+XG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgZWxkZXJOb1NwaW5uZXJcbiAgICAgIFtuYW1lXT1cIm5nQ29udHJvbD8ubmFtZSArICctaW5uZXItaG91cnMnXCJcbiAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dCBkdXJhdGlvbi1pbnB1dC1ob3VycyBmbGV4LWF1dG9cIlxuICAgICAgW3JlcXVpcmVkXT1cIiEhcmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgIFtuZ01vZGVsXT1cInJvdW5kKGR1cmF0aW9uQ3R4Py5idWNrZXQ/LmhvdXJzKVwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkJ1Y2tldENoYW5nZWQoZHVyYXRpb25DdHguYnVja2V0LndpdGhIb3VycygkZXZlbnQpKVwiXG4gICAgLz5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdC1jYXB0aW9uIHN1ZmZpeCBmbGV4LW5vbmUgbm9zZWxlY3RcIj5oPC9zcGFuPlxuICA8L2Rpdj5cblxuICA8ZGl2XG4gICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWJhc2VsaW5lIGR1cmF0aW9uLWZpZWxkIGZsZXhcIlxuICAgICpuZ0lmPVwiZHVyYXRpb25DdHguZm9ybWF0Lm1pbnV0ZXNcIlxuICA+XG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgZWxkZXJOb1NwaW5uZXJcbiAgICAgIFtuYW1lXT1cIm5nQ29udHJvbD8ubmFtZSArICctaW5uZXItbWludXRlcydcIlxuICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICBjbGFzcz1cImR1cmF0aW9uLWlucHV0IGR1cmF0aW9uLWlucHV0LW1pbnV0ZXMgZmxleC1hdXRvXCJcbiAgICAgIFtyZXF1aXJlZF09XCIhIXJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiISFkaXNhYmxlZFwiXG4gICAgICBbbmdNb2RlbF09XCJyb3VuZChkdXJhdGlvbkN0eD8uYnVja2V0Py5taW51dGVzKVwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkJ1Y2tldENoYW5nZWQoZHVyYXRpb25DdHguYnVja2V0LndpdGhNaW51dGVzKCRldmVudCkpXCJcbiAgICAvPlxuICAgIDxzcGFuIGNsYXNzPVwibWF0LWNhcHRpb24gc3VmZml4IGZsZXgtbm9uZSBub3NlbGVjdFwiPm1pbjwvc3Bhbj5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1iYXNlbGluZSBkdXJhdGlvbi1maWVsZCBmbGV4XCJcbiAgICAqbmdJZj1cImR1cmF0aW9uQ3R4LmZvcm1hdC5zZWNvbmRzXCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgbWF0SW5wdXRcbiAgICAgIGVsZGVyTm9TcGlubmVyXG4gICAgICBbbmFtZV09XCJuZ0NvbnRyb2w/Lm5hbWUgKyAnLWlubmVyLXNlY29uZHMnXCJcbiAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgY2xhc3M9XCJkdXJhdGlvbi1pbnB1dCBkdXJhdGlvbi1pbnB1dC1zZWNvbmRzIGZsZXgtYXV0b1wiXG4gICAgICBbcmVxdWlyZWRdPVwiISFyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cIiEhZGlzYWJsZWRcIlxuICAgICAgW25nTW9kZWxdPVwicm91bmQoZHVyYXRpb25DdHg/LmJ1Y2tldD8uc2Vjb25kcylcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25CdWNrZXRDaGFuZ2VkKGR1cmF0aW9uQ3R4LmJ1Y2tldC53aXRoU2Vjb25kcygkZXZlbnQpKVwiXG4gICAgLz5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdC1jYXB0aW9uIHN1ZmZpeCBmbGV4LW5vbmUgbm9zZWxlY3RcIj5zZWM8L3NwYW4+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvLWR1cmF0aW9uLXN0ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9kdXJhdGlvbi9pc28tZHVyYXRpb24tc3RyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcHJlc2VudHMgYSByYXcgSVNPIGR1cmF0aW9uIGZvcm1hdHRlZCBzdHJpbmcgc3VjaCBhcyAnUDIzRFQyM0gnXG4gKiBBIHBhcnNlZCBkdXJhdGlvbiBpcyByZXByZXNlbnRlZCBieSBhIGpvZGEgRHVyYXRpb24gY2xhc3MuXG4gKi9cbmV4cG9ydCB0eXBlIElzb0R1cmF0aW9uU3RyID0gc3RyaW5nXG4iXX0=
|
|
@@ -1,96 +0,0 @@
|
|
|
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 { TranslateModule } from '@ngx-translate/core';
|
|
10
|
-
import { ElderLocalDateInputComponent } from '../elder-local-date-input/elder-local-date-input.component';
|
|
11
|
-
import { NgIf, AsyncPipe } from '@angular/common';
|
|
12
|
-
import { ElderFormFieldDenseDirective } from '../../forms/directives/elder-form-field-dense.directive';
|
|
13
|
-
import { MatFormField, MatLabel } from '@angular/material/form-field';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@ngx-translate/core";
|
|
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
|
-
/** If true, elderDense on mat-form-field is enabled. */
|
|
35
|
-
this.dense = false;
|
|
36
|
-
this.updateValue(LocalDate.now());
|
|
37
|
-
}
|
|
38
|
-
/***************************************************************************
|
|
39
|
-
* *
|
|
40
|
-
* Life Cycle *
|
|
41
|
-
* *
|
|
42
|
-
**************************************************************************/
|
|
43
|
-
ngOnInit() { }
|
|
44
|
-
/***************************************************************************
|
|
45
|
-
* *
|
|
46
|
-
* Properties *
|
|
47
|
-
* *
|
|
48
|
-
**************************************************************************/
|
|
49
|
-
/**
|
|
50
|
-
* Emits date upon internal date change.
|
|
51
|
-
* @deprecated Migrate your code to use LocalDate
|
|
52
|
-
*/
|
|
53
|
-
get dateChange() {
|
|
54
|
-
return this.valueChange.pipe(map((localDate) => (localDate ? TimeUtil.localDateToDate(localDate) : null)));
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* @param date
|
|
58
|
-
* @deprecated Migrate your code to use LocalDate
|
|
59
|
-
*/
|
|
60
|
-
set date(date) {
|
|
61
|
-
this.value = date ? TimeUtil.dateToLocalDate(date) : null;
|
|
62
|
-
}
|
|
63
|
-
/***************************************************************************
|
|
64
|
-
* *
|
|
65
|
-
* Private Methods *
|
|
66
|
-
* *
|
|
67
|
-
**************************************************************************/
|
|
68
|
-
valuesEquals(a, b) {
|
|
69
|
-
return a && b ? a.equals(b) : a === b;
|
|
70
|
-
}
|
|
71
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderDateSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ElderDateSwitcherComponent, isStandalone: true, selector: "elder-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", dense: "dense", date: "date" }, outputs: { dateChange: "dateChange" }, host: { classAttribute: "elder-form-field-host" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\" [elderDense]=\"dense\">\n <mat-label *ngIf=\"label\">{{ label | translate }}</mat-label>\n <elder-local-date-input\n arrows\n today\n autoDatePicker\n datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense", "subscriptSizing", "floatLabel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "component", type: ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
73
|
-
}
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderDateSwitcherComponent, decorators: [{
|
|
75
|
-
type: Component,
|
|
76
|
-
args: [{ selector: 'elder-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'elder-form-field-host' }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], standalone: true, imports: [
|
|
77
|
-
MatFormField,
|
|
78
|
-
ElderFormFieldDenseDirective,
|
|
79
|
-
NgIf,
|
|
80
|
-
MatLabel,
|
|
81
|
-
ElderLocalDateInputComponent,
|
|
82
|
-
AsyncPipe,
|
|
83
|
-
TranslateModule,
|
|
84
|
-
], template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\" [elderDense]=\"dense\">\n <mat-label *ngIf=\"label\">{{ label | translate }}</mat-label>\n <elder-local-date-input\n arrows\n today\n autoDatePicker\n datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n" }]
|
|
85
|
-
}], ctorParameters: () => [], propDecorators: { datePickerEnabled: [{
|
|
86
|
-
type: Input
|
|
87
|
-
}], datePickerTouchUi: [{
|
|
88
|
-
type: Input
|
|
89
|
-
}], dense: [{
|
|
90
|
-
type: Input
|
|
91
|
-
}], dateChange: [{
|
|
92
|
-
type: Output
|
|
93
|
-
}], date: [{
|
|
94
|
-
type: Input
|
|
95
|
-
}] } });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS1zd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RpbWUvZWxkZXItZGF0ZS1zd2l0Y2hlci9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXN3aXRjaGVyL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQTtBQUN4RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUVwRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDekQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3BDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQTtBQUN6RyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFBO0FBQ3RHLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUE7OztBQXNCckUsTUFBTSxPQUFPLDBCQUNYLFNBQVEsc0JBQWlDO0lBdUJ6Qzs7OztnRkFJNEU7SUFFNUU7UUFDRSxLQUFLLEVBQUUsQ0FBQTtRQTNCVDs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUV4RSxxREFBcUQ7UUFFOUMsc0JBQWlCLEdBQUcsSUFBSSxDQUFBO1FBRS9CLCtEQUErRDtRQUV4RCxzQkFBaUIsR0FBRyxLQUFLLENBQUE7UUFFaEMsd0RBQXdEO1FBRWpELFVBQUssR0FBRyxLQUFLLENBQUE7UUFVbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLFFBQVEsS0FBVSxDQUFDO0lBRTFCOzs7O2dGQUk0RTtJQUU1RTs7O09BR0c7SUFDSCxJQUNXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDN0UsQ0FBQTtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNXLElBQUksQ0FBQyxJQUFVO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDM0QsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVsRSxZQUFZLENBQUMsQ0FBWSxFQUFFLENBQVk7UUFDL0MsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7K0dBN0VVLDBCQUEwQjttR0FBMUIsMEJBQTBCLHNSQWIxQiw2QkFBNkIsQ0FBQywwQkFBMEIsQ0FBQyxpREN0QnRFLDZjQWNBLDBERFlJLFlBQVksNExBQ1osNEJBQTRCLGdJQUM1QixJQUFJLDZGQUNKLFFBQVEsc0RBQ1IsNEJBQTRCLG9VQUM1QixTQUFTLDZDQUNULGVBQWUsaUZBVEYsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7OzRGQVkxQywwQkFBMEI7a0JBcEJ0QyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNLFFBRXpDLEVBQUUsS0FBSyxFQUFFLHVCQUF1QixFQUFFLGFBQzdCLDZCQUE2Qiw0QkFBNEIsaUJBQ3JELENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLGNBQ3pDLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLDRCQUE0Qjt3QkFDNUIsSUFBSTt3QkFDSixRQUFRO3dCQUNSLDRCQUE0Qjt3QkFDNUIsU0FBUzt3QkFDVCxlQUFlO3FCQUNoQjt3REFnQk0saUJBQWlCO3NCQUR2QixLQUFLO2dCQUtDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFLQyxLQUFLO3NCQURYLEtBQUs7Z0JBaUNLLFVBQVU7c0JBRHBCLE1BQU07Z0JBWUksSUFBSTtzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcidcbmltcG9ydCB7IEZvcm1GaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZm9ybS1maWVsZC1iYXNlLmNvbXBvbmVudCdcbmltcG9ydCB7IExvY2FsRGF0ZSB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnXG5pbXBvcnQgeyBidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVycyB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCdcbmltcG9ydCB7IFZpZXdQcm92aWRlcnMgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdmlldy1wcm92aWRlcnMnXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFRpbWVVdGlsIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJ1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRWxkZXJMb2NhbERhdGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQvZWxkZXItbG9jYWwtZGF0ZS1pbnB1dC5jb21wb25lbnQnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBFbGRlckZvcm1GaWVsZERlbnNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1mb3JtLWZpZWxkLWRlbnNlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCwgTWF0TGFiZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1kYXRlLXN3aXRjaGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcbiAgaG9zdDogeyBjbGFzczogJ2VsZGVyLWZvcm0tZmllbGQtaG9zdCcgfSxcbiAgcHJvdmlkZXJzOiBidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVycyhFbGRlckRhdGVTd2l0Y2hlckNvbXBvbmVudCksXG4gIHZpZXdQcm92aWRlcnM6IFtWaWV3UHJvdmlkZXJzLlBhcmVudENvbnRyb2xDb250YWluZXJdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0Rm9ybUZpZWxkLFxuICAgIEVsZGVyRm9ybUZpZWxkRGVuc2VEaXJlY3RpdmUsXG4gICAgTmdJZixcbiAgICBNYXRMYWJlbCxcbiAgICBFbGRlckxvY2FsRGF0ZUlucHV0Q29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRGF0ZVN3aXRjaGVyQ29tcG9uZW50XG4gIGV4dGVuZHMgRm9ybUZpZWxkQmFzZUNvbXBvbmVudDxMb2NhbERhdGU+XG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKVxuXG4gIC8qKiBJZiB0cnVlLCBkYXRlIHBpY2tlciBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQuICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRlUGlja2VyRW5hYmxlZCA9IHRydWVcblxuICAvKiogSWYgdHJ1ZSwgdG91Y2ggb3B0aW1pemVkIG1vZGUgb2YgZGF0ZSBwaWNrZXIgaXMgZW5hYmxlZC4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhdGVQaWNrZXJUb3VjaFVpID0gZmFsc2VcblxuICAvKiogSWYgdHJ1ZSwgZWxkZXJEZW5zZSBvbiBtYXQtZm9ybS1maWVsZCBpcyBlbmFibGVkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGVuc2UgPSBmYWxzZVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKExvY2FsRGF0ZS5ub3coKSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEVtaXRzIGRhdGUgdXBvbiBpbnRlcm5hbCBkYXRlIGNoYW5nZS5cbiAgICogQGRlcHJlY2F0ZWQgTWlncmF0ZSB5b3VyIGNvZGUgdG8gdXNlIExvY2FsRGF0ZVxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZGF0ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPERhdGU+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKChsb2NhbERhdGUpID0+IChsb2NhbERhdGUgPyBUaW1lVXRpbC5sb2NhbERhdGVUb0RhdGUobG9jYWxEYXRlKSA6IG51bGwpKVxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKiBAZGVwcmVjYXRlZCBNaWdyYXRlIHlvdXIgY29kZSB0byB1c2UgTG9jYWxEYXRlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGUoZGF0ZTogRGF0ZSkge1xuICAgIHRoaXMudmFsdWUgPSBkYXRlID8gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKGRhdGUpIDogbnVsbFxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBMb2NhbERhdGUsIGI6IExvY2FsRGF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBhICYmIGIgPyBhLmVxdWFscyhiKSA6IGEgPT09IGJcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIiBjbGFzcz1cImZsZXggZnVsbFwiIFtlbGRlckRlbnNlXT1cImRlbnNlXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gIDxlbGRlci1sb2NhbC1kYXRlLWlucHV0XG4gICAgYXJyb3dzXG4gICAgdG9kYXlcbiAgICBhdXRvRGF0ZVBpY2tlclxuICAgIGRhdGVQaWNrZXJUb3VjaFVpXG4gICAgW2RhdGVQaWNrZXJFbmFibGVkXT1cImZhbHNlXCJcbiAgICBbZGF0ZVBpY2tlclRvdWNoVWldPVwiZGF0ZVBpY2tlclRvdWNoVWlcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZSQgfCBhc3luY1wiXG4gICAgKHZhbHVlVXBkYXRlZCk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcbiAgPlxuICA8L2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQ+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|