@elderbyte/ngx-starter 14.12.0-beta6 → 14.12.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/esm2020/elderbyte-ngx-starter.mjs +5 -0
- package/esm2020/lib/common/async/public_api.mjs +2 -0
- package/esm2020/lib/common/async/refreshing-entity.mjs +86 -0
- package/esm2020/lib/common/csv/csv-serializer.mjs +55 -0
- package/esm2020/lib/common/csv/csv-spec.mjs +99 -0
- package/esm2020/lib/common/csv/public_api.mjs +3 -0
- package/esm2020/lib/common/data/continuable-listing.mjs +10 -0
- package/esm2020/lib/common/data/data-context/data-context-active-page.mjs +130 -0
- package/esm2020/lib/common/data/data-context/data-context-auto-starter.mjs +74 -0
- package/esm2020/lib/common/data/data-context/data-context-base.mjs +283 -0
- package/esm2020/lib/common/data/data-context/data-context-builder.mjs +246 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-base.mjs +69 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-paged.mjs +143 -0
- package/esm2020/lib/common/data/data-context/data-context-continuable-token.mjs +136 -0
- package/esm2020/lib/common/data/data-context/data-context-life-cycle-binding.mjs +30 -0
- package/esm2020/lib/common/data/data-context/data-context-simple.mjs +59 -0
- package/esm2020/lib/common/data/data-context/data-context-source-auto-reloader.mjs +12 -0
- package/esm2020/lib/common/data/data-context/data-context-status.mjs +46 -0
- package/esm2020/lib/common/data/data-context/data-context.mjs +30 -0
- package/esm2020/lib/common/data/data-context/mat-table-data-context-binding.mjs +139 -0
- package/esm2020/lib/common/data/data-context/public_api.mjs +14 -0
- package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +55 -0
- package/esm2020/lib/common/data/datasource/data-source-processor.mjs +199 -0
- package/esm2020/lib/common/data/datasource/data-source.mjs +23 -0
- package/esm2020/lib/common/data/datasource/entity-id-util.mjs +11 -0
- package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +127 -0
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +102 -0
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +73 -0
- package/esm2020/lib/common/data/datasource/public_api.mjs +8 -0
- package/esm2020/lib/common/data/datasource/rest/public_api.mjs +2 -0
- package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +294 -0
- package/esm2020/lib/common/data/entity-set-patch.mjs +164 -0
- package/esm2020/lib/common/data/field-comparator.mjs +99 -0
- package/esm2020/lib/common/data/filters/filter-context.mjs +141 -0
- package/esm2020/lib/common/data/filters/filter.mjs +109 -0
- package/esm2020/lib/common/data/http-params-builder.mjs +110 -0
- package/esm2020/lib/common/data/page.mjs +58 -0
- package/esm2020/lib/common/data/public_api.mjs +12 -0
- package/esm2020/lib/common/data/required-filter-evaluator.mjs +70 -0
- package/esm2020/lib/common/data/sort-context.mjs +75 -0
- package/esm2020/lib/common/data/sort.mjs +11 -0
- package/esm2020/lib/common/data/token-chunk-request.mjs +8 -0
- package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +81 -0
- package/esm2020/lib/common/enums/public_api.mjs +2 -0
- package/esm2020/lib/common/errors/exception-detail.mjs +2 -0
- package/esm2020/lib/common/errors/public_api.mjs +3 -0
- package/esm2020/lib/common/errors/standard-error-detail.mjs +2 -0
- package/esm2020/lib/common/format/bytes-format.mjs +22 -0
- package/esm2020/lib/common/format/bytes-per-second-format.mjs +41 -0
- package/esm2020/lib/common/format/public_api.mjs +3 -0
- package/esm2020/lib/common/forms/elder-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +178 -0
- package/esm2020/lib/common/forms/elder-from-field-base.mjs +94 -0
- package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +39 -0
- package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +47 -0
- package/esm2020/lib/common/forms/elder-multi-entity-value-accessor.mjs +22 -0
- package/esm2020/lib/common/forms/form-field-base.component.mjs +106 -0
- package/esm2020/lib/common/forms/multi-model-base.component.mjs +32 -0
- package/esm2020/lib/common/forms/public_api.mjs +12 -0
- package/esm2020/lib/common/forms/template-composite-control.mjs +133 -0
- package/esm2020/lib/common/forms/value-accessor-base.mjs +146 -0
- package/esm2020/lib/common/forms/view-providers.mjs +30 -0
- package/esm2020/lib/common/http/http-client-builder.service.mjs +14 -0
- package/esm2020/lib/common/http/http-client-pristine.mjs +21 -0
- package/esm2020/lib/common/http/public_api.mjs +5 -0
- package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +95 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +49 -0
- package/esm2020/lib/common/http/transfer/data-transfer-progress.mjs +17 -0
- package/esm2020/lib/common/http/transfer/data-transfer-state.mjs +82 -0
- package/esm2020/lib/common/http/transfer/data-transfer-status.mjs +24 -0
- package/esm2020/lib/common/http/transfer/http-data-transfer.mjs +180 -0
- package/esm2020/lib/common/http/transfer/public_api.mjs +7 -0
- package/esm2020/lib/common/http/upload/file-upload-client.mjs +42 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-base.mjs +6 -0
- package/esm2020/lib/common/i18n/entity/impl/i18n-text.mjs +16 -0
- package/esm2020/lib/common/i18n/entity/language-tag.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/locale.mjs +12 -0
- package/esm2020/lib/common/i18n/entity/localisation-picker.mjs +30 -0
- package/esm2020/lib/common/i18n/entity/localized.mjs +2 -0
- package/esm2020/lib/common/i18n/entity/public_api.mjs +6 -0
- package/esm2020/lib/common/i18n/public_api.mjs +2 -0
- package/esm2020/lib/common/json-map.mjs +18 -0
- package/esm2020/lib/common/objects.mjs +41 -0
- package/esm2020/lib/common/public_api.mjs +19 -0
- package/esm2020/lib/common/reactive-map.mjs +69 -0
- package/esm2020/lib/common/selection/public_api.mjs +2 -0
- package/esm2020/lib/common/selection/selection-model.mjs +212 -0
- package/esm2020/lib/common/sets.mjs +44 -0
- package/esm2020/lib/common/suggestion-provider.mjs +12 -0
- package/esm2020/lib/common/templates/template-slot-manager.mjs +135 -0
- package/esm2020/lib/common/time/date-util.mjs +93 -0
- package/esm2020/lib/common/time/interval.mjs +419 -0
- package/esm2020/lib/common/time/period-duration.mjs +130 -0
- package/esm2020/lib/common/time/public_api.mjs +5 -0
- package/esm2020/lib/common/time/time-util.mjs +41 -0
- package/esm2020/lib/common/url/elder-router.service.mjs +54 -0
- package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +119 -0
- package/esm2020/lib/common/url/public_api.mjs +4 -0
- package/esm2020/lib/common/url/url-query-params.mjs +133 -0
- package/esm2020/lib/common/utils/batcher.mjs +35 -0
- package/esm2020/lib/common/utils/collection-util.mjs +109 -0
- package/esm2020/lib/common/utils/filter-util.mjs +52 -0
- package/esm2020/lib/common/utils/next-number-util.mjs +88 -0
- package/esm2020/lib/common/utils/ng-zone-utils.mjs +16 -0
- package/esm2020/lib/common/utils/parse-util.mjs +16 -0
- package/esm2020/lib/common/utils/property-path-util.mjs +28 -0
- package/esm2020/lib/common/utils/public_api.mjs +12 -0
- package/esm2020/lib/common/utils/query-list-binding.mjs +67 -0
- package/esm2020/lib/common/utils/sort-util.mjs +30 -0
- package/esm2020/lib/common/utils/url-builder.mjs +275 -0
- package/esm2020/lib/common/utils/uuid-util.mjs +29 -0
- package/esm2020/lib/common/utils/value-wrapper.mjs +19 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +16 -0
- package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +30 -0
- package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +39 -0
- package/esm2020/lib/components/auditing/elder-audit.module.mjs +42 -0
- package/esm2020/lib/components/auditing/i-audited-entity.mjs +3 -0
- package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +15 -0
- package/esm2020/lib/components/button-group/elder-button-group.module.mjs +35 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +123 -0
- package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +15 -0
- package/esm2020/lib/components/card-organizer/card-organizer-data.mjs +93 -0
- package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +205 -0
- package/esm2020/lib/components/card-organizer/card-stack.mjs +176 -0
- package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +49 -0
- package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +17 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +156 -0
- package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +65 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +56 -0
- package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +63 -0
- package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +46 -0
- package/esm2020/lib/components/connectivity/public_api.mjs +3 -0
- package/esm2020/lib/components/containers/elder-containers.module.mjs +25 -0
- package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +24 -0
- package/esm2020/lib/components/containers/public_api.mjs +2 -0
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +77 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.mjs +40 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +38 -0
- package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +114 -0
- package/esm2020/lib/components/csv/elder-csv.module.mjs +37 -0
- package/esm2020/lib/components/currency/elder-currency.module.mjs +24 -0
- package/esm2020/lib/components/currency/elder-currency.pipe.mjs +33 -0
- package/esm2020/lib/components/currency/model/currency-code.mjs +38 -0
- package/esm2020/lib/components/currency/model/currency-unit-registry.mjs +30 -0
- package/esm2020/lib/components/currency/model/currency-unit.mjs +10 -0
- package/esm2020/lib/components/currency/model/currency.mjs +15 -0
- package/esm2020/lib/components/currency/public_api.mjs +7 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +75 -0
- package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +89 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +67 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +34 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +47 -0
- package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +32 -0
- package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +67 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +259 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options-provider.mjs +44 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +45 -0
- package/esm2020/lib/components/data-view/base/elder-data-view.mjs +3 -0
- package/esm2020/lib/components/data-view/base/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +45 -0
- package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +89 -0
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +149 -0
- package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +89 -0
- package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +98 -0
- package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +37 -0
- package/esm2020/lib/components/data-view/common/selection/master-selection-state.mjs +10 -0
- package/esm2020/lib/components/data-view/elder-data-view-interaction-mode.mjs +2 -0
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +306 -0
- package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +81 -0
- package/esm2020/lib/components/data-view/public_api.mjs +6 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +19 -0
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +78 -0
- package/esm2020/lib/components/data-view/table/activation/elder-item-activator.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation-options.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +261 -0
- package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +72 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +18 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +321 -0
- package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +17 -0
- package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +96 -0
- package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +29 -0
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +136 -0
- package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +20 -0
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +141 -0
- package/esm2020/lib/components/data-view/table/model/elder-column-layout.mjs +110 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +81 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-provider.mjs +40 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model-query-group.mjs +87 -0
- package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +165 -0
- package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +25 -0
- package/esm2020/lib/components/dialogs/elder-dialog-config.mjs +3 -0
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +84 -0
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +168 -0
- package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +43 -0
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +46 -0
- package/esm2020/lib/components/errors/elder-error.module.mjs +41 -0
- package/esm2020/lib/components/errors/error-util.mjs +94 -0
- package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +66 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +55 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +27 -0
- package/esm2020/lib/components/files/blob-url.mjs +10 -0
- package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +225 -0
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +109 -0
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +143 -0
- package/esm2020/lib/components/files/elder-file.module.mjs +67 -0
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +55 -0
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +74 -0
- package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +51 -0
- package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +35 -0
- package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +42 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +82 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +34 -0
- package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +159 -0
- package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +77 -0
- package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +111 -0
- package/esm2020/lib/components/forms/directives/elder-max.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-min.directive.mjs +39 -0
- package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +101 -0
- package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +36 -0
- package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +29 -0
- package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +157 -0
- package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +27 -0
- package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +120 -0
- package/esm2020/lib/components/forms/directives/validation/elder-multiple-of.validator.mjs +57 -0
- package/esm2020/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.mjs +68 -0
- package/esm2020/lib/components/forms/elder-forms.module.mjs +22 -0
- package/esm2020/lib/components/forms/public_api.mjs +2 -0
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +146 -0
- package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +185 -0
- package/esm2020/lib/components/forms/search/elder-search.module.mjs +66 -0
- package/esm2020/lib/components/forms/search/model/search-input-state.mjs +78 -0
- package/esm2020/lib/components/forms/search/model/search-input.mjs +2 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +123 -0
- package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +16 -0
- package/esm2020/lib/components/global-search/elder-global-search.component.mjs +126 -0
- package/esm2020/lib/components/global-search/elder-global-search.module.mjs +32 -0
- package/esm2020/lib/components/global-search/elder-global-search.service.mjs +93 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +90 -0
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +26 -0
- package/esm2020/lib/components/graph/elder-progress-bar/sub-bar.mjs +7 -0
- package/esm2020/lib/components/graph/public_api.mjs +2 -0
- package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +28 -0
- package/esm2020/lib/components/headers/elder-header.module.mjs +43 -0
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +68 -0
- package/esm2020/lib/components/http-support/public_api.mjs +2 -0
- package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +119 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +135 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +151 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +28 -0
- package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +56 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +39 -0
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +30 -0
- package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +74 -0
- package/esm2020/lib/components/i18n/language/elder-language-config.mjs +3 -0
- package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +69 -0
- package/esm2020/lib/components/i18n/language/elder-language.module.mjs +72 -0
- package/esm2020/lib/components/i18n/language/elder-language.service.mjs +121 -0
- package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +65 -0
- package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +53 -0
- package/esm2020/lib/components/i18n/public_api.mjs +4 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +127 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +136 -0
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +95 -0
- package/esm2020/lib/components/iframes/iframe-close.directive.mjs +41 -0
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +51 -0
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +126 -0
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +78 -0
- package/esm2020/lib/components/iframes/iframe.service.mjs +48 -0
- package/esm2020/lib/components/iframes/typed-event-message.mjs +42 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +61 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +157 -0
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +40 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +9 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +186 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +197 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +114 -0
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +58 -0
- package/esm2020/lib/components/input/autocomplete/many/word-position-finder.mjs +58 -0
- package/esm2020/lib/components/input/public_api.mjs +2 -0
- package/esm2020/lib/components/labels/elder-labels.module.mjs +30 -0
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +230 -0
- package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +229 -0
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +64 -0
- package/esm2020/lib/components/measures/elder-measures.module.mjs +116 -0
- package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +41 -0
- package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +73 -0
- package/esm2020/lib/components/measures/elder-unit.service.mjs +115 -0
- package/esm2020/lib/components/measures/model/dimensions.mjs +17 -0
- package/esm2020/lib/components/measures/model/quantity.mjs +12 -0
- package/esm2020/lib/components/measures/model/unit-dimension.mjs +14 -0
- package/esm2020/lib/components/measures/model/unit-registry.mjs +81 -0
- package/esm2020/lib/components/measures/model/unit.mjs +143 -0
- package/esm2020/lib/components/measures/public_api.mjs +8 -0
- package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +189 -0
- package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +237 -0
- package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +164 -0
- package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +55 -0
- package/esm2020/lib/components/navigation/bread-crumbs/path/path.mjs +37 -0
- package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +51 -0
- package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +93 -0
- package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +64 -0
- package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +12 -0
- package/esm2020/lib/components/navigation/public_api.mjs +4 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +46 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +76 -0
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +68 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +66 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-column-position.mjs +2 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +39 -0
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +85 -0
- package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +43 -0
- package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +72 -0
- package/esm2020/lib/components/overlays/elder-overlay.component.mjs +204 -0
- package/esm2020/lib/components/overlays/elder-overlay.module.mjs +41 -0
- package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +12 -0
- package/esm2020/lib/components/panels/elder-panel.module.mjs +38 -0
- package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +26 -0
- package/esm2020/lib/components/public_api.mjs +40 -0
- package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +77 -0
- package/esm2020/lib/components/select/auto/elder-select-first-util.mjs +62 -0
- package/esm2020/lib/components/select/elder-select-base.mjs +284 -0
- package/esm2020/lib/components/select/elder-select-chip.directive.mjs +45 -0
- package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +133 -0
- package/esm2020/lib/components/select/elder-select-value.directive.mjs +15 -0
- package/esm2020/lib/components/select/elder-select.module.mjs +133 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +356 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +237 -0
- package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +67 -0
- package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +86 -0
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +126 -0
- package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +47 -0
- package/esm2020/lib/components/select/public_api.mjs +6 -0
- package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +57 -0
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +442 -0
- package/esm2020/lib/components/select/single/elder-select-form-field.mjs +45 -0
- package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +152 -0
- package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +48 -0
- package/esm2020/lib/components/select-list/elder-select-list.module.mjs +36 -0
- package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +75 -0
- package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +118 -0
- package/esm2020/lib/components/shell/drawers/drawer-outlet-binding.mjs +60 -0
- package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +117 -0
- package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +128 -0
- package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +46 -0
- package/esm2020/lib/components/shell/elder-shell.module.mjs +90 -0
- package/esm2020/lib/components/shell/elder-shell.service.mjs +145 -0
- package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +73 -0
- package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +206 -0
- package/esm2020/lib/components/shell/shell-content-slot.mjs +2 -0
- package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +137 -0
- package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +25 -0
- package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +256 -0
- package/esm2020/lib/components/tabs/elder-tab.module.mjs +32 -0
- package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +62 -0
- package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +72 -0
- package/esm2020/lib/components/theme/elder-theme.directive.mjs +61 -0
- package/esm2020/lib/components/theme/elder-theme.module.mjs +74 -0
- package/esm2020/lib/components/theme/elder-theme.service.mjs +123 -0
- package/esm2020/lib/components/theme/known-elder-themes.mjs +6 -0
- package/esm2020/lib/components/theme/public_api.mjs +2 -0
- package/esm2020/lib/components/theme/theme-spec.mjs +15 -0
- package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +23 -0
- package/esm2020/lib/components/time/duration/duration-bucket.mjs +67 -0
- package/esm2020/lib/components/time/duration/duration-format.mjs +271 -0
- package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +109 -0
- package/esm2020/lib/components/time/duration/iso-duration-str.mjs +2 -0
- package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +100 -0
- package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +79 -0
- package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +126 -0
- package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +189 -0
- package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +84 -0
- package/esm2020/lib/components/time/elder-time.module.mjs +133 -0
- package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +119 -0
- package/esm2020/lib/components/time/period/period-bucket.mjs +31 -0
- package/esm2020/lib/components/time/period/period-format.mjs +89 -0
- package/esm2020/lib/components/time/public_api.mjs +8 -0
- package/esm2020/lib/components/toasts/elder-toast.module.mjs +22 -0
- package/esm2020/lib/components/toasts/elder-toast.service.mjs +197 -0
- package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +73 -0
- package/esm2020/lib/components/toasts/toast-type.mjs +7 -0
- package/esm2020/lib/components/toasts/toast.mjs +2 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.mjs +9 -0
- package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +54 -0
- package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +84 -0
- package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +65 -0
- package/esm2020/lib/components/viewers/elder-viewers.module.mjs +25 -0
- package/esm2020/lib/features/event-source/elder-event-source.service.mjs +56 -0
- package/esm2020/lib/features/event-source/public_api.mjs +3 -0
- package/esm2020/lib/features/event-source/reactive-event-source.mjs +198 -0
- package/esm2020/lib/features/kafent/access-token-provider.mjs +20 -0
- package/esm2020/lib/features/kafent/kafent-config.mjs +24 -0
- package/esm2020/lib/features/kafent/kafent-event-stream.mjs +25 -0
- package/esm2020/lib/features/kafent/kafent-event.mjs +3 -0
- package/esm2020/lib/features/kafent/kafent-event.service.mjs +107 -0
- package/esm2020/lib/features/kafent/kafent-live-event-request.mjs +2 -0
- package/esm2020/lib/features/kafent/kafent.module.mjs +61 -0
- package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +128 -0
- package/esm2020/lib/features/kafent/sse/kafent-topic-sse.mjs +98 -0
- package/esm2020/lib/features/public_api.mjs +3 -0
- package/esm2020/lib/pipes/bytes.pipe.mjs +24 -0
- package/esm2020/lib/pipes/elder-pipes.module.mjs +67 -0
- package/esm2020/lib/pipes/elder-repeat.pipe.mjs +21 -0
- package/esm2020/lib/pipes/elder-round.pipe.mjs +35 -0
- package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +20 -0
- package/esm2020/lib/pipes/elder-truncate.pipe.mjs +40 -0
- package/esm2020/lib/pipes/iso-duration.pipe.mjs +58 -0
- package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +49 -0
- package/esm2020/lib/pipes/iso-interval.pipe.mjs +109 -0
- package/esm2020/lib/pipes/public_api.mjs +2 -0
- package/esm2020/lib/pipes/time-ago.pipe.mjs +104 -0
- package/esm2020/lib/pipes/time-duration.pipe.mjs +98 -0
- package/esm2020/lib/pipes/weight.pipe.mjs +56 -0
- package/esm2020/public_api.mjs +8 -0
- package/fesm2015/elderbyte-ngx-starter.mjs +27485 -0
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -0
- package/fesm2020/elderbyte-ngx-starter.mjs +27371 -0
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/common/async/public_api.d.ts +1 -0
- package/lib/common/async/refreshing-entity.d.ts +55 -0
- package/lib/common/csv/csv-serializer.d.ts +33 -0
- package/lib/common/csv/csv-spec.d.ts +71 -0
- package/lib/common/csv/public_api.d.ts +2 -0
- package/lib/common/data/continuable-listing.d.ts +28 -0
- package/lib/common/data/data-context/data-context-active-page.d.ts +75 -0
- package/lib/common/data/data-context/data-context-auto-starter.d.ts +41 -0
- package/lib/common/data/data-context/data-context-base.d.ts +149 -0
- package/lib/common/data/data-context/data-context-builder.d.ts +142 -0
- package/lib/common/data/data-context/data-context-continuable-base.d.ts +43 -0
- package/lib/common/data/data-context/data-context-continuable-paged.d.ts +58 -0
- package/lib/common/data/data-context/data-context-continuable-token.d.ts +48 -0
- package/lib/common/data/data-context/data-context-life-cycle-binding.d.ts +33 -0
- package/lib/common/data/data-context/data-context-simple.d.ts +30 -0
- package/lib/common/data/data-context/data-context-source-auto-reloader.d.ts +8 -0
- package/lib/common/data/data-context/data-context-status.d.ts +30 -0
- package/lib/common/data/data-context/data-context.d.ts +154 -0
- package/lib/common/data/data-context/mat-table-data-context-binding.d.ts +60 -0
- package/lib/common/data/data-context/public_api.d.ts +13 -0
- package/lib/common/data/datasource/data-source-adapter.d.ts +39 -0
- package/lib/common/data/datasource/data-source-processor.d.ts +106 -0
- package/lib/common/data/datasource/data-source.d.ts +58 -0
- package/lib/common/data/datasource/entity-id-util.d.ts +3 -0
- package/lib/common/data/datasource/fetcher/delegate-data-source.d.ts +84 -0
- package/lib/common/data/datasource/local/local-list-data-source.d.ts +61 -0
- package/lib/common/data/datasource/local/local-paged-data-source.d.ts +49 -0
- package/lib/common/data/datasource/public_api.d.ts +7 -0
- package/lib/common/data/datasource/rest/public_api.d.ts +1 -0
- package/lib/common/data/datasource/rest/rest-client.d.ts +162 -0
- package/lib/common/data/entity-set-patch.d.ts +74 -0
- package/lib/common/data/field-comparator.d.ts +43 -0
- package/lib/common/data/filters/filter-context.d.ts +63 -0
- package/lib/common/data/filters/filter.d.ts +52 -0
- package/lib/common/data/http-params-builder.d.ts +45 -0
- package/lib/common/data/page.d.ts +41 -0
- package/lib/common/data/public_api.d.ts +11 -0
- package/lib/common/data/required-filter-evaluator.d.ts +46 -0
- package/lib/common/data/sort-context.d.ts +42 -0
- package/lib/common/data/sort.d.ts +8 -0
- package/lib/common/data/token-chunk-request.d.ts +8 -0
- package/lib/common/enums/elder-enum-translation.service.d.ts +52 -0
- package/lib/common/enums/public_api.d.ts +1 -0
- package/lib/common/errors/exception-detail.d.ts +5 -0
- package/{src/lib/common/errors/public_api.ts → lib/common/errors/public_api.d.ts} +0 -0
- package/lib/common/errors/standard-error-detail.d.ts +22 -0
- package/lib/common/format/bytes-format.d.ts +4 -0
- package/lib/common/format/bytes-per-second-format.d.ts +5 -0
- package/{src/lib/common/format/public_api.ts → lib/common/format/public_api.d.ts} +0 -0
- package/lib/common/forms/elder-entity-value-accessor.d.ts +42 -0
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +103 -0
- package/lib/common/forms/elder-from-field-base.d.ts +52 -0
- package/lib/common/forms/elder-from-field-entity-base.d.ts +31 -0
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +35 -0
- package/lib/common/forms/elder-multi-entity-value-accessor.d.ts +52 -0
- package/lib/common/forms/form-field-base.component.d.ts +74 -0
- package/lib/common/forms/multi-model-base.component.d.ts +23 -0
- package/lib/common/forms/public_api.d.ts +11 -0
- package/lib/common/forms/template-composite-control.d.ts +64 -0
- package/lib/common/forms/value-accessor-base.d.ts +98 -0
- package/lib/common/forms/view-providers.d.ts +23 -0
- package/lib/common/http/http-client-builder.service.d.ts +6 -0
- package/lib/common/http/http-client-pristine.d.ts +10 -0
- package/lib/common/http/public_api.d.ts +4 -0
- package/lib/common/http/transfer/data-transfer-factory.d.ts +70 -0
- package/lib/common/http/transfer/data-transfer-progress-aggregate.d.ts +27 -0
- package/lib/common/http/transfer/data-transfer-progress.d.ts +13 -0
- package/lib/common/http/transfer/data-transfer-state.d.ts +52 -0
- package/lib/common/http/transfer/data-transfer-status.d.ts +22 -0
- package/lib/common/http/transfer/http-data-transfer.d.ts +96 -0
- package/lib/common/http/transfer/public_api.d.ts +6 -0
- package/lib/common/http/upload/file-upload-client.d.ts +38 -0
- package/lib/common/i18n/entity/impl/i18n-base.d.ts +6 -0
- package/lib/common/i18n/entity/impl/i18n-text.d.ts +11 -0
- package/lib/common/i18n/entity/language-tag.d.ts +15 -0
- package/lib/common/i18n/entity/locale.d.ts +8 -0
- package/lib/common/i18n/entity/localisation-picker.d.ts +14 -0
- package/lib/common/i18n/entity/localized.d.ts +10 -0
- package/lib/common/i18n/entity/public_api.d.ts +5 -0
- package/lib/common/i18n/public_api.d.ts +1 -0
- package/lib/common/json-map.d.ts +7 -0
- package/lib/common/objects.d.ts +19 -0
- package/lib/common/public_api.d.ts +18 -0
- package/lib/common/reactive-map.d.ts +40 -0
- package/{src/lib/common/selection/public_api.ts → lib/common/selection/public_api.d.ts} +0 -0
- package/lib/common/selection/selection-model.d.ts +82 -0
- package/lib/common/sets.d.ts +20 -0
- package/lib/common/suggestion-provider.d.ts +13 -0
- package/lib/common/templates/template-slot-manager.d.ts +70 -0
- package/lib/common/time/date-util.d.ts +54 -0
- package/lib/common/time/interval.d.ts +287 -0
- package/lib/common/time/period-duration.d.ts +84 -0
- package/lib/common/time/public_api.d.ts +4 -0
- package/lib/common/time/time-util.d.ts +15 -0
- package/lib/common/url/elder-router.service.d.ts +36 -0
- package/lib/common/url/elder-url-fragment-params.service.d.ts +62 -0
- package/lib/common/url/public_api.d.ts +3 -0
- package/lib/common/url/url-query-params.d.ts +96 -0
- package/lib/common/utils/batcher.d.ts +14 -0
- package/lib/common/utils/collection-util.d.ts +35 -0
- package/lib/common/utils/filter-util.d.ts +7 -0
- package/lib/common/utils/next-number-util.d.ts +39 -0
- package/lib/common/utils/ng-zone-utils.d.ts +7 -0
- package/lib/common/utils/parse-util.d.ts +8 -0
- package/lib/common/utils/property-path-util.d.ts +8 -0
- package/{src/lib/common/utils/public_api.ts → lib/common/utils/public_api.d.ts} +0 -0
- package/lib/common/utils/query-list-binding.d.ts +57 -0
- package/lib/common/utils/sort-util.d.ts +10 -0
- package/lib/common/utils/url-builder.d.ts +160 -0
- package/lib/common/utils/uuid-util.d.ts +18 -0
- package/lib/common/utils/value-wrapper.d.ts +15 -0
- package/lib/components/access-denied/elder-access-denied.component.d.ts +8 -0
- package/lib/components/access-denied/elder-access-denied.module.d.ts +11 -0
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +20 -0
- package/lib/components/auditing/elder-audit.module.d.ts +14 -0
- package/lib/components/auditing/i-audited-entity.d.ts +13 -0
- package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +8 -0
- package/lib/components/button-group/elder-button-group.module.d.ts +12 -0
- package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +64 -0
- package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +9 -0
- package/lib/components/card-organizer/card-organizer-data.d.ts +57 -0
- package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +89 -0
- package/lib/components/card-organizer/card-stack.d.ts +146 -0
- package/lib/components/card-organizer/elder-card-organizer.module.d.ts +22 -0
- package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +6 -0
- package/lib/components/cards/elder-card/elder-card.component.d.ts +68 -0
- package/lib/components/cards/elder-card/elder-card.module.d.ts +13 -0
- package/lib/components/connectivity/elder-connectivity.module.d.ts +14 -0
- package/lib/components/connectivity/elder-connectivity.service.d.ts +36 -0
- package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +33 -0
- package/lib/components/connectivity/public_api.d.ts +2 -0
- package/lib/components/containers/elder-containers.module.d.ts +9 -0
- package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +12 -0
- package/lib/components/containers/public_api.d.ts +1 -0
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +51 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.d.ts +35 -0
- package/lib/components/csv/elder-csv-stream-exporter-builder.service.d.ts +28 -0
- package/lib/components/csv/elder-csv-stream-exporter.d.ts +58 -0
- package/lib/components/csv/elder-csv.module.d.ts +14 -0
- package/lib/components/currency/elder-currency.module.d.ts +8 -0
- package/lib/components/currency/elder-currency.pipe.d.ts +21 -0
- package/lib/components/currency/model/currency-code.d.ts +36 -0
- package/lib/components/currency/model/currency-unit-registry.d.ts +23 -0
- package/lib/components/currency/model/currency-unit.d.ts +7 -0
- package/lib/components/currency/model/currency.d.ts +10 -0
- package/lib/components/currency/public_api.d.ts +6 -0
- package/lib/components/data-transfer/elder-data-transfer.module.d.ts +26 -0
- package/lib/components/data-transfer/elder-data-transfer.service.d.ts +55 -0
- package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +30 -0
- package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +29 -0
- package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +31 -0
- package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +28 -0
- package/lib/components/data-view/base/data-view-options-provider-binding.d.ts +39 -0
- package/lib/components/data-view/base/elder-data-view-base.d.ts +129 -0
- package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +38 -0
- package/lib/components/data-view/base/elder-data-view-options.d.ts +34 -0
- package/lib/components/data-view/base/elder-data-view.d.ts +7 -0
- package/lib/components/data-view/base/public_api.d.ts +5 -0
- package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +32 -0
- package/lib/components/data-view/common/elder-data-common.module.d.ts +29 -0
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +66 -0
- package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +45 -0
- package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +48 -0
- package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +26 -0
- package/lib/components/data-view/common/selection/master-selection-state.d.ts +8 -0
- package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +21 -0
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +113 -0
- package/lib/components/data-view/grid/elder-grid.module.d.ts +24 -0
- package/lib/components/data-view/public_api.d.ts +5 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +9 -0
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +28 -0
- package/lib/components/data-view/table/activation/elder-item-activator.d.ts +3 -0
- package/lib/components/data-view/table/activation/elder-table-activation-options.d.ts +16 -0
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +78 -0
- package/lib/components/data-view/table/elder-number-cell.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-paginator-intl.d.ts +38 -0
- package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +12 -0
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +129 -0
- package/lib/components/data-view/table/elder-table-column.directive.d.ts +9 -0
- package/lib/components/data-view/table/elder-table-extension.directive.d.ts +53 -0
- package/lib/components/data-view/table/elder-table-root.directive.d.ts +15 -0
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +63 -0
- package/lib/components/data-view/table/elder-table-sort.directive.d.ts +11 -0
- package/lib/components/data-view/table/elder-table.module.d.ts +47 -0
- package/lib/components/data-view/table/model/elder-column-layout.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.d.ts +44 -0
- package/lib/components/data-view/table/model/elder-table-model-provider.d.ts +25 -0
- package/lib/components/data-view/table/model/elder-table-model-query-group.d.ts +53 -0
- package/lib/components/data-view/table/model/elder-table-model.d.ts +83 -0
- package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/elder-dialog-config.d.ts +16 -0
- package/lib/components/dialogs/elder-dialog.module.d.ts +37 -0
- package/lib/components/dialogs/elder-dialog.service.d.ts +72 -0
- package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +22 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +29 -0
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +24 -0
- package/lib/components/errors/elder-error.module.d.ts +16 -0
- package/lib/components/errors/error-util.d.ts +23 -0
- package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +42 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +33 -0
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +11 -0
- package/lib/components/files/blob-url.d.ts +6 -0
- package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +107 -0
- package/lib/components/files/elder-file-drop-zone.directive.d.ts +45 -0
- package/lib/components/files/elder-file-select.directive.d.ts +66 -0
- package/lib/components/files/elder-file.module.d.ts +23 -0
- package/lib/components/files/file-select/file-select.component.d.ts +34 -0
- package/lib/components/files/file-upload/file-upload.component.d.ts +45 -0
- package/lib/components/forms/clipboard/elder-clipboard.service.d.ts +26 -0
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +32 -0
- package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +22 -0
- package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +21 -0
- package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +19 -0
- package/lib/components/forms/directives/elder-forms-directives.module.d.ts +68 -0
- package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +41 -0
- package/lib/components/forms/directives/elder-key-event.directive.d.ts +58 -0
- package/lib/components/forms/directives/elder-max.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-min.directive.d.ts +11 -0
- package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +48 -0
- package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +13 -0
- package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +16 -0
- package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +63 -0
- package/lib/components/forms/directives/elder-touched.directive.d.ts +14 -0
- package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +51 -0
- package/lib/components/forms/directives/validation/elder-multiple-of.validator.d.ts +20 -0
- package/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.d.ts +33 -0
- package/lib/components/forms/elder-forms.module.d.ts +12 -0
- package/lib/components/forms/public_api.d.ts +1 -0
- package/lib/components/forms/search/elder-search-context.directive.d.ts +79 -0
- package/lib/components/forms/search/elder-search-input.directive.d.ts +85 -0
- package/lib/components/forms/search/elder-search.module.d.ts +25 -0
- package/lib/components/forms/search/model/search-input-state.d.ts +67 -0
- package/lib/components/forms/search/model/search-input.d.ts +21 -0
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +72 -0
- package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +6 -0
- package/lib/components/global-search/elder-global-search.component.d.ts +39 -0
- package/lib/components/global-search/elder-global-search.module.d.ts +18 -0
- package/lib/components/global-search/elder-global-search.service.d.ts +54 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +47 -0
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +10 -0
- package/lib/components/graph/elder-progress-bar/sub-bar.d.ts +5 -0
- package/{src/lib/components/graph/public_api.ts → lib/components/graph/public_api.d.ts} +0 -0
- package/lib/components/headers/elder-header/elder-header.component.d.ts +25 -0
- package/lib/components/headers/elder-header.module.d.ts +11 -0
- package/lib/components/http-support/elder-http-client.service.d.ts +48 -0
- package/lib/components/http-support/public_api.d.ts +1 -0
- package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +37 -0
- package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +62 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +22 -0
- package/lib/components/i18n/entities/elder-localized-input-dialog.service.d.ts +13 -0
- package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +67 -0
- package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +17 -0
- package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +37 -0
- package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +23 -0
- package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +22 -0
- package/lib/components/i18n/entities/picker/localisation-picker.service.d.ts +44 -0
- package/lib/components/i18n/language/elder-language-config.d.ts +14 -0
- package/lib/components/i18n/language/elder-language-interceptor.d.ts +41 -0
- package/lib/components/i18n/language/elder-language.module.d.ts +26 -0
- package/lib/components/i18n/language/elder-language.service.d.ts +77 -0
- package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +37 -0
- package/lib/components/i18n/locales/elder-locales-de-ch.module.d.ts +10 -0
- package/{src/lib/components/i18n/public_api.ts → lib/components/i18n/public_api.d.ts} +0 -0
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +68 -0
- package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +62 -0
- package/lib/components/iframes/elder-iframe.module.d.ts +27 -0
- package/lib/components/iframes/iframe-close.directive.d.ts +24 -0
- package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +36 -0
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +92 -0
- package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +48 -0
- package/lib/components/iframes/iframe.service.d.ts +25 -0
- package/lib/components/iframes/typed-event-message.d.ts +26 -0
- package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +30 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +63 -0
- package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +19 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.d.ts +8 -0
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +87 -0
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +78 -0
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +60 -0
- package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +19 -0
- package/lib/components/input/autocomplete/many/word-position-finder.d.ts +15 -0
- package/lib/components/input/public_api.d.ts +1 -0
- package/lib/components/labels/elder-labels.module.d.ts +15 -0
- package/lib/components/labels/labels-input/labels-input.component.d.ts +91 -0
- package/lib/components/measures/dimensions-input/elder-dimensions-input.component.d.ts +109 -0
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +30 -0
- package/lib/components/measures/elder-measures.module.d.ts +32 -0
- package/lib/components/measures/elder-quantity-transform.pipe.d.ts +22 -0
- package/lib/components/measures/elder-quantity.pipe.d.ts +40 -0
- package/lib/components/measures/elder-unit.service.d.ts +39 -0
- package/lib/components/measures/model/dimensions.d.ts +11 -0
- package/lib/components/measures/model/quantity.d.ts +7 -0
- package/lib/components/measures/model/unit-dimension.d.ts +12 -0
- package/lib/components/measures/model/unit-registry.d.ts +46 -0
- package/lib/components/measures/model/unit.d.ts +111 -0
- package/lib/components/measures/public_api.d.ts +7 -0
- package/lib/components/measures/quantity-input/elder-quantity-input.component.d.ts +94 -0
- package/lib/components/measures/util/elder-quantity.service.d.ts +116 -0
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +69 -0
- package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +18 -0
- package/lib/components/navigation/bread-crumbs/path/path.d.ts +31 -0
- package/lib/components/navigation/nav/elder-nav.module.d.ts +18 -0
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +45 -0
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +27 -0
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +6 -0
- package/{src/lib/components/navigation/public_api.ts → lib/components/navigation/public_api.d.ts} +0 -0
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +34 -0
- package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +23 -0
- package/lib/components/navigation/toolbar/elder-toolbar.service.d.ts +46 -0
- package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +42 -0
- package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +9 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +30 -0
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.d.ts +47 -0
- package/lib/components/overlays/elder-overlay-origin.directive.d.ts +28 -0
- package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +36 -0
- package/lib/components/overlays/elder-overlay.component.d.ts +88 -0
- package/lib/components/overlays/elder-overlay.module.d.ts +14 -0
- package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +6 -0
- package/lib/components/panels/elder-panel.module.d.ts +14 -0
- package/lib/components/panels/flat/elder-panel.component.d.ts +15 -0
- package/{src/lib/components/public_api.ts → lib/components/public_api.d.ts} +0 -0
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +45 -0
- package/lib/components/select/auto/elder-select-first-util.d.ts +22 -0
- package/lib/components/select/elder-select-base.d.ts +149 -0
- package/lib/components/select/elder-select-chip.directive.d.ts +23 -0
- package/lib/components/select/elder-select-on-tab.directive.d.ts +55 -0
- package/lib/components/select/elder-select-value.directive.d.ts +9 -0
- package/lib/components/select/elder-select.module.d.ts +48 -0
- package/lib/components/select/multi/elder-multi-select-base.d.ts +120 -0
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +105 -0
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +34 -0
- package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +42 -0
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +49 -0
- package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +32 -0
- package/lib/components/select/public_api.d.ts +5 -0
- package/lib/components/select/single/elder-clear-select.directive.d.ts +34 -0
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +155 -0
- package/lib/components/select/single/elder-select-form-field.d.ts +30 -0
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +78 -0
- package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +12 -0
- package/lib/components/select-list/elder-select-list.module.d.ts +15 -0
- package/lib/components/select-list/select-list/elder-select-list.component.d.ts +53 -0
- package/lib/components/select-list/select-list-item/elder-select-list-item.component.d.ts +57 -0
- package/lib/components/shell/drawers/drawer-outlet-binding.d.ts +36 -0
- package/lib/components/shell/drawers/elder-route-outlet-drawer.service.d.ts +55 -0
- package/lib/components/shell/drawers/elder-router-outlet.service.d.ts +64 -0
- package/lib/components/shell/elder-shell-slot.directive.d.ts +34 -0
- package/lib/components/shell/elder-shell.module.d.ts +30 -0
- package/lib/components/shell/elder-shell.service.d.ts +98 -0
- package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +43 -0
- package/lib/components/shell/shell/elder-shell.component.d.ts +99 -0
- package/lib/components/shell/shell-content-slot.d.ts +4 -0
- package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +66 -0
- package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +19 -0
- package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +100 -0
- package/lib/components/tabs/elder-tab.module.d.ts +12 -0
- package/lib/components/theme/elder-theme-applier.directive.d.ts +36 -0
- package/lib/components/theme/elder-theme-preference.service.d.ts +35 -0
- package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +37 -0
- package/lib/components/theme/elder-theme.directive.d.ts +38 -0
- package/lib/components/theme/elder-theme.module.d.ts +22 -0
- package/lib/components/theme/elder-theme.service.d.ts +51 -0
- package/lib/components/theme/known-elder-themes.d.ts +5 -0
- package/{src/lib/components/theme/public_api.ts → lib/components/theme/public_api.d.ts} +0 -0
- package/lib/components/theme/theme-spec.d.ts +18 -0
- package/lib/components/time/date-adapters/custom-date-adapter.d.ts +12 -0
- package/lib/components/time/duration/duration-bucket.d.ts +37 -0
- package/lib/components/time/duration/duration-format.d.ts +62 -0
- package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +58 -0
- package/lib/components/time/duration/iso-duration-str.d.ts +5 -0
- package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +60 -0
- package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +42 -0
- package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +84 -0
- package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +78 -0
- package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +47 -0
- package/lib/components/time/elder-time.module.d.ts +38 -0
- package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +71 -0
- package/lib/components/time/period/period-bucket.d.ts +21 -0
- package/lib/components/time/period/period-format.d.ts +43 -0
- package/lib/components/time/public_api.d.ts +7 -0
- package/lib/components/toasts/elder-toast.module.d.ts +12 -0
- package/lib/components/toasts/elder-toast.service.d.ts +96 -0
- package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +38 -0
- package/lib/components/toasts/toast-type.d.ts +5 -0
- package/lib/components/toasts/toast.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.d.ts +7 -0
- package/lib/components/url-fragment/elder-url-fragment.module.d.ts +17 -0
- package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +38 -0
- package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +41 -0
- package/lib/components/viewers/elder-viewers.module.d.ts +9 -0
- package/lib/features/event-source/elder-event-source.service.d.ts +43 -0
- package/lib/features/event-source/public_api.d.ts +2 -0
- package/lib/features/event-source/reactive-event-source.d.ts +97 -0
- package/lib/features/kafent/access-token-provider.d.ts +12 -0
- package/lib/features/kafent/kafent-config.d.ts +32 -0
- package/lib/features/kafent/kafent-event-stream.d.ts +28 -0
- package/lib/features/kafent/kafent-event.d.ts +11 -0
- package/lib/features/kafent/kafent-event.service.d.ts +77 -0
- package/lib/features/kafent/kafent-live-event-request.d.ts +58 -0
- package/lib/features/kafent/kafent.module.d.ts +30 -0
- package/lib/features/kafent/sse/kafent-event-stream-sse.service.d.ts +56 -0
- package/lib/features/kafent/sse/kafent-topic-sse.d.ts +70 -0
- package/lib/features/public_api.d.ts +2 -0
- package/lib/pipes/bytes.pipe.d.ts +7 -0
- package/lib/pipes/elder-pipes.module.d.ts +46 -0
- package/lib/pipes/elder-repeat.pipe.d.ts +7 -0
- package/lib/pipes/elder-round.pipe.d.ts +23 -0
- package/lib/pipes/elder-safe-url.pipe.d.ts +10 -0
- package/lib/pipes/elder-truncate.pipe.d.ts +17 -0
- package/lib/pipes/iso-duration.pipe.d.ts +26 -0
- package/lib/pipes/iso-interval-parse.pipe.d.ts +30 -0
- package/lib/pipes/iso-interval.pipe.d.ts +43 -0
- package/lib/pipes/public_api.d.ts +1 -0
- package/lib/pipes/time-ago.pipe.d.ts +18 -0
- package/lib/pipes/time-duration.pipe.d.ts +13 -0
- package/lib/pipes/weight.pipe.d.ts +7 -0
- package/package.json +22 -6
- package/public_api.d.ts +4 -0
- package/.eslintrc.json +0 -44
- package/karma-ci.conf.js +0 -46
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -15
- package/ng-package.prod.json +0 -14
- package/src/lib/common/async/public_api.ts +0 -3
- package/src/lib/common/async/refreshing-entity.ts +0 -128
- package/src/lib/common/csv/csv-serializer.ts +0 -82
- package/src/lib/common/csv/csv-spec.ts +0 -148
- package/src/lib/common/csv/public_api.ts +0 -3
- package/src/lib/common/data/continuable-listing.ts +0 -35
- package/src/lib/common/data/data-context/data-context-active-page.ts +0 -184
- package/src/lib/common/data/data-context/data-context-auto-starter.ts +0 -108
- package/src/lib/common/data/data-context/data-context-base.ts +0 -406
- package/src/lib/common/data/data-context/data-context-builder.ts +0 -354
- package/src/lib/common/data/data-context/data-context-continuable-base.ts +0 -100
- package/src/lib/common/data/data-context/data-context-continuable-paged.ts +0 -191
- package/src/lib/common/data/data-context/data-context-continuable-token.ts +0 -177
- package/src/lib/common/data/data-context/data-context-life-cycle-binding.ts +0 -59
- package/src/lib/common/data/data-context/data-context-simple.ts +0 -80
- package/src/lib/common/data/data-context/data-context-source-auto-reloader.ts +0 -21
- package/src/lib/common/data/data-context/data-context-status.ts +0 -56
- package/src/lib/common/data/data-context/data-context.ts +0 -204
- package/src/lib/common/data/data-context/mat-table-data-context-binding.ts +0 -209
- package/src/lib/common/data/data-context/public_api.ts +0 -19
- package/src/lib/common/data/datasource/data-source-adapter.ts +0 -96
- package/src/lib/common/data/datasource/data-source-processor.ts +0 -318
- package/src/lib/common/data/datasource/data-source.ts +0 -87
- package/src/lib/common/data/datasource/entity-id-util.ts +0 -11
- package/src/lib/common/data/datasource/fetcher/delegate-data-source.ts +0 -230
- package/src/lib/common/data/datasource/local/local-list-data-source.ts +0 -161
- package/src/lib/common/data/datasource/local/local-paged-data-source.ts +0 -129
- package/src/lib/common/data/datasource/public_api.ts +0 -14
- package/src/lib/common/data/datasource/rest/public_api.ts +0 -2
- package/src/lib/common/data/datasource/rest/rest-client.ts +0 -474
- package/src/lib/common/data/entity-set-patch.ts +0 -210
- package/src/lib/common/data/field-comparator.ts +0 -122
- package/src/lib/common/data/filters/filter-context.spec.ts +0 -150
- package/src/lib/common/data/filters/filter-context.ts +0 -163
- package/src/lib/common/data/filters/filter.spec.ts +0 -136
- package/src/lib/common/data/filters/filter.ts +0 -137
- package/src/lib/common/data/http-params-builder.ts +0 -138
- package/src/lib/common/data/page.ts +0 -92
- package/src/lib/common/data/public_api.ts +0 -12
- package/src/lib/common/data/required-filter-evaluator.ts +0 -122
- package/src/lib/common/data/sort-context.ts +0 -90
- package/src/lib/common/data/sort.ts +0 -16
- package/src/lib/common/data/token-chunk-request.ts +0 -10
- package/src/lib/common/enums/elder-enum-translation.service.ts +0 -116
- package/src/lib/common/enums/public_api.ts +0 -3
- package/src/lib/common/errors/exception-detail.ts +0 -6
- package/src/lib/common/errors/standard-error-detail.ts +0 -27
- package/src/lib/common/format/bytes-format.ts +0 -25
- package/src/lib/common/format/bytes-per-second-format.ts +0 -44
- package/src/lib/common/forms/elder-entity-value-accessor.ts +0 -70
- package/src/lib/common/forms/elder-form-field-control-base.directive.ts +0 -240
- package/src/lib/common/forms/elder-from-field-base.ts +0 -113
- package/src/lib/common/forms/elder-from-field-entity-base.ts +0 -63
- package/src/lib/common/forms/elder-from-field-multi-entity-base.ts +0 -86
- package/src/lib/common/forms/elder-multi-entity-value-accessor.ts +0 -84
- package/src/lib/common/forms/form-field-base.component.ts +0 -152
- package/src/lib/common/forms/multi-model-base.component.ts +0 -40
- package/src/lib/common/forms/public_api.ts +0 -12
- package/src/lib/common/forms/template-composite-control.ts +0 -158
- package/src/lib/common/forms/value-accessor-base.ts +0 -165
- package/src/lib/common/forms/view-providers.ts +0 -34
- package/src/lib/common/http/http-client-builder.service.ts +0 -55
- package/src/lib/common/http/http-client-pristine.ts +0 -15
- package/src/lib/common/http/public_api.ts +0 -5
- package/src/lib/common/http/transfer/data-transfer-factory.ts +0 -145
- package/src/lib/common/http/transfer/data-transfer-progress-aggregate.ts +0 -74
- package/src/lib/common/http/transfer/data-transfer-progress.ts +0 -18
- package/src/lib/common/http/transfer/data-transfer-state.ts +0 -129
- package/src/lib/common/http/transfer/data-transfer-status.ts +0 -28
- package/src/lib/common/http/transfer/http-data-transfer.ts +0 -276
- package/src/lib/common/http/transfer/public_api.ts +0 -9
- package/src/lib/common/http/upload/file-upload-client.ts +0 -74
- package/src/lib/common/i18n/entity/impl/i18n-base.ts +0 -9
- package/src/lib/common/i18n/entity/impl/i18n-text.ts +0 -25
- package/src/lib/common/i18n/entity/language-tag.ts +0 -19
- package/src/lib/common/i18n/entity/locale.ts +0 -20
- package/src/lib/common/i18n/entity/localisation-picker.ts +0 -51
- package/src/lib/common/i18n/entity/localized.ts +0 -11
- package/src/lib/common/i18n/entity/public_api.ts +0 -7
- package/src/lib/common/i18n/public_api.ts +0 -3
- package/src/lib/common/json-map.ts +0 -26
- package/src/lib/common/objects.ts +0 -46
- package/src/lib/common/public_api.ts +0 -20
- package/src/lib/common/reactive-map.ts +0 -113
- package/src/lib/common/selection/selection-model.ts +0 -274
- package/src/lib/common/sets.ts +0 -48
- package/src/lib/common/suggestion-provider.ts +0 -28
- package/src/lib/common/templates/public_api.ts +0 -1
- package/src/lib/common/templates/template-slot-manager.ts +0 -153
- package/src/lib/common/time/date-util.ts +0 -120
- package/src/lib/common/time/interval.spec.ts +0 -53
- package/src/lib/common/time/interval.ts +0 -539
- package/src/lib/common/time/period-duration.ts +0 -147
- package/src/lib/common/time/public_api.ts +0 -6
- package/src/lib/common/time/time-util.ts +0 -54
- package/src/lib/common/url/elder-router.service.ts +0 -55
- package/src/lib/common/url/elder-url-fragment-params.service.ts +0 -139
- package/src/lib/common/url/public_api.ts +0 -5
- package/src/lib/common/url/url-query-params.ts +0 -169
- package/src/lib/common/utils/batcher.spec.ts +0 -39
- package/src/lib/common/utils/batcher.ts +0 -55
- package/src/lib/common/utils/collection-util.ts +0 -125
- package/src/lib/common/utils/filter-util.ts +0 -67
- package/src/lib/common/utils/next-number-util.ts +0 -102
- package/src/lib/common/utils/ng-zone-utils.ts +0 -18
- package/src/lib/common/utils/parse-util.ts +0 -17
- package/src/lib/common/utils/property-path-util.ts +0 -29
- package/src/lib/common/utils/query-list-binding.ts +0 -105
- package/src/lib/common/utils/sort-util.spec.ts +0 -41
- package/src/lib/common/utils/sort-util.ts +0 -38
- package/src/lib/common/utils/url-builder.spec.ts +0 -83
- package/src/lib/common/utils/url-builder.ts +0 -363
- package/src/lib/common/utils/uuid-util.ts +0 -34
- package/src/lib/common/utils/value-wrapper.ts +0 -25
- package/src/lib/components/access-denied/elder-access-denied.component.html +0 -12
- package/src/lib/components/access-denied/elder-access-denied.component.ts +0 -16
- package/src/lib/components/access-denied/elder-access-denied.module.ts +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.html +0 -23
- package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.ts +0 -39
- package/src/lib/components/auditing/elder-audit.module.ts +0 -28
- package/src/lib/components/auditing/i-audited-entity.ts +0 -17
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.html +0 -3
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.ts +0 -21
- package/src/lib/components/button-group/elder-button-group.module.ts +0 -23
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.html +0 -26
- package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.ts +0 -148
- package/src/lib/components/card-organizer/card-organizer/elder-stack-card.directive.ts +0 -9
- package/src/lib/components/card-organizer/card-organizer-data.ts +0 -124
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.html +0 -70
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.ts +0 -250
- package/src/lib/components/card-organizer/card-stack.ts +0 -231
- package/src/lib/components/card-organizer/elder-card-organizer.module.ts +0 -37
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.css +0 -5
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.html +0 -16
- package/src/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.ts +0 -14
- package/src/lib/components/cards/elder-card/elder-card.component.html +0 -21
- package/src/lib/components/cards/elder-card/elder-card.component.ts +0 -141
- package/src/lib/components/cards/elder-card/elder-card.module.ts +0 -47
- package/src/lib/components/connectivity/elder-connectivity.module.ts +0 -37
- package/src/lib/components/connectivity/elder-connectivity.service.ts +0 -83
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.html +0 -11
- package/src/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.ts +0 -51
- package/src/lib/components/connectivity/public_api.ts +0 -3
- package/src/lib/components/containers/elder-containers.module.ts +0 -18
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.html +0 -14
- package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.ts +0 -30
- package/src/lib/components/containers/public_api.ts +0 -3
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.html +0 -5
- package/src/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.ts +0 -105
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.service.ts +0 -56
- package/src/lib/components/csv/elder-csv-stream-exporter-builder.ts +0 -68
- package/src/lib/components/csv/elder-csv-stream-exporter.ts +0 -192
- package/src/lib/components/csv/elder-csv.module.ts +0 -27
- package/src/lib/components/currency/elder-currency.module.ts +0 -18
- package/src/lib/components/currency/elder-currency.pipe.ts +0 -44
- package/src/lib/components/currency/elder-currency.service.ts +0 -83
- package/src/lib/components/currency/model/currency-code.ts +0 -37
- package/src/lib/components/currency/model/currency-unit-registry.ts +0 -39
- package/src/lib/components/currency/model/currency-unit.ts +0 -18
- package/src/lib/components/currency/model/currency.ts +0 -22
- package/src/lib/components/currency/public_api.ts +0 -7
- package/src/lib/components/data-transfer/elder-data-transfer.module.ts +0 -52
- package/src/lib/components/data-transfer/elder-data-transfer.service.ts +0 -120
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.html +0 -47
- package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.ts +0 -82
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.html +0 -26
- package/src/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.ts +0 -46
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.html +0 -31
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.ts +0 -61
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.html +0 -24
- package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.ts +0 -41
- package/src/lib/components/data-view/base/data-view-options-provider-binding.ts +0 -99
- package/src/lib/components/data-view/base/elder-data-view-base.ts +0 -322
- package/src/lib/components/data-view/base/elder-data-view-options-provider.ts +0 -55
- package/src/lib/components/data-view/base/elder-data-view-options.ts +0 -89
- package/src/lib/components/data-view/base/elder-data-view.ts +0 -14
- package/src/lib/components/data-view/base/public_api.ts +0 -5
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.html +0 -50
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.ts +0 -51
- package/src/lib/components/data-view/common/elder-data-common.module.ts +0 -62
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.html +0 -113
- package/src/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.ts +0 -181
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.html +0 -25
- package/src/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.ts +0 -99
- package/src/lib/components/data-view/common/selection/data-context-selection.directive.ts +0 -127
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.html +0 -22
- package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.ts +0 -53
- package/src/lib/components/data-view/common/selection/master-selection-state.ts +0 -10
- package/src/lib/components/data-view/elder-data-view-interaction-mode.ts +0 -26
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.html +0 -158
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.ts +0 -359
- package/src/lib/components/data-view/grid/elder-grid.module.ts +0 -54
- package/src/lib/components/data-view/public_api.ts +0 -5
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.css +0 -0
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.html +0 -3
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.ts +0 -22
- package/src/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.ts +0 -50
- package/src/lib/components/data-view/table/activation/elder-item-activator.ts +0 -6
- package/src/lib/components/data-view/table/activation/elder-table-activation-options.ts +0 -19
- package/src/lib/components/data-view/table/activation/elder-table-activation.directive.ts +0 -308
- package/src/lib/components/data-view/table/elder-number-cell.directive.ts +0 -26
- package/src/lib/components/data-view/table/elder-paginator-intl.ts +0 -92
- package/src/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.ts +0 -14
- package/src/lib/components/data-view/table/elder-table/elder-table.component.html +0 -99
- package/src/lib/components/data-view/table/elder-table/elder-table.component.ts +0 -388
- package/src/lib/components/data-view/table/elder-table-column.directive.ts +0 -29
- package/src/lib/components/data-view/table/elder-table-extension.directive.ts +0 -107
- package/src/lib/components/data-view/table/elder-table-root.directive.ts +0 -24
- package/src/lib/components/data-view/table/elder-table-row.directive.ts +0 -154
- package/src/lib/components/data-view/table/elder-table-sort.directive.ts +0 -16
- package/src/lib/components/data-view/table/elder-table.module.ts +0 -94
- package/src/lib/components/data-view/table/model/elder-column-layout.ts +0 -164
- package/src/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.ts +0 -115
- package/src/lib/components/data-view/table/model/elder-table-model-provider.ts +0 -49
- package/src/lib/components/data-view/table/model/elder-table-model-query-group.ts +0 -153
- package/src/lib/components/data-view/table/model/elder-table-model.ts +0 -221
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.html +0 -34
- package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.ts +0 -34
- package/src/lib/components/dialogs/elder-dialog-config.ts +0 -21
- package/src/lib/components/dialogs/elder-dialog.module.ts +0 -66
- package/src/lib/components/dialogs/elder-dialog.service.ts +0 -204
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.html +0 -36
- package/src/lib/components/dialogs/question-dialog/elder-question-dialog.component.ts +0 -44
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.html +0 -27
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.ts +0 -55
- package/src/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.ts +0 -54
- package/src/lib/components/errors/elder-error.module.ts +0 -28
- package/src/lib/components/errors/error-util.ts +0 -107
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.html +0 -33
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.ts +0 -77
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.html +0 -14
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.ts +0 -57
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.module.ts +0 -23
- package/src/lib/components/files/blob-url.ts +0 -13
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.html +0 -62
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.ts +0 -304
- package/src/lib/components/files/elder-file-drop-zone.directive.ts +0 -116
- package/src/lib/components/files/elder-file-select.directive.ts +0 -184
- package/src/lib/components/files/elder-file.module.ts +0 -49
- package/src/lib/components/files/file-select/file-select.component.html +0 -9
- package/src/lib/components/files/file-select/file-select.component.ts +0 -61
- package/src/lib/components/files/file-upload/file-upload.component.html +0 -36
- package/src/lib/components/files/file-upload/file-upload.component.ts +0 -81
- package/src/lib/components/forms/clipboard/elder-clipboard.service.ts +0 -57
- package/src/lib/components/forms/directives/base/elder-class-hostbinding-base.ts +0 -55
- package/src/lib/components/forms/directives/elder-clipboard-put.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-delayed-focus.directive.ts +0 -44
- package/src/lib/components/forms/directives/elder-form-field-dense.directive.ts +0 -31
- package/src/lib/components/forms/directives/elder-form-field-label.directive.ts +0 -92
- package/src/lib/components/forms/directives/elder-form-field-no-hint.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-form-field-no-spinner.directive.ts +0 -32
- package/src/lib/components/forms/directives/elder-forms-directives.module.ts +0 -115
- package/src/lib/components/forms/directives/elder-input-pattern.directive.ts +0 -76
- package/src/lib/components/forms/directives/elder-key-event.directive.ts +0 -126
- package/src/lib/components/forms/directives/elder-max.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-min.directive.ts +0 -38
- package/src/lib/components/forms/directives/elder-next-focusable.directive.ts +0 -101
- package/src/lib/components/forms/directives/elder-plug-parent-form.directive.ts +0 -28
- package/src/lib/components/forms/directives/elder-stop-event-propagation.directive.ts +0 -22
- package/src/lib/components/forms/directives/elder-tab-focus-trap.directive.ts +0 -188
- package/src/lib/components/forms/directives/elder-touched.directive.ts +0 -25
- package/src/lib/components/forms/directives/elder-triple-state-checkbox.directive.ts +0 -132
- package/src/lib/components/forms/directives/validation/elder-multiple-of.validator.ts +0 -59
- package/src/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.ts +0 -80
- package/src/lib/components/forms/elder-forms.module.ts +0 -17
- package/src/lib/components/forms/public_api.ts +0 -3
- package/src/lib/components/forms/search/elder-search-context.directive.ts +0 -181
- package/src/lib/components/forms/search/elder-search-input.directive.ts +0 -244
- package/src/lib/components/forms/search/elder-search.module.ts +0 -48
- package/src/lib/components/forms/search/model/search-input-state.ts +0 -95
- package/src/lib/components/forms/search/model/search-input.ts +0 -30
- package/src/lib/components/forms/search/model/simple-search-input.ts +0 -69
- package/src/lib/components/forms/search/search-box/elder-search-box.component.html +0 -66
- package/src/lib/components/forms/search/search-box/elder-search-box.component.ts +0 -149
- package/src/lib/components/forms/search/search-box/elder-search-panel.component.ts +0 -10
- package/src/lib/components/global-search/elder-global-search.component.html +0 -51
- package/src/lib/components/global-search/elder-global-search.component.ts +0 -158
- package/src/lib/components/global-search/elder-global-search.module.ts +0 -27
- package/src/lib/components/global-search/elder-global-search.service.ts +0 -118
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.html +0 -19
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.ts +0 -102
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.module.ts +0 -20
- package/src/lib/components/graph/elder-progress-bar/sub-bar.ts +0 -6
- package/src/lib/components/headers/elder-header/elder-header.component.css +0 -0
- package/src/lib/components/headers/elder-header/elder-header.component.html +0 -4
- package/src/lib/components/headers/elder-header/elder-header.component.ts +0 -38
- package/src/lib/components/headers/elder-header.module.ts +0 -28
- package/src/lib/components/http-support/elder-http-client.service.ts +0 -82
- package/src/lib/components/http-support/public_api.ts +0 -3
- package/src/lib/components/i18n/entities/elder-i18n-entities.module.ts +0 -74
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.html +0 -40
- package/src/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.ts +0 -176
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.html +0 -36
- package/src/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.ts +0 -33
- package/src/lib/components/i18n/entities/elder-localized-input-dialog.service.ts +0 -35
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.html +0 -56
- package/src/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.ts +0 -200
- package/src/lib/components/i18n/entities/elder-localized-text-column.directive.ts +0 -34
- package/src/lib/components/i18n/entities/elder-localized-texts.directive.ts +0 -62
- package/src/lib/components/i18n/entities/picker/i18n-pick-async.pipe.ts +0 -49
- package/src/lib/components/i18n/entities/picker/i18n-pick.pipe.ts +0 -36
- package/src/lib/components/i18n/entities/picker/localisation-picker.service.ts +0 -104
- package/src/lib/components/i18n/language/elder-language-config.ts +0 -18
- package/src/lib/components/i18n/language/elder-language-interceptor.ts +0 -94
- package/src/lib/components/i18n/language/elder-language.module.ts +0 -57
- package/src/lib/components/i18n/language/elder-language.service.ts +0 -139
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.html +0 -24
- package/src/lib/components/i18n/language/language-switcher/elder-language-switcher.component.ts +0 -71
- package/src/lib/components/i18n/locales/elder-locales-de-ch.module.ts +0 -46
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.html +0 -6
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.ts +0 -173
- package/src/lib/components/iframes/data-view/data-view-iframe-adapter.directive.ts +0 -150
- package/src/lib/components/iframes/elder-iframe.module.ts +0 -61
- package/src/lib/components/iframes/iframe-close.directive.ts +0 -49
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.html +0 -9
- package/src/lib/components/iframes/iframe-dialog/iframe-dialog.component.ts +0 -63
- package/src/lib/components/iframes/iframe-host/iframe-host.component.html +0 -41
- package/src/lib/components/iframes/iframe-host/iframe-host.component.ts +0 -172
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.html +0 -8
- package/src/lib/components/iframes/iframe-side-content/iframe-side-content.component.ts +0 -102
- package/src/lib/components/iframes/iframe.service.ts +0 -59
- package/src/lib/components/iframes/typed-event-message.ts +0 -66
- package/src/lib/components/infinitescroll/elder-infinite-autocomplete.directive.ts +0 -79
- package/src/lib/components/infinitescroll/elder-infinite-scroll.directive.ts +0 -187
- package/src/lib/components/infinitescroll/elder-infinite-scroll.module.ts +0 -32
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.ts +0 -11
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.html +0 -66
- package/src/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.ts +0 -233
- package/src/lib/components/input/autocomplete/elder-autocomplete-many.directive.ts +0 -244
- package/src/lib/components/input/autocomplete/elder-autocomplete.directive.ts +0 -145
- package/src/lib/components/input/autocomplete/elder-autocomplete.module.ts +0 -39
- package/src/lib/components/input/autocomplete/many/word-position-finder.spec.ts +0 -74
- package/src/lib/components/input/autocomplete/many/word-position-finder.ts +0 -76
- package/src/lib/components/input/public_api.ts +0 -3
- package/src/lib/components/labels/elder-labels.module.ts +0 -22
- package/src/lib/components/labels/labels-input/labels-input.component.html +0 -44
- package/src/lib/components/labels/labels-input/labels-input.component.ts +0 -255
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.html +0 -64
- package/src/lib/components/measures/dimensions-input/elder-dimensions-input.component.ts +0 -293
- package/src/lib/components/measures/directives/elder-unit-select.directive.ts +0 -70
- package/src/lib/components/measures/elder-measures.module.ts +0 -76
- package/src/lib/components/measures/elder-quantity-transform.pipe.ts +0 -46
- package/src/lib/components/measures/elder-quantity.pipe.ts +0 -102
- package/src/lib/components/measures/elder-unit.service.ts +0 -135
- package/src/lib/components/measures/model/dimensions.ts +0 -40
- package/src/lib/components/measures/model/quantity.ts +0 -19
- package/src/lib/components/measures/model/unit-dimension.ts +0 -16
- package/src/lib/components/measures/model/unit-registry.ts +0 -110
- package/src/lib/components/measures/model/unit.ts +0 -192
- package/src/lib/components/measures/public_api.ts +0 -9
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.html +0 -63
- package/src/lib/components/measures/quantity-input/elder-quantity-input.component.ts +0 -221
- package/src/lib/components/measures/util/elder-quantity.service.ts +0 -313
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.html +0 -82
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.ts +0 -221
- package/src/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.ts +0 -37
- package/src/lib/components/navigation/bread-crumbs/path/path.ts +0 -49
- package/src/lib/components/navigation/nav/elder-nav.module.ts +0 -35
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.html +0 -30
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.ts +0 -94
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.html +0 -86
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.ts +0 -78
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.html +0 -5
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.ts +0 -11
- package/src/lib/components/navigation/toolbar/elder-toolbar-column.directive.ts +0 -53
- package/src/lib/components/navigation/toolbar/elder-toolbar.module.ts +0 -51
- package/src/lib/components/navigation/toolbar/elder-toolbar.service.ts +0 -77
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.html +0 -47
- package/src/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.ts +0 -78
- package/src/lib/components/navigation/toolbar/toolbar-column-position.ts +0 -20
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.html +0 -1
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.ts +0 -54
- package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.ts +0 -107
- package/src/lib/components/overlays/elder-overlay-origin.directive.ts +0 -45
- package/src/lib/components/overlays/elder-overlay-trigger.directive.ts +0 -71
- package/src/lib/components/overlays/elder-overlay.component.ts +0 -262
- package/src/lib/components/overlays/elder-overlay.module.ts +0 -29
- package/src/lib/components/panels/card-panel/elder-card-panel.component.html +0 -4
- package/src/lib/components/panels/card-panel/elder-card-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.html +0 -4
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.ts +0 -11
- package/src/lib/components/panels/elder-panel.module.ts +0 -28
- package/src/lib/components/panels/flat/elder-panel.component.html +0 -2
- package/src/lib/components/panels/flat/elder-panel.component.ts +0 -30
- package/src/lib/components/select/auto/elder-auto-select-first.directive.ts +0 -87
- package/src/lib/components/select/auto/elder-select-first-util.ts +0 -98
- package/src/lib/components/select/elder-select-base.ts +0 -355
- package/src/lib/components/select/elder-select-chip.directive.ts +0 -32
- package/src/lib/components/select/elder-select-on-tab.directive.ts +0 -150
- package/src/lib/components/select/elder-select-value.directive.ts +0 -9
- package/src/lib/components/select/elder-select.module.ts +0 -93
- package/src/lib/components/select/multi/elder-multi-select-base.ts +0 -451
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.html +0 -89
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.ts +0 -316
- package/src/lib/components/select/multi/elder-multi-select-form-field.ts +0 -80
- package/src/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.ts +0 -102
- package/src/lib/components/select/popup/selection-model-popup.directive.ts +0 -145
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.html +0 -18
- package/src/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.ts +0 -56
- package/src/lib/components/select/public_api.ts +0 -5
- package/src/lib/components/select/single/elder-clear-select.directive.ts +0 -64
- package/src/lib/components/select/single/elder-select/elder-select.component.html +0 -90
- package/src/lib/components/select/single/elder-select/elder-select.component.ts +0 -530
- package/src/lib/components/select/single/elder-select-form-field.ts +0 -57
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.html +0 -13
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.ts +0 -169
- package/src/lib/components/select-chip-list/elder-chip-list-select.module.ts +0 -30
- package/src/lib/components/select-list/elder-select-list.module.ts +0 -26
- package/src/lib/components/select-list/select-list/elder-select-list.component.html +0 -5
- package/src/lib/components/select-list/select-list/elder-select-list.component.ts +0 -91
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.html +0 -29
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.ts +0 -135
- package/src/lib/components/shell/drawers/drawer-outlet-binding.ts +0 -73
- package/src/lib/components/shell/drawers/elder-route-outlet-drawer.service.ts +0 -137
- package/src/lib/components/shell/drawers/elder-router-outlet.service.ts +0 -145
- package/src/lib/components/shell/elder-shell-slot.directive.ts +0 -61
- package/src/lib/components/shell/elder-shell.module.ts +0 -68
- package/src/lib/components/shell/elder-shell.service.ts +0 -176
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.html +0 -25
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.ts +0 -89
- package/src/lib/components/shell/shell/elder-shell.component.html +0 -86
- package/src/lib/components/shell/shell/elder-shell.component.ts +0 -243
- package/src/lib/components/shell/shell-content-slot.ts +0 -8
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.html +0 -4
- package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.ts +0 -153
- package/src/lib/components/tabs/elder-tab/elder-tab.directive.ts +0 -31
- package/src/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.ts +0 -320
- package/src/lib/components/tabs/elder-tab.module.ts +0 -24
- package/src/lib/components/theme/elder-theme-applier.directive.ts +0 -73
- package/src/lib/components/theme/elder-theme-preference.service.ts +0 -79
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.html +0 -9
- package/src/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.ts +0 -86
- package/src/lib/components/theme/elder-theme.directive.ts +0 -65
- package/src/lib/components/theme/elder-theme.module.ts +0 -52
- package/src/lib/components/theme/elder-theme.service.ts +0 -151
- package/src/lib/components/theme/known-elder-themes.ts +0 -17
- package/src/lib/components/theme/theme-spec.ts +0 -32
- package/src/lib/components/time/date-adapters/custom-date-adapter.ts +0 -34
- package/src/lib/components/time/duration/duration-bucket.ts +0 -143
- package/src/lib/components/time/duration/duration-format.ts +0 -346
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.html +0 -51
- package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.ts +0 -132
- package/src/lib/components/time/duration/iso-duration-str.ts +0 -5
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.html +0 -29
- package/src/lib/components/time/elder-date-switcher/elder-date-switcher.component.ts +0 -120
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.html +0 -15
- package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.ts +0 -93
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.html +0 -92
- package/src/lib/components/time/elder-interval-input/elder-interval-input.component.ts +0 -222
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.html +0 -40
- package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.ts +0 -213
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.html +0 -18
- package/src/lib/components/time/elder-local-time-input/elder-local-time-input.component.ts +0 -98
- package/src/lib/components/time/elder-time.module.ts +0 -89
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.html +0 -40
- package/src/lib/components/time/period/elder-period-input/elder-period-input.component.ts +0 -148
- package/src/lib/components/time/period/period-bucket.ts +0 -51
- package/src/lib/components/time/period/period-format.ts +0 -127
- package/src/lib/components/time/public_api.ts +0 -8
- package/src/lib/components/toasts/elder-toast.module.ts +0 -21
- package/src/lib/components/toasts/elder-toast.service.ts +0 -244
- package/src/lib/components/toasts/standard-toast/standard-toast.component.html +0 -34
- package/src/lib/components/toasts/standard-toast/standard-toast.component.ts +0 -80
- package/src/lib/components/toasts/toast-type.ts +0 -5
- package/src/lib/components/toasts/toast.ts +0 -12
- package/src/lib/components/url-fragment/elder-url-fragment.module.ts +0 -34
- package/src/lib/components/url-fragment/elder-url-fragment.ts +0 -10
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.html +0 -25
- package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.ts +0 -107
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.html +0 -1
- package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.ts +0 -81
- package/src/lib/components/viewers/elder-viewers.module.ts +0 -18
- package/src/lib/features/event-source/elder-event-source.service.ts +0 -71
- package/src/lib/features/event-source/public_api.ts +0 -3
- package/src/lib/features/event-source/reactive-event-source.ts +0 -252
- package/src/lib/features/kafent/access-token-provider.ts +0 -21
- package/src/lib/features/kafent/kafent-config.ts +0 -42
- package/src/lib/features/kafent/kafent-event-stream.ts +0 -48
- package/src/lib/features/kafent/kafent-event.service.ts +0 -128
- package/src/lib/features/kafent/kafent-event.ts +0 -14
- package/src/lib/features/kafent/kafent-live-event-request.ts +0 -75
- package/src/lib/features/kafent/kafent.module.ts +0 -61
- package/src/lib/features/kafent/sse/kafent-event-stream-sse.service.ts +0 -167
- package/src/lib/features/kafent/sse/kafent-topic-sse.ts +0 -145
- package/src/lib/features/public_api.ts +0 -4
- package/src/lib/i18n/elder-composite-translation-loader.ts +0 -14
- package/src/lib/i18n/elder-starter-translation-loader.ts +0 -20
- package/src/lib/pipes/bytes.pipe.ts +0 -18
- package/src/lib/pipes/elder-pipes.module.ts +0 -51
- package/src/lib/pipes/elder-repeat.pipe.ts +0 -16
- package/src/lib/pipes/elder-round.pipe.ts +0 -37
- package/src/lib/pipes/elder-safe-url.pipe.ts +0 -12
- package/src/lib/pipes/elder-truncate.pipe.ts +0 -45
- package/src/lib/pipes/iso-duration.pipe.ts +0 -64
- package/src/lib/pipes/iso-interval-parse.pipe.ts +0 -61
- package/src/lib/pipes/iso-interval.pipe.ts +0 -146
- package/src/lib/pipes/public_api.ts +0 -3
- package/src/lib/pipes/time-ago.pipe.ts +0 -88
- package/src/lib/pipes/time-duration.pipe.ts +0 -81
- package/src/lib/pipes/weight.pipe.ts +0 -45
- package/src/public_api.ts +0 -8
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -33
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { DataContextBase } from './data-context-base';
|
|
2
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
+
/**
|
|
4
|
+
* Extends a simple flat list data-context with infinite-scroll pagination support.
|
|
5
|
+
*
|
|
6
|
+
*/
|
|
7
|
+
export class DataContextContinuableBase extends DataContextBase {
|
|
8
|
+
/***************************************************************************
|
|
9
|
+
* *
|
|
10
|
+
* Constructors *
|
|
11
|
+
* *
|
|
12
|
+
**************************************************************************/
|
|
13
|
+
constructor(dataSource, chunkSize, indexFn, localApply, localSort) {
|
|
14
|
+
super(dataSource, indexFn, localApply, localSort);
|
|
15
|
+
/***************************************************************************
|
|
16
|
+
* *
|
|
17
|
+
* Fields *
|
|
18
|
+
* *
|
|
19
|
+
**************************************************************************/
|
|
20
|
+
this.cblogger = LoggerFactory.getLogger(this.constructor.name);
|
|
21
|
+
this._chunkSize = chunkSize;
|
|
22
|
+
}
|
|
23
|
+
/***************************************************************************
|
|
24
|
+
* *
|
|
25
|
+
* Public API *
|
|
26
|
+
* *
|
|
27
|
+
**************************************************************************/
|
|
28
|
+
loadAll(sorts, filters) {
|
|
29
|
+
this.cblogger.debug('Starting to load all data ...');
|
|
30
|
+
// load first page
|
|
31
|
+
this.start(sorts, filters)
|
|
32
|
+
.subscribe(() => {
|
|
33
|
+
this.cblogger.debug('First page has been loaded. Loading remaining data ...');
|
|
34
|
+
// load rest in a recursive manner
|
|
35
|
+
this.loadAllRec();
|
|
36
|
+
}, err => {
|
|
37
|
+
this.onError(err);
|
|
38
|
+
this.cblogger.error('Failed to load first page of load all procedure!', err);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
get chunkSize() {
|
|
42
|
+
return this._chunkSize;
|
|
43
|
+
}
|
|
44
|
+
set chunkSize(size) {
|
|
45
|
+
if (this._chunkSize !== size) {
|
|
46
|
+
this._chunkSize = size;
|
|
47
|
+
this.onChunkSizeChanged(size);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/***************************************************************************
|
|
51
|
+
* *
|
|
52
|
+
* Private Methods *
|
|
53
|
+
* *
|
|
54
|
+
**************************************************************************/
|
|
55
|
+
onChunkSizeChanged(newSize) { }
|
|
56
|
+
loadAllRec() {
|
|
57
|
+
this.loadMore()
|
|
58
|
+
.subscribe(() => {
|
|
59
|
+
this.cblogger.debug('Loading data chunk finished, loading next...');
|
|
60
|
+
this.loadAllRec();
|
|
61
|
+
}, err => {
|
|
62
|
+
this.onError(err);
|
|
63
|
+
this.cblogger.error('Loading all failed!', err);
|
|
64
|
+
}, () => {
|
|
65
|
+
this.cblogger.info('All data loaded completely.');
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBR3BELE9BQU8sRUFBUyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQU0zRDs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLDBCQUE4QixTQUFRLGVBQWtCO0lBWTVFOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQTBCLEVBQzFCLFNBQWlCLEVBQ2pCLE9BQTJCLEVBQzNCLFVBQWdDLEVBQ2hDLFNBQThDO1FBRTlDLEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztRQXZCcEQ7Ozs7b0ZBSTRFO1FBRTNELGFBQVEsR0FBVyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFrQmpGLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsT0FBTyxDQUFDLEtBQWMsRUFBRSxPQUFrQjtRQUUvQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBRXJELGtCQUFrQjtRQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUM7YUFDdkIsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7WUFDOUUsa0NBQWtDO1lBQ2xDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGtEQUFrRCxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsU0FBUyxDQUFDLElBQVk7UUFDL0IsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksRUFBRTtZQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN2QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLGtCQUFrQixDQUFDLE9BQWUsSUFBVyxDQUFDO0lBRWhELFVBQVU7UUFDaEIsSUFBSSxDQUFDLFFBQVEsRUFBRTthQUNaLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xELENBQUMsRUFBRSxHQUFHLEVBQUU7WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUtGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEYXRhQ29udGV4dEJhc2V9IGZyb20gJy4vZGF0YS1jb250ZXh0LWJhc2UnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi9maWx0ZXJzL2ZpbHRlcic7XG5pbXBvcnQge0xvZ2dlciwgTG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7SURhdGFDb250ZXh0Q29udGludWFibGV9IGZyb20gJy4vZGF0YS1jb250ZXh0JztcbmltcG9ydCB7SURhdGFTb3VyY2V9IGZyb20gJy4uL2RhdGFzb3VyY2UvZGF0YS1zb3VyY2UnO1xuXG5cbi8qKlxuICogRXh0ZW5kcyBhIHNpbXBsZSBmbGF0IGxpc3QgZGF0YS1jb250ZXh0IHdpdGggaW5maW5pdGUtc2Nyb2xsIHBhZ2luYXRpb24gc3VwcG9ydC5cbiAqXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZTxUPiBleHRlbmRzIERhdGFDb250ZXh0QmFzZTxUPiBpbXBsZW1lbnRzIElEYXRhQ29udGV4dENvbnRpbnVhYmxlPFQ+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGNibG9nZ2VyOiBMb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX2NodW5rU2l6ZTogbnVtYmVyO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBkYXRhU291cmNlOiBJRGF0YVNvdXJjZTxUPixcbiAgICBjaHVua1NpemU6IG51bWJlcixcbiAgICBpbmRleEZuOiAoKGl0ZW06IFQpID0+IGFueSksXG4gICAgbG9jYWxBcHBseTogKChkYXRhOiBUW10pID0+IFRbXSksXG4gICAgbG9jYWxTb3J0OiAoKGRhdGE6IFRbXSwgc29ydHM6IFNvcnRbXSkgPT4gVFtdKVxuICApIHtcbiAgICBzdXBlcihkYXRhU291cmNlLCBpbmRleEZuLCBsb2NhbEFwcGx5LCBsb2NhbFNvcnQpO1xuICAgIHRoaXMuX2NodW5rU2l6ZSA9IGNodW5rU2l6ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBsb2FkQWxsKHNvcnRzPzogU29ydFtdLCBmaWx0ZXJzPzogRmlsdGVyW10pOiB2b2lkIHtcblxuICAgIHRoaXMuY2Jsb2dnZXIuZGVidWcoJ1N0YXJ0aW5nIHRvIGxvYWQgYWxsIGRhdGEgLi4uJyk7XG5cbiAgICAvLyBsb2FkIGZpcnN0IHBhZ2VcbiAgICB0aGlzLnN0YXJ0KHNvcnRzLCBmaWx0ZXJzKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2Jsb2dnZXIuZGVidWcoJ0ZpcnN0IHBhZ2UgaGFzIGJlZW4gbG9hZGVkLiBMb2FkaW5nIHJlbWFpbmluZyBkYXRhIC4uLicpO1xuICAgICAgICAvLyBsb2FkIHJlc3QgaW4gYSByZWN1cnNpdmUgbWFubmVyXG4gICAgICAgIHRoaXMubG9hZEFsbFJlYygpO1xuICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgdGhpcy5vbkVycm9yKGVycik7XG4gICAgICAgIHRoaXMuY2Jsb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGZpcnN0IHBhZ2Ugb2YgbG9hZCBhbGwgcHJvY2VkdXJlIScsIGVycik7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2h1bmtTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2NodW5rU2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY2h1bmtTaXplKHNpemU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9jaHVua1NpemUgIT09IHNpemUpIHtcbiAgICAgIHRoaXMuX2NodW5rU2l6ZSA9IHNpemU7XG4gICAgICB0aGlzLm9uQ2h1bmtTaXplQ2hhbmdlZChzaXplKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgb25DaHVua1NpemVDaGFuZ2VkKG5ld1NpemU6IG51bWJlcik6IHZvaWQgeyAgfVxuXG4gIHByaXZhdGUgbG9hZEFsbFJlYygpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRNb3JlKClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNibG9nZ2VyLmRlYnVnKCdMb2FkaW5nIGRhdGEgY2h1bmsgZmluaXNoZWQsIGxvYWRpbmcgbmV4dC4uLicpO1xuICAgICAgICB0aGlzLmxvYWRBbGxSZWMoKTtcbiAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgIHRoaXMub25FcnJvcihlcnIpO1xuICAgICAgICB0aGlzLmNibG9nZ2VyLmVycm9yKCdMb2FkaW5nIGFsbCBmYWlsZWQhJywgZXJyKTtcbiAgICAgIH0sICgpID0+IHtcbiAgICAgICAgdGhpcy5jYmxvZ2dlci5pbmZvKCdBbGwgZGF0YSBsb2FkZWQgY29tcGxldGVseS4nKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IGxvYWRNb3JlKCk6IE9ic2VydmFibGU8YW55PjtcbiAgcHVibGljIGFic3RyYWN0IGdldCBoYXNNb3JlRGF0YVNuYXBzaG90KCk6IGJvb2xlYW47XG4gIHB1YmxpYyBhYnN0cmFjdCBnZXQgaGFzTW9yZURhdGEoKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { combineLatest, EMPTY, Subject } from 'rxjs';
|
|
2
|
+
import { Pageable } from '../page';
|
|
3
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
4
|
+
import { DataContextContinuableBase } from './data-context-continuable-base';
|
|
5
|
+
import { first, map, takeUntil } from 'rxjs/operators';
|
|
6
|
+
/**
|
|
7
|
+
* Extends a simple flat list data-context with infinite-scroll pagination support.
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
10
|
+
export class DataContextContinuablePaged extends DataContextContinuableBase {
|
|
11
|
+
/***************************************************************************
|
|
12
|
+
* *
|
|
13
|
+
* Constructors *
|
|
14
|
+
* *
|
|
15
|
+
**************************************************************************/
|
|
16
|
+
constructor(dataSource, pageSize, indexFn, localApply, localSort) {
|
|
17
|
+
super(dataSource, pageSize, indexFn, localApply, localSort);
|
|
18
|
+
/***************************************************************************
|
|
19
|
+
* *
|
|
20
|
+
* Fields *
|
|
21
|
+
* *
|
|
22
|
+
**************************************************************************/
|
|
23
|
+
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
24
|
+
this._pageCache = new Map();
|
|
25
|
+
this._latestPage = 0;
|
|
26
|
+
this._hasMoreData = combineLatest([this.total, this.data]).pipe(map(([total, data]) => this.checkHasMoreData(total, data)), takeUntil(this.unsubscribe$));
|
|
27
|
+
}
|
|
28
|
+
/***************************************************************************
|
|
29
|
+
* *
|
|
30
|
+
* Properties *
|
|
31
|
+
* *
|
|
32
|
+
**************************************************************************/
|
|
33
|
+
get dataSource() {
|
|
34
|
+
return super.dataSource;
|
|
35
|
+
}
|
|
36
|
+
/***************************************************************************
|
|
37
|
+
* *
|
|
38
|
+
* Public API *
|
|
39
|
+
* *
|
|
40
|
+
**************************************************************************/
|
|
41
|
+
/**
|
|
42
|
+
* Load the next chunk of data.
|
|
43
|
+
* Useful for infinite scroll like data flows.
|
|
44
|
+
*
|
|
45
|
+
*/
|
|
46
|
+
loadMore() {
|
|
47
|
+
if (this.hasMoreDataSnapshot) {
|
|
48
|
+
this.logger.info('Loading more...' + this._latestPage);
|
|
49
|
+
if (this.loadingSnapshot) {
|
|
50
|
+
return EMPTY;
|
|
51
|
+
}
|
|
52
|
+
const nextPage = this._latestPage + 1;
|
|
53
|
+
return this.fetchPage(nextPage, this.chunkSize);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.logger.debug('Cannot load more data, since no more data available.');
|
|
57
|
+
return EMPTY;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
get hasMoreData() {
|
|
61
|
+
return this._hasMoreData;
|
|
62
|
+
}
|
|
63
|
+
get hasMoreDataSnapshot() {
|
|
64
|
+
return this.checkHasMoreData(this.totalSnapshot, this.dataSnapshot);
|
|
65
|
+
}
|
|
66
|
+
/***************************************************************************
|
|
67
|
+
* *
|
|
68
|
+
* Private Methods *
|
|
69
|
+
* *
|
|
70
|
+
**************************************************************************/
|
|
71
|
+
checkHasMoreData(total, data) {
|
|
72
|
+
if (total) {
|
|
73
|
+
return total > data.length;
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
onChunkSizeChanged(newSize) {
|
|
78
|
+
this.reload();
|
|
79
|
+
}
|
|
80
|
+
reloadInternal() {
|
|
81
|
+
// Since continuable data-contexts are appending data,
|
|
82
|
+
// we need to clear it for a reload.
|
|
83
|
+
this.clearAll(true);
|
|
84
|
+
return this.fetchPage(0, this.chunkSize, true);
|
|
85
|
+
}
|
|
86
|
+
clearAll(silent = false) {
|
|
87
|
+
super.clearAll(silent);
|
|
88
|
+
this._pageCache = new Map();
|
|
89
|
+
this._latestPage = 0;
|
|
90
|
+
}
|
|
91
|
+
fetchPage(pageIndex, pageSize, clear = false) {
|
|
92
|
+
const subject = new Subject();
|
|
93
|
+
const pageRequest = new Pageable(pageIndex, pageSize, this.sort.sortsSnapshot);
|
|
94
|
+
if (this._pageCache.has(pageIndex)) {
|
|
95
|
+
// Page already loaded - skipping request!
|
|
96
|
+
this.logger.trace('Skipping fetching page since its already in page observable cache.');
|
|
97
|
+
subject.next();
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
this.onLoading();
|
|
101
|
+
this.logger.debug(`Loading page ${pageIndex} using pageable:`, pageRequest);
|
|
102
|
+
const pageObs = this.dataSource.findAllPaged(pageRequest, this.filter.filtersSnapshot);
|
|
103
|
+
this._pageCache.set(pageIndex, pageObs);
|
|
104
|
+
pageObs.subscribe((page) => {
|
|
105
|
+
this.logger.debug('Got page data:', page);
|
|
106
|
+
this.populatePageData(page, clear);
|
|
107
|
+
if (this._latestPage < page.number) {
|
|
108
|
+
this._latestPage = page.number; // TODO This might cause that pages are skipped
|
|
109
|
+
}
|
|
110
|
+
subject.next();
|
|
111
|
+
this.onIdle();
|
|
112
|
+
}, err => {
|
|
113
|
+
this.onError(err);
|
|
114
|
+
this.setData([]);
|
|
115
|
+
this.setTotal(0);
|
|
116
|
+
this.logger.error('Failed to query data', err);
|
|
117
|
+
subject.error(err);
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
return subject.pipe(first());
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Load the data from the given page into the current data context
|
|
124
|
+
*/
|
|
125
|
+
populatePageData(page, clear) {
|
|
126
|
+
try {
|
|
127
|
+
this.setTotal(page.totalElements);
|
|
128
|
+
const start = page.number * page.size;
|
|
129
|
+
const newData = clear ? [] : [...this.dataSnapshot];
|
|
130
|
+
for (let i = 0; i < page.content.length; i++) {
|
|
131
|
+
const item = page.content[i];
|
|
132
|
+
newData[i + start] = item;
|
|
133
|
+
this.indexItem(item);
|
|
134
|
+
}
|
|
135
|
+
this.setData(newData, true);
|
|
136
|
+
}
|
|
137
|
+
catch (err) {
|
|
138
|
+
this.onError(err);
|
|
139
|
+
this.logger.error('Failed to populate data with page', page, err);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXBhZ2VkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1jb250aW51YWJsZS1wYWdlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsYUFBYSxFQUFFLEtBQUssRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0QsT0FBTyxFQUFPLFFBQVEsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUN2QyxPQUFPLEVBQVMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFJckQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLDJCQUErQixTQUFRLDBCQUE2QjtJQWU3RTs7OztnRkFJNEU7SUFFNUUsWUFDSSxVQUErQixFQUMvQixRQUFnQixFQUNoQixPQUEyQixFQUMzQixVQUFnQyxFQUNoQyxTQUE4QztRQUU5QyxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBMUJoRTs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFXLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6RSxlQUFVLEdBQXFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDekQsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFtQnBCLElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzdELEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQzFELFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQzdCLENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsVUFBVTtRQUNuQixPQUE0QixLQUFLLENBQUMsVUFBVSxDQUFDO0lBQy9DLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUU7Ozs7T0FJRztJQUNJLFFBQVE7UUFDWCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFdkQsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO2dCQUFFLE9BQU8sS0FBSyxDQUFDO2FBQUU7WUFDM0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7WUFDdEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDbkQ7YUFBTTtZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7WUFDMUUsT0FBTyxLQUFLLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBVyxtQkFBbUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVwRSxnQkFBZ0IsQ0FBQyxLQUF5QixFQUFFLElBQVM7UUFDM0QsSUFBSSxLQUFLLEVBQUU7WUFDVCxPQUFPLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQzVCO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRVMsa0JBQWtCLENBQUMsT0FBZTtRQUN4QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVTLGNBQWM7UUFFdEIsc0RBQXNEO1FBQ3RELG9DQUFvQztRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRVMsUUFBUSxDQUFDLE1BQU0sR0FBRyxLQUFLO1FBQzdCLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxTQUFTLENBQUMsU0FBaUIsRUFBRSxRQUFnQixFQUFFLEtBQUssR0FBRyxLQUFLO1FBRWhFLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRS9FLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDaEMsMENBQTBDO1lBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG9FQUFvRSxDQUFDLENBQUM7WUFDeEYsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2xCO2FBQU07WUFFSCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLFNBQVMsa0JBQWtCLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFFNUUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7WUFFdkYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRXhDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFhLEVBQUUsRUFBRTtnQkFHaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBRTFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBRW5DLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFO29CQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQywrQ0FBK0M7aUJBQ2xGO2dCQUVELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDZixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSyxnQkFBZ0IsQ0FBQyxJQUFhLEVBQUUsS0FBYztRQUNsRCxJQUFJO1lBQ0EsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBRXRDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3BELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDMUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDN0IsT0FBTyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDeEI7WUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztTQUMvQjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDckU7SUFDTCxDQUFDO0NBR0oiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgRU1QVFksIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtQYWdlLCBQYWdlYWJsZX0gZnJvbSAnLi4vcGFnZSc7XG5pbXBvcnQge0xvZ2dlciwgTG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZX0gZnJvbSAnLi9kYXRhLWNvbnRleHQtY29udGludWFibGUtYmFzZSc7XG5pbXBvcnQge2ZpcnN0LCBtYXAsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7SVBhZ2VkRGF0YVNvdXJjZX0gZnJvbSAnLi4vZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5cbi8qKlxuICogRXh0ZW5kcyBhIHNpbXBsZSBmbGF0IGxpc3QgZGF0YS1jb250ZXh0IHdpdGggaW5maW5pdGUtc2Nyb2xsIHBhZ2luYXRpb24gc3VwcG9ydC5cbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhQ29udGV4dENvbnRpbnVhYmxlUGFnZWQ8VD4gZXh0ZW5kcyBEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZTxUPiB7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IExvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgICBwcml2YXRlIF9wYWdlQ2FjaGU6IE1hcDxudW1iZXIsIE9ic2VydmFibGU8UGFnZTxUPj4+ID0gbmV3IE1hcCgpO1xuICAgIHByaXZhdGUgX2xhdGVzdFBhZ2UgPSAwO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaGFzTW9yZURhdGE6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIENvbnN0cnVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGRhdGFTb3VyY2U6IElQYWdlZERhdGFTb3VyY2U8VD4sXG4gICAgICAgIHBhZ2VTaXplOiBudW1iZXIsXG4gICAgICAgIGluZGV4Rm46ICgoaXRlbTogVCkgPT4gYW55KSxcbiAgICAgICAgbG9jYWxBcHBseTogKChkYXRhOiBUW10pID0+IFRbXSksXG4gICAgICAgIGxvY2FsU29ydDogKChkYXRhOiBUW10sIHNvcnRzOiBTb3J0W10pID0+IFRbXSlcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZGF0YVNvdXJjZSwgcGFnZVNpemUsIGluZGV4Rm4sIGxvY2FsQXBwbHksIGxvY2FsU29ydCk7XG5cbiAgICAgICAgdGhpcy5faGFzTW9yZURhdGEgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnRvdGFsLCB0aGlzLmRhdGFdKS5waXBlKFxuICAgICAgICAgIG1hcCgoW3RvdGFsLCBkYXRhXSkgPT4gdGhpcy5jaGVja0hhc01vcmVEYXRhKHRvdGFsLCBkYXRhKSksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogSVBhZ2VkRGF0YVNvdXJjZTxUPiB7XG4gICAgICByZXR1cm4gPElQYWdlZERhdGFTb3VyY2U8VD4+c3VwZXIuZGF0YVNvdXJjZTtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgLyoqXG4gICAgICogTG9hZCB0aGUgbmV4dCBjaHVuayBvZiBkYXRhLlxuICAgICAqIFVzZWZ1bCBmb3IgaW5maW5pdGUgc2Nyb2xsIGxpa2UgZGF0YSBmbG93cy5cbiAgICAgKlxuICAgICAqL1xuICAgIHB1YmxpYyBsb2FkTW9yZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBpZiAodGhpcy5oYXNNb3JlRGF0YVNuYXBzaG90KSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKCdMb2FkaW5nIG1vcmUuLi4nICsgdGhpcy5fbGF0ZXN0UGFnZSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmxvYWRpbmdTbmFwc2hvdCkgeyByZXR1cm4gRU1QVFk7IH1cbiAgICAgICAgICAgIGNvbnN0IG5leHRQYWdlID0gdGhpcy5fbGF0ZXN0UGFnZSArIDE7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaFBhZ2UobmV4dFBhZ2UsIHRoaXMuY2h1bmtTaXplKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdDYW5ub3QgbG9hZCBtb3JlIGRhdGEsIHNpbmNlIG5vIG1vcmUgZGF0YSBhdmFpbGFibGUuJyk7XG4gICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhhc01vcmVEYXRhKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2hhc01vcmVEYXRhO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzTW9yZURhdGFTbmFwc2hvdCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tIYXNNb3JlRGF0YSh0aGlzLnRvdGFsU25hcHNob3QsIHRoaXMuZGF0YVNuYXBzaG90KTtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgcHJpdmF0ZSBjaGVja0hhc01vcmVEYXRhKHRvdGFsOiBudW1iZXIgfCB1bmRlZmluZWQsIGRhdGE6IFRbXSk6IGJvb2xlYW4ge1xuICAgICAgaWYgKHRvdGFsKSB7XG4gICAgICAgIHJldHVybiB0b3RhbCA+IGRhdGEubGVuZ3RoO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkNodW5rU2l6ZUNoYW5nZWQobmV3U2l6ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlbG9hZEludGVybmFsKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICAgIC8vIFNpbmNlIGNvbnRpbnVhYmxlIGRhdGEtY29udGV4dHMgYXJlIGFwcGVuZGluZyBkYXRhLFxuICAgICAgLy8gd2UgbmVlZCB0byBjbGVhciBpdCBmb3IgYSByZWxvYWQuXG4gICAgICB0aGlzLmNsZWFyQWxsKHRydWUpO1xuXG4gICAgICByZXR1cm4gdGhpcy5mZXRjaFBhZ2UoMCwgdGhpcy5jaHVua1NpemUsIHRydWUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjbGVhckFsbChzaWxlbnQgPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBzdXBlci5jbGVhckFsbChzaWxlbnQpO1xuICAgICAgICB0aGlzLl9wYWdlQ2FjaGUgPSBuZXcgTWFwKCk7XG4gICAgICAgIHRoaXMuX2xhdGVzdFBhZ2UgPSAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmV0Y2hQYWdlKHBhZ2VJbmRleDogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyLCBjbGVhciA9IGZhbHNlKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgICAgICBjb25zdCBwYWdlUmVxdWVzdCA9IG5ldyBQYWdlYWJsZShwYWdlSW5kZXgsIHBhZ2VTaXplLCB0aGlzLnNvcnQuc29ydHNTbmFwc2hvdCk7XG5cbiAgICAgICAgaWYgKHRoaXMuX3BhZ2VDYWNoZS5oYXMocGFnZUluZGV4KSkge1xuICAgICAgICAgICAgLy8gUGFnZSBhbHJlYWR5IGxvYWRlZCAtIHNraXBwaW5nIHJlcXVlc3QhXG4gICAgICAgICAgICB0aGlzLmxvZ2dlci50cmFjZSgnU2tpcHBpbmcgZmV0Y2hpbmcgcGFnZSBzaW5jZSBpdHMgYWxyZWFkeSBpbiBwYWdlIG9ic2VydmFibGUgY2FjaGUuJyk7XG4gICAgICAgICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgICAgdGhpcy5vbkxvYWRpbmcoKTtcblxuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYExvYWRpbmcgcGFnZSAke3BhZ2VJbmRleH0gdXNpbmcgcGFnZWFibGU6YCwgcGFnZVJlcXVlc3QpO1xuXG4gICAgICAgICAgICBjb25zdCBwYWdlT2JzID0gdGhpcy5kYXRhU291cmNlLmZpbmRBbGxQYWdlZChwYWdlUmVxdWVzdCwgdGhpcy5maWx0ZXIuZmlsdGVyc1NuYXBzaG90KTtcblxuICAgICAgICAgICAgdGhpcy5fcGFnZUNhY2hlLnNldChwYWdlSW5kZXgsIHBhZ2VPYnMpO1xuXG4gICAgICAgICAgICBwYWdlT2JzLnN1YnNjcmliZSgocGFnZTogUGFnZTxUPikgPT4ge1xuXG5cbiAgICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnR290IHBhZ2UgZGF0YTonLCBwYWdlKTtcblxuICAgICAgICAgICAgICAgIHRoaXMucG9wdWxhdGVQYWdlRGF0YShwYWdlLCBjbGVhcik7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fbGF0ZXN0UGFnZSA8IHBhZ2UubnVtYmVyKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2xhdGVzdFBhZ2UgPSBwYWdlLm51bWJlcjsgLy8gVE9ETyBUaGlzIG1pZ2h0IGNhdXNlIHRoYXQgcGFnZXMgYXJlIHNraXBwZWRcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uSWRsZSgpO1xuICAgICAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNldERhdGEoW10pO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0VG90YWwoMCk7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBxdWVyeSBkYXRhJywgZXJyKTtcbiAgICAgICAgICAgICAgICBzdWJqZWN0LmVycm9yKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzdWJqZWN0LnBpcGUoZmlyc3QoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZCB0aGUgZGF0YSBmcm9tIHRoZSBnaXZlbiBwYWdlIGludG8gdGhlIGN1cnJlbnQgZGF0YSBjb250ZXh0XG4gICAgICovXG4gICAgcHJpdmF0ZSBwb3B1bGF0ZVBhZ2VEYXRhKHBhZ2U6IFBhZ2U8VD4sIGNsZWFyOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnNldFRvdGFsKHBhZ2UudG90YWxFbGVtZW50cyk7XG4gICAgICAgICAgICBjb25zdCBzdGFydCA9IHBhZ2UubnVtYmVyICogcGFnZS5zaXplO1xuXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gY2xlYXIgPyBbXSA6IFsuLi50aGlzLmRhdGFTbmFwc2hvdF07XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhZ2UuY29udGVudC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBwYWdlLmNvbnRlbnRbaV07XG4gICAgICAgICAgICAgICAgbmV3RGF0YVtpICsgc3RhcnRdID0gaXRlbTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGV4SXRlbShpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc2V0RGF0YShuZXdEYXRhLCB0cnVlKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gcG9wdWxhdGUgZGF0YSB3aXRoIHBhZ2UnLCBwYWdlLCBlcnIpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
2
|
+
import { DataContextContinuableBase } from './data-context-continuable-base';
|
|
3
|
+
import { BehaviorSubject, EMPTY, Subject } from 'rxjs';
|
|
4
|
+
import { first, take } from 'rxjs/operators';
|
|
5
|
+
import { TokenChunkRequest } from '../token-chunk-request';
|
|
6
|
+
export class DataContextContinuableToken extends DataContextContinuableBase {
|
|
7
|
+
// protected nextContinuationToken?: string;
|
|
8
|
+
/***************************************************************************
|
|
9
|
+
* *
|
|
10
|
+
* Constructor *
|
|
11
|
+
* *
|
|
12
|
+
**************************************************************************/
|
|
13
|
+
constructor(dataSource, chunkSize, indexFn, localApply, localSort) {
|
|
14
|
+
super(dataSource, chunkSize, indexFn, localApply, localSort);
|
|
15
|
+
/***************************************************************************
|
|
16
|
+
* *
|
|
17
|
+
* Fields *
|
|
18
|
+
* *
|
|
19
|
+
**************************************************************************/
|
|
20
|
+
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
21
|
+
this._hasMoreData = new BehaviorSubject(false);
|
|
22
|
+
this._chunkCache = new Set();
|
|
23
|
+
}
|
|
24
|
+
/***************************************************************************
|
|
25
|
+
* *
|
|
26
|
+
* Properties *
|
|
27
|
+
* *
|
|
28
|
+
**************************************************************************/
|
|
29
|
+
get dataSource() {
|
|
30
|
+
return super.dataSource;
|
|
31
|
+
}
|
|
32
|
+
/***************************************************************************
|
|
33
|
+
* *
|
|
34
|
+
* Public API *
|
|
35
|
+
* *
|
|
36
|
+
**************************************************************************/
|
|
37
|
+
get hasMoreDataSnapshot() {
|
|
38
|
+
return this._hasMoreData.getValue();
|
|
39
|
+
}
|
|
40
|
+
get hasMoreData() {
|
|
41
|
+
return this._hasMoreData.asObservable();
|
|
42
|
+
}
|
|
43
|
+
loadMore() {
|
|
44
|
+
if (this.loadingSnapshot) {
|
|
45
|
+
this.logger.debug('Skipping load-more since already loading a chunk!');
|
|
46
|
+
return EMPTY;
|
|
47
|
+
}
|
|
48
|
+
const token = this._expectedChunkToken;
|
|
49
|
+
if (token && token.length > 0) {
|
|
50
|
+
return this.fetchNextChunk(token);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.logger.debug('Cannot load more data, since no more data available.');
|
|
54
|
+
return EMPTY;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/***************************************************************************
|
|
58
|
+
* *
|
|
59
|
+
* Protect API *
|
|
60
|
+
* *
|
|
61
|
+
**************************************************************************/
|
|
62
|
+
clearAll(silent = false) {
|
|
63
|
+
super.clearAll(silent);
|
|
64
|
+
this._chunkCache.clear();
|
|
65
|
+
this._hasMoreData.next(true);
|
|
66
|
+
this._expectedChunkToken = undefined;
|
|
67
|
+
}
|
|
68
|
+
reloadInternal() {
|
|
69
|
+
// Since continuable data-contexts are appending data,
|
|
70
|
+
// we need to clear it for a reload.
|
|
71
|
+
this.clearAll(true);
|
|
72
|
+
return this.fetchNextChunk(undefined);
|
|
73
|
+
}
|
|
74
|
+
fetchNextChunk(nextToken) {
|
|
75
|
+
const subject = new Subject();
|
|
76
|
+
nextToken = nextToken ? nextToken : undefined;
|
|
77
|
+
if (this._chunkCache.has(nextToken)) {
|
|
78
|
+
this.logger.debug('Skipping fetching chunk for token "' + nextToken + '" since its already in observable cache.');
|
|
79
|
+
subject.complete();
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
this.onLoading();
|
|
83
|
+
this._chunkCache.add(nextToken);
|
|
84
|
+
this.dataSource.findAllContinuable(new TokenChunkRequest(nextToken, this.filter.filtersSnapshot, this.sort.sortsSnapshot))
|
|
85
|
+
.pipe(first())
|
|
86
|
+
.subscribe(chunk => {
|
|
87
|
+
this.logger.debug('Got next chunk data:', chunk);
|
|
88
|
+
this._hasMoreData.next(chunk.hasMore);
|
|
89
|
+
this.chunkSize = chunk.chunkSize;
|
|
90
|
+
this.populateChunkData(chunk);
|
|
91
|
+
subject.next(chunk);
|
|
92
|
+
this.onIdle();
|
|
93
|
+
}, err => {
|
|
94
|
+
this.onError(err);
|
|
95
|
+
this.logger.error('Failed to query data', err);
|
|
96
|
+
this.setData([]);
|
|
97
|
+
this.setTotal(0);
|
|
98
|
+
subject.error(err);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
return subject.pipe(take(1));
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Load the data from the given page into the current data context
|
|
105
|
+
*/
|
|
106
|
+
populateChunkData(chunk) {
|
|
107
|
+
if (this.areTokenEqual(chunk.continuationToken, this._expectedChunkToken)) {
|
|
108
|
+
try {
|
|
109
|
+
this.setTotal(chunk.total);
|
|
110
|
+
if (chunk.continuationToken) {
|
|
111
|
+
// We had previous chunks so append to current data.
|
|
112
|
+
this.appendData(chunk.content);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
this.setData(chunk.content);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
this.onError(err);
|
|
120
|
+
this.logger.error('Failed to populate data with chunk', chunk, err);
|
|
121
|
+
}
|
|
122
|
+
this._expectedChunkToken = chunk.nextContinuationToken;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
this.logger.warn('Discarding continuable chunk (items: ' + chunk.content.length + ', token: ' + chunk.continuationToken + ' )' +
|
|
126
|
+
' as it does not match the expected contiunation-token: ' + this._expectedChunkToken);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
areTokenEqual(token1, token2) {
|
|
130
|
+
if (!token1 && !token2) {
|
|
131
|
+
return true;
|
|
132
|
+
}
|
|
133
|
+
return token1 === token2;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1jb250aW51YWJsZS10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFM0QsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFJekQsTUFBTSxPQUFPLDJCQUErQixTQUFRLDBCQUE2QjtJQWdCL0UsNENBQTRDO0lBRTVDOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQXFDLEVBQ3JDLFNBQWlCLEVBQ2pCLE9BQTJCLEVBQzNCLFVBQWdDLEVBQ2hDLFNBQThDO1FBRTlDLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUE1Qi9EOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQVcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhFLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkQsZ0JBQVcsR0FBMEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQW9CaEUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIsT0FBa0MsS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRU0sUUFBUTtRQUViLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBQ3ZFLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFFdkMsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25DO2FBQU07WUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1lBQzFFLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLFFBQVEsQ0FBQyxNQUFNLEdBQUcsS0FBSztRQUMvQixLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQztJQUN2QyxDQUFDO0lBRVMsY0FBYztRQUV0QixzREFBc0Q7UUFDdEQsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTyxjQUFjLENBQUMsU0FBa0I7UUFHdkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQXlCLENBQUM7UUFFckQsU0FBUyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFOUMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsR0FBRyxTQUFTLEdBQUcsMENBQTBDLENBQUMsQ0FBQztZQUNsSCxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDcEI7YUFBTTtZQUVMLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUVqQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVoQyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLElBQUksaUJBQWlCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7aUJBQ3ZILElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDYixTQUFTLENBQ1IsS0FBSyxDQUFDLEVBQUU7Z0JBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzlCLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckIsQ0FBQyxDQUNGLENBQUM7U0FDTDtRQUNELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUIsQ0FBQyxLQUE0QjtRQUNwRCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQ3pFLElBQUk7Z0JBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRTNCLElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO29CQUMzQixvREFBb0Q7b0JBQ3BELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUNoQztxQkFBTTtvQkFDTCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDN0I7YUFFRjtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQzthQUNyRTtZQUNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUM7U0FDeEQ7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEdBQUcsSUFBSTtnQkFDNUgseURBQXlELEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDekY7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQWUsRUFBRSxNQUFlO1FBQ3BELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQztTQUFFO1FBQ3hDLE9BQU8sTUFBTSxLQUFLLE1BQU0sQ0FBQztJQUMzQixDQUFDO0NBR0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvZ2dlciwgTG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtDb250aW51YWJsZUxpc3Rpbmd9IGZyb20gJy4uL2NvbnRpbnVhYmxlLWxpc3RpbmcnO1xuaW1wb3J0IHtEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZX0gZnJvbSAnLi9kYXRhLWNvbnRleHQtY29udGludWFibGUtYmFzZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgRU1QVFksIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaXJzdCwgdGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtUb2tlbkNodW5rUmVxdWVzdH0gZnJvbSAnLi4vdG9rZW4tY2h1bmstcmVxdWVzdCc7XG5pbXBvcnQge1NvcnR9IGZyb20gJy4uL3NvcnQnO1xuaW1wb3J0IHtJQ29udGludWFibGVEYXRhU291cmNlfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJztcblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0Q29udGludWFibGVUb2tlbjxUPiBleHRlbmRzIERhdGFDb250ZXh0Q29udGludWFibGVCYXNlPFQ+IHtcblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyOiBMb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2hhc01vcmVEYXRhID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NodW5rQ2FjaGU6IFNldDxzdHJpbmd8dW5kZWZpbmVkPiA9IG5ldyBTZXQoKTtcblxuICBwcml2YXRlIF9leHBlY3RlZENodW5rVG9rZW4/OiBzdHJpbmc7XG5cbiAgLy8gcHJvdGVjdGVkIG5leHRDb250aW51YXRpb25Ub2tlbj86IHN0cmluZztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhU291cmNlOiBJQ29udGludWFibGVEYXRhU291cmNlPFQ+LFxuICAgIGNodW5rU2l6ZTogbnVtYmVyLFxuICAgIGluZGV4Rm46ICgoaXRlbTogVCkgPT4gYW55KSxcbiAgICBsb2NhbEFwcGx5OiAoKGRhdGE6IFRbXSkgPT4gVFtdKSxcbiAgICBsb2NhbFNvcnQ6ICgoZGF0YTogVFtdLCBzb3J0czogU29ydFtdKSA9PiBUW10pXG4gICkge1xuICAgIHN1cGVyKGRhdGFTb3VyY2UsIGNodW5rU2l6ZSwgaW5kZXhGbiwgbG9jYWxBcHBseSwgbG9jYWxTb3J0KTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgZGF0YVNvdXJjZSgpOiBJQ29udGludWFibGVEYXRhU291cmNlPFQ+IHtcbiAgICByZXR1cm4gPElDb250aW51YWJsZURhdGFTb3VyY2U8VD4+c3VwZXIuZGF0YVNvdXJjZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgaGFzTW9yZURhdGFTbmFwc2hvdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faGFzTW9yZURhdGEuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzTW9yZURhdGEoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc01vcmVEYXRhLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGxvYWRNb3JlKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBpZiAodGhpcy5sb2FkaW5nU25hcHNob3QpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdTa2lwcGluZyBsb2FkLW1vcmUgc2luY2UgYWxyZWFkeSBsb2FkaW5nIGEgY2h1bmshJyk7XG4gICAgICByZXR1cm4gRU1QVFk7XG4gICAgfVxuXG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLl9leHBlY3RlZENodW5rVG9rZW47XG5cbiAgICBpZiAodG9rZW4gJiYgdG9rZW4ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2hOZXh0Q2h1bmsodG9rZW4pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2Fubm90IGxvYWQgbW9yZSBkYXRhLCBzaW5jZSBubyBtb3JlIGRhdGEgYXZhaWxhYmxlLicpO1xuICAgICAgcmV0dXJuIEVNUFRZO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm90ZWN0IEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjbGVhckFsbChzaWxlbnQgPSBmYWxzZSk6IHZvaWQge1xuICAgIHN1cGVyLmNsZWFyQWxsKHNpbGVudCk7XG4gICAgdGhpcy5fY2h1bmtDYWNoZS5jbGVhcigpO1xuICAgIHRoaXMuX2hhc01vcmVEYXRhLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlbG9hZEludGVybmFsKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICAvLyBTaW5jZSBjb250aW51YWJsZSBkYXRhLWNvbnRleHRzIGFyZSBhcHBlbmRpbmcgZGF0YSxcbiAgICAvLyB3ZSBuZWVkIHRvIGNsZWFyIGl0IGZvciBhIHJlbG9hZC5cbiAgICB0aGlzLmNsZWFyQWxsKHRydWUpO1xuXG4gICAgcmV0dXJuIHRoaXMuZmV0Y2hOZXh0Q2h1bmsodW5kZWZpbmVkKTtcbiAgfVxuXG4gIHByaXZhdGUgZmV0Y2hOZXh0Q2h1bmsobmV4dFRva2VuPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb250aW51YWJsZUxpc3Rpbmc8VD4+IHtcblxuXG4gICAgY29uc3Qgc3ViamVjdCA9IG5ldyBTdWJqZWN0PENvbnRpbnVhYmxlTGlzdGluZzxUPj4oKTtcblxuICAgIG5leHRUb2tlbiA9IG5leHRUb2tlbiA/IG5leHRUb2tlbiA6IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLl9jaHVua0NhY2hlLmhhcyhuZXh0VG9rZW4pKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnU2tpcHBpbmcgZmV0Y2hpbmcgY2h1bmsgZm9yIHRva2VuIFwiJyArIG5leHRUb2tlbiArICdcIiBzaW5jZSBpdHMgYWxyZWFkeSBpbiBvYnNlcnZhYmxlIGNhY2hlLicpO1xuICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xuICAgIH0gZWxzZSB7XG5cbiAgICAgIHRoaXMub25Mb2FkaW5nKCk7XG5cbiAgICAgIHRoaXMuX2NodW5rQ2FjaGUuYWRkKG5leHRUb2tlbik7XG5cbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5maW5kQWxsQ29udGludWFibGUobmV3IFRva2VuQ2h1bmtSZXF1ZXN0KG5leHRUb2tlbiwgdGhpcy5maWx0ZXIuZmlsdGVyc1NuYXBzaG90LCB0aGlzLnNvcnQuc29ydHNTbmFwc2hvdCkpXG4gICAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgY2h1bmsgPT4ge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0dvdCBuZXh0IGNodW5rIGRhdGE6JywgY2h1bmspO1xuICAgICAgICAgICAgdGhpcy5faGFzTW9yZURhdGEubmV4dChjaHVuay5oYXNNb3JlKTtcbiAgICAgICAgICAgIHRoaXMuY2h1bmtTaXplID0gY2h1bmsuY2h1bmtTaXplO1xuICAgICAgICAgICAgdGhpcy5wb3B1bGF0ZUNodW5rRGF0YShjaHVuayk7XG4gICAgICAgICAgICBzdWJqZWN0Lm5leHQoY2h1bmspO1xuICAgICAgICAgICAgdGhpcy5vbklkbGUoKTtcbiAgICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yKGVycik7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIHF1ZXJ5IGRhdGEnLCBlcnIpO1xuICAgICAgICAgICAgdGhpcy5zZXREYXRhKFtdKTtcbiAgICAgICAgICAgIHRoaXMuc2V0VG90YWwoMCk7XG4gICAgICAgICAgICBzdWJqZWN0LmVycm9yKGVycik7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gc3ViamVjdC5waXBlKHRha2UoMSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvYWQgdGhlIGRhdGEgZnJvbSB0aGUgZ2l2ZW4gcGFnZSBpbnRvIHRoZSBjdXJyZW50IGRhdGEgY29udGV4dFxuICAgKi9cbiAgcHJpdmF0ZSBwb3B1bGF0ZUNodW5rRGF0YShjaHVuazogQ29udGludWFibGVMaXN0aW5nPFQ+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYXJlVG9rZW5FcXVhbChjaHVuay5jb250aW51YXRpb25Ub2tlbiwgdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5zZXRUb3RhbChjaHVuay50b3RhbCk7XG5cbiAgICAgICAgaWYgKGNodW5rLmNvbnRpbnVhdGlvblRva2VuKSB7XG4gICAgICAgICAgLy8gV2UgaGFkIHByZXZpb3VzIGNodW5rcyBzbyBhcHBlbmQgdG8gY3VycmVudCBkYXRhLlxuICAgICAgICAgIHRoaXMuYXBwZW5kRGF0YShjaHVuay5jb250ZW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNldERhdGEoY2h1bmsuY29udGVudCk7XG4gICAgICAgIH1cblxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRoaXMub25FcnJvcihlcnIpO1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIHBvcHVsYXRlIGRhdGEgd2l0aCBjaHVuaycsIGNodW5rLCBlcnIpO1xuICAgICAgfVxuICAgICAgdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuID0gY2h1bmsubmV4dENvbnRpbnVhdGlvblRva2VuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdEaXNjYXJkaW5nIGNvbnRpbnVhYmxlIGNodW5rIChpdGVtczogJyArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgJywgdG9rZW46ICcgKyBjaHVuay5jb250aW51YXRpb25Ub2tlbiArICcgKScgK1xuICAgICAgICAnIGFzIGl0IGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBjb250aXVuYXRpb24tdG9rZW46ICcgKyB0aGlzLl9leHBlY3RlZENodW5rVG9rZW4pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXJlVG9rZW5FcXVhbCh0b2tlbjE/OiBzdHJpbmcsIHRva2VuMj86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdG9rZW4xICYmICF0b2tlbjIpIHsgcmV0dXJuIHRydWU7IH1cbiAgICByZXR1cm4gdG9rZW4xID09PSB0b2tlbjI7XG4gIH1cblxuXG59XG4iXX0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Allows making any kind of subscription which will be automatically unsubscribed
|
|
3
|
+
* upon data context closing/cleanup.
|
|
4
|
+
*/
|
|
5
|
+
export class DataContextLifeCycleBinding {
|
|
6
|
+
/***************************************************************************
|
|
7
|
+
* *
|
|
8
|
+
* Constructor *
|
|
9
|
+
* *
|
|
10
|
+
**************************************************************************/
|
|
11
|
+
constructor(_dataContext) {
|
|
12
|
+
this._dataContext = _dataContext;
|
|
13
|
+
if (_dataContext == null) {
|
|
14
|
+
throw new Error('dataContext must not be null!');
|
|
15
|
+
}
|
|
16
|
+
this._dataContext.data.subscribe(changed => { }, err => { }, () => this.unsubscribe());
|
|
17
|
+
}
|
|
18
|
+
/***************************************************************************
|
|
19
|
+
* *
|
|
20
|
+
* Public API *
|
|
21
|
+
* *
|
|
22
|
+
**************************************************************************/
|
|
23
|
+
unsubscribe() {
|
|
24
|
+
if (this._subscription) {
|
|
25
|
+
this._subscription.unsubscribe();
|
|
26
|
+
this._subscription = null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWxpZmUtY3ljbGUtYmluZGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBZ0IsMkJBQTJCO0lBVS9DOzs7O2dGQUk0RTtJQUU1RSxZQUNxQixZQUErQjtRQUEvQixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFFbEQsSUFBSSxZQUFZLElBQUksSUFBSSxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztTQUNsRDtRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FDOUIsT0FBTyxDQUFDLEVBQUUsR0FBRSxDQUFDLEVBQ2IsR0FBRyxDQUFDLEVBQUUsR0FBRSxDQUFDLEVBQ1QsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUN6QixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxXQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztDQVVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdWJzY3JpcHRpb24sIFVuc3Vic2NyaWJhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuL2RhdGEtY29udGV4dCc7XG5cbi8qKlxuICogQWxsb3dzIG1ha2luZyBhbnkga2luZCBvZiBzdWJzY3JpcHRpb24gd2hpY2ggd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHVuc3Vic2NyaWJlZFxuICogdXBvbiBkYXRhIGNvbnRleHQgY2xvc2luZy9jbGVhbnVwLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIGltcGxlbWVudHMgVW5zdWJzY3JpYmFibGUge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBfc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBfZGF0YUNvbnRleHQ6IElEYXRhQ29udGV4dDxhbnk+XG4gICkge1xuICAgIGlmIChfZGF0YUNvbnRleHQgPT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdkYXRhQ29udGV4dCBtdXN0IG5vdCBiZSBudWxsIScpO1xuICAgIH1cblxuICAgIHRoaXMuX2RhdGFDb250ZXh0LmRhdGEuc3Vic2NyaWJlKFxuICAgICAgY2hhbmdlZCA9PiB7fSxcbiAgICAgIGVyciA9PiB7fSxcbiAgICAgICgpID0+IHRoaXMudW5zdWJzY3JpYmUoKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgdW5zdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm90ZWN0ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzdWJzY3JpYmUoKTogdm9pZDtcblxufVxuIl19
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
2
|
+
import { DataContextBase } from './data-context-base';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { first } from 'rxjs/operators';
|
|
5
|
+
export class DataContextSimple extends DataContextBase {
|
|
6
|
+
/***************************************************************************
|
|
7
|
+
* *
|
|
8
|
+
* Constructor *
|
|
9
|
+
* *
|
|
10
|
+
**************************************************************************/
|
|
11
|
+
constructor(dataSource, indexFn, localApply, localSort) {
|
|
12
|
+
super(dataSource, indexFn, localApply, localSort);
|
|
13
|
+
/***************************************************************************
|
|
14
|
+
* *
|
|
15
|
+
* Fields *
|
|
16
|
+
* *
|
|
17
|
+
**************************************************************************/
|
|
18
|
+
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
19
|
+
}
|
|
20
|
+
/***************************************************************************
|
|
21
|
+
* *
|
|
22
|
+
* Properties *
|
|
23
|
+
* *
|
|
24
|
+
**************************************************************************/
|
|
25
|
+
get dataSource() {
|
|
26
|
+
return super.dataSource;
|
|
27
|
+
}
|
|
28
|
+
/***************************************************************************
|
|
29
|
+
* *
|
|
30
|
+
* Private methods *
|
|
31
|
+
* *
|
|
32
|
+
**************************************************************************/
|
|
33
|
+
reloadInternal() {
|
|
34
|
+
const subject = new Subject();
|
|
35
|
+
if (this.dataSource) {
|
|
36
|
+
this.onLoading();
|
|
37
|
+
this.dataSource.findAllFiltered(this.filter.filtersSnapshot, this.sort.sortsSnapshot)
|
|
38
|
+
.pipe(first())
|
|
39
|
+
.subscribe(list => {
|
|
40
|
+
this.onIdle();
|
|
41
|
+
this.setTotal(list.length);
|
|
42
|
+
this.setData(list);
|
|
43
|
+
this.log.debug('data-context: Got list data: ' + list.length);
|
|
44
|
+
subject.next();
|
|
45
|
+
}, err => {
|
|
46
|
+
this.onError(err);
|
|
47
|
+
this.clearAll();
|
|
48
|
+
this.log.error('data-context: Failed to query data', err);
|
|
49
|
+
subject.error(err);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.log.warn('data-context: Skipping data context load - no list fetcher present!');
|
|
54
|
+
subject.error(new Error('data-context: Skipping data context load - no list fetcher present!'));
|
|
55
|
+
}
|
|
56
|
+
return subject.pipe(first());
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNpbXBsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc2ltcGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsTUFBTSxPQUFPLGlCQUFxQixTQUFRLGVBQWtCO0lBVTFEOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQThCLEVBQzlCLE9BQTJCLEVBQzNCLFVBQWdDLEVBQ2hDLFNBQThDO1FBRTlDLEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztRQXBCcEQ7Ozs7b0ZBSTRFO1FBRTNELFFBQUcsR0FBVyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFlOUUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIsT0FBMkIsS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLGNBQWM7UUFFdEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFFbkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBRWpCLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2lCQUNsRixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ2IsU0FBUyxDQUNSLElBQUksQ0FBQyxFQUFFO2dCQUNMLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsK0JBQStCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUU5RCxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzFELE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckIsQ0FBQyxDQUFDLENBQUM7U0FDUjthQUFNO1lBQ0wsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUVBQXFFLENBQUMsQ0FBQztZQUNyRixPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLHFFQUFxRSxDQUFDLENBQUMsQ0FBQztTQUNqRztRQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9nZ2VyLCBMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0RhdGFDb250ZXh0QmFzZX0gZnJvbSAnLi9kYXRhLWNvbnRleHQtYmFzZSc7XG5pbXBvcnQge1NvcnR9IGZyb20gJy4uL3NvcnQnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Zmlyc3R9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SUxpc3REYXRhU291cmNlfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJztcblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U2ltcGxlPFQ+IGV4dGVuZHMgRGF0YUNvbnRleHRCYXNlPFQ+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZzogTG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhU291cmNlOiBJTGlzdERhdGFTb3VyY2U8VD4sXG4gICAgaW5kZXhGbjogKChpdGVtOiBUKSA9PiBhbnkpLFxuICAgIGxvY2FsQXBwbHk6ICgoZGF0YTogVFtdKSA9PiBUW10pLFxuICAgIGxvY2FsU29ydDogKChkYXRhOiBUW10sIHNvcnRzOiBTb3J0W10pID0+IFRbXSlcbiAgKSB7XG4gICAgc3VwZXIoZGF0YVNvdXJjZSwgaW5kZXhGbiwgbG9jYWxBcHBseSwgbG9jYWxTb3J0KTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgZGF0YVNvdXJjZSgpOiBJTGlzdERhdGFTb3VyY2U8VD4ge1xuICAgIHJldHVybiA8SUxpc3REYXRhU291cmNlPFQ+PnN1cGVyLmRhdGFTb3VyY2U7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgcmVsb2FkSW50ZXJuYWwoKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgIGNvbnN0IHN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgaWYgKHRoaXMuZGF0YVNvdXJjZSkge1xuXG4gICAgICB0aGlzLm9uTG9hZGluZygpO1xuXG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZmluZEFsbEZpbHRlcmVkKHRoaXMuZmlsdGVyLmZpbHRlcnNTbmFwc2hvdCwgdGhpcy5zb3J0LnNvcnRzU25hcHNob3QpXG4gICAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgbGlzdCA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uSWRsZSgpO1xuICAgICAgICAgICAgdGhpcy5zZXRUb3RhbChsaXN0Lmxlbmd0aCk7XG4gICAgICAgICAgICB0aGlzLnNldERhdGEobGlzdCk7XG4gICAgICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnZGF0YS1jb250ZXh0OiBHb3QgbGlzdCBkYXRhOiAnICsgbGlzdC5sZW5ndGgpO1xuXG4gICAgICAgICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yKGVycik7XG4gICAgICAgICAgICB0aGlzLmNsZWFyQWxsKCk7XG4gICAgICAgICAgICB0aGlzLmxvZy5lcnJvcignZGF0YS1jb250ZXh0OiBGYWlsZWQgdG8gcXVlcnkgZGF0YScsIGVycik7XG4gICAgICAgICAgICBzdWJqZWN0LmVycm9yKGVycik7XG4gICAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nLndhcm4oJ2RhdGEtY29udGV4dDogU2tpcHBpbmcgZGF0YSBjb250ZXh0IGxvYWQgLSBubyBsaXN0IGZldGNoZXIgcHJlc2VudCEnKTtcbiAgICAgIHN1YmplY3QuZXJyb3IobmV3IEVycm9yKCdkYXRhLWNvbnRleHQ6IFNraXBwaW5nIGRhdGEgY29udGV4dCBsb2FkIC0gbm8gbGlzdCBmZXRjaGVyIHByZXNlbnQhJykpO1xuICAgIH1cblxuICAgIHJldHVybiBzdWJqZWN0LnBpcGUoZmlyc3QoKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DataContextLifeCycleBinding } from './data-context-life-cycle-binding';
|
|
2
|
+
export class DataContextSourceAutoReloader extends DataContextLifeCycleBinding {
|
|
3
|
+
constructor(dataContext, dataApi) {
|
|
4
|
+
super(dataContext);
|
|
5
|
+
this.dataApi = dataApi;
|
|
6
|
+
this.subscribe();
|
|
7
|
+
}
|
|
8
|
+
subscribe() {
|
|
9
|
+
this._subscription = this.dataApi.dataChanged.subscribe(() => this._dataContext.reload());
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNvdXJjZS1hdXRvLXJlbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1zb3VyY2UtYXV0by1yZWxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUU5RSxNQUFNLE9BQU8sNkJBQThCLFNBQVEsMkJBQTJCO0lBRTVFLFlBQ0UsV0FBOEIsRUFDYixPQUF5QjtRQUUxQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFGRixZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUkxQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVTLFNBQVM7UUFDakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQ3JELEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQ2pDLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lEYXRhQ29udGV4dH0gZnJvbSAnLi9kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHtJRGF0YVNvdXJjZX0gZnJvbSAnLi4vZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5pbXBvcnQge0RhdGFDb250ZXh0TGlmZUN5Y2xlQmluZGluZ30gZnJvbSAnLi9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nJztcblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U291cmNlQXV0b1JlbG9hZGVyIGV4dGVuZHMgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhQ29udGV4dDogSURhdGFDb250ZXh0PGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRhQXBpOiBJRGF0YVNvdXJjZTxhbnk+XG4gICkge1xuICAgIHN1cGVyKGRhdGFDb250ZXh0KTtcblxuICAgIHRoaXMuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3Vic2NyaWJlKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuZGF0YUFwaS5kYXRhQ2hhbmdlZC5zdWJzY3JpYmUoXG4gICAgICAoKSA9PiB0aGlzLl9kYXRhQ29udGV4dC5yZWxvYWQoKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the status of a data-context
|
|
3
|
+
*/
|
|
4
|
+
export class DataContextStatus {
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* Constructors *
|
|
8
|
+
* *
|
|
9
|
+
**************************************************************************/
|
|
10
|
+
constructor(_error, _loading = false) {
|
|
11
|
+
this._error = _error;
|
|
12
|
+
this._loading = _loading;
|
|
13
|
+
}
|
|
14
|
+
/***************************************************************************
|
|
15
|
+
* *
|
|
16
|
+
* Static builders *
|
|
17
|
+
* *
|
|
18
|
+
**************************************************************************/
|
|
19
|
+
static idle() {
|
|
20
|
+
return new DataContextStatus(null);
|
|
21
|
+
}
|
|
22
|
+
static error(error) {
|
|
23
|
+
return new DataContextStatus(error);
|
|
24
|
+
}
|
|
25
|
+
static loading() {
|
|
26
|
+
return new DataContextStatus(null, true);
|
|
27
|
+
}
|
|
28
|
+
/***************************************************************************
|
|
29
|
+
* *
|
|
30
|
+
* Properties *
|
|
31
|
+
* *
|
|
32
|
+
**************************************************************************/
|
|
33
|
+
get idle() {
|
|
34
|
+
return !this.loading && !this.error;
|
|
35
|
+
}
|
|
36
|
+
get loading() {
|
|
37
|
+
return this._loading;
|
|
38
|
+
}
|
|
39
|
+
get error() {
|
|
40
|
+
return this._error;
|
|
41
|
+
}
|
|
42
|
+
get hasError() {
|
|
43
|
+
return !!this._error;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXN0YXR1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQW9CMUI7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ3FCLE1BQVcsRUFDWCxXQUFXLEtBQUs7UUFEaEIsV0FBTSxHQUFOLE1BQU0sQ0FBSztRQUNYLGFBQVEsR0FBUixRQUFRLENBQVE7SUFDbEMsQ0FBQztJQTNCSjs7OztnRkFJNEU7SUFFckUsTUFBTSxDQUFDLElBQUk7UUFDaEIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQVU7UUFDMUIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPLElBQUksaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFhRDs7OztnRkFJNEU7SUFFNUUsSUFBVyxJQUFJO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDWixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNmLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDekIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBzdGF0dXMgb2YgYSBkYXRhLWNvbnRleHRcbiAqL1xuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U3RhdHVzIHtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogU3RhdGljIGJ1aWxkZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBwdWJsaWMgc3RhdGljIGlkbGUoKTogRGF0YUNvbnRleHRTdGF0dXMge1xuICAgICAgcmV0dXJuIG5ldyBEYXRhQ29udGV4dFN0YXR1cyhudWxsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGVycm9yKGVycm9yOiBhbnkpOiBEYXRhQ29udGV4dFN0YXR1cyB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0YUNvbnRleHRTdGF0dXMoZXJyb3IpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgbG9hZGluZygpOiBEYXRhQ29udGV4dFN0YXR1cyB7XG4gICAgICByZXR1cm4gbmV3IERhdGFDb250ZXh0U3RhdHVzKG51bGwsIHRydWUpO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogQ29uc3RydWN0b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfZXJyb3I6IGFueSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfbG9hZGluZyA9IGZhbHNlXG4gICAgKSB7fVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHB1YmxpYyBnZXQgaWRsZSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAhdGhpcy5sb2FkaW5nICYmICF0aGlzLmVycm9yO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZXJyb3IoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Vycm9yO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuX2Vycm9yO1xuICAgIH1cbn1cbiJdfQ==
|