@elderbyte/ngx-starter 15.19.3 → 16.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/esm2022/lib/common/async/refreshing-entity.mjs +86 -0
- package/esm2022/lib/common/csv/csv-spec.mjs +99 -0
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +76 -0
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +247 -0
- package/esm2022/lib/common/data/data-context/data-context-status.mjs +46 -0
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +139 -0
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +55 -0
- package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +24 -0
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +199 -0
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +127 -0
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +141 -0
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +73 -0
- package/esm2022/lib/common/data/entity-set-patch.mjs +164 -0
- package/esm2022/lib/common/data/field-comparator.mjs +99 -0
- package/esm2022/lib/common/data/http-params-builder.mjs +118 -0
- package/esm2022/lib/common/data/sort.mjs +11 -0
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +81 -0
- package/esm2022/lib/common/format/bytes-format.mjs +22 -0
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +181 -0
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +94 -0
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +52 -0
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +39 -0
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +47 -0
- package/esm2022/lib/common/forms/form-field-base.component.mjs +112 -0
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +32 -0
- package/esm2022/lib/common/forms/template-composite-control.mjs +133 -0
- package/esm2022/lib/common/forms/value-accessor-base.mjs +146 -0
- package/esm2022/lib/common/forms/view-providers.mjs +30 -0
- package/esm2022/lib/common/http/http-client-builder.service.mjs +14 -0
- package/esm2022/lib/common/http/http-client-pristine.mjs +21 -0
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +95 -0
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +49 -0
- package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +17 -0
- package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +82 -0
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +132 -0
- package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +16 -0
- package/esm2022/lib/common/i18n/entity/locale.mjs +12 -0
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +30 -0
- package/esm2022/lib/common/objects.mjs +41 -0
- package/esm2022/lib/common/selection/selection-model.mjs +212 -0
- package/esm2022/lib/common/suggestion-provider.mjs +12 -0
- package/esm2022/lib/common/time/date-util.mjs +93 -0
- package/esm2022/lib/common/time/time-util.mjs +41 -0
- package/esm2022/lib/common/url/elder-router.service.mjs +54 -0
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +119 -0
- package/esm2022/lib/common/url/url-query-params.mjs +133 -0
- package/esm2022/lib/common/utils/collection-util.mjs +109 -0
- package/esm2022/lib/common/utils/filter-util.mjs +52 -0
- package/esm2022/lib/common/utils/focus-util.mjs +23 -0
- package/esm2022/lib/common/utils/query-list-binding.mjs +67 -0
- package/esm2022/lib/common/utils/url-builder.mjs +275 -0
- package/esm2022/lib/common/utils/value-wrapper.mjs +19 -0
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +16 -0
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +30 -0
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +39 -0
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +42 -0
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +39 -0
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +48 -0
- package/esm2022/lib/components/badge/elder-badge.module.mjs +40 -0
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +15 -0
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +35 -0
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +123 -0
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +15 -0
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +211 -0
- package/esm2022/lib/components/card-organizer/card-stack.mjs +176 -0
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +49 -0
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +17 -0
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +145 -0
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +66 -0
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +170 -0
- package/esm2022/lib/components/chips/elder-chips.module.mjs +48 -0
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +56 -0
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +63 -0
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +46 -0
- package/esm2022/lib/components/containers/elder-containers.module.mjs +25 -0
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +24 -0
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +77 -0
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +38 -0
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +114 -0
- package/esm2022/lib/components/csv/elder-csv.module.mjs +37 -0
- package/esm2022/lib/components/currency/elder-currency.module.mjs +24 -0
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +33 -0
- package/esm2022/lib/components/currency/model/currency-unit.mjs +10 -0
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +76 -0
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +91 -0
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +91 -0
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +34 -0
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +47 -0
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +26 -0
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +67 -0
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +266 -0
- package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +45 -0
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +45 -0
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +90 -0
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +137 -0
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +89 -0
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +98 -0
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +38 -0
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +307 -0
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +82 -0
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +69 -0
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +49 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +76 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +20 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +125 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +116 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +88 -0
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +22 -0
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +19 -0
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +78 -0
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +113 -0
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +299 -0
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +29 -0
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +72 -0
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +18 -0
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +325 -0
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +17 -0
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +96 -0
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +29 -0
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +153 -0
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +20 -0
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +146 -0
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +110 -0
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +81 -0
- package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +40 -0
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +87 -0
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +165 -0
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +25 -0
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +64 -0
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +202 -0
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +43 -0
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +43 -0
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +46 -0
- package/esm2022/lib/components/errors/elder-error.module.mjs +41 -0
- package/esm2022/lib/components/errors/error-util.mjs +94 -0
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +66 -0
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +55 -0
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +28 -0
- package/esm2022/lib/components/files/blob-url.mjs +10 -0
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +225 -0
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +43 -0
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +84 -0
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +144 -0
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +166 -0
- package/esm2022/lib/components/files/elder-file.module.mjs +77 -0
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +55 -0
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +67 -0
- package/esm2022/lib/components/files/listing/file-entry.mjs +76 -0
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +104 -0
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +51 -0
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +34 -0
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +35 -0
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +42 -0
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +82 -0
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +83 -0
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +41 -0
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +34 -0
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +132 -0
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +77 -0
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +111 -0
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +101 -0
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +36 -0
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +29 -0
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +157 -0
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +27 -0
- package/esm2022/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +108 -0
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +85 -0
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +47 -0
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +48 -0
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +55 -0
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +40 -0
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +40 -0
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +96 -0
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +68 -0
- package/esm2022/lib/components/forms/elder-forms.module.mjs +22 -0
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +146 -0
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +185 -0
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +66 -0
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +125 -0
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +16 -0
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +126 -0
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +32 -0
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +93 -0
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +90 -0
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +26 -0
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +28 -0
- package/esm2022/lib/components/headers/elder-header.module.mjs +43 -0
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +68 -0
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +123 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +144 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +29 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +30 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +152 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +28 -0
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +56 -0
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +39 -0
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +30 -0
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +74 -0
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +69 -0
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +72 -0
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +121 -0
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +65 -0
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +53 -0
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +130 -0
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +138 -0
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +103 -0
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +41 -0
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +51 -0
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +136 -0
- package/esm2022/lib/components/iframes/iframe-messages.mjs +5 -0
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +78 -0
- package/esm2022/lib/components/iframes/iframe.service.mjs +52 -0
- package/esm2022/lib/components/iframes/typed-event-message.mjs +42 -0
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +61 -0
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +158 -0
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +29 -0
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +186 -0
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +197 -0
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +114 -0
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +58 -0
- package/esm2022/lib/components/labels/elder-labels.module.mjs +30 -0
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +229 -0
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +273 -0
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +91 -0
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +64 -0
- package/esm2022/lib/components/measures/elder-measures.module.mjs +140 -0
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +41 -0
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +73 -0
- package/esm2022/lib/components/measures/elder-unit.service.mjs +115 -0
- package/esm2022/lib/components/measures/model/unit-registry.mjs +81 -0
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +33 -0
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +176 -0
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +87 -0
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +76 -0
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +237 -0
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +164 -0
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +55 -0
- package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +37 -0
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +53 -0
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +127 -0
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +161 -0
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +68 -0
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +46 -0
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +76 -0
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +68 -0
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +66 -0
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +39 -0
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +85 -0
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +43 -0
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +72 -0
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +204 -0
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +41 -0
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +12 -0
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +12 -0
- package/esm2022/lib/components/panels/elder-panel.module.mjs +58 -0
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +26 -0
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +69 -0
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +68 -0
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +62 -0
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +17 -0
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +77 -0
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +62 -0
- package/esm2022/lib/components/select/elder-select-base.mjs +284 -0
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +45 -0
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +133 -0
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +15 -0
- package/esm2022/lib/components/select/elder-select.module.mjs +146 -0
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +350 -0
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +287 -0
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +91 -0
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +86 -0
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +126 -0
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +47 -0
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +57 -0
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +443 -0
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +45 -0
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +149 -0
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +48 -0
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +60 -0
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +117 -0
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +128 -0
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +46 -0
- package/esm2022/lib/components/shell/elder-shell.module.mjs +96 -0
- package/esm2022/lib/components/shell/elder-shell.service.mjs +145 -0
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +73 -0
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +209 -0
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +137 -0
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +25 -0
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +256 -0
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +32 -0
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +62 -0
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +74 -0
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +74 -0
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +61 -0
- package/esm2022/lib/components/theme/elder-theme.module.mjs +74 -0
- package/esm2022/lib/components/theme/elder-theme.service.mjs +123 -0
- package/esm2022/lib/components/theme/known-elder-themes.mjs +6 -0
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +23 -0
- package/esm2022/lib/components/time/duration/duration-format.mjs +271 -0
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +122 -0
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +89 -0
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +108 -0
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +173 -0
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +264 -0
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +95 -0
- package/esm2022/lib/components/time/elder-time.module.mjs +120 -0
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +131 -0
- package/esm2022/lib/components/time/period/period-format.mjs +89 -0
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +38 -0
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +23 -0
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +171 -0
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +74 -0
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +54 -0
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +84 -0
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +65 -0
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +25 -0
- package/esm2022/lib/features/event-source/elder-event-source.service.mjs +56 -0
- package/esm2022/lib/features/event-source/reactive-event-source.mjs +198 -0
- package/esm2022/lib/features/kafent/access-token-provider.mjs +20 -0
- package/esm2022/lib/features/kafent/kafent-config.mjs +24 -0
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +25 -0
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +107 -0
- package/esm2022/lib/features/kafent/kafent.module.mjs +61 -0
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +128 -0
- package/esm2022/lib/pipes/bytes.pipe.mjs +24 -0
- package/esm2022/lib/pipes/elder-pipes.module.mjs +67 -0
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +21 -0
- package/esm2022/lib/pipes/elder-round.pipe.mjs +35 -0
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +20 -0
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +40 -0
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +58 -0
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +49 -0
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +110 -0
- package/esm2022/lib/pipes/time-ago.pipe.mjs +104 -0
- package/esm2022/lib/pipes/time-duration.pipe.mjs +98 -0
- package/esm2022/lib/pipes/weight.pipe.mjs +56 -0
- package/fesm2022/elderbyte-ngx-starter.mjs +30269 -0
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -0
- package/lib/common/data/field-comparator.d.ts +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/form-field-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/i18n/entity/language-tag.d.ts +1 -1
- package/lib/common/i18n/entity/translated.d.ts +1 -1
- package/lib/common/json-map.d.ts +1 -1
- package/lib/common/selection/selection-model.d.ts +1 -1
- package/lib/common/theme-sizes.d.ts +1 -1
- package/lib/common/time/date-util.d.ts +1 -1
- package/lib/common/time/interval.d.ts +1 -1
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +1 -1
- package/lib/components/badge/elder-badge/elder-badge.component.d.ts +1 -1
- package/lib/components/badge/elder-badge.directive.d.ts +1 -1
- package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +1 -1
- package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +1 -1
- package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +1 -1
- package/lib/components/cards/elder-card/elder-card.component.d.ts +3 -3
- package/lib/components/chips/elder-chip-label.directive.d.ts +4 -4
- package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +2 -2
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-base.d.ts +1 -1
- package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +1 -1
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +3 -3
- package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +1 -1
- package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +1 -1
- package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +1 -1
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-master-detail-mode.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-master-detail.component.d.ts +1 -1
- package/lib/components/data-view/table/activation/elder-delete-active.directive.d.ts +1 -1
- package/lib/components/data-view/table/activation/elder-table-activation-options.d.ts +2 -2
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-extension.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +1 -1
- package/lib/components/data-view/table/model/elder-column-layout.d.ts +1 -1
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +1 -1
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +1 -1
- package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +1 -1
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +1 -1
- package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +1 -1
- package/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.d.ts +1 -1
- package/lib/components/files/elder-file-drop-zone.directive.d.ts +1 -1
- package/lib/components/files/elder-file-select.directive.d.ts +1 -1
- package/lib/components/files/file-select/file-select.component.d.ts +1 -1
- package/lib/components/files/file-upload/file-upload.component.d.ts +1 -1
- package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-key-event.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-max.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-min.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.d.ts +1 -1
- package/lib/components/forms/search/elder-search-context.directive.d.ts +1 -1
- package/lib/components/forms/search/elder-search-input.directive.d.ts +1 -1
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +1 -1
- package/lib/components/global-search/elder-global-search.component.d.ts +1 -1
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +1 -1
- package/lib/components/headers/elder-header/elder-header.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +1 -1
- package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +1 -1
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +1 -1
- package/lib/components/iframes/iframe-close.directive.d.ts +1 -1
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +2 -2
- package/lib/components/iframes/typed-event-message.d.ts +1 -1
- package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +2 -2
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +1 -1
- package/lib/components/labels/labels-input/labels-input.component.d.ts +1 -1
- package/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.d.ts +2 -2
- package/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.d.ts +1 -1
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +1 -1
- package/lib/components/measures/model/unit.d.ts +1 -1
- package/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.d.ts +1 -1
- package/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.d.ts +1 -1
- package/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.d.ts +1 -1
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +1 -1
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +1 -1
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +1 -1
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +1 -1
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +1 -1
- package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +1 -1
- package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +1 -1
- package/lib/components/overlays/elder-overlay-origin.directive.d.ts +1 -1
- package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +1 -1
- package/lib/components/overlays/elder-overlay.component.d.ts +1 -1
- package/lib/components/panels/flat/elder-panel.component.d.ts +1 -1
- package/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.d.ts +1 -1
- package/lib/components/scrollbar/elder-scrollbar.directive.d.ts +1 -1
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +1 -1
- package/lib/components/select/elder-select-base.d.ts +2 -2
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +1 -1
- package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +1 -1
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +1 -1
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +1 -1
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +1 -1
- package/lib/components/shell/elder-shell-slot.directive.d.ts +1 -1
- package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +1 -1
- package/lib/components/shell/shell/elder-shell.component.d.ts +1 -1
- package/lib/components/shell/shell-content-slot.d.ts +1 -1
- package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +1 -1
- package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +1 -1
- package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +1 -1
- package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +2 -2
- package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +1 -1
- package/lib/components/time/duration/iso-duration-str.d.ts +1 -1
- package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +1 -1
- package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +1 -1
- package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +2 -2
- package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +1 -1
- package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +1 -1
- package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +1 -1
- package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +1 -1
- package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +1 -1
- package/lib/pipes/elder-truncate.pipe.d.ts +1 -1
- package/package.json +12 -18
- package/esm2020/lib/common/async/refreshing-entity.mjs +0 -86
- package/esm2020/lib/common/csv/csv-spec.mjs +0 -99
- package/esm2020/lib/common/data/data-context/data-context-auto-starter.mjs +0 -76
- package/esm2020/lib/common/data/data-context/data-context-builder.mjs +0 -247
- package/esm2020/lib/common/data/data-context/data-context-status.mjs +0 -46
- package/esm2020/lib/common/data/data-context/mat-table-data-context-binding.mjs +0 -139
- package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +0 -55
- package/esm2020/lib/common/data/datasource/data-source-change-event.mjs +0 -24
- package/esm2020/lib/common/data/datasource/data-source-processor.mjs +0 -199
- package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +0 -127
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +0 -141
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +0 -73
- package/esm2020/lib/common/data/entity-set-patch.mjs +0 -164
- package/esm2020/lib/common/data/field-comparator.mjs +0 -99
- package/esm2020/lib/common/data/http-params-builder.mjs +0 -118
- package/esm2020/lib/common/data/sort.mjs +0 -11
- package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +0 -81
- package/esm2020/lib/common/format/bytes-format.mjs +0 -22
- package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +0 -181
- package/esm2020/lib/common/forms/elder-from-field-base.mjs +0 -94
- package/esm2020/lib/common/forms/elder-from-field-customizable-base.mjs +0 -52
- package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +0 -39
- package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +0 -47
- package/esm2020/lib/common/forms/form-field-base.component.mjs +0 -112
- package/esm2020/lib/common/forms/multi-model-base.component.mjs +0 -32
- package/esm2020/lib/common/forms/template-composite-control.mjs +0 -133
- package/esm2020/lib/common/forms/value-accessor-base.mjs +0 -146
- package/esm2020/lib/common/forms/view-providers.mjs +0 -30
- package/esm2020/lib/common/http/http-client-builder.service.mjs +0 -14
- package/esm2020/lib/common/http/http-client-pristine.mjs +0 -21
- package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +0 -95
- package/esm2020/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +0 -49
- package/esm2020/lib/common/http/transfer/data-transfer-progress.mjs +0 -17
- package/esm2020/lib/common/http/transfer/data-transfer-state.mjs +0 -82
- package/esm2020/lib/common/http/transfer/http-data-transfer.mjs +0 -132
- package/esm2020/lib/common/i18n/entity/impl/i18n-text.mjs +0 -16
- package/esm2020/lib/common/i18n/entity/locale.mjs +0 -12
- package/esm2020/lib/common/i18n/entity/localisation-picker.mjs +0 -30
- package/esm2020/lib/common/objects.mjs +0 -41
- package/esm2020/lib/common/selection/selection-model.mjs +0 -212
- package/esm2020/lib/common/suggestion-provider.mjs +0 -12
- package/esm2020/lib/common/time/date-util.mjs +0 -93
- package/esm2020/lib/common/time/time-util.mjs +0 -41
- package/esm2020/lib/common/url/elder-router.service.mjs +0 -54
- package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +0 -119
- package/esm2020/lib/common/url/url-query-params.mjs +0 -133
- package/esm2020/lib/common/utils/collection-util.mjs +0 -109
- package/esm2020/lib/common/utils/filter-util.mjs +0 -52
- package/esm2020/lib/common/utils/focus-util.mjs +0 -23
- package/esm2020/lib/common/utils/query-list-binding.mjs +0 -67
- package/esm2020/lib/common/utils/url-builder.mjs +0 -275
- package/esm2020/lib/common/utils/value-wrapper.mjs +0 -19
- package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +0 -16
- package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +0 -30
- package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +0 -39
- package/esm2020/lib/components/auditing/elder-audit.module.mjs +0 -42
- package/esm2020/lib/components/badge/elder-badge/elder-badge.component.mjs +0 -39
- package/esm2020/lib/components/badge/elder-badge.directive.mjs +0 -48
- package/esm2020/lib/components/badge/elder-badge.module.mjs +0 -40
- package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +0 -15
- package/esm2020/lib/components/button-group/elder-button-group.module.mjs +0 -35
- package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +0 -123
- package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +0 -15
- package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +0 -211
- package/esm2020/lib/components/card-organizer/card-stack.mjs +0 -176
- package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +0 -49
- package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +0 -17
- package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +0 -145
- package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +0 -66
- package/esm2020/lib/components/chips/elder-chip-label.directive.mjs +0 -170
- package/esm2020/lib/components/chips/elder-chips.module.mjs +0 -48
- package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +0 -56
- package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +0 -63
- package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +0 -46
- package/esm2020/lib/components/containers/elder-containers.module.mjs +0 -25
- package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +0 -24
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +0 -77
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +0 -38
- package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +0 -114
- package/esm2020/lib/components/csv/elder-csv.module.mjs +0 -37
- package/esm2020/lib/components/currency/elder-currency.module.mjs +0 -24
- package/esm2020/lib/components/currency/elder-currency.pipe.mjs +0 -33
- package/esm2020/lib/components/currency/model/currency-unit.mjs +0 -10
- package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +0 -76
- package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +0 -91
- package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +0 -91
- package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +0 -34
- package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +0 -47
- package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +0 -26
- package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +0 -67
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +0 -266
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +0 -45
- package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +0 -45
- package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +0 -90
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +0 -137
- package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +0 -89
- package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +0 -98
- package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +0 -38
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +0 -307
- package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +0 -82
- package/esm2020/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +0 -69
- package/esm2020/lib/components/data-view/master-detail/elder-detail.directive.mjs +0 -49
- package/esm2020/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +0 -76
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +0 -20
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.component.mjs +0 -125
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.module.mjs +0 -116
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.service.mjs +0 -88
- package/esm2020/lib/components/data-view/master-detail/elder-master.directive.mjs +0 -22
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +0 -19
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +0 -78
- package/esm2020/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +0 -113
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +0 -299
- package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +0 -29
- package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +0 -72
- package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +0 -18
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +0 -325
- package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +0 -17
- package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +0 -96
- package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +0 -29
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +0 -151
- package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +0 -20
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +0 -146
- package/esm2020/lib/components/data-view/table/model/elder-column-layout.mjs +0 -110
- package/esm2020/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +0 -81
- package/esm2020/lib/components/data-view/table/model/elder-table-model-provider.mjs +0 -40
- package/esm2020/lib/components/data-view/table/model/elder-table-model-query-group.mjs +0 -87
- package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +0 -165
- package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +0 -25
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +0 -64
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +0 -202
- package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +0 -43
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +0 -43
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +0 -46
- package/esm2020/lib/components/errors/elder-error.module.mjs +0 -41
- package/esm2020/lib/components/errors/error-util.mjs +0 -94
- package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +0 -66
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +0 -55
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +0 -28
- package/esm2020/lib/components/files/blob-url.mjs +0 -10
- package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +0 -225
- package/esm2020/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +0 -43
- package/esm2020/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +0 -84
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +0 -144
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +0 -166
- package/esm2020/lib/components/files/elder-file.module.mjs +0 -77
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +0 -55
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +0 -67
- package/esm2020/lib/components/files/listing/file-entry.mjs +0 -76
- package/esm2020/lib/components/files/listing/file-listing-rx.mjs +0 -104
- package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +0 -51
- package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +0 -34
- package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +0 -35
- package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +0 -42
- package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +0 -82
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +0 -83
- package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +0 -41
- package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +0 -34
- package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +0 -132
- package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +0 -77
- package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +0 -111
- package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +0 -101
- package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +0 -36
- package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +0 -29
- package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +0 -157
- package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +0 -27
- package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +0 -108
- package/esm2020/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +0 -85
- package/esm2020/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +0 -47
- package/esm2020/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +0 -48
- package/esm2020/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +0 -55
- package/esm2020/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +0 -40
- package/esm2020/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +0 -40
- package/esm2020/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +0 -96
- package/esm2020/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +0 -68
- package/esm2020/lib/components/forms/elder-forms.module.mjs +0 -22
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +0 -146
- package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +0 -185
- package/esm2020/lib/components/forms/search/elder-search.module.mjs +0 -66
- package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +0 -125
- package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +0 -16
- package/esm2020/lib/components/global-search/elder-global-search.component.mjs +0 -126
- package/esm2020/lib/components/global-search/elder-global-search.module.mjs +0 -32
- package/esm2020/lib/components/global-search/elder-global-search.service.mjs +0 -93
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +0 -90
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +0 -26
- package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +0 -28
- package/esm2020/lib/components/headers/elder-header.module.mjs +0 -43
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +0 -68
- package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +0 -123
- package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +0 -144
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +0 -29
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +0 -30
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +0 -152
- package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +0 -28
- package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +0 -56
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +0 -39
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +0 -30
- package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +0 -74
- package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +0 -69
- package/esm2020/lib/components/i18n/language/elder-language.module.mjs +0 -72
- package/esm2020/lib/components/i18n/language/elder-language.service.mjs +0 -121
- package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +0 -65
- package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +0 -53
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +0 -130
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +0 -138
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +0 -103
- package/esm2020/lib/components/iframes/iframe-close.directive.mjs +0 -41
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +0 -51
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +0 -136
- package/esm2020/lib/components/iframes/iframe-messages.mjs +0 -5
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +0 -78
- package/esm2020/lib/components/iframes/iframe.service.mjs +0 -52
- package/esm2020/lib/components/iframes/typed-event-message.mjs +0 -42
- package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +0 -61
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +0 -158
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +0 -29
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +0 -186
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +0 -197
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +0 -114
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +0 -58
- package/esm2020/lib/components/labels/elder-labels.module.mjs +0 -30
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +0 -229
- package/esm2020/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +0 -273
- package/esm2020/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +0 -91
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +0 -64
- package/esm2020/lib/components/measures/elder-measures.module.mjs +0 -140
- package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +0 -41
- package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +0 -73
- package/esm2020/lib/components/measures/elder-unit.service.mjs +0 -115
- package/esm2020/lib/components/measures/model/unit-registry.mjs +0 -81
- package/esm2020/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +0 -33
- package/esm2020/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +0 -176
- package/esm2020/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +0 -87
- package/esm2020/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +0 -76
- package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +0 -237
- package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +0 -164
- package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +0 -55
- package/esm2020/lib/components/navigation/bread-crumbs/path/path.mjs +0 -37
- package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +0 -53
- package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +0 -127
- package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +0 -161
- package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +0 -68
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +0 -46
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +0 -76
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +0 -68
- package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +0 -66
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +0 -39
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +0 -85
- package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +0 -43
- package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +0 -72
- package/esm2020/lib/components/overlays/elder-overlay.component.mjs +0 -204
- package/esm2020/lib/components/overlays/elder-overlay.module.mjs +0 -41
- package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +0 -12
- package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +0 -12
- package/esm2020/lib/components/panels/elder-panel.module.mjs +0 -58
- package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +0 -26
- package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +0 -69
- package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +0 -68
- package/esm2020/lib/components/scrollbar/elder-scrollbar.directive.mjs +0 -62
- package/esm2020/lib/components/scrollbar/elder-scrollbar.module.mjs +0 -17
- package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +0 -77
- package/esm2020/lib/components/select/auto/elder-select-first-util.mjs +0 -62
- package/esm2020/lib/components/select/elder-select-base.mjs +0 -284
- package/esm2020/lib/components/select/elder-select-chip.directive.mjs +0 -45
- package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +0 -133
- package/esm2020/lib/components/select/elder-select-value.directive.mjs +0 -15
- package/esm2020/lib/components/select/elder-select.module.mjs +0 -146
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +0 -350
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +0 -287
- package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +0 -91
- package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +0 -86
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +0 -126
- package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +0 -47
- package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +0 -57
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +0 -443
- package/esm2020/lib/components/select/single/elder-select-form-field.mjs +0 -45
- package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +0 -149
- package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +0 -48
- package/esm2020/lib/components/shell/drawers/drawer-outlet-binding.mjs +0 -60
- package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +0 -117
- package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +0 -128
- package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +0 -46
- package/esm2020/lib/components/shell/elder-shell.module.mjs +0 -96
- package/esm2020/lib/components/shell/elder-shell.service.mjs +0 -145
- package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +0 -73
- package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +0 -209
- package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +0 -137
- package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +0 -25
- package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +0 -256
- package/esm2020/lib/components/tabs/elder-tab.module.mjs +0 -32
- package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +0 -62
- package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +0 -74
- package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +0 -74
- package/esm2020/lib/components/theme/elder-theme.directive.mjs +0 -61
- package/esm2020/lib/components/theme/elder-theme.module.mjs +0 -74
- package/esm2020/lib/components/theme/elder-theme.service.mjs +0 -123
- package/esm2020/lib/components/theme/known-elder-themes.mjs +0 -6
- package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +0 -23
- package/esm2020/lib/components/time/duration/duration-format.mjs +0 -271
- package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +0 -122
- package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +0 -89
- package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +0 -108
- package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +0 -173
- package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +0 -264
- package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +0 -95
- package/esm2020/lib/components/time/elder-time.module.mjs +0 -120
- package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +0 -131
- package/esm2020/lib/components/time/period/period-format.mjs +0 -89
- package/esm2020/lib/components/time/pipes/to-iso-date-string.pipe.mjs +0 -38
- package/esm2020/lib/components/toasts/elder-toast.module.mjs +0 -23
- package/esm2020/lib/components/toasts/elder-toast.service.mjs +0 -171
- package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +0 -74
- package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +0 -54
- package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +0 -84
- package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +0 -65
- package/esm2020/lib/components/viewers/elder-viewers.module.mjs +0 -25
- package/esm2020/lib/features/event-source/elder-event-source.service.mjs +0 -56
- package/esm2020/lib/features/event-source/reactive-event-source.mjs +0 -198
- package/esm2020/lib/features/kafent/access-token-provider.mjs +0 -20
- package/esm2020/lib/features/kafent/kafent-config.mjs +0 -24
- package/esm2020/lib/features/kafent/kafent-event-stream.mjs +0 -25
- package/esm2020/lib/features/kafent/kafent-event.service.mjs +0 -107
- package/esm2020/lib/features/kafent/kafent.module.mjs +0 -61
- package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +0 -128
- package/esm2020/lib/pipes/bytes.pipe.mjs +0 -24
- package/esm2020/lib/pipes/elder-pipes.module.mjs +0 -67
- package/esm2020/lib/pipes/elder-repeat.pipe.mjs +0 -21
- package/esm2020/lib/pipes/elder-round.pipe.mjs +0 -35
- package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +0 -20
- package/esm2020/lib/pipes/elder-truncate.pipe.mjs +0 -40
- package/esm2020/lib/pipes/iso-duration.pipe.mjs +0 -58
- package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +0 -49
- package/esm2020/lib/pipes/iso-interval.pipe.mjs +0 -110
- package/esm2020/lib/pipes/time-ago.pipe.mjs +0 -104
- package/esm2020/lib/pipes/time-duration.pipe.mjs +0 -98
- package/esm2020/lib/pipes/weight.pipe.mjs +0 -56
- package/fesm2015/elderbyte-ngx-starter.mjs +0 -30441
- package/fesm2015/elderbyte-ngx-starter.mjs.map +0 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +0 -30267
- package/fesm2020/elderbyte-ngx-starter.mjs.map +0 -1
- /package/{esm2020 → esm2022}/elderbyte-ngx-starter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/arrays.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/async/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/csv/csv-serializer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/csv/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/continuable-listing.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-active-page.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-base.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-continuable-base.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-continuable-paged.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-continuable-token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-life-cycle-binding.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-simple.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context-source-event-binding.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/data-context.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/indexed-entities.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/data-context/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/data-source-base.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/data-source.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/entity-id-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/rest/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/datasource/rest/rest-client.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/filters/filter-context.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/filters/filter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/page.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/required-filter-evaluator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/sort-context.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/data/token-chunk-request.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/enums/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/errors/exception-detail.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/errors/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/errors/standard-error-detail.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/format/bytes-per-second-format.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/format/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/forms/elder-entity-value-accessor.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/forms/elder-multi-entity-value-accessor.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/forms/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/transfer/data-transfer-base.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/transfer/data-transfer-status.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/transfer/data-transfer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/transfer/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/http/upload/file-upload-client.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/impl/i18n-base.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/impl/translated.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/language-tag.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/localized.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/translated-converter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/entity/translated.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/i18n/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/json-map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/reactive-map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/rxjs/operators/lazy-sample.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/rxjs/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/selection/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/sets.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/templates/template-slot-manager.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/theme-sizes.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/time/interval.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/time/period-duration.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/time/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/url/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/batcher.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/next-number-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/ng-zone-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/parse-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/property-path-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/sort-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/uuid-util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/auditing/i-audited-entity.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/card-organizer/card-organizer-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/connectivity/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/containers/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/csv/elder-csv-stream-exporter-builder.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/currency/model/currency-code.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/currency/model/currency-unit-registry.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/currency/model/currency.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/currency/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/base/elder-data-view-options-provider.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/base/elder-data-view.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/base/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/common/selection/master-selection-state.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/elder-data-view-interaction-mode.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/master-detail/master-detail-activation-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/activation-event-source.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/elder-activation-context.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/elder-table-activation-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/item-activation-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/item-activation-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/data-view/table/activation/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/dialogs/elder-dialog-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/forms/directives/validation/validation-message-strategy.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/forms/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/forms/search/model/search-input-state.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/forms/search/model/search-input.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/graph/elder-progress-bar/sub-bar.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/graph/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/http-support/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/i18n/language/elder-language-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/i18n/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/input/autocomplete/many/word-position-finder.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/input/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/measures/model/dimensions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/measures/model/quantity.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/measures/model/unit-dimension.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/measures/model/unit.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/measures/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/navigation/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/navigation/toolbar/toolbar-column-position.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/select/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/shell/shell-content-slot.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/theme/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/theme/theme-spec.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/time/duration/duration-bucket.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/time/duration/iso-duration-str.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/time/period/period-bucket.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/time/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/toasts/toast-type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/toasts/toast.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/url-fragment/elder-url-fragment.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/features/event-source/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/features/kafent/kafent-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/features/kafent/kafent-live-event-request.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/features/kafent/sse/kafent-topic-sse.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/features/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
2
|
+
export class FilterUtil {
|
|
3
|
+
static { this.logger = LoggerFactory.getLogger(FilterUtil.constructor.name); }
|
|
4
|
+
static filterData(data, filters) {
|
|
5
|
+
FilterUtil.logger.debug('Filtering data with ' + data.length + ' items.', filters);
|
|
6
|
+
if (filters && filters.length > 0) {
|
|
7
|
+
for (const filter of filters) {
|
|
8
|
+
data = data.filter(e => FilterUtil.matches(e, filter));
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
return data;
|
|
12
|
+
}
|
|
13
|
+
static matches(entity, filter) {
|
|
14
|
+
if (filter.value === null || filter.value === undefined) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
let value;
|
|
18
|
+
if (entity === null || entity === undefined) {
|
|
19
|
+
value = null;
|
|
20
|
+
}
|
|
21
|
+
else if (typeof entity === 'object') {
|
|
22
|
+
value = entity[filter.key];
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
value = String(entity); // Support filtering primitive values
|
|
26
|
+
}
|
|
27
|
+
if (Array.isArray(filter.value)) {
|
|
28
|
+
for (const val of filter.value) {
|
|
29
|
+
if (FilterUtil.matchesValue(value, val)) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
return FilterUtil.matchesValue(value, filter.value);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
static matchesValue(haystack, needle) {
|
|
40
|
+
if (haystack === needle) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
if (haystack === null || haystack === undefined) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
const str = String(haystack);
|
|
47
|
+
const match = str.toLowerCase().startsWith(needle.toLowerCase());
|
|
48
|
+
// FilterUtil.logger.debug('Haystack: ' + str + ' starts with needle: ' + needle + ' --> ' + match);
|
|
49
|
+
return match;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvZmlsdGVyLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBR25ELE1BQU0sT0FBTyxVQUFVO2FBRUcsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUcvRSxNQUFNLENBQUMsVUFBVSxDQUFJLElBQVMsRUFBRSxPQUFpQjtRQUV0RCxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVuRixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDNUIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ3hEO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQVcsRUFBRSxNQUFjO1FBRWhELElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDdkQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELElBQUksS0FBVSxDQUFDO1FBQ2YsSUFBSSxNQUFNLEtBQUssSUFBSSxJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDM0MsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNkO2FBQU0sSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDckMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDNUI7YUFBTTtZQUNMLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUM7U0FDOUQ7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQy9CLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRTtnQkFDOUIsSUFBSSxVQUFVLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRTtvQkFDdkMsT0FBTyxJQUFJLENBQUM7aUJBQ2I7YUFDRjtZQUNELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7YUFBTTtZQUNMLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztJQUdPLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBYSxFQUFFLE1BQWM7UUFDdkQsSUFBSSxRQUFRLEtBQUssTUFBTSxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxJQUFJLFFBQVEsS0FBSyxJQUFJLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtZQUMvQyxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFakUsb0dBQW9HO1FBRXBHLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi9kYXRhL2ZpbHRlcnMvZmlsdGVyJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJVdGlsIHtcblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcihGaWx0ZXJVdGlsLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG5cbiAgcHVibGljIHN0YXRpYyBmaWx0ZXJEYXRhPFQ+KGRhdGE6IFRbXSwgZmlsdGVyczogRmlsdGVyW10pOiBUW10ge1xuXG4gICAgRmlsdGVyVXRpbC5sb2dnZXIuZGVidWcoJ0ZpbHRlcmluZyBkYXRhIHdpdGggJyArIGRhdGEubGVuZ3RoICsgJyBpdGVtcy4nLCBmaWx0ZXJzKTtcblxuICAgIGlmIChmaWx0ZXJzICYmIGZpbHRlcnMubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChjb25zdCBmaWx0ZXIgb2YgZmlsdGVycykge1xuICAgICAgICBkYXRhID0gZGF0YS5maWx0ZXIoZSA9PiBGaWx0ZXJVdGlsLm1hdGNoZXMoZSwgZmlsdGVyKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cblxuICBwcml2YXRlIHN0YXRpYyBtYXRjaGVzKGVudGl0eTogYW55LCBmaWx0ZXI6IEZpbHRlcik6IGJvb2xlYW4ge1xuXG4gICAgaWYgKGZpbHRlci52YWx1ZSA9PT0gbnVsbCB8fCBmaWx0ZXIudmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgbGV0IHZhbHVlOiBhbnk7XG4gICAgaWYgKGVudGl0eSA9PT0gbnVsbCB8fCBlbnRpdHkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdmFsdWUgPSBudWxsO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGVudGl0eSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHZhbHVlID0gZW50aXR5W2ZpbHRlci5rZXldO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YWx1ZSA9IFN0cmluZyhlbnRpdHkpOyAvLyBTdXBwb3J0IGZpbHRlcmluZyBwcmltaXRpdmUgdmFsdWVzXG4gICAgfVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZmlsdGVyLnZhbHVlKSkge1xuICAgICAgZm9yIChjb25zdCB2YWwgb2YgZmlsdGVyLnZhbHVlKSB7XG4gICAgICAgIGlmIChGaWx0ZXJVdGlsLm1hdGNoZXNWYWx1ZSh2YWx1ZSwgdmFsKSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBGaWx0ZXJVdGlsLm1hdGNoZXNWYWx1ZSh2YWx1ZSwgZmlsdGVyLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuXG4gIHByaXZhdGUgc3RhdGljIG1hdGNoZXNWYWx1ZShoYXlzdGFjazogYW55LCBuZWVkbGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmIChoYXlzdGFjayA9PT0gbmVlZGxlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoaGF5c3RhY2sgPT09IG51bGwgfHwgaGF5c3RhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHN0ciA9IFN0cmluZyhoYXlzdGFjayk7XG4gICAgY29uc3QgbWF0Y2ggPSBzdHIudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKG5lZWRsZS50b0xvd2VyQ2FzZSgpKTtcblxuICAgIC8vIEZpbHRlclV0aWwubG9nZ2VyLmRlYnVnKCdIYXlzdGFjazogJyArIHN0ciArICcgc3RhcnRzIHdpdGggbmVlZGxlOiAnICsgbmVlZGxlICsgJyAtLT4gJyArIG1hdGNoKTtcblxuICAgIHJldHVybiBtYXRjaDtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
2
|
+
export class FocusUtil {
|
|
3
|
+
static { this.log = LoggerFactory.getLogger('FocusUtil'); }
|
|
4
|
+
/***************************************************************************
|
|
5
|
+
* *
|
|
6
|
+
* Public Methods *
|
|
7
|
+
* *
|
|
8
|
+
**************************************************************************/
|
|
9
|
+
/**
|
|
10
|
+
* Focus the given html element after the given delay.
|
|
11
|
+
* @param htmlElement
|
|
12
|
+
* @param delayMs
|
|
13
|
+
*/
|
|
14
|
+
static focusAfterDelay(htmlElement, delayMs = 1) {
|
|
15
|
+
if (htmlElement) {
|
|
16
|
+
setTimeout(() => {
|
|
17
|
+
htmlElement.focus();
|
|
18
|
+
htmlElement.select();
|
|
19
|
+
}, delayMs);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi91dGlscy9mb2N1cy11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxNQUFNLE9BQU8sU0FBUzthQUVJLFFBQUcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRW5FOzs7O2dGQUk0RTtJQUU1RTs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLGVBQWUsQ0FDekIsV0FBNkIsRUFDN0IsT0FBTyxHQUFHLENBQUM7UUFFYixJQUFJLFdBQVcsRUFBRTtZQUNmLFVBQVUsQ0FDTixHQUFHLEVBQUU7Z0JBQ0gsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNwQixXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkIsQ0FBQyxFQUNELE9BQU8sQ0FDVixDQUFDO1NBQ0g7SUFFSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5cbmV4cG9ydCBjbGFzcyBGb2N1c1V0aWwge1xuXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKCdGb2N1c1V0aWwnKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogRm9jdXMgdGhlIGdpdmVuIGh0bWwgZWxlbWVudCBhZnRlciB0aGUgZ2l2ZW4gZGVsYXkuXG4gICAqIEBwYXJhbSBodG1sRWxlbWVudFxuICAgKiBAcGFyYW0gZGVsYXlNc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb2N1c0FmdGVyRGVsYXkoXG4gICAgICBodG1sRWxlbWVudDogSFRNTElucHV0RWxlbWVudCxcbiAgICAgIGRlbGF5TXMgPSAxXG4gICk6IHZvaWQge1xuICAgIGlmIChodG1sRWxlbWVudCkge1xuICAgICAgc2V0VGltZW91dChcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICBodG1sRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgaHRtbEVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBkZWxheU1zXG4gICAgICApO1xuICAgIH1cblxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { map, startWith, takeUntil } from 'rxjs/operators';
|
|
2
|
+
/**
|
|
3
|
+
* Makes binding to a query list easy.
|
|
4
|
+
*/
|
|
5
|
+
// @dynamic
|
|
6
|
+
export class QueryListBinding {
|
|
7
|
+
/***************************************************************************
|
|
8
|
+
* *
|
|
9
|
+
* Static Builder *
|
|
10
|
+
* *
|
|
11
|
+
**************************************************************************/
|
|
12
|
+
/**
|
|
13
|
+
* Bind to the given QueryList until destroy$ is emitted.
|
|
14
|
+
* @param queryList
|
|
15
|
+
* @param destroy$
|
|
16
|
+
*/
|
|
17
|
+
static of(queryList) {
|
|
18
|
+
return new QueryListBinding(queryList);
|
|
19
|
+
}
|
|
20
|
+
static asColdObservable(queryList) {
|
|
21
|
+
return queryList.changes.pipe(startWith(queryList), map(x => queryList.toArray()));
|
|
22
|
+
}
|
|
23
|
+
/***************************************************************************
|
|
24
|
+
* *
|
|
25
|
+
* Constructor *
|
|
26
|
+
* *
|
|
27
|
+
**************************************************************************/
|
|
28
|
+
constructor(queryList) {
|
|
29
|
+
this.queryList = queryList;
|
|
30
|
+
}
|
|
31
|
+
/***************************************************************************
|
|
32
|
+
* *
|
|
33
|
+
* Public API *
|
|
34
|
+
* *
|
|
35
|
+
**************************************************************************/
|
|
36
|
+
/**
|
|
37
|
+
* Callback which is invoked when the query list has new values.
|
|
38
|
+
* Note that this callback is also invoked initially.
|
|
39
|
+
* @param valuesFn
|
|
40
|
+
*/
|
|
41
|
+
updated(valuesFn) {
|
|
42
|
+
this.valuesUpdatedFn = valuesFn;
|
|
43
|
+
return this;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Callback which is invoked when the binding is destroyed.
|
|
47
|
+
* Users can handle clean up here.
|
|
48
|
+
* @param completedFn
|
|
49
|
+
*/
|
|
50
|
+
destroyed(completedFn) {
|
|
51
|
+
this.completedFn = completedFn;
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
bindUntil(destroy$) {
|
|
55
|
+
this.subscribeToQueryList(this.queryList, destroy$);
|
|
56
|
+
}
|
|
57
|
+
/***************************************************************************
|
|
58
|
+
* *
|
|
59
|
+
* Private methods *
|
|
60
|
+
* *
|
|
61
|
+
**************************************************************************/
|
|
62
|
+
subscribeToQueryList(queryList, destroy$) {
|
|
63
|
+
return QueryListBinding.asColdObservable(queryList).pipe(takeUntil(destroy$)).subscribe(values => this.valuesUpdatedFn ? this.valuesUpdatedFn(values) : {}, err => {
|
|
64
|
+
}, () => this.completedFn ? this.completedFn(Array.from(queryList)) : {});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktbGlzdC1iaW5kaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL3F1ZXJ5LWxpc3QtYmluZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RDs7R0FFRztBQUNILFdBQVc7QUFDWCxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCOzs7O2dGQUk0RTtJQUU1RTs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLEVBQUUsQ0FDZCxTQUF1QjtRQUV2QixPQUFPLElBQUksZ0JBQWdCLENBQUksU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBSSxTQUF1QjtRQUN2RCxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUMzQixTQUFTLENBQUMsU0FBUyxDQUFDLEVBQ3BCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUM5QixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUc1RSxZQUNtQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO0lBRTFDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUU7Ozs7T0FJRztJQUNJLE9BQU8sQ0FBQyxRQUErQjtRQUM1QyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksU0FBUyxDQUFDLFdBQWtDO1FBQ2pELElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxRQUF5QjtRQUN4QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLG9CQUFvQixDQUMxQixTQUF1QixFQUN2QixRQUF5QjtRQUV6QixPQUFPLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDdEQsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUNwQixDQUFDLFNBQVMsQ0FDVCxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFDbEUsR0FBRyxDQUFDLEVBQUU7UUFDTixDQUFDLEVBQ0QsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDdEUsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzdGFydFdpdGgsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vKipcbiAqIE1ha2VzIGJpbmRpbmcgdG8gYSBxdWVyeSBsaXN0IGVhc3kuXG4gKi9cbi8vIEBkeW5hbWljXG5leHBvcnQgY2xhc3MgUXVlcnlMaXN0QmluZGluZzxUPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSB2YWx1ZXNVcGRhdGVkRm46ICh2YWx1ZXM6IFRbXSkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBjb21wbGV0ZWRGbjogKHZhbHVlczogVFtdKSA9PiB2b2lkO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBTdGF0aWMgQnVpbGRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBCaW5kIHRvIHRoZSBnaXZlbiBRdWVyeUxpc3QgdW50aWwgZGVzdHJveSQgaXMgZW1pdHRlZC5cbiAgICogQHBhcmFtIHF1ZXJ5TGlzdFxuICAgKiBAcGFyYW0gZGVzdHJveSRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb2Y8VD4oXG4gICAgcXVlcnlMaXN0OiBRdWVyeUxpc3Q8VD4sXG4gICk6IFF1ZXJ5TGlzdEJpbmRpbmc8VD4ge1xuICAgIHJldHVybiBuZXcgUXVlcnlMaXN0QmluZGluZzxUPihxdWVyeUxpc3QpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhc0NvbGRPYnNlcnZhYmxlPFQ+KHF1ZXJ5TGlzdDogUXVlcnlMaXN0PFQ+KTogT2JzZXJ2YWJsZTxUW10+IHtcbiAgICByZXR1cm4gcXVlcnlMaXN0LmNoYW5nZXMucGlwZShcbiAgICAgIHN0YXJ0V2l0aChxdWVyeUxpc3QpLFxuICAgICAgbWFwKHggPT4gcXVlcnlMaXN0LnRvQXJyYXkoKSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHF1ZXJ5TGlzdDogUXVlcnlMaXN0PFQ+LFxuICApIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGljaCBpcyBpbnZva2VkIHdoZW4gdGhlIHF1ZXJ5IGxpc3QgaGFzIG5ldyB2YWx1ZXMuXG4gICAqIE5vdGUgdGhhdCB0aGlzIGNhbGxiYWNrIGlzIGFsc28gaW52b2tlZCBpbml0aWFsbHkuXG4gICAqIEBwYXJhbSB2YWx1ZXNGblxuICAgKi9cbiAgcHVibGljIHVwZGF0ZWQodmFsdWVzRm46ICh2YWx1ZXM6IFRbXSkgPT4gdm9pZCk6IHRoaXMge1xuICAgIHRoaXMudmFsdWVzVXBkYXRlZEZuID0gdmFsdWVzRm47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQ2FsbGJhY2sgd2hpY2ggaXMgaW52b2tlZCB3aGVuIHRoZSBiaW5kaW5nIGlzIGRlc3Ryb3llZC5cbiAgICogVXNlcnMgY2FuIGhhbmRsZSBjbGVhbiB1cCBoZXJlLlxuICAgKiBAcGFyYW0gY29tcGxldGVkRm5cbiAgICovXG4gIHB1YmxpYyBkZXN0cm95ZWQoY29tcGxldGVkRm46ICh2YWx1ZXM6IFRbXSkgPT4gdm9pZCk6IHRoaXMge1xuICAgIHRoaXMuY29tcGxldGVkRm4gPSBjb21wbGV0ZWRGbjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBiaW5kVW50aWwoZGVzdHJveSQ6IE9ic2VydmFibGU8YW55Pik6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaWJlVG9RdWVyeUxpc3QodGhpcy5xdWVyeUxpc3QsIGRlc3Ryb3kkKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9RdWVyeUxpc3QoXG4gICAgcXVlcnlMaXN0OiBRdWVyeUxpc3Q8VD4sXG4gICAgZGVzdHJveSQ6IE9ic2VydmFibGU8YW55PlxuICApOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiBRdWVyeUxpc3RCaW5kaW5nLmFzQ29sZE9ic2VydmFibGUocXVlcnlMaXN0KS5waXBlKFxuICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKSxcbiAgICApLnN1YnNjcmliZShcbiAgICAgIHZhbHVlcyA9PiB0aGlzLnZhbHVlc1VwZGF0ZWRGbiA/IHRoaXMudmFsdWVzVXBkYXRlZEZuKHZhbHVlcykgOiB7fSxcbiAgICAgIGVyciA9PiB7XG4gICAgICB9LFxuICAgICAgKCkgPT4gdGhpcy5jb21wbGV0ZWRGbiA/IHRoaXMuY29tcGxldGVkRm4oQXJyYXkuZnJvbShxdWVyeUxpc3QpKSA6IHt9XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supports parsing and building (altering) URLs.
|
|
3
|
+
*
|
|
4
|
+
* Base structure of an URL:
|
|
5
|
+
* https://username:password@site.com:80/some/path?q=val#hash
|
|
6
|
+
*/
|
|
7
|
+
import { UrlQueryParams } from '../url/url-query-params';
|
|
8
|
+
export class UrlBuilder {
|
|
9
|
+
/***************************************************************************
|
|
10
|
+
* *
|
|
11
|
+
* Static *
|
|
12
|
+
* *
|
|
13
|
+
**************************************************************************/
|
|
14
|
+
/**
|
|
15
|
+
* Crates a new empty builder instance.
|
|
16
|
+
*/
|
|
17
|
+
static start() {
|
|
18
|
+
return new UrlBuilder();
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Parses an existing url and creates a new builder from it.
|
|
22
|
+
*/
|
|
23
|
+
static parse(url) {
|
|
24
|
+
return new UrlBuilder(url);
|
|
25
|
+
}
|
|
26
|
+
/***************************************************************************
|
|
27
|
+
* *
|
|
28
|
+
* Constructor *
|
|
29
|
+
* *
|
|
30
|
+
**************************************************************************/
|
|
31
|
+
constructor(url) {
|
|
32
|
+
// Helper class managing query params.
|
|
33
|
+
this._queryParams = UrlQueryParams.empty();
|
|
34
|
+
if (url) {
|
|
35
|
+
this.parse(url);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/***************************************************************************
|
|
39
|
+
* *
|
|
40
|
+
* Properties *
|
|
41
|
+
* *
|
|
42
|
+
**************************************************************************/
|
|
43
|
+
/**
|
|
44
|
+
* Returns the protocol scheme of the URL, including the final ':'.
|
|
45
|
+
*/
|
|
46
|
+
get protocol() {
|
|
47
|
+
return this._protocol;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Returns the domain of the URL. E.g. www.google.ch
|
|
51
|
+
*/
|
|
52
|
+
get hostname() {
|
|
53
|
+
return this._hostname;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Returns the port number of the URL.
|
|
57
|
+
*/
|
|
58
|
+
get port() {
|
|
59
|
+
return this._port;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Returns the domain (that is the hostname) followed by (if a port was specified) a ':' and the port of the URL.
|
|
63
|
+
* E.g. www.google.ch or www.google.ch:80
|
|
64
|
+
*/
|
|
65
|
+
get host() {
|
|
66
|
+
return this.buildHost();
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Returns a string containing an initial '/' followed by the path of the URL, not including the query string or fragment.
|
|
70
|
+
*/
|
|
71
|
+
get path() {
|
|
72
|
+
return this._path;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Returns a string indicating the URL's parameter string;
|
|
76
|
+
* If any parameters are provided, this string includes all of them, beginning with the leading ? character.
|
|
77
|
+
*/
|
|
78
|
+
get queryString() {
|
|
79
|
+
return this._queryParams.toString();
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Returns a string containing a '#' followed by the fragment identifier of the URL.
|
|
83
|
+
*/
|
|
84
|
+
get hash() {
|
|
85
|
+
return this._hash;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Returns the username specified before the domain name.
|
|
89
|
+
*/
|
|
90
|
+
get username() {
|
|
91
|
+
return this._username;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Returns the password specified before the domain name.
|
|
95
|
+
*/
|
|
96
|
+
get password() {
|
|
97
|
+
return this._password;
|
|
98
|
+
}
|
|
99
|
+
/***************************************************************************
|
|
100
|
+
* *
|
|
101
|
+
* Public API *
|
|
102
|
+
* *
|
|
103
|
+
**************************************************************************/
|
|
104
|
+
/**
|
|
105
|
+
* Sets the protocol scheme of the URL.
|
|
106
|
+
* @param protocol with or without ':' at the end.
|
|
107
|
+
*/
|
|
108
|
+
withProtocol(protocol) {
|
|
109
|
+
if (!protocol.endsWith(':')) {
|
|
110
|
+
protocol = protocol + ':';
|
|
111
|
+
}
|
|
112
|
+
this._protocol = protocol;
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Sets the hostname of the URL.
|
|
117
|
+
* @param hostname
|
|
118
|
+
*/
|
|
119
|
+
withHostname(hostname) {
|
|
120
|
+
this._hostname = hostname;
|
|
121
|
+
return this;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Sets the port of the URL.
|
|
125
|
+
* @param port
|
|
126
|
+
*/
|
|
127
|
+
withPort(port) {
|
|
128
|
+
this._port = port;
|
|
129
|
+
return this;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Sets the path of the URL.
|
|
133
|
+
* @param path with or without starting '/'.
|
|
134
|
+
*/
|
|
135
|
+
withPath(path) {
|
|
136
|
+
if (!path.startsWith('/')) {
|
|
137
|
+
path = '/' + path;
|
|
138
|
+
}
|
|
139
|
+
this._path = path;
|
|
140
|
+
return this;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Sets the hash of the URL.
|
|
144
|
+
* @param hash with or without starting '#'
|
|
145
|
+
*/
|
|
146
|
+
withHash(hash) {
|
|
147
|
+
if (!hash.startsWith('#')) {
|
|
148
|
+
hash = '#' + hash;
|
|
149
|
+
}
|
|
150
|
+
this._hash = hash;
|
|
151
|
+
return this;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Sets the username of the URL.
|
|
155
|
+
* @param username
|
|
156
|
+
*/
|
|
157
|
+
withUsername(username) {
|
|
158
|
+
this._username = username;
|
|
159
|
+
return this;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Sets the password of the URL.
|
|
163
|
+
* @param password
|
|
164
|
+
*/
|
|
165
|
+
withPassword(password) {
|
|
166
|
+
this._password = password;
|
|
167
|
+
return this;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Appends a new query parameter with the given key / value,
|
|
171
|
+
* regardless if the same parameter is already present.
|
|
172
|
+
*/
|
|
173
|
+
appendParam(key, value) {
|
|
174
|
+
this._queryParams.append(key, value);
|
|
175
|
+
return this;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Removes the given query parameter if present.
|
|
179
|
+
*/
|
|
180
|
+
removeParam(key) {
|
|
181
|
+
this._queryParams.remove(key);
|
|
182
|
+
return this;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Updates the given query parameter with the given new value.
|
|
186
|
+
* If multiple with the same key exists, they will be removed.
|
|
187
|
+
* If the key does not exist, the query param will be added.
|
|
188
|
+
*/
|
|
189
|
+
setParam(key, value) {
|
|
190
|
+
this._queryParams.set(key, value);
|
|
191
|
+
return this;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Returns true if a query parameter with the given key exists.
|
|
195
|
+
*/
|
|
196
|
+
hasParam(key) {
|
|
197
|
+
return this._queryParams.has(key);
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Returns the first value of the associated query param.
|
|
201
|
+
*/
|
|
202
|
+
getParam(key) {
|
|
203
|
+
return this._queryParams.get(key);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Returns all values of the associated query params.
|
|
207
|
+
*/
|
|
208
|
+
getParams(key) {
|
|
209
|
+
return this._queryParams.getAllOf(key);
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Returns true only if there are any query parameters present.
|
|
213
|
+
*/
|
|
214
|
+
hasParams() {
|
|
215
|
+
return this._queryParams.hasParams();
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Materializes the whole URL into a string.
|
|
219
|
+
*/
|
|
220
|
+
build() {
|
|
221
|
+
return this.buildUrlString();
|
|
222
|
+
}
|
|
223
|
+
/***************************************************************************
|
|
224
|
+
* *
|
|
225
|
+
* Private Methods *
|
|
226
|
+
* *
|
|
227
|
+
**************************************************************************/
|
|
228
|
+
parse(urlString) {
|
|
229
|
+
const url = new URL(urlString);
|
|
230
|
+
this._protocol = url.protocol;
|
|
231
|
+
this._hostname = url.hostname;
|
|
232
|
+
this._port = url.port;
|
|
233
|
+
this._path = url.pathname;
|
|
234
|
+
this._queryParams = new UrlQueryParams(url.searchParams);
|
|
235
|
+
this._hash = url.hash;
|
|
236
|
+
this._username = url.username;
|
|
237
|
+
this._password = url.password;
|
|
238
|
+
}
|
|
239
|
+
buildUrlString() {
|
|
240
|
+
let url = '';
|
|
241
|
+
if (this._protocol) {
|
|
242
|
+
url = url + this._protocol + '//';
|
|
243
|
+
}
|
|
244
|
+
if (this._username) {
|
|
245
|
+
url = url + this._username;
|
|
246
|
+
if (this._password) {
|
|
247
|
+
url = url + ':' + this._password;
|
|
248
|
+
}
|
|
249
|
+
url = url + '@';
|
|
250
|
+
}
|
|
251
|
+
url = url + this.buildHost();
|
|
252
|
+
if (this._path && this._path !== '/') {
|
|
253
|
+
url = url + this._path;
|
|
254
|
+
}
|
|
255
|
+
const searchParamsString = this._queryParams.toString();
|
|
256
|
+
if (searchParamsString) {
|
|
257
|
+
url = url + '?' + searchParamsString;
|
|
258
|
+
}
|
|
259
|
+
if (this._hash) {
|
|
260
|
+
url = url + this._hash;
|
|
261
|
+
}
|
|
262
|
+
return url;
|
|
263
|
+
}
|
|
264
|
+
buildHost() {
|
|
265
|
+
let host = '';
|
|
266
|
+
if (this._hostname) {
|
|
267
|
+
host = host + this._hostname;
|
|
268
|
+
}
|
|
269
|
+
if (this._port) {
|
|
270
|
+
host = host + ':' + this._port;
|
|
271
|
+
}
|
|
272
|
+
return host;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLWJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvdXJsLWJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFDSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsTUFBTSxPQUFPLFVBQVU7SUFnQ25COzs7O2dGQUk0RTtJQUU1RTs7T0FFRztJQUNJLE1BQU0sQ0FBQyxLQUFLO1FBQ2YsT0FBTyxJQUFJLFVBQVUsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBVztRQUMzQixPQUFPLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFBb0IsR0FBWTtRQXRDaEMsc0NBQXNDO1FBQzlCLGlCQUFZLEdBQW1CLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQXNDMUQsSUFBSSxHQUFHLEVBQUU7WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ25CO0lBQ0wsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RTs7T0FFRztJQUNILElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDZixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxJQUFJO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFXLElBQUk7UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLElBQUk7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQVcsV0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxJQUFJO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDZixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RTs7O09BR0c7SUFDSSxZQUFZLENBQUMsUUFBZ0I7UUFFaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekIsUUFBUSxHQUFHLFFBQVEsR0FBRyxHQUFHLENBQUM7U0FDN0I7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksWUFBWSxDQUFDLFFBQWdCO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxRQUFRLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxDQUFDLElBQVk7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7U0FDckI7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxDQUFDLElBQVk7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7U0FDckI7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksWUFBWSxDQUFDLFFBQWdCO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxZQUFZLENBQUMsUUFBZ0I7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxHQUFXLEVBQUUsS0FBYTtRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLEdBQVc7UUFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxRQUFRLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVEsQ0FBQyxHQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUSxDQUFDLEdBQVc7UUFDdkIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxTQUFTLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVM7UUFDWixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNSLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsS0FBSyxDQUFDLFNBQWlCO1FBRTNCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUUxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUV6RCxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFFdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztJQUVsQyxDQUFDO0lBRU8sY0FBYztRQUVsQixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFFYixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDaEIsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztTQUNyQztRQUVELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQixHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDM0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNoQixHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ3BDO1lBQ0QsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7U0FDbkI7UUFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUU3QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxHQUFHLEVBQUU7WUFDbEMsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQzFCO1FBRUQsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hELElBQUksa0JBQWtCLEVBQUU7WUFDcEIsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUM7U0FDeEM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDWixHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDMUI7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFTyxTQUFTO1FBQ2IsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRWQsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUNoQztRQUVELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNaLElBQUksR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbEM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0NBR0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFN1cHBvcnRzIHBhcnNpbmcgYW5kIGJ1aWxkaW5nIChhbHRlcmluZykgVVJMcy5cbiAqXG4gKiBCYXNlIHN0cnVjdHVyZSBvZiBhbiBVUkw6XG4gKiBodHRwczovL3VzZXJuYW1lOnBhc3N3b3JkQHNpdGUuY29tOjgwL3NvbWUvcGF0aD9xPXZhbCNoYXNoXG4gKi9cbmltcG9ydCB7VXJsUXVlcnlQYXJhbXN9IGZyb20gJy4uL3VybC91cmwtcXVlcnktcGFyYW1zJztcblxuZXhwb3J0IGNsYXNzIFVybEJ1aWxkZXIge1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIC8vIFRoZSBwcm90b2NvbCBzY2hlbWUgb2YgdGhlIFVSTCwgaW5jbHVkaW5nIHRoZSBmaW5hbCAnOicuXG4gICAgcHJpdmF0ZSBfcHJvdG9jb2w6IHN0cmluZztcblxuICAgIC8vIFRoZSBkb21haW4gb2YgdGhlIFVSTC4gRS5nLiB3d3cuZ29vZ2xlLmNoXG4gICAgcHJpdmF0ZSBfaG9zdG5hbWU6IHN0cmluZztcblxuICAgIC8vIFRoZSBwb3J0IG51bWJlciBvZiB0aGUgVVJMLlxuICAgIHByaXZhdGUgX3BvcnQ6IHN0cmluZztcblxuICAgIC8vIEEgc3RyaW5nIGNvbnRhaW5pbmcgYW4gaW5pdGlhbCAnLycgZm9sbG93ZWQgYnkgdGhlIHBhdGggb2YgdGhlIFVSTCwgbm90IGluY2x1ZGluZyB0aGUgcXVlcnkgc3RyaW5nIG9yIGZyYWdtZW50LlxuICAgIHByaXZhdGUgX3BhdGg6IHN0cmluZztcblxuICAgIC8vIEhlbHBlciBjbGFzcyBtYW5hZ2luZyBxdWVyeSBwYXJhbXMuXG4gICAgcHJpdmF0ZSBfcXVlcnlQYXJhbXM6IFVybFF1ZXJ5UGFyYW1zID0gVXJsUXVlcnlQYXJhbXMuZW1wdHkoKTtcblxuICAgIC8vIEhhc2ggc3RyaW5nIGNvbnRhaW5pbmcgYSAnIycgZm9sbG93ZWQgYnkgdGhlIGZyYWdtZW50IGlkZW50aWZpZXIgb2YgdGhlIFVSTC5cbiAgICBwcml2YXRlIF9oYXNoOiBzdHJpbmc7XG5cbiAgICAvLyBUaGUgdXNlcm5hbWUgc3BlY2lmaWVkIGJlZm9yZSB0aGUgZG9tYWluIG5hbWUuXG4gICAgcHJpdmF0ZSBfdXNlcm5hbWU6IHN0cmluZztcblxuICAgIC8vIFRoZSBwYXNzd29yZCBzcGVjaWZpZWQgYmVmb3JlIHRoZSBkb21haW4gbmFtZS5cbiAgICBwcml2YXRlIF9wYXNzd29yZDogc3RyaW5nO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBTdGF0aWMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIC8qKlxuICAgICAqIENyYXRlcyBhIG5ldyBlbXB0eSBidWlsZGVyIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc3RhcnQoKTogVXJsQnVpbGRlciB7XG4gICAgICAgIHJldHVybiBuZXcgVXJsQnVpbGRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhcnNlcyBhbiBleGlzdGluZyB1cmwgYW5kIGNyZWF0ZXMgYSBuZXcgYnVpbGRlciBmcm9tIGl0LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgcGFyc2UodXJsOiBzdHJpbmcpOiBVcmxCdWlsZGVyIHtcbiAgICAgICAgcmV0dXJuIG5ldyBVcmxCdWlsZGVyKHVybCk7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHByaXZhdGUgY29uc3RydWN0b3IodXJsPzogc3RyaW5nKSB7XG4gICAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgICAgIHRoaXMucGFyc2UodXJsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBwcm90b2NvbCBzY2hlbWUgb2YgdGhlIFVSTCwgaW5jbHVkaW5nIHRoZSBmaW5hbCAnOicuXG4gICAgICovXG4gICAgcHVibGljIGdldCBwcm90b2NvbCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdG9jb2w7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgZG9tYWluIG9mIHRoZSBVUkwuIEUuZy4gd3d3Lmdvb2dsZS5jaFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgaG9zdG5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3RuYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHBvcnQgbnVtYmVyIG9mIHRoZSBVUkwuXG4gICAgICovXG4gICAgcHVibGljIGdldCBwb3J0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wb3J0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGRvbWFpbiAodGhhdCBpcyB0aGUgaG9zdG5hbWUpIGZvbGxvd2VkIGJ5IChpZiBhIHBvcnQgd2FzIHNwZWNpZmllZCkgYSAnOicgYW5kIHRoZSBwb3J0IG9mIHRoZSBVUkwuXG4gICAgICogRS5nLiB3d3cuZ29vZ2xlLmNoIG9yIHd3dy5nb29nbGUuY2g6ODBcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGhvc3QoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnVpbGRIb3N0KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHN0cmluZyBjb250YWluaW5nIGFuIGluaXRpYWwgJy8nIGZvbGxvd2VkIGJ5IHRoZSBwYXRoIG9mIHRoZSBVUkwsIG5vdCBpbmNsdWRpbmcgdGhlIHF1ZXJ5IHN0cmluZyBvciBmcmFnbWVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHN0cmluZyBpbmRpY2F0aW5nIHRoZSBVUkwncyBwYXJhbWV0ZXIgc3RyaW5nO1xuICAgICAqIElmIGFueSBwYXJhbWV0ZXJzIGFyZSBwcm92aWRlZCwgdGhpcyBzdHJpbmcgaW5jbHVkZXMgYWxsIG9mIHRoZW0sIGJlZ2lubmluZyB3aXRoIHRoZSBsZWFkaW5nID8gY2hhcmFjdGVyLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgcXVlcnlTdHJpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3F1ZXJ5UGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHN0cmluZyBjb250YWluaW5nIGEgJyMnIGZvbGxvd2VkIGJ5IHRoZSBmcmFnbWVudCBpZGVudGlmaWVyIG9mIHRoZSBVUkwuXG4gICAgICovXG4gICAgcHVibGljIGdldCBoYXNoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNoO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHVzZXJuYW1lIHNwZWNpZmllZCBiZWZvcmUgdGhlIGRvbWFpbiBuYW1lLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgdXNlcm5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZXJuYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHBhc3N3b3JkIHNwZWNpZmllZCBiZWZvcmUgdGhlIGRvbWFpbiBuYW1lLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgcGFzc3dvcmQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Bhc3N3b3JkO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBwcm90b2NvbCBzY2hlbWUgb2YgdGhlIFVSTC5cbiAgICAgKiBAcGFyYW0gcHJvdG9jb2wgd2l0aCBvciB3aXRob3V0ICc6JyBhdCB0aGUgZW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoUHJvdG9jb2wocHJvdG9jb2w6IHN0cmluZyk6IFVybEJ1aWxkZXIge1xuXG4gICAgICAgIGlmICghcHJvdG9jb2wuZW5kc1dpdGgoJzonKSkge1xuICAgICAgICAgICAgcHJvdG9jb2wgPSBwcm90b2NvbCArICc6JztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3Byb3RvY29sID0gcHJvdG9jb2w7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGhvc3RuYW1lIG9mIHRoZSBVUkwuXG4gICAgICogQHBhcmFtIGhvc3RuYW1lXG4gICAgICovXG4gICAgcHVibGljIHdpdGhIb3N0bmFtZShob3N0bmFtZTogc3RyaW5nKTogVXJsQnVpbGRlciB7XG4gICAgICAgIHRoaXMuX2hvc3RuYW1lID0gaG9zdG5hbWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHBvcnQgb2YgdGhlIFVSTC5cbiAgICAgKiBAcGFyYW0gcG9ydFxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoUG9ydChwb3J0OiBzdHJpbmcpOiBVcmxCdWlsZGVyIHtcbiAgICAgICAgdGhpcy5fcG9ydCA9IHBvcnQ7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHBhdGggb2YgdGhlIFVSTC5cbiAgICAgKiBAcGFyYW0gcGF0aCB3aXRoIG9yIHdpdGhvdXQgc3RhcnRpbmcgJy8nLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoUGF0aChwYXRoOiBzdHJpbmcpOiBVcmxCdWlsZGVyIHtcblxuICAgICAgICBpZiAoIXBhdGguc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICAgICAgICBwYXRoID0gJy8nICsgcGF0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3BhdGggPSBwYXRoO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBoYXNoIG9mIHRoZSBVUkwuXG4gICAgICogQHBhcmFtIGhhc2ggd2l0aCBvciB3aXRob3V0IHN0YXJ0aW5nICcjJ1xuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoSGFzaChoYXNoOiBzdHJpbmcpOiBVcmxCdWlsZGVyIHtcblxuICAgICAgICBpZiAoIWhhc2guc3RhcnRzV2l0aCgnIycpKSB7XG4gICAgICAgICAgICBoYXNoID0gJyMnICsgaGFzaDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2hhc2ggPSBoYXNoO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSB1c2VybmFtZSBvZiB0aGUgVVJMLlxuICAgICAqIEBwYXJhbSB1c2VybmFtZVxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoVXNlcm5hbWUodXNlcm5hbWU6IHN0cmluZyk6IFVybEJ1aWxkZXIge1xuICAgICAgICB0aGlzLl91c2VybmFtZSA9IHVzZXJuYW1lO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBwYXNzd29yZCBvZiB0aGUgVVJMLlxuICAgICAqIEBwYXJhbSBwYXNzd29yZFxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoUGFzc3dvcmQocGFzc3dvcmQ6IHN0cmluZyk6IFVybEJ1aWxkZXIge1xuICAgICAgICB0aGlzLl9wYXNzd29yZCA9IHBhc3N3b3JkO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcHBlbmRzIGEgbmV3IHF1ZXJ5IHBhcmFtZXRlciB3aXRoIHRoZSBnaXZlbiBrZXkgLyB2YWx1ZSxcbiAgICAgKiByZWdhcmRsZXNzIGlmIHRoZSBzYW1lIHBhcmFtZXRlciBpcyBhbHJlYWR5IHByZXNlbnQuXG4gICAgICovXG4gICAgcHVibGljIGFwcGVuZFBhcmFtKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX3F1ZXJ5UGFyYW1zLmFwcGVuZChrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyB0aGUgZ2l2ZW4gcXVlcnkgcGFyYW1ldGVyIGlmIHByZXNlbnQuXG4gICAgICovXG4gICAgcHVibGljIHJlbW92ZVBhcmFtKGtleTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX3F1ZXJ5UGFyYW1zLnJlbW92ZShrZXkpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIHRoZSBnaXZlbiBxdWVyeSBwYXJhbWV0ZXIgd2l0aCB0aGUgZ2l2ZW4gbmV3IHZhbHVlLlxuICAgICAqIElmIG11bHRpcGxlIHdpdGggdGhlIHNhbWUga2V5IGV4aXN0cywgdGhleSB3aWxsIGJlIHJlbW92ZWQuXG4gICAgICogSWYgdGhlIGtleSBkb2VzIG5vdCBleGlzdCwgdGhlIHF1ZXJ5IHBhcmFtIHdpbGwgYmUgYWRkZWQuXG4gICAgICovXG4gICAgcHVibGljIHNldFBhcmFtKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX3F1ZXJ5UGFyYW1zLnNldChrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIGEgcXVlcnkgcGFyYW1ldGVyIHdpdGggdGhlIGdpdmVuIGtleSBleGlzdHMuXG4gICAgICovXG4gICAgcHVibGljIGhhc1BhcmFtKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9xdWVyeVBhcmFtcy5oYXMoa2V5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBvZiB0aGUgYXNzb2NpYXRlZCBxdWVyeSBwYXJhbS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UGFyYW0oa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcXVlcnlQYXJhbXMuZ2V0KGtleSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbGwgdmFsdWVzIG9mIHRoZSBhc3NvY2lhdGVkIHF1ZXJ5IHBhcmFtcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UGFyYW1zKGtleTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcXVlcnlQYXJhbXMuZ2V0QWxsT2Yoa2V5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRydWUgb25seSBpZiB0aGVyZSBhcmUgYW55IHF1ZXJ5IHBhcmFtZXRlcnMgcHJlc2VudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaGFzUGFyYW1zKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcXVlcnlQYXJhbXMuaGFzUGFyYW1zKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWF0ZXJpYWxpemVzIHRoZSB3aG9sZSBVUkwgaW50byBhIHN0cmluZy5cbiAgICAgKi9cbiAgICBwdWJsaWMgYnVpbGQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnVpbGRVcmxTdHJpbmcoKTtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgcHJpdmF0ZSBwYXJzZSh1cmxTdHJpbmc6IHN0cmluZyk6IHZvaWQge1xuXG4gICAgICAgIGNvbnN0IHVybCA9IG5ldyBVUkwodXJsU3RyaW5nKTtcblxuICAgICAgICB0aGlzLl9wcm90b2NvbCA9IHVybC5wcm90b2NvbDtcbiAgICAgICAgdGhpcy5faG9zdG5hbWUgPSB1cmwuaG9zdG5hbWU7XG4gICAgICAgIHRoaXMuX3BvcnQgPSB1cmwucG9ydDtcbiAgICAgICAgdGhpcy5fcGF0aCA9IHVybC5wYXRobmFtZTtcblxuICAgICAgICB0aGlzLl9xdWVyeVBhcmFtcyA9IG5ldyBVcmxRdWVyeVBhcmFtcyh1cmwuc2VhcmNoUGFyYW1zKTtcblxuICAgICAgICB0aGlzLl9oYXNoID0gdXJsLmhhc2g7XG5cbiAgICAgICAgdGhpcy5fdXNlcm5hbWUgPSB1cmwudXNlcm5hbWU7XG4gICAgICAgIHRoaXMuX3Bhc3N3b3JkID0gdXJsLnBhc3N3b3JkO1xuXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBidWlsZFVybFN0cmluZygpOiBzdHJpbmcge1xuXG4gICAgICAgIGxldCB1cmwgPSAnJztcblxuICAgICAgICBpZiAodGhpcy5fcHJvdG9jb2wpIHtcbiAgICAgICAgICAgIHVybCA9IHVybCArIHRoaXMuX3Byb3RvY29sICsgJy8vJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLl91c2VybmFtZSkge1xuICAgICAgICAgICAgdXJsID0gdXJsICsgdGhpcy5fdXNlcm5hbWU7XG4gICAgICAgICAgICBpZiAodGhpcy5fcGFzc3dvcmQpIHtcbiAgICAgICAgICAgICAgICB1cmwgPSB1cmwgKyAnOicgKyB0aGlzLl9wYXNzd29yZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVybCA9IHVybCArICdAJztcbiAgICAgICAgfVxuXG4gICAgICAgIHVybCA9IHVybCArIHRoaXMuYnVpbGRIb3N0KCk7XG5cbiAgICAgICAgaWYgKHRoaXMuX3BhdGggJiYgdGhpcy5fcGF0aCAhPT0gJy8nKSB7XG4gICAgICAgICAgICB1cmwgPSB1cmwgKyB0aGlzLl9wYXRoO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2VhcmNoUGFyYW1zU3RyaW5nID0gdGhpcy5fcXVlcnlQYXJhbXMudG9TdHJpbmcoKTtcbiAgICAgICAgaWYgKHNlYXJjaFBhcmFtc1N0cmluZykge1xuICAgICAgICAgICAgdXJsID0gdXJsICsgJz8nICsgc2VhcmNoUGFyYW1zU3RyaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuX2hhc2gpIHtcbiAgICAgICAgICAgIHVybCA9IHVybCArIHRoaXMuX2hhc2g7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdXJsO1xuICAgIH1cblxuICAgIHByaXZhdGUgYnVpbGRIb3N0KCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBob3N0ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuX2hvc3RuYW1lKSB7XG4gICAgICAgICAgICBob3N0ID0gaG9zdCArIHRoaXMuX2hvc3RuYW1lO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuX3BvcnQpIHtcbiAgICAgICAgICAgIGhvc3QgPSBob3N0ICsgJzonICsgdGhpcy5fcG9ydDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBob3N0O1xuICAgIH1cblxuXG59XG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class ValueWrapper {
|
|
2
|
+
/***************************************************************************
|
|
3
|
+
* *
|
|
4
|
+
* Static methods *
|
|
5
|
+
* *
|
|
6
|
+
**************************************************************************/
|
|
7
|
+
static from(value) {
|
|
8
|
+
return new ValueWrapper(value);
|
|
9
|
+
}
|
|
10
|
+
/***************************************************************************
|
|
11
|
+
* *
|
|
12
|
+
* Constructor *
|
|
13
|
+
* *
|
|
14
|
+
**************************************************************************/
|
|
15
|
+
constructor(value) {
|
|
16
|
+
this.value = value;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi91dGlscy92YWx1ZS13cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxZQUFZO0lBRXZCOzs7O2dGQUk0RTtJQUVyRSxNQUFNLENBQUMsSUFBSSxDQUFJLEtBQVE7UUFDNUIsT0FBTyxJQUFJLFlBQVksQ0FBSSxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ2tCLEtBQVE7UUFBUixVQUFLLEdBQUwsS0FBSyxDQUFHO0lBQ3RCLENBQUM7Q0FFTiIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgY2xhc3MgVmFsdWVXcmFwcGVyPFQ+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogU3RhdGljIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhdGljIGZyb208VD4odmFsdWU6IFQpOiBWYWx1ZVdyYXBwZXI8VD4ge1xuICAgIHJldHVybiBuZXcgVmFsdWVXcmFwcGVyPFQ+KHZhbHVlKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZTogVFxuICApIHsgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/material/icon";
|
|
4
|
+
import * as i2 from "@angular/material/card";
|
|
5
|
+
export class ElderAccessDeniedComponent {
|
|
6
|
+
constructor() { }
|
|
7
|
+
ngOnInit() {
|
|
8
|
+
}
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: ElderAccessDeniedComponent, selector: "elder-access-denied", ngImport: i0, template: "\n<div class=\"layout-col flex p-md\">\n <mat-card appearance=\"outlined\">\n <div class=\"layout-row place-start-center gap-md\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span>You do not have the permission to access this resource.</span>\n </div>\n </mat-card>\n</div>\n\n\n\n", styles: [".padding{padding:10px}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: 'elder-access-denied', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<div class=\"layout-col flex p-md\">\n <mat-card appearance=\"outlined\">\n <div class=\"layout-row place-start-center gap-md\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span>You do not have the permission to access this resource.</span>\n </div>\n </mat-card>\n</div>\n\n\n\n", styles: [".padding{padding:10px}\n"] }]
|
|
15
|
+
}], ctorParameters: function () { return []; } });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYWNjZXNzLWRlbmllZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2FjY2Vzcy1kZW5pZWQvZWxkZXItYWNjZXNzLWRlbmllZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2FjY2Vzcy1kZW5pZWQvZWxkZXItYWNjZXNzLWRlbmllZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXpFLE1BQU0sT0FBTywwQkFBMEI7SUFFbkMsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7OEdBTFEsMEJBQTBCO2tHQUExQiwwQkFBMEIsMkRDUnZDLGtUQVlBOzsyRkRKYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0kscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWxkZXItYWNjZXNzLWRlbmllZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWFjY2Vzcy1kZW5pZWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2VsZGVyLWFjY2Vzcy1kZW5pZWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckFjY2Vzc0RlbmllZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgfVxuXG59XG4iLCJcbjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZsZXggcC1tZFwiPlxuICA8bWF0LWNhcmQgYXBwZWFyYW5jZT1cIm91dGxpbmVkXCI+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGdhcC1tZFwiPlxuICAgICAgPG1hdC1pY29uIGNvbG9yPVwid2FyblwiPndhcm5pbmc8L21hdC1pY29uPlxuICAgICAgPHNwYW4+WW91IGRvIG5vdCBoYXZlIHRoZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGlzIHJlc291cmNlLjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtY2FyZD5cbjwvZGl2PlxuXG5cblxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ElderAccessDeniedComponent } from './elder-access-denied.component';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { MatCardModule } from '@angular/material/card';
|
|
5
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export { ElderAccessDeniedComponent } from './elder-access-denied.component';
|
|
8
|
+
export class ElderAccessDeniedModule {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedModule, declarations: [ElderAccessDeniedComponent], imports: [CommonModule,
|
|
11
|
+
MatIconModule, MatCardModule], exports: [ElderAccessDeniedComponent] }); }
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedModule, imports: [CommonModule,
|
|
13
|
+
MatIconModule, MatCardModule] }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAccessDeniedModule, decorators: [{
|
|
16
|
+
type: NgModule,
|
|
17
|
+
args: [{
|
|
18
|
+
declarations: [
|
|
19
|
+
ElderAccessDeniedComponent
|
|
20
|
+
],
|
|
21
|
+
exports: [
|
|
22
|
+
ElderAccessDeniedComponent
|
|
23
|
+
],
|
|
24
|
+
imports: [
|
|
25
|
+
CommonModule,
|
|
26
|
+
MatIconModule, MatCardModule
|
|
27
|
+
]
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYWNjZXNzLWRlbmllZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2FjY2Vzcy1kZW5pZWQvZWxkZXItYWNjZXNzLWRlbmllZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFdkQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFlN0UsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCOytHQUF2Qix1QkFBdUIsaUJBWDVCLDBCQUEwQixhQU0xQixZQUFZO1lBRVosYUFBYSxFQUFFLGFBQWEsYUFMNUIsMEJBQTBCOytHQVFyQix1QkFBdUIsWUFMNUIsWUFBWTtZQUVaLGFBQWEsRUFBRSxhQUFhOzsyRkFHdkIsdUJBQXVCO2tCQWJuQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDViwwQkFBMEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRzt3QkFDTiwwQkFBMEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRzt3QkFDTixZQUFZO3dCQUVaLGFBQWEsRUFBRSxhQUFhO3FCQUMvQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VsZGVyQWNjZXNzRGVuaWVkQ29tcG9uZW50fSBmcm9tICcuL2VsZGVyLWFjY2Vzcy1kZW5pZWQuY29tcG9uZW50JztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5leHBvcnQgeyBFbGRlckFjY2Vzc0RlbmllZENvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItYWNjZXNzLWRlbmllZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBFbGRlckFjY2Vzc0RlbmllZENvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0cyA6IFtcbiAgICAgICAgRWxkZXJBY2Nlc3NEZW5pZWRDb21wb25lbnRcbiAgICBdLFxuICAgIGltcG9ydHMgOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcblxuICAgICAgICBNYXRJY29uTW9kdWxlLCBNYXRDYXJkTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckFjY2Vzc0RlbmllZE1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/material/input";
|
|
6
|
+
import * as i3 from "@angular/material/form-field";
|
|
7
|
+
import * as i4 from "@angular/material/icon";
|
|
8
|
+
import * as i5 from "@ngx-translate/core";
|
|
9
|
+
import * as i6 from "../../../pipes/time-ago.pipe";
|
|
10
|
+
class AuditedEntityCtx {
|
|
11
|
+
constructor(audited) {
|
|
12
|
+
this.audited = audited;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export class ElderAuditedEntityComponent {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.appearance = undefined;
|
|
18
|
+
this.dateFormat = 'short';
|
|
19
|
+
this.auditedCtx$ = new BehaviorSubject(null);
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
}
|
|
23
|
+
set audited(audited) {
|
|
24
|
+
this.auditedCtx$.next(new AuditedEntityCtx(audited));
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAuditedEntityComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: ElderAuditedEntityComponent, selector: "elder-audited-entity", inputs: { appearance: "appearance", dateFormat: "dateFormat", audited: "audited" }, ngImport: i0, template: "<section class=\"layout-row wrap gap-sm\" *ngIf=\"auditedCtx$ | async as ctx\">\n <mat-form-field [appearance]=\"appearance\">\n <mat-label class=\"layout-row place-start-center gap-xs\">\n <mat-icon class=\"decent noselect\" inline>add_circle_outline</mat-icon>\n <span>{{'context.createdAt' | translate}} {{ctx.audited?.createdAt | timeAgo}}</span>\n </mat-label>\n <input matInput name=\"created\"\n [value]=\"ctx.audited?.createdAt | date:dateFormat\"\n readonly>\n <mat-hint>{{ctx.audited?.createdBy}}</mat-hint>\n </mat-form-field>\n\n <mat-form-field [appearance]=\"appearance\">\n <mat-label class=\"layout-row place-start-center gap-xs\">\n <mat-icon class=\"decent noselect\">mode_edit_outline</mat-icon>\n <span>{{'context.modifiedAt' | translate}} {{ctx.audited?.modifiedAt | timeAgo}}</span>\n </mat-label>\n <input matInput name=\"modified\"\n [value]=\"ctx.audited?.modifiedAt | date:dateFormat\"\n readonly>\n <mat-hint>{{ctx.audited?.modifiedBy}}</mat-hint>\n </mat-form-field>\n</section>\n", styles: [".decent{opacity:.5}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.TimeAgoPipe, name: "timeAgo" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: ElderAuditedEntityComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'elder-audited-entity', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"layout-row wrap gap-sm\" *ngIf=\"auditedCtx$ | async as ctx\">\n <mat-form-field [appearance]=\"appearance\">\n <mat-label class=\"layout-row place-start-center gap-xs\">\n <mat-icon class=\"decent noselect\" inline>add_circle_outline</mat-icon>\n <span>{{'context.createdAt' | translate}} {{ctx.audited?.createdAt | timeAgo}}</span>\n </mat-label>\n <input matInput name=\"created\"\n [value]=\"ctx.audited?.createdAt | date:dateFormat\"\n readonly>\n <mat-hint>{{ctx.audited?.createdBy}}</mat-hint>\n </mat-form-field>\n\n <mat-form-field [appearance]=\"appearance\">\n <mat-label class=\"layout-row place-start-center gap-xs\">\n <mat-icon class=\"decent noselect\">mode_edit_outline</mat-icon>\n <span>{{'context.modifiedAt' | translate}} {{ctx.audited?.modifiedAt | timeAgo}}</span>\n </mat-label>\n <input matInput name=\"modified\"\n [value]=\"ctx.audited?.modifiedAt | date:dateFormat\"\n readonly>\n <mat-hint>{{ctx.audited?.modifiedBy}}</mat-hint>\n </mat-form-field>\n</section>\n", styles: [".decent{opacity:.5}\n"] }]
|
|
32
|
+
}], ctorParameters: function () { return []; }, propDecorators: { appearance: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], dateFormat: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], audited: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}] } });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXVkaXRlZC1lbnRpdHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9hdWRpdGluZy9hdWRpdGVkLWVudGl0eS9lbGRlci1hdWRpdGVkLWVudGl0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2F1ZGl0aW5nL2F1ZGl0ZWQtZW50aXR5L2VsZGVyLWF1ZGl0ZWQtZW50aXR5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBSXJDLE1BQU0sZ0JBQWdCO0lBQ3BCLFlBQ2tCLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO0lBQ3JDLENBQUM7Q0FDTjtBQVNELE1BQU0sT0FBTywyQkFBMkI7SUFVdEM7UUFQTyxlQUFVLEdBQTJCLFNBQVMsQ0FBQztRQUcvQyxlQUFVLEdBQUcsT0FBTyxDQUFDO1FBRVosZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBbUIsSUFBSSxDQUFDLENBQUM7SUFFMUQsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUVELElBQ1csT0FBTyxDQUFDLE9BQXVCO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDOzhHQWxCVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnSkNsQnhDLDBrQ0F1QkE7OzJGRExhLDJCQUEyQjtrQkFOdkMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTTswRUFLeEMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQVdLLE9BQU87c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtJQXVkaXRlZEVudGl0eX0gZnJvbSAnLi4vaS1hdWRpdGVkLWVudGl0eSc7XG5pbXBvcnQge01hdEZvcm1GaWVsZEFwcGVhcmFuY2V9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuXG5jbGFzcyBBdWRpdGVkRW50aXR5Q3R4IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGF1ZGl0ZWQ6IElBdWRpdGVkRW50aXR5XG4gICkgeyB9XG59XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYXVkaXRlZC1lbnRpdHknLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItYXVkaXRlZC1lbnRpdHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1hdWRpdGVkLWVudGl0eS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckF1ZGl0ZWRFbnRpdHlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcHBlYXJhbmNlOiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlID0gdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRlRm9ybWF0ID0gJ3Nob3J0JztcblxuICBwdWJsaWMgcmVhZG9ubHkgYXVkaXRlZEN0eCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEF1ZGl0ZWRFbnRpdHlDdHg+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGF1ZGl0ZWQoYXVkaXRlZDogSUF1ZGl0ZWRFbnRpdHkpIHtcbiAgICB0aGlzLmF1ZGl0ZWRDdHgkLm5leHQobmV3IEF1ZGl0ZWRFbnRpdHlDdHgoYXVkaXRlZCkpO1xuICB9XG5cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwibGF5b3V0LXJvdyB3cmFwIGdhcC1zbVwiICpuZ0lmPVwiYXVkaXRlZEN0eCQgfCBhc3luYyBhcyBjdHhcIj5cbiAgPG1hdC1mb3JtLWZpZWxkIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIj5cbiAgICA8bWF0LWxhYmVsIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZ2FwLXhzXCI+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJkZWNlbnQgbm9zZWxlY3RcIiBpbmxpbmU+YWRkX2NpcmNsZV9vdXRsaW5lPC9tYXQtaWNvbj5cbiAgICAgIDxzcGFuPnt7J2NvbnRleHQuY3JlYXRlZEF0JyB8IHRyYW5zbGF0ZX19IHt7Y3R4LmF1ZGl0ZWQ/LmNyZWF0ZWRBdCB8IHRpbWVBZ299fTwvc3Bhbj5cbiAgICA8L21hdC1sYWJlbD5cbiAgICA8aW5wdXQgbWF0SW5wdXQgbmFtZT1cImNyZWF0ZWRcIlxuICAgICAgICAgICBbdmFsdWVdPVwiY3R4LmF1ZGl0ZWQ/LmNyZWF0ZWRBdCB8IGRhdGU6ZGF0ZUZvcm1hdFwiXG4gICAgICAgICAgIHJlYWRvbmx5PlxuICAgIDxtYXQtaGludD57e2N0eC5hdWRpdGVkPy5jcmVhdGVkQnl9fTwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPG1hdC1mb3JtLWZpZWxkIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIj5cbiAgICA8bWF0LWxhYmVsIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZ2FwLXhzXCI+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJkZWNlbnQgbm9zZWxlY3RcIj5tb2RlX2VkaXRfb3V0bGluZTwvbWF0LWljb24+XG4gICAgICA8c3Bhbj57eydjb250ZXh0Lm1vZGlmaWVkQXQnIHwgdHJhbnNsYXRlfX0ge3tjdHguYXVkaXRlZD8ubW9kaWZpZWRBdCB8IHRpbWVBZ299fTwvc3Bhbj5cbiAgICA8L21hdC1sYWJlbD5cbiAgICA8aW5wdXQgbWF0SW5wdXQgbmFtZT1cIm1vZGlmaWVkXCJcbiAgICAgICAgICAgW3ZhbHVlXT1cImN0eC5hdWRpdGVkPy5tb2RpZmllZEF0IHwgZGF0ZTpkYXRlRm9ybWF0XCJcbiAgICAgICAgICAgcmVhZG9ubHk+XG4gICAgPG1hdC1oaW50Pnt7Y3R4LmF1ZGl0ZWQ/Lm1vZGlmaWVkQnl9fTwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L3NlY3Rpb24+XG4iXX0=
|