@elderbyte/ngx-starter 18.15.2 → 19.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/elderbyte-ngx-starter.mjs +1097 -1125
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +1 -1
- package/lib/common/forms/elder-from-field-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-customizable-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-entity-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +1 -1
- package/lib/common/forms/form-field-base.component.d.ts +1 -1
- package/lib/common/forms/multi-model-base.component.d.ts +1 -1
- package/lib/common/forms/template-composite-control.d.ts +1 -1
- package/lib/common/forms/value-accessor-base.d.ts +1 -1
- package/lib/common/reactive-map.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-base.d.ts +1 -1
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +1 -1
- package/lib/components/iframes/typed-event-message.d.ts +1 -1
- package/lib/components/panels/elder-panel.module.d.ts +5 -7
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +1 -1
- package/lib/components/select/single/elder-select-form-field.d.ts +1 -1
- package/package.json +6 -8
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -3
- package/src/lib/components/panels/flat/_elder-panel-theme.scss +5 -1
- package/esm2022/elderbyte-ngx-starter.mjs +0 -5
- package/esm2022/lib/common/arrays.mjs +0 -29
- package/esm2022/lib/common/async/public_api.mjs +0 -2
- package/esm2022/lib/common/async/refreshing-entity.mjs +0 -88
- package/esm2022/lib/common/csv/csv-serializer.mjs +0 -55
- package/esm2022/lib/common/csv/csv-spec.mjs +0 -99
- package/esm2022/lib/common/csv/public_api.mjs +0 -3
- package/esm2022/lib/common/data/continuable-listing.mjs +0 -10
- package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +0 -131
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +0 -78
- package/esm2022/lib/common/data/data-context/data-context-base.mjs +0 -339
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +0 -245
- package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +0 -67
- package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +0 -142
- package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +0 -146
- package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +0 -32
- package/esm2022/lib/common/data/data-context/data-context-simple.mjs +0 -61
- package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +0 -63
- package/esm2022/lib/common/data/data-context/data-context-status.mjs +0 -46
- package/esm2022/lib/common/data/data-context/data-context.mjs +0 -30
- package/esm2022/lib/common/data/data-context/indexed-entities.mjs +0 -153
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +0 -145
- package/esm2022/lib/common/data/data-context/public_api.mjs +0 -15
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +0 -59
- package/esm2022/lib/common/data/datasource/data-source-base.mjs +0 -38
- package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +0 -34
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +0 -198
- package/esm2022/lib/common/data/datasource/data-source.mjs +0 -23
- package/esm2022/lib/common/data/datasource/entity-id-util.mjs +0 -11
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +0 -127
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +0 -153
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +0 -75
- package/esm2022/lib/common/data/datasource/patch/deep-partial-patcher.mjs +0 -58
- package/esm2022/lib/common/data/datasource/public_api.mjs +0 -10
- package/esm2022/lib/common/data/datasource/rest/public_api.mjs +0 -2
- package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +0 -290
- package/esm2022/lib/common/data/entity-set-patch.mjs +0 -161
- package/esm2022/lib/common/data/field-comparator.mjs +0 -108
- package/esm2022/lib/common/data/filters/filter-commons.mjs +0 -12
- package/esm2022/lib/common/data/filters/filter-context.mjs +0 -135
- package/esm2022/lib/common/data/filters/filter-value.mjs +0 -2
- package/esm2022/lib/common/data/filters/filter.mjs +0 -104
- package/esm2022/lib/common/data/http-params-builder.mjs +0 -116
- package/esm2022/lib/common/data/page.mjs +0 -58
- package/esm2022/lib/common/data/public_api.mjs +0 -12
- package/esm2022/lib/common/data/required-filter-evaluator.mjs +0 -71
- package/esm2022/lib/common/data/sort-context.mjs +0 -73
- package/esm2022/lib/common/data/sort.mjs +0 -11
- package/esm2022/lib/common/data/token-chunk-request.mjs +0 -8
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +0 -84
- package/esm2022/lib/common/enums/public_api.mjs +0 -2
- package/esm2022/lib/common/errors/exception-detail.mjs +0 -2
- package/esm2022/lib/common/errors/public_api.mjs +0 -3
- package/esm2022/lib/common/errors/standard-error-detail.mjs +0 -2
- package/esm2022/lib/common/exceptions/public_api.mjs +0 -2
- package/esm2022/lib/common/exceptions/unreachable-case-error.mjs +0 -8
- package/esm2022/lib/common/format/bytes-format.mjs +0 -15
- package/esm2022/lib/common/format/bytes-per-second-format.mjs +0 -41
- package/esm2022/lib/common/format/curency-format-util.mjs +0 -43
- package/esm2022/lib/common/format/duration-format-util.mjs +0 -44
- package/esm2022/lib/common/format/iso-interval-format-util.mjs +0 -111
- package/esm2022/lib/common/format/public_api.mjs +0 -6
- package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +0 -188
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +0 -94
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +0 -52
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +0 -39
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +0 -47
- package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/form-field-base.component.mjs +0 -111
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +0 -32
- package/esm2022/lib/common/forms/public_api.mjs +0 -12
- package/esm2022/lib/common/forms/template-composite-control.mjs +0 -136
- package/esm2022/lib/common/forms/value-accessor-base.mjs +0 -146
- package/esm2022/lib/common/forms/view-providers.mjs +0 -30
- package/esm2022/lib/common/http/http-client-builder.service.mjs +0 -14
- package/esm2022/lib/common/http/http-client-pristine.mjs +0 -21
- package/esm2022/lib/common/http/public_api.mjs +0 -5
- package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +0 -77
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +0 -106
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +0 -60
- package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +0 -17
- package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +0 -82
- package/esm2022/lib/common/http/transfer/data-transfer-status.mjs +0 -24
- package/esm2022/lib/common/http/transfer/data-transfer.mjs +0 -2
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +0 -132
- package/esm2022/lib/common/http/transfer/public_api.mjs +0 -7
- package/esm2022/lib/common/http/upload/file-upload-client.mjs +0 -42
- package/esm2022/lib/common/i18n/entity/elder-multi-translate-loader.mjs +0 -53
- package/esm2022/lib/common/i18n/entity/impl/i18n-base.mjs +0 -6
- package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +0 -16
- package/esm2022/lib/common/i18n/entity/impl/translated.mjs +0 -15
- package/esm2022/lib/common/i18n/entity/language-tag.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/locale.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +0 -30
- package/esm2022/lib/common/i18n/entity/localized.mjs +0 -2
- package/esm2022/lib/common/i18n/entity/public_api.mjs +0 -10
- package/esm2022/lib/common/i18n/entity/translated-converter.mjs +0 -18
- package/esm2022/lib/common/i18n/entity/translated.mjs +0 -2
- package/esm2022/lib/common/i18n/public_api.mjs +0 -2
- package/esm2022/lib/common/json-map.mjs +0 -17
- package/esm2022/lib/common/objects.mjs +0 -43
- package/esm2022/lib/common/public_api.mjs +0 -23
- package/esm2022/lib/common/reactive-map.mjs +0 -69
- package/esm2022/lib/common/rxjs/operators/lazy-sample.mjs +0 -34
- package/esm2022/lib/common/rxjs/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/selection-model.mjs +0 -213
- package/esm2022/lib/common/sets.mjs +0 -45
- package/esm2022/lib/common/suggestion-provider.mjs +0 -12
- package/esm2022/lib/common/templates/template-slot-manager.mjs +0 -135
- package/esm2022/lib/common/theme-sizes.mjs +0 -2
- package/esm2022/lib/common/time/date-util.mjs +0 -91
- package/esm2022/lib/common/time/interval-coerce.mjs +0 -30
- package/esm2022/lib/common/time/interval.mjs +0 -442
- package/esm2022/lib/common/time/period-duration.mjs +0 -133
- package/esm2022/lib/common/time/public_api.mjs +0 -8
- package/esm2022/lib/common/time/temporal-plain-date-interval.mjs +0 -34
- package/esm2022/lib/common/time/temporal-util.mjs +0 -205
- package/esm2022/lib/common/time/time-util.mjs +0 -38
- package/esm2022/lib/common/url/elder-router.service.mjs +0 -54
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +0 -117
- package/esm2022/lib/common/url/public_api.mjs +0 -4
- package/esm2022/lib/common/url/url-query-params.mjs +0 -133
- package/esm2022/lib/common/utils/batcher.mjs +0 -35
- package/esm2022/lib/common/utils/collection-util.mjs +0 -111
- package/esm2022/lib/common/utils/filter-util.mjs +0 -133
- package/esm2022/lib/common/utils/focus-util.mjs +0 -23
- package/esm2022/lib/common/utils/input-utils.mjs +0 -6
- package/esm2022/lib/common/utils/next-number-util.mjs +0 -89
- package/esm2022/lib/common/utils/ng-zone-utils.mjs +0 -16
- package/esm2022/lib/common/utils/parse-util.mjs +0 -17
- package/esm2022/lib/common/utils/property-path-util.mjs +0 -28
- package/esm2022/lib/common/utils/public_api.mjs +0 -14
- package/esm2022/lib/common/utils/query-list-binding.mjs +0 -68
- package/esm2022/lib/common/utils/signal-input.mjs +0 -3
- package/esm2022/lib/common/utils/sort-util.mjs +0 -42
- package/esm2022/lib/common/utils/url-builder.mjs +0 -275
- package/esm2022/lib/common/utils/uuid-util.mjs +0 -28
- package/esm2022/lib/common/utils/value-wrapper.mjs +0 -19
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +0 -15
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +0 -20
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +0 -50
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +0 -40
- package/esm2022/lib/components/auditing/i-audited-entity.mjs +0 -3
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +0 -162
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +0 -124
- package/esm2022/lib/components/badge/elder-badge.module.mjs +0 -58
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +0 -13
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +0 -21
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +0 -118
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +0 -18
- package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +0 -93
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +0 -220
- package/esm2022/lib/components/card-organizer/card-stack.mjs +0 -176
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +0 -62
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +0 -17
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +0 -167
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +0 -71
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +0 -171
- package/esm2022/lib/components/chips/elder-chips.module.mjs +0 -45
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +0 -57
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +0 -61
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +0 -46
- package/esm2022/lib/components/connectivity/public_api.mjs +0 -3
- package/esm2022/lib/components/containers/elder-containers.module.mjs +0 -18
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +0 -24
- package/esm2022/lib/components/containers/public_api.mjs +0 -2
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +0 -77
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +0 -114
- package/esm2022/lib/components/csv/elder-csv.module.mjs +0 -24
- package/esm2022/lib/components/currency/elder-currency.module.mjs +0 -18
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +0 -37
- package/esm2022/lib/components/currency/model/currency-code.mjs +0 -38
- package/esm2022/lib/components/currency/model/currency-unit-registry.mjs +0 -30
- package/esm2022/lib/components/currency/model/currency-unit.mjs +0 -10
- package/esm2022/lib/components/currency/model/currency.mjs +0 -15
- package/esm2022/lib/components/currency/public_api.mjs +0 -7
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +0 -91
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +0 -93
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +0 -102
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +0 -34
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +0 -57
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +0 -34
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +0 -69
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +0 -265
- package/esm2022/lib/components/data-view/base/elder-data-view-options-provider.mjs +0 -44
- package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +0 -45
- package/esm2022/lib/components/data-view/base/elder-data-view.mjs +0 -3
- package/esm2022/lib/components/data-view/base/public_api.mjs +0 -6
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-context.mjs +0 -30
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-dc.directive.mjs +0 -55
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort.mjs +0 -68
- package/esm2022/lib/components/data-view/common/composite-sort/elder-composite-sort/elder-composite-sort.component.mjs +0 -101
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +0 -45
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +0 -125
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +0 -140
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +0 -100
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +0 -103
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +0 -36
- package/esm2022/lib/components/data-view/common/selection/master-selection-state.mjs +0 -10
- package/esm2022/lib/components/data-view/elder-data-view-interaction-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +0 -345
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +0 -91
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +0 -75
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +0 -50
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +0 -79
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +0 -20
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +0 -119
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +0 -116
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +0 -89
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +0 -12
- package/esm2022/lib/components/data-view/public_api.mjs +0 -7
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +0 -18
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +0 -104
- package/esm2022/lib/components/data-view/table/activation/activation-event-source.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/elder-activation-context.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +0 -114
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation-options.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +0 -315
- package/esm2022/lib/components/data-view/table/activation/item-activation-event.mjs +0 -8
- package/esm2022/lib/components/data-view/table/activation/item-activation-options.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/public_api.mjs +0 -8
- package/esm2022/lib/components/data-view/table/elder-center-cell.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +0 -30
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +0 -73
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +0 -21
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +0 -338
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +0 -18
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +0 -92
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +0 -26
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +0 -156
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +0 -184
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +0 -110
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +0 -85
- package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +0 -40
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +0 -89
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +0 -167
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +0 -37
- package/esm2022/lib/components/dialogs/elder-dialog-config.mjs +0 -3
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +0 -87
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +0 -199
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +0 -57
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +0 -43
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +0 -47
- package/esm2022/lib/components/errors/elder-error.module.mjs +0 -39
- package/esm2022/lib/components/errors/error-util.mjs +0 -94
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +0 -77
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +0 -55
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +0 -35
- package/esm2022/lib/components/files/blob-url.mjs +0 -10
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +0 -224
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +0 -44
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +0 -84
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +0 -145
- package/esm2022/lib/components/files/elder-file-select-input.mjs +0 -119
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +0 -167
- package/esm2022/lib/components/files/elder-file.module.mjs +0 -85
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +0 -54
- package/esm2022/lib/components/files/file-system-api.mjs +0 -100
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +0 -80
- package/esm2022/lib/components/files/listing/file-entry.mjs +0 -92
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +0 -64
- package/esm2022/lib/components/files/listing/file-listing-system-handle.mjs +0 -35
- package/esm2022/lib/components/files/listing/file-listing-webkit.mjs +0 -76
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +0 -51
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +0 -34
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox-controller.mjs +0 -97
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox-controller.mjs +0 -102
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +0 -38
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +0 -43
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +0 -83
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +0 -84
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +0 -42
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +0 -35
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +0 -142
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +0 -67
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +0 -78
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +0 -112
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +0 -102
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +0 -37
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +0 -30
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +0 -161
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +0 -28
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +0 -88
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +0 -47
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +0 -48
- package/esm2022/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +0 -6
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +0 -53
- package/esm2022/lib/components/forms/directives/validation/validation-message-strategy.mjs +0 -2
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +0 -112
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +0 -69
- package/esm2022/lib/components/forms/elder-forms.module.mjs +0 -22
- package/esm2022/lib/components/forms/public_api.mjs +0 -6
- package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +0 -73
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +0 -42
- package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +0 -88
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/simple-search-input.mjs +0 -50
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +0 -92
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +0 -166
- package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +0 -81
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +0 -256
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +0 -258
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +0 -115
- package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +0 -45
- package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +0 -2
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +0 -131
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +0 -24
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +0 -136
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +0 -47
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +0 -95
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +0 -90
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +0 -19
- package/esm2022/lib/components/graph/elder-progress-bar/sub-bar.mjs +0 -7
- package/esm2022/lib/components/graph/public_api.mjs +0 -2
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +0 -29
- package/esm2022/lib/components/headers/elder-header.module.mjs +0 -42
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +0 -63
- package/esm2022/lib/components/http-support/public_api.mjs +0 -2
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +0 -125
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +0 -157
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +0 -39
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +0 -30
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +0 -177
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +0 -56
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +0 -40
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +0 -74
- package/esm2022/lib/components/i18n/language/elder-language-config.mjs +0 -3
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +0 -70
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +0 -73
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +0 -120
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +0 -79
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +0 -53
- package/esm2022/lib/components/i18n/public_api.mjs +0 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +0 -129
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +0 -141
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +0 -106
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +0 -41
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +0 -51
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +0 -144
- package/esm2022/lib/components/iframes/iframe-messages.mjs +0 -5
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +0 -80
- package/esm2022/lib/components/iframes/iframe.service.mjs +0 -54
- package/esm2022/lib/components/iframes/typed-event-message.mjs +0 -42
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +0 -65
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +0 -166
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +0 -20
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +0 -9
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +0 -233
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +0 -202
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +0 -120
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +0 -61
- package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +0 -58
- package/esm2022/lib/components/input/public_api.mjs +0 -2
- package/esm2022/lib/components/labels/elder-labels.module.mjs +0 -50
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +0 -239
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +0 -268
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +0 -92
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +0 -65
- package/esm2022/lib/components/measures/elder-measures.module.mjs +0 -130
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +0 -31
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +0 -43
- package/esm2022/lib/components/measures/elder-unit.service.mjs +0 -113
- package/esm2022/lib/components/measures/model/dimensions.mjs +0 -17
- package/esm2022/lib/components/measures/model/quantity.mjs +0 -12
- package/esm2022/lib/components/measures/model/unit-dimension.mjs +0 -14
- package/esm2022/lib/components/measures/model/unit-registry.mjs +0 -81
- package/esm2022/lib/components/measures/model/unit.mjs +0 -143
- package/esm2022/lib/components/measures/public_api.mjs +0 -8
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +0 -44
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +0 -173
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +0 -84
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +0 -73
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +0 -341
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +0 -184
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +0 -59
- package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +0 -37
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +0 -60
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +0 -121
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +0 -174
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +0 -68
- package/esm2022/lib/components/navigation/public_api.mjs +0 -4
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +0 -48
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +0 -83
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +0 -68
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +0 -71
- package/esm2022/lib/components/navigation/toolbar/toolbar-column-position.mjs +0 -2
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +0 -39
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +0 -86
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +0 -44
- package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +0 -41
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +0 -73
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +0 -232
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +0 -35
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.module.mjs +0 -20
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.service.mjs +0 -129
- package/esm2022/lib/components/page/exit-guard/page-exit-lock/page-exit-lock.component.mjs +0 -25
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +0 -29
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +0 -26
- package/esm2022/lib/components/page/public_api.mjs +0 -2
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-panel.module.mjs +0 -60
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +0 -26
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +0 -70
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +0 -74
- package/esm2022/lib/components/public_api.mjs +0 -43
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +0 -63
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +0 -17
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +0 -95
- package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +0 -38
- package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +0 -64
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +0 -55
- package/esm2022/lib/components/select/elder-select-base.mjs +0 -333
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +0 -48
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +0 -139
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +0 -18
- package/esm2022/lib/components/select/elder-select.module.mjs +0 -229
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +0 -74
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +0 -148
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +0 -51
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +0 -61
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +0 -160
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +0 -16
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +0 -386
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +0 -87
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +0 -263
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/select-option-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +0 -274
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/select-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +0 -86
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +0 -34
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +0 -146
- package/esm2022/lib/components/select/multi/public_api.mjs +0 -5
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +0 -89
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +0 -126
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +0 -58
- package/esm2022/lib/components/select/public_api.mjs +0 -5
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +0 -60
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +0 -444
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +0 -45
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +0 -148
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +0 -46
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +0 -64
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +0 -119
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +0 -128
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +0 -47
- package/esm2022/lib/components/shell/elder-shell.module.mjs +0 -101
- package/esm2022/lib/components/shell/elder-shell.service.mjs +0 -142
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +0 -75
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +0 -238
- package/esm2022/lib/components/shell/shell-content-slot.mjs +0 -2
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +0 -137
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +0 -26
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +0 -257
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +0 -21
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +0 -62
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +0 -73
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +0 -74
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +0 -64
- package/esm2022/lib/components/theme/elder-theme.module.mjs +0 -68
- package/esm2022/lib/components/theme/elder-theme.service.mjs +0 -121
- package/esm2022/lib/components/theme/known-elder-themes.mjs +0 -6
- package/esm2022/lib/components/theme/public_api.mjs +0 -2
- package/esm2022/lib/components/theme/theme-spec.mjs +0 -11
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +0 -43
- package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +0 -28
- package/esm2022/lib/components/time/duration/duration-bucket.mjs +0 -68
- package/esm2022/lib/components/time/duration/duration-format.mjs +0 -271
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +0 -110
- package/esm2022/lib/components/time/duration/iso-duration-str.mjs +0 -2
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +0 -96
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +0 -98
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +0 -217
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-anchor-controller.mjs +0 -21
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-calendar-controller.mjs +0 -24
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-controller.mjs +0 -43
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-form-controller.mjs +0 -69
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-select-controller.mjs +0 -117
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-shift-controller.mjs +0 -44
- package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.component.mjs +0 -198
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-binding/elder-interval-picker-binding.directive.mjs +0 -41
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-toggle/elder-interval-picker-toggle.component.mjs +0 -144
- package/esm2022/lib/components/time/elder-interval-picker/manager/interval-picker-state-manager.mjs +0 -93
- package/esm2022/lib/components/time/elder-interval-picker/model/anchor-state.mjs +0 -54
- package/esm2022/lib/components/time/elder-interval-picker/model/interval-state.mjs +0 -37
- package/esm2022/lib/components/time/elder-interval-picker/model/smart-shift-state.mjs +0 -10
- package/esm2022/lib/components/time/elder-interval-picker/presenter/interval-picker-presenter.mjs +0 -96
- package/esm2022/lib/components/time/elder-interval-picker/util/interval-picker-util.mjs +0 -194
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +0 -268
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +0 -85
- package/esm2022/lib/components/time/elder-time.module.mjs +0 -154
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +0 -118
- package/esm2022/lib/components/time/period/period-bucket.mjs +0 -31
- package/esm2022/lib/components/time/period/period-format.mjs +0 -89
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +0 -39
- package/esm2022/lib/components/time/public_api.mjs +0 -8
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +0 -36
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +0 -170
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +0 -80
- package/esm2022/lib/components/toasts/toast-type.mjs +0 -7
- package/esm2022/lib/components/toasts/toast.mjs +0 -2
- package/esm2022/lib/components/url-fragment/elder-url-fragment.mjs +0 -9
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +0 -52
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +0 -95
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +0 -64
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +0 -18
- package/esm2022/lib/features/event-source/fetch/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +0 -219
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +0 -53
- package/esm2022/lib/features/event-source/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +0 -56
- package/esm2022/lib/features/event-source/standard/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +0 -199
- package/esm2022/lib/features/kafent/access-token-provider.mjs +0 -20
- package/esm2022/lib/features/kafent/kafent-config.mjs +0 -24
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +0 -25
- package/esm2022/lib/features/kafent/kafent-event.mjs +0 -3
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +0 -115
- package/esm2022/lib/features/kafent/kafent-live-event-request.mjs +0 -2
- package/esm2022/lib/features/kafent/kafent.module.mjs +0 -58
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +0 -131
- package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +0 -97
- package/esm2022/lib/features/public_api.mjs +0 -3
- package/esm2022/lib/pipes/bytes.pipe.mjs +0 -27
- package/esm2022/lib/pipes/elder-pipes.module.mjs +0 -114
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +0 -24
- package/esm2022/lib/pipes/elder-round.pipe.mjs +0 -36
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +0 -21
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +0 -49
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +0 -62
- package/esm2022/lib/pipes/public_api.mjs +0 -2
- package/esm2022/lib/pipes/time-ago.pipe.mjs +0 -110
- package/esm2022/lib/pipes/time-duration.pipe.mjs +0 -101
- package/esm2022/lib/pipes/weight.pipe.mjs +0 -60
- package/esm2022/public_api.mjs +0 -8
- package/lib/components/panels/flat/elder-panel.component.d.ts +0 -15
- package/src/lib/components/panels/flat/elder-panel.component.scss +0 -3
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ContentChild, forwardRef, Input, TemplateRef, ViewChild, } from '@angular/core';
|
|
2
|
-
import { ElderMultiSelectBase } from '../elder-multi-select-base';
|
|
3
|
-
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
4
|
-
import { map } from 'rxjs/operators';
|
|
5
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
6
|
-
import { ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectCustomInputDirective, } from '../../elder-select-chip.directive';
|
|
7
|
-
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
8
|
-
import { ELDER_SELECT_BASE, } from '../../elder-select-base';
|
|
9
|
-
import { ElderSelectComponent } from '../../single/elder-select/elder-select.component';
|
|
10
|
-
import { moveItemInArray, CdkDropList, CdkDrag } from '@angular/cdk/drag-drop';
|
|
11
|
-
import { SelectChipSpecUtil, } from './select-chip-spec';
|
|
12
|
-
import { ElderTruncatePipe } from '../../../../pipes/elder-truncate.pipe';
|
|
13
|
-
import { ElderClearSelectDirective } from '../../single/elder-clear-select.directive';
|
|
14
|
-
import { ElderStopEventPropagationDirective } from '../../../forms/directives/elder-stop-event-propagation.directive';
|
|
15
|
-
import { MatIconButton } from '@angular/material/button';
|
|
16
|
-
import { ElderChipLabelDirective } from '../../../chips/elder-chip-label.directive';
|
|
17
|
-
import { MatIcon } from '@angular/material/icon';
|
|
18
|
-
import { MatChipSet, MatChipRow, MatChipAvatar, MatChipTrailingIcon, MatChipRemove, } from '@angular/material/chips';
|
|
19
|
-
import { MatTooltip } from '@angular/material/tooltip';
|
|
20
|
-
import { NgTemplateOutlet } from '@angular/common';
|
|
21
|
-
import { toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
22
|
-
import * as i0 from "@angular/core";
|
|
23
|
-
class ChipModel {
|
|
24
|
-
constructor(id, value, displayText, colorSpec, removable, avatarSpec, trailingSpec) {
|
|
25
|
-
this.id = id;
|
|
26
|
-
this.value = value;
|
|
27
|
-
this.displayText = displayText;
|
|
28
|
-
this.colorSpec = colorSpec;
|
|
29
|
-
this.removable = removable;
|
|
30
|
-
this.avatarSpec = avatarSpec;
|
|
31
|
-
this.trailingSpec = trailingSpec;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
export class ElderMultiSelectChipsComponent extends ElderMultiSelectBase {
|
|
35
|
-
/***************************************************************************
|
|
36
|
-
* *
|
|
37
|
-
* Constructor *
|
|
38
|
-
* *
|
|
39
|
-
**************************************************************************/
|
|
40
|
-
constructor() {
|
|
41
|
-
super('multi-select-chips');
|
|
42
|
-
this.defaultChipSpec = SelectChipSpecUtil.DefaultChipSpec;
|
|
43
|
-
/**
|
|
44
|
-
* Allows to customize each chip individually (Color, Removable, Avatar).
|
|
45
|
-
*
|
|
46
|
-
*/
|
|
47
|
-
this.chipSpecFn = (e) => this.defaultChipSpec;
|
|
48
|
-
this.selectable = true;
|
|
49
|
-
this.allowRemove = true;
|
|
50
|
-
this.allowSorting = false;
|
|
51
|
-
this.stacked = false;
|
|
52
|
-
this.chipTemplate$ = new BehaviorSubject(null);
|
|
53
|
-
this.chipAvatarTemplate$ = new BehaviorSubject(null);
|
|
54
|
-
this.customInputTemplate$ = new BehaviorSubject(null);
|
|
55
|
-
this.refresh$ = new BehaviorSubject(true);
|
|
56
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
57
|
-
this.placeholder = '...';
|
|
58
|
-
this.selectChips = toSignal(combineLatest([
|
|
59
|
-
this.entities$,
|
|
60
|
-
this.entityIds$,
|
|
61
|
-
toObservable(this.state),
|
|
62
|
-
toObservable(this.displayPropertyResolverS),
|
|
63
|
-
toObservable(this.readonlyS),
|
|
64
|
-
toObservable(this.disabledS),
|
|
65
|
-
this.refresh$,
|
|
66
|
-
]).pipe(map(([entities, entityIds, state, dPR]) => this.buildChipModelsOrFallback(entities, entityIds, state, dPR)), map((models) => this.maxDisplayCount !== undefined
|
|
67
|
-
? this.reduceDisplayedChips(models, this.maxDisplayCount)
|
|
68
|
-
: models)));
|
|
69
|
-
this.templates = toSignal(combineLatest([this.chipTemplate$, this.chipAvatarTemplate$, this.customInputTemplate$]).pipe(map(([chip, avatar, input]) => {
|
|
70
|
-
return {
|
|
71
|
-
chip,
|
|
72
|
-
avatar,
|
|
73
|
-
input,
|
|
74
|
-
};
|
|
75
|
-
})));
|
|
76
|
-
}
|
|
77
|
-
/***************************************************************************
|
|
78
|
-
* *
|
|
79
|
-
* Properties *
|
|
80
|
-
* *
|
|
81
|
-
**************************************************************************/
|
|
82
|
-
set chipTemplateQuery(template) {
|
|
83
|
-
this.chipTemplate = template;
|
|
84
|
-
}
|
|
85
|
-
set chipTemplate(template) {
|
|
86
|
-
this.chipTemplate$.next(template);
|
|
87
|
-
}
|
|
88
|
-
get chipTemplate() {
|
|
89
|
-
return this.chipTemplate$.getValue();
|
|
90
|
-
}
|
|
91
|
-
set chipAvatarTemplateQuery(template) {
|
|
92
|
-
if (template) {
|
|
93
|
-
this.chipAvatarTemplate = template;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
set chipAvatarTemplate(template) {
|
|
97
|
-
this.chipAvatarTemplate$.next(template);
|
|
98
|
-
}
|
|
99
|
-
get chipAvatarTemplate() {
|
|
100
|
-
return this.chipAvatarTemplate$.getValue();
|
|
101
|
-
}
|
|
102
|
-
set customInputTemplateQuery(template) {
|
|
103
|
-
if (template) {
|
|
104
|
-
this.customInputTemplate = template;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
set customInputTemplate(template) {
|
|
108
|
-
this.customInputTemplate$.next(template);
|
|
109
|
-
}
|
|
110
|
-
get customInputTemplate() {
|
|
111
|
-
return this.customInputTemplate$.getValue();
|
|
112
|
-
}
|
|
113
|
-
/***************************************************************************
|
|
114
|
-
* *
|
|
115
|
-
* Public API *
|
|
116
|
-
* *
|
|
117
|
-
**************************************************************************/
|
|
118
|
-
drop(event) {
|
|
119
|
-
const reordered = [...this.entities];
|
|
120
|
-
moveItemInArray(reordered, event.previousIndex, event.currentIndex);
|
|
121
|
-
this.entities = reordered;
|
|
122
|
-
}
|
|
123
|
-
resolveChipValue(e1) {
|
|
124
|
-
return this.getEntityId(e1);
|
|
125
|
-
}
|
|
126
|
-
onChipKeyDown(event, toRemove) {
|
|
127
|
-
this.log.warn('onChipKeyDown', event);
|
|
128
|
-
if (event.key === 'Backspace' || event.key === 'Delete') {
|
|
129
|
-
this.requestRemoveEntity(toRemove, event.shiftKey);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
onClickRemoveChip(event, toRemove) {
|
|
133
|
-
event.stopPropagation();
|
|
134
|
-
event.preventDefault();
|
|
135
|
-
this.requestRemoveEntity(toRemove, event.shiftKey);
|
|
136
|
-
}
|
|
137
|
-
focus(options) {
|
|
138
|
-
const input = this._customChipInput ?? this._chipInput;
|
|
139
|
-
if (input) {
|
|
140
|
-
input.onContainerClick(new MouseEvent(''));
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
this.log.warn('Cant focus since no chip-input-control found!');
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
blur() {
|
|
147
|
-
this.log.warn('blur() not yet supported!');
|
|
148
|
-
// TODO this.inputControl?.blur();
|
|
149
|
-
// this.customInputTemplate.blur()
|
|
150
|
-
}
|
|
151
|
-
refresh() {
|
|
152
|
-
this.refresh$.next(true);
|
|
153
|
-
}
|
|
154
|
-
/***************************************************************************
|
|
155
|
-
* *
|
|
156
|
-
* Private methods *
|
|
157
|
-
* *
|
|
158
|
-
**************************************************************************/
|
|
159
|
-
buildChipModelsOrFallback(entities, entityIds, state, dPR) {
|
|
160
|
-
if (state.error) {
|
|
161
|
-
return this.buildChipFallbackModels(entityIds);
|
|
162
|
-
}
|
|
163
|
-
return this.buildChipModels(entities, dPR);
|
|
164
|
-
}
|
|
165
|
-
buildChipFallbackModels(entityIds) {
|
|
166
|
-
return entityIds.map((id) => this.buildChipBySpec({ id: id }, () => String(id), {
|
|
167
|
-
colorSpec: {
|
|
168
|
-
themeColor: 'warn',
|
|
169
|
-
},
|
|
170
|
-
avatarSpec: {
|
|
171
|
-
hide: false,
|
|
172
|
-
large: false,
|
|
173
|
-
},
|
|
174
|
-
}));
|
|
175
|
-
}
|
|
176
|
-
buildChipModels(entities, dPR) {
|
|
177
|
-
if (entities) {
|
|
178
|
-
return entities.map((e) => this.buildChipBySpec(e, dPR, this.chipSpecFn(e) ?? this.defaultChipSpec));
|
|
179
|
-
}
|
|
180
|
-
else {
|
|
181
|
-
return [];
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
buildChipBySpec(e, dPR, chipSpec) {
|
|
185
|
-
let removable = false;
|
|
186
|
-
if (this.allowRemove && !this.isLocked) {
|
|
187
|
-
if (chipSpec.removable !== false) {
|
|
188
|
-
removable = true;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
return new ChipModel(this.getEntityId(e), e, dPR(e), chipSpec?.colorSpec, removable, chipSpec.avatarSpec, chipSpec.trailingSpec);
|
|
192
|
-
}
|
|
193
|
-
reduceDisplayedChips(models, count) {
|
|
194
|
-
const reducedChips = models.slice(0, count);
|
|
195
|
-
const deltaCount = models.length - reducedChips.length;
|
|
196
|
-
if (deltaCount > 0) {
|
|
197
|
-
const indicatorChip = this.buildIndicatorChip(deltaCount);
|
|
198
|
-
reducedChips.push(indicatorChip);
|
|
199
|
-
}
|
|
200
|
-
return reducedChips;
|
|
201
|
-
}
|
|
202
|
-
buildIndicatorChip(deltaCount) {
|
|
203
|
-
return new ChipModel('overflow-indicator', undefined, '+' + deltaCount, {}, false, { hide: true }, {});
|
|
204
|
-
}
|
|
205
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
206
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ElderMultiSelectChipsComponent, isStandalone: true, selector: "elder-multi-select-chips", inputs: { defaultChipSpec: "defaultChipSpec", chipSpecFn: "chipSpecFn", allowRemove: "allowRemove", allowSorting: "allowSorting", stacked: "stacked", maxDisplayCount: "maxDisplayCount", chipTemplate: "chipTemplate", chipAvatarTemplate: "chipAvatarTemplate", customInputTemplate: "customInputTemplate" }, providers: [
|
|
207
|
-
{ provide: MatFormFieldControl, useExisting: ElderMultiSelectChipsComponent },
|
|
208
|
-
{
|
|
209
|
-
provide: ELDER_SELECT_BASE,
|
|
210
|
-
useExisting: forwardRef(() => ElderMultiSelectChipsComponent),
|
|
211
|
-
},
|
|
212
|
-
], queries: [{ propertyName: "_customChipInput", first: true, predicate: MatFormFieldControl, descendants: true }, { propertyName: "chipTemplateQuery", first: true, predicate: ElderSelectChipDirective, descendants: true, read: TemplateRef }, { propertyName: "chipAvatarTemplateQuery", first: true, predicate: ElderSelectChipAvatarDirective, descendants: true, read: TemplateRef }, { propertyName: "customInputTemplateQuery", first: true, predicate: ElderSelectCustomInputDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "_chipInput", first: true, predicate: ElderSelectComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"elder-flex-control\" [matTooltip]=\"state()?.error\">\n <mat-chip-set\n #chips\n [class.mat-mdc-chip-set-stacked]=\"stacked\"\n cdkDropList\n [cdkDropListOrientation]=\"stacked ? 'vertical' : 'horizontal'\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"!allowSorting\"\n >\n @if (icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n <mat-icon\n disabled\n class=\"elder-prefix-icon elder-mdc-control-icon elder-icon-small noselect\"\n [class.loading]=\"state()?.loading\"\n >\n {{ icon }}\n </mat-icon>\n </div>\n }\n\n @for (chipModel of selectChips(); track chipModel.id) {\n <mat-chip-row\n elderChipLabel\n class=\"noselect clickable-chip\"\n [value]=\"resolveChipValue(chipModel.value)\"\n [color]=\"chipModel.colorSpec?.themeColor\"\n [levelColor]=\"chipModel.colorSpec?.levelColor\"\n [stateColor]=\"chipModel.colorSpec?.stateColor\"\n [removable]=\"chipModel.removable\"\n (keydown)=\"onChipKeyDown($event, chipModel.value)\"\n (click)=\"onCurrentClicked(chipModel.value)\"\n cdkDrag\n [cdkDragData]=\"chipModel.value\"\n [cdkDragDisabled]=\"!allowSorting\"\n >\n @if (templates()?.avatar && !chipModel.avatarSpec?.hide) {\n <mat-chip-avatar [class.chip-avatar-xl]=\"chipModel.avatarSpec?.large\">\n <ng-container *ngTemplateOutlet=\"templates().avatar; context: { $implicit: chipModel }\">\n </ng-container>\n </mat-chip-avatar>\n }\n\n <ng-container\n *ngTemplateOutlet=\"\n templates()?.chip || simpleChipTemplate;\n context: { $implicit: chipModel }\n \"\n >\n </ng-container>\n\n @if (chipModel.trailingSpec?.icon; as trailingIcon) {\n <mat-icon\n matChipTrailingIcon\n class=\"elder-trailing-icon\"\n [fontSet]=\"chipModel.trailingSpec?.iconFontSet\"\n >{{ trailingIcon }}</mat-icon\n >\n }\n\n @if (chipModel.removable) {\n <mat-icon matChipRemove (click)=\"onClickRemoveChip($event, chipModel.value)\">\n cancel\n </mat-icon>\n }\n </mat-chip-row>\n }\n\n <div class=\"layout-row place-start-center elder-chip-input\">\n <!-- [matChipInputFor]=\"chips\" -->\n <ng-container *ngTemplateOutlet=\"templates()?.input || selectInput\"> </ng-container>\n\n @if (selectionPopup) {\n <button\n mat-icon-button\n type=\"button\"\n class=\"elder-control-icon-button elder-browse-icon\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\"\n aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n }\n </div>\n </mat-chip-set>\n</div>\n\n<ng-template #selectInput>\n <!-- mat-mdc-chip-input -->\n <elder-select\n autocomplete\n elderClearSelect\n class=\"elder-chip-input-select flex\"\n [data]=\"dataContextS()\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"!!readonly\"\n [placeholder]=\"placeholderS()\"\n (entityUpdated)=\"appendEntity($event)\"\n [displayPropertyResolver]=\"displayPropertyResolverS()\"\n [valueTemplate]=\"valueTemplate\"\n [queryFilter]=\"queryFilter\"\n [filters]=\"filters\"\n [sorts]=\"sorts\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n ></elder-select>\n</ng-template>\n\n<ng-template #simpleChipTemplate let-chipModel>\n <span class=\"elder-chip-text\">{{ chipModel.displayText | elderTruncate: 20 }}</span>\n</ng-template>\n", styles: [".elder-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.elder-trailing-icon{color:var(--mdc-chip-with-trailing-icon-trailing-icon-color);opacity:.54}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role", "tabIndex"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "directive", type: ElderChipLabelDirective, selector: "[elderChipLabel]", inputs: ["appearance", "color", "stateColor", "levelColor"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: MatChipAvatar, selector: "mat-chip-avatar, [matChipAvatar]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: MatChipTrailingIcon, selector: "mat-chip-trailing-icon, [matChipTrailingIcon]" }, { kind: "directive", type: MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "component", type: ElderSelectComponent, selector: "elder-select", inputs: ["nullDisplay", "autocomplete", "allowNull", "entity", "entityId"], outputs: ["entityIdChange", "entityIdUpdated", "entityChange", "entityUpdated"] }, { kind: "directive", type: ElderClearSelectDirective, selector: "[elderClearSelect]" }, { kind: "pipe", type: ElderTruncatePipe, name: "elderTruncate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
213
|
-
}
|
|
214
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectChipsComponent, decorators: [{
|
|
215
|
-
type: Component,
|
|
216
|
-
args: [{ selector: 'elder-multi-select-chips', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
217
|
-
{ provide: MatFormFieldControl, useExisting: ElderMultiSelectChipsComponent },
|
|
218
|
-
{
|
|
219
|
-
provide: ELDER_SELECT_BASE,
|
|
220
|
-
useExisting: forwardRef(() => ElderMultiSelectChipsComponent),
|
|
221
|
-
},
|
|
222
|
-
], standalone: true, imports: [
|
|
223
|
-
MatTooltip,
|
|
224
|
-
MatChipSet,
|
|
225
|
-
CdkDropList,
|
|
226
|
-
MatIcon,
|
|
227
|
-
MatChipRow,
|
|
228
|
-
ElderChipLabelDirective,
|
|
229
|
-
CdkDrag,
|
|
230
|
-
MatChipAvatar,
|
|
231
|
-
NgTemplateOutlet,
|
|
232
|
-
MatChipTrailingIcon,
|
|
233
|
-
MatChipRemove,
|
|
234
|
-
MatIconButton,
|
|
235
|
-
ElderStopEventPropagationDirective,
|
|
236
|
-
ElderSelectComponent,
|
|
237
|
-
ElderClearSelectDirective,
|
|
238
|
-
ElderTruncatePipe,
|
|
239
|
-
], template: "<div class=\"elder-flex-control\" [matTooltip]=\"state()?.error\">\n <mat-chip-set\n #chips\n [class.mat-mdc-chip-set-stacked]=\"stacked\"\n cdkDropList\n [cdkDropListOrientation]=\"stacked ? 'vertical' : 'horizontal'\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"!allowSorting\"\n >\n @if (icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n <mat-icon\n disabled\n class=\"elder-prefix-icon elder-mdc-control-icon elder-icon-small noselect\"\n [class.loading]=\"state()?.loading\"\n >\n {{ icon }}\n </mat-icon>\n </div>\n }\n\n @for (chipModel of selectChips(); track chipModel.id) {\n <mat-chip-row\n elderChipLabel\n class=\"noselect clickable-chip\"\n [value]=\"resolveChipValue(chipModel.value)\"\n [color]=\"chipModel.colorSpec?.themeColor\"\n [levelColor]=\"chipModel.colorSpec?.levelColor\"\n [stateColor]=\"chipModel.colorSpec?.stateColor\"\n [removable]=\"chipModel.removable\"\n (keydown)=\"onChipKeyDown($event, chipModel.value)\"\n (click)=\"onCurrentClicked(chipModel.value)\"\n cdkDrag\n [cdkDragData]=\"chipModel.value\"\n [cdkDragDisabled]=\"!allowSorting\"\n >\n @if (templates()?.avatar && !chipModel.avatarSpec?.hide) {\n <mat-chip-avatar [class.chip-avatar-xl]=\"chipModel.avatarSpec?.large\">\n <ng-container *ngTemplateOutlet=\"templates().avatar; context: { $implicit: chipModel }\">\n </ng-container>\n </mat-chip-avatar>\n }\n\n <ng-container\n *ngTemplateOutlet=\"\n templates()?.chip || simpleChipTemplate;\n context: { $implicit: chipModel }\n \"\n >\n </ng-container>\n\n @if (chipModel.trailingSpec?.icon; as trailingIcon) {\n <mat-icon\n matChipTrailingIcon\n class=\"elder-trailing-icon\"\n [fontSet]=\"chipModel.trailingSpec?.iconFontSet\"\n >{{ trailingIcon }}</mat-icon\n >\n }\n\n @if (chipModel.removable) {\n <mat-icon matChipRemove (click)=\"onClickRemoveChip($event, chipModel.value)\">\n cancel\n </mat-icon>\n }\n </mat-chip-row>\n }\n\n <div class=\"layout-row place-start-center elder-chip-input\">\n <!-- [matChipInputFor]=\"chips\" -->\n <ng-container *ngTemplateOutlet=\"templates()?.input || selectInput\"> </ng-container>\n\n @if (selectionPopup) {\n <button\n mat-icon-button\n type=\"button\"\n class=\"elder-control-icon-button elder-browse-icon\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\"\n aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n }\n </div>\n </mat-chip-set>\n</div>\n\n<ng-template #selectInput>\n <!-- mat-mdc-chip-input -->\n <elder-select\n autocomplete\n elderClearSelect\n class=\"elder-chip-input-select flex\"\n [data]=\"dataContextS()\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"!!readonly\"\n [placeholder]=\"placeholderS()\"\n (entityUpdated)=\"appendEntity($event)\"\n [displayPropertyResolver]=\"displayPropertyResolverS()\"\n [valueTemplate]=\"valueTemplate\"\n [queryFilter]=\"queryFilter\"\n [filters]=\"filters\"\n [sorts]=\"sorts\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n ></elder-select>\n</ng-template>\n\n<ng-template #simpleChipTemplate let-chipModel>\n <span class=\"elder-chip-text\">{{ chipModel.displayText | elderTruncate: 20 }}</span>\n</ng-template>\n", styles: [".elder-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.elder-trailing-icon{color:var(--mdc-chip-with-trailing-icon-trailing-icon-color);opacity:.54}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
240
|
-
}], ctorParameters: () => [], propDecorators: { defaultChipSpec: [{
|
|
241
|
-
type: Input
|
|
242
|
-
}], chipSpecFn: [{
|
|
243
|
-
type: Input
|
|
244
|
-
}], allowRemove: [{
|
|
245
|
-
type: Input
|
|
246
|
-
}], allowSorting: [{
|
|
247
|
-
type: Input
|
|
248
|
-
}], stacked: [{
|
|
249
|
-
type: Input
|
|
250
|
-
}], maxDisplayCount: [{
|
|
251
|
-
type: Input
|
|
252
|
-
}], _customChipInput: [{
|
|
253
|
-
type: ContentChild,
|
|
254
|
-
args: [MatFormFieldControl]
|
|
255
|
-
}], _chipInput: [{
|
|
256
|
-
type: ViewChild,
|
|
257
|
-
args: [ElderSelectComponent]
|
|
258
|
-
}], chipTemplateQuery: [{
|
|
259
|
-
type: ContentChild,
|
|
260
|
-
args: [ElderSelectChipDirective, { read: TemplateRef, static: false }]
|
|
261
|
-
}], chipTemplate: [{
|
|
262
|
-
type: Input
|
|
263
|
-
}], chipAvatarTemplateQuery: [{
|
|
264
|
-
type: ContentChild,
|
|
265
|
-
args: [ElderSelectChipAvatarDirective, { read: TemplateRef, static: false }]
|
|
266
|
-
}], chipAvatarTemplate: [{
|
|
267
|
-
type: Input
|
|
268
|
-
}], customInputTemplateQuery: [{
|
|
269
|
-
type: ContentChild,
|
|
270
|
-
args: [ElderSelectCustomInputDirective, { read: TemplateRef, static: false }]
|
|
271
|
-
}], customInputTemplate: [{
|
|
272
|
-
type: Input
|
|
273
|
-
}] } });
|
|
274
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbXVsdGktc2VsZWN0LWNoaXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L211bHRpL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy9lbGRlci1tdWx0aS1zZWxlY3QtY2hpcHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QvbXVsdGkvZWxkZXItbXVsdGktc2VsZWN0LWNoaXBzL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBRVosVUFBVSxFQUNWLEtBQUssRUFLTCxXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLE1BQU0sTUFBTSxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDcEQsT0FBTyxFQUNMLDhCQUE4QixFQUM5Qix3QkFBd0IsRUFDeEIsK0JBQStCLEdBQ2hDLE1BQU0sbUNBQW1DLENBQUE7QUFFMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDbEUsT0FBTyxFQUNMLGlCQUFpQixHQUdsQixNQUFNLHlCQUF5QixDQUFBO0FBSWhDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxN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QUFnQjtzQkFBbEQsWUFBWTt1QkFBQyxtQkFBbUI7Z0JBQ0EsVUFBVTtzQkFBMUMsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBZ0VwQixpQkFBaUI7c0JBRDNCLFlBQVk7dUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBTWpFLFlBQVk7c0JBRHRCLEtBQUs7Z0JBVUssdUJBQXVCO3NCQURqQyxZQUFZO3VCQUFDLDhCQUE4QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQVF2RSxrQkFBa0I7c0JBRDVCLEtBQUs7Z0JBVUssd0JBQXdCO3NCQURsQyxZQUFZO3VCQUFDLCtCQUErQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQVF4RSxtQkFBbUI7c0JBRDdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9wdGlvbmFsLFxuICBTZWxmLFxuICBTaWduYWwsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBFbGRlck11bHRpU2VsZWN0QmFzZSB9IGZyb20gJy4uL2VsZGVyLW11bHRpLXNlbGVjdC1iYXNlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHtcbiAgRWxkZXJTZWxlY3RDaGlwQXZhdGFyRGlyZWN0aXZlLFxuICBFbGRlclNlbGVjdENoaXBEaXJlY3RpdmUsXG4gIEVsZGVyU2VsZWN0Q3VzdG9tSW5wdXREaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2VsZGVyLXNlbGVjdC1jaGlwLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXG5pbXBvcnQge1xuICBFTERFUl9TRUxFQ1RfQkFTRSxcbiAgRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSxcbiAgVGV4dFJlc29sdmVyRm4sXG59IGZyb20gJy4uLy4uL2VsZGVyLXNlbGVjdC1iYXNlJ1xuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBFbGRlckRpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9kaWFsb2dzL2VsZGVyLWRpYWxvZy5zZXJ2aWNlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBFbGRlclNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NpbmdsZS9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXksIENka0Ryb3BMaXN0LCBDZGtEcmFnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCdcbmltcG9ydCB7XG4gIENoaXBBdmF0YXJTcGVjLFxuICBDaGlwQ29sb3JTcGVjLFxuICBTZWxlY3RDaGlwU3BlYyxcbiAgU2VsZWN0Q2hpcFNwZWNVdGlsLFxuICBUcmFpbGluZ1NwZWMsXG59IGZyb20gJy4vc2VsZWN0LWNoaXAtc3BlYydcbmltcG9ydCB7IEVsZGVyVHJ1bmNhdGVQaXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vcGlwZXMvZWxkZXItdHJ1bmNhdGUucGlwZSdcbmltcG9ydCB7IEVsZGVyQ2xlYXJTZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9zaW5nbGUvZWxkZXItY2xlYXItc2VsZWN0LmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9mb3Jtcy9kaXJlY3RpdmVzL2VsZGVyLXN0b3AtZXZlbnQtcHJvcGFnYXRpb24uZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcbmltcG9ydCB7IEVsZGVyQ2hpcExhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vY2hpcHMvZWxkZXItY2hpcC1sYWJlbC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7XG4gIE1hdENoaXBTZXQsXG4gIE1hdENoaXBSb3csXG4gIE1hdENoaXBBdmF0YXIsXG4gIE1hdENoaXBUcmFpbGluZ0ljb24sXG4gIE1hdENoaXBSZW1vdmUsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBOZ0lmLCBOZ0ZvciwgTmdUZW1wbGF0ZU91dGxldCwgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJ1xuXG5jbGFzcyBDaGlwTW9kZWw8VD4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWQ6IGFueSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IFQsXG4gICAgcHVibGljIHJlYWRvbmx5IGRpc3BsYXlUZXh0OiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbG9yU3BlYzogQ2hpcENvbG9yU3BlYyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVtb3ZhYmxlOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBhdmF0YXJTcGVjOiBDaGlwQXZhdGFyU3BlYyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHJhaWxpbmdTcGVjOiBUcmFpbGluZ1NwZWNcbiAgKSB7fVxufVxuXG5pbnRlcmZhY2UgVGVtcGxhdGVXcmFwcGVyIHtcbiAgY2hpcDogVGVtcGxhdGVSZWY8YW55PlxuICBhdmF0YXI6IFRlbXBsYXRlUmVmPGFueT5cblxuICBpbnB1dDogVGVtcGxhdGVSZWY8YW55PlxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1tdWx0aS1zZWxlY3QtY2hpcHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItbXVsdGktc2VsZWN0LWNoaXBzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItbXVsdGktc2VsZWN0LWNoaXBzLmNvbXBvbmVudC5zY3NzJ10sXG4gIC8vIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsIHVzZUV4aXN0aW5nOiBFbGRlck11bHRpU2VsZWN0Q2hpcHNDb21wb25lbnQgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBFTERFUl9TRUxFQ1RfQkFTRSxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVsZGVyTXVsdGlTZWxlY3RDaGlwc0NvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdFRvb2x0aXAsXG4gICAgTWF0Q2hpcFNldCxcbiAgICBDZGtEcm9wTGlzdCxcbiAgICBNYXRJY29uLFxuICAgIE1hdENoaXBSb3csXG4gICAgRWxkZXJDaGlwTGFiZWxEaXJlY3RpdmUsXG4gICAgQ2RrRHJhZyxcbiAgICBNYXRDaGlwQXZhdGFyLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgTWF0Q2hpcFRyYWlsaW5nSWNvbixcbiAgICBNYXRDaGlwUmVtb3ZlLFxuICAgIE1hdEljb25CdXR0b24sXG4gICAgRWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBFbGRlclNlbGVjdENvbXBvbmVudCxcbiAgICBFbGRlckNsZWFyU2VsZWN0RGlyZWN0aXZlLFxuICAgIEVsZGVyVHJ1bmNhdGVQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlck11bHRpU2VsZWN0Q2hpcHNDb21wb25lbnQ8XG4gIFRJZCA9IGFueSxcbiAgVEVudGl0eSA9IGFueSxcbiAgVFZhbHVlID0gYW55LFxuPiBleHRlbmRzIEVsZGVyTXVsdGlTZWxlY3RCYXNlPFRJZCwgVEVudGl0eSwgVFZhbHVlPiB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyByZWFkb25seSBzZWxlY3RDaGlwczogU2lnbmFsPENoaXBNb2RlbDxURW50aXR5PltdPlxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkZWZhdWx0Q2hpcFNwZWM6IFNlbGVjdENoaXBTcGVjID0gU2VsZWN0Q2hpcFNwZWNVdGlsLkRlZmF1bHRDaGlwU3BlY1xuXG4gIC8qKlxuICAgKiBBbGxvd3MgdG8gY3VzdG9taXplIGVhY2ggY2hpcCBpbmRpdmlkdWFsbHkgKENvbG9yLCBSZW1vdmFibGUsIEF2YXRhcikuXG4gICAqXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2hpcFNwZWNGbjogKGU6IFRFbnRpdHkpID0+IFNlbGVjdENoaXBTcGVjID0gKGUpID0+IHRoaXMuZGVmYXVsdENoaXBTcGVjXG5cbiAgcHVibGljIHNlbGVjdGFibGUgPSB0cnVlXG5cbiAgQElucHV0KClcbiAgcHVibGljIGFsbG93UmVtb3ZlID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd1NvcnRpbmcgPSBmYWxzZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdGFja2VkID0gZmFsc2VcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbWF4RGlzcGxheUNvdW50OiBudW1iZXJcblxuICBAQ29udGVudENoaWxkKE1hdEZvcm1GaWVsZENvbnRyb2wpIF9jdXN0b21DaGlwSW5wdXQ6IE1hdEZvcm1GaWVsZENvbnRyb2w8YW55PlxuICBAVmlld0NoaWxkKEVsZGVyU2VsZWN0Q29tcG9uZW50KSBfY2hpcElucHV0OiBNYXRGb3JtRmllbGRDb250cm9sPGFueT5cblxuICByZWFkb25seSB0ZW1wbGF0ZXM6IFNpZ25hbDxUZW1wbGF0ZVdyYXBwZXI+XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjaGlwVGVtcGxhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUZW1wbGF0ZVJlZjxhbnk+PihudWxsKVxuICBwcml2YXRlIHJlYWRvbmx5IGNoaXBBdmF0YXJUZW1wbGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRlbXBsYXRlUmVmPGFueT4+KG51bGwpXG4gIHByaXZhdGUgcmVhZG9ubHkgY3VzdG9tSW5wdXRUZW1wbGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRlbXBsYXRlUmVmPGFueT4+KG51bGwpXG5cbiAgcHJpdmF0ZSByZWFkb25seSByZWZyZXNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSlcblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignbXVsdGktc2VsZWN0LWNoaXBzJylcblxuICAgIHRoaXMucGxhY2Vob2xkZXIgPSAnLi4uJ1xuXG4gICAgdGhpcy5zZWxlY3RDaGlwcyA9IHRvU2lnbmFsKFxuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuZW50aXRpZXMkLFxuICAgICAgICB0aGlzLmVudGl0eUlkcyQsXG4gICAgICAgIHRvT2JzZXJ2YWJsZSh0aGlzLnN0YXRlKSxcbiAgICAgICAgdG9PYnNlcnZhYmxlKHRoaXMuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXJTKSxcbiAgICAgICAgdG9PYnNlcnZhYmxlKHRoaXMucmVhZG9ubHlTKSxcbiAgICAgICAgdG9PYnNlcnZhYmxlKHRoaXMuZGlzYWJsZWRTKSxcbiAgICAgICAgdGhpcy5yZWZyZXNoJCxcbiAgICAgIF0pLnBpcGUoXG4gICAgICAgIG1hcCgoW2VudGl0aWVzLCBlbnRpdHlJZHMsIHN0YXRlLCBkUFJdKSA9PlxuICAgICAgICAgIHRoaXMuYnVpbGRDaGlwTW9kZWxzT3JGYWxsYmFjayhlbnRpdGllcywgZW50aXR5SWRzLCBzdGF0ZSwgZFBSKVxuICAgICAgICApLFxuICAgICAgICBtYXAoKG1vZGVscykgPT5cbiAgICAgICAgICB0aGlzLm1heERpc3BsYXlDb3VudCAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHRoaXMucmVkdWNlRGlzcGxheWVkQ2hpcHMobW9kZWxzLCB0aGlzLm1heERpc3BsYXlDb3VudClcbiAgICAgICAgICAgIDogbW9kZWxzXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG5cbiAgICB0aGlzLnRlbXBsYXRlcyA9IHRvU2lnbmFsKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5jaGlwVGVtcGxhdGUkLCB0aGlzLmNoaXBBdmF0YXJUZW1wbGF0ZSQsIHRoaXMuY3VzdG9tSW5wdXRUZW1wbGF0ZSRdKS5waXBlKFxuICAgICAgICBtYXAoKFtjaGlwLCBhdmF0YXIsIGlucHV0XSkgPT4ge1xuICAgICAgICAgIHJldHVybiA8VGVtcGxhdGVXcmFwcGVyPntcbiAgICAgICAgICAgIGNoaXAsXG4gICAgICAgICAgICBhdmF0YXIsXG4gICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQENvbnRlbnRDaGlsZChFbGRlclNlbGVjdENoaXBEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2UgfSlcbiAgcHVibGljIHNldCBjaGlwVGVtcGxhdGVRdWVyeSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIHRoaXMuY2hpcFRlbXBsYXRlID0gdGVtcGxhdGVcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2hpcFRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5jaGlwVGVtcGxhdGUkLm5leHQodGVtcGxhdGUpXG4gIH1cblxuICBwdWJsaWMgZ2V0IGNoaXBUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jaGlwVGVtcGxhdGUkLmdldFZhbHVlKClcbiAgfVxuXG4gIEBDb250ZW50Q2hpbGQoRWxkZXJTZWxlY3RDaGlwQXZhdGFyRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyBzZXQgY2hpcEF2YXRhclRlbXBsYXRlUXVlcnkodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICBpZiAodGVtcGxhdGUpIHtcbiAgICAgIHRoaXMuY2hpcEF2YXRhclRlbXBsYXRlID0gdGVtcGxhdGVcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGNoaXBBdmF0YXJUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIHRoaXMuY2hpcEF2YXRhclRlbXBsYXRlJC5uZXh0KHRlbXBsYXRlKVxuICB9XG5cbiAgcHVibGljIGdldCBjaGlwQXZhdGFyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuY2hpcEF2YXRhclRlbXBsYXRlJC5nZXRWYWx1ZSgpXG4gIH1cblxuICBAQ29udGVudENoaWxkKEVsZGVyU2VsZWN0Q3VzdG9tSW5wdXREaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2UgfSlcbiAgcHVibGljIHNldCBjdXN0b21JbnB1dFRlbXBsYXRlUXVlcnkodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICBpZiAodGVtcGxhdGUpIHtcbiAgICAgIHRoaXMuY3VzdG9tSW5wdXRUZW1wbGF0ZSA9IHRlbXBsYXRlXG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBjdXN0b21JbnB1dFRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5jdXN0b21JbnB1dFRlbXBsYXRlJC5uZXh0KHRlbXBsYXRlKVxuICB9XG5cbiAgcHVibGljIGdldCBjdXN0b21JbnB1dFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmN1c3RvbUlucHV0VGVtcGxhdGUkLmdldFZhbHVlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxhbnk+KTogdm9pZCB7XG4gICAgY29uc3QgcmVvcmRlcmVkID0gWy4uLnRoaXMuZW50aXRpZXNdXG4gICAgbW92ZUl0ZW1JbkFycmF5KHJlb3JkZXJlZCwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KVxuICAgIHRoaXMuZW50aXRpZXMgPSByZW9yZGVyZWRcbiAgfVxuXG4gIHB1YmxpYyByZXNvbHZlQ2hpcFZhbHVlKGUxOiBURW50aXR5KTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5nZXRFbnRpdHlJZChlMSlcbiAgfVxuXG4gIHB1YmxpYyBvbkNoaXBLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCB0b1JlbW92ZTogVEVudGl0eSk6IHZvaWQge1xuICAgIHRoaXMubG9nLndhcm4oJ29uQ2hpcEtleURvd24nLCBldmVudClcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnQmFja3NwYWNlJyB8fCBldmVudC5rZXkgPT09ICdEZWxldGUnKSB7XG4gICAgICB0aGlzLnJlcXVlc3RSZW1vdmVFbnRpdHkodG9SZW1vdmUsIGV2ZW50LnNoaWZ0S2V5KVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkNsaWNrUmVtb3ZlQ2hpcChldmVudDogTW91c2VFdmVudCwgdG9SZW1vdmU6IFRFbnRpdHkpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICB0aGlzLnJlcXVlc3RSZW1vdmVFbnRpdHkodG9SZW1vdmUsIGV2ZW50LnNoaWZ0S2V5KVxuICB9XG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuX2N1c3RvbUNoaXBJbnB1dCA/PyB0aGlzLl9jaGlwSW5wdXRcblxuICAgIGlmIChpbnB1dCkge1xuICAgICAgaW5wdXQub25Db250YWluZXJDbGljayhuZXcgTW91c2VFdmVudCgnJykpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nLndhcm4oJ0NhbnQgZm9jdXMgc2luY2Ugbm8gY2hpcC1pbnB1dC1jb250cm9sIGZvdW5kIScpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGJsdXIoKSB7XG4gICAgdGhpcy5sb2cud2FybignYmx1cigpIG5vdCB5ZXQgc3VwcG9ydGVkIScpXG4gICAgLy8gVE9ETyB0aGlzLmlucHV0Q29udHJvbD8uYmx1cigpO1xuICAgIC8vIHRoaXMuY3VzdG9tSW5wdXRUZW1wbGF0ZS5ibHVyKClcbiAgfVxuXG4gIHB1YmxpYyByZWZyZXNoKCk6IHZvaWQge1xuICAgIHRoaXMucmVmcmVzaCQubmV4dCh0cnVlKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBidWlsZENoaXBNb2RlbHNPckZhbGxiYWNrKFxuICAgIGVudGl0aWVzOiBURW50aXR5W10sXG4gICAgZW50aXR5SWRzOiBUSWRbXSxcbiAgICBzdGF0ZTogRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSxcbiAgICBkUFI6IFRleHRSZXNvbHZlckZuXG4gICk6IENoaXBNb2RlbDxURW50aXR5PltdIHtcbiAgICBpZiAoc3RhdGUuZXJyb3IpIHtcbiAgICAgIHJldHVybiB0aGlzLmJ1aWxkQ2hpcEZhbGxiYWNrTW9kZWxzKGVudGl0eUlkcylcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYnVpbGRDaGlwTW9kZWxzKGVudGl0aWVzLCBkUFIpXG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ2hpcEZhbGxiYWNrTW9kZWxzKGVudGl0eUlkczogVElkW10pOiBDaGlwTW9kZWw8VEVudGl0eT5bXSB7XG4gICAgcmV0dXJuIGVudGl0eUlkcy5tYXAoKGlkKSA9PlxuICAgICAgdGhpcy5idWlsZENoaXBCeVNwZWMoPGFueT57IGlkOiBpZCB9LCAoKSA9PiBTdHJpbmcoaWQpLCB7XG4gICAgICAgIGNvbG9yU3BlYzoge1xuICAgICAgICAgIHRoZW1lQ29sb3I6ICd3YXJuJyxcbiAgICAgICAgfSxcbiAgICAgICAgYXZhdGFyU3BlYzoge1xuICAgICAgICAgIGhpZGU6IGZhbHNlLFxuICAgICAgICAgIGxhcmdlOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENoaXBNb2RlbHMoZW50aXRpZXM6IFRFbnRpdHlbXSwgZFBSOiBUZXh0UmVzb2x2ZXJGbik6IENoaXBNb2RlbDxURW50aXR5PltdIHtcbiAgICBpZiAoZW50aXRpZXMpIHtcbiAgICAgIHJldHVybiBlbnRpdGllcy5tYXAoKGUpID0+XG4gICAgICAgIHRoaXMuYnVpbGRDaGlwQnlTcGVjKGUsIGRQUiwgdGhpcy5jaGlwU3BlY0ZuKGUpID8/IHRoaXMuZGVmYXVsdENoaXBTcGVjKVxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gPENoaXBNb2RlbDxURW50aXR5PltdPltdXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENoaXBCeVNwZWMoXG4gICAgZTogVEVudGl0eSxcbiAgICBkUFI6IFRleHRSZXNvbHZlckZuLFxuICAgIGNoaXBTcGVjOiBTZWxlY3RDaGlwU3BlY1xuICApOiBDaGlwTW9kZWw8VEVudGl0eT4ge1xuICAgIGxldCByZW1vdmFibGUgPSBmYWxzZVxuICAgIGlmICh0aGlzLmFsbG93UmVtb3ZlICYmICF0aGlzLmlzTG9ja2VkKSB7XG4gICAgICBpZiAoY2hpcFNwZWMucmVtb3ZhYmxlICE9PSBmYWxzZSkge1xuICAgICAgICByZW1vdmFibGUgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgQ2hpcE1vZGVsPFRFbnRpdHk+KFxuICAgICAgdGhpcy5nZXRFbnRpdHlJZChlKSxcbiAgICAgIGUsXG4gICAgICBkUFIoZSksXG4gICAgICBjaGlwU3BlYz8uY29sb3JTcGVjLFxuICAgICAgcmVtb3ZhYmxlLFxuICAgICAgY2hpcFNwZWMuYXZhdGFyU3BlYyxcbiAgICAgIGNoaXBTcGVjLnRyYWlsaW5nU3BlY1xuICAgIClcbiAgfVxuXG4gIHByaXZhdGUgcmVkdWNlRGlzcGxheWVkQ2hpcHMobW9kZWxzOiBDaGlwTW9kZWw8VEVudGl0eT5bXSwgY291bnQ6IG51bWJlcik6IENoaXBNb2RlbDxURW50aXR5PltdIHtcbiAgICBjb25zdCByZWR1Y2VkQ2hpcHMgPSBtb2RlbHMuc2xpY2UoMCwgY291bnQpXG4gICAgY29uc3QgZGVsdGFDb3VudCA9IG1vZGVscy5sZW5ndGggLSByZWR1Y2VkQ2hpcHMubGVuZ3RoXG4gICAgaWYgKGRlbHRhQ291bnQgPiAwKSB7XG4gICAgICBjb25zdCBpbmRpY2F0b3JDaGlwID0gdGhpcy5idWlsZEluZGljYXRvckNoaXAoZGVsdGFDb3VudClcbiAgICAgIHJlZHVjZWRDaGlwcy5wdXNoKGluZGljYXRvckNoaXApXG4gICAgfVxuICAgIHJldHVybiByZWR1Y2VkQ2hpcHNcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRJbmRpY2F0b3JDaGlwKGRlbHRhQ291bnQ6IG51bWJlcik6IENoaXBNb2RlbDxURW50aXR5PiB7XG4gICAgcmV0dXJuIG5ldyBDaGlwTW9kZWwoXG4gICAgICAnb3ZlcmZsb3ctaW5kaWNhdG9yJyxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgICcrJyArIGRlbHRhQ291bnQsXG4gICAgICB7fSxcbiAgICAgIGZhbHNlLFxuICAgICAgeyBoaWRlOiB0cnVlIH0sXG4gICAgICB7fVxuICAgIClcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVsZGVyLWZsZXgtY29udHJvbFwiIFttYXRUb29sdGlwXT1cInN0YXRlKCk/LmVycm9yXCI+XG4gIDxtYXQtY2hpcC1zZXRcbiAgICAjY2hpcHNcbiAgICBbY2xhc3MubWF0LW1kYy1jaGlwLXNldC1zdGFja2VkXT1cInN0YWNrZWRcIlxuICAgIGNka0Ryb3BMaXN0XG4gICAgW2Nka0Ryb3BMaXN0T3JpZW50YXRpb25dPVwic3RhY2tlZCA/ICd2ZXJ0aWNhbCcgOiAnaG9yaXpvbnRhbCdcIlxuICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcbiAgICBbY2RrRHJvcExpc3REaXNhYmxlZF09XCIhYWxsb3dTb3J0aW5nXCJcbiAgPlxuICAgIEBpZiAoaWNvbikge1xuICAgICAgPGRpdiBjbGFzcz1cImVsZGVyLWlucHV0LXByZWZpeC1pY29uLWNvbnRhaW5lciBmbGV4LW5vbmVcIj5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgZGlzYWJsZWRcbiAgICAgICAgICBjbGFzcz1cImVsZGVyLXByZWZpeC1pY29uIGVsZGVyLW1kYy1jb250cm9sLWljb24gZWxkZXItaWNvbi1zbWFsbCBub3NlbGVjdFwiXG4gICAgICAgICAgW2NsYXNzLmxvYWRpbmddPVwic3RhdGUoKT8ubG9hZGluZ1wiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBpY29uIH19XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAZm9yIChjaGlwTW9kZWwgb2Ygc2VsZWN0Q2hpcHMoKTsgdHJhY2sgY2hpcE1vZGVsLmlkKSB7XG4gICAgICA8bWF0LWNoaXAtcm93XG4gICAgICAgIGVsZGVyQ2hpcExhYmVsXG4gICAgICAgIGNsYXNzPVwibm9zZWxlY3QgY2xpY2thYmxlLWNoaXBcIlxuICAgICAgICBbdmFsdWVdPVwicmVzb2x2ZUNoaXBWYWx1ZShjaGlwTW9kZWwudmFsdWUpXCJcbiAgICAgICAgW2NvbG9yXT1cImNoaXBNb2RlbC5jb2xvclNwZWM/LnRoZW1lQ29sb3JcIlxuICAgICAgICBbbGV2ZWxDb2xvcl09XCJjaGlwTW9kZWwuY29sb3JTcGVjPy5sZXZlbENvbG9yXCJcbiAgICAgICAgW3N0YXRlQ29sb3JdPVwiY2hpcE1vZGVsLmNvbG9yU3BlYz8uc3RhdGVDb2xvclwiXG4gICAgICAgIFtyZW1vdmFibGVdPVwiY2hpcE1vZGVsLnJlbW92YWJsZVwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uQ2hpcEtleURvd24oJGV2ZW50LCBjaGlwTW9kZWwudmFsdWUpXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ3VycmVudENsaWNrZWQoY2hpcE1vZGVsLnZhbHVlKVwiXG4gICAgICAgIGNka0RyYWdcbiAgICAgICAgW2Nka0RyYWdEYXRhXT1cImNoaXBNb2RlbC52YWx1ZVwiXG4gICAgICAgIFtjZGtEcmFnRGlzYWJsZWRdPVwiIWFsbG93U29ydGluZ1wiXG4gICAgICA+XG4gICAgICAgIEBpZiAodGVtcGxhdGVzKCk/LmF2YXRhciAmJiAhY2hpcE1vZGVsLmF2YXRhclNwZWM/LmhpZGUpIHtcbiAgICAgICAgICA8bWF0LWNoaXAtYXZhdGFyIFtjbGFzcy5jaGlwLWF2YXRhci14bF09XCJjaGlwTW9kZWwuYXZhdGFyU3BlYz8ubGFyZ2VcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXMoKS5hdmF0YXI7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjaGlwTW9kZWwgfVwiPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9tYXQtY2hpcC1hdmF0YXI+XG4gICAgICAgIH1cblxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgIHRlbXBsYXRlcygpPy5jaGlwIHx8IHNpbXBsZUNoaXBUZW1wbGF0ZTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjaGlwTW9kZWwgfVxuICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgQGlmIChjaGlwTW9kZWwudHJhaWxpbmdTcGVjPy5pY29uOyBhcyB0cmFpbGluZ0ljb24pIHtcbiAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIG1hdENoaXBUcmFpbGluZ0ljb25cbiAgICAgICAgICAgIGNsYXNzPVwiZWxkZXItdHJhaWxpbmctaWNvblwiXG4gICAgICAgICAgICBbZm9udFNldF09XCJjaGlwTW9kZWwudHJhaWxpbmdTcGVjPy5pY29uRm9udFNldFwiXG4gICAgICAgICAgICA+e3sgdHJhaWxpbmdJY29uIH19PC9tYXQtaWNvblxuICAgICAgICAgID5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoY2hpcE1vZGVsLnJlbW92YWJsZSkge1xuICAgICAgICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlIChjbGljayk9XCJvbkNsaWNrUmVtb3ZlQ2hpcCgkZXZlbnQsIGNoaXBNb2RlbC52YWx1ZSlcIj5cbiAgICAgICAgICAgIGNhbmNlbFxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIH1cbiAgICAgIDwvbWF0LWNoaXAtcm93PlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBlbGRlci1jaGlwLWlucHV0XCI+XG4gICAgICA8IS0tIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcHNcIiAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXMoKT8uaW5wdXQgfHwgc2VsZWN0SW5wdXRcIj4gPC9uZy1jb250YWluZXI+XG5cbiAgICAgIEBpZiAoc2VsZWN0aW9uUG9wdXApIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGNsYXNzPVwiZWxkZXItY29udHJvbC1pY29uLWJ1dHRvbiBlbGRlci1icm93c2UtaWNvblwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImlzTG9ja2VkXCJcbiAgICAgICAgICAoY2xpY2spPVwib3BlblNlbGVjdGlvblBvcHVwKCRldmVudClcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJTZWFyY2hcIlxuICAgICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgICAgICB0YWJJbmRleD1cIi0xXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImVsZGVyLW1kYy1jb250cm9sLWljb25cIj5zZWFyY2g8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9tYXQtY2hpcC1zZXQ+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNzZWxlY3RJbnB1dD5cbiAgPCEtLSBtYXQtbWRjLWNoaXAtaW5wdXQgLS0+XG4gIDxlbGRlci1zZWxlY3RcbiAgICBhdXRvY29tcGxldGVcbiAgICBlbGRlckNsZWFyU2VsZWN0XG4gICAgY2xhc3M9XCJlbGRlci1jaGlwLWlucHV0LXNlbGVjdCBmbGV4XCJcbiAgICBbZGF0YV09XCJkYXRhQ29udGV4dFMoKVwiXG4gICAgW2Rpc2FibGVkXT1cIiEhZGlzYWJsZWRcIlxuICAgIFtyZXF1aXJlZF09XCIhIXJlcXVpcmVkXCJcbiAgICBbcmVhZG9ubHldPVwiISFyZWFkb25seVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyUygpXCJcbiAgICAoZW50aXR5VXBkYXRlZCk9XCJhcHBlbmRFbnRpdHkoJGV2ZW50KVwiXG4gICAgW2Rpc3BsYXlQcm9wZXJ0eVJlc29sdmVyXT1cImRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyUygpXCJcbiAgICBbdmFsdWVUZW1wbGF0ZV09XCJ2YWx1ZVRlbXBsYXRlXCJcbiAgICBbcXVlcnlGaWx0ZXJdPVwicXVlcnlGaWx0ZXJcIlxuICAgIFtmaWx0ZXJzXT1cImZpbHRlcnNcIlxuICAgIFtzb3J0c109XCJzb3J0c1wiXG4gICAgW2lzT3B0aW9uRGlzYWJsZWRGbl09XCJpc09wdGlvbkRpc2FibGVkSW50ZXJuYWxGblwiXG4gICAgW2lzT3B0aW9uSGlkZGVuRm5dPVwiaXNPcHRpb25IaWRkZW5JbnRlcm5hbEZuXCJcbiAgPjwvZWxkZXItc2VsZWN0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzaW1wbGVDaGlwVGVtcGxhdGUgbGV0LWNoaXBNb2RlbD5cbiAgPHNwYW4gY2xhc3M9XCJlbGRlci1jaGlwLXRleHRcIj57eyBjaGlwTW9kZWwuZGlzcGxheVRleHQgfCBlbGRlclRydW5jYXRlOiAyMCB9fTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export class SelectChipSpecUtil {
|
|
2
|
-
static { this.DefaultChipSpec = {
|
|
3
|
-
colorSpec: {
|
|
4
|
-
themeColor: undefined,
|
|
5
|
-
stateColor: undefined,
|
|
6
|
-
levelColor: undefined,
|
|
7
|
-
},
|
|
8
|
-
removable: undefined,
|
|
9
|
-
avatarSpec: {
|
|
10
|
-
hide: false,
|
|
11
|
-
large: false,
|
|
12
|
-
},
|
|
13
|
-
}; }
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWNoaXAtc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L211bHRpL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy9zZWxlY3QtY2hpcC1zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxrQkFBa0I7YUFDTixvQkFBZSxHQUFtQjtRQUN2RCxTQUFTLEVBQUU7WUFDVCxVQUFVLEVBQUUsU0FBUztZQUNyQixVQUFVLEVBQUUsU0FBUztZQUNyQixVQUFVLEVBQUUsU0FBUztTQUN0QjtRQUNELFNBQVMsRUFBRSxTQUFTO1FBQ3BCLFVBQVUsRUFBRTtZQUNWLElBQUksRUFBRSxLQUFLO1lBQ1gsS0FBSyxFQUFFLEtBQUs7U0FDYjtLQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJ1xuaW1wb3J0IHsgRWxkZXJMZXZlbENvbG9yLCBFbGRlclN0YXRlQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9jaGlwcy9lbGRlci1jaGlwLWxhYmVsLmRpcmVjdGl2ZSdcblxuZXhwb3J0IGNsYXNzIFNlbGVjdENoaXBTcGVjVXRpbCB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRGVmYXVsdENoaXBTcGVjOiBTZWxlY3RDaGlwU3BlYyA9IHtcbiAgICBjb2xvclNwZWM6IHtcbiAgICAgIHRoZW1lQ29sb3I6IHVuZGVmaW5lZCxcbiAgICAgIHN0YXRlQ29sb3I6IHVuZGVmaW5lZCxcbiAgICAgIGxldmVsQ29sb3I6IHVuZGVmaW5lZCxcbiAgICB9LFxuICAgIHJlbW92YWJsZTogdW5kZWZpbmVkLFxuICAgIGF2YXRhclNwZWM6IHtcbiAgICAgIGhpZGU6IGZhbHNlLFxuICAgICAgbGFyZ2U6IGZhbHNlLFxuICAgIH0sXG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RDaGlwU3BlYyB7XG4gIGNvbG9yU3BlYz86IENoaXBDb2xvclNwZWNcbiAgcmVtb3ZhYmxlPzogYm9vbGVhblxuICBhdmF0YXJTcGVjPzogQ2hpcEF2YXRhclNwZWNcbiAgdHJhaWxpbmdTcGVjPzogVHJhaWxpbmdTcGVjXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hpcENvbG9yU3BlYyB7XG4gIHRoZW1lQ29sb3I/OiBUaGVtZVBhbGV0dGVcbiAgc3RhdGVDb2xvcj86IEVsZGVyU3RhdGVDb2xvclxuICBsZXZlbENvbG9yPzogRWxkZXJMZXZlbENvbG9yXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hpcEF2YXRhclNwZWMge1xuICAvKipcbiAgICogSGlkZXMgdGhlIGF2YXRhciBmb3IgdGhpcyBjaGlwLlxuICAgKi9cbiAgaGlkZT86IGJvb2xlYW5cblxuICAvKipcbiAgICogRW5hYmxlcyBsYXJnZSBzdHlsaW5nIG9mIHRoZSBhdmF0YXIgZm9yIHRoaXMgY2hpcFxuICAgKi9cbiAgbGFyZ2U/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhaWxpbmdTcGVjIHtcbiAgaWNvbj86IHN0cmluZ1xuICBpY29uRm9udFNldD86IHN0cmluZ1xufVxuIl19
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { Directive, ViewChild } from '@angular/core';
|
|
2
|
-
import { ElderSelectValueDirective } from '../elder-select-value.directive';
|
|
3
|
-
import { ElderFromFieldMultiEntityBase } from '../../../common/forms/elder-from-field-multi-entity-base';
|
|
4
|
-
import { ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectCustomInputDirective, } from '../elder-select-chip.directive';
|
|
5
|
-
import { ElderSelectBase } from '../elder-select-base';
|
|
6
|
-
import { ElderMultiSelectChipsComponent } from './elder-multi-select-chips/elder-multi-select-chips.component';
|
|
7
|
-
import { SelectionModelPopupDirective } from '../popup/selection-model-popup.directive';
|
|
8
|
-
import { ElderMultiSelectChipOptionsComponent } from './elder-multi-select-chip-options/elder-multi-select-chip-options.component';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class ElderMultiSelectFormField extends ElderFromFieldMultiEntityBase {
|
|
11
|
-
/***************************************************************************
|
|
12
|
-
* *
|
|
13
|
-
* Constructor *
|
|
14
|
-
* *
|
|
15
|
-
**************************************************************************/
|
|
16
|
-
constructor(initSelectFn) {
|
|
17
|
-
super();
|
|
18
|
-
this.applyToControl(initSelectFn);
|
|
19
|
-
}
|
|
20
|
-
/***************************************************************************
|
|
21
|
-
* *
|
|
22
|
-
* Life Cycle *
|
|
23
|
-
* *
|
|
24
|
-
**************************************************************************/
|
|
25
|
-
ngAfterViewInit() {
|
|
26
|
-
const control = this.formFieldControl$.getValue();
|
|
27
|
-
if (control instanceof ElderSelectBase) {
|
|
28
|
-
if (this.selectValueTemplate) {
|
|
29
|
-
control.valueTemplate = this.selectValueTemplate.templateRef;
|
|
30
|
-
}
|
|
31
|
-
if (this.selectionModelPopupDirective) {
|
|
32
|
-
control.selectionPopup = this.selectionModelPopupDirective;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
/***************************************************************************
|
|
37
|
-
* *
|
|
38
|
-
* Properties *
|
|
39
|
-
* *
|
|
40
|
-
**************************************************************************/
|
|
41
|
-
set selectChipDirective(dir) {
|
|
42
|
-
const control = this.formFieldControl$.getValue();
|
|
43
|
-
if (control instanceof ElderMultiSelectChipsComponent) {
|
|
44
|
-
control.chipTemplate = dir?.templateRef;
|
|
45
|
-
}
|
|
46
|
-
if (control instanceof ElderMultiSelectChipOptionsComponent) {
|
|
47
|
-
control.chipTemplate = dir?.templateRef;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
set selectChipAvatarDirective(dir) {
|
|
51
|
-
const control = this.formFieldControl$.getValue();
|
|
52
|
-
if (control instanceof ElderMultiSelectChipsComponent) {
|
|
53
|
-
control.chipAvatarTemplate = dir?.templateRef;
|
|
54
|
-
}
|
|
55
|
-
if (control instanceof ElderMultiSelectChipOptionsComponent) {
|
|
56
|
-
control.chipAvatarTemplate = dir?.templateRef;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
set selectCustomInputDirective(dir) {
|
|
60
|
-
const control = this.formFieldControl$.getValue();
|
|
61
|
-
if (control instanceof ElderMultiSelectChipsComponent) {
|
|
62
|
-
control.customInputTemplate = dir?.templateRef;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectFormField, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
66
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ElderMultiSelectFormField, viewQueries: [{ propertyName: "selectValueTemplate", first: true, predicate: ElderSelectValueDirective, descendants: true }, { propertyName: "selectionModelPopupDirective", first: true, predicate: SelectionModelPopupDirective, descendants: true }, { propertyName: "selectChipDirective", first: true, predicate: ElderSelectChipDirective, descendants: true }, { propertyName: "selectChipAvatarDirective", first: true, predicate: ElderSelectChipAvatarDirective, descendants: true }, { propertyName: "selectCustomInputDirective", first: true, predicate: ElderSelectCustomInputDirective, descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
67
|
-
}
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectFormField, decorators: [{
|
|
69
|
-
type: Directive
|
|
70
|
-
}], ctorParameters: () => [{ type: undefined }], propDecorators: { selectValueTemplate: [{
|
|
71
|
-
type: ViewChild,
|
|
72
|
-
args: [ElderSelectValueDirective]
|
|
73
|
-
}], selectionModelPopupDirective: [{
|
|
74
|
-
type: ViewChild,
|
|
75
|
-
args: [SelectionModelPopupDirective]
|
|
76
|
-
}], selectChipDirective: [{
|
|
77
|
-
type: ViewChild,
|
|
78
|
-
args: [ElderSelectChipDirective]
|
|
79
|
-
}], selectChipAvatarDirective: [{
|
|
80
|
-
type: ViewChild,
|
|
81
|
-
args: [ElderSelectChipAvatarDirective]
|
|
82
|
-
}], selectCustomInputDirective: [{
|
|
83
|
-
type: ViewChild,
|
|
84
|
-
args: [ElderSelectCustomInputDirective]
|
|
85
|
-
}] } });
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbXVsdGktc2VsZWN0LWZvcm0tZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC9tdWx0aS9lbGRlci1tdWx0aS1zZWxlY3QtZm9ybS1maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbkUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFHM0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMERBQTBELENBQUE7QUFDeEcsT0FBTyxFQUNMLDhCQUE4QixFQUM5Qix3QkFBd0IsRUFDeEIsK0JBQStCLEdBQ2hDLE1BQU0sZ0NBQWdDLENBQUE7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3RELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtEQUErRCxDQUFBO0FBQzlHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQ3ZGLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDZFQUE2RSxDQUFBOztBQUdsSSxNQUFNLE9BQWdCLHlCQUNwQixTQUFRLDZCQUtQO0lBZUQ7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ0UsWUFBNkU7UUFFN0UsS0FBSyxFQUFFLENBQUE7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsZUFBZTtRQUNwQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUE7UUFFakQsSUFBSSxPQUFPLFlBQVksZUFBZSxFQUFFLENBQUM7WUFDdkMsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztnQkFDN0IsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFBO1lBQzlELENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO2dCQUN0QyxPQUFPLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQTtZQUM1RCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxtQkFBbUIsQ0FBQyxHQUE2QjtRQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDakQsSUFBSSxPQUFPLFlBQVksOEJBQThCLEVBQUUsQ0FBQztZQUN0RCxPQUFPLENBQUMsWUFBWSxHQUFHLEdBQUcsRUFBRSxXQUFXLENBQUE7UUFDekMsQ0FBQztRQUNELElBQUksT0FBTyxZQUFZLG9DQUFvQyxFQUFFLENBQUM7WUFDNUQsT0FBTyxDQUFDLFlBQVksR0FBRyxHQUFHLEVBQUUsV0FBVyxDQUFBO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFDVyx5QkFBeUIsQ0FBQyxHQUFtQztRQUN0RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDakQsSUFBSSxPQUFPLFlBQVksOEJBQThCLEVBQUUsQ0FBQztZQUN0RCxPQUFPLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxFQUFFLFdBQVcsQ0FBQTtRQUMvQyxDQUFDO1FBQ0QsSUFBSSxPQUFPLFlBQVksb0NBQW9DLEVBQUUsQ0FBQztZQUM1RCxPQUFPLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxFQUFFLFdBQVcsQ0FBQTtRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQ1csMEJBQTBCLENBQUMsR0FBbUM7UUFDdkUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ2pELElBQUksT0FBTyxZQUFZLDhCQUE4QixFQUFFLENBQUM7WUFDdEQsT0FBTyxDQUFDLG1CQUFtQixHQUFHLEdBQUcsRUFBRSxXQUFXLENBQUE7UUFDaEQsQ0FBQztJQUNILENBQUM7K0dBdkZtQix5QkFBeUI7bUdBQXpCLHlCQUF5QiwrRUFlbEMseUJBQXlCLCtGQUd6Qiw0QkFBNEIsc0ZBeUM1Qix3QkFBd0IsNEZBV3hCLDhCQUE4Qiw2RkFXOUIsK0JBQStCOzs0RkFqRnRCLHlCQUF5QjtrQkFEOUMsU0FBUzsyRUFpQkQsbUJBQW1CO3NCQUR6QixTQUFTO3VCQUFDLHlCQUF5QjtnQkFJN0IsNEJBQTRCO3NCQURsQyxTQUFTO3VCQUFDLDRCQUE0QjtnQkEwQzVCLG1CQUFtQjtzQkFEN0IsU0FBUzt1QkFBQyx3QkFBd0I7Z0JBWXhCLHlCQUF5QjtzQkFEbkMsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBWTlCLDBCQUEwQjtzQkFEcEMsU0FBUzt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWxkZXItc2VsZWN0LXZhbHVlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyQXBwbHlDb250cm9sRm4gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZWxkZXItZnJvbS1maWVsZC1iYXNlJ1xuaW1wb3J0IHsgRWxkZXJNdWx0aVNlbGVjdEJhc2UgfSBmcm9tICcuL2VsZGVyLW11bHRpLXNlbGVjdC1iYXNlJ1xuaW1wb3J0IHsgRWxkZXJGcm9tRmllbGRNdWx0aUVudGl0eUJhc2UgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZWxkZXItZnJvbS1maWVsZC1tdWx0aS1lbnRpdHktYmFzZSdcbmltcG9ydCB7XG4gIEVsZGVyU2VsZWN0Q2hpcEF2YXRhckRpcmVjdGl2ZSxcbiAgRWxkZXJTZWxlY3RDaGlwRGlyZWN0aXZlLFxuICBFbGRlclNlbGVjdEN1c3RvbUlucHV0RGlyZWN0aXZlLFxufSBmcm9tICcuLi9lbGRlci1zZWxlY3QtY2hpcC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBFbGRlclNlbGVjdEJhc2UgfSBmcm9tICcuLi9lbGRlci1zZWxlY3QtYmFzZSdcbmltcG9ydCB7IEVsZGVyTXVsdGlTZWxlY3RDaGlwc0NvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItbXVsdGktc2VsZWN0LWNoaXBzL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy5jb21wb25lbnQnXG5pbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlIH0gZnJvbSAnLi4vcG9wdXAvc2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyTXVsdGlTZWxlY3RDaGlwT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItbXVsdGktc2VsZWN0LWNoaXAtb3B0aW9ucy9lbGRlci1tdWx0aS1zZWxlY3QtY2hpcC1vcHRpb25zLmNvbXBvbmVudCdcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRWxkZXJNdWx0aVNlbGVjdEZvcm1GaWVsZDxURW50aXR5LCBUSWQsIFRWYWx1ZSA9IFRFbnRpdHkgfCBUSWQ+XG4gIGV4dGVuZHMgRWxkZXJGcm9tRmllbGRNdWx0aUVudGl0eUJhc2U8XG4gICAgVEVudGl0eSxcbiAgICBUSWQsXG4gICAgVFZhbHVlLFxuICAgIEVsZGVyTXVsdGlTZWxlY3RCYXNlPFRJZCwgVEVudGl0eSwgVFZhbHVlPlxuICA+XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdFxue1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAVmlld0NoaWxkKEVsZGVyU2VsZWN0VmFsdWVEaXJlY3RpdmUpXG4gIHB1YmxpYyBzZWxlY3RWYWx1ZVRlbXBsYXRlOiBFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlXG5cbiAgQFZpZXdDaGlsZChTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlKVxuICBwdWJsaWMgc2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZTogU2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBpbml0U2VsZWN0Rm46IEVsZGVyQXBwbHlDb250cm9sRm48RWxkZXJNdWx0aVNlbGVjdEJhc2U8VElkLCBURW50aXR5LCBUVmFsdWU+PlxuICApIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5hcHBseVRvQ29udHJvbChpbml0U2VsZWN0Rm4pXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZENvbnRyb2wkLmdldFZhbHVlKClcblxuICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRWxkZXJTZWxlY3RCYXNlKSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RWYWx1ZVRlbXBsYXRlKSB7XG4gICAgICAgIGNvbnRyb2wudmFsdWVUZW1wbGF0ZSA9IHRoaXMuc2VsZWN0VmFsdWVUZW1wbGF0ZS50ZW1wbGF0ZVJlZlxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZSkge1xuICAgICAgICBjb250cm9sLnNlbGVjdGlvblBvcHVwID0gdGhpcy5zZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQFZpZXdDaGlsZChFbGRlclNlbGVjdENoaXBEaXJlY3RpdmUpXG4gIHB1YmxpYyBzZXQgc2VsZWN0Q2hpcERpcmVjdGl2ZShkaXI6IEVsZGVyU2VsZWN0Q2hpcERpcmVjdGl2ZSkge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZENvbnRyb2wkLmdldFZhbHVlKClcbiAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEVsZGVyTXVsdGlTZWxlY3RDaGlwc0NvbXBvbmVudCkge1xuICAgICAgY29udHJvbC5jaGlwVGVtcGxhdGUgPSBkaXI/LnRlbXBsYXRlUmVmXG4gICAgfVxuICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRWxkZXJNdWx0aVNlbGVjdENoaXBPcHRpb25zQ29tcG9uZW50KSB7XG4gICAgICBjb250cm9sLmNoaXBUZW1wbGF0ZSA9IGRpcj8udGVtcGxhdGVSZWZcbiAgICB9XG4gIH1cblxuICBAVmlld0NoaWxkKEVsZGVyU2VsZWN0Q2hpcEF2YXRhckRpcmVjdGl2ZSlcbiAgcHVibGljIHNldCBzZWxlY3RDaGlwQXZhdGFyRGlyZWN0aXZlKGRpcjogRWxkZXJTZWxlY3RDaGlwQXZhdGFyRGlyZWN0aXZlKSB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUZpZWxkQ29udHJvbCQuZ2V0VmFsdWUoKVxuICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRWxkZXJNdWx0aVNlbGVjdENoaXBzQ29tcG9uZW50KSB7XG4gICAgICBjb250cm9sLmNoaXBBdmF0YXJUZW1wbGF0ZSA9IGRpcj8udGVtcGxhdGVSZWZcbiAgICB9XG4gICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBFbGRlck11bHRpU2VsZWN0Q2hpcE9wdGlvbnNDb21wb25lbnQpIHtcbiAgICAgIGNvbnRyb2wuY2hpcEF2YXRhclRlbXBsYXRlID0gZGlyPy50ZW1wbGF0ZVJlZlxuICAgIH1cbiAgfVxuXG4gIEBWaWV3Q2hpbGQoRWxkZXJTZWxlY3RDdXN0b21JbnB1dERpcmVjdGl2ZSlcbiAgcHVibGljIHNldCBzZWxlY3RDdXN0b21JbnB1dERpcmVjdGl2ZShkaXI6IEVsZGVyU2VsZWN0Q2hpcEF2YXRhckRpcmVjdGl2ZSkge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZENvbnRyb2wkLmdldFZhbHVlKClcbiAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEVsZGVyTXVsdGlTZWxlY3RDaGlwc0NvbXBvbmVudCkge1xuICAgICAgY29udHJvbC5jdXN0b21JbnB1dFRlbXBsYXRlID0gZGlyPy50ZW1wbGF0ZVJlZlxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, Optional } from '@angular/core';
|
|
2
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { combineLatest } from 'rxjs';
|
|
4
|
-
import { filter, first, map, switchMap } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./elder-multi-select-chip-options/elder-multi-select-chip-options.component";
|
|
7
|
-
export class ElderMultiSelectAllInitialDirective {
|
|
8
|
-
/***************************************************************************
|
|
9
|
-
* *
|
|
10
|
-
* Constructor *
|
|
11
|
-
* *
|
|
12
|
-
**************************************************************************/
|
|
13
|
-
constructor(select, destroyRef) {
|
|
14
|
-
this.select = select;
|
|
15
|
-
this.destroyRef = destroyRef;
|
|
16
|
-
const data$ = this.select.dataContext$.pipe(filter((dc) => !!dc), switchMap((dc) => dc.data));
|
|
17
|
-
const templateOptions$ = this.select.templateOptions$.pipe(map((options) => options.map((option) => option.value)));
|
|
18
|
-
combineLatest([data$, templateOptions$])
|
|
19
|
-
.pipe(takeUntilDestroyed(destroyRef), filter(([data, templateEntities]) => data.length > 0), first())
|
|
20
|
-
.subscribe(([entities, templateEntities]) => this.select.appendEntities([...entities, ...templateEntities]));
|
|
21
|
-
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectAllInitialDirective, deps: [{ token: i1.ElderMultiSelectChipOptionsComponent, optional: true }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ElderMultiSelectAllInitialDirective, isStandalone: true, selector: "[elderMultiSelectAllInitial]", ngImport: i0 }); }
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderMultiSelectAllInitialDirective, decorators: [{
|
|
26
|
-
type: Directive,
|
|
27
|
-
args: [{
|
|
28
|
-
selector: '[elderMultiSelectAllInitial]',
|
|
29
|
-
standalone: true,
|
|
30
|
-
}]
|
|
31
|
-
}], ctorParameters: () => [{ type: i1.ElderMultiSelectChipOptionsComponent, decorators: [{
|
|
32
|
-
type: Optional
|
|
33
|
-
}] }, { type: i0.DestroyRef }] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbXV0bGktc2VsZWN0LWFsbC1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC9tdWx0aS9lbGRlci1tdXRsaS1zZWxlY3QtYWxsLWRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7O0FBTTlELE1BQU0sT0FBTyxtQ0FBbUM7SUFDOUM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ3FCLE1BQTBELEVBQ3RFLFVBQXNCO1FBRFYsV0FBTSxHQUFOLE1BQU0sQ0FBb0Q7UUFDdEUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUU3QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ3pDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUNwQixTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQTtRQUVELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQ3hELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQ3hELENBQUE7UUFFRCxhQUFhLENBQUMsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQzthQUNyQyxJQUFJLENBQ0gsa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQzlCLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQ3JELEtBQUssRUFBRSxDQUNSO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLENBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQy9ELENBQUE7SUFDTCxDQUFDOytHQTdCVSxtQ0FBbUM7bUdBQW5DLG1DQUFtQzs7NEZBQW5DLG1DQUFtQztrQkFKL0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OzBCQVNJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEVsZGVyTXVsdGlTZWxlY3RDaGlwT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItbXVsdGktc2VsZWN0LWNoaXAtb3B0aW9ucy9lbGRlci1tdWx0aS1zZWxlY3QtY2hpcC1vcHRpb25zLmNvbXBvbmVudCdcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJ1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0LCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJNdWx0aVNlbGVjdEFsbEluaXRpYWxdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJNdWx0aVNlbGVjdEFsbEluaXRpYWxEaXJlY3RpdmU8VElkLCBURW50aXR5PiB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHB1YmxpYyBzZWxlY3Q6IEVsZGVyTXVsdGlTZWxlY3RDaGlwT3B0aW9uc0NvbXBvbmVudDxUSWQsIFRFbnRpdHk+LFxuICAgIHB1YmxpYyBkZXN0cm95UmVmOiBEZXN0cm95UmVmXG4gICkge1xuICAgIGNvbnN0IGRhdGEkID0gdGhpcy5zZWxlY3QuZGF0YUNvbnRleHQkLnBpcGUoXG4gICAgICBmaWx0ZXIoKGRjKSA9PiAhIWRjKSxcbiAgICAgIHN3aXRjaE1hcCgoZGMpID0+IGRjLmRhdGEpXG4gICAgKVxuXG4gICAgY29uc3QgdGVtcGxhdGVPcHRpb25zJCA9IHRoaXMuc2VsZWN0LnRlbXBsYXRlT3B0aW9ucyQucGlwZShcbiAgICAgIG1hcCgob3B0aW9ucykgPT4gb3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlKSlcbiAgICApXG5cbiAgICBjb21iaW5lTGF0ZXN0KFtkYXRhJCwgdGVtcGxhdGVPcHRpb25zJF0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKGRlc3Ryb3lSZWYpLFxuICAgICAgICBmaWx0ZXIoKFtkYXRhLCB0ZW1wbGF0ZUVudGl0aWVzXSkgPT4gZGF0YS5sZW5ndGggPiAwKSxcbiAgICAgICAgZmlyc3QoKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoW2VudGl0aWVzLCB0ZW1wbGF0ZUVudGl0aWVzXSkgPT5cbiAgICAgICAgdGhpcy5zZWxlY3QuYXBwZW5kRW50aXRpZXMoWy4uLmVudGl0aWVzLCAuLi50ZW1wbGF0ZUVudGl0aWVzXSlcbiAgICAgIClcbiAgfVxufVxuIl19
|