@elderbyte/ngx-starter 14.12.0-beta6 → 14.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/elderbyte-ngx-starter.mjs +5 -0
- package/esm2020/lib/common/async/public_api.mjs +2 -0
- package/esm2020/lib/common/async/refreshing-entity.mjs +86 -0
- package/esm2020/lib/common/csv/csv-serializer.mjs +55 -0
- package/esm2020/lib/common/csv/csv-spec.mjs +99 -0
- package/esm2020/lib/common/csv/public_api.mjs +3 -0
- package/esm2020/lib/common/data/continuable-listing.mjs +10 -0
- package/esm2020/lib/common/data/data-context/data-context-active-page.mjs +130 -0
- package/esm2020/lib/common/data/data-context/data-context-auto-starter.mjs +74 -0
- package/esm2020/lib/common/data/data-context/data-context-base.mjs +283 -0
- package/esm2020/lib/common/data/data-context/data-context-builder.mjs +246 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-base.mjs +69 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-paged.mjs +143 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-token.mjs +136 -0
- package/esm2020/lib/common/data/data-context/data-context-life-cycle-binding.mjs +30 -0
- package/esm2020/lib/common/data/data-context/data-context-simple.mjs +59 -0
- package/esm2020/lib/common/data/data-context/data-context-source-auto-reloader.mjs +12 -0
- package/esm2020/lib/common/data/data-context/data-context-status.mjs +46 -0
- package/esm2020/lib/common/data/data-context/data-context.mjs +30 -0
- package/esm2020/lib/common/data/data-context/mat-table-data-context-binding.mjs +139 -0
- package/esm2020/lib/common/data/data-context/public_api.mjs +14 -0
- package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +55 -0
- package/esm2020/lib/common/data/datasource/data-source-processor.mjs +199 -0
- package/esm2020/lib/common/data/datasource/data-source.mjs +23 -0
- package/esm2020/lib/common/data/datasource/entity-id-util.mjs +11 -0
- package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +127 -0
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +102 -0
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +73 -0
- package/esm2020/lib/common/data/datasource/public_api.mjs +8 -0
- package/esm2020/lib/common/data/datasource/rest/public_api.mjs +2 -0
- package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +294 -0
- package/esm2020/lib/common/data/entity-set-patch.mjs +164 -0
- package/esm2020/lib/common/data/field-comparator.mjs +99 -0
- package/esm2020/lib/common/data/filters/filter-context.mjs +141 -0
- package/esm2020/lib/common/data/filters/filter.mjs +109 -0
- package/esm2020/lib/common/data/http-params-builder.mjs +110 -0
- package/esm2020/lib/common/data/page.mjs +58 -0
- package/esm2020/lib/common/data/public_api.mjs +12 -0
- package/esm2020/lib/common/data/required-filter-evaluator.mjs +70 -0
- package/esm2020/lib/common/data/sort-context.mjs +75 -0
- package/esm2020/lib/common/data/sort.mjs +11 -0
- package/esm2020/lib/common/data/token-chunk-request.mjs +8 -0
- package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +81 -0
- package/esm2020/lib/common/enums/public_api.mjs +2 -0
- package/esm2020/lib/common/errors/exception-detail.mjs +2 -0
- package/esm2020/lib/common/errors/public_api.mjs +3 -0
- package/esm2020/lib/common/errors/standard-error-detail.mjs +2 -0
- package/esm2020/lib/common/format/bytes-format.mjs +22 -0
- package/esm2020/lib/common/format/bytes-per-second-format.mjs +41 -0
- package/esm2020/lib/common/format/public_api.mjs +3 -0
- package/esm2020/lib/common/forms/elder-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +178 -0
- package/esm2020/lib/common/forms/elder-from-field-base.mjs +94 -0
- package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +39 -0
- package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +47 -0
- package/esm2020/lib/common/forms/elder-multi-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/form-field-base.component.mjs +106 -0
- package/esm2020/lib/common/forms/multi-model-base.component.mjs +32 -0
- package/esm2020/lib/common/forms/public_api.mjs +12 -0
- package/esm2020/lib/common/forms/template-composite-control.mjs +133 -0
- package/esm2020/lib/common/forms/value-accessor-base.mjs +146 -0
- package/esm2020/lib/common/forms/view-providers.mjs +30 -0
- package/esm2020/lib/common/http/http-client-builder.service.mjs +14 -0
- package/esm2020/lib/common/http/http-client-pristine.mjs +21 -0
- package/esm2020/lib/common/http/public_api.mjs +5 -0
- package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +95 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +49 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress.mjs +17 -0
- package/esm2020/lib/common/http/transfer/data-transfer-state.mjs +82 -0
- package/esm2020/lib/common/http/transfer/data-transfer-status.mjs +24 -0
- package/esm2020/lib/common/http/transfer/http-data-transfer.mjs +180 -0
- package/esm2020/lib/common/http/transfer/public_api.mjs +7 -0
- package/esm2020/lib/common/http/upload/file-upload-client.mjs +42 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-base.mjs +6 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-text.mjs +16 -0
- package/esm2020/lib/common/i18n/entity/language-tag.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/locale.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/localisation-picker.mjs +30 -0
- package/esm2020/lib/common/i18n/entity/localized.mjs +2 -0
- package/esm2020/lib/common/i18n/entity/public_api.mjs +6 -0
- package/esm2020/lib/common/i18n/public_api.mjs +2 -0
- package/esm2020/lib/common/json-map.mjs +18 -0
- package/esm2020/lib/common/objects.mjs +41 -0
- package/esm2020/lib/common/public_api.mjs +19 -0
- package/esm2020/lib/common/reactive-map.mjs +69 -0
- package/esm2020/lib/common/selection/public_api.mjs +2 -0
- package/esm2020/lib/common/selection/selection-model.mjs +212 -0
- package/esm2020/lib/common/sets.mjs +44 -0
- package/esm2020/lib/common/suggestion-provider.mjs +12 -0
- package/esm2020/lib/common/templates/template-slot-manager.mjs +135 -0
- package/esm2020/lib/common/time/date-util.mjs +93 -0
- package/esm2020/lib/common/time/interval.mjs +419 -0
- package/esm2020/lib/common/time/period-duration.mjs +130 -0
- package/esm2020/lib/common/time/public_api.mjs +5 -0
- package/esm2020/lib/common/time/time-util.mjs +41 -0
- package/esm2020/lib/common/url/elder-router.service.mjs +54 -0
- package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +119 -0
- package/esm2020/lib/common/url/public_api.mjs +4 -0
- package/esm2020/lib/common/url/url-query-params.mjs +133 -0
- package/esm2020/lib/common/utils/batcher.mjs +35 -0
- package/esm2020/lib/common/utils/collection-util.mjs +109 -0
- package/esm2020/lib/common/utils/filter-util.mjs +52 -0
- package/esm2020/lib/common/utils/next-number-util.mjs +88 -0
- package/esm2020/lib/common/utils/ng-zone-utils.mjs +16 -0
- package/esm2020/lib/common/utils/parse-util.mjs +16 -0
- package/esm2020/lib/common/utils/property-path-util.mjs +28 -0
- package/esm2020/lib/common/utils/public_api.mjs +12 -0
- package/esm2020/lib/common/utils/query-list-binding.mjs +67 -0
- package/esm2020/lib/common/utils/sort-util.mjs +30 -0
- package/esm2020/lib/common/utils/url-builder.mjs +275 -0
- package/esm2020/lib/common/utils/uuid-util.mjs +29 -0
- package/esm2020/lib/common/utils/value-wrapper.mjs +19 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +16 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +30 -0
- package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +39 -0
- package/esm2020/lib/components/auditing/elder-audit.module.mjs +42 -0
- package/esm2020/lib/components/auditing/i-audited-entity.mjs +3 -0
- package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +15 -0
- package/esm2020/lib/components/button-group/elder-button-group.module.mjs +35 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +123 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +15 -0
- package/esm2020/lib/components/card-organizer/card-organizer-data.mjs +93 -0
- package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +205 -0
- package/esm2020/lib/components/card-organizer/card-stack.mjs +176 -0
- package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +49 -0
- package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +17 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +156 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +65 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +56 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +63 -0
- package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +46 -0
- package/esm2020/lib/components/connectivity/public_api.mjs +3 -0
- package/esm2020/lib/components/containers/elder-containers.module.mjs +25 -0
- package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +24 -0
- package/esm2020/lib/components/containers/public_api.mjs +2 -0
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +77 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.mjs +40 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +38 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +114 -0
- package/esm2020/lib/components/csv/elder-csv.module.mjs +37 -0
- package/esm2020/lib/components/currency/elder-currency.module.mjs +24 -0
- package/esm2020/lib/components/currency/elder-currency.pipe.mjs +33 -0
- package/esm2020/lib/components/currency/model/currency-code.mjs +38 -0
- package/esm2020/lib/components/currency/model/currency-unit-registry.mjs +30 -0
- package/esm2020/lib/components/currency/model/currency-unit.mjs +10 -0
- package/esm2020/lib/components/currency/model/currency.mjs +15 -0
- package/esm2020/lib/components/currency/public_api.mjs +7 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +75 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +89 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +67 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +34 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +47 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +32 -0
- package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +67 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +259 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options-provider.mjs +44 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +45 -0
- package/esm2020/lib/components/data-view/base/elder-data-view.mjs +3 -0
- package/esm2020/lib/components/data-view/base/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +45 -0
- package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +89 -0
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +149 -0
- package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +89 -0
- package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +98 -0
- package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +37 -0
- package/esm2020/lib/components/data-view/common/selection/master-selection-state.mjs +10 -0
- package/esm2020/lib/components/data-view/elder-data-view-interaction-mode.mjs +2 -0
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +306 -0
- package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +81 -0
- package/esm2020/lib/components/data-view/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +19 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +78 -0
- package/esm2020/lib/components/data-view/table/activation/elder-item-activator.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation-options.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +261 -0
- package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +72 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +18 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +321 -0
- package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +17 -0
- package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +96 -0
- package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +136 -0
- package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +20 -0
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +141 -0
- package/esm2020/lib/components/data-view/table/model/elder-column-layout.mjs +110 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +81 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-provider.mjs +40 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-query-group.mjs +87 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +165 -0
- package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +25 -0
- package/esm2020/lib/components/dialogs/elder-dialog-config.mjs +3 -0
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +84 -0
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +168 -0
- package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +46 -0
- package/esm2020/lib/components/errors/elder-error.module.mjs +41 -0
- package/esm2020/lib/components/errors/error-util.mjs +94 -0
- package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +66 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +55 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +27 -0
- package/esm2020/lib/components/files/blob-url.mjs +10 -0
- package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +225 -0
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +109 -0
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +143 -0
- package/esm2020/lib/components/files/elder-file.module.mjs +67 -0
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +55 -0
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +74 -0
- package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +51 -0
- package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +35 -0
- package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +42 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +82 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +159 -0
- package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +77 -0
- package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +111 -0
- package/esm2020/lib/components/forms/directives/elder-max.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-min.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +101 -0
- package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +36 -0
- package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +29 -0
- package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +157 -0
- package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +27 -0
- package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +120 -0
- package/esm2020/lib/components/forms/directives/validation/elder-multiple-of.validator.mjs +57 -0
- package/esm2020/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.mjs +68 -0
- package/esm2020/lib/components/forms/elder-forms.module.mjs +22 -0
- package/esm2020/lib/components/forms/public_api.mjs +2 -0
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +146 -0
- package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +185 -0
- package/esm2020/lib/components/forms/search/elder-search.module.mjs +66 -0
- package/esm2020/lib/components/forms/search/model/search-input-state.mjs +78 -0
- package/esm2020/lib/components/forms/search/model/search-input.mjs +2 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +123 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +16 -0
- package/esm2020/lib/components/global-search/elder-global-search.component.mjs +126 -0
- package/esm2020/lib/components/global-search/elder-global-search.module.mjs +32 -0
- package/esm2020/lib/components/global-search/elder-global-search.service.mjs +93 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +90 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +26 -0
- package/esm2020/lib/components/graph/elder-progress-bar/sub-bar.mjs +7 -0
- package/esm2020/lib/components/graph/public_api.mjs +2 -0
- package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +28 -0
- package/esm2020/lib/components/headers/elder-header.module.mjs +43 -0
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +68 -0
- package/esm2020/lib/components/http-support/public_api.mjs +2 -0
- package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +119 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +135 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +151 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +56 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +39 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +74 -0
- package/esm2020/lib/components/i18n/language/elder-language-config.mjs +3 -0
- package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +69 -0
- package/esm2020/lib/components/i18n/language/elder-language.module.mjs +72 -0
- package/esm2020/lib/components/i18n/language/elder-language.service.mjs +121 -0
- package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +65 -0
- package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +53 -0
- package/esm2020/lib/components/i18n/public_api.mjs +4 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +127 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +136 -0
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +95 -0
- package/esm2020/lib/components/iframes/iframe-close.directive.mjs +41 -0
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +51 -0
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +126 -0
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +78 -0
- package/esm2020/lib/components/iframes/iframe.service.mjs +48 -0
- package/esm2020/lib/components/iframes/typed-event-message.mjs +42 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +61 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +157 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +40 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +9 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +186 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +197 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +114 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +58 -0
- package/esm2020/lib/components/input/autocomplete/many/word-position-finder.mjs +58 -0
- package/esm2020/lib/components/input/public_api.mjs +2 -0
- package/esm2020/lib/components/labels/elder-labels.module.mjs +30 -0
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +230 -0
- package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +229 -0
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +64 -0
- package/esm2020/lib/components/measures/elder-measures.module.mjs +116 -0
- package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +41 -0
- package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +73 -0
- package/esm2020/lib/components/measures/elder-unit.service.mjs +115 -0
- package/esm2020/lib/components/measures/model/dimensions.mjs +17 -0
- package/esm2020/lib/components/measures/model/quantity.mjs +12 -0
- package/esm2020/lib/components/measures/model/unit-dimension.mjs +14 -0
- package/esm2020/lib/components/measures/model/unit-registry.mjs +81 -0
- package/esm2020/lib/components/measures/model/unit.mjs +143 -0
- package/esm2020/lib/components/measures/public_api.mjs +8 -0
- package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +189 -0
- package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +237 -0
- package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +164 -0
- package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +55 -0
- package/esm2020/lib/components/navigation/bread-crumbs/path/path.mjs +37 -0
- package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +51 -0
- package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +93 -0
- package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +64 -0
- package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +12 -0
- package/esm2020/lib/components/navigation/public_api.mjs +4 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +46 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +76 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +68 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +66 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-column-position.mjs +2 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +39 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +85 -0
- package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +43 -0
- package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +72 -0
- package/esm2020/lib/components/overlays/elder-overlay.component.mjs +204 -0
- package/esm2020/lib/components/overlays/elder-overlay.module.mjs +41 -0
- package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-panel.module.mjs +38 -0
- package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +26 -0
- package/esm2020/lib/components/public_api.mjs +40 -0
- package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +77 -0
- package/esm2020/lib/components/select/auto/elder-select-first-util.mjs +62 -0
- package/esm2020/lib/components/select/elder-select-base.mjs +284 -0
- package/esm2020/lib/components/select/elder-select-chip.directive.mjs +45 -0
- package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +133 -0
- package/esm2020/lib/components/select/elder-select-value.directive.mjs +15 -0
- package/esm2020/lib/components/select/elder-select.module.mjs +133 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +356 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +237 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +67 -0
- package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +86 -0
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +126 -0
- package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +47 -0
- package/esm2020/lib/components/select/public_api.mjs +6 -0
- package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +57 -0
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +442 -0
- package/esm2020/lib/components/select/single/elder-select-form-field.mjs +45 -0
- package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +152 -0
- package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +48 -0
- package/esm2020/lib/components/select-list/elder-select-list.module.mjs +36 -0
- package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +75 -0
- package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +118 -0
- package/esm2020/lib/components/shell/drawers/drawer-outlet-binding.mjs +60 -0
- package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +117 -0
- package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +128 -0
- package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +46 -0
- package/esm2020/lib/components/shell/elder-shell.module.mjs +90 -0
- package/esm2020/lib/components/shell/elder-shell.service.mjs +145 -0
- package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +73 -0
- package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +206 -0
- package/esm2020/lib/components/shell/shell-content-slot.mjs +2 -0
- package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +137 -0
- package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +25 -0
- package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +256 -0
- package/esm2020/lib/components/tabs/elder-tab.module.mjs +32 -0
- package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +62 -0
- package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +72 -0
- package/esm2020/lib/components/theme/elder-theme.directive.mjs +61 -0
- package/esm2020/lib/components/theme/elder-theme.module.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme.service.mjs +123 -0
- package/esm2020/lib/components/theme/known-elder-themes.mjs +6 -0
- package/esm2020/lib/components/theme/public_api.mjs +2 -0
- package/esm2020/lib/components/theme/theme-spec.mjs +15 -0
- package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +23 -0
- package/esm2020/lib/components/time/duration/duration-bucket.mjs +67 -0
- package/esm2020/lib/components/time/duration/duration-format.mjs +271 -0
- package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +109 -0
- package/esm2020/lib/components/time/duration/iso-duration-str.mjs +2 -0
- package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +100 -0
- package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +79 -0
- package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +126 -0
- package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +189 -0
- package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +84 -0
- package/esm2020/lib/components/time/elder-time.module.mjs +133 -0
- package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +119 -0
- package/esm2020/lib/components/time/period/period-bucket.mjs +31 -0
- package/esm2020/lib/components/time/period/period-format.mjs +89 -0
- package/esm2020/lib/components/time/public_api.mjs +8 -0
- package/esm2020/lib/components/toasts/elder-toast.module.mjs +22 -0
- package/esm2020/lib/components/toasts/elder-toast.service.mjs +197 -0
- package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +73 -0
- package/esm2020/lib/components/toasts/toast-type.mjs +7 -0
- package/esm2020/lib/components/toasts/toast.mjs +2 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.mjs +9 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +54 -0
- package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +84 -0
- package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +65 -0
- package/esm2020/lib/components/viewers/elder-viewers.module.mjs +25 -0
- package/esm2020/lib/features/event-source/elder-event-source.service.mjs +56 -0
- package/esm2020/lib/features/event-source/public_api.mjs +3 -0
- package/esm2020/lib/features/event-source/reactive-event-source.mjs +198 -0
- package/esm2020/lib/features/kafent/access-token-provider.mjs +20 -0
- package/esm2020/lib/features/kafent/kafent-config.mjs +24 -0
- package/esm2020/lib/features/kafent/kafent-event-stream.mjs +25 -0
- package/esm2020/lib/features/kafent/kafent-event.mjs +3 -0
- package/esm2020/lib/features/kafent/kafent-event.service.mjs +107 -0
- package/esm2020/lib/features/kafent/kafent-live-event-request.mjs +2 -0
- package/esm2020/lib/features/kafent/kafent.module.mjs +61 -0
- package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +128 -0
- package/esm2020/lib/features/kafent/sse/kafent-topic-sse.mjs +98 -0
- package/esm2020/lib/features/public_api.mjs +3 -0
- package/esm2020/lib/pipes/bytes.pipe.mjs +24 -0
- package/esm2020/lib/pipes/elder-pipes.module.mjs +67 -0
- package/esm2020/lib/pipes/elder-repeat.pipe.mjs +21 -0
- package/esm2020/lib/pipes/elder-round.pipe.mjs +35 -0
- package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +20 -0
- package/esm2020/lib/pipes/elder-truncate.pipe.mjs +40 -0
- package/esm2020/lib/pipes/iso-duration.pipe.mjs +58 -0
- package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +49 -0
- package/esm2020/lib/pipes/iso-interval.pipe.mjs +109 -0
- package/esm2020/lib/pipes/public_api.mjs +2 -0
- package/esm2020/lib/pipes/time-ago.pipe.mjs +104 -0
- package/esm2020/lib/pipes/time-duration.pipe.mjs +98 -0
- package/esm2020/lib/pipes/weight.pipe.mjs +56 -0
- package/esm2020/public_api.mjs +8 -0
- package/fesm2015/elderbyte-ngx-starter.mjs +27485 -0
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -0
- package/fesm2020/elderbyte-ngx-starter.mjs +27371 -0
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/common/async/public_api.d.ts +1 -0
- package/lib/common/async/refreshing-entity.d.ts +55 -0
- package/lib/common/csv/csv-serializer.d.ts +33 -0
- package/lib/common/csv/csv-spec.d.ts +71 -0
- package/lib/common/csv/public_api.d.ts +2 -0
- package/lib/common/data/continuable-listing.d.ts +28 -0
- package/lib/common/data/data-context/data-context-active-page.d.ts +75 -0
- package/lib/common/data/data-context/data-context-auto-starter.d.ts +41 -0
- package/lib/common/data/data-context/data-context-base.d.ts +149 -0
- package/lib/common/data/data-context/data-context-builder.d.ts +142 -0
- package/lib/common/data/data-context/data-context-continuable-base.d.ts +43 -0
- package/lib/common/data/data-context/data-context-continuable-paged.d.ts +58 -0
- package/lib/common/data/data-context/data-context-continuable-token.d.ts +48 -0
- package/lib/common/data/data-context/data-context-life-cycle-binding.d.ts +33 -0
- package/lib/common/data/data-context/data-context-simple.d.ts +30 -0
- package/lib/common/data/data-context/data-context-source-auto-reloader.d.ts +8 -0
- package/lib/common/data/data-context/data-context-status.d.ts +30 -0
- package/lib/common/data/data-context/data-context.d.ts +154 -0
- package/lib/common/data/data-context/mat-table-data-context-binding.d.ts +60 -0
- package/lib/common/data/data-context/public_api.d.ts +13 -0
- package/lib/common/data/datasource/data-source-adapter.d.ts +39 -0
- package/lib/common/data/datasource/data-source-processor.d.ts +106 -0
- package/lib/common/data/datasource/data-source.d.ts +58 -0
- package/lib/common/data/datasource/entity-id-util.d.ts +3 -0
- package/lib/common/data/datasource/fetcher/delegate-data-source.d.ts +84 -0
- package/lib/common/data/datasource/local/local-list-data-source.d.ts +61 -0
- package/lib/common/data/datasource/local/local-paged-data-source.d.ts +49 -0
- package/lib/common/data/datasource/public_api.d.ts +7 -0
- package/lib/common/data/datasource/rest/public_api.d.ts +1 -0
- package/lib/common/data/datasource/rest/rest-client.d.ts +162 -0
- package/lib/common/data/entity-set-patch.d.ts +74 -0
- package/lib/common/data/field-comparator.d.ts +43 -0
- package/lib/common/data/filters/filter-context.d.ts +63 -0
- package/lib/common/data/filters/filter.d.ts +52 -0
- package/lib/common/data/http-params-builder.d.ts +45 -0
- package/lib/common/data/page.d.ts +41 -0
- package/lib/common/data/public_api.d.ts +11 -0
- package/lib/common/data/required-filter-evaluator.d.ts +46 -0
- package/lib/common/data/sort-context.d.ts +42 -0
- package/lib/common/data/sort.d.ts +8 -0
- package/lib/common/data/token-chunk-request.d.ts +8 -0
- package/lib/common/enums/elder-enum-translation.service.d.ts +52 -0
- package/lib/common/enums/public_api.d.ts +1 -0
- package/lib/common/errors/exception-detail.d.ts +5 -0
- package/{src/lib/common/errors/public_api.ts → lib/common/errors/public_api.d.ts} +0 -0
- package/lib/common/errors/standard-error-detail.d.ts +22 -0
- package/lib/common/format/bytes-format.d.ts +4 -0
- package/lib/common/format/bytes-per-second-format.d.ts +5 -0
- package/{src/lib/common/format/public_api.ts → lib/common/format/public_api.d.ts} +0 -0
- package/lib/common/forms/elder-entity-value-accessor.d.ts +42 -0
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +103 -0
- package/lib/common/forms/elder-from-field-base.d.ts +52 -0
- package/lib/common/forms/elder-from-field-entity-base.d.ts +31 -0
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +35 -0
- package/lib/common/forms/elder-multi-entity-value-accessor.d.ts +52 -0
- package/lib/common/forms/form-field-base.component.d.ts +74 -0
- package/lib/common/forms/multi-model-base.component.d.ts +23 -0
- package/lib/common/forms/public_api.d.ts +11 -0
- package/lib/common/forms/template-composite-control.d.ts +64 -0
- package/lib/common/forms/value-accessor-base.d.ts +98 -0
- package/lib/common/forms/view-providers.d.ts +23 -0
- package/lib/common/http/http-client-builder.service.d.ts +6 -0
- package/lib/common/http/http-client-pristine.d.ts +10 -0
- package/lib/common/http/public_api.d.ts +4 -0
- package/lib/common/http/transfer/data-transfer-factory.d.ts +70 -0
- package/lib/common/http/transfer/data-transfer-progress-aggregate.d.ts +27 -0
- package/lib/common/http/transfer/data-transfer-progress.d.ts +13 -0
- package/lib/common/http/transfer/data-transfer-state.d.ts +52 -0
- package/lib/common/http/transfer/data-transfer-status.d.ts +22 -0
- package/lib/common/http/transfer/http-data-transfer.d.ts +96 -0
- package/lib/common/http/transfer/public_api.d.ts +6 -0
- package/lib/common/http/upload/file-upload-client.d.ts +38 -0
- package/lib/common/i18n/entity/impl/i18n-base.d.ts +6 -0
- package/lib/common/i18n/entity/impl/i18n-text.d.ts +11 -0
- package/lib/common/i18n/entity/language-tag.d.ts +15 -0
- package/lib/common/i18n/entity/locale.d.ts +8 -0
- package/lib/common/i18n/entity/localisation-picker.d.ts +14 -0
- package/lib/common/i18n/entity/localized.d.ts +10 -0
- package/lib/common/i18n/entity/public_api.d.ts +5 -0
- package/lib/common/i18n/public_api.d.ts +1 -0
- package/lib/common/json-map.d.ts +7 -0
- package/lib/common/objects.d.ts +19 -0
- package/lib/common/public_api.d.ts +18 -0
- package/lib/common/reactive-map.d.ts +40 -0
- package/{src/lib/common/selection/public_api.ts → lib/common/selection/public_api.d.ts} +0 -0
- package/lib/common/selection/selection-model.d.ts +82 -0
- package/lib/common/sets.d.ts +20 -0
- package/lib/common/suggestion-provider.d.ts +13 -0
- package/lib/common/templates/template-slot-manager.d.ts +70 -0
- package/lib/common/time/date-util.d.ts +54 -0
- package/lib/common/time/interval.d.ts +287 -0
- package/lib/common/time/period-duration.d.ts +84 -0
- package/lib/common/time/public_api.d.ts +4 -0
- package/lib/common/time/time-util.d.ts +15 -0
- package/lib/common/url/elder-router.service.d.ts +36 -0
- package/lib/common/url/elder-url-fragment-params.service.d.ts +62 -0
- package/lib/common/url/public_api.d.ts +3 -0
- package/lib/common/url/url-query-params.d.ts +96 -0
- package/lib/common/utils/batcher.d.ts +14 -0
- package/lib/common/utils/collection-util.d.ts +35 -0
- package/lib/common/utils/filter-util.d.ts +7 -0
- package/lib/common/utils/next-number-util.d.ts +39 -0
- package/lib/common/utils/ng-zone-utils.d.ts +7 -0
- package/lib/common/utils/parse-util.d.ts +8 -0
- package/lib/common/utils/property-path-util.d.ts +8 -0
- package/{src/lib/common/utils/public_api.ts → lib/common/utils/public_api.d.ts} +0 -0
- package/lib/common/utils/query-list-binding.d.ts +57 -0
- package/lib/common/utils/sort-util.d.ts +10 -0
- package/lib/common/utils/url-builder.d.ts +160 -0
- package/lib/common/utils/uuid-util.d.ts +18 -0
- package/lib/common/utils/value-wrapper.d.ts +15 -0
- package/lib/components/access-denied/elder-access-denied.component.d.ts +8 -0
- package/lib/components/access-denied/elder-access-denied.module.d.ts +11 -0
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +20 -0
- package/lib/components/auditing/elder-audit.module.d.ts +14 -0
- package/lib/components/auditing/i-audited-entity.d.ts +13 -0
- package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +8 -0
- package/lib/components/button-group/elder-button-group.module.d.ts +12 -0
- package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +64 -0
- package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +9 -0
- package/lib/components/card-organizer/card-organizer-data.d.ts +57 -0
- package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +89 -0
- package/lib/components/card-organizer/card-stack.d.ts +146 -0
- package/lib/components/card-organizer/elder-card-organizer.module.d.ts +22 -0
- package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +6 -0
- package/lib/components/cards/elder-card/elder-card.component.d.ts +68 -0
- package/lib/components/cards/elder-card/elder-card.module.d.ts +13 -0
- package/lib/components/connectivity/elder-connectivity.module.d.ts +14 -0
- package/lib/components/connectivity/elder-connectivity.service.d.ts +36 -0
- package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +33 -0
- package/lib/components/connectivity/public_api.d.ts +2 -0
- package/lib/components/containers/elder-containers.module.d.ts +9 -0
- package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +12 -0
- package/lib/components/containers/public_api.d.ts +1 -0
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +51 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.d.ts +35 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.service.d.ts +28 -0
- package/lib/components/csv/elder-csv-stream-exporter.d.ts +58 -0
- package/lib/components/csv/elder-csv.module.d.ts +14 -0
- package/lib/components/currency/elder-currency.module.d.ts +8 -0
- package/lib/components/currency/elder-currency.pipe.d.ts +21 -0
- package/lib/components/currency/model/currency-code.d.ts +36 -0
- package/lib/components/currency/model/currency-unit-registry.d.ts +23 -0
- package/lib/components/currency/model/currency-unit.d.ts +7 -0
- package/lib/components/currency/model/currency.d.ts +10 -0
- package/lib/components/currency/public_api.d.ts +6 -0
- package/lib/components/data-transfer/elder-data-transfer.module.d.ts +26 -0
- package/lib/components/data-transfer/elder-data-transfer.service.d.ts +55 -0
- package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +30 -0
- package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +29 -0
- package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +31 -0
- package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +28 -0
- package/lib/components/data-view/base/data-view-options-provider-binding.d.ts +39 -0
- package/lib/components/data-view/base/elder-data-view-base.d.ts +129 -0
- package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +38 -0
- package/lib/components/data-view/base/elder-data-view-options.d.ts +34 -0
- package/lib/components/data-view/base/elder-data-view.d.ts +7 -0
- package/lib/components/data-view/base/public_api.d.ts +5 -0
- package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +32 -0
- package/lib/components/data-view/common/elder-data-common.module.d.ts +29 -0
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +66 -0
- package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +45 -0
- package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +48 -0
- package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +26 -0
- package/lib/components/data-view/common/selection/master-selection-state.d.ts +8 -0
- package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +21 -0
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +113 -0
- package/lib/components/data-view/grid/elder-grid.module.d.ts +24 -0
- package/lib/components/data-view/public_api.d.ts +5 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +9 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +28 -0
- package/lib/components/data-view/table/activation/elder-item-activator.d.ts +3 -0
- package/lib/components/data-view/table/activation/elder-table-activation-options.d.ts +16 -0
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +78 -0
- package/lib/components/data-view/table/elder-number-cell.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-paginator-intl.d.ts +38 -0
- package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +129 -0
- package/lib/components/data-view/table/elder-table-column.directive.d.ts +9 -0
- package/lib/components/data-view/table/elder-table-extension.directive.d.ts +53 -0
- package/lib/components/data-view/table/elder-table-root.directive.d.ts +15 -0
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +63 -0
- package/lib/components/data-view/table/elder-table-sort.directive.d.ts +11 -0
- package/lib/components/data-view/table/elder-table.module.d.ts +47 -0
- package/lib/components/data-view/table/model/elder-column-layout.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-provider.d.ts +25 -0
- package/lib/components/data-view/table/model/elder-table-model-query-group.d.ts +53 -0
- package/lib/components/data-view/table/model/elder-table-model.d.ts +83 -0
- package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/elder-dialog-config.d.ts +16 -0
- package/lib/components/dialogs/elder-dialog.module.d.ts +37 -0
- package/lib/components/dialogs/elder-dialog.service.d.ts +72 -0
- package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +29 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +24 -0
- package/lib/components/errors/elder-error.module.d.ts +16 -0
- package/lib/components/errors/error-util.d.ts +23 -0
- package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +42 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +33 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +11 -0
- package/lib/components/files/blob-url.d.ts +6 -0
- package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +107 -0
- package/lib/components/files/elder-file-drop-zone.directive.d.ts +45 -0
- package/lib/components/files/elder-file-select.directive.d.ts +66 -0
- package/lib/components/files/elder-file.module.d.ts +23 -0
- package/lib/components/files/file-select/file-select.component.d.ts +34 -0
- package/lib/components/files/file-upload/file-upload.component.d.ts +45 -0
- package/lib/components/forms/clipboard/elder-clipboard.service.d.ts +26 -0
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +32 -0
- package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +22 -0
- package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +21 -0
- package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-forms-directives.module.d.ts +68 -0
- package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +41 -0
- package/lib/components/forms/directives/elder-key-event.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-max.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-min.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +48 -0
- package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +13 -0
- package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +16 -0
- package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +63 -0
- package/lib/components/forms/directives/elder-touched.directive.d.ts +14 -0
- package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +51 -0
- package/lib/components/forms/directives/validation/elder-multiple-of.validator.d.ts +20 -0
- package/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.d.ts +33 -0
- package/lib/components/forms/elder-forms.module.d.ts +12 -0
- package/lib/components/forms/public_api.d.ts +1 -0
- package/lib/components/forms/search/elder-search-context.directive.d.ts +79 -0
- package/lib/components/forms/search/elder-search-input.directive.d.ts +85 -0
- package/lib/components/forms/search/elder-search.module.d.ts +25 -0
- package/lib/components/forms/search/model/search-input-state.d.ts +67 -0
- package/lib/components/forms/search/model/search-input.d.ts +21 -0
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +72 -0
- package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +6 -0
- package/lib/components/global-search/elder-global-search.component.d.ts +39 -0
- package/lib/components/global-search/elder-global-search.module.d.ts +18 -0
- package/lib/components/global-search/elder-global-search.service.d.ts +54 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +47 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +10 -0
- package/lib/components/graph/elder-progress-bar/sub-bar.d.ts +5 -0
- package/{src/lib/components/graph/public_api.ts → lib/components/graph/public_api.d.ts} +0 -0
- package/lib/components/headers/elder-header/elder-header.component.d.ts +25 -0
- package/lib/components/headers/elder-header.module.d.ts +11 -0
- package/lib/components/http-support/elder-http-client.service.d.ts +48 -0
- package/lib/components/http-support/public_api.d.ts +1 -0
- package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +37 -0
- package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +62 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +22 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog.service.d.ts +13 -0
- package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +67 -0
- package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +17 -0
- package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +37 -0
- package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +23 -0
- package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +22 -0
- package/lib/components/i18n/entities/picker/localisation-picker.service.d.ts +44 -0
- package/lib/components/i18n/language/elder-language-config.d.ts +14 -0
- package/lib/components/i18n/language/elder-language-interceptor.d.ts +41 -0
- package/lib/components/i18n/language/elder-language.module.d.ts +26 -0
- package/lib/components/i18n/language/elder-language.service.d.ts +77 -0
- package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +37 -0
- package/lib/components/i18n/locales/elder-locales-de-ch.module.d.ts +10 -0
- package/{src/lib/components/i18n/public_api.ts → lib/components/i18n/public_api.d.ts} +0 -0
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +68 -0
- package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +62 -0
- package/lib/components/iframes/elder-iframe.module.d.ts +27 -0
- package/lib/components/iframes/iframe-close.directive.d.ts +24 -0
- package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +36 -0
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +92 -0
- package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +48 -0
- package/lib/components/iframes/iframe.service.d.ts +25 -0
- package/lib/components/iframes/typed-event-message.d.ts +26 -0
- package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +30 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +63 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +19 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.d.ts +8 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +87 -0
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +78 -0
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +60 -0
- package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +19 -0
- package/lib/components/input/autocomplete/many/word-position-finder.d.ts +15 -0
- package/lib/components/input/public_api.d.ts +1 -0
- package/lib/components/labels/elder-labels.module.d.ts +15 -0
- package/lib/components/labels/labels-input/labels-input.component.d.ts +91 -0
- package/lib/components/measures/dimensions-input/elder-dimensions-input.component.d.ts +109 -0
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +30 -0
- package/lib/components/measures/elder-measures.module.d.ts +32 -0
- package/lib/components/measures/elder-quantity-transform.pipe.d.ts +22 -0
- package/lib/components/measures/elder-quantity.pipe.d.ts +40 -0
- package/lib/components/measures/elder-unit.service.d.ts +39 -0
- package/lib/components/measures/model/dimensions.d.ts +11 -0
- package/lib/components/measures/model/quantity.d.ts +7 -0
- package/lib/components/measures/model/unit-dimension.d.ts +12 -0
- package/lib/components/measures/model/unit-registry.d.ts +46 -0
- package/lib/components/measures/model/unit.d.ts +111 -0
- package/lib/components/measures/public_api.d.ts +7 -0
- package/lib/components/measures/quantity-input/elder-quantity-input.component.d.ts +94 -0
- package/lib/components/measures/util/elder-quantity.service.d.ts +116 -0
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +69 -0
- package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +18 -0
- package/lib/components/navigation/bread-crumbs/path/path.d.ts +31 -0
- package/lib/components/navigation/nav/elder-nav.module.d.ts +18 -0
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +45 -0
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +27 -0
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +6 -0
- package/{src/lib/components/navigation/public_api.ts → lib/components/navigation/public_api.d.ts} +0 -0
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +34 -0
- package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +23 -0
- package/lib/components/navigation/toolbar/elder-toolbar.service.d.ts +46 -0
- package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +42 -0
- package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +9 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +30 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.d.ts +47 -0
- package/lib/components/overlays/elder-overlay-origin.directive.d.ts +28 -0
- package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +36 -0
- package/lib/components/overlays/elder-overlay.component.d.ts +88 -0
- package/lib/components/overlays/elder-overlay.module.d.ts +14 -0
- package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-panel.module.d.ts +14 -0
- package/lib/components/panels/flat/elder-panel.component.d.ts +15 -0
- package/{src/lib/components/public_api.ts → lib/components/public_api.d.ts} +0 -0
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +45 -0
- package/lib/components/select/auto/elder-select-first-util.d.ts +22 -0
- package/lib/components/select/elder-select-base.d.ts +149 -0
- package/lib/components/select/elder-select-chip.directive.d.ts +23 -0
- package/lib/components/select/elder-select-on-tab.directive.d.ts +55 -0
- package/lib/components/select/elder-select-value.directive.d.ts +9 -0
- package/lib/components/select/elder-select.module.d.ts +48 -0
- package/lib/components/select/multi/elder-multi-select-base.d.ts +120 -0
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +105 -0
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +34 -0
- package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +42 -0
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +49 -0
- package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +32 -0
- package/lib/components/select/public_api.d.ts +5 -0
- package/lib/components/select/single/elder-clear-select.directive.d.ts +34 -0
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +155 -0
- package/lib/components/select/single/elder-select-form-field.d.ts +30 -0
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +78 -0
- package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +12 -0
- package/lib/components/select-list/elder-select-list.module.d.ts +15 -0
- package/lib/components/select-list/select-list/elder-select-list.component.d.ts +53 -0
- package/lib/components/select-list/select-list-item/elder-select-list-item.component.d.ts +57 -0
- package/lib/components/shell/drawers/drawer-outlet-binding.d.ts +36 -0
- package/lib/components/shell/drawers/elder-route-outlet-drawer.service.d.ts +55 -0
- package/lib/components/shell/drawers/elder-router-outlet.service.d.ts +64 -0
- package/lib/components/shell/elder-shell-slot.directive.d.ts +34 -0
- package/lib/components/shell/elder-shell.module.d.ts +30 -0
- package/lib/components/shell/elder-shell.service.d.ts +98 -0
- package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +43 -0
- package/lib/components/shell/shell/elder-shell.component.d.ts +99 -0
- package/lib/components/shell/shell-content-slot.d.ts +4 -0
- package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +66 -0
- package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +19 -0
- package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +100 -0
- package/lib/components/tabs/elder-tab.module.d.ts +12 -0
- package/lib/components/theme/elder-theme-applier.directive.d.ts +36 -0
- package/lib/components/theme/elder-theme-preference.service.d.ts +35 -0
- package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +37 -0
- package/lib/components/theme/elder-theme.directive.d.ts +38 -0
- package/lib/components/theme/elder-theme.module.d.ts +22 -0
- package/lib/components/theme/elder-theme.service.d.ts +51 -0
- package/lib/components/theme/known-elder-themes.d.ts +5 -0
- package/{src/lib/components/theme/public_api.ts → lib/components/theme/public_api.d.ts} +0 -0
- package/lib/components/theme/theme-spec.d.ts +18 -0
- package/lib/components/time/date-adapters/custom-date-adapter.d.ts +12 -0
- package/lib/components/time/duration/duration-bucket.d.ts +37 -0
- package/lib/components/time/duration/duration-format.d.ts +62 -0
- package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +58 -0
- package/lib/components/time/duration/iso-duration-str.d.ts +5 -0
- package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +60 -0
- package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +42 -0
- package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +84 -0
- package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +78 -0
- package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +47 -0
- package/lib/components/time/elder-time.module.d.ts +38 -0
- package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +71 -0
- package/lib/components/time/period/period-bucket.d.ts +21 -0
- package/lib/components/time/period/period-format.d.ts +43 -0
- package/lib/components/time/public_api.d.ts +7 -0
- package/lib/components/toasts/elder-toast.module.d.ts +12 -0
- package/lib/components/toasts/elder-toast.service.d.ts +96 -0
- package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +38 -0
- package/lib/components/toasts/toast-type.d.ts +5 -0
- package/lib/components/toasts/toast.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.module.d.ts +17 -0
- package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +38 -0
- package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +41 -0
- package/lib/components/viewers/elder-viewers.module.d.ts +9 -0
- package/lib/features/event-source/elder-event-source.service.d.ts +43 -0
- package/lib/features/event-source/public_api.d.ts +2 -0
- package/lib/features/event-source/reactive-event-source.d.ts +97 -0
- package/lib/features/kafent/access-token-provider.d.ts +12 -0
- package/lib/features/kafent/kafent-config.d.ts +32 -0
- package/lib/features/kafent/kafent-event-stream.d.ts +28 -0
- package/lib/features/kafent/kafent-event.d.ts +11 -0
- package/lib/features/kafent/kafent-event.service.d.ts +77 -0
- package/lib/features/kafent/kafent-live-event-request.d.ts +58 -0
- package/lib/features/kafent/kafent.module.d.ts +30 -0
- package/lib/features/kafent/sse/kafent-event-stream-sse.service.d.ts +56 -0
- package/lib/features/kafent/sse/kafent-topic-sse.d.ts +70 -0
- package/lib/features/public_api.d.ts +2 -0
- package/lib/pipes/bytes.pipe.d.ts +7 -0
- package/lib/pipes/elder-pipes.module.d.ts +46 -0
- package/lib/pipes/elder-repeat.pipe.d.ts +7 -0
- package/lib/pipes/elder-round.pipe.d.ts +23 -0
- package/lib/pipes/elder-safe-url.pipe.d.ts +10 -0
- package/lib/pipes/elder-truncate.pipe.d.ts +17 -0
- package/lib/pipes/iso-duration.pipe.d.ts +26 -0
- package/lib/pipes/iso-interval-parse.pipe.d.ts +30 -0
- package/lib/pipes/iso-interval.pipe.d.ts +43 -0
- package/lib/pipes/public_api.d.ts +1 -0
- package/lib/pipes/time-ago.pipe.d.ts +18 -0
- package/lib/pipes/time-duration.pipe.d.ts +13 -0
- package/lib/pipes/weight.pipe.d.ts +7 -0
- package/package.json +22 -6
- package/public_api.d.ts +4 -0
- package/theming/_elder-flex-layout.scss +28 -0
- package/.eslintrc.json +0 -44
- package/karma-ci.conf.js +0 -46
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -15
- package/ng-package.prod.json +0 -14
- package/src/lib/common/async/public_api.ts +0 -3
- package/src/lib/common/async/refreshing-entity.ts +0 -128
- package/src/lib/common/csv/csv-serializer.ts +0 -82
- package/src/lib/common/csv/csv-spec.ts +0 -148
- package/src/lib/common/csv/public_api.ts +0 -3
- package/src/lib/common/data/continuable-listing.ts +0 -35
- package/src/lib/common/data/data-context/data-context-active-page.ts +0 -184
- package/src/lib/common/data/data-context/data-context-auto-starter.ts +0 -108
- package/src/lib/common/data/data-context/data-context-base.ts +0 -406
- package/src/lib/common/data/data-context/data-context-builder.ts +0 -354
- package/src/lib/common/data/data-context/data-context-continuable-base.ts +0 -100
- package/src/lib/common/data/data-context/data-context-continuable-paged.ts +0 -191
- package/src/lib/common/data/data-context/data-context-continuable-token.ts +0 -177
- package/src/lib/common/data/data-context/data-context-life-cycle-binding.ts +0 -59
- package/src/lib/common/data/data-context/data-context-simple.ts +0 -80
- package/src/lib/common/data/data-context/data-context-source-auto-reloader.ts +0 -21
- package/src/lib/common/data/data-context/data-context-status.ts +0 -56
- package/src/lib/common/data/data-context/data-context.ts +0 -204
- package/src/lib/common/data/data-context/mat-table-data-context-binding.ts +0 -209
- package/src/lib/common/data/data-context/public_api.ts +0 -19
- package/src/lib/common/data/datasource/data-source-adapter.ts +0 -96
- package/src/lib/common/data/datasource/data-source-processor.ts +0 -318
- package/src/lib/common/data/datasource/data-source.ts +0 -87
- package/src/lib/common/data/datasource/entity-id-util.ts +0 -11
- package/src/lib/common/data/datasource/fetcher/delegate-data-source.ts +0 -230
- package/src/lib/common/data/datasource/local/local-list-data-source.ts +0 -161
- package/src/lib/common/data/datasource/local/local-paged-data-source.ts +0 -129
- package/src/lib/common/data/datasource/public_api.ts +0 -14
- package/src/lib/common/data/datasource/rest/public_api.ts +0 -2
- package/src/lib/common/data/datasource/rest/rest-client.ts +0 -474
- package/src/lib/common/data/entity-set-patch.ts +0 -210
- package/src/lib/common/data/field-comparator.ts +0 -122
- package/src/lib/common/data/filters/filter-context.spec.ts +0 -150
- package/src/lib/common/data/filters/filter-context.ts +0 -163
- package/src/lib/common/data/filters/filter.spec.ts +0 -136
- package/src/lib/common/data/filters/filter.ts +0 -137
- package/src/lib/common/data/http-params-builder.ts +0 -138
- package/src/lib/common/data/page.ts +0 -92
- package/src/lib/common/data/public_api.ts +0 -12
- package/src/lib/common/data/required-filter-evaluator.ts +0 -122
- package/src/lib/common/data/sort-context.ts +0 -90
- package/src/lib/common/data/sort.ts +0 -16
- package/src/lib/common/data/token-chunk-request.ts +0 -10
- package/src/lib/common/enums/elder-enum-translation.service.ts +0 -116
- package/src/lib/common/enums/public_api.ts +0 -3
- package/src/lib/common/errors/exception-detail.ts +0 -6
- package/src/lib/common/errors/standard-error-detail.ts +0 -27
- package/src/lib/common/format/bytes-format.ts +0 -25
- package/src/lib/common/format/bytes-per-second-format.ts +0 -44
- package/src/lib/common/forms/elder-entity-value-accessor.ts +0 -70
- package/src/lib/common/forms/elder-form-field-control-base.directive.ts +0 -240
- package/src/lib/common/forms/elder-from-field-base.ts +0 -113
- package/src/lib/common/forms/elder-from-field-entity-base.ts +0 -63
- package/src/lib/common/forms/elder-from-field-multi-entity-base.ts +0 -86
- package/src/lib/common/forms/elder-multi-entity-value-accessor.ts +0 -84
- package/src/lib/common/forms/form-field-base.component.ts +0 -152
- package/src/lib/common/forms/multi-model-base.component.ts +0 -40
- package/src/lib/common/forms/public_api.ts +0 -12
- package/src/lib/common/forms/template-composite-control.ts +0 -158
- package/src/lib/common/forms/value-accessor-base.ts +0 -165
- package/src/lib/common/forms/view-providers.ts +0 -34
- package/src/lib/common/http/http-client-builder.service.ts +0 -55
- package/src/lib/common/http/http-client-pristine.ts +0 -15
- package/src/lib/common/http/public_api.ts +0 -5
- package/src/lib/common/http/transfer/data-transfer-factory.ts +0 -145
- package/src/lib/common/http/transfer/data-transfer-progress-aggregate.ts +0 -74
- package/src/lib/common/http/transfer/data-transfer-progress.ts +0 -18
- package/src/lib/common/http/transfer/data-transfer-state.ts +0 -129
- package/src/lib/common/http/transfer/data-transfer-status.ts +0 -28
- package/src/lib/common/http/transfer/http-data-transfer.ts +0 -276
- package/src/lib/common/http/transfer/public_api.ts +0 -9
- package/src/lib/common/http/upload/file-upload-client.ts +0 -74
- package/src/lib/common/i18n/entity/impl/i18n-base.ts +0 -9
- package/src/lib/common/i18n/entity/impl/i18n-text.ts +0 -25
- package/src/lib/common/i18n/entity/language-tag.ts +0 -19
- package/src/lib/common/i18n/entity/locale.ts +0 -20
- package/src/lib/common/i18n/entity/localisation-picker.ts +0 -51
- package/src/lib/common/i18n/entity/localized.ts +0 -11
- package/src/lib/common/i18n/entity/public_api.ts +0 -7
- package/src/lib/common/i18n/public_api.ts +0 -3
- package/src/lib/common/json-map.ts +0 -26
- package/src/lib/common/objects.ts +0 -46
- package/src/lib/common/public_api.ts +0 -20
- package/src/lib/common/reactive-map.ts +0 -113
- package/src/lib/common/selection/selection-model.ts +0 -274
- package/src/lib/common/sets.ts +0 -48
- package/src/lib/common/suggestion-provider.ts +0 -28
- package/src/lib/common/templates/public_api.ts +0 -1
- package/src/lib/common/templates/template-slot-manager.ts +0 -153
- package/src/lib/common/time/date-util.ts +0 -120
- package/src/lib/common/time/interval.spec.ts +0 -53
- package/src/lib/common/time/interval.ts +0 -539
- package/src/lib/common/time/period-duration.ts +0 -147
- package/src/lib/common/time/public_api.ts +0 -6
- package/src/lib/common/time/time-util.ts +0 -54
- package/src/lib/common/url/elder-router.service.ts +0 -55
- package/src/lib/common/url/elder-url-fragment-params.service.ts +0 -139
- package/src/lib/common/url/public_api.ts +0 -5
- package/src/lib/common/url/url-query-params.ts +0 -169
- package/src/lib/common/utils/batcher.spec.ts +0 -39
- package/src/lib/common/utils/batcher.ts +0 -55
- package/src/lib/common/utils/collection-util.ts +0 -125
- package/src/lib/common/utils/filter-util.ts +0 -67
- package/src/lib/common/utils/next-number-util.ts +0 -102
- package/src/lib/common/utils/ng-zone-utils.ts +0 -18
- package/src/lib/common/utils/parse-util.ts +0 -17
- package/src/lib/common/utils/property-path-util.ts +0 -29
- package/src/lib/common/utils/query-list-binding.ts +0 -105
- package/src/lib/common/utils/sort-util.spec.ts +0 -41
- package/src/lib/common/utils/sort-util.ts +0 -38
- package/src/lib/common/utils/url-builder.spec.ts +0 -83
- package/src/lib/common/utils/url-builder.ts +0 -363
- package/src/lib/common/utils/uuid-util.ts +0 -34
- package/src/lib/common/utils/value-wrapper.ts +0 -25
- package/src/lib/components/access-denied/elder-access-denied.component.html +0 -12
- package/src/lib/components/access-denied/elder-access-denied.component.ts +0 -16
- package/src/lib/components/access-denied/elder-access-denied.module.ts +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.html +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.ts +0 -39
- package/src/lib/components/auditing/elder-audit.module.ts +0 -28
- package/src/lib/components/auditing/i-audited-entity.ts +0 -17
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.html +0 -3
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.ts +0 -21
- package/src/lib/components/button-group/elder-button-group.module.ts +0 -23
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.html +0 -26
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.ts +0 -148
- package/src/lib/components/card-organizer/card-organizer/elder-stack-card.directive.ts +0 -9
- package/src/lib/components/card-organizer/card-organizer-data.ts +0 -124
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.html +0 -70
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.ts +0 -250
- package/src/lib/components/card-organizer/card-stack.ts +0 -231
- package/src/lib/components/card-organizer/elder-card-organizer.module.ts +0 -37
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.css +0 -5
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.html +0 -16
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.ts +0 -14
- package/src/lib/components/cards/elder-card/elder-card.component.html +0 -21
- package/src/lib/components/cards/elder-card/elder-card.component.ts +0 -141
- package/src/lib/components/cards/elder-card/elder-card.module.ts +0 -47
- package/src/lib/components/connectivity/elder-connectivity.module.ts +0 -37
- package/src/lib/components/connectivity/elder-connectivity.service.ts +0 -83
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.html +0 -11
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.ts +0 -51
- package/src/lib/components/connectivity/public_api.ts +0 -3
- package/src/lib/components/containers/elder-containers.module.ts +0 -18
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.html +0 -14
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.ts +0 -30
- package/src/lib/components/containers/public_api.ts +0 -3
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.html +0 -5
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.ts +0 -105
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.service.ts +0 -56
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.ts +0 -68
- package/src/lib/components/csv/elder-csv-stream-exporter.ts +0 -192
- package/src/lib/components/csv/elder-csv.module.ts +0 -27
- package/src/lib/components/currency/elder-currency.module.ts +0 -18
- package/src/lib/components/currency/elder-currency.pipe.ts +0 -44
- package/src/lib/components/currency/elder-currency.service.ts +0 -83
- package/src/lib/components/currency/model/currency-code.ts +0 -37
- package/src/lib/components/currency/model/currency-unit-registry.ts +0 -39
- package/src/lib/components/currency/model/currency-unit.ts +0 -18
- package/src/lib/components/currency/model/currency.ts +0 -22
- package/src/lib/components/currency/public_api.ts +0 -7
- package/src/lib/components/data-transfer/elder-data-transfer.module.ts +0 -52
- package/src/lib/components/data-transfer/elder-data-transfer.service.ts +0 -120
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.html +0 -47
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.ts +0 -82
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.html +0 -26
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.ts +0 -46
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.html +0 -31
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.ts +0 -61
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.html +0 -24
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.ts +0 -41
- package/src/lib/components/data-view/base/data-view-options-provider-binding.ts +0 -99
- package/src/lib/components/data-view/base/elder-data-view-base.ts +0 -322
- package/src/lib/components/data-view/base/elder-data-view-options-provider.ts +0 -55
- package/src/lib/components/data-view/base/elder-data-view-options.ts +0 -89
- package/src/lib/components/data-view/base/elder-data-view.ts +0 -14
- package/src/lib/components/data-view/base/public_api.ts +0 -5
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.html +0 -50
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.ts +0 -51
- package/src/lib/components/data-view/common/elder-data-common.module.ts +0 -62
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.html +0 -113
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.ts +0 -181
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.html +0 -25
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.ts +0 -99
- package/src/lib/components/data-view/common/selection/data-context-selection.directive.ts +0 -127
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.html +0 -22
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.ts +0 -53
- package/src/lib/components/data-view/common/selection/master-selection-state.ts +0 -10
- package/src/lib/components/data-view/elder-data-view-interaction-mode.ts +0 -26
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.html +0 -158
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.ts +0 -359
- package/src/lib/components/data-view/grid/elder-grid.module.ts +0 -54
- package/src/lib/components/data-view/public_api.ts +0 -5
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.css +0 -0
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.html +0 -3
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.ts +0 -22
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.ts +0 -50
- package/src/lib/components/data-view/table/activation/elder-item-activator.ts +0 -6
- package/src/lib/components/data-view/table/activation/elder-table-activation-options.ts +0 -19
- package/src/lib/components/data-view/table/activation/elder-table-activation.directive.ts +0 -308
- package/src/lib/components/data-view/table/elder-number-cell.directive.ts +0 -26
- package/src/lib/components/data-view/table/elder-paginator-intl.ts +0 -92
- package/src/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.ts +0 -14
- package/src/lib/components/data-view/table/elder-table/elder-table.component.html +0 -99
- package/src/lib/components/data-view/table/elder-table/elder-table.component.ts +0 -388
- package/src/lib/components/data-view/table/elder-table-column.directive.ts +0 -29
- package/src/lib/components/data-view/table/elder-table-extension.directive.ts +0 -107
- package/src/lib/components/data-view/table/elder-table-root.directive.ts +0 -24
- package/src/lib/components/data-view/table/elder-table-row.directive.ts +0 -154
- package/src/lib/components/data-view/table/elder-table-sort.directive.ts +0 -16
- package/src/lib/components/data-view/table/elder-table.module.ts +0 -94
- package/src/lib/components/data-view/table/model/elder-column-layout.ts +0 -164
- package/src/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.ts +0 -115
- package/src/lib/components/data-view/table/model/elder-table-model-provider.ts +0 -49
- package/src/lib/components/data-view/table/model/elder-table-model-query-group.ts +0 -153
- package/src/lib/components/data-view/table/model/elder-table-model.ts +0 -221
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.html +0 -34
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.ts +0 -34
- package/src/lib/components/dialogs/elder-dialog-config.ts +0 -21
- package/src/lib/components/dialogs/elder-dialog.module.ts +0 -66
- package/src/lib/components/dialogs/elder-dialog.service.ts +0 -204
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.html +0 -36
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.ts +0 -44
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.html +0 -27
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.ts +0 -55
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.ts +0 -54
- package/src/lib/components/errors/elder-error.module.ts +0 -28
- package/src/lib/components/errors/error-util.ts +0 -107
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.html +0 -33
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.ts +0 -77
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.html +0 -14
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.ts +0 -57
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.module.ts +0 -23
- package/src/lib/components/files/blob-url.ts +0 -13
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.html +0 -62
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.ts +0 -304
- package/src/lib/components/files/elder-file-drop-zone.directive.ts +0 -116
- package/src/lib/components/files/elder-file-select.directive.ts +0 -184
- package/src/lib/components/files/elder-file.module.ts +0 -49
- package/src/lib/components/files/file-select/file-select.component.html +0 -9
- package/src/lib/components/files/file-select/file-select.component.ts +0 -61
- package/src/lib/components/files/file-upload/file-upload.component.html +0 -36
- package/src/lib/components/files/file-upload/file-upload.component.ts +0 -81
- package/src/lib/components/forms/clipboard/elder-clipboard.service.ts +0 -57
- package/src/lib/components/forms/directives/base/elder-class-hostbinding-base.ts +0 -55
- package/src/lib/components/forms/directives/elder-clipboard-put.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-delayed-focus.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-form-field-dense.directive.ts +0 -31
- package/src/lib/components/forms/directives/elder-form-field-label.directive.ts +0 -92
- package/src/lib/components/forms/directives/elder-form-field-no-hint.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-form-field-no-spinner.directive.ts +0 -32
- package/src/lib/components/forms/directives/elder-forms-directives.module.ts +0 -115
- package/src/lib/components/forms/directives/elder-input-pattern.directive.ts +0 -76
- package/src/lib/components/forms/directives/elder-key-event.directive.ts +0 -126
- package/src/lib/components/forms/directives/elder-max.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-min.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-next-focusable.directive.ts +0 -101
- package/src/lib/components/forms/directives/elder-plug-parent-form.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-stop-event-propagation.directive.ts +0 -22
- package/src/lib/components/forms/directives/elder-tab-focus-trap.directive.ts +0 -188
- package/src/lib/components/forms/directives/elder-touched.directive.ts +0 -25
- package/src/lib/components/forms/directives/elder-triple-state-checkbox.directive.ts +0 -132
- package/src/lib/components/forms/directives/validation/elder-multiple-of.validator.ts +0 -59
- package/src/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.ts +0 -80
- package/src/lib/components/forms/elder-forms.module.ts +0 -17
- package/src/lib/components/forms/public_api.ts +0 -3
- package/src/lib/components/forms/search/elder-search-context.directive.ts +0 -181
- package/src/lib/components/forms/search/elder-search-input.directive.ts +0 -244
- package/src/lib/components/forms/search/elder-search.module.ts +0 -48
- package/src/lib/components/forms/search/model/search-input-state.ts +0 -95
- package/src/lib/components/forms/search/model/search-input.ts +0 -30
- package/src/lib/components/forms/search/model/simple-search-input.ts +0 -69
- package/src/lib/components/forms/search/search-box/elder-search-box.component.html +0 -66
- package/src/lib/components/forms/search/search-box/elder-search-box.component.ts +0 -149
- package/src/lib/components/forms/search/search-box/elder-search-panel.component.ts +0 -10
- package/src/lib/components/global-search/elder-global-search.component.html +0 -51
- package/src/lib/components/global-search/elder-global-search.component.ts +0 -158
- package/src/lib/components/global-search/elder-global-search.module.ts +0 -27
- package/src/lib/components/global-search/elder-global-search.service.ts +0 -118
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.html +0 -19
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.ts +0 -102
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.module.ts +0 -20
- package/src/lib/components/graph/elder-progress-bar/sub-bar.ts +0 -6
- package/src/lib/components/headers/elder-header/elder-header.component.css +0 -0
- package/src/lib/components/headers/elder-header/elder-header.component.html +0 -4
- package/src/lib/components/headers/elder-header/elder-header.component.ts +0 -38
- package/src/lib/components/headers/elder-header.module.ts +0 -28
- package/src/lib/components/http-support/elder-http-client.service.ts +0 -82
- package/src/lib/components/http-support/public_api.ts +0 -3
- package/src/lib/components/i18n/entities/elder-i18n-entities.module.ts +0 -74
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.html +0 -40
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.ts +0 -176
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.html +0 -36
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.ts +0 -33
- package/src/lib/components/i18n/entities/elder-localized-input-dialog.service.ts +0 -35
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.html +0 -56
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.ts +0 -200
- package/src/lib/components/i18n/entities/elder-localized-text-column.directive.ts +0 -34
- package/src/lib/components/i18n/entities/elder-localized-texts.directive.ts +0 -62
- package/src/lib/components/i18n/entities/picker/i18n-pick-async.pipe.ts +0 -49
- package/src/lib/components/i18n/entities/picker/i18n-pick.pipe.ts +0 -36
- package/src/lib/components/i18n/entities/picker/localisation-picker.service.ts +0 -104
- package/src/lib/components/i18n/language/elder-language-config.ts +0 -18
- package/src/lib/components/i18n/language/elder-language-interceptor.ts +0 -94
- package/src/lib/components/i18n/language/elder-language.module.ts +0 -57
- package/src/lib/components/i18n/language/elder-language.service.ts +0 -139
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.html +0 -24
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.ts +0 -71
- package/src/lib/components/i18n/locales/elder-locales-de-ch.module.ts +0 -46
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.html +0 -6
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.ts +0 -173
- package/src/lib/components/iframes/data-view/data-view-iframe-adapter.directive.ts +0 -150
- package/src/lib/components/iframes/elder-iframe.module.ts +0 -61
- package/src/lib/components/iframes/iframe-close.directive.ts +0 -49
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.html +0 -9
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.ts +0 -63
- package/src/lib/components/iframes/iframe-host/iframe-host.component.html +0 -41
- package/src/lib/components/iframes/iframe-host/iframe-host.component.ts +0 -172
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.html +0 -8
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.ts +0 -102
- package/src/lib/components/iframes/iframe.service.ts +0 -59
- package/src/lib/components/iframes/typed-event-message.ts +0 -66
- package/src/lib/components/infinitescroll/elder-infinite-autocomplete.directive.ts +0 -79
- package/src/lib/components/infinitescroll/elder-infinite-scroll.directive.ts +0 -187
- package/src/lib/components/infinitescroll/elder-infinite-scroll.module.ts +0 -32
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.ts +0 -11
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.html +0 -66
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.ts +0 -233
- package/src/lib/components/input/autocomplete/elder-autocomplete-many.directive.ts +0 -244
- package/src/lib/components/input/autocomplete/elder-autocomplete.directive.ts +0 -145
- package/src/lib/components/input/autocomplete/elder-autocomplete.module.ts +0 -39
- package/src/lib/components/input/autocomplete/many/word-position-finder.spec.ts +0 -74
- package/src/lib/components/input/autocomplete/many/word-position-finder.ts +0 -76
- package/src/lib/components/input/public_api.ts +0 -3
- package/src/lib/components/labels/elder-labels.module.ts +0 -22
- package/src/lib/components/labels/labels-input/labels-input.component.html +0 -44
- package/src/lib/components/labels/labels-input/labels-input.component.ts +0 -255
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.html +0 -64
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.ts +0 -293
- package/src/lib/components/measures/directives/elder-unit-select.directive.ts +0 -70
- package/src/lib/components/measures/elder-measures.module.ts +0 -76
- package/src/lib/components/measures/elder-quantity-transform.pipe.ts +0 -46
- package/src/lib/components/measures/elder-quantity.pipe.ts +0 -102
- package/src/lib/components/measures/elder-unit.service.ts +0 -135
- package/src/lib/components/measures/model/dimensions.ts +0 -40
- package/src/lib/components/measures/model/quantity.ts +0 -19
- package/src/lib/components/measures/model/unit-dimension.ts +0 -16
- package/src/lib/components/measures/model/unit-registry.ts +0 -110
- package/src/lib/components/measures/model/unit.ts +0 -192
- package/src/lib/components/measures/public_api.ts +0 -9
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.html +0 -63
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.ts +0 -221
- package/src/lib/components/measures/util/elder-quantity.service.ts +0 -313
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.html +0 -82
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.ts +0 -221
- package/src/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.ts +0 -37
- package/src/lib/components/navigation/bread-crumbs/path/path.ts +0 -49
- package/src/lib/components/navigation/nav/elder-nav.module.ts +0 -35
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.html +0 -30
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.ts +0 -94
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.html +0 -86
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.ts +0 -78
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.html +0 -5
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.ts +0 -11
- package/src/lib/components/navigation/toolbar/elder-toolbar-column.directive.ts +0 -53
- package/src/lib/components/navigation/toolbar/elder-toolbar.module.ts +0 -51
- package/src/lib/components/navigation/toolbar/elder-toolbar.service.ts +0 -77
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.html +0 -47
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.ts +0 -78
- package/src/lib/components/navigation/toolbar/toolbar-column-position.ts +0 -20
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.html +0 -1
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.ts +0 -54
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.ts +0 -107
- package/src/lib/components/overlays/elder-overlay-origin.directive.ts +0 -45
- package/src/lib/components/overlays/elder-overlay-trigger.directive.ts +0 -71
- package/src/lib/components/overlays/elder-overlay.component.ts +0 -262
- package/src/lib/components/overlays/elder-overlay.module.ts +0 -29
- package/src/lib/components/panels/card-panel/elder-card-panel.component.html +0 -4
- package/src/lib/components/panels/card-panel/elder-card-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.html +0 -4
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-panel.module.ts +0 -28
- package/src/lib/components/panels/flat/elder-panel.component.html +0 -2
- package/src/lib/components/panels/flat/elder-panel.component.ts +0 -30
- package/src/lib/components/select/auto/elder-auto-select-first.directive.ts +0 -87
- package/src/lib/components/select/auto/elder-select-first-util.ts +0 -98
- package/src/lib/components/select/elder-select-base.ts +0 -355
- package/src/lib/components/select/elder-select-chip.directive.ts +0 -32
- package/src/lib/components/select/elder-select-on-tab.directive.ts +0 -150
- package/src/lib/components/select/elder-select-value.directive.ts +0 -9
- package/src/lib/components/select/elder-select.module.ts +0 -93
- package/src/lib/components/select/multi/elder-multi-select-base.ts +0 -451
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.html +0 -89
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.ts +0 -316
- package/src/lib/components/select/multi/elder-multi-select-form-field.ts +0 -80
- package/src/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.ts +0 -102
- package/src/lib/components/select/popup/selection-model-popup.directive.ts +0 -145
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.html +0 -18
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.ts +0 -56
- package/src/lib/components/select/public_api.ts +0 -5
- package/src/lib/components/select/single/elder-clear-select.directive.ts +0 -64
- package/src/lib/components/select/single/elder-select/elder-select.component.html +0 -90
- package/src/lib/components/select/single/elder-select/elder-select.component.ts +0 -530
- package/src/lib/components/select/single/elder-select-form-field.ts +0 -57
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.html +0 -13
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.ts +0 -169
- package/src/lib/components/select-chip-list/elder-chip-list-select.module.ts +0 -30
- package/src/lib/components/select-list/elder-select-list.module.ts +0 -26
- package/src/lib/components/select-list/select-list/elder-select-list.component.html +0 -5
- package/src/lib/components/select-list/select-list/elder-select-list.component.ts +0 -91
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.html +0 -29
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.ts +0 -135
- package/src/lib/components/shell/drawers/drawer-outlet-binding.ts +0 -73
- package/src/lib/components/shell/drawers/elder-route-outlet-drawer.service.ts +0 -137
- package/src/lib/components/shell/drawers/elder-router-outlet.service.ts +0 -145
- package/src/lib/components/shell/elder-shell-slot.directive.ts +0 -61
- package/src/lib/components/shell/elder-shell.module.ts +0 -68
- package/src/lib/components/shell/elder-shell.service.ts +0 -176
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.html +0 -25
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.ts +0 -89
- package/src/lib/components/shell/shell/elder-shell.component.html +0 -86
- package/src/lib/components/shell/shell/elder-shell.component.ts +0 -243
- package/src/lib/components/shell/shell-content-slot.ts +0 -8
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.html +0 -4
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.ts +0 -153
- package/src/lib/components/tabs/elder-tab/elder-tab.directive.ts +0 -31
- package/src/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.ts +0 -320
- package/src/lib/components/tabs/elder-tab.module.ts +0 -24
- package/src/lib/components/theme/elder-theme-applier.directive.ts +0 -73
- package/src/lib/components/theme/elder-theme-preference.service.ts +0 -79
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.html +0 -9
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.ts +0 -86
- package/src/lib/components/theme/elder-theme.directive.ts +0 -65
- package/src/lib/components/theme/elder-theme.module.ts +0 -52
- package/src/lib/components/theme/elder-theme.service.ts +0 -151
- package/src/lib/components/theme/known-elder-themes.ts +0 -17
- package/src/lib/components/theme/theme-spec.ts +0 -32
- package/src/lib/components/time/date-adapters/custom-date-adapter.ts +0 -34
- package/src/lib/components/time/duration/duration-bucket.ts +0 -143
- package/src/lib/components/time/duration/duration-format.ts +0 -346
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.html +0 -51
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.ts +0 -132
- package/src/lib/components/time/duration/iso-duration-str.ts +0 -5
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.html +0 -29
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.ts +0 -120
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.html +0 -15
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.ts +0 -93
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.html +0 -92
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.ts +0 -222
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.html +0 -40
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.ts +0 -213
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.html +0 -18
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.ts +0 -98
- package/src/lib/components/time/elder-time.module.ts +0 -89
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.html +0 -40
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.ts +0 -148
- package/src/lib/components/time/period/period-bucket.ts +0 -51
- package/src/lib/components/time/period/period-format.ts +0 -127
- package/src/lib/components/time/public_api.ts +0 -8
- package/src/lib/components/toasts/elder-toast.module.ts +0 -21
- package/src/lib/components/toasts/elder-toast.service.ts +0 -244
- package/src/lib/components/toasts/standard-toast/standard-toast.component.html +0 -34
- package/src/lib/components/toasts/standard-toast/standard-toast.component.ts +0 -80
- package/src/lib/components/toasts/toast-type.ts +0 -5
- package/src/lib/components/toasts/toast.ts +0 -12
- package/src/lib/components/url-fragment/elder-url-fragment.module.ts +0 -34
- package/src/lib/components/url-fragment/elder-url-fragment.ts +0 -10
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.html +0 -25
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.ts +0 -107
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.html +0 -1
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.ts +0 -81
- package/src/lib/components/viewers/elder-viewers.module.ts +0 -18
- package/src/lib/features/event-source/elder-event-source.service.ts +0 -71
- package/src/lib/features/event-source/public_api.ts +0 -3
- package/src/lib/features/event-source/reactive-event-source.ts +0 -252
- package/src/lib/features/kafent/access-token-provider.ts +0 -21
- package/src/lib/features/kafent/kafent-config.ts +0 -42
- package/src/lib/features/kafent/kafent-event-stream.ts +0 -48
- package/src/lib/features/kafent/kafent-event.service.ts +0 -128
- package/src/lib/features/kafent/kafent-event.ts +0 -14
- package/src/lib/features/kafent/kafent-live-event-request.ts +0 -75
- package/src/lib/features/kafent/kafent.module.ts +0 -61
- package/src/lib/features/kafent/sse/kafent-event-stream-sse.service.ts +0 -167
- package/src/lib/features/kafent/sse/kafent-topic-sse.ts +0 -145
- package/src/lib/features/public_api.ts +0 -4
- package/src/lib/i18n/elder-composite-translation-loader.ts +0 -14
- package/src/lib/i18n/elder-starter-translation-loader.ts +0 -20
- package/src/lib/pipes/bytes.pipe.ts +0 -18
- package/src/lib/pipes/elder-pipes.module.ts +0 -51
- package/src/lib/pipes/elder-repeat.pipe.ts +0 -16
- package/src/lib/pipes/elder-round.pipe.ts +0 -37
- package/src/lib/pipes/elder-safe-url.pipe.ts +0 -12
- package/src/lib/pipes/elder-truncate.pipe.ts +0 -45
- package/src/lib/pipes/iso-duration.pipe.ts +0 -64
- package/src/lib/pipes/iso-interval-parse.pipe.ts +0 -61
- package/src/lib/pipes/iso-interval.pipe.ts +0 -146
- package/src/lib/pipes/public_api.ts +0 -3
- package/src/lib/pipes/time-ago.pipe.ts +0 -88
- package/src/lib/pipes/time-duration.pipe.ts +0 -81
- package/src/lib/pipes/weight.pipe.ts +0 -45
- package/src/public_api.ts +0 -8
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -33
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, Output } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/button";
|
|
5
|
+
import * as i2 from "@angular/material/icon";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
export class ElderExpandToggleButtonComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
/***************************************************************************
|
|
10
|
+
* *
|
|
11
|
+
* Fields *
|
|
12
|
+
* *
|
|
13
|
+
**************************************************************************/
|
|
14
|
+
this._expandedChange = new BehaviorSubject(false);
|
|
15
|
+
}
|
|
16
|
+
/***************************************************************************
|
|
17
|
+
* *
|
|
18
|
+
* Life Cycle *
|
|
19
|
+
* *
|
|
20
|
+
**************************************************************************/
|
|
21
|
+
ngOnInit() { }
|
|
22
|
+
/***************************************************************************
|
|
23
|
+
* *
|
|
24
|
+
* Properties *
|
|
25
|
+
* *
|
|
26
|
+
**************************************************************************/
|
|
27
|
+
get expandedChange() {
|
|
28
|
+
return this._expandedChange.asObservable();
|
|
29
|
+
}
|
|
30
|
+
set expanded(value) {
|
|
31
|
+
this._expandedChange.next(value);
|
|
32
|
+
}
|
|
33
|
+
get expanded() {
|
|
34
|
+
return this._expandedChange.getValue();
|
|
35
|
+
}
|
|
36
|
+
/***************************************************************************
|
|
37
|
+
* *
|
|
38
|
+
* Public API *
|
|
39
|
+
* *
|
|
40
|
+
**************************************************************************/
|
|
41
|
+
onToggleExpand(event) {
|
|
42
|
+
this.expanded = !this.expanded;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
ElderExpandToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
46
|
+
ElderExpandToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderExpandToggleButtonComponent, selector: "elder-expand-toggle-button, ebs-expand-toggle-button", inputs: { expanded: "expanded" }, outputs: { expandedChange: "expandedChange" }, ngImport: i0, template: "<button mat-button type=\"button\" class=\"full sidenav-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</button>\n", dependencies: [{ kind: "component", type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'elder-expand-toggle-button, ebs-expand-toggle-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button mat-button type=\"button\" class=\"full sidenav-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</button>\n" }]
|
|
50
|
+
}], propDecorators: { expandedChange: [{
|
|
51
|
+
type: Output
|
|
52
|
+
}], expanded: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9leHBhbmQtdG9nZ2xlLWJ1dHRvbi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2V4cGFuZC10b2dnbGUtYnV0dG9uL2VsZGVyLWV4cGFuZC10b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsZUFBZSxFQUFhLE1BQU0sTUFBTSxDQUFDOzs7OztBQVFqRCxNQUFNLE9BQU8sZ0NBQWdDO0lBTDdDO1FBT0U7Ozs7b0ZBSTRFO1FBRTNELG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0F1Q3hFO0lBckNDOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVcsQ0FBQztJQUUzQjs7OztnRkFJNEU7SUFFNUUsSUFDVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFDVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGNBQWMsQ0FBQyxLQUFVO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7OzhIQTlDVSxnQ0FBZ0M7a0hBQWhDLGdDQUFnQyw2S0NUN0MseVpBY0E7NEZETGEsZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNFLHNEQUFzRCxtQkFFL0MsdUJBQXVCLENBQUMsTUFBTTs4QkEyQnBDLGNBQWM7c0JBRHhCLE1BQU07Z0JBTUksUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbiwgZWJzLWV4cGFuZC10b2dnbGUtYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWV4cGFuZC10b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJFeHBhbmRUb2dnbGVCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V4cGFuZGVkQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZXhwYW5kZWRDaGFuZ2UoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2V4cGFuZGVkQ2hhbmdlLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBleHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2V4cGFuZGVkQ2hhbmdlLm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwYW5kZWRDaGFuZ2UuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvblRvZ2dsZUV4cGFuZChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5leHBhbmRlZCA9ICF0aGlzLmV4cGFuZGVkO1xuICB9XG59XG4iLCI8YnV0dG9uIG1hdC1idXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZnVsbCBzaWRlbmF2LWJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJvblRvZ2dsZUV4cGFuZCgkZXZlbnQpXCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IGZsZXhcIj5cblxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgIDxzcGFuIGNsYXNzPVwiZmxleFwiPjwvc3Bhbj5cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIHBsYWNlLWNlbnRlci1jZW50ZXJcIj5cbiAgICAgIDxtYXQtaWNvbj57eyhleHBhbmRlZENoYW5nZSB8IGFzeW5jKSA/ICdrZXlib2FyZF9hcnJvd191cCcgOiAna2V5Ym9hcmRfYXJyb3dfZG93bid9fTwvbWF0LWljb24+XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ElderExpandToggleButtonComponent } from './elder-expand-toggle-button.component';
|
|
4
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export { ElderExpandToggleButtonComponent } from './elder-expand-toggle-button.component';
|
|
8
|
+
export class ElderExpandToggleButtonModule {
|
|
9
|
+
}
|
|
10
|
+
ElderExpandToggleButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
ElderExpandToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonModule, declarations: [ElderExpandToggleButtonComponent], imports: [CommonModule, MatButtonModule, MatIconModule], exports: [ElderExpandToggleButtonComponent] });
|
|
12
|
+
ElderExpandToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonModule, imports: [CommonModule, MatButtonModule, MatIconModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderExpandToggleButtonModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
imports: [
|
|
17
|
+
CommonModule, MatButtonModule, MatIconModule
|
|
18
|
+
],
|
|
19
|
+
declarations: [
|
|
20
|
+
ElderExpandToggleButtonComponent
|
|
21
|
+
],
|
|
22
|
+
exports: [
|
|
23
|
+
ElderExpandToggleButtonComponent
|
|
24
|
+
]
|
|
25
|
+
}]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9leHBhbmQtdG9nZ2xlLWJ1dHRvbi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFdkQsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFheEYsTUFBTSxPQUFPLDZCQUE2Qjs7MkhBQTdCLDZCQUE2Qjs0SEFBN0IsNkJBQTZCLGlCQU5sQyxnQ0FBZ0MsYUFIaEMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLGFBTTVDLGdDQUFnQzs0SEFHM0IsNkJBQTZCLFlBVGxDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYTs0RkFTdkMsNkJBQTZCO2tCQVh6QyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWE7cUJBQy9DO29CQUNELFlBQVksRUFBRTt3QkFDVixnQ0FBZ0M7cUJBQ25DO29CQUNELE9BQU8sRUFBRzt3QkFDTixnQ0FBZ0M7cUJBQ25DO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtFbGRlckV4cGFuZFRvZ2dsZUJ1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcblxuZXhwb3J0IHtFbGRlckV4cGFuZFRvZ2dsZUJ1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdEljb25Nb2R1bGVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBFbGRlckV4cGFuZFRvZ2dsZUJ1dHRvbkNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0cyA6IFtcbiAgICAgICAgRWxkZXJFeHBhbmRUb2dnbGVCdXR0b25Db21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRXhwYW5kVG9nZ2xlQnV0dG9uTW9kdWxlIHtcblxufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class BlobUrl {
|
|
2
|
+
constructor(url, mimeType) {
|
|
3
|
+
this.url = url;
|
|
4
|
+
this.mimeType = mimeType;
|
|
5
|
+
}
|
|
6
|
+
static from(url, mimeType) {
|
|
7
|
+
return new BlobUrl(url, mimeType);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvYi11cmwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2Jsb2ItdXJsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sT0FBTyxPQUFPO0lBTWxCLFlBQ2tCLEdBQVcsRUFDWCxRQUFnQjtRQURoQixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBUTtJQUVsQyxDQUFDO0lBUk0sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFXLEVBQUUsUUFBZ0I7UUFDOUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQU9GIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgY2xhc3MgQmxvYlVybCB7XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tKHVybDogc3RyaW5nLCBtaW1lVHlwZTogc3RyaW5nKTogQmxvYlVybCB7XG4gICAgcmV0dXJuIG5ldyBCbG9iVXJsKHVybCwgbWltZVR5cGUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHVybDogc3RyaW5nLFxuICAgIHB1YmxpYyByZWFkb25seSBtaW1lVHlwZTogc3RyaW5nLFxuICApIHtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { BlobUrl } from '../blob-url';
|
|
3
|
+
import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
|
|
4
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
5
|
+
import { filter, map, takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../../common/http/http-client-pristine";
|
|
9
|
+
import * as i2 from "@angular/platform-browser";
|
|
10
|
+
import * as i3 from "../../toasts/elder-toast.service";
|
|
11
|
+
import * as i4 from "@angular/common";
|
|
12
|
+
class BlobContext {
|
|
13
|
+
constructor(safeUrl, mimeType, text = null) {
|
|
14
|
+
this.safeUrl = safeUrl;
|
|
15
|
+
this.mimeType = mimeType;
|
|
16
|
+
this.text = text;
|
|
17
|
+
}
|
|
18
|
+
static textBlob(text, mimeType) {
|
|
19
|
+
return new BlobContext(null, mimeType, text);
|
|
20
|
+
}
|
|
21
|
+
static safeUrl(safeUrl, mimeType) {
|
|
22
|
+
return new BlobContext(safeUrl, mimeType, null);
|
|
23
|
+
}
|
|
24
|
+
get displayAsText() {
|
|
25
|
+
return !!this.text;
|
|
26
|
+
}
|
|
27
|
+
get cantDisplay() {
|
|
28
|
+
return !this.displayAsText && !this.displayEmbedded
|
|
29
|
+
&& !this.mimeType.isAudio && !this.mimeType.isImage && !this.mimeType.isVideo;
|
|
30
|
+
}
|
|
31
|
+
get displayEmbedded() {
|
|
32
|
+
return this.mimeType.isPdf;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
class BlobMimeType {
|
|
36
|
+
constructor(value) {
|
|
37
|
+
this.value = value;
|
|
38
|
+
}
|
|
39
|
+
static parse(mimeType) {
|
|
40
|
+
if (mimeType) {
|
|
41
|
+
return new BlobMimeType(mimeType);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return BlobMimeType.OCTET_STREAM;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
get isOctetStream() {
|
|
48
|
+
return this.value.startsWith('application/octet-stream');
|
|
49
|
+
}
|
|
50
|
+
get isVideo() {
|
|
51
|
+
return this.value.startsWith('video/');
|
|
52
|
+
}
|
|
53
|
+
get isImage() {
|
|
54
|
+
return this.value.startsWith('image/');
|
|
55
|
+
}
|
|
56
|
+
get isAudio() {
|
|
57
|
+
return this.value.startsWith('audio/');
|
|
58
|
+
}
|
|
59
|
+
get isJson() {
|
|
60
|
+
return this.value.startsWith('application/json');
|
|
61
|
+
}
|
|
62
|
+
get isPdf() {
|
|
63
|
+
return this.value.startsWith('application/pdf');
|
|
64
|
+
}
|
|
65
|
+
get isText() {
|
|
66
|
+
return this.value.startsWith('text/') || this.isJson;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
BlobMimeType.OCTET_STREAM = new BlobMimeType('application/octet-stream');
|
|
70
|
+
export class ElderBlobViewerComponent {
|
|
71
|
+
/***************************************************************************
|
|
72
|
+
* *
|
|
73
|
+
* Constructor *
|
|
74
|
+
* *
|
|
75
|
+
**************************************************************************/
|
|
76
|
+
constructor(httpPristine, domSanitizer, toastService) {
|
|
77
|
+
this.httpPristine = httpPristine;
|
|
78
|
+
this.domSanitizer = domSanitizer;
|
|
79
|
+
this.toastService = toastService;
|
|
80
|
+
/***************************************************************************
|
|
81
|
+
* *
|
|
82
|
+
* Fields *
|
|
83
|
+
* *
|
|
84
|
+
**************************************************************************/
|
|
85
|
+
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
86
|
+
this.blobContext$ = new BehaviorSubject(null);
|
|
87
|
+
this._url$ = new BehaviorSubject(null);
|
|
88
|
+
this._mimeType$ = new BehaviorSubject(null);
|
|
89
|
+
this.destroy$ = new Subject();
|
|
90
|
+
this._displayUnknownAsText = false;
|
|
91
|
+
}
|
|
92
|
+
/***************************************************************************
|
|
93
|
+
* *
|
|
94
|
+
* Life Cycle *
|
|
95
|
+
* *
|
|
96
|
+
**************************************************************************/
|
|
97
|
+
ngOnInit() {
|
|
98
|
+
combineLatest([this._url$, this._mimeType$]).pipe(takeUntil(this.destroy$), filter(([url, mimeType]) => !!url), map(([url, mimeType]) => BlobUrl.from(url, mimeType))).subscribe(blobUrl => this.blobUrl = blobUrl);
|
|
99
|
+
}
|
|
100
|
+
ngOnDestroy() {
|
|
101
|
+
this.destroy$.next();
|
|
102
|
+
this.destroy$.complete();
|
|
103
|
+
}
|
|
104
|
+
/***************************************************************************
|
|
105
|
+
* *
|
|
106
|
+
* Properties *
|
|
107
|
+
* *
|
|
108
|
+
**************************************************************************/
|
|
109
|
+
/**
|
|
110
|
+
* Attempt to display unknown blobs as text. (i.e. mime-type is octet-stream)
|
|
111
|
+
* @param unknownAsText
|
|
112
|
+
*/
|
|
113
|
+
set displayUnknownAsText(unknownAsText) {
|
|
114
|
+
// TODO FIX RACE CONDITION:
|
|
115
|
+
// Since this property is not reactive, it must be set first.
|
|
116
|
+
// Otherwise, it will still be false, even if set to true!
|
|
117
|
+
this._displayUnknownAsText = coerceBooleanProperty(unknownAsText);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Set a in memory blob to display.
|
|
121
|
+
* @param blob
|
|
122
|
+
*/
|
|
123
|
+
set blob(blob) {
|
|
124
|
+
this.handleBlob(blob);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Set a blob-url to display.
|
|
128
|
+
* @param blobUrl
|
|
129
|
+
*/
|
|
130
|
+
set blobUrl(blobUrl) {
|
|
131
|
+
this.handleBlobUrl(blobUrl);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Set a url to display. Requires the mimeType to be set aswell.
|
|
135
|
+
* @param url
|
|
136
|
+
*/
|
|
137
|
+
set url(url) {
|
|
138
|
+
this._url$.next(url);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Set the mime-type for the url to display. Only considered if url is set.
|
|
142
|
+
* @param mimeType
|
|
143
|
+
*/
|
|
144
|
+
set mimeType(mimeType) {
|
|
145
|
+
this._mimeType$.next(mimeType);
|
|
146
|
+
}
|
|
147
|
+
/***************************************************************************
|
|
148
|
+
* *
|
|
149
|
+
* Private Methods *
|
|
150
|
+
* *
|
|
151
|
+
**************************************************************************/
|
|
152
|
+
handleBlob(blob) {
|
|
153
|
+
const safeUrl = this.createSafeUrlFromBlob(blob);
|
|
154
|
+
const mimeType = BlobMimeType.parse(blob.type);
|
|
155
|
+
if (this.canDisplayAsText(mimeType)) {
|
|
156
|
+
this.textContext(blob, mimeType);
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
this.nextBlob(BlobContext.safeUrl(safeUrl, mimeType));
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
textContext(blob, mimeType) {
|
|
163
|
+
blob.text().then(text => {
|
|
164
|
+
this.nextBlob(BlobContext.textBlob(text, mimeType));
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
handleBlobUrl(blobUrl) {
|
|
168
|
+
const safeUrl = this.createSafeUrlFromDataUrl(blobUrl.url);
|
|
169
|
+
const mimeType = BlobMimeType.parse(blobUrl.mimeType);
|
|
170
|
+
if (this.canDisplayAsText(mimeType)) {
|
|
171
|
+
this.loadAsText(blobUrl.url, mimeType);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
this.nextBlob(BlobContext.safeUrl(safeUrl, mimeType));
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
nextBlob(blobContext) {
|
|
178
|
+
this.blobContext$.next(blobContext);
|
|
179
|
+
}
|
|
180
|
+
createSafeUrlFromBlob(blob) {
|
|
181
|
+
const blobUrl = URL.createObjectURL(blob);
|
|
182
|
+
return this.domSanitizer.bypassSecurityTrustResourceUrl(blobUrl);
|
|
183
|
+
}
|
|
184
|
+
createSafeUrlFromDataUrl(url) {
|
|
185
|
+
return this.domSanitizer.bypassSecurityTrustResourceUrl(url);
|
|
186
|
+
}
|
|
187
|
+
loadAsText(pristineUrl, mimeType) {
|
|
188
|
+
this.nextBlob(BlobContext.textBlob('Loading...', mimeType));
|
|
189
|
+
this.downloadAsText(pristineUrl).subscribe(text => {
|
|
190
|
+
this.nextBlob(BlobContext.textBlob(text, mimeType));
|
|
191
|
+
}, err => {
|
|
192
|
+
this.nextBlob(BlobContext.textBlob('Failed to download content!', mimeType));
|
|
193
|
+
this.toastService.warn('Failed to download content!', err);
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
canDisplayAsText(mimeType) {
|
|
197
|
+
const can = mimeType.isText || (this._displayUnknownAsText && mimeType.isOctetStream);
|
|
198
|
+
// TODO _displayUnknownAsText might be null due race condition see todo above.
|
|
199
|
+
// this.logger.debug('canDisplayAsText(' + mimeType.value + ') --> '
|
|
200
|
+
// + can + ' ---> this._displayUnknownAsText:' + this._displayUnknownAsText, mimeType);
|
|
201
|
+
return can;
|
|
202
|
+
}
|
|
203
|
+
downloadAsText(pristineUrl) {
|
|
204
|
+
return this.httpPristine.get(pristineUrl, {
|
|
205
|
+
responseType: 'text'
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
ElderBlobViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderBlobViewerComponent, deps: [{ token: i1.HttpClientPristine }, { token: i2.DomSanitizer }, { token: i3.ElderToastService }], target: i0.ɵɵFactoryTarget.Component });
|
|
210
|
+
ElderBlobViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderBlobViewerComponent, selector: "elder-blob-viewer", inputs: { displayUnknownAsText: "displayUnknownAsText", blob: "blob", blobUrl: "blobUrl", url: "url", mimeType: "mimeType" }, ngImport: i0, template: "<div class=\"layout-col full place-center-center document-viewer\">\n\n <ng-container *ngIf=\"blobContext$ | async as blobContext\">\n\n <!-- Video -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isVideo\">\n <video class=\"video\"\n controls autoplay loop\n\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 video.\n </video>\n </div>\n\n <!-- Audio -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isAudio\">\n <audio class=\"audio\"\n controls autoplay loop\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 audio.\n </audio>\n </div>\n\n <!-- Image -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.mimeType.isImage\" style=\"overflow: hidden\">\n <img class=\"cover flex\"\n [src]=\"blobContext.safeUrl\" alt=\"blob image\"/>\n </div>\n\n <!-- Embedded (PDFs etc) -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayEmbedded\">\n <div class=\"full\">\n <embed class=\"embedded\" [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\" width=\"100%\" height=\"100%\">\n </div>\n </div>\n\n <!-- Plain Text -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayAsText\">\n <textarea\n class=\"document-content\"\n placeholder=\"Content\"\n [value]=\"blobContext.text\" wrap=\"off\"\n readonly\n ></textarea>\n </div>\n\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.cantDisplay\">\n <p>Cant display {{blobContext.mimeType.value}}!</p>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!(blobContext$ | async)\">\n <div class=\"layout-col place-center-center full\">\n <p>No Document.</p>\n </div>\n </ng-container>\n\n\n</div>\n", styles: [":host{overflow:hidden}.document-viewer{background-color:#dedede;color:#1f1e1e}.video,.audio{width:100%;height:auto}.embedded{width:100%;height:100%}.cover{-o-object-fit:scale-down;object-fit:scale-down;width:100%;height:auto;overflow:hidden}.document-content{font-family:Courier,monospace;font-size:14px;background-color:#575757;color:#ccc;outline:none;resize:none;width:100%;height:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-radius:0;box-shadow:0 2px 14px #000;border-top:1px solid #FFF;border-bottom:1px solid #FFF}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
211
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderBlobViewerComponent, decorators: [{
|
|
212
|
+
type: Component,
|
|
213
|
+
args: [{ selector: 'elder-blob-viewer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"layout-col full place-center-center document-viewer\">\n\n <ng-container *ngIf=\"blobContext$ | async as blobContext\">\n\n <!-- Video -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isVideo\">\n <video class=\"video\"\n controls autoplay loop\n\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 video.\n </video>\n </div>\n\n <!-- Audio -->\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.mimeType.isAudio\">\n <audio class=\"audio\"\n controls autoplay loop\n >\n <source [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\">\n Your browser does not support HTML5 audio.\n </audio>\n </div>\n\n <!-- Image -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.mimeType.isImage\" style=\"overflow: hidden\">\n <img class=\"cover flex\"\n [src]=\"blobContext.safeUrl\" alt=\"blob image\"/>\n </div>\n\n <!-- Embedded (PDFs etc) -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayEmbedded\">\n <div class=\"full\">\n <embed class=\"embedded\" [src]=\"blobContext.safeUrl\" [type]=\"blobContext.mimeType.value\" width=\"100%\" height=\"100%\">\n </div>\n </div>\n\n <!-- Plain Text -->\n <div class=\"layout-col full\" *ngIf=\"blobContext.displayAsText\">\n <textarea\n class=\"document-content\"\n placeholder=\"Content\"\n [value]=\"blobContext.text\" wrap=\"off\"\n readonly\n ></textarea>\n </div>\n\n <div class=\"layout-col place-center-center full\" *ngIf=\"blobContext.cantDisplay\">\n <p>Cant display {{blobContext.mimeType.value}}!</p>\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"!(blobContext$ | async)\">\n <div class=\"layout-col place-center-center full\">\n <p>No Document.</p>\n </div>\n </ng-container>\n\n\n</div>\n", styles: [":host{overflow:hidden}.document-viewer{background-color:#dedede;color:#1f1e1e}.video,.audio{width:100%;height:auto}.embedded{width:100%;height:100%}.cover{-o-object-fit:scale-down;object-fit:scale-down;width:100%;height:auto;overflow:hidden}.document-content{font-family:Courier,monospace;font-size:14px;background-color:#575757;color:#ccc;outline:none;resize:none;width:100%;height:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-radius:0;box-shadow:0 2px 14px #000;border-top:1px solid #FFF;border-bottom:1px solid #FFF}\n"] }]
|
|
214
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClientPristine }, { type: i2.DomSanitizer }, { type: i3.ElderToastService }]; }, propDecorators: { displayUnknownAsText: [{
|
|
215
|
+
type: Input
|
|
216
|
+
}], blob: [{
|
|
217
|
+
type: Input
|
|
218
|
+
}], blobUrl: [{
|
|
219
|
+
type: Input
|
|
220
|
+
}], url: [{
|
|
221
|
+
type: Input
|
|
222
|
+
}], mimeType: [{
|
|
223
|
+
type: Input
|
|
224
|
+
}] } });
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9ibG9iLXZpZXdlci9lbGRlci1ibG9iLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2Jsb2Itdmlld2VyL2VsZGVyLWJsb2Itdmlld2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUUzRixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHbkQsT0FBTyxFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQUU1RCxNQUFNLFdBQVc7SUFnQmYsWUFDa0IsT0FBZ0IsRUFDaEIsUUFBc0IsRUFDdEIsT0FBZSxJQUFJO1FBRm5CLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBYztRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFlO0lBRXJDLENBQUM7SUFuQk0sTUFBTSxDQUFDLFFBQVEsQ0FDcEIsSUFBWSxFQUNaLFFBQXNCO1FBRXRCLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FDbkIsT0FBZ0IsRUFDaEIsUUFBc0I7UUFFdEIsT0FBTyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFTRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7ZUFDOUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDbEYsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7Q0FFRjtBQUVELE1BQU0sWUFBWTtJQVloQixZQUNrQixLQUFhO1FBQWIsVUFBSyxHQUFMLEtBQUssQ0FBUTtJQUMxQixDQUFDO0lBVkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFnQjtRQUNsQyxJQUFJLFFBQVEsRUFBRTtZQUNaLE9BQU8sSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDbkM7YUFBTTtZQUNMLE9BQU8sWUFBWSxDQUFDLFlBQVksQ0FBQztTQUNsQztJQUNILENBQUM7SUFNRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZELENBQUM7O0FBeENzQix5QkFBWSxHQUFHLElBQUksWUFBWSxDQUFDLDBCQUEwQixDQUFDLENBQUM7QUFrRHJGLE1BQU0sT0FBTyx3QkFBd0I7SUFrQm5DOzs7O2dGQUk0RTtJQUU1RSxZQUNVLFlBQWdDLEVBQ2hDLFlBQTBCLEVBQzFCLFlBQStCO1FBRi9CLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUF6QnpDOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpELGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQWMsSUFBSSxDQUFDLENBQUM7UUFHckQsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFTLElBQUksQ0FBQyxDQUFDO1FBQzFDLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBUyxJQUFJLENBQUMsQ0FBQztRQUMvQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUN4QywwQkFBcUIsR0FBRyxLQUFLLENBQUM7SUFZakMsQ0FBQztJQUVOOzs7O2dGQUk0RTtJQUVyRSxRQUFRO1FBQ2IsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQy9DLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQ3hCLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQ2xDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUN0RCxDQUFDLFNBQVMsQ0FDVCxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUU7OztPQUdHO0lBQ0gsSUFDVyxvQkFBb0IsQ0FBQyxhQUFzQjtRQUVwRCwyQkFBMkI7UUFDM0IsZ0VBQWdFO1FBQ2hFLDZEQUE2RDtRQUU3RCxJQUFJLENBQUMscUJBQXFCLEdBQUcscUJBQXFCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ1csSUFBSSxDQUFDLElBQVU7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxPQUFPLENBQUMsT0FBZ0I7UUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDVyxHQUFHLENBQUMsR0FBVztRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxRQUFRLENBQUMsUUFBZ0I7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUdwRSxVQUFVLENBQUMsSUFBVTtRQUUzQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsTUFBTSxRQUFRLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0MsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDbEM7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQ1gsV0FBVyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQ3ZDLENBQUM7U0FDSDtJQUNILENBQUM7SUFFTyxXQUFXLENBQUMsSUFBVSxFQUFFLFFBQXNCO1FBQ3BELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQ2QsSUFBSSxDQUFDLEVBQUU7WUFDTCxJQUFJLENBQUMsUUFBUSxDQUNYLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUNyQyxDQUFDO1FBQ0osQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQWdCO1FBRXBDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsTUFBTSxRQUFRLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFdEQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUNYLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUN2QyxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRU8sUUFBUSxDQUFDLFdBQXdCO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxJQUFVO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLDhCQUE4QixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTyx3QkFBd0IsQ0FBQyxHQUFXO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyw4QkFBOEIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sVUFBVSxDQUFDLFdBQW1CLEVBQUUsUUFBc0I7UUFFNUQsSUFBSSxDQUFDLFFBQVEsQ0FDWCxXQUFXLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FDN0MsQ0FBQztRQUVGLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUN4QyxJQUFJLENBQUMsRUFBRTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQ1gsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQ3JDLENBQUM7UUFDSixDQUFDLEVBQ0QsR0FBRyxDQUFDLEVBQUU7WUFDSixJQUFJLENBQUMsUUFBUSxDQUNYLFdBQVcsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsUUFBUSxDQUFDLENBQzlELENBQUM7WUFDRixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxRQUFzQjtRQUU3QyxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixJQUFJLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV0Riw4RUFBOEU7UUFDOUUsb0VBQW9FO1FBQ3BFLHdGQUF3RjtRQUV4RixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTyxjQUFjLENBQUMsV0FBbUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUU7WUFDeEMsWUFBWSxFQUFFLE1BQU07U0FDckIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c0hBMU1VLHdCQUF3QjswR0FBeEIsd0JBQXdCLHVMQ3BHckMsNi9EQThEQTs0RkRzQ2Esd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNO29LQWdFcEMsb0JBQW9CO3NCQUQ5QixLQUFLO2dCQWVLLElBQUk7c0JBRGQsS0FBSztnQkFVSyxPQUFPO3NCQURqQixLQUFLO2dCQVdLLEdBQUc7c0JBRGIsS0FBSztnQkFVSyxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVVcmx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtCbG9iVXJsfSBmcm9tICcuLi9ibG9iLXVybCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SHR0cENsaWVudFByaXN0aW5lfSBmcm9tICcuLi8uLi8uLi9jb21tb24vaHR0cC9odHRwLWNsaWVudC1wcmlzdGluZSc7XG5pbXBvcnQge0VsZGVyVG9hc3RTZXJ2aWNlfSBmcm9tICcuLi8uLi90b2FzdHMvZWxkZXItdG9hc3Quc2VydmljZSc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5jbGFzcyBCbG9iQ29udGV4dCB7XG5cbiAgcHVibGljIHN0YXRpYyB0ZXh0QmxvYihcbiAgICB0ZXh0OiBzdHJpbmcsXG4gICAgbWltZVR5cGU6IEJsb2JNaW1lVHlwZVxuICApIHtcbiAgICByZXR1cm4gbmV3IEJsb2JDb250ZXh0KG51bGwsIG1pbWVUeXBlLCB0ZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgc2FmZVVybChcbiAgICBzYWZlVXJsOiBTYWZlVXJsLFxuICAgIG1pbWVUeXBlOiBCbG9iTWltZVR5cGUsXG4gICk6IEJsb2JDb250ZXh0IHtcbiAgICByZXR1cm4gbmV3IEJsb2JDb250ZXh0KHNhZmVVcmwsIG1pbWVUeXBlLCBudWxsKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBzYWZlVXJsOiBTYWZlVXJsLFxuICAgIHB1YmxpYyByZWFkb25seSBtaW1lVHlwZTogQmxvYk1pbWVUeXBlLFxuICAgIHB1YmxpYyByZWFkb25seSB0ZXh0OiBzdHJpbmcgPSBudWxsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5QXNUZXh0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMudGV4dDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2FudERpc3BsYXkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmRpc3BsYXlBc1RleHQgJiYgIXRoaXMuZGlzcGxheUVtYmVkZGVkXG4gICAgICAmJiAhdGhpcy5taW1lVHlwZS5pc0F1ZGlvICYmICF0aGlzLm1pbWVUeXBlLmlzSW1hZ2UgJiYgIXRoaXMubWltZVR5cGUuaXNWaWRlbztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheUVtYmVkZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1pbWVUeXBlLmlzUGRmO1xuICB9XG5cbn1cblxuY2xhc3MgQmxvYk1pbWVUeXBlIHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE9DVEVUX1NUUkVBTSA9IG5ldyBCbG9iTWltZVR5cGUoJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScpO1xuXG4gIHB1YmxpYyBzdGF0aWMgcGFyc2UobWltZVR5cGU6IHN0cmluZyk6IEJsb2JNaW1lVHlwZSB7XG4gICAgaWYgKG1pbWVUeXBlKSB7XG4gICAgICByZXR1cm4gbmV3IEJsb2JNaW1lVHlwZShtaW1lVHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBCbG9iTWltZVR5cGUuT0NURVRfU1RSRUFNO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nXG4gICkgeyAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPY3RldFN0cmVhbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZS5zdGFydHNXaXRoKCdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNWaWRlbygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZS5zdGFydHNXaXRoKCd2aWRlby8nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNJbWFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZS5zdGFydHNXaXRoKCdpbWFnZS8nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNBdWRpbygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZS5zdGFydHNXaXRoKCdhdWRpby8nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNKc29uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlLnN0YXJ0c1dpdGgoJ2FwcGxpY2F0aW9uL2pzb24nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNQZGYoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWUuc3RhcnRzV2l0aCgnYXBwbGljYXRpb24vcGRmJyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVGV4dCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZS5zdGFydHNXaXRoKCd0ZXh0LycpIHx8IHRoaXMuaXNKc29uO1xuICB9XG5cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYmxvYi12aWV3ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1ibG9iLXZpZXdlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckJsb2JWaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSBibG9iQ29udGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJsb2JDb250ZXh0PihudWxsKTtcblxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3VybCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21pbWVUeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihudWxsKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX2Rpc3BsYXlVbmtub3duQXNUZXh0ID0gZmFsc2U7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwUHJpc3RpbmU6IEh0dHBDbGllbnRQcmlzdGluZSxcbiAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBFbGRlclRvYXN0U2VydmljZVxuICApIHsgIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5fdXJsJCwgdGhpcy5fbWltZVR5cGUkXSkucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcigoW3VybCwgbWltZVR5cGVdKSA9PiAhIXVybCksXG4gICAgICBtYXAoKFt1cmwsIG1pbWVUeXBlXSkgPT4gQmxvYlVybC5mcm9tKHVybCwgbWltZVR5cGUpKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgYmxvYlVybCA9PiB0aGlzLmJsb2JVcmwgPSBibG9iVXJsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogQXR0ZW1wdCB0byBkaXNwbGF5IHVua25vd24gYmxvYnMgYXMgdGV4dC4gKGkuZS4gbWltZS10eXBlIGlzIG9jdGV0LXN0cmVhbSlcbiAgICogQHBhcmFtIHVua25vd25Bc1RleHRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzcGxheVVua25vd25Bc1RleHQodW5rbm93bkFzVGV4dDogYm9vbGVhbikge1xuXG4gICAgLy8gVE9ETyBGSVggUkFDRSBDT05ESVRJT046XG4gICAgLy8gICAgU2luY2UgdGhpcyBwcm9wZXJ0eSBpcyBub3QgcmVhY3RpdmUsIGl0IG11c3QgYmUgc2V0IGZpcnN0LlxuICAgIC8vICAgIE90aGVyd2lzZSwgaXQgd2lsbCBzdGlsbCBiZSBmYWxzZSwgZXZlbiBpZiBzZXQgdG8gdHJ1ZSFcblxuICAgIHRoaXMuX2Rpc3BsYXlVbmtub3duQXNUZXh0ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHVua25vd25Bc1RleHQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBhIGluIG1lbW9yeSBibG9iIHRvIGRpc3BsYXkuXG4gICAqIEBwYXJhbSBibG9iXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGJsb2IoYmxvYjogQmxvYikge1xuICAgIHRoaXMuaGFuZGxlQmxvYihibG9iKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYSBibG9iLXVybCB0byBkaXNwbGF5LlxuICAgKiBAcGFyYW0gYmxvYlVybFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBibG9iVXJsKGJsb2JVcmw6IEJsb2JVcmwpIHtcbiAgICB0aGlzLmhhbmRsZUJsb2JVcmwoYmxvYlVybCk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBTZXQgYSB1cmwgdG8gZGlzcGxheS4gUmVxdWlyZXMgdGhlIG1pbWVUeXBlIHRvIGJlIHNldCBhc3dlbGwuXG4gICAqIEBwYXJhbSB1cmxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdXJsKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5fdXJsJC5uZXh0KHVybCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBtaW1lLXR5cGUgZm9yIHRoZSB1cmwgdG8gZGlzcGxheS4gT25seSBjb25zaWRlcmVkIGlmIHVybCBpcyBzZXQuXG4gICAqIEBwYXJhbSBtaW1lVHlwZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBtaW1lVHlwZShtaW1lVHlwZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbWltZVR5cGUkLm5leHQobWltZVR5cGUpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuICBwcml2YXRlIGhhbmRsZUJsb2IoYmxvYjogQmxvYik6IHZvaWQge1xuXG4gICAgY29uc3Qgc2FmZVVybCA9IHRoaXMuY3JlYXRlU2FmZVVybEZyb21CbG9iKGJsb2IpO1xuICAgIGNvbnN0IG1pbWVUeXBlID0gQmxvYk1pbWVUeXBlLnBhcnNlKGJsb2IudHlwZSk7XG5cbiAgICBpZiAodGhpcy5jYW5EaXNwbGF5QXNUZXh0KG1pbWVUeXBlKSkge1xuICAgICAgdGhpcy50ZXh0Q29udGV4dChibG9iLCBtaW1lVHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmV4dEJsb2IoXG4gICAgICAgIEJsb2JDb250ZXh0LnNhZmVVcmwoc2FmZVVybCwgbWltZVR5cGUpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdGV4dENvbnRleHQoYmxvYjogQmxvYiwgbWltZVR5cGU6IEJsb2JNaW1lVHlwZSk6IHZvaWQge1xuICAgIGJsb2IudGV4dCgpLnRoZW4oXG4gICAgICB0ZXh0ID0+IHtcbiAgICAgICAgdGhpcy5uZXh0QmxvYihcbiAgICAgICAgICBCbG9iQ29udGV4dC50ZXh0QmxvYih0ZXh0LCBtaW1lVHlwZSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVCbG9iVXJsKGJsb2JVcmw6IEJsb2JVcmwpOiB2b2lkIHtcblxuICAgIGNvbnN0IHNhZmVVcmwgPSB0aGlzLmNyZWF0ZVNhZmVVcmxGcm9tRGF0YVVybChibG9iVXJsLnVybCk7XG4gICAgY29uc3QgbWltZVR5cGUgPSBCbG9iTWltZVR5cGUucGFyc2UoYmxvYlVybC5taW1lVHlwZSk7XG5cbiAgICBpZiAodGhpcy5jYW5EaXNwbGF5QXNUZXh0KG1pbWVUeXBlKSkge1xuICAgICAgdGhpcy5sb2FkQXNUZXh0KGJsb2JVcmwudXJsLCBtaW1lVHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmV4dEJsb2IoXG4gICAgICAgIEJsb2JDb250ZXh0LnNhZmVVcmwoc2FmZVVybCwgbWltZVR5cGUpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbmV4dEJsb2IoYmxvYkNvbnRleHQ6IEJsb2JDb250ZXh0KTogdm9pZCB7XG4gICAgdGhpcy5ibG9iQ29udGV4dCQubmV4dChibG9iQ29udGV4dCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVNhZmVVcmxGcm9tQmxvYihibG9iOiBCbG9iKTogU2FmZVVybCB7XG4gICAgY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgcmV0dXJuIHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChibG9iVXJsKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU2FmZVVybEZyb21EYXRhVXJsKHVybDogc3RyaW5nKTogU2FmZVVybCB7XG4gICAgcmV0dXJuIHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh1cmwpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkQXNUZXh0KHByaXN0aW5lVXJsOiBzdHJpbmcsIG1pbWVUeXBlOiBCbG9iTWltZVR5cGUpOiB2b2lkIHtcblxuICAgIHRoaXMubmV4dEJsb2IoXG4gICAgICBCbG9iQ29udGV4dC50ZXh0QmxvYignTG9hZGluZy4uLicsIG1pbWVUeXBlKVxuICAgICk7XG5cbiAgICB0aGlzLmRvd25sb2FkQXNUZXh0KHByaXN0aW5lVXJsKS5zdWJzY3JpYmUoXG4gICAgICB0ZXh0ID0+IHtcbiAgICAgICAgdGhpcy5uZXh0QmxvYihcbiAgICAgICAgICBCbG9iQ29udGV4dC50ZXh0QmxvYih0ZXh0LCBtaW1lVHlwZSlcbiAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgICBlcnIgPT4ge1xuICAgICAgICB0aGlzLm5leHRCbG9iKFxuICAgICAgICAgIEJsb2JDb250ZXh0LnRleHRCbG9iKCdGYWlsZWQgdG8gZG93bmxvYWQgY29udGVudCEnLCBtaW1lVHlwZSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uud2FybignRmFpbGVkIHRvIGRvd25sb2FkIGNvbnRlbnQhJywgZXJyKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5EaXNwbGF5QXNUZXh0KG1pbWVUeXBlOiBCbG9iTWltZVR5cGUpOiBib29sZWFuIHtcblxuICAgIGNvbnN0IGNhbiA9IG1pbWVUeXBlLmlzVGV4dCB8fCAodGhpcy5fZGlzcGxheVVua25vd25Bc1RleHQgJiYgbWltZVR5cGUuaXNPY3RldFN0cmVhbSk7XG5cbiAgICAvLyBUT0RPIF9kaXNwbGF5VW5rbm93bkFzVGV4dCBtaWdodCBiZSBudWxsIGR1ZSByYWNlIGNvbmRpdGlvbiBzZWUgdG9kbyBhYm92ZS5cbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnY2FuRGlzcGxheUFzVGV4dCgnICsgbWltZVR5cGUudmFsdWUgKyAnKSAtLT4gJ1xuICAgIC8vICArIGNhbiArICcgLS0tPiB0aGlzLl9kaXNwbGF5VW5rbm93bkFzVGV4dDonICsgdGhpcy5fZGlzcGxheVVua25vd25Bc1RleHQsIG1pbWVUeXBlKTtcblxuICAgIHJldHVybiBjYW47XG4gIH1cblxuICBwcml2YXRlIGRvd25sb2FkQXNUZXh0KHByaXN0aW5lVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBQcmlzdGluZS5nZXQocHJpc3RpbmVVcmwsIHtcbiAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGwgcGxhY2UtY2VudGVyLWNlbnRlciBkb2N1bWVudC12aWV3ZXJcIj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiYmxvYkNvbnRleHQkIHwgYXN5bmMgYXMgYmxvYkNvbnRleHRcIj5cblxuICAgIDwhLS0gVmlkZW8gLS0+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgcGxhY2UtY2VudGVyLWNlbnRlciBmdWxsXCIgKm5nSWY9XCJibG9iQ29udGV4dC5taW1lVHlwZS5pc1ZpZGVvXCI+XG4gICAgICA8dmlkZW8gY2xhc3M9XCJ2aWRlb1wiXG4gICAgICAgICAgICAgY29udHJvbHMgYXV0b3BsYXkgbG9vcFxuXG4gICAgICA+XG4gICAgICAgIDxzb3VyY2UgW3NyY109XCJibG9iQ29udGV4dC5zYWZlVXJsXCIgW3R5cGVdPVwiYmxvYkNvbnRleHQubWltZVR5cGUudmFsdWVcIj5cbiAgICAgICAgWW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUgdmlkZW8uXG4gICAgICA8L3ZpZGVvPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBBdWRpbyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBwbGFjZS1jZW50ZXItY2VudGVyIGZ1bGxcIiAqbmdJZj1cImJsb2JDb250ZXh0Lm1pbWVUeXBlLmlzQXVkaW9cIj5cbiAgICAgIDxhdWRpbyBjbGFzcz1cImF1ZGlvXCJcbiAgICAgICAgICAgICBjb250cm9scyBhdXRvcGxheSBsb29wXG4gICAgICA+XG4gICAgICAgIDxzb3VyY2UgW3NyY109XCJibG9iQ29udGV4dC5zYWZlVXJsXCIgW3R5cGVdPVwiYmxvYkNvbnRleHQubWltZVR5cGUudmFsdWVcIj5cbiAgICAgICAgWW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUgYXVkaW8uXG4gICAgICA8L2F1ZGlvPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBJbWFnZSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCIgKm5nSWY9XCJibG9iQ29udGV4dC5taW1lVHlwZS5pc0ltYWdlXCIgc3R5bGU9XCJvdmVyZmxvdzogaGlkZGVuXCI+XG4gICAgICA8aW1nIGNsYXNzPVwiY292ZXIgZmxleFwiXG4gICAgICAgICAgIFtzcmNdPVwiYmxvYkNvbnRleHQuc2FmZVVybFwiIGFsdD1cImJsb2IgaW1hZ2VcIi8+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIEVtYmVkZGVkIChQREZzIGV0YykgLS0+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiICpuZ0lmPVwiYmxvYkNvbnRleHQuZGlzcGxheUVtYmVkZGVkXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZnVsbFwiPlxuICAgICAgICA8ZW1iZWQgY2xhc3M9XCJlbWJlZGRlZFwiIFtzcmNdPVwiYmxvYkNvbnRleHQuc2FmZVVybFwiIFt0eXBlXT1cImJsb2JDb250ZXh0Lm1pbWVUeXBlLnZhbHVlXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIFBsYWluIFRleHQgLS0+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiICpuZ0lmPVwiYmxvYkNvbnRleHQuZGlzcGxheUFzVGV4dFwiPlxuICAgICAgPHRleHRhcmVhXG4gICAgICAgIGNsYXNzPVwiZG9jdW1lbnQtY29udGVudFwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiQ29udGVudFwiXG4gICAgICAgIFt2YWx1ZV09XCJibG9iQ29udGV4dC50ZXh0XCIgd3JhcD1cIm9mZlwiXG4gICAgICAgIHJlYWRvbmx5XG4gICAgICA+PC90ZXh0YXJlYT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIHBsYWNlLWNlbnRlci1jZW50ZXIgZnVsbFwiICpuZ0lmPVwiYmxvYkNvbnRleHQuY2FudERpc3BsYXlcIj5cbiAgICAgIDxwPkNhbnQgZGlzcGxheSB7e2Jsb2JDb250ZXh0Lm1pbWVUeXBlLnZhbHVlfX0hPC9wPlxuICAgIDwvZGl2PlxuXG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKGJsb2JDb250ZXh0JCB8IGFzeW5jKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIHBsYWNlLWNlbnRlci1jZW50ZXIgZnVsbFwiPlxuICAgICAgPHA+Tm8gRG9jdW1lbnQuPC9wPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuXG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
2
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ElderFileDropZoneDirective {
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* Constructor *
|
|
8
|
+
* *
|
|
9
|
+
**************************************************************************/
|
|
10
|
+
constructor(hostRef, renderer) {
|
|
11
|
+
this.hostRef = hostRef;
|
|
12
|
+
this.renderer = renderer;
|
|
13
|
+
/***************************************************************************
|
|
14
|
+
* *
|
|
15
|
+
* Fields *
|
|
16
|
+
* *
|
|
17
|
+
**************************************************************************/
|
|
18
|
+
this.logger = LoggerFactory.getLogger('ElderFileDropZoneDirective');
|
|
19
|
+
this.elderFileDropZoneChange = new EventEmitter();
|
|
20
|
+
this.dragOverClass = 'is-dragover';
|
|
21
|
+
}
|
|
22
|
+
/***************************************************************************
|
|
23
|
+
* *
|
|
24
|
+
* Life Cycle *
|
|
25
|
+
* *
|
|
26
|
+
**************************************************************************/
|
|
27
|
+
ngOnInit() { }
|
|
28
|
+
ngOnDestroy() { }
|
|
29
|
+
/***************************************************************************
|
|
30
|
+
* *
|
|
31
|
+
* Public API *
|
|
32
|
+
* *
|
|
33
|
+
**************************************************************************/
|
|
34
|
+
onDragOver(evt) {
|
|
35
|
+
evt.preventDefault(); // Prevent default browser action
|
|
36
|
+
this.renderer.addClass(this.hostRef.nativeElement, this.dragOverClass);
|
|
37
|
+
}
|
|
38
|
+
onDragEnd(evt) {
|
|
39
|
+
evt.preventDefault(); // Prevent default browser action
|
|
40
|
+
this.dragEnd(evt);
|
|
41
|
+
}
|
|
42
|
+
onDrop(evt) {
|
|
43
|
+
this.logger.debug('drop event!', evt);
|
|
44
|
+
evt.preventDefault();
|
|
45
|
+
evt.stopPropagation();
|
|
46
|
+
this.dragEnd(evt);
|
|
47
|
+
const files = this.collectFiles(evt);
|
|
48
|
+
this.logger.debug('User dropped ' + files.size + 'files!', files);
|
|
49
|
+
this.emitFiles(files);
|
|
50
|
+
}
|
|
51
|
+
/***************************************************************************
|
|
52
|
+
* *
|
|
53
|
+
* Private methods *
|
|
54
|
+
* *
|
|
55
|
+
**************************************************************************/
|
|
56
|
+
dragEnd(evt) {
|
|
57
|
+
this.renderer.removeClass(this.hostRef.nativeElement, this.dragOverClass);
|
|
58
|
+
}
|
|
59
|
+
collectFiles(ev) {
|
|
60
|
+
const files = new Set();
|
|
61
|
+
if (ev.dataTransfer.items) {
|
|
62
|
+
// Use DataTransferItemList interface to access the file(s)
|
|
63
|
+
for (let i = 0; i < ev.dataTransfer.items.length; i++) {
|
|
64
|
+
// If dropped items aren't files, reject them
|
|
65
|
+
if (ev.dataTransfer.items[i].kind === 'file') { // ignore kind 'string'
|
|
66
|
+
const file = ev.dataTransfer.items[i].getAsFile();
|
|
67
|
+
files.add(file);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
// Use DataTransfer interface to access the file(s)
|
|
73
|
+
for (let i = 0; i < ev.dataTransfer.files.length; i++) {
|
|
74
|
+
files.add(ev.dataTransfer.files[i]);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return files;
|
|
78
|
+
}
|
|
79
|
+
emitFiles(files) {
|
|
80
|
+
if (files.size > 0) {
|
|
81
|
+
this.elderFileDropZoneChange.next(files);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
ElderFileDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderFileDropZoneDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
86
|
+
ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderFileDropZoneDirective, decorators: [{
|
|
88
|
+
type: Directive,
|
|
89
|
+
args: [{
|
|
90
|
+
selector: '[elderFileDropZone]'
|
|
91
|
+
}]
|
|
92
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { elderFileDropZoneChange: [{
|
|
93
|
+
type: Output
|
|
94
|
+
}], dragOverClass: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], onDragOver: [{
|
|
97
|
+
type: HostListener,
|
|
98
|
+
args: ['dragover', ['$event']]
|
|
99
|
+
}], onDragEnd: [{
|
|
100
|
+
type: HostListener,
|
|
101
|
+
args: ['dragend', ['$event']]
|
|
102
|
+
}, {
|
|
103
|
+
type: HostListener,
|
|
104
|
+
args: ['dragleave', ['$event']]
|
|
105
|
+
}], onDrop: [{
|
|
106
|
+
type: HostListener,
|
|
107
|
+
args: ['drop', ['$event']]
|
|
108
|
+
}] } });
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLDBCQUEwQjtJQWdCckM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ1UsT0FBbUIsRUFDbkIsUUFBbUI7UUFEbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBdEI3Qjs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUdoRSw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBR2pFLGtCQUFhLEdBQUcsYUFBYSxDQUFDO0lBV2pDLENBQUM7SUFFTDs7OztnRkFJNEU7SUFFckUsUUFBUSxLQUFXLENBQUM7SUFFcEIsV0FBVyxLQUFXLENBQUM7SUFFOUI7Ozs7Z0ZBSTRFO0lBR3JFLFVBQVUsQ0FBQyxHQUFjO1FBQzlCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGlDQUFpQztRQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUlNLFNBQVMsQ0FBQyxHQUFjO1FBQzdCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FB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RWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckZpbGVEcm9wWm9uZV0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIoJ0VsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlJyk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbGRlckZpbGVEcm9wWm9uZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U2V0PEZpbGU+PigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkcmFnT3ZlckNsYXNzID0gJ2lzLWRyYWdvdmVyJztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyXG4gICkgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQgeyB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ292ZXInLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnT3ZlcihldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpOyAvLyBQcmV2ZW50IGRlZmF1bHQgYnJvd3NlciBhY3Rpb25cbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuaG9zdFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLmRyYWdPdmVyQ2xhc3MpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2VuZCcsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyYWdFbmQoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5kcmFnRW5kKGV2dCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJvcChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ2Ryb3AgZXZlbnQhJywgZXZ0KTtcblxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmRyYWdFbmQoZXZ0KTtcblxuICAgIGNvbnN0IGZpbGVzID0gdGhpcy5jb2xsZWN0RmlsZXMoZXZ0KTtcblxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdVc2VyIGRyb3BwZWQgJyArIGZpbGVzLnNpemUgKyAnZmlsZXMhJywgZmlsZXMpO1xuXG4gICAgdGhpcy5lbWl0RmlsZXMoZmlsZXMpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBkcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGVjdEZpbGVzKGV2OiBEcmFnRXZlbnQpOiBTZXQ8RmlsZT4ge1xuICAgIGNvbnN0IGZpbGVzID0gbmV3IFNldDxGaWxlPigpO1xuICAgIGlmIChldi5kYXRhVHJhbnNmZXIuaXRlbXMpIHtcbiAgICAgIC8vIFVzZSBEYXRhVHJhbnNmZXJJdGVtTGlzdCBpbnRlcmZhY2UgdG8gYWNjZXNzIHRoZSBmaWxlKHMpXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2LmRhdGFUcmFuc2Zlci5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAvLyBJZiBkcm9wcGVkIGl0ZW1zIGFyZW4ndCBmaWxlcywgcmVqZWN0IHRoZW1cbiAgICAgICAgaWYgKGV2LmRhdGFUcmFuc2Zlci5pdGVtc1tpXS5raW5kID09PSAnZmlsZScpIHsgLy8gaWdub3JlIGtpbmQgJ3N0cmluZydcbiAgICAgICAgICBjb25zdCBmaWxlID0gZXYuZGF0YVRyYW5zZmVyLml0ZW1zW2ldLmdldEFzRmlsZSgpO1xuICAgICAgICAgIGZpbGVzLmFkZChmaWxlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBVc2UgRGF0YVRyYW5zZmVyIGludGVyZmFjZSB0byBhY2Nlc3MgdGhlIGZpbGUocylcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXYuZGF0YVRyYW5zZmVyLmZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGZpbGVzLmFkZChldi5kYXRhVHJhbnNmZXIuZmlsZXNbaV0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cblxuICBwcml2YXRlIGVtaXRGaWxlcyhmaWxlczogU2V0PEZpbGU+KTogdm9pZCB7XG4gICAgaWYgKGZpbGVzLnNpemUgPiAwKSB7XG4gICAgICB0aGlzLmVsZGVyRmlsZURyb3Bab25lQ2hhbmdlLm5leHQoXG4gICAgICAgIGZpbGVzXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|