@elderbyte/ngx-starter 18.15.2 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/elderbyte-ngx-starter.mjs +1097 -1125
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +1 -1
- package/lib/common/forms/elder-from-field-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-customizable-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-entity-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +1 -1
- package/lib/common/forms/form-field-base.component.d.ts +1 -1
- package/lib/common/forms/multi-model-base.component.d.ts +1 -1
- package/lib/common/forms/template-composite-control.d.ts +1 -1
- package/lib/common/forms/value-accessor-base.d.ts +1 -1
- package/lib/common/reactive-map.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-base.d.ts +1 -1
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +1 -1
- package/lib/components/iframes/typed-event-message.d.ts +1 -1
- package/lib/components/panels/elder-panel.module.d.ts +5 -7
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +1 -1
- package/lib/components/select/single/elder-select-form-field.d.ts +1 -1
- package/package.json +6 -8
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -3
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +3 -0
- package/esm2022/elderbyte-ngx-starter.mjs +0 -5
- package/esm2022/lib/common/arrays.mjs +0 -29
- package/esm2022/lib/common/async/public_api.mjs +0 -2
- package/esm2022/lib/common/async/refreshing-entity.mjs +0 -88
- package/esm2022/lib/common/csv/csv-serializer.mjs +0 -55
- package/esm2022/lib/common/csv/csv-spec.mjs +0 -99
- package/esm2022/lib/common/csv/public_api.mjs +0 -3
- package/esm2022/lib/common/data/continuable-listing.mjs +0 -10
- package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +0 -131
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +0 -78
- package/esm2022/lib/common/data/data-context/data-context-base.mjs +0 -339
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +0 -245
- package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +0 -67
- package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +0 -142
- package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +0 -146
- package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +0 -32
- package/esm2022/lib/common/data/data-context/data-context-simple.mjs +0 -61
- package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +0 -63
- package/esm2022/lib/common/data/data-context/data-context-status.mjs +0 -46
- package/esm2022/lib/common/data/data-context/data-context.mjs +0 -30
- package/esm2022/lib/common/data/data-context/indexed-entities.mjs +0 -153
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +0 -145
- package/esm2022/lib/common/data/data-context/public_api.mjs +0 -15
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +0 -59
- package/esm2022/lib/common/data/datasource/data-source-base.mjs +0 -38
- package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +0 -34
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +0 -198
- package/esm2022/lib/common/data/datasource/data-source.mjs +0 -23
- package/esm2022/lib/common/data/datasource/entity-id-util.mjs +0 -11
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +0 -127
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +0 -153
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +0 -75
- package/esm2022/lib/common/data/datasource/patch/deep-partial-patcher.mjs +0 -58
- package/esm2022/lib/common/data/datasource/public_api.mjs +0 -10
- package/esm2022/lib/common/data/datasource/rest/public_api.mjs +0 -2
- package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +0 -290
- package/esm2022/lib/common/data/entity-set-patch.mjs +0 -161
- package/esm2022/lib/common/data/field-comparator.mjs +0 -108
- package/esm2022/lib/common/data/filters/filter-commons.mjs +0 -12
- package/esm2022/lib/common/data/filters/filter-context.mjs +0 -135
- package/esm2022/lib/common/data/filters/filter-value.mjs +0 -2
- package/esm2022/lib/common/data/filters/filter.mjs +0 -104
- package/esm2022/lib/common/data/http-params-builder.mjs +0 -116
- package/esm2022/lib/common/data/page.mjs +0 -58
- package/esm2022/lib/common/data/public_api.mjs +0 -12
- package/esm2022/lib/common/data/required-filter-evaluator.mjs +0 -71
- package/esm2022/lib/common/data/sort-context.mjs +0 -73
- package/esm2022/lib/common/data/sort.mjs +0 -11
- package/esm2022/lib/common/data/token-chunk-request.mjs +0 -8
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +0 -84
- package/esm2022/lib/common/enums/public_api.mjs +0 -2
- package/esm2022/lib/common/errors/exception-detail.mjs +0 -2
- package/esm2022/lib/common/errors/public_api.mjs +0 -3
- package/esm2022/lib/common/errors/standard-error-detail.mjs +0 -2
- package/esm2022/lib/common/exceptions/public_api.mjs +0 -2
- package/esm2022/lib/common/exceptions/unreachable-case-error.mjs +0 -8
- package/esm2022/lib/common/format/bytes-format.mjs +0 -15
- package/esm2022/lib/common/format/bytes-per-second-format.mjs +0 -41
- package/esm2022/lib/common/format/curency-format-util.mjs +0 -43
- package/esm2022/lib/common/format/duration-format-util.mjs +0 -44
- package/esm2022/lib/common/format/iso-interval-format-util.mjs +0 -111
- package/esm2022/lib/common/format/public_api.mjs +0 -6
- package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +0 -188
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +0 -94
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +0 -52
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +0 -39
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +0 -47
- package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/form-field-base.component.mjs +0 -111
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +0 -32
- package/esm2022/lib/common/forms/public_api.mjs +0 -12
- package/esm2022/lib/common/forms/template-composite-control.mjs +0 -136
- package/esm2022/lib/common/forms/value-accessor-base.mjs +0 -146
- package/esm2022/lib/common/forms/view-providers.mjs +0 -30
- package/esm2022/lib/common/http/http-client-builder.service.mjs +0 -14
- package/esm2022/lib/common/http/http-client-pristine.mjs +0 -21
- package/esm2022/lib/common/http/public_api.mjs +0 -5
- package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +0 -77
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +0 -106
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +0 -60
- package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +0 -17
- package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +0 -82
- package/esm2022/lib/common/http/transfer/data-transfer-status.mjs +0 -24
- package/esm2022/lib/common/http/transfer/data-transfer.mjs +0 -2
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +0 -132
- package/esm2022/lib/common/http/transfer/public_api.mjs +0 -7
- package/esm2022/lib/common/http/upload/file-upload-client.mjs +0 -42
- package/esm2022/lib/common/i18n/entity/elder-multi-translate-loader.mjs +0 -53
- package/esm2022/lib/common/i18n/entity/impl/i18n-base.mjs +0 -6
- package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +0 -16
- package/esm2022/lib/common/i18n/entity/impl/translated.mjs +0 -15
- package/esm2022/lib/common/i18n/entity/language-tag.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/locale.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +0 -30
- package/esm2022/lib/common/i18n/entity/localized.mjs +0 -2
- package/esm2022/lib/common/i18n/entity/public_api.mjs +0 -10
- package/esm2022/lib/common/i18n/entity/translated-converter.mjs +0 -18
- package/esm2022/lib/common/i18n/entity/translated.mjs +0 -2
- package/esm2022/lib/common/i18n/public_api.mjs +0 -2
- package/esm2022/lib/common/json-map.mjs +0 -17
- package/esm2022/lib/common/objects.mjs +0 -43
- package/esm2022/lib/common/public_api.mjs +0 -23
- package/esm2022/lib/common/reactive-map.mjs +0 -69
- package/esm2022/lib/common/rxjs/operators/lazy-sample.mjs +0 -34
- package/esm2022/lib/common/rxjs/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/selection-model.mjs +0 -213
- package/esm2022/lib/common/sets.mjs +0 -45
- package/esm2022/lib/common/suggestion-provider.mjs +0 -12
- package/esm2022/lib/common/templates/template-slot-manager.mjs +0 -135
- package/esm2022/lib/common/theme-sizes.mjs +0 -2
- package/esm2022/lib/common/time/date-util.mjs +0 -91
- package/esm2022/lib/common/time/interval-coerce.mjs +0 -30
- package/esm2022/lib/common/time/interval.mjs +0 -442
- package/esm2022/lib/common/time/period-duration.mjs +0 -133
- package/esm2022/lib/common/time/public_api.mjs +0 -8
- package/esm2022/lib/common/time/temporal-plain-date-interval.mjs +0 -34
- package/esm2022/lib/common/time/temporal-util.mjs +0 -205
- package/esm2022/lib/common/time/time-util.mjs +0 -38
- package/esm2022/lib/common/url/elder-router.service.mjs +0 -54
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +0 -117
- package/esm2022/lib/common/url/public_api.mjs +0 -4
- package/esm2022/lib/common/url/url-query-params.mjs +0 -133
- package/esm2022/lib/common/utils/batcher.mjs +0 -35
- package/esm2022/lib/common/utils/collection-util.mjs +0 -111
- package/esm2022/lib/common/utils/filter-util.mjs +0 -133
- package/esm2022/lib/common/utils/focus-util.mjs +0 -23
- package/esm2022/lib/common/utils/input-utils.mjs +0 -6
- package/esm2022/lib/common/utils/next-number-util.mjs +0 -89
- package/esm2022/lib/common/utils/ng-zone-utils.mjs +0 -16
- package/esm2022/lib/common/utils/parse-util.mjs +0 -17
- package/esm2022/lib/common/utils/property-path-util.mjs +0 -28
- package/esm2022/lib/common/utils/public_api.mjs +0 -14
- package/esm2022/lib/common/utils/query-list-binding.mjs +0 -68
- package/esm2022/lib/common/utils/signal-input.mjs +0 -3
- package/esm2022/lib/common/utils/sort-util.mjs +0 -42
- package/esm2022/lib/common/utils/url-builder.mjs +0 -275
- package/esm2022/lib/common/utils/uuid-util.mjs +0 -28
- package/esm2022/lib/common/utils/value-wrapper.mjs +0 -19
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +0 -15
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +0 -20
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +0 -50
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +0 -40
- package/esm2022/lib/components/auditing/i-audited-entity.mjs +0 -3
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +0 -162
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +0 -124
- package/esm2022/lib/components/badge/elder-badge.module.mjs +0 -58
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +0 -13
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +0 -21
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +0 -118
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +0 -18
- package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +0 -93
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +0 -220
- package/esm2022/lib/components/card-organizer/card-stack.mjs +0 -176
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +0 -62
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +0 -17
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +0 -167
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +0 -71
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +0 -171
- package/esm2022/lib/components/chips/elder-chips.module.mjs +0 -45
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +0 -57
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +0 -61
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +0 -46
- package/esm2022/lib/components/connectivity/public_api.mjs +0 -3
- package/esm2022/lib/components/containers/elder-containers.module.mjs +0 -18
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +0 -24
- package/esm2022/lib/components/containers/public_api.mjs +0 -2
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +0 -77
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +0 -114
- package/esm2022/lib/components/csv/elder-csv.module.mjs +0 -24
- package/esm2022/lib/components/currency/elder-currency.module.mjs +0 -18
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +0 -37
- package/esm2022/lib/components/currency/model/currency-code.mjs +0 -38
- package/esm2022/lib/components/currency/model/currency-unit-registry.mjs +0 -30
- package/esm2022/lib/components/currency/model/currency-unit.mjs +0 -10
- package/esm2022/lib/components/currency/model/currency.mjs +0 -15
- package/esm2022/lib/components/currency/public_api.mjs +0 -7
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +0 -91
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +0 -93
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +0 -102
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +0 -34
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +0 -57
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +0 -34
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +0 -69
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +0 -265
- package/esm2022/lib/components/data-view/base/elder-data-view-options-provider.mjs +0 -44
- package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +0 -45
- package/esm2022/lib/components/data-view/base/elder-data-view.mjs +0 -3
- package/esm2022/lib/components/data-view/base/public_api.mjs +0 -6
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-context.mjs +0 -30
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-dc.directive.mjs +0 -55
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort.mjs +0 -68
- package/esm2022/lib/components/data-view/common/composite-sort/elder-composite-sort/elder-composite-sort.component.mjs +0 -101
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +0 -45
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +0 -125
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +0 -140
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +0 -100
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +0 -103
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +0 -36
- package/esm2022/lib/components/data-view/common/selection/master-selection-state.mjs +0 -10
- package/esm2022/lib/components/data-view/elder-data-view-interaction-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +0 -345
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +0 -91
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +0 -75
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +0 -50
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +0 -79
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +0 -20
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +0 -119
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +0 -116
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +0 -89
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +0 -12
- package/esm2022/lib/components/data-view/public_api.mjs +0 -7
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +0 -18
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +0 -104
- package/esm2022/lib/components/data-view/table/activation/activation-event-source.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/elder-activation-context.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +0 -114
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation-options.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +0 -315
- package/esm2022/lib/components/data-view/table/activation/item-activation-event.mjs +0 -8
- package/esm2022/lib/components/data-view/table/activation/item-activation-options.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/public_api.mjs +0 -8
- package/esm2022/lib/components/data-view/table/elder-center-cell.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +0 -30
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +0 -73
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +0 -21
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +0 -338
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +0 -18
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +0 -92
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +0 -26
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +0 -156
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +0 -184
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +0 -110
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +0 -85
- package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +0 -40
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +0 -89
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +0 -167
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +0 -37
- package/esm2022/lib/components/dialogs/elder-dialog-config.mjs +0 -3
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +0 -87
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +0 -199
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +0 -57
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +0 -43
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +0 -47
- package/esm2022/lib/components/errors/elder-error.module.mjs +0 -39
- package/esm2022/lib/components/errors/error-util.mjs +0 -94
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +0 -77
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +0 -55
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +0 -35
- package/esm2022/lib/components/files/blob-url.mjs +0 -10
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +0 -224
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +0 -44
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +0 -84
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +0 -145
- package/esm2022/lib/components/files/elder-file-select-input.mjs +0 -119
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +0 -167
- package/esm2022/lib/components/files/elder-file.module.mjs +0 -85
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +0 -54
- package/esm2022/lib/components/files/file-system-api.mjs +0 -100
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +0 -80
- package/esm2022/lib/components/files/listing/file-entry.mjs +0 -92
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +0 -64
- package/esm2022/lib/components/files/listing/file-listing-system-handle.mjs +0 -35
- package/esm2022/lib/components/files/listing/file-listing-webkit.mjs +0 -76
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +0 -51
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +0 -34
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox-controller.mjs +0 -97
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox-controller.mjs +0 -102
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +0 -38
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +0 -43
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +0 -83
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +0 -84
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +0 -42
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +0 -35
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +0 -142
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +0 -67
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +0 -78
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +0 -112
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +0 -102
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +0 -37
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +0 -30
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +0 -161
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +0 -28
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +0 -88
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +0 -47
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +0 -48
- package/esm2022/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +0 -6
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +0 -53
- package/esm2022/lib/components/forms/directives/validation/validation-message-strategy.mjs +0 -2
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +0 -112
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +0 -69
- package/esm2022/lib/components/forms/elder-forms.module.mjs +0 -22
- package/esm2022/lib/components/forms/public_api.mjs +0 -6
- package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +0 -73
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +0 -42
- package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +0 -88
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/simple-search-input.mjs +0 -50
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +0 -92
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +0 -166
- package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +0 -81
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +0 -256
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +0 -258
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +0 -115
- package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +0 -45
- package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +0 -2
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +0 -131
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +0 -24
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +0 -136
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +0 -47
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +0 -95
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +0 -90
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +0 -19
- package/esm2022/lib/components/graph/elder-progress-bar/sub-bar.mjs +0 -7
- package/esm2022/lib/components/graph/public_api.mjs +0 -2
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +0 -29
- package/esm2022/lib/components/headers/elder-header.module.mjs +0 -42
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +0 -63
- package/esm2022/lib/components/http-support/public_api.mjs +0 -2
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +0 -125
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +0 -157
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +0 -39
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +0 -30
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +0 -177
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +0 -56
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +0 -40
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +0 -74
- package/esm2022/lib/components/i18n/language/elder-language-config.mjs +0 -3
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +0 -70
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +0 -73
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +0 -120
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +0 -79
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +0 -53
- package/esm2022/lib/components/i18n/public_api.mjs +0 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +0 -129
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +0 -141
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +0 -106
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +0 -41
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +0 -51
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +0 -144
- package/esm2022/lib/components/iframes/iframe-messages.mjs +0 -5
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +0 -80
- package/esm2022/lib/components/iframes/iframe.service.mjs +0 -54
- package/esm2022/lib/components/iframes/typed-event-message.mjs +0 -42
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +0 -65
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +0 -166
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +0 -20
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +0 -9
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +0 -233
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +0 -202
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +0 -120
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +0 -61
- package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +0 -58
- package/esm2022/lib/components/input/public_api.mjs +0 -2
- package/esm2022/lib/components/labels/elder-labels.module.mjs +0 -50
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +0 -239
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +0 -268
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +0 -92
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +0 -65
- package/esm2022/lib/components/measures/elder-measures.module.mjs +0 -130
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +0 -31
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +0 -43
- package/esm2022/lib/components/measures/elder-unit.service.mjs +0 -113
- package/esm2022/lib/components/measures/model/dimensions.mjs +0 -17
- package/esm2022/lib/components/measures/model/quantity.mjs +0 -12
- package/esm2022/lib/components/measures/model/unit-dimension.mjs +0 -14
- package/esm2022/lib/components/measures/model/unit-registry.mjs +0 -81
- package/esm2022/lib/components/measures/model/unit.mjs +0 -143
- package/esm2022/lib/components/measures/public_api.mjs +0 -8
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +0 -44
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +0 -173
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +0 -84
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +0 -73
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +0 -341
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +0 -184
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +0 -59
- package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +0 -37
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +0 -60
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +0 -121
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +0 -174
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +0 -68
- package/esm2022/lib/components/navigation/public_api.mjs +0 -4
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +0 -48
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +0 -83
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +0 -68
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +0 -71
- package/esm2022/lib/components/navigation/toolbar/toolbar-column-position.mjs +0 -2
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +0 -39
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +0 -86
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +0 -44
- package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +0 -41
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +0 -73
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +0 -232
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +0 -35
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.module.mjs +0 -20
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.service.mjs +0 -129
- package/esm2022/lib/components/page/exit-guard/page-exit-lock/page-exit-lock.component.mjs +0 -25
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +0 -29
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +0 -26
- package/esm2022/lib/components/page/public_api.mjs +0 -2
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-panel.module.mjs +0 -60
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +0 -26
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +0 -70
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +0 -74
- package/esm2022/lib/components/public_api.mjs +0 -43
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +0 -63
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +0 -17
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +0 -95
- package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +0 -38
- package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +0 -64
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +0 -55
- package/esm2022/lib/components/select/elder-select-base.mjs +0 -333
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +0 -48
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +0 -139
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +0 -18
- package/esm2022/lib/components/select/elder-select.module.mjs +0 -229
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +0 -74
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +0 -148
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +0 -51
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +0 -61
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +0 -160
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +0 -16
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +0 -386
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +0 -87
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +0 -263
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/select-option-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +0 -274
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/select-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +0 -86
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +0 -34
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +0 -146
- package/esm2022/lib/components/select/multi/public_api.mjs +0 -5
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +0 -89
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +0 -126
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +0 -58
- package/esm2022/lib/components/select/public_api.mjs +0 -5
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +0 -60
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +0 -444
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +0 -45
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +0 -148
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +0 -46
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +0 -64
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +0 -119
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +0 -128
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +0 -47
- package/esm2022/lib/components/shell/elder-shell.module.mjs +0 -101
- package/esm2022/lib/components/shell/elder-shell.service.mjs +0 -142
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +0 -75
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +0 -238
- package/esm2022/lib/components/shell/shell-content-slot.mjs +0 -2
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +0 -137
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +0 -26
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +0 -257
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +0 -21
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +0 -62
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +0 -73
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +0 -74
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +0 -64
- package/esm2022/lib/components/theme/elder-theme.module.mjs +0 -68
- package/esm2022/lib/components/theme/elder-theme.service.mjs +0 -121
- package/esm2022/lib/components/theme/known-elder-themes.mjs +0 -6
- package/esm2022/lib/components/theme/public_api.mjs +0 -2
- package/esm2022/lib/components/theme/theme-spec.mjs +0 -11
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +0 -43
- package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +0 -28
- package/esm2022/lib/components/time/duration/duration-bucket.mjs +0 -68
- package/esm2022/lib/components/time/duration/duration-format.mjs +0 -271
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +0 -110
- package/esm2022/lib/components/time/duration/iso-duration-str.mjs +0 -2
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +0 -96
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +0 -98
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +0 -217
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-anchor-controller.mjs +0 -21
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-calendar-controller.mjs +0 -24
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-controller.mjs +0 -43
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-form-controller.mjs +0 -69
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-select-controller.mjs +0 -117
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-shift-controller.mjs +0 -44
- package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.component.mjs +0 -198
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-binding/elder-interval-picker-binding.directive.mjs +0 -41
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-toggle/elder-interval-picker-toggle.component.mjs +0 -144
- package/esm2022/lib/components/time/elder-interval-picker/manager/interval-picker-state-manager.mjs +0 -93
- package/esm2022/lib/components/time/elder-interval-picker/model/anchor-state.mjs +0 -54
- package/esm2022/lib/components/time/elder-interval-picker/model/interval-state.mjs +0 -37
- package/esm2022/lib/components/time/elder-interval-picker/model/smart-shift-state.mjs +0 -10
- package/esm2022/lib/components/time/elder-interval-picker/presenter/interval-picker-presenter.mjs +0 -96
- package/esm2022/lib/components/time/elder-interval-picker/util/interval-picker-util.mjs +0 -194
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +0 -268
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +0 -85
- package/esm2022/lib/components/time/elder-time.module.mjs +0 -154
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +0 -118
- package/esm2022/lib/components/time/period/period-bucket.mjs +0 -31
- package/esm2022/lib/components/time/period/period-format.mjs +0 -89
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +0 -39
- package/esm2022/lib/components/time/public_api.mjs +0 -8
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +0 -36
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +0 -170
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +0 -80
- package/esm2022/lib/components/toasts/toast-type.mjs +0 -7
- package/esm2022/lib/components/toasts/toast.mjs +0 -2
- package/esm2022/lib/components/url-fragment/elder-url-fragment.mjs +0 -9
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +0 -52
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +0 -95
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +0 -64
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +0 -18
- package/esm2022/lib/features/event-source/fetch/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +0 -219
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +0 -53
- package/esm2022/lib/features/event-source/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +0 -56
- package/esm2022/lib/features/event-source/standard/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +0 -199
- package/esm2022/lib/features/kafent/access-token-provider.mjs +0 -20
- package/esm2022/lib/features/kafent/kafent-config.mjs +0 -24
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +0 -25
- package/esm2022/lib/features/kafent/kafent-event.mjs +0 -3
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +0 -115
- package/esm2022/lib/features/kafent/kafent-live-event-request.mjs +0 -2
- package/esm2022/lib/features/kafent/kafent.module.mjs +0 -58
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +0 -131
- package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +0 -97
- package/esm2022/lib/features/public_api.mjs +0 -3
- package/esm2022/lib/pipes/bytes.pipe.mjs +0 -27
- package/esm2022/lib/pipes/elder-pipes.module.mjs +0 -114
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +0 -24
- package/esm2022/lib/pipes/elder-round.pipe.mjs +0 -36
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +0 -21
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +0 -49
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +0 -62
- package/esm2022/lib/pipes/public_api.mjs +0 -2
- package/esm2022/lib/pipes/time-ago.pipe.mjs +0 -110
- package/esm2022/lib/pipes/time-duration.pipe.mjs +0 -101
- package/esm2022/lib/pipes/weight.pipe.mjs +0 -60
- package/esm2022/public_api.mjs +0 -8
- package/lib/components/panels/flat/elder-panel.component.d.ts +0 -15
- package/src/lib/components/panels/flat/elder-panel.component.scss +0 -3
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ElderFileSelectComponent } from './file-select/file-select.component';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import { MatListModule } from '@angular/material/list';
|
|
7
|
-
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
8
|
-
import { ElderPipesModule } from '../../pipes/elder-pipes.module';
|
|
9
|
-
import { ElderFileUploadComponent } from './file-upload/file-upload.component';
|
|
10
|
-
import { ElderFileSelectDirective } from './elder-file-select.directive';
|
|
11
|
-
import { ElderFileDropZoneDirective } from './elder-file-drop-zone.directive';
|
|
12
|
-
import { ElderBlobViewerComponent } from './blob-viewer/elder-blob-viewer.component';
|
|
13
|
-
import { ElderDropZoneComponent } from './drag-n-drop/elder-drop-zone/elder-drop-zone.component';
|
|
14
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
15
|
-
import * as i0 from "@angular/core";
|
|
16
|
-
export { ElderFileSelectComponent } from './file-select/file-select.component';
|
|
17
|
-
export { ElderFileUploadComponent } from './file-upload/file-upload.component';
|
|
18
|
-
export { ElderFileSelectDirective } from './elder-file-select.directive';
|
|
19
|
-
export { ElderFileDropZoneDirective } from './elder-file-drop-zone.directive';
|
|
20
|
-
export { ElderBlobViewerComponent } from './blob-viewer/elder-blob-viewer.component';
|
|
21
|
-
export { ElderDropZoneComponent } from './drag-n-drop/elder-drop-zone/elder-drop-zone.component';
|
|
22
|
-
export * from './drag-n-drop/global-drag-drop.service';
|
|
23
|
-
export * from './blob-url';
|
|
24
|
-
export * from './listing/file-entry';
|
|
25
|
-
export * from './listing/file-listing-rx';
|
|
26
|
-
export class ElderFileModule {
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
28
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ElderFileModule, imports: [CommonModule,
|
|
29
|
-
MatListModule,
|
|
30
|
-
MatButtonModule,
|
|
31
|
-
MatIconModule,
|
|
32
|
-
MatProgressBarModule,
|
|
33
|
-
ElderPipesModule,
|
|
34
|
-
TranslateModule,
|
|
35
|
-
ElderFileSelectComponent,
|
|
36
|
-
ElderFileUploadComponent,
|
|
37
|
-
ElderFileSelectDirective,
|
|
38
|
-
ElderFileDropZoneDirective,
|
|
39
|
-
ElderBlobViewerComponent,
|
|
40
|
-
ElderDropZoneComponent], exports: [ElderFileSelectComponent,
|
|
41
|
-
ElderFileUploadComponent,
|
|
42
|
-
ElderFileSelectDirective,
|
|
43
|
-
ElderFileDropZoneDirective,
|
|
44
|
-
ElderBlobViewerComponent,
|
|
45
|
-
ElderDropZoneComponent] }); }
|
|
46
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileModule, imports: [CommonModule,
|
|
47
|
-
MatListModule,
|
|
48
|
-
MatButtonModule,
|
|
49
|
-
MatIconModule,
|
|
50
|
-
MatProgressBarModule,
|
|
51
|
-
ElderPipesModule,
|
|
52
|
-
TranslateModule,
|
|
53
|
-
ElderFileSelectComponent,
|
|
54
|
-
ElderFileUploadComponent,
|
|
55
|
-
ElderDropZoneComponent] }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileModule, decorators: [{
|
|
58
|
-
type: NgModule,
|
|
59
|
-
args: [{
|
|
60
|
-
imports: [
|
|
61
|
-
CommonModule,
|
|
62
|
-
MatListModule,
|
|
63
|
-
MatButtonModule,
|
|
64
|
-
MatIconModule,
|
|
65
|
-
MatProgressBarModule,
|
|
66
|
-
ElderPipesModule,
|
|
67
|
-
TranslateModule,
|
|
68
|
-
ElderFileSelectComponent,
|
|
69
|
-
ElderFileUploadComponent,
|
|
70
|
-
ElderFileSelectDirective,
|
|
71
|
-
ElderFileDropZoneDirective,
|
|
72
|
-
ElderBlobViewerComponent,
|
|
73
|
-
ElderDropZoneComponent,
|
|
74
|
-
],
|
|
75
|
-
exports: [
|
|
76
|
-
ElderFileSelectComponent,
|
|
77
|
-
ElderFileUploadComponent,
|
|
78
|
-
ElderFileSelectDirective,
|
|
79
|
-
ElderFileDropZoneDirective,
|
|
80
|
-
ElderBlobViewerComponent,
|
|
81
|
-
ElderDropZoneComponent,
|
|
82
|
-
],
|
|
83
|
-
}]
|
|
84
|
-
}] });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2VsZGVyLWZpbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQzlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ3hFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQzdFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ3BGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7QUFFckQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDeEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDN0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDcEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUE7QUFDaEcsY0FBYyx3Q0FBd0MsQ0FBQTtBQUN0RCxjQUFjLFlBQVksQ0FBQTtBQUMxQixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsMkJBQTJCLENBQUE7QUEyQnpDLE1BQU0sT0FBTyxlQUFlOytHQUFmLGVBQWU7Z0hBQWYsZUFBZSxZQXZCeEIsWUFBWTtZQUNaLGFBQWE7WUFDYixlQUFlO1lBQ2YsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsd0JBQXdCO1lBQ3hCLDBCQUEwQjtZQUMxQix3QkFBd0I7WUFDeEIsc0JBQXNCLGFBR3RCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsd0JBQXdCO1lBQ3hCLDBCQUEwQjtZQUMxQix3QkFBd0I7WUFDeEIsc0JBQXNCO2dIQUdiLGVBQWUsWUF2QnhCLFlBQVk7WUFDWixhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZix3QkFBd0I7WUFDeEIsd0JBQXdCO1lBSXhCLHNCQUFzQjs7NEZBV2IsZUFBZTtrQkF6QjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4QixzQkFBc0I7cUJBQ3ZCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgRWxkZXJGaWxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0J1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInXG5pbXBvcnQgeyBFbGRlclBpcGVzTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvZWxkZXItcGlwZXMubW9kdWxlJ1xuaW1wb3J0IHsgRWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQnXG5pbXBvcnQgeyBFbGRlckZpbGVTZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuL2VsZGVyLWZpbGUtc2VsZWN0LmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlIH0gZnJvbSAnLi9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBFbGRlckJsb2JWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jsb2Itdmlld2VyL2VsZGVyLWJsb2Itdmlld2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IEVsZGVyRHJvcFpvbmVDb21wb25lbnQgfSBmcm9tICcuL2RyYWctbi1kcm9wL2VsZGVyLWRyb3Atem9uZS9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50J1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuZXhwb3J0IHsgRWxkZXJGaWxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQnXG5leHBvcnQgeyBFbGRlckZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCdcbmV4cG9ydCB7IEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSB9IGZyb20gJy4vZWxkZXItZmlsZS1zZWxlY3QuZGlyZWN0aXZlJ1xuZXhwb3J0IHsgRWxkZXJGaWxlRHJvcFpvbmVEaXJlY3RpdmUgfSBmcm9tICcuL2VsZGVyLWZpbGUtZHJvcC16b25lLmRpcmVjdGl2ZSdcbmV4cG9ydCB7IEVsZGVyQmxvYlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYmxvYi12aWV3ZXIvZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50J1xuZXhwb3J0IHsgRWxkZXJEcm9wWm9uZUNvbXBvbmVudCB9IGZyb20gJy4vZHJhZy1uLWRyb3AvZWxkZXItZHJvcC16b25lL2VsZGVyLWRyb3Atem9uZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2RyYWctbi1kcm9wL2dsb2JhbC1kcmFnLWRyb3Auc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vYmxvYi11cmwnXG5leHBvcnQgKiBmcm9tICcuL2xpc3RpbmcvZmlsZS1lbnRyeSdcbmV4cG9ydCAqIGZyb20gJy4vbGlzdGluZy9maWxlLWxpc3RpbmctcngnXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBFbGRlclBpcGVzTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBFbGRlckZpbGVTZWxlY3RDb21wb25lbnQsXG4gICAgRWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgIEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSxcbiAgICBFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZSxcbiAgICBFbGRlckJsb2JWaWV3ZXJDb21wb25lbnQsXG4gICAgRWxkZXJEcm9wWm9uZUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCxcbiAgICBFbGRlckZpbGVVcGxvYWRDb21wb25lbnQsXG4gICAgRWxkZXJGaWxlU2VsZWN0RGlyZWN0aXZlLFxuICAgIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlLFxuICAgIEVsZGVyQmxvYlZpZXdlckNvbXBvbmVudCxcbiAgICBFbGRlckRyb3Bab25lQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckZpbGVNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
|
-
import { MatIcon } from '@angular/material/icon';
|
|
3
|
-
import { ElderFileSelectDirective } from '../elder-file-select.directive';
|
|
4
|
-
import { MatIconButton } from '@angular/material/button';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class ElderFileSelectComponent {
|
|
7
|
-
/***************************************************************************
|
|
8
|
-
* *
|
|
9
|
-
* Constructor *
|
|
10
|
-
* *
|
|
11
|
-
**************************************************************************/
|
|
12
|
-
constructor() {
|
|
13
|
-
/***************************************************************************
|
|
14
|
-
* *
|
|
15
|
-
* Fields *
|
|
16
|
-
* *
|
|
17
|
-
**************************************************************************/
|
|
18
|
-
this.multiple = false;
|
|
19
|
-
this.accept = undefined;
|
|
20
|
-
this.icon = 'add';
|
|
21
|
-
this.filesChange = new EventEmitter();
|
|
22
|
-
}
|
|
23
|
-
/***************************************************************************
|
|
24
|
-
* *
|
|
25
|
-
* Life Cycle *
|
|
26
|
-
* *
|
|
27
|
-
**************************************************************************/
|
|
28
|
-
ngOnInit() { }
|
|
29
|
-
/***************************************************************************
|
|
30
|
-
* *
|
|
31
|
-
* Public API *
|
|
32
|
-
* *
|
|
33
|
-
**************************************************************************/
|
|
34
|
-
fileInputChanged(files) {
|
|
35
|
-
this.filesChange.next(files);
|
|
36
|
-
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ElderFileSelectComponent, isStandalone: true, selector: "elder-file-select", inputs: { multiple: "multiple", accept: "accept", icon: "icon", color: "color" }, outputs: { filesChange: "filesChange" }, ngImport: i0, template: "<button\n mat-icon-button\n type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{ icon }}</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: ElderFileSelectDirective, selector: "[elderFileSelect]", inputs: ["elderFileSelect", "elderFileSelectMultiple", "elderFileSelectDirectory"], outputs: ["elderFileSelectChange", "elderSingleFileSelectChange"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
39
|
-
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileSelectComponent, decorators: [{
|
|
41
|
-
type: Component,
|
|
42
|
-
args: [{ selector: 'elder-file-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatIconButton, ElderFileSelectDirective, MatIcon], template: "<button\n mat-icon-button\n type=\"button\"\n [elderFileSelect]=\"accept\"\n [elderFileSelectMultiple]=\"multiple\"\n (elderFileSelectChange)=\"fileInputChanged($event)\"\n>\n <mat-icon [color]=\"color\">{{ icon }}</mat-icon>\n</button>\n" }]
|
|
43
|
-
}], ctorParameters: () => [], propDecorators: { multiple: [{
|
|
44
|
-
type: Input
|
|
45
|
-
}], accept: [{
|
|
46
|
-
type: Input
|
|
47
|
-
}], icon: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}], color: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}], filesChange: [{
|
|
52
|
-
type: Output
|
|
53
|
-
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtc2VsZWN0L2ZpbGUtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBR3RCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7O0FBVXhELE1BQU0sT0FBTyx3QkFBd0I7SUFzQm5DOzs7O2dGQUk0RTtJQUU1RTtRQTNCQTs7OztvRkFJNEU7UUFHckUsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUdoQixXQUFNLEdBQVcsU0FBUyxDQUFBO1FBRzFCLFNBQUksR0FBRyxLQUFLLENBQUE7UUFNSCxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFlLENBQUE7SUFROUMsQ0FBQztJQUVoQjs7OztnRkFJNEU7SUFFckUsUUFBUSxLQUFVLENBQUM7SUFFMUI7Ozs7Z0ZBSTRFO0lBRXJFLGdCQUFnQixDQUFDLEtBQWtCO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzlCLENBQUM7K0dBOUNVLHdCQUF3QjttR0FBeEIsd0JBQXdCLHdNQ3RCckMsc1BBU0EsMEREV1ksYUFBYSw2RkFBRSx3QkFBd0IscU5BQUUsT0FBTzs7NEZBRS9DLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxhQUFhLEVBQUUsd0JBQXdCLEVBQUUsT0FBTyxDQUFDO3dEQVVwRCxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSVUsV0FBVztzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRmlsZUVudHJ5IH0gZnJvbSAnLi4vbGlzdGluZy9maWxlLWVudHJ5J1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSdcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgRWxkZXJGaWxlU2VsZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZWxkZXItZmlsZS1zZWxlY3QuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZmlsZS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW01hdEljb25CdXR0b24sIEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSwgTWF0SWNvbl0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjY2VwdDogc3RyaW5nID0gdW5kZWZpbmVkXG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb24gPSAnYWRkJ1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBmaWxlc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KClcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZmlsZUlucHV0Q2hhbmdlZChmaWxlczogRmlsZUVudHJ5W10pOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVzQ2hhbmdlLm5leHQoZmlsZXMpXG4gIH1cbn1cbiIsIjxidXR0b25cbiAgbWF0LWljb24tYnV0dG9uXG4gIHR5cGU9XCJidXR0b25cIlxuICBbZWxkZXJGaWxlU2VsZWN0XT1cImFjY2VwdFwiXG4gIFtlbGRlckZpbGVTZWxlY3RNdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gIChlbGRlckZpbGVTZWxlY3RDaGFuZ2UpPVwiZmlsZUlucHV0Q2hhbmdlZCgkZXZlbnQpXCJcbj5cbiAgPG1hdC1pY29uIFtjb2xvcl09XCJjb2xvclwiPnt7IGljb24gfX08L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { from, of, throwError } from 'rxjs';
|
|
2
|
-
import { map } from 'rxjs/operators';
|
|
3
|
-
/***************************************************************************
|
|
4
|
-
* *
|
|
5
|
-
* FileSystem API *
|
|
6
|
-
* *
|
|
7
|
-
**************************************************************************/
|
|
8
|
-
/**
|
|
9
|
-
* Holds experimental features of the browser `File System API`. No typescript lint checks
|
|
10
|
-
* are performed here!
|
|
11
|
-
*/
|
|
12
|
-
export class FileSystemApi {
|
|
13
|
-
/***************************************************************************
|
|
14
|
-
* *
|
|
15
|
-
* DataTransferItem *
|
|
16
|
-
* *
|
|
17
|
-
**************************************************************************/
|
|
18
|
-
static isGetAsFileSystemHandleSupported(transferItem) {
|
|
19
|
-
// @ts-ignore
|
|
20
|
-
return transferItem.getAsFileSystemHandle !== undefined;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Returns an FileSystemHandle Observable of the given DataTransferItem. The FileSystemHandle can only be accessed in the `dragstart`
|
|
24
|
-
* or `drop` event. Otherwise, it will return null!
|
|
25
|
-
*/
|
|
26
|
-
static getAsFileSystemHandle(transferItem) {
|
|
27
|
-
// @ts-ignore
|
|
28
|
-
return from(transferItem.getAsFileSystemHandle());
|
|
29
|
-
}
|
|
30
|
-
/***************************************************************************
|
|
31
|
-
* *
|
|
32
|
-
* File Picker *
|
|
33
|
-
* *
|
|
34
|
-
**************************************************************************/
|
|
35
|
-
static isFileSystemSupported() {
|
|
36
|
-
return 'showOpenFilePicker' in window;
|
|
37
|
-
}
|
|
38
|
-
static openFilePicker(pickerOpts) {
|
|
39
|
-
try {
|
|
40
|
-
// @ts-ignore
|
|
41
|
-
return from(window.showOpenFilePicker(pickerOpts));
|
|
42
|
-
}
|
|
43
|
-
catch (e) {
|
|
44
|
-
if (e instanceof Error) {
|
|
45
|
-
return throwError(() => e);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
/***************************************************************************
|
|
50
|
-
* *
|
|
51
|
-
* Directory Picker *
|
|
52
|
-
* *
|
|
53
|
-
**************************************************************************/
|
|
54
|
-
static isDirectoryPickerSupported() {
|
|
55
|
-
return 'showDirectoryPicker' in window;
|
|
56
|
-
}
|
|
57
|
-
static openDirectoryPicker(pickerOpts) {
|
|
58
|
-
try {
|
|
59
|
-
// @ts-ignore
|
|
60
|
-
return from(window.showDirectoryPicker(pickerOpts));
|
|
61
|
-
}
|
|
62
|
-
catch (e) {
|
|
63
|
-
if (e instanceof Error) {
|
|
64
|
-
return throwError(() => e);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/***************************************************************************
|
|
69
|
-
* *
|
|
70
|
-
* FileSystemDirectoryHandle *
|
|
71
|
-
* *
|
|
72
|
-
**************************************************************************/
|
|
73
|
-
static getHandlesFromDirectory(dirHandle) {
|
|
74
|
-
return from(FileSystemApi.getHandlesFromDirectoryAsync(dirHandle));
|
|
75
|
-
}
|
|
76
|
-
static buildRelativeParent(fileOrDirHandle, rootDirectory) {
|
|
77
|
-
if (rootDirectory == null) {
|
|
78
|
-
return of(undefined);
|
|
79
|
-
}
|
|
80
|
-
const relativeParents$ = from(rootDirectory.resolve(fileOrDirHandle));
|
|
81
|
-
return relativeParents$.pipe(map((parents) => {
|
|
82
|
-
// path/to/folder/file.jpg
|
|
83
|
-
const path = parents;
|
|
84
|
-
// root/path/to/folder/file.jpg
|
|
85
|
-
path.unshift(rootDirectory.name);
|
|
86
|
-
// root/path/to/folder
|
|
87
|
-
path.pop();
|
|
88
|
-
return path.join('/');
|
|
89
|
-
}));
|
|
90
|
-
}
|
|
91
|
-
static async getHandlesFromDirectoryAsync(dirHandle) {
|
|
92
|
-
const handles = [];
|
|
93
|
-
// @ts-ignore
|
|
94
|
-
for await (const handle of dirHandle.values()) {
|
|
95
|
-
handles.push(handle);
|
|
96
|
-
}
|
|
97
|
-
return handles;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zeXN0ZW0tYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXN5c3RlbS1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQThEcEM7Ozs7NEVBSTRFO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBQ3hCOzs7O2dGQUk0RTtJQUVyRSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsWUFBOEI7UUFDM0UsYUFBYTtRQUNiLE9BQU8sWUFBWSxDQUFDLHFCQUFxQixLQUFLLFNBQVMsQ0FBQTtJQUN6RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUNqQyxZQUE4QjtRQUU5QixhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLE1BQU0sQ0FBQyxxQkFBcUI7UUFDakMsT0FBTyxvQkFBb0IsSUFBSSxNQUFNLENBQUE7SUFDdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQzFCLFVBQXVDO1FBRXZDLElBQUksQ0FBQztZQUNILGFBQWE7WUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQTtRQUNwRCxDQUFDO1FBQUMsT0FBTyxDQUFVLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDNUIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLE1BQU0sQ0FBQywwQkFBMEI7UUFDdEMsT0FBTyxxQkFBcUIsSUFBSSxNQUFNLENBQUE7SUFDeEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FDL0IsVUFBNEM7UUFFNUMsSUFBSSxDQUFDO1lBQ0gsYUFBYTtZQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO1FBQ3JELENBQUM7UUFBQyxPQUFPLENBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO2dCQUN2QixPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM1QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsTUFBTSxDQUFDLHVCQUF1QixDQUNuQyxTQUFvQztRQUVwQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsNEJBQTRCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUNwRSxDQUFDO0lBRU0sTUFBTSxDQUFDLG1CQUFtQixDQUMvQixlQUFpQyxFQUNqQyxhQUF5QztRQUV6QyxJQUFJLGFBQWEsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMxQixPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN0QixDQUFDO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO1FBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUMxQixHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNkLDBCQUEwQjtZQUMxQixNQUFNLElBQUksR0FBRyxPQUFPLENBQUE7WUFFcEIsK0JBQStCO1lBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBRWhDLHNCQUFzQjtZQUN0QixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7WUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDdkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtJQUNILENBQUM7SUFFTyxNQUFNLENBQUMsS0FBSyxDQUFDLDRCQUE0QixDQUMvQyxTQUFvQztRQUVwQyxNQUFNLE9BQU8sR0FBdUIsRUFBRSxDQUFBO1FBQ3RDLGFBQWE7UUFDYixJQUFJLEtBQUssRUFBRSxNQUFNLE1BQU0sSUFBSSxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUM5QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3RCLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQTtJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogRmlsZSBQaWNrZXIgT3B0aW9ucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpbGVTeXN0ZW1GaWxlUGlja2VyT3B0aW9ucyB7XG4gIC8qKlxuICAgKlxuICAgKiBgYGBcbiAgICogICB0eXBlczogW1xuICAgKiAgICAge1xuICAgKiAgICAgICBkZXNjcmlwdGlvbjogXCJJbWFnZXNcIixcbiAgICogICAgICAgYWNjZXB0OiB7XG4gICAqICAgICAgICAgXCJpbWFnZS8qXCI6IFtcIi5wbmdcIiwgXCIuZ2lmXCIsIFwiLmpwZWdcIiwgXCIuanBnXCJdLFxuICAgKiAgICAgICB9LFxuICAgKiAgICAgfSxcbiAgICogICBdLFxuICAgKiAgIGV4Y2x1ZGVBY2NlcHRBbGxPcHRpb246IHRydWUsXG4gICAqICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgKiBgYGBcbiAgICovXG4gIGV4Y2x1ZGVBY2NlcHRBbGxPcHRpb25zPzogYm9vbGVhblxuICBpZD86IHN0cmluZ1xuICBtdWx0aXBsZT86IGJvb2xlYW5cbiAgc3RhcnRJbj86XG4gICAgfCBGaWxlU3lzdGVtSGFuZGxlXG4gICAgfCAnZGVza3RvcCdcbiAgICB8ICdkb2N1bWVudHMnXG4gICAgfCAnZG93bmxvYWRzJ1xuICAgIHwgJ211c2ljJ1xuICAgIHwgJ3BpY3R1cmVzJ1xuICAgIHwgJ3ZpZGVvcydcbiAgdHlwZXM/OiBGaWxlU3lzdGVtRmlsZVBpY2tlclR5cGVPcHRpb25zW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWxlU3lzdGVtRmlsZVBpY2tlclR5cGVPcHRpb25zIHtcbiAgYWNjZXB0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT5cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogRGlyZWN0b3J5IFBpY2tlciBPcHRpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpbGVTeXN0ZW1EaXJlY3RvcnlQaWNrZXJPcHRpb25zIHtcbiAgaWQ/OiBzdHJpbmdcbiAgbW9kZT86IHN0cmluZ1xuICBzdGFydEluPzpcbiAgICB8IEZpbGVTeXN0ZW1IYW5kbGVcbiAgICB8ICdkZXNrdG9wJ1xuICAgIHwgJ2RvY3VtZW50cydcbiAgICB8ICdkb3dubG9hZHMnXG4gICAgfCAnbXVzaWMnXG4gICAgfCAncGljdHVyZXMnXG4gICAgfCAndmlkZW9zJ1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gKiBGaWxlU3lzdGVtIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKlxuICogSG9sZHMgZXhwZXJpbWVudGFsIGZlYXR1cmVzIG9mIHRoZSBicm93c2VyIGBGaWxlIFN5c3RlbSBBUElgLiBObyB0eXBlc2NyaXB0IGxpbnQgY2hlY2tzXG4gKiBhcmUgcGVyZm9ybWVkIGhlcmUhXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWxlU3lzdGVtQXBpIHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIERhdGFUcmFuc2Zlckl0ZW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHN0YXRpYyBpc0dldEFzRmlsZVN5c3RlbUhhbmRsZVN1cHBvcnRlZCh0cmFuc2Zlckl0ZW06IERhdGFUcmFuc2Zlckl0ZW0pOiBib29sZWFuIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIHRyYW5zZmVySXRlbS5nZXRBc0ZpbGVTeXN0ZW1IYW5kbGUgIT09IHVuZGVmaW5lZFxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gRmlsZVN5c3RlbUhhbmRsZSBPYnNlcnZhYmxlIG9mIHRoZSBnaXZlbiBEYXRhVHJhbnNmZXJJdGVtLiBUaGUgRmlsZVN5c3RlbUhhbmRsZSBjYW4gb25seSBiZSBhY2Nlc3NlZCBpbiB0aGUgYGRyYWdzdGFydGBcbiAgICogb3IgYGRyb3BgIGV2ZW50LiBPdGhlcndpc2UsIGl0IHdpbGwgcmV0dXJuIG51bGwhXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldEFzRmlsZVN5c3RlbUhhbmRsZShcbiAgICB0cmFuc2Zlckl0ZW06IERhdGFUcmFuc2Zlckl0ZW1cbiAgKTogT2JzZXJ2YWJsZTxGaWxlU3lzdGVtSGFuZGxlIHwgbnVsbD4ge1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByZXR1cm4gZnJvbSh0cmFuc2Zlckl0ZW0uZ2V0QXNGaWxlU3lzdGVtSGFuZGxlKCkpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmlsZSBQaWNrZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhdGljIGlzRmlsZVN5c3RlbVN1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gJ3Nob3dPcGVuRmlsZVBpY2tlcicgaW4gd2luZG93XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIG9wZW5GaWxlUGlja2VyKFxuICAgIHBpY2tlck9wdHM6IEZpbGVTeXN0ZW1GaWxlUGlja2VyT3B0aW9uc1xuICApOiBPYnNlcnZhYmxlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlW10+IHtcbiAgICB0cnkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmV0dXJuIGZyb20od2luZG93LnNob3dPcGVuRmlsZVBpY2tlcihwaWNrZXJPcHRzKSlcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGUpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIERpcmVjdG9yeSBQaWNrZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHN0YXRpYyBpc0RpcmVjdG9yeVBpY2tlclN1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gJ3Nob3dEaXJlY3RvcnlQaWNrZXInIGluIHdpbmRvd1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBvcGVuRGlyZWN0b3J5UGlja2VyKFxuICAgIHBpY2tlck9wdHM6IEZpbGVTeXN0ZW1EaXJlY3RvcnlQaWNrZXJPcHRpb25zXG4gICk6IE9ic2VydmFibGU8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4ge1xuICAgIHRyeSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICByZXR1cm4gZnJvbSh3aW5kb3cuc2hvd0RpcmVjdG9yeVBpY2tlcihwaWNrZXJPcHRzKSlcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGUpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHN0YXRpYyBnZXRIYW5kbGVzRnJvbURpcmVjdG9yeShcbiAgICBkaXJIYW5kbGU6IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVcbiAgKTogT2JzZXJ2YWJsZTxGaWxlU3lzdGVtSGFuZGxlW10+IHtcbiAgICByZXR1cm4gZnJvbShGaWxlU3lzdGVtQXBpLmdldEhhbmRsZXNGcm9tRGlyZWN0b3J5QXN5bmMoZGlySGFuZGxlKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYnVpbGRSZWxhdGl2ZVBhcmVudChcbiAgICBmaWxlT3JEaXJIYW5kbGU6IEZpbGVTeXN0ZW1IYW5kbGUsXG4gICAgcm9vdERpcmVjdG9yeT86IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICBpZiAocm9vdERpcmVjdG9yeSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKVxuICAgIH1cblxuICAgIGNvbnN0IHJlbGF0aXZlUGFyZW50cyQgPSBmcm9tKHJvb3REaXJlY3RvcnkucmVzb2x2ZShmaWxlT3JEaXJIYW5kbGUpKVxuICAgIHJldHVybiByZWxhdGl2ZVBhcmVudHMkLnBpcGUoXG4gICAgICBtYXAoKHBhcmVudHMpID0+IHtcbiAgICAgICAgLy8gcGF0aC90by9mb2xkZXIvZmlsZS5qcGdcbiAgICAgICAgY29uc3QgcGF0aCA9IHBhcmVudHNcblxuICAgICAgICAvLyByb290L3BhdGgvdG8vZm9sZGVyL2ZpbGUuanBnXG4gICAgICAgIHBhdGgudW5zaGlmdChyb290RGlyZWN0b3J5Lm5hbWUpXG5cbiAgICAgICAgLy8gcm9vdC9wYXRoL3RvL2ZvbGRlclxuICAgICAgICBwYXRoLnBvcCgpXG4gICAgICAgIHJldHVybiBwYXRoLmpvaW4oJy8nKVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBhc3luYyBnZXRIYW5kbGVzRnJvbURpcmVjdG9yeUFzeW5jKFxuICAgIGRpckhhbmRsZTogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZVxuICApOiBQcm9taXNlPEZpbGVTeXN0ZW1IYW5kbGVbXT4ge1xuICAgIGNvbnN0IGhhbmRsZXM6IEZpbGVTeXN0ZW1IYW5kbGVbXSA9IFtdXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGZvciBhd2FpdCAoY29uc3QgaGFuZGxlIG9mIGRpckhhbmRsZS52YWx1ZXMoKSkge1xuICAgICAgaGFuZGxlcy5wdXNoKGhhbmRsZSlcbiAgICB9XG4gICAgcmV0dXJuIGhhbmRsZXNcbiAgfVxufVxuIl19
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { forkJoin } from 'rxjs';
|
|
3
|
-
import { FileEntry } from '../listing/file-entry';
|
|
4
|
-
import { TimeAgoPipe } from '../../../pipes/time-ago.pipe';
|
|
5
|
-
import { BytesPipe } from '../../../pipes/bytes.pipe';
|
|
6
|
-
import { MatProgressBar } from '@angular/material/progress-bar';
|
|
7
|
-
import { MatList, MatListSubheaderCssMatStyler, MatListItem } from '@angular/material/list';
|
|
8
|
-
import { ElderFileSelectComponent } from '../file-select/file-select.component';
|
|
9
|
-
import { MatIcon } from '@angular/material/icon';
|
|
10
|
-
import { MatIconButton } from '@angular/material/button';
|
|
11
|
-
import { NgIf, NgFor, AsyncPipe } from '@angular/common';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
export class ElderFileUploadComponent {
|
|
14
|
-
/***************************************************************************
|
|
15
|
-
* *
|
|
16
|
-
* Constructor *
|
|
17
|
-
* *
|
|
18
|
-
**************************************************************************/
|
|
19
|
-
constructor() {
|
|
20
|
-
/***************************************************************************
|
|
21
|
-
* *
|
|
22
|
-
* Fields *
|
|
23
|
-
* *
|
|
24
|
-
**************************************************************************/
|
|
25
|
-
this.files = [];
|
|
26
|
-
this.multiple = false;
|
|
27
|
-
this.accept = undefined;
|
|
28
|
-
}
|
|
29
|
-
/***************************************************************************
|
|
30
|
-
* *
|
|
31
|
-
* Public API *
|
|
32
|
-
* *
|
|
33
|
-
**************************************************************************/
|
|
34
|
-
startUpload(event) {
|
|
35
|
-
this.totalProgress = this.uploadAllFiles(this.files);
|
|
36
|
-
}
|
|
37
|
-
transferOf(file) {
|
|
38
|
-
if (this.uploadProgress) {
|
|
39
|
-
return this.uploadProgress.get(file);
|
|
40
|
-
}
|
|
41
|
-
return undefined;
|
|
42
|
-
}
|
|
43
|
-
/***************************************************************************
|
|
44
|
-
* *
|
|
45
|
-
* Private methods *
|
|
46
|
-
* *
|
|
47
|
-
**************************************************************************/
|
|
48
|
-
uploadAllFiles(entries) {
|
|
49
|
-
this.uploadProgress = this.uploadClient.uploadFiles(FileEntry.toFileArray(entries));
|
|
50
|
-
return forkJoin(Array.from(this.uploadProgress.values()));
|
|
51
|
-
}
|
|
52
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
53
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ElderFileUploadComponent, isStandalone: true, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "<div class=\"layout-col\">\n <div class=\"layout-row gap-md\">\n <button\n mat-icon-button\n type=\"button\"\n color=\"primary\"\n *ngIf=\"uploadClient\"\n (click)=\"startUpload($event)\"\n [disabled]=\"files.length === 0\"\n >\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{ files.length }})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{ fileEntry.relativePath }}</h4>\n <p mat-line>\n {{ fileEntry.file.size | bytes }} - {{ fileEntry.file.lastModified | timeAgo }}\n </p>\n\n <mat-progress-bar\n *ngIf=\"transferOf(fileEntry.file)?.state$ | async as state\"\n [color]=\"state.hasFailed ? 'warn' : undefined\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\"\n >\n </mat-progress-bar>\n </mat-list-item>\n </mat-list>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "component", type: MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "directive", type: MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: BytesPipe, name: "bytes" }, { kind: "pipe", type: TimeAgoPipe, name: "timeAgo" }] }); }
|
|
54
|
-
}
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderFileUploadComponent, decorators: [{
|
|
56
|
-
type: Component,
|
|
57
|
-
args: [{ selector: 'elder-file-upload', standalone: true, imports: [
|
|
58
|
-
NgIf,
|
|
59
|
-
MatIconButton,
|
|
60
|
-
MatIcon,
|
|
61
|
-
ElderFileSelectComponent,
|
|
62
|
-
MatList,
|
|
63
|
-
MatListSubheaderCssMatStyler,
|
|
64
|
-
NgFor,
|
|
65
|
-
MatListItem,
|
|
66
|
-
MatProgressBar,
|
|
67
|
-
AsyncPipe,
|
|
68
|
-
BytesPipe,
|
|
69
|
-
TimeAgoPipe,
|
|
70
|
-
], template: "<div class=\"layout-col\">\n <div class=\"layout-row gap-md\">\n <button\n mat-icon-button\n type=\"button\"\n color=\"primary\"\n *ngIf=\"uploadClient\"\n (click)=\"startUpload($event)\"\n [disabled]=\"files.length === 0\"\n >\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{ files.length }})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{ fileEntry.relativePath }}</h4>\n <p mat-line>\n {{ fileEntry.file.size | bytes }} - {{ fileEntry.file.lastModified | timeAgo }}\n </p>\n\n <mat-progress-bar\n *ngIf=\"transferOf(fileEntry.file)?.state$ | async as state\"\n [color]=\"state.hasFailed ? 'warn' : undefined\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\"\n >\n </mat-progress-bar>\n </mat-list-item>\n </mat-list>\n</div>\n" }]
|
|
71
|
-
}], ctorParameters: () => [], propDecorators: { files: [{
|
|
72
|
-
type: Input
|
|
73
|
-
}], multiple: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], accept: [{
|
|
76
|
-
type: Input
|
|
77
|
-
}], uploadClient: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}] } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxRQUFRLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFHM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7QUFzQnhELE1BQU0sT0FBTyx3QkFBd0I7SUFxQm5DOzs7O2dGQUk0RTtJQUU1RTtRQTFCQTs7OztvRkFJNEU7UUFHckUsVUFBSyxHQUFnQixFQUFFLENBQUE7UUFLdkIsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUdoQixXQUFNLEdBQVcsU0FBUyxDQUFBO0lBV2xCLENBQUM7SUFFaEI7Ozs7Z0ZBSTRFO0lBRXJFLFdBQVcsQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDdEQsQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUFVO1FBQzFCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDdEMsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFBO0lBQ2xCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsY0FBYyxDQUFDLE9BQW9CO1FBQ3pDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQ25GLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDM0QsQ0FBQzsrR0F2RFUsd0JBQXdCO21HQUF4Qix3QkFBd0IsK0tDbENyQyw0b0NBdUNBLDBERG5CSSxJQUFJLDZGQUNKLGFBQWEsNkZBQ2IsT0FBTywySUFDUCx3QkFBd0IseUlBQ3hCLE9BQU8sNEVBQ1AsNEJBQTRCLDRFQUM1QixLQUFLLG1IQUNMLFdBQVcscUpBQ1gsY0FBYyxvS0FDZCxTQUFTLHlDQUNULFNBQVMseUNBQ1QsV0FBVzs7NEZBR0Ysd0JBQXdCO2tCQXBCcEMsU0FBUzsrQkFDRSxtQkFBbUIsY0FHakIsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osYUFBYTt3QkFDYixPQUFPO3dCQUNQLHdCQUF3Qjt3QkFDeEIsT0FBTzt3QkFDUCw0QkFBNEI7d0JBQzVCLEtBQUs7d0JBQ0wsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxXQUFXO3FCQUNaO3dEQVVNLEtBQUs7c0JBRFgsS0FBSztnQkFNQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IElGaWxlVXBsb2FkQ2xpZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2h0dHAvdXBsb2FkL2ZpbGUtdXBsb2FkLWNsaWVudCdcbmltcG9ydCB7IEh0dHBEYXRhVHJhbnNmZXIgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vaHR0cC90cmFuc2Zlci9odHRwLWRhdGEtdHJhbnNmZXInXG5pbXBvcnQgeyBGaWxlRW50cnkgfSBmcm9tICcuLi9saXN0aW5nL2ZpbGUtZW50cnknXG5pbXBvcnQgeyBUaW1lQWdvUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGVzL3RpbWUtYWdvLnBpcGUnXG5pbXBvcnQgeyBCeXRlc1BpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy9ieXRlcy5waXBlJ1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInXG5pbXBvcnQgeyBNYXRMaXN0LCBNYXRMaXN0U3ViaGVhZGVyQ3NzTWF0U3R5bGVyLCBNYXRMaXN0SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnXG5pbXBvcnQgeyBFbGRlckZpbGVTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdEljb25CdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nXG5pbXBvcnQgeyBOZ0lmLCBOZ0ZvciwgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIE1hdEljb25CdXR0b24sXG4gICAgTWF0SWNvbixcbiAgICBFbGRlckZpbGVTZWxlY3RDb21wb25lbnQsXG4gICAgTWF0TGlzdCxcbiAgICBNYXRMaXN0U3ViaGVhZGVyQ3NzTWF0U3R5bGVyLFxuICAgIE5nRm9yLFxuICAgIE1hdExpc3RJdGVtLFxuICAgIE1hdFByb2dyZXNzQmFyLFxuICAgIEFzeW5jUGlwZSxcbiAgICBCeXRlc1BpcGUsXG4gICAgVGltZUFnb1BpcGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVVwbG9hZENvbXBvbmVudCB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWxlczogRmlsZUVudHJ5W10gPSBbXVxuICBwdWJsaWMgdXBsb2FkUHJvZ3Jlc3M6IE1hcDxGaWxlLCBIdHRwRGF0YVRyYW5zZmVyPlxuICBwdWJsaWMgdG90YWxQcm9ncmVzczogT2JzZXJ2YWJsZTxhbnk+XG5cbiAgQElucHV0KClcbiAgcHVibGljIG11bHRpcGxlID0gZmFsc2VcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYWNjZXB0OiBzdHJpbmcgPSB1bmRlZmluZWRcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdXBsb2FkQ2xpZW50OiBJRmlsZVVwbG9hZENsaWVudFxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhcnRVcGxvYWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudG90YWxQcm9ncmVzcyA9IHRoaXMudXBsb2FkQWxsRmlsZXModGhpcy5maWxlcylcbiAgfVxuXG4gIHB1YmxpYyB0cmFuc2Zlck9mKGZpbGU6IEZpbGUpOiBIdHRwRGF0YVRyYW5zZmVyIHtcbiAgICBpZiAodGhpcy51cGxvYWRQcm9ncmVzcykge1xuICAgICAgcmV0dXJuIHRoaXMudXBsb2FkUHJvZ3Jlc3MuZ2V0KGZpbGUpXG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgdXBsb2FkQWxsRmlsZXMoZW50cmllczogRmlsZUVudHJ5W10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHRoaXMudXBsb2FkUHJvZ3Jlc3MgPSB0aGlzLnVwbG9hZENsaWVudC51cGxvYWRGaWxlcyhGaWxlRW50cnkudG9GaWxlQXJyYXkoZW50cmllcykpXG4gICAgcmV0dXJuIGZvcmtKb2luKEFycmF5LmZyb20odGhpcy51cGxvYWRQcm9ncmVzcy52YWx1ZXMoKSkpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sXCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IGdhcC1tZFwiPlxuICAgIDxidXR0b25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgKm5nSWY9XCJ1cGxvYWRDbGllbnRcIlxuICAgICAgKGNsaWNrKT1cInN0YXJ0VXBsb2FkKCRldmVudClcIlxuICAgICAgW2Rpc2FibGVkXT1cImZpbGVzLmxlbmd0aCA9PT0gMFwiXG4gICAgPlxuICAgICAgPG1hdC1pY29uPmNsb3VkX3VwbG9hZDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8ZWxkZXItZmlsZS1zZWxlY3RcbiAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgICBbYWNjZXB0XT1cImFjY2VwdFwiXG4gICAgICAoZmlsZXNDaGFuZ2UpPVwiZmlsZXMgPSAkZXZlbnRcIlxuICAgID48L2VsZGVyLWZpbGUtc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8bWF0LWxpc3Q+XG4gICAgPGgyIG1hdC1zdWJoZWFkZXI+U2VsZWN0ZWQgRmlsZXMgKHt7IGZpbGVzLmxlbmd0aCB9fSk8L2gyPlxuICAgIDxtYXQtbGlzdC1pdGVtICpuZ0Zvcj1cImxldCBmaWxlRW50cnkgb2YgZmlsZXNcIj5cbiAgICAgIDxtYXQtaWNvbiBtYXQtbGlzdC1pY29uPmF0dGFjaF9maWxlPC9tYXQtaWNvbj5cbiAgICAgIDxoNCBtYXQtbGluZT57eyBmaWxlRW50cnkucmVsYXRpdmVQYXRoIH19PC9oND5cbiAgICAgIDxwIG1hdC1saW5lPlxuICAgICAgICB7eyBmaWxlRW50cnkuZmlsZS5zaXplIHwgYnl0ZXMgfX0gLSB7eyBmaWxlRW50cnkuZmlsZS5sYXN0TW9kaWZpZWQgfCB0aW1lQWdvIH19XG4gICAgICA8L3A+XG5cbiAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyXG4gICAgICAgICpuZ0lmPVwidHJhbnNmZXJPZihmaWxlRW50cnkuZmlsZSk/LnN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCJcbiAgICAgICAgW2NvbG9yXT1cInN0YXRlLmhhc0ZhaWxlZCA/ICd3YXJuJyA6IHVuZGVmaW5lZFwiXG4gICAgICAgIG1vZGU9XCJkZXRlcm1pbmF0ZVwiXG4gICAgICAgIFt2YWx1ZV09XCJzdGF0ZS5wcm9ncmVzcy5wZXJjZW50RG9uZVwiXG4gICAgICA+XG4gICAgICA8L21hdC1wcm9ncmVzcy1iYXI+XG4gICAgPC9tYXQtbGlzdC1pdGVtPlxuICA8L21hdC1saXN0PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { from } from 'rxjs';
|
|
2
|
-
import { combineLatestWith, map } from 'rxjs/operators';
|
|
3
|
-
import { FileSystemApi } from '../file-system-api';
|
|
4
|
-
/**
|
|
5
|
-
* Represents a file and the relative path where the user has selected it.
|
|
6
|
-
* This is useful if the user has selected a folder and files
|
|
7
|
-
* are listed recursively.
|
|
8
|
-
*/
|
|
9
|
-
export class FileEntry {
|
|
10
|
-
/**
|
|
11
|
-
* Creates a file Entry without an explicit relative parent.
|
|
12
|
-
*
|
|
13
|
-
* However, depending on how the file was selected, some browsers
|
|
14
|
-
* encode the relative parent path in the property 'webkitRelativePath'
|
|
15
|
-
* which is also supported by this method.
|
|
16
|
-
*/
|
|
17
|
-
static ofFile(file) {
|
|
18
|
-
return FileEntry.relativeFile(file, this.buildRelativeParent(file));
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Creates an Observable of a File Entry by resolving its FileSystemFileHandle.
|
|
22
|
-
* @param fileHandle
|
|
23
|
-
* @param rootDirectory is needed to build a relative parent. Additionally useful for requesting permissions
|
|
24
|
-
*/
|
|
25
|
-
static ofFileHandle(fileHandle, rootDirectory) {
|
|
26
|
-
return from(fileHandle.getFile()).pipe(combineLatestWith(FileSystemApi.buildRelativeParent(fileHandle, rootDirectory)), map(([file, relativeParent]) => FileEntry.relativeFile(file, relativeParent, fileHandle, rootDirectory)));
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Creates a file Entry with a relative parent path
|
|
30
|
-
*/
|
|
31
|
-
static relativeFile(file, relativeParent, fileHandle, rootDirectoryHandle) {
|
|
32
|
-
if (relativeParent && relativeParent.endsWith('/')) {
|
|
33
|
-
relativeParent = relativeParent.substring(0, relativeParent.length - 1);
|
|
34
|
-
}
|
|
35
|
-
return new FileEntry(file, relativeParent, fileHandle, rootDirectoryHandle);
|
|
36
|
-
}
|
|
37
|
-
static toFileMap(entries) {
|
|
38
|
-
const map = new Map();
|
|
39
|
-
entries.forEach((e) => map.set(e.file, e));
|
|
40
|
-
return map;
|
|
41
|
-
}
|
|
42
|
-
static toFileArray(entries) {
|
|
43
|
-
return entries.map((e) => e.file);
|
|
44
|
-
}
|
|
45
|
-
/***************************************************************************
|
|
46
|
-
* *
|
|
47
|
-
* Constructor *
|
|
48
|
-
* *
|
|
49
|
-
**************************************************************************/
|
|
50
|
-
constructor(file,
|
|
51
|
-
/**
|
|
52
|
-
* Contains the relative path from the selected folder
|
|
53
|
-
* to this file. Only relevant if the user has selected a folder.
|
|
54
|
-
*/
|
|
55
|
-
relativeParent, fileHandle, rootDirectoryHandle) {
|
|
56
|
-
this.file = file;
|
|
57
|
-
this.relativeParent = relativeParent;
|
|
58
|
-
this.fileHandle = fileHandle;
|
|
59
|
-
this.rootDirectoryHandle = rootDirectoryHandle;
|
|
60
|
-
this.relativePath = FileEntry.buildRelativePath(relativeParent, file);
|
|
61
|
-
}
|
|
62
|
-
/***************************************************************************
|
|
63
|
-
* *
|
|
64
|
-
* Private methods *
|
|
65
|
-
* *
|
|
66
|
-
**************************************************************************/
|
|
67
|
-
/**
|
|
68
|
-
* Returns a string which specifies the file's path relative to the directory selected by the user.
|
|
69
|
-
*/
|
|
70
|
-
static buildRelativePath(relativeParent, file) {
|
|
71
|
-
if (relativeParent != null) {
|
|
72
|
-
return relativeParent + '/' + file.name;
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
return file.name;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
static buildRelativeParent(file) {
|
|
79
|
-
let relativeParent = null;
|
|
80
|
-
if (file.webkitRelativePath) {
|
|
81
|
-
if (file.webkitRelativePath.endsWith(file.name)) {
|
|
82
|
-
const nameStart = file.webkitRelativePath.length - file.name.length;
|
|
83
|
-
relativeParent = file.webkitRelativePath.substring(0, nameStart);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
relativeParent = file.webkitRelativePath;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return relativeParent;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1lbnRyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZmlsZXMvbGlzdGluZy9maWxlLWVudHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDdkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVsRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFNBQVM7SUFDcEI7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFVO1FBQzdCLE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUN4QixVQUFnQyxFQUNoQyxhQUF5QztRQUV6QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3BDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUMsRUFDL0UsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLEVBQUUsRUFBRSxDQUM3QixTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUN4RSxDQUNGLENBQUE7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUN4QixJQUFVLEVBQ1YsY0FBNkIsRUFDN0IsVUFBaUMsRUFDakMsbUJBQStDO1FBRS9DLElBQUksY0FBYyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNuRCxjQUFjLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQTtRQUN6RSxDQUFDO1FBQ0QsT0FBTyxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFBO0lBQzdFLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQW9CO1FBQzFDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFBO1FBQ3RDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzFDLE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBb0I7UUFDNUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQWFEOzs7O2dGQUk0RTtJQUU1RSxZQUNrQixJQUFVO0lBQzFCOzs7T0FHRztJQUNhLGNBQTZCLEVBQzdCLFVBQWlDLEVBQ2pDLG1CQUErQztRQVAvQyxTQUFJLEdBQUosSUFBSSxDQUFNO1FBS1YsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsZUFBVSxHQUFWLFVBQVUsQ0FBdUI7UUFDakMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE0QjtRQUUvRCxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDdkUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RTs7T0FFRztJQUNLLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxjQUFzQixFQUFFLElBQVU7UUFDakUsSUFBSSxjQUFjLElBQUksSUFBSSxFQUFFLENBQUM7WUFDM0IsT0FBTyxjQUFjLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDekMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDbEIsQ0FBQztJQUNILENBQUM7SUFFTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBVTtRQUMzQyxJQUFJLGNBQWMsR0FBVyxJQUFJLENBQUE7UUFFakMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM1QixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUE7Z0JBQ25FLGNBQWMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTtZQUNsRSxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sY0FBYyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQTtZQUMxQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sY0FBYyxDQUFBO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdFdpdGgsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRmlsZVN5c3RlbUFwaSB9IGZyb20gJy4uL2ZpbGUtc3lzdGVtLWFwaSdcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgZmlsZSBhbmQgdGhlIHJlbGF0aXZlIHBhdGggd2hlcmUgdGhlIHVzZXIgaGFzIHNlbGVjdGVkIGl0LlxuICogVGhpcyBpcyB1c2VmdWwgaWYgdGhlIHVzZXIgaGFzIHNlbGVjdGVkIGEgZm9sZGVyIGFuZCBmaWxlc1xuICogYXJlIGxpc3RlZCByZWN1cnNpdmVseS5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVFbnRyeSB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgZmlsZSBFbnRyeSB3aXRob3V0IGFuIGV4cGxpY2l0IHJlbGF0aXZlIHBhcmVudC5cbiAgICpcbiAgICogSG93ZXZlciwgZGVwZW5kaW5nIG9uIGhvdyB0aGUgZmlsZSB3YXMgc2VsZWN0ZWQsIHNvbWUgYnJvd3NlcnNcbiAgICogZW5jb2RlIHRoZSByZWxhdGl2ZSBwYXJlbnQgcGF0aCBpbiB0aGUgcHJvcGVydHkgJ3dlYmtpdFJlbGF0aXZlUGF0aCdcbiAgICogd2hpY2ggaXMgYWxzbyBzdXBwb3J0ZWQgYnkgdGhpcyBtZXRob2QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIG9mRmlsZShmaWxlOiBGaWxlKTogRmlsZUVudHJ5IHtcbiAgICByZXR1cm4gRmlsZUVudHJ5LnJlbGF0aXZlRmlsZShmaWxlLCB0aGlzLmJ1aWxkUmVsYXRpdmVQYXJlbnQoZmlsZSkpXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBPYnNlcnZhYmxlIG9mIGEgRmlsZSBFbnRyeSBieSByZXNvbHZpbmcgaXRzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLlxuICAgKiBAcGFyYW0gZmlsZUhhbmRsZVxuICAgKiBAcGFyYW0gcm9vdERpcmVjdG9yeSBpcyBuZWVkZWQgdG8gYnVpbGQgYSByZWxhdGl2ZSBwYXJlbnQuIEFkZGl0aW9uYWxseSB1c2VmdWwgZm9yIHJlcXVlc3RpbmcgcGVybWlzc2lvbnNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb2ZGaWxlSGFuZGxlKFxuICAgIGZpbGVIYW5kbGU6IEZpbGVTeXN0ZW1GaWxlSGFuZGxlLFxuICAgIHJvb3REaXJlY3Rvcnk/OiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlXG4gICk6IE9ic2VydmFibGU8RmlsZUVudHJ5PiB7XG4gICAgcmV0dXJuIGZyb20oZmlsZUhhbmRsZS5nZXRGaWxlKCkpLnBpcGUoXG4gICAgICBjb21iaW5lTGF0ZXN0V2l0aChGaWxlU3lzdGVtQXBpLmJ1aWxkUmVsYXRpdmVQYXJlbnQoZmlsZUhhbmRsZSwgcm9vdERpcmVjdG9yeSkpLFxuICAgICAgbWFwKChbZmlsZSwgcmVsYXRpdmVQYXJlbnRdKSA9PlxuICAgICAgICBGaWxlRW50cnkucmVsYXRpdmVGaWxlKGZpbGUsIHJlbGF0aXZlUGFyZW50LCBmaWxlSGFuZGxlLCByb290RGlyZWN0b3J5KVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgZmlsZSBFbnRyeSB3aXRoIGEgcmVsYXRpdmUgcGFyZW50IHBhdGhcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVsYXRpdmVGaWxlKFxuICAgIGZpbGU6IEZpbGUsXG4gICAgcmVsYXRpdmVQYXJlbnQ6IHN0cmluZyB8IG51bGwsXG4gICAgZmlsZUhhbmRsZT86IEZpbGVTeXN0ZW1GaWxlSGFuZGxlLFxuICAgIHJvb3REaXJlY3RvcnlIYW5kbGU/OiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlXG4gICk6IEZpbGVFbnRyeSB7XG4gICAgaWYgKHJlbGF0aXZlUGFyZW50ICYmIHJlbGF0aXZlUGFyZW50LmVuZHNXaXRoKCcvJykpIHtcbiAgICAgIHJlbGF0aXZlUGFyZW50ID0gcmVsYXRpdmVQYXJlbnQuc3Vic3RyaW5nKDAsIHJlbGF0aXZlUGFyZW50Lmxlbmd0aCAtIDEpXG4gICAgfVxuICAgIHJldHVybiBuZXcgRmlsZUVudHJ5KGZpbGUsIHJlbGF0aXZlUGFyZW50LCBmaWxlSGFuZGxlLCByb290RGlyZWN0b3J5SGFuZGxlKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b0ZpbGVNYXAoZW50cmllczogRmlsZUVudHJ5W10pOiBNYXA8RmlsZSwgRmlsZUVudHJ5PiB7XG4gICAgY29uc3QgbWFwID0gbmV3IE1hcDxGaWxlLCBGaWxlRW50cnk+KClcbiAgICBlbnRyaWVzLmZvckVhY2goKGUpID0+IG1hcC5zZXQoZS5maWxlLCBlKSlcbiAgICByZXR1cm4gbWFwXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvRmlsZUFycmF5KGVudHJpZXM6IEZpbGVFbnRyeVtdKTogRmlsZVtdIHtcbiAgICByZXR1cm4gZW50cmllcy5tYXAoKGUpID0+IGUuZmlsZSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3RyaW5nIHdoaWNoIHNwZWNpZmllcyB0aGUgZmlsZSdzIHBhdGggcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSBzZWxlY3RlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByZWxhdGl2ZVBhdGg6IHN0cmluZ1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGZpbGU6IEZpbGUsXG4gICAgLyoqXG4gICAgICogQ29udGFpbnMgdGhlIHJlbGF0aXZlIHBhdGggZnJvbSB0aGUgc2VsZWN0ZWQgZm9sZGVyXG4gICAgICogdG8gdGhpcyBmaWxlLiBPbmx5IHJlbGV2YW50IGlmIHRoZSB1c2VyIGhhcyBzZWxlY3RlZCBhIGZvbGRlci5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVsYXRpdmVQYXJlbnQ6IHN0cmluZyB8IG51bGwsXG4gICAgcHVibGljIHJlYWRvbmx5IGZpbGVIYW5kbGU/OiBGaWxlU3lzdGVtRmlsZUhhbmRsZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgcm9vdERpcmVjdG9yeUhhbmRsZT86IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVcbiAgKSB7XG4gICAgdGhpcy5yZWxhdGl2ZVBhdGggPSBGaWxlRW50cnkuYnVpbGRSZWxhdGl2ZVBhdGgocmVsYXRpdmVQYXJlbnQsIGZpbGUpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogUmV0dXJucyBhIHN0cmluZyB3aGljaCBzcGVjaWZpZXMgdGhlIGZpbGUncyBwYXRoIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgc2VsZWN0ZWQgYnkgdGhlIHVzZXIuXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBidWlsZFJlbGF0aXZlUGF0aChyZWxhdGl2ZVBhcmVudDogc3RyaW5nLCBmaWxlOiBGaWxlKTogc3RyaW5nIHtcbiAgICBpZiAocmVsYXRpdmVQYXJlbnQgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHJlbGF0aXZlUGFyZW50ICsgJy8nICsgZmlsZS5uYW1lXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmaWxlLm5hbWVcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBidWlsZFJlbGF0aXZlUGFyZW50KGZpbGU6IEZpbGUpOiBzdHJpbmcge1xuICAgIGxldCByZWxhdGl2ZVBhcmVudDogc3RyaW5nID0gbnVsbFxuXG4gICAgaWYgKGZpbGUud2Via2l0UmVsYXRpdmVQYXRoKSB7XG4gICAgICBpZiAoZmlsZS53ZWJraXRSZWxhdGl2ZVBhdGguZW5kc1dpdGgoZmlsZS5uYW1lKSkge1xuICAgICAgICBjb25zdCBuYW1lU3RhcnQgPSBmaWxlLndlYmtpdFJlbGF0aXZlUGF0aC5sZW5ndGggLSBmaWxlLm5hbWUubGVuZ3RoXG4gICAgICAgIHJlbGF0aXZlUGFyZW50ID0gZmlsZS53ZWJraXRSZWxhdGl2ZVBhdGguc3Vic3RyaW5nKDAsIG5hbWVTdGFydClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlbGF0aXZlUGFyZW50ID0gZmlsZS53ZWJraXRSZWxhdGl2ZVBhdGhcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlbGF0aXZlUGFyZW50XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { of, switchMap, zip } from 'rxjs';
|
|
2
|
-
import { FileEntry } from './file-entry';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
5
|
-
import { FileListingWebkit } from './file-listing-webkit';
|
|
6
|
-
import { FileListingSystemHandle } from './file-listing-system-handle';
|
|
7
|
-
import { FileSystemApi } from '../file-system-api';
|
|
8
|
-
export class FileListingRx {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
11
|
-
}
|
|
12
|
-
static { this.INSTANCE = new FileListingRx(); }
|
|
13
|
-
/***************************************************************************
|
|
14
|
-
* *
|
|
15
|
-
* Public API *
|
|
16
|
-
* *
|
|
17
|
-
**************************************************************************/
|
|
18
|
-
toFileList(transferItemList) {
|
|
19
|
-
const obs = [];
|
|
20
|
-
for (let i = 0; i < transferItemList.length; i++) {
|
|
21
|
-
const transferItem = transferItemList[i];
|
|
22
|
-
obs.push(this.resolveTransferItem(transferItem));
|
|
23
|
-
}
|
|
24
|
-
return zip(obs).pipe(map((files) => files.flat()));
|
|
25
|
-
}
|
|
26
|
-
/***************************************************************************
|
|
27
|
-
* *
|
|
28
|
-
* Private methods *
|
|
29
|
-
* *
|
|
30
|
-
**************************************************************************/
|
|
31
|
-
resolveTransferItem(transferItem) {
|
|
32
|
-
if (FileSystemApi.isGetAsFileSystemHandleSupported(transferItem)) {
|
|
33
|
-
return FileSystemApi.getAsFileSystemHandle(transferItem).pipe(switchMap((handle) => handle ? FileListingSystemHandle.listFiles(handle) : this.legacyFileListing(transferItem)));
|
|
34
|
-
}
|
|
35
|
-
return this.legacyFileListing(transferItem);
|
|
36
|
-
}
|
|
37
|
-
legacyFileListing(transferItem) {
|
|
38
|
-
const entry = transferItem.webkitGetAsEntry();
|
|
39
|
-
if (entry) {
|
|
40
|
-
return FileListingWebkit.listFilesRecursive(entry);
|
|
41
|
-
}
|
|
42
|
-
return this.fallbackFileListing(transferItem);
|
|
43
|
-
}
|
|
44
|
-
fallbackFileListing(transferItem) {
|
|
45
|
-
const itemAsFile = transferItem.getAsFile();
|
|
46
|
-
if (itemAsFile) {
|
|
47
|
-
return of([FileEntry.ofFile(itemAsFile)]);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
if (transferItem.kind == 'file') {
|
|
51
|
-
return of([
|
|
52
|
-
FileEntry.ofFile(new File([], '', {
|
|
53
|
-
type: transferItem.type,
|
|
54
|
-
})),
|
|
55
|
-
]);
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
this.log.warn('Could not handle DataTransferItem!', transferItem);
|
|
59
|
-
return of([]);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVsRCxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUdtQixRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBNkR2RSxDQUFDO2FBL0R3QixhQUFRLEdBQUcsSUFBSSxhQUFhLEVBQUUsQUFBdEIsQ0FBc0I7SUFJckQ7Ozs7Z0ZBSTRFO0lBRXJFLFVBQVUsQ0FBQyxnQkFBc0M7UUFDdEQsTUFBTSxHQUFHLEdBQThCLEVBQUUsQ0FBQTtRQUN6QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDakQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDeEMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQTtRQUNsRCxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUNwRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLG1CQUFtQixDQUFDLFlBQThCO1FBQ3hELElBQUksYUFBYSxDQUFDLGdDQUFnQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7WUFDakUsT0FBTyxhQUFhLENBQUMscUJBQXFCLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUMzRCxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNuQixNQUFNLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUMxRixDQUNGLENBQUE7UUFDSCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFlBQThCO1FBQ3RELE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFBO1FBQzdDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixPQUFPLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUMvQyxDQUFDO0lBRU8sbUJBQW1CLENBQUMsWUFBOEI7UUFDeEQsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFBO1FBQzNDLElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzNDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxZQUFZLENBQUMsSUFBSSxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNoQyxPQUFPLEVBQUUsQ0FBQztvQkFDUixTQUFTLENBQUMsTUFBTSxDQUNkLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7d0JBQ2YsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJO3FCQUN4QixDQUFDLENBQ0g7aUJBQ0YsQ0FBQyxDQUFBO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9DQUFvQyxFQUFFLFlBQVksQ0FBQyxDQUFBO2dCQUNqRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQTtZQUNmLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHppcCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBGaWxlRW50cnkgfSBmcm9tICcuL2ZpbGUtZW50cnknXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcidcbmltcG9ydCB7IEZpbGVMaXN0aW5nV2Via2l0IH0gZnJvbSAnLi9maWxlLWxpc3Rpbmctd2Via2l0J1xuaW1wb3J0IHsgRmlsZUxpc3RpbmdTeXN0ZW1IYW5kbGUgfSBmcm9tICcuL2ZpbGUtbGlzdGluZy1zeXN0ZW0taGFuZGxlJ1xuaW1wb3J0IHsgRmlsZVN5c3RlbUFwaSB9IGZyb20gJy4uL2ZpbGUtc3lzdGVtLWFwaSdcblxuZXhwb3J0IGNsYXNzIEZpbGVMaXN0aW5nUngge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElOU1RBTkNFID0gbmV3IEZpbGVMaXN0aW5nUngoKVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyB0b0ZpbGVMaXN0KHRyYW5zZmVySXRlbUxpc3Q6IERhdGFUcmFuc2Zlckl0ZW1MaXN0KTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGNvbnN0IG9iczogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT5bXSA9IFtdXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0cmFuc2Zlckl0ZW1MaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB0cmFuc2Zlckl0ZW0gPSB0cmFuc2Zlckl0ZW1MaXN0W2ldXG4gICAgICBvYnMucHVzaCh0aGlzLnJlc29sdmVUcmFuc2Zlckl0ZW0odHJhbnNmZXJJdGVtKSlcbiAgICB9XG4gICAgcmV0dXJuIHppcChvYnMpLnBpcGUobWFwKChmaWxlcykgPT4gZmlsZXMuZmxhdCgpKSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVzb2x2ZVRyYW5zZmVySXRlbSh0cmFuc2Zlckl0ZW06IERhdGFUcmFuc2Zlckl0ZW0pOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgaWYgKEZpbGVTeXN0ZW1BcGkuaXNHZXRBc0ZpbGVTeXN0ZW1IYW5kbGVTdXBwb3J0ZWQodHJhbnNmZXJJdGVtKSkge1xuICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1BcGkuZ2V0QXNGaWxlU3lzdGVtSGFuZGxlKHRyYW5zZmVySXRlbSkucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChoYW5kbGUpID0+XG4gICAgICAgICAgaGFuZGxlID8gRmlsZUxpc3RpbmdTeXN0ZW1IYW5kbGUubGlzdEZpbGVzKGhhbmRsZSkgOiB0aGlzLmxlZ2FjeUZpbGVMaXN0aW5nKHRyYW5zZmVySXRlbSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5sZWdhY3lGaWxlTGlzdGluZyh0cmFuc2Zlckl0ZW0pXG4gIH1cblxuICBwcml2YXRlIGxlZ2FjeUZpbGVMaXN0aW5nKHRyYW5zZmVySXRlbTogRGF0YVRyYW5zZmVySXRlbSk6IE9ic2VydmFibGU8RmlsZUVudHJ5W10+IHtcbiAgICBjb25zdCBlbnRyeSA9IHRyYW5zZmVySXRlbS53ZWJraXRHZXRBc0VudHJ5KClcbiAgICBpZiAoZW50cnkpIHtcbiAgICAgIHJldHVybiBGaWxlTGlzdGluZ1dlYmtpdC5saXN0RmlsZXNSZWN1cnNpdmUoZW50cnkpXG4gICAgfVxuICAgIHJldHVybiB0aGlzLmZhbGxiYWNrRmlsZUxpc3RpbmcodHJhbnNmZXJJdGVtKVxuICB9XG5cbiAgcHJpdmF0ZSBmYWxsYmFja0ZpbGVMaXN0aW5nKHRyYW5zZmVySXRlbTogRGF0YVRyYW5zZmVySXRlbSk6IE9ic2VydmFibGU8RmlsZUVudHJ5W10+IHtcbiAgICBjb25zdCBpdGVtQXNGaWxlID0gdHJhbnNmZXJJdGVtLmdldEFzRmlsZSgpXG4gICAgaWYgKGl0ZW1Bc0ZpbGUpIHtcbiAgICAgIHJldHVybiBvZihbRmlsZUVudHJ5Lm9mRmlsZShpdGVtQXNGaWxlKV0pXG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0cmFuc2Zlckl0ZW0ua2luZCA9PSAnZmlsZScpIHtcbiAgICAgICAgcmV0dXJuIG9mKFtcbiAgICAgICAgICBGaWxlRW50cnkub2ZGaWxlKFxuICAgICAgICAgICAgbmV3IEZpbGUoW10sICcnLCB7XG4gICAgICAgICAgICAgIHR5cGU6IHRyYW5zZmVySXRlbS50eXBlLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApLFxuICAgICAgICBdKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2cud2FybignQ291bGQgbm90IGhhbmRsZSBEYXRhVHJhbnNmZXJJdGVtIScsIHRyYW5zZmVySXRlbSlcbiAgICAgICAgcmV0dXJuIG9mKFtdKVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|