@elderbyte/ngx-starter 18.15.2 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/elderbyte-ngx-starter.mjs +1097 -1125
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +1 -1
- package/lib/common/forms/elder-from-field-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-customizable-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-entity-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +1 -1
- package/lib/common/forms/form-field-base.component.d.ts +1 -1
- package/lib/common/forms/multi-model-base.component.d.ts +1 -1
- package/lib/common/forms/template-composite-control.d.ts +1 -1
- package/lib/common/forms/value-accessor-base.d.ts +1 -1
- package/lib/common/reactive-map.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-base.d.ts +1 -1
- package/lib/components/forms/directives/base/elder-class-hostbinding-base.d.ts +1 -1
- package/lib/components/iframes/typed-event-message.d.ts +1 -1
- package/lib/components/panels/elder-panel.module.d.ts +5 -7
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +1 -1
- package/lib/components/select/single/elder-select-form-field.d.ts +1 -1
- package/package.json +6 -8
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -3
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +3 -0
- package/esm2022/elderbyte-ngx-starter.mjs +0 -5
- package/esm2022/lib/common/arrays.mjs +0 -29
- package/esm2022/lib/common/async/public_api.mjs +0 -2
- package/esm2022/lib/common/async/refreshing-entity.mjs +0 -88
- package/esm2022/lib/common/csv/csv-serializer.mjs +0 -55
- package/esm2022/lib/common/csv/csv-spec.mjs +0 -99
- package/esm2022/lib/common/csv/public_api.mjs +0 -3
- package/esm2022/lib/common/data/continuable-listing.mjs +0 -10
- package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +0 -131
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +0 -78
- package/esm2022/lib/common/data/data-context/data-context-base.mjs +0 -339
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +0 -245
- package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +0 -67
- package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +0 -142
- package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +0 -146
- package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +0 -32
- package/esm2022/lib/common/data/data-context/data-context-simple.mjs +0 -61
- package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +0 -63
- package/esm2022/lib/common/data/data-context/data-context-status.mjs +0 -46
- package/esm2022/lib/common/data/data-context/data-context.mjs +0 -30
- package/esm2022/lib/common/data/data-context/indexed-entities.mjs +0 -153
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +0 -145
- package/esm2022/lib/common/data/data-context/public_api.mjs +0 -15
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +0 -59
- package/esm2022/lib/common/data/datasource/data-source-base.mjs +0 -38
- package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +0 -34
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +0 -198
- package/esm2022/lib/common/data/datasource/data-source.mjs +0 -23
- package/esm2022/lib/common/data/datasource/entity-id-util.mjs +0 -11
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +0 -127
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +0 -153
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +0 -75
- package/esm2022/lib/common/data/datasource/patch/deep-partial-patcher.mjs +0 -58
- package/esm2022/lib/common/data/datasource/public_api.mjs +0 -10
- package/esm2022/lib/common/data/datasource/rest/public_api.mjs +0 -2
- package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +0 -290
- package/esm2022/lib/common/data/entity-set-patch.mjs +0 -161
- package/esm2022/lib/common/data/field-comparator.mjs +0 -108
- package/esm2022/lib/common/data/filters/filter-commons.mjs +0 -12
- package/esm2022/lib/common/data/filters/filter-context.mjs +0 -135
- package/esm2022/lib/common/data/filters/filter-value.mjs +0 -2
- package/esm2022/lib/common/data/filters/filter.mjs +0 -104
- package/esm2022/lib/common/data/http-params-builder.mjs +0 -116
- package/esm2022/lib/common/data/page.mjs +0 -58
- package/esm2022/lib/common/data/public_api.mjs +0 -12
- package/esm2022/lib/common/data/required-filter-evaluator.mjs +0 -71
- package/esm2022/lib/common/data/sort-context.mjs +0 -73
- package/esm2022/lib/common/data/sort.mjs +0 -11
- package/esm2022/lib/common/data/token-chunk-request.mjs +0 -8
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +0 -84
- package/esm2022/lib/common/enums/public_api.mjs +0 -2
- package/esm2022/lib/common/errors/exception-detail.mjs +0 -2
- package/esm2022/lib/common/errors/public_api.mjs +0 -3
- package/esm2022/lib/common/errors/standard-error-detail.mjs +0 -2
- package/esm2022/lib/common/exceptions/public_api.mjs +0 -2
- package/esm2022/lib/common/exceptions/unreachable-case-error.mjs +0 -8
- package/esm2022/lib/common/format/bytes-format.mjs +0 -15
- package/esm2022/lib/common/format/bytes-per-second-format.mjs +0 -41
- package/esm2022/lib/common/format/curency-format-util.mjs +0 -43
- package/esm2022/lib/common/format/duration-format-util.mjs +0 -44
- package/esm2022/lib/common/format/iso-interval-format-util.mjs +0 -111
- package/esm2022/lib/common/format/public_api.mjs +0 -6
- package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +0 -188
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +0 -94
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +0 -52
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +0 -39
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +0 -47
- package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +0 -22
- package/esm2022/lib/common/forms/form-field-base.component.mjs +0 -111
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +0 -32
- package/esm2022/lib/common/forms/public_api.mjs +0 -12
- package/esm2022/lib/common/forms/template-composite-control.mjs +0 -136
- package/esm2022/lib/common/forms/value-accessor-base.mjs +0 -146
- package/esm2022/lib/common/forms/view-providers.mjs +0 -30
- package/esm2022/lib/common/http/http-client-builder.service.mjs +0 -14
- package/esm2022/lib/common/http/http-client-pristine.mjs +0 -21
- package/esm2022/lib/common/http/public_api.mjs +0 -5
- package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +0 -77
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +0 -106
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +0 -60
- package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +0 -17
- package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +0 -82
- package/esm2022/lib/common/http/transfer/data-transfer-status.mjs +0 -24
- package/esm2022/lib/common/http/transfer/data-transfer.mjs +0 -2
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +0 -132
- package/esm2022/lib/common/http/transfer/public_api.mjs +0 -7
- package/esm2022/lib/common/http/upload/file-upload-client.mjs +0 -42
- package/esm2022/lib/common/i18n/entity/elder-multi-translate-loader.mjs +0 -53
- package/esm2022/lib/common/i18n/entity/impl/i18n-base.mjs +0 -6
- package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +0 -16
- package/esm2022/lib/common/i18n/entity/impl/translated.mjs +0 -15
- package/esm2022/lib/common/i18n/entity/language-tag.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/locale.mjs +0 -12
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +0 -30
- package/esm2022/lib/common/i18n/entity/localized.mjs +0 -2
- package/esm2022/lib/common/i18n/entity/public_api.mjs +0 -10
- package/esm2022/lib/common/i18n/entity/translated-converter.mjs +0 -18
- package/esm2022/lib/common/i18n/entity/translated.mjs +0 -2
- package/esm2022/lib/common/i18n/public_api.mjs +0 -2
- package/esm2022/lib/common/json-map.mjs +0 -17
- package/esm2022/lib/common/objects.mjs +0 -43
- package/esm2022/lib/common/public_api.mjs +0 -23
- package/esm2022/lib/common/reactive-map.mjs +0 -69
- package/esm2022/lib/common/rxjs/operators/lazy-sample.mjs +0 -34
- package/esm2022/lib/common/rxjs/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/public_api.mjs +0 -2
- package/esm2022/lib/common/selection/selection-model.mjs +0 -213
- package/esm2022/lib/common/sets.mjs +0 -45
- package/esm2022/lib/common/suggestion-provider.mjs +0 -12
- package/esm2022/lib/common/templates/template-slot-manager.mjs +0 -135
- package/esm2022/lib/common/theme-sizes.mjs +0 -2
- package/esm2022/lib/common/time/date-util.mjs +0 -91
- package/esm2022/lib/common/time/interval-coerce.mjs +0 -30
- package/esm2022/lib/common/time/interval.mjs +0 -442
- package/esm2022/lib/common/time/period-duration.mjs +0 -133
- package/esm2022/lib/common/time/public_api.mjs +0 -8
- package/esm2022/lib/common/time/temporal-plain-date-interval.mjs +0 -34
- package/esm2022/lib/common/time/temporal-util.mjs +0 -205
- package/esm2022/lib/common/time/time-util.mjs +0 -38
- package/esm2022/lib/common/url/elder-router.service.mjs +0 -54
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +0 -117
- package/esm2022/lib/common/url/public_api.mjs +0 -4
- package/esm2022/lib/common/url/url-query-params.mjs +0 -133
- package/esm2022/lib/common/utils/batcher.mjs +0 -35
- package/esm2022/lib/common/utils/collection-util.mjs +0 -111
- package/esm2022/lib/common/utils/filter-util.mjs +0 -133
- package/esm2022/lib/common/utils/focus-util.mjs +0 -23
- package/esm2022/lib/common/utils/input-utils.mjs +0 -6
- package/esm2022/lib/common/utils/next-number-util.mjs +0 -89
- package/esm2022/lib/common/utils/ng-zone-utils.mjs +0 -16
- package/esm2022/lib/common/utils/parse-util.mjs +0 -17
- package/esm2022/lib/common/utils/property-path-util.mjs +0 -28
- package/esm2022/lib/common/utils/public_api.mjs +0 -14
- package/esm2022/lib/common/utils/query-list-binding.mjs +0 -68
- package/esm2022/lib/common/utils/signal-input.mjs +0 -3
- package/esm2022/lib/common/utils/sort-util.mjs +0 -42
- package/esm2022/lib/common/utils/url-builder.mjs +0 -275
- package/esm2022/lib/common/utils/uuid-util.mjs +0 -28
- package/esm2022/lib/common/utils/value-wrapper.mjs +0 -19
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +0 -15
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +0 -20
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +0 -50
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +0 -40
- package/esm2022/lib/components/auditing/i-audited-entity.mjs +0 -3
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +0 -162
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +0 -124
- package/esm2022/lib/components/badge/elder-badge.module.mjs +0 -58
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +0 -13
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +0 -21
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +0 -118
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +0 -18
- package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +0 -93
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +0 -220
- package/esm2022/lib/components/card-organizer/card-stack.mjs +0 -176
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +0 -62
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +0 -17
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +0 -167
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +0 -71
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +0 -171
- package/esm2022/lib/components/chips/elder-chips.module.mjs +0 -45
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +0 -57
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +0 -61
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +0 -46
- package/esm2022/lib/components/connectivity/public_api.mjs +0 -3
- package/esm2022/lib/components/containers/elder-containers.module.mjs +0 -18
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +0 -24
- package/esm2022/lib/components/containers/public_api.mjs +0 -2
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +0 -77
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +0 -38
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +0 -114
- package/esm2022/lib/components/csv/elder-csv.module.mjs +0 -24
- package/esm2022/lib/components/currency/elder-currency.module.mjs +0 -18
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +0 -37
- package/esm2022/lib/components/currency/model/currency-code.mjs +0 -38
- package/esm2022/lib/components/currency/model/currency-unit-registry.mjs +0 -30
- package/esm2022/lib/components/currency/model/currency-unit.mjs +0 -10
- package/esm2022/lib/components/currency/model/currency.mjs +0 -15
- package/esm2022/lib/components/currency/public_api.mjs +0 -7
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +0 -91
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +0 -93
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +0 -102
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +0 -34
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +0 -57
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +0 -34
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +0 -69
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +0 -265
- package/esm2022/lib/components/data-view/base/elder-data-view-options-provider.mjs +0 -44
- package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +0 -45
- package/esm2022/lib/components/data-view/base/elder-data-view.mjs +0 -3
- package/esm2022/lib/components/data-view/base/public_api.mjs +0 -6
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-context.mjs +0 -30
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-dc.directive.mjs +0 -55
- package/esm2022/lib/components/data-view/common/composite-sort/composite-sort.mjs +0 -68
- package/esm2022/lib/components/data-view/common/composite-sort/elder-composite-sort/elder-composite-sort.component.mjs +0 -101
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +0 -45
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +0 -125
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +0 -140
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +0 -100
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +0 -103
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +0 -36
- package/esm2022/lib/components/data-view/common/selection/master-selection-state.mjs +0 -10
- package/esm2022/lib/components/data-view/elder-data-view-interaction-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +0 -345
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +0 -91
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +0 -75
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +0 -50
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +0 -79
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +0 -2
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +0 -20
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +0 -119
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +0 -116
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +0 -89
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +0 -12
- package/esm2022/lib/components/data-view/public_api.mjs +0 -7
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +0 -18
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +0 -104
- package/esm2022/lib/components/data-view/table/activation/activation-event-source.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/elder-activation-context.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +0 -114
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation-options.mjs +0 -2
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +0 -315
- package/esm2022/lib/components/data-view/table/activation/item-activation-event.mjs +0 -8
- package/esm2022/lib/components/data-view/table/activation/item-activation-options.mjs +0 -7
- package/esm2022/lib/components/data-view/table/activation/public_api.mjs +0 -8
- package/esm2022/lib/components/data-view/table/elder-center-cell.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +0 -30
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +0 -73
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +0 -21
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +0 -338
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +0 -18
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +0 -92
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +0 -26
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +0 -156
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +0 -23
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +0 -184
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +0 -110
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +0 -85
- package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +0 -40
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +0 -89
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +0 -167
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +0 -37
- package/esm2022/lib/components/dialogs/elder-dialog-config.mjs +0 -3
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +0 -87
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +0 -199
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +0 -57
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +0 -43
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +0 -47
- package/esm2022/lib/components/errors/elder-error.module.mjs +0 -39
- package/esm2022/lib/components/errors/error-util.mjs +0 -94
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +0 -77
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +0 -55
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +0 -35
- package/esm2022/lib/components/files/blob-url.mjs +0 -10
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +0 -224
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +0 -44
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +0 -84
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +0 -145
- package/esm2022/lib/components/files/elder-file-select-input.mjs +0 -119
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +0 -167
- package/esm2022/lib/components/files/elder-file.module.mjs +0 -85
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +0 -54
- package/esm2022/lib/components/files/file-system-api.mjs +0 -100
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +0 -80
- package/esm2022/lib/components/files/listing/file-entry.mjs +0 -92
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +0 -64
- package/esm2022/lib/components/files/listing/file-listing-system-handle.mjs +0 -35
- package/esm2022/lib/components/files/listing/file-listing-webkit.mjs +0 -76
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +0 -51
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +0 -34
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox-controller.mjs +0 -97
- package/esm2022/lib/components/forms/directives/checkbox/elder-single-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox-controller.mjs +0 -102
- package/esm2022/lib/components/forms/directives/checkbox/elder-triple-state-checkbox.directive.mjs +0 -50
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +0 -38
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +0 -43
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +0 -83
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +0 -84
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +0 -42
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +0 -35
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +0 -142
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +0 -67
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +0 -78
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +0 -112
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +0 -102
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +0 -37
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +0 -30
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +0 -161
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +0 -28
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +0 -88
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +0 -47
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +0 -48
- package/esm2022/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +0 -6
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +0 -53
- package/esm2022/lib/components/forms/directives/validation/validation-message-strategy.mjs +0 -2
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +0 -36
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +0 -112
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +0 -69
- package/esm2022/lib/components/forms/elder-forms.module.mjs +0 -22
- package/esm2022/lib/components/forms/public_api.mjs +0 -6
- package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +0 -73
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +0 -42
- package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +0 -88
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +0 -2
- package/esm2022/lib/components/forms/search/domain/input/simple-search-input.mjs +0 -50
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +0 -92
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +0 -166
- package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +0 -81
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +0 -256
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +0 -258
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +0 -115
- package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +0 -45
- package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +0 -2
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +0 -131
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +0 -24
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +0 -136
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +0 -47
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +0 -95
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +0 -90
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +0 -19
- package/esm2022/lib/components/graph/elder-progress-bar/sub-bar.mjs +0 -7
- package/esm2022/lib/components/graph/public_api.mjs +0 -2
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +0 -29
- package/esm2022/lib/components/headers/elder-header.module.mjs +0 -42
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +0 -63
- package/esm2022/lib/components/http-support/public_api.mjs +0 -2
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +0 -125
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +0 -157
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +0 -39
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +0 -30
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +0 -177
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +0 -56
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +0 -40
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +0 -31
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +0 -74
- package/esm2022/lib/components/i18n/language/elder-language-config.mjs +0 -3
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +0 -70
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +0 -73
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +0 -120
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +0 -79
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +0 -53
- package/esm2022/lib/components/i18n/public_api.mjs +0 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +0 -129
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +0 -141
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +0 -106
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +0 -41
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +0 -51
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +0 -144
- package/esm2022/lib/components/iframes/iframe-messages.mjs +0 -5
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +0 -80
- package/esm2022/lib/components/iframes/iframe.service.mjs +0 -54
- package/esm2022/lib/components/iframes/typed-event-message.mjs +0 -42
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +0 -65
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +0 -166
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +0 -20
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +0 -9
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +0 -233
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +0 -202
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +0 -120
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +0 -61
- package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +0 -58
- package/esm2022/lib/components/input/public_api.mjs +0 -2
- package/esm2022/lib/components/labels/elder-labels.module.mjs +0 -50
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +0 -239
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +0 -268
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +0 -92
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +0 -65
- package/esm2022/lib/components/measures/elder-measures.module.mjs +0 -130
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +0 -31
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +0 -43
- package/esm2022/lib/components/measures/elder-unit.service.mjs +0 -113
- package/esm2022/lib/components/measures/model/dimensions.mjs +0 -17
- package/esm2022/lib/components/measures/model/quantity.mjs +0 -12
- package/esm2022/lib/components/measures/model/unit-dimension.mjs +0 -14
- package/esm2022/lib/components/measures/model/unit-registry.mjs +0 -81
- package/esm2022/lib/components/measures/model/unit.mjs +0 -143
- package/esm2022/lib/components/measures/public_api.mjs +0 -8
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +0 -44
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +0 -173
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +0 -84
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +0 -73
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +0 -341
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +0 -184
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +0 -59
- package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +0 -37
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +0 -60
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +0 -121
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +0 -174
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +0 -68
- package/esm2022/lib/components/navigation/public_api.mjs +0 -4
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +0 -48
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +0 -83
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +0 -68
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +0 -71
- package/esm2022/lib/components/navigation/toolbar/toolbar-column-position.mjs +0 -2
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +0 -39
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +0 -86
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +0 -44
- package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +0 -41
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +0 -73
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +0 -232
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +0 -35
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.module.mjs +0 -20
- package/esm2022/lib/components/page/exit-guard/page-exit-guard.service.mjs +0 -129
- package/esm2022/lib/components/page/exit-guard/page-exit-lock/page-exit-lock.component.mjs +0 -25
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +0 -29
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +0 -26
- package/esm2022/lib/components/page/public_api.mjs +0 -2
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +0 -12
- package/esm2022/lib/components/panels/elder-panel.module.mjs +0 -60
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +0 -26
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +0 -70
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +0 -74
- package/esm2022/lib/components/public_api.mjs +0 -43
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +0 -63
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +0 -17
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +0 -95
- package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +0 -38
- package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +0 -64
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +0 -55
- package/esm2022/lib/components/select/elder-select-base.mjs +0 -333
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +0 -48
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +0 -139
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +0 -18
- package/esm2022/lib/components/select/elder-select.module.mjs +0 -229
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +0 -74
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +0 -148
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +0 -51
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +0 -61
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +0 -160
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +0 -16
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +0 -386
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +0 -87
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +0 -263
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/select-option-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +0 -274
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/select-chip-spec.mjs +0 -15
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +0 -86
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +0 -34
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +0 -146
- package/esm2022/lib/components/select/multi/public_api.mjs +0 -5
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +0 -89
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +0 -126
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +0 -58
- package/esm2022/lib/components/select/public_api.mjs +0 -5
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +0 -60
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +0 -444
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +0 -45
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +0 -148
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +0 -46
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +0 -64
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +0 -119
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +0 -128
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +0 -47
- package/esm2022/lib/components/shell/elder-shell.module.mjs +0 -101
- package/esm2022/lib/components/shell/elder-shell.service.mjs +0 -142
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +0 -75
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +0 -238
- package/esm2022/lib/components/shell/shell-content-slot.mjs +0 -2
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +0 -137
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +0 -26
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +0 -257
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +0 -21
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +0 -62
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +0 -73
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +0 -74
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +0 -64
- package/esm2022/lib/components/theme/elder-theme.module.mjs +0 -68
- package/esm2022/lib/components/theme/elder-theme.service.mjs +0 -121
- package/esm2022/lib/components/theme/known-elder-themes.mjs +0 -6
- package/esm2022/lib/components/theme/public_api.mjs +0 -2
- package/esm2022/lib/components/theme/theme-spec.mjs +0 -11
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +0 -43
- package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +0 -28
- package/esm2022/lib/components/time/duration/duration-bucket.mjs +0 -68
- package/esm2022/lib/components/time/duration/duration-format.mjs +0 -271
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +0 -110
- package/esm2022/lib/components/time/duration/iso-duration-str.mjs +0 -2
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +0 -96
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +0 -98
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +0 -217
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-anchor-controller.mjs +0 -21
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-calendar-controller.mjs +0 -24
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-controller.mjs +0 -43
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-form-controller.mjs +0 -69
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-select-controller.mjs +0 -117
- package/esm2022/lib/components/time/elder-interval-picker/controller/interval-shift-controller.mjs +0 -44
- package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.component.mjs +0 -198
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-binding/elder-interval-picker-binding.directive.mjs +0 -41
- package/esm2022/lib/components/time/elder-interval-picker/interval-picker-toggle/elder-interval-picker-toggle.component.mjs +0 -144
- package/esm2022/lib/components/time/elder-interval-picker/manager/interval-picker-state-manager.mjs +0 -93
- package/esm2022/lib/components/time/elder-interval-picker/model/anchor-state.mjs +0 -54
- package/esm2022/lib/components/time/elder-interval-picker/model/interval-state.mjs +0 -37
- package/esm2022/lib/components/time/elder-interval-picker/model/smart-shift-state.mjs +0 -10
- package/esm2022/lib/components/time/elder-interval-picker/presenter/interval-picker-presenter.mjs +0 -96
- package/esm2022/lib/components/time/elder-interval-picker/util/interval-picker-util.mjs +0 -194
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +0 -268
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +0 -85
- package/esm2022/lib/components/time/elder-time.module.mjs +0 -154
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +0 -118
- package/esm2022/lib/components/time/period/period-bucket.mjs +0 -31
- package/esm2022/lib/components/time/period/period-format.mjs +0 -89
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +0 -39
- package/esm2022/lib/components/time/public_api.mjs +0 -8
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +0 -36
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +0 -170
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +0 -80
- package/esm2022/lib/components/toasts/toast-type.mjs +0 -7
- package/esm2022/lib/components/toasts/toast.mjs +0 -2
- package/esm2022/lib/components/url-fragment/elder-url-fragment.mjs +0 -9
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +0 -52
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +0 -95
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +0 -64
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +0 -18
- package/esm2022/lib/features/event-source/fetch/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +0 -219
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +0 -53
- package/esm2022/lib/features/event-source/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +0 -56
- package/esm2022/lib/features/event-source/standard/public_api.mjs +0 -3
- package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +0 -199
- package/esm2022/lib/features/kafent/access-token-provider.mjs +0 -20
- package/esm2022/lib/features/kafent/kafent-config.mjs +0 -24
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +0 -25
- package/esm2022/lib/features/kafent/kafent-event.mjs +0 -3
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +0 -115
- package/esm2022/lib/features/kafent/kafent-live-event-request.mjs +0 -2
- package/esm2022/lib/features/kafent/kafent.module.mjs +0 -58
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +0 -131
- package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +0 -97
- package/esm2022/lib/features/public_api.mjs +0 -3
- package/esm2022/lib/pipes/bytes.pipe.mjs +0 -27
- package/esm2022/lib/pipes/elder-pipes.module.mjs +0 -114
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +0 -24
- package/esm2022/lib/pipes/elder-round.pipe.mjs +0 -36
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +0 -21
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +0 -41
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +0 -49
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +0 -62
- package/esm2022/lib/pipes/public_api.mjs +0 -2
- package/esm2022/lib/pipes/time-ago.pipe.mjs +0 -110
- package/esm2022/lib/pipes/time-duration.pipe.mjs +0 -101
- package/esm2022/lib/pipes/weight.pipe.mjs +0 -60
- package/esm2022/public_api.mjs +0 -8
- package/lib/components/panels/flat/elder-panel.component.d.ts +0 -15
- package/src/lib/components/panels/flat/elder-panel.component.scss +0 -3
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./iframe.service";
|
|
5
|
-
export class IframeCloseDirective {
|
|
6
|
-
/***************************************************************************
|
|
7
|
-
* *
|
|
8
|
-
* Constructor *
|
|
9
|
-
* *
|
|
10
|
-
**************************************************************************/
|
|
11
|
-
constructor(iframeService) {
|
|
12
|
-
this.iframeService = iframeService;
|
|
13
|
-
/***************************************************************************
|
|
14
|
-
* *
|
|
15
|
-
* Fields *
|
|
16
|
-
* *
|
|
17
|
-
**************************************************************************/
|
|
18
|
-
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
19
|
-
}
|
|
20
|
-
onClick(event) {
|
|
21
|
-
this.logger.debug('Iframe result:', this.iframeResult);
|
|
22
|
-
this.iframeService.postCloseMessage(this.iframeResult);
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeCloseDirective, deps: [{ token: i1.IframeService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
25
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: IframeCloseDirective, isStandalone: true, selector: "[elderIframeClose]", inputs: { iframeResult: ["elderIframeClose", "iframeResult"] }, host: { listeners: { "click": "onClick($event)" } }, exportAs: ["elderIframeClose"], ngImport: i0 }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeCloseDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[elderIframeClose]',
|
|
31
|
-
exportAs: 'elderIframeClose',
|
|
32
|
-
standalone: true,
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: () => [{ type: i1.IframeService }], propDecorators: { iframeResult: [{
|
|
35
|
-
type: Input,
|
|
36
|
-
args: ['elderIframeClose']
|
|
37
|
-
}], onClick: [{
|
|
38
|
-
type: HostListener,
|
|
39
|
-
args: ['click', ['$event']]
|
|
40
|
-
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWNsb3NlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtY2xvc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUU5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7OztBQU9wRCxNQUFNLE9BQU8sb0JBQW9CO0lBZS9COzs7O2dGQUk0RTtJQUU1RSxZQUFvQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQXBCaEQ7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7SUFjckIsQ0FBQztJQUVqQixPQUFPLENBQUMsS0FBVTtRQUNuRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDdEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBTSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDN0QsQ0FBQzsrR0ExQlUsb0JBQW9CO21HQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2tGQWNRLFlBQVk7c0JBRGxCLEtBQUs7dUJBQUMsa0JBQWtCO2dCQVdVLE9BQU87c0JBQXpDLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IElmcmFtZVNlcnZpY2UgfSBmcm9tICcuL2lmcmFtZS5zZXJ2aWNlJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJJZnJhbWVDbG9zZV0nLFxuICBleHBvcnRBczogJ2VsZGVySWZyYW1lQ2xvc2UnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVDbG9zZURpcmVjdGl2ZSB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKVxuXG4gIC8qKlxuICAgKiBJZnJhbWUgY2xvc2UgaW5wdXQuXG4gICAqL1xuICBASW5wdXQoJ2VsZGVySWZyYW1lQ2xvc2UnKVxuICBwdWJsaWMgaWZyYW1lUmVzdWx0OiBhbnlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGlmcmFtZVNlcnZpY2U6IElmcmFtZVNlcnZpY2UpIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnSWZyYW1lIHJlc3VsdDonLCB0aGlzLmlmcmFtZVJlc3VsdClcbiAgICB0aGlzLmlmcmFtZVNlcnZpY2UucG9zdENsb3NlTWVzc2FnZTxhbnk+KHRoaXMuaWZyYW1lUmVzdWx0KVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG59XG4iXX0=
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
|
2
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
5
|
-
import { IframeHostComponent } from '../iframe-host/iframe-host.component';
|
|
6
|
-
import { NgIf, AsyncPipe } from '@angular/common';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/material/dialog";
|
|
9
|
-
export class IframeDialogComponent {
|
|
10
|
-
/***************************************************************************
|
|
11
|
-
* *
|
|
12
|
-
* Constructor *
|
|
13
|
-
* *
|
|
14
|
-
**************************************************************************/
|
|
15
|
-
constructor(dialogRef, data) {
|
|
16
|
-
this.dialogRef = dialogRef;
|
|
17
|
-
this.data = data;
|
|
18
|
-
/***************************************************************************
|
|
19
|
-
* *
|
|
20
|
-
* Fields *
|
|
21
|
-
* *
|
|
22
|
-
**************************************************************************/
|
|
23
|
-
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
24
|
-
this.iframeParams$ = new BehaviorSubject(null);
|
|
25
|
-
this.iframeParams$.next(data);
|
|
26
|
-
}
|
|
27
|
-
/***************************************************************************
|
|
28
|
-
* *
|
|
29
|
-
* Lifecycle *
|
|
30
|
-
* *
|
|
31
|
-
**************************************************************************/
|
|
32
|
-
ngOnInit() { }
|
|
33
|
-
/***************************************************************************
|
|
34
|
-
* *
|
|
35
|
-
* Public API *
|
|
36
|
-
* *
|
|
37
|
-
**************************************************************************/
|
|
38
|
-
close(data) {
|
|
39
|
-
this.dialogRef.close(data);
|
|
40
|
-
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: IframeDialogComponent, isStandalone: true, selector: "elder-i-frame-dialog", ngImport: i0, template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" class=\"full\">\n <elder-i-frame-host class=\"full\" [iframeParams]=\"iFrameParams\" (close)=\"close($event)\">\n </elder-i-frame-host>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IframeHostComponent, selector: "elder-i-frame-host", inputs: ["iframeParams"], outputs: ["message", "close"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeDialogComponent, decorators: [{
|
|
45
|
-
type: Component,
|
|
46
|
-
args: [{ selector: 'elder-i-frame-dialog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, IframeHostComponent, AsyncPipe], template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" class=\"full\">\n <elder-i-frame-host class=\"full\" [iframeParams]=\"iFrameParams\" (close)=\"close($event)\">\n </elder-i-frame-host>\n</div>\n" }]
|
|
47
|
-
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
48
|
-
type: Inject,
|
|
49
|
-
args: [MAT_DIALOG_DATA]
|
|
50
|
-
}] }] });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvaWZyYW1lLWRpYWxvZy9pZnJhbWUtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtZGlhbG9nL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDdEMsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQTtBQUN4RSxPQUFPLEVBQWdCLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDeEYsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7O0FBVWpELE1BQU0sT0FBTyxxQkFBcUI7SUFXaEM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ1MsU0FBOEMsRUFDckIsSUFBa0I7UUFEM0MsY0FBUyxHQUFULFNBQVMsQ0FBcUM7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBYztRQWxCcEQ7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFeEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBZSxJQUFJLENBQUMsQ0FBQTtRQVlyRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLFFBQVEsS0FBVSxDQUFDO0lBRTFCOzs7O2dGQUk0RTtJQUVyRSxLQUFLLENBQUMsSUFBVTtRQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM1QixDQUFDOytHQXhDVSxxQkFBcUIsOENBbUJ0QixlQUFlO21HQW5CZCxxQkFBcUIsZ0ZDZmxDLDBNQUlBLDBERFNZLElBQUksNkZBQUUsbUJBQW1CLG1IQUFFLFNBQVM7OzRGQUVuQyxxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFLFNBQVMsQ0FBQzs7MEJBcUI1QyxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBMb2dnZXJGYWN0b3J5IH0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnXG5pbXBvcnQgeyBJRnJhbWVQYXJhbXMsIElmcmFtZUhvc3RDb21wb25lbnQgfSBmcm9tICcuLi9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWktZnJhbWUtZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgSWZyYW1lSG9zdENvbXBvbmVudCwgQXN5bmNQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgSWZyYW1lRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbClcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8SWZyYW1lRGlhbG9nQ29tcG9uZW50PixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IElGcmFtZVBhcmFtc1xuICApIHtcbiAgICB0aGlzLmlmcmFtZVBhcmFtcyQubmV4dChkYXRhKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmVjeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgY2xvc2UoZGF0YT86IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGRhdGEpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbn1cbiIsIjxkaXYgKm5nSWY9XCJpZnJhbWVQYXJhbXMkIHwgYXN5bmMgYXMgaUZyYW1lUGFyYW1zXCIgY2xhc3M9XCJmdWxsXCI+XG4gIDxlbGRlci1pLWZyYW1lLWhvc3QgY2xhc3M9XCJmdWxsXCIgW2lmcmFtZVBhcmFtc109XCJpRnJhbWVQYXJhbXNcIiAoY2xvc2UpPVwiY2xvc2UoJGV2ZW50KVwiPlxuICA8L2VsZGVyLWktZnJhbWUtaG9zdD5cbjwvZGl2PlxuIl19
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { TypedEventMessage } from '../typed-event-message';
|
|
5
|
-
import { IframeMessages } from '../iframe-messages';
|
|
6
|
-
import { ElderSafeUrlPipe } from '../../../pipes/elder-safe-url.pipe';
|
|
7
|
-
import { MatIcon } from '@angular/material/icon';
|
|
8
|
-
import { MatIconAnchor } from '@angular/material/button';
|
|
9
|
-
import { ElderThemeDirective } from '../../theme/elder-theme.directive';
|
|
10
|
-
import { MatToolbar } from '@angular/material/toolbar';
|
|
11
|
-
import { NgIf, AsyncPipe } from '@angular/common';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
export class IFrameState {
|
|
14
|
-
constructor(type, message = null) {
|
|
15
|
-
this.type = type;
|
|
16
|
-
this.message = message;
|
|
17
|
-
}
|
|
18
|
-
get isLoading() {
|
|
19
|
-
return this.type === 'LOADING';
|
|
20
|
-
}
|
|
21
|
-
get hasLoaded() {
|
|
22
|
-
return this.type === 'LOADED';
|
|
23
|
-
}
|
|
24
|
-
get isViewReady() {
|
|
25
|
-
return this.type === 'VIEW_READY';
|
|
26
|
-
}
|
|
27
|
-
get hasError() {
|
|
28
|
-
return this.type === 'ERROR';
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export class IframeHostComponent {
|
|
32
|
-
/***************************************************************************
|
|
33
|
-
* *
|
|
34
|
-
* Constructor *
|
|
35
|
-
* *
|
|
36
|
-
**************************************************************************/
|
|
37
|
-
constructor() {
|
|
38
|
-
/***************************************************************************
|
|
39
|
-
* *
|
|
40
|
-
* Fields *
|
|
41
|
-
* *
|
|
42
|
-
**************************************************************************/
|
|
43
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
44
|
-
this.iframeParams$ = new BehaviorSubject(null);
|
|
45
|
-
this.iframeState$ = new BehaviorSubject(new IFrameState('LOADING'));
|
|
46
|
-
this.message = new EventEmitter();
|
|
47
|
-
this.close = new EventEmitter();
|
|
48
|
-
}
|
|
49
|
-
/***************************************************************************
|
|
50
|
-
* *
|
|
51
|
-
* Listeners *
|
|
52
|
-
* *
|
|
53
|
-
**************************************************************************/
|
|
54
|
-
/**
|
|
55
|
-
* Listens for messages from window.
|
|
56
|
-
* Makes it possible to react upon messages from iframe child window.
|
|
57
|
-
*
|
|
58
|
-
* @param event message from child window
|
|
59
|
-
*/
|
|
60
|
-
onWindowMessage(event) {
|
|
61
|
-
if (event && event.data) {
|
|
62
|
-
if (TypedEventMessage.isOfType(event.data)) {
|
|
63
|
-
this.log.debug('Received message from child:', event.data);
|
|
64
|
-
this.handleMessageFromChild(event.data);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
return true;
|
|
68
|
-
}
|
|
69
|
-
/***************************************************************************
|
|
70
|
-
* *
|
|
71
|
-
* Lifecycle *
|
|
72
|
-
* *
|
|
73
|
-
**************************************************************************/
|
|
74
|
-
ngOnInit() { }
|
|
75
|
-
/***************************************************************************
|
|
76
|
-
* *
|
|
77
|
-
* Properties *
|
|
78
|
-
* *
|
|
79
|
-
**************************************************************************/
|
|
80
|
-
set iframeParams(params) {
|
|
81
|
-
this.iframeParams$.next(params);
|
|
82
|
-
}
|
|
83
|
-
/***************************************************************************
|
|
84
|
-
* *
|
|
85
|
-
* Public API *
|
|
86
|
-
* *
|
|
87
|
-
**************************************************************************/
|
|
88
|
-
onIframeLoadEvent(event) {
|
|
89
|
-
this.log.debug('Finished loading iframe', event);
|
|
90
|
-
this.iframeState$.next(new IFrameState('LOADED'));
|
|
91
|
-
}
|
|
92
|
-
onIframeErrorEvent(err) {
|
|
93
|
-
this.log.warn('Failed to load iframe', err);
|
|
94
|
-
this.iframeState$.next(new IFrameState('ERROR', err + ''));
|
|
95
|
-
}
|
|
96
|
-
sendMessageToChild(msg) {
|
|
97
|
-
this.log.debug('Sending message to iframe child:', msg);
|
|
98
|
-
this.iframe.nativeElement.contentWindow.postMessage(msg, '*');
|
|
99
|
-
}
|
|
100
|
-
doClose(event) {
|
|
101
|
-
this.close.emit();
|
|
102
|
-
}
|
|
103
|
-
/***************************************************************************
|
|
104
|
-
* *
|
|
105
|
-
* Private methods *
|
|
106
|
-
* *
|
|
107
|
-
**************************************************************************/
|
|
108
|
-
handleMessageFromChild(message) {
|
|
109
|
-
this.message.next(message);
|
|
110
|
-
if (message.type === IframeMessages.CLOSE) {
|
|
111
|
-
this.close.emit(message.data);
|
|
112
|
-
}
|
|
113
|
-
if (message.type === IframeMessages.VIEW_READY_EVENT) {
|
|
114
|
-
this.iframeState$.next(new IFrameState('VIEW_READY'));
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
118
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: IframeHostComponent, isStandalone: true, selector: "elder-i-frame-host", inputs: { iframeParams: "iframeParams" }, outputs: { message: "message", close: "close" }, host: { listeners: { "window:message": "onWindowMessage($event)" } }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"{ state: iframeState$ | async, params: iframeParams$ | async } as ctx\">\n <div class=\"layout-col full\">\n <!-- In Case of Error -->\n <div *ngIf=\"ctx.state.hasError\" class=\"layout-row place-center-center flex\">\n <span>Failed to load Iframe: {{ ctx.state.message }}</span>\n </div>\n\n <!-- IFrame -->\n <iframe\n #iframe\n *ngIf=\"!ctx.state.hasError\"\n (load)=\"onIframeLoadEvent($event)\"\n (error)=\"onIframeErrorEvent($event)\"\n [src]=\"ctx.params.srcUrl | elderSafeUrl\"\n class=\"iframe flex\"\n allow=\"clipboard *;clipboard-read *;clipboard-write *;\"\n ></iframe>\n\n <!-- Bottom Toolbar -->\n <mat-toolbar\n *ngIf=\"!ctx.params.hideActionBar\"\n elderTheme\n class=\"layout-row place-between-center flex-none elder-dense-toolbar\"\n >\n <a mat-icon-button (click)=\"doClose($event)\" class=\"elder-icon-button-sm\">\n <mat-icon>close</mat-icon>\n </a>\n\n <a\n mat-icon-button\n class=\"elder-icon-button-sm\"\n [href]=\"ctx.params.srcUrl | elderSafeUrl\"\n target=\"_blank\"\n >\n <mat-icon>open_in_new</mat-icon>\n </a>\n </mat-toolbar>\n </div>\n</ng-container>\n", styles: [".iframe{margin:0;border:0;height:100%;background-color:#fff}.elder-dense-toolbar,.elder-dense-toolbar .mat-toolbar-row{height:40px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: ElderThemeDirective, selector: "[elderTheme]" }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: ElderSafeUrlPipe, name: "elderSafeUrl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
119
|
-
}
|
|
120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeHostComponent, decorators: [{
|
|
121
|
-
type: Component,
|
|
122
|
-
args: [{ selector: 'elder-i-frame-host', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
123
|
-
NgIf,
|
|
124
|
-
MatToolbar,
|
|
125
|
-
ElderThemeDirective,
|
|
126
|
-
MatIconAnchor,
|
|
127
|
-
MatIcon,
|
|
128
|
-
AsyncPipe,
|
|
129
|
-
ElderSafeUrlPipe,
|
|
130
|
-
], template: "<ng-container *ngIf=\"{ state: iframeState$ | async, params: iframeParams$ | async } as ctx\">\n <div class=\"layout-col full\">\n <!-- In Case of Error -->\n <div *ngIf=\"ctx.state.hasError\" class=\"layout-row place-center-center flex\">\n <span>Failed to load Iframe: {{ ctx.state.message }}</span>\n </div>\n\n <!-- IFrame -->\n <iframe\n #iframe\n *ngIf=\"!ctx.state.hasError\"\n (load)=\"onIframeLoadEvent($event)\"\n (error)=\"onIframeErrorEvent($event)\"\n [src]=\"ctx.params.srcUrl | elderSafeUrl\"\n class=\"iframe flex\"\n allow=\"clipboard *;clipboard-read *;clipboard-write *;\"\n ></iframe>\n\n <!-- Bottom Toolbar -->\n <mat-toolbar\n *ngIf=\"!ctx.params.hideActionBar\"\n elderTheme\n class=\"layout-row place-between-center flex-none elder-dense-toolbar\"\n >\n <a mat-icon-button (click)=\"doClose($event)\" class=\"elder-icon-button-sm\">\n <mat-icon>close</mat-icon>\n </a>\n\n <a\n mat-icon-button\n class=\"elder-icon-button-sm\"\n [href]=\"ctx.params.srcUrl | elderSafeUrl\"\n target=\"_blank\"\n >\n <mat-icon>open_in_new</mat-icon>\n </a>\n </mat-toolbar>\n </div>\n</ng-container>\n", styles: [".iframe{margin:0;border:0;height:100%;background-color:#fff}.elder-dense-toolbar,.elder-dense-toolbar .mat-toolbar-row{height:40px}\n"] }]
|
|
131
|
-
}], ctorParameters: () => [], propDecorators: { iframe: [{
|
|
132
|
-
type: ViewChild,
|
|
133
|
-
args: ['iframe']
|
|
134
|
-
}], message: [{
|
|
135
|
-
type: Output
|
|
136
|
-
}], close: [{
|
|
137
|
-
type: Output
|
|
138
|
-
}], onWindowMessage: [{
|
|
139
|
-
type: HostListener,
|
|
140
|
-
args: ['window:message', ['$event']]
|
|
141
|
-
}], iframeParams: [{
|
|
142
|
-
type: Input
|
|
143
|
-
}] } });
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFBOztBQUlqRCxNQUFNLE9BQU8sV0FBVztJQUN0QixZQUNrQixJQUFxQixFQUNyQixVQUF5QixJQUFJO1FBRDdCLFNBQUksR0FBSixJQUFJLENBQWlCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBQzVDLENBQUM7SUFFSixJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFBO0lBQ25DLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQTtJQUM5QixDQUFDO0NBQ0Y7QUF5Q0QsTUFBTSxPQUFPLG1CQUFtQjtJQXFCOUI7Ozs7Z0ZBSTRFO0lBRTVFO1FBMUJBOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRXJELGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQWUsSUFBSSxDQUFDLENBQUE7UUFDdkQsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBYyxJQUFJLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO1FBTXBGLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQTtRQUd6RCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtJQVF2QixDQUFDO0lBRWhCOzs7O2dGQUk0RTtJQUU1RTs7Ozs7T0FLRztJQUVJLGVBQWUsQ0FBQyxLQUFtQjtRQUN4QyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQkFDMUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN6QyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUUxQjs7OztnRkFJNEU7SUFFNUUsSUFDVyxZQUFZLENBQUMsTUFBb0I7UUFDMUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDakMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxpQkFBaUIsQ0FBQyxLQUFZO1FBQ25DLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ2hELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7SUFDbkQsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEdBQVE7UUFDaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFDM0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzVELENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxHQUFnQztRQUN4RCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUN2RCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUMvRCxDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQWE7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLHNCQUFzQixDQUFDLE9BQW9DO1FBQ2pFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRTFCLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQy9CLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssY0FBYyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQTtRQUN2RCxDQUFDO0lBQ0gsQ0FBQzsrR0FoSFUsbUJBQW1CO21HQUFuQixtQkFBbUIsaVZDdEZoQyxndkNBdUNBLCtMRHNDSSxJQUFJLDZGQUNKLFVBQVUscUdBQ1YsbUJBQW1CLHlEQUNuQixhQUFhLHFHQUNiLE9BQU8sc0lBQ1AsU0FBUyx5Q0FDVCxnQkFBZ0I7OzRGQUdQLG1CQUFtQjtrQkFoQi9CLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osVUFBVTt3QkFDVixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsT0FBTzt3QkFDUCxTQUFTO3dCQUNULGdCQUFnQjtxQkFDakI7d0RBZU0sTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVE7Z0JBSVosT0FBTztzQkFEYixNQUFNO2dCQUlBLEtBQUs7c0JBRFgsTUFBTTtnQkF3QkEsZUFBZTtzQkFEckIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkEwQi9CLFlBQVk7c0JBRHRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBMb2dnZXJGYWN0b3J5IH0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgVHlwZWRFdmVudE1lc3NhZ2UgfSBmcm9tICcuLi90eXBlZC1ldmVudC1tZXNzYWdlJ1xuaW1wb3J0IHsgSWZyYW1lTWVzc2FnZXMgfSBmcm9tICcuLi9pZnJhbWUtbWVzc2FnZXMnXG5pbXBvcnQgeyBFbGRlclNhZmVVcmxQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMvZWxkZXItc2FmZS11cmwucGlwZSdcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgTWF0SWNvbkFuY2hvciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcbmltcG9ydCB7IEVsZGVyVGhlbWVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi90aGVtZS9lbGRlci10aGVtZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBNYXRUb29sYmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcidcbmltcG9ydCB7IE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuZXhwb3J0IHR5cGUgSUZyYW1lU3RhdGVUeXBlID0gJ0xPQURJTkcnIHwgJ0xPQURFRCcgfCAnVklFV19SRUFEWScgfCAnRVJST1InXG5cbmV4cG9ydCBjbGFzcyBJRnJhbWVTdGF0ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSB0eXBlOiBJRnJhbWVTdGF0ZVR5cGUsXG4gICAgcHVibGljIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgPSBudWxsXG4gICkge31cblxuICBwdWJsaWMgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnTE9BRElORydcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzTG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdMT0FERUQnXG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVmlld1JlYWR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdWSUVXX1JFQURZJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnRVJST1InXG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRnJhbWVQYXJhbXMge1xuICAvKipcbiAgICogU291cmNlIFVSTCBvZiBpZnJhbWUuXG4gICAqL1xuICByZWFkb25seSBzcmNVcmw6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBzdHJpbmdcblxuICAvKipcbiAgICogSGVpZ2h0IG9mIHRoZSBpZnJhbWUuXG4gICAqL1xuICByZWFkb25seSBoZWlnaHQ/OiBzdHJpbmdcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgdGhlIGJvdHRvbSBhY3Rpb24gYmFyXG4gICAqIGlzIGhpZGRlbi5cbiAgICovXG4gIHJlYWRvbmx5IGhpZGVBY3Rpb25CYXI/OiBib29sZWFuXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWktZnJhbWUtaG9zdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2lmcmFtZS1ob3N0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBNYXRUb29sYmFyLFxuICAgIEVsZGVyVGhlbWVEaXJlY3RpdmUsXG4gICAgTWF0SWNvbkFuY2hvcixcbiAgICBNYXRJY29uLFxuICAgIEFzeW5jUGlwZSxcbiAgICBFbGRlclNhZmVVcmxQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbClcbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SUZyYW1lU3RhdGU+KG5ldyBJRnJhbWVTdGF0ZSgnTE9BRElORycpKVxuXG4gIEBWaWV3Q2hpbGQoJ2lmcmFtZScpXG4gIHB1YmxpYyBpZnJhbWU6IEVsZW1lbnRSZWZcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG1lc3NhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pj4oKVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlzdGVuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogTGlzdGVucyBmb3IgbWVzc2FnZXMgZnJvbSB3aW5kb3cuXG4gICAqIE1ha2VzIGl0IHBvc3NpYmxlIHRvIHJlYWN0IHVwb24gbWVzc2FnZXMgZnJvbSBpZnJhbWUgY2hpbGQgd2luZG93LlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnQgbWVzc2FnZSBmcm9tIGNoaWxkIHdpbmRvd1xuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93Om1lc3NhZ2UnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25XaW5kb3dNZXNzYWdlKGV2ZW50OiBNZXNzYWdlRXZlbnQpOiBib29sZWFuIHtcbiAgICBpZiAoZXZlbnQgJiYgZXZlbnQuZGF0YSkge1xuICAgICAgaWYgKFR5cGVkRXZlbnRNZXNzYWdlLmlzT2ZUeXBlKGV2ZW50LmRhdGEpKSB7XG4gICAgICAgIHRoaXMubG9nLmRlYnVnKCdSZWNlaXZlZCBtZXNzYWdlIGZyb20gY2hpbGQ6JywgZXZlbnQuZGF0YSlcbiAgICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbUNoaWxkKGV2ZW50LmRhdGEpXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZWN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWZyYW1lUGFyYW1zKHBhcmFtczogSUZyYW1lUGFyYW1zKSB7XG4gICAgdGhpcy5pZnJhbWVQYXJhbXMkLm5leHQocGFyYW1zKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uSWZyYW1lTG9hZEV2ZW50KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMubG9nLmRlYnVnKCdGaW5pc2hlZCBsb2FkaW5nIGlmcmFtZScsIGV2ZW50KVxuICAgIHRoaXMuaWZyYW1lU3RhdGUkLm5leHQobmV3IElGcmFtZVN0YXRlKCdMT0FERUQnKSlcbiAgfVxuXG4gIHB1YmxpYyBvbklmcmFtZUVycm9yRXZlbnQoZXJyOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy53YXJuKCdGYWlsZWQgdG8gbG9hZCBpZnJhbWUnLCBlcnIpXG4gICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ0VSUk9SJywgZXJyICsgJycpKVxuICB9XG5cbiAgcHVibGljIHNlbmRNZXNzYWdlVG9DaGlsZChtc2c6IFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pik6IHZvaWQge1xuICAgIHRoaXMubG9nLmRlYnVnKCdTZW5kaW5nIG1lc3NhZ2UgdG8gaWZyYW1lIGNoaWxkOicsIG1zZylcbiAgICB0aGlzLmlmcmFtZS5uYXRpdmVFbGVtZW50LmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UobXNnLCAnKicpXG4gIH1cblxuICBwdWJsaWMgZG9DbG9zZShldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZS5lbWl0KClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlTWVzc2FnZUZyb21DaGlsZChtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2UubmV4dChtZXNzYWdlKVxuXG4gICAgaWYgKG1lc3NhZ2UudHlwZSA9PT0gSWZyYW1lTWVzc2FnZXMuQ0xPU0UpIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChtZXNzYWdlLmRhdGEpXG4gICAgfVxuXG4gICAgaWYgKG1lc3NhZ2UudHlwZSA9PT0gSWZyYW1lTWVzc2FnZXMuVklFV19SRUFEWV9FVkVOVCkge1xuICAgICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ1ZJRVdfUkVBRFknKSlcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ7IHN0YXRlOiBpZnJhbWVTdGF0ZSQgfCBhc3luYywgcGFyYW1zOiBpZnJhbWVQYXJhbXMkIHwgYXN5bmMgfSBhcyBjdHhcIj5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiPlxuICAgIDwhLS0gSW4gQ2FzZSBvZiBFcnJvciAtLT5cbiAgICA8ZGl2ICpuZ0lmPVwiY3R4LnN0YXRlLmhhc0Vycm9yXCIgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWNlbnRlci1jZW50ZXIgZmxleFwiPlxuICAgICAgPHNwYW4+RmFpbGVkIHRvIGxvYWQgSWZyYW1lOiB7eyBjdHguc3RhdGUubWVzc2FnZSB9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gSUZyYW1lIC0tPlxuICAgIDxpZnJhbWVcbiAgICAgICNpZnJhbWVcbiAgICAgICpuZ0lmPVwiIWN0eC5zdGF0ZS5oYXNFcnJvclwiXG4gICAgICAobG9hZCk9XCJvbklmcmFtZUxvYWRFdmVudCgkZXZlbnQpXCJcbiAgICAgIChlcnJvcik9XCJvbklmcmFtZUVycm9yRXZlbnQoJGV2ZW50KVwiXG4gICAgICBbc3JjXT1cImN0eC5wYXJhbXMuc3JjVXJsIHwgZWxkZXJTYWZlVXJsXCJcbiAgICAgIGNsYXNzPVwiaWZyYW1lIGZsZXhcIlxuICAgICAgYWxsb3c9XCJjbGlwYm9hcmQgKjtjbGlwYm9hcmQtcmVhZCAqO2NsaXBib2FyZC13cml0ZSAqO1wiXG4gICAgPjwvaWZyYW1lPlxuXG4gICAgPCEtLSBCb3R0b20gVG9vbGJhciAtLT5cbiAgICA8bWF0LXRvb2xiYXJcbiAgICAgICpuZ0lmPVwiIWN0eC5wYXJhbXMuaGlkZUFjdGlvbkJhclwiXG4gICAgICBlbGRlclRoZW1lXG4gICAgICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2UtYmV0d2Vlbi1jZW50ZXIgZmxleC1ub25lIGVsZGVyLWRlbnNlLXRvb2xiYXJcIlxuICAgID5cbiAgICAgIDxhIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZG9DbG9zZSgkZXZlbnQpXCIgY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiPlxuICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxuICAgICAgPC9hPlxuXG4gICAgICA8YVxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiXG4gICAgICAgIFtocmVmXT1cImN0eC5wYXJhbXMuc3JjVXJsIHwgZWxkZXJTYWZlVXJsXCJcbiAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPm9wZW5faW5fbmV3PC9tYXQtaWNvbj5cbiAgICAgIDwvYT5cbiAgICA8L21hdC10b29sYmFyPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export class IframeMessages {
|
|
2
|
-
static { this.CLOSE = 'CLOSE'; }
|
|
3
|
-
static { this.VIEW_READY_EVENT = 'VIEW_READY_EVENT'; }
|
|
4
|
-
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLW1lc3NhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1tZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sY0FBYzthQUNGLFVBQUssR0FBRyxPQUFPLENBQUE7YUFFZixxQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBJZnJhbWVNZXNzYWdlcyB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0xPU0UgPSAnQ0xPU0UnXG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWSUVXX1JFQURZX0VWRU5UID0gJ1ZJRVdfUkVBRFlfRVZFTlQnXG59XG4iXX0=
|
package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
3
|
-
import { IframeHostComponent } from '../iframe-host/iframe-host.component';
|
|
4
|
-
import { takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
6
|
-
import { NgIf, AsyncPipe } from '@angular/common';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/router";
|
|
9
|
-
import * as i2 from "../../shell/elder-shell.service";
|
|
10
|
-
export class IframeSideContentComponent {
|
|
11
|
-
/***************************************************************************
|
|
12
|
-
* *
|
|
13
|
-
* Fields *
|
|
14
|
-
* *
|
|
15
|
-
**************************************************************************/
|
|
16
|
-
static { this.QUERY_PARAM_SRC_URL = 'srcUrl'; }
|
|
17
|
-
static { this.QUERY_PARAM_WIDTH = 'width'; }
|
|
18
|
-
/***************************************************************************
|
|
19
|
-
* *
|
|
20
|
-
* Constructor *
|
|
21
|
-
* *
|
|
22
|
-
**************************************************************************/
|
|
23
|
-
constructor(router, route, shellService) {
|
|
24
|
-
this.router = router;
|
|
25
|
-
this.route = route;
|
|
26
|
-
this.shellService = shellService;
|
|
27
|
-
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
28
|
-
this.destroy$ = new Subject();
|
|
29
|
-
this.iframeParams$ = new BehaviorSubject(null);
|
|
30
|
-
this.route.queryParams.pipe(takeUntil(this.destroy$)).subscribe((params) => {
|
|
31
|
-
this.iframeParams$.next({
|
|
32
|
-
srcUrl: params[IframeSideContentComponent.QUERY_PARAM_SRC_URL],
|
|
33
|
-
width: params['width'] || '1000px',
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
/***************************************************************************
|
|
38
|
-
* *
|
|
39
|
-
* Lifecycle *
|
|
40
|
-
* *
|
|
41
|
-
**************************************************************************/
|
|
42
|
-
ngOnInit() { }
|
|
43
|
-
ngOnDestroy() {
|
|
44
|
-
this.destroy$.next();
|
|
45
|
-
this.destroy$.complete();
|
|
46
|
-
}
|
|
47
|
-
/***************************************************************************
|
|
48
|
-
* *
|
|
49
|
-
* Public API *
|
|
50
|
-
* *
|
|
51
|
-
**************************************************************************/
|
|
52
|
-
close(data) {
|
|
53
|
-
this.shellService
|
|
54
|
-
.closeSideContent()
|
|
55
|
-
.then(() => this.removeQueryParams([
|
|
56
|
-
IframeSideContentComponent.QUERY_PARAM_SRC_URL,
|
|
57
|
-
IframeSideContentComponent.QUERY_PARAM_WIDTH,
|
|
58
|
-
]));
|
|
59
|
-
}
|
|
60
|
-
/***************************************************************************
|
|
61
|
-
* *
|
|
62
|
-
* Private methods *
|
|
63
|
-
* *
|
|
64
|
-
**************************************************************************/
|
|
65
|
-
removeQueryParams(paramNames) {
|
|
66
|
-
const params = {};
|
|
67
|
-
paramNames.forEach((paramName) => (params[paramName] = null));
|
|
68
|
-
this.router.navigate([], {
|
|
69
|
-
queryParams: params,
|
|
70
|
-
queryParamsHandling: 'merge',
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeSideContentComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.ElderShellService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
74
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: IframeSideContentComponent, isStandalone: true, selector: "elder-i-frame-side-host", ngImport: i0, template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" [style.width]=\"iFrameParams.width\" class=\"full\">\n <elder-i-frame-host class=\"full\" [iframeParams]=\"iFrameParams\" (close)=\"close($event)\">\n </elder-i-frame-host>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IframeHostComponent, selector: "elder-i-frame-host", inputs: ["iframeParams"], outputs: ["message", "close"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
75
|
-
}
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeSideContentComponent, decorators: [{
|
|
77
|
-
type: Component,
|
|
78
|
-
args: [{ selector: 'elder-i-frame-side-host', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, IframeHostComponent, AsyncPipe], template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" [style.width]=\"iFrameParams.width\" class=\"full\">\n <elder-i-frame-host class=\"full\" [iframeParams]=\"iFrameParams\" (close)=\"close($event)\">\n </elder-i-frame-host>\n</div>\n" }]
|
|
79
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.ElderShellService }] });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLXNpZGUtY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvaWZyYW1lLXNpZGUtY29udGVudC9pZnJhbWUtc2lkZS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtc2lkZS1jb250ZW50L2lmcmFtZS1zaWRlLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUE7QUFFckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDL0MsT0FBTyxFQUFnQixtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFcEQsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7OztBQVVqRCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDOzs7O2dGQUk0RTthQUVwRCx3QkFBbUIsR0FBRyxRQUFRLEFBQVgsQ0FBVzthQUM5QixzQkFBaUIsR0FBRyxPQUFPLEFBQVYsQ0FBVTtJQVFuRDs7OztnRkFJNEU7SUFFNUUsWUFDVSxNQUFjLEVBQ2QsS0FBcUIsRUFDckIsWUFBK0I7UUFGL0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQWZ4QixXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRXZELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBRS9CLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQWUsSUFBSSxDQUFDLENBQUE7UUFhckUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN6RSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztnQkFDdEIsTUFBTSxFQUFFLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDOUQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxRQUFRO2FBQ25DLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLEtBQUssQ0FBQyxJQUFVO1FBQ3JCLElBQUksQ0FBQyxZQUFZO2FBQ2QsZ0JBQWdCLEVBQUU7YUFDbEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQztZQUNyQiwwQkFBMEIsQ0FBQyxtQkFBbUI7WUFDOUMsMEJBQTBCLENBQUMsaUJBQWlCO1NBQzdDLENBQUMsQ0FDSCxDQUFBO0lBQ0wsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVwRSxpQkFBaUIsQ0FBQyxVQUFvQjtRQUM1QyxNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUE7UUFDekIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQTtRQUU3RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDdkIsV0FBVyxFQUFFLE1BQU07WUFDbkIsbUJBQW1CLEVBQUUsT0FBTztTQUM3QixDQUFDLENBQUE7SUFDSixDQUFDOytHQS9FVSwwQkFBMEI7bUdBQTFCLDBCQUEwQixtRkNqQnZDLCtPQUlBLDBERFdZLElBQUksNkZBQUUsbUJBQW1CLG1IQUFFLFNBQVM7OzRGQUVuQywwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxtQkFBbUIsRUFBRSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgSUZyYW1lUGFyYW1zLCBJZnJhbWVIb3N0Q29tcG9uZW50IH0gZnJvbSAnLi4vaWZyYW1lLWhvc3QvaWZyYW1lLWhvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBMb2dnZXJGYWN0b3J5IH0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInXG5pbXBvcnQgeyBFbGRlclNoZWxsU2VydmljZSB9IGZyb20gJy4uLy4uL3NoZWxsL2VsZGVyLXNoZWxsLnNlcnZpY2UnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWktZnJhbWUtc2lkZS1ob3N0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lmcmFtZS1zaWRlLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtc2lkZS1jb250ZW50LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgSWZyYW1lSG9zdENvbXBvbmVudCwgQXN5bmNQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgSWZyYW1lU2lkZUNvbnRlbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFFVRVJZX1BBUkFNX1NSQ19VUkwgPSAnc3JjVXJsJ1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBRVUVSWV9QQVJBTV9XSURUSCA9ICd3aWR0aCdcblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSlcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIHB1YmxpYyByZWFkb25seSBpZnJhbWVQYXJhbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJRnJhbWVQYXJhbXM+KG51bGwpXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHNoZWxsU2VydmljZTogRWxkZXJTaGVsbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuaWZyYW1lUGFyYW1zJC5uZXh0KHtcbiAgICAgICAgc3JjVXJsOiBwYXJhbXNbSWZyYW1lU2lkZUNvbnRlbnRDb21wb25lbnQuUVVFUllfUEFSQU1fU1JDX1VSTF0sXG4gICAgICAgIHdpZHRoOiBwYXJhbXNbJ3dpZHRoJ10gfHwgJzEwMDBweCcsXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZWN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKVxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGNsb3NlKGRhdGE/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnNoZWxsU2VydmljZVxuICAgICAgLmNsb3NlU2lkZUNvbnRlbnQoKVxuICAgICAgLnRoZW4oKCkgPT5cbiAgICAgICAgdGhpcy5yZW1vdmVRdWVyeVBhcmFtcyhbXG4gICAgICAgICAgSWZyYW1lU2lkZUNvbnRlbnRDb21wb25lbnQuUVVFUllfUEFSQU1fU1JDX1VSTCxcbiAgICAgICAgICBJZnJhbWVTaWRlQ29udGVudENvbXBvbmVudC5RVUVSWV9QQVJBTV9XSURUSCxcbiAgICAgICAgXSlcbiAgICAgIClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVtb3ZlUXVlcnlQYXJhbXMocGFyYW1OYW1lczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCBwYXJhbXM6IFBhcmFtcyA9IHt9XG4gICAgcGFyYW1OYW1lcy5mb3JFYWNoKChwYXJhbU5hbWUpID0+IChwYXJhbXNbcGFyYW1OYW1lXSA9IG51bGwpKVxuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgIHF1ZXJ5UGFyYW1zOiBwYXJhbXMsXG4gICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnLFxuICAgIH0pXG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJpZnJhbWVQYXJhbXMkIHwgYXN5bmMgYXMgaUZyYW1lUGFyYW1zXCIgW3N0eWxlLndpZHRoXT1cImlGcmFtZVBhcmFtcy53aWR0aFwiIGNsYXNzPVwiZnVsbFwiPlxuICA8ZWxkZXItaS1mcmFtZS1ob3N0IGNsYXNzPVwiZnVsbFwiIFtpZnJhbWVQYXJhbXNdPVwiaUZyYW1lUGFyYW1zXCIgKGNsb3NlKT1cImNsb3NlKCRldmVudClcIj5cbiAgPC9lbGRlci1pLWZyYW1lLWhvc3Q+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { IframeDialogComponent } from './iframe-dialog/iframe-dialog.component';
|
|
3
|
-
import { TypedEventMessage } from './typed-event-message';
|
|
4
|
-
import { IframeMessages } from './iframe-messages';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/material/dialog";
|
|
7
|
-
export class IframeService {
|
|
8
|
-
static postToParent(message) {
|
|
9
|
-
parent.postMessage(message, '*'); // `*` on any domain
|
|
10
|
-
}
|
|
11
|
-
/***************************************************************************
|
|
12
|
-
* *
|
|
13
|
-
* Fields *
|
|
14
|
-
* *
|
|
15
|
-
**************************************************************************/
|
|
16
|
-
constructor(dialog) {
|
|
17
|
-
this.dialog = dialog;
|
|
18
|
-
}
|
|
19
|
-
/***************************************************************************
|
|
20
|
-
* *
|
|
21
|
-
* Public API *
|
|
22
|
-
* *
|
|
23
|
-
**************************************************************************/
|
|
24
|
-
openIframeDialog(params) {
|
|
25
|
-
return this.dialog
|
|
26
|
-
.open(IframeDialogComponent, {
|
|
27
|
-
panelClass: 'no-padding-dialog',
|
|
28
|
-
maxWidth: '100vw',
|
|
29
|
-
maxHeight: '100vh',
|
|
30
|
-
width: params.width || '90vw',
|
|
31
|
-
height: params.height || '90vh',
|
|
32
|
-
data: params,
|
|
33
|
-
})
|
|
34
|
-
.afterClosed();
|
|
35
|
-
}
|
|
36
|
-
postCloseMessage(data) {
|
|
37
|
-
IframeService.postToParent(new TypedEventMessage(IframeMessages.CLOSE, data));
|
|
38
|
-
}
|
|
39
|
-
postViewReadyEventMessage(data) {
|
|
40
|
-
IframeService.postToParent(new TypedEventMessage(IframeMessages.VIEW_READY_EVENT, data));
|
|
41
|
-
}
|
|
42
|
-
postDataMessage(message) {
|
|
43
|
-
IframeService.postToParent(message);
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
46
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeService, providedIn: 'root' }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IframeService, decorators: [{
|
|
49
|
-
type: Injectable,
|
|
50
|
-
args: [{
|
|
51
|
-
providedIn: 'root',
|
|
52
|
-
}]
|
|
53
|
-
}], ctorParameters: () => [{ type: i1.MatDialog }] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvaWZyYW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUcxQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUUvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7OztBQUtsRCxNQUFNLE9BQU8sYUFBYTtJQUNqQixNQUFNLENBQUMsWUFBWSxDQUFPLE9BQWdDO1FBQy9ELE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFBLENBQUMscUJBQXFCO0lBQ3hELENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFBbUIsTUFBaUI7UUFBakIsV0FBTSxHQUFOLE1BQU0sQ0FBVztJQUFHLENBQUM7SUFFeEM7Ozs7Z0ZBSTRFO0lBRXJFLGdCQUFnQixDQUFJLE1BQW9CO1FBQzdDLE9BQU8sSUFBSSxDQUFDLE1BQU07YUFDZixJQUFJLENBQXlDLHFCQUFxQixFQUFFO1lBQ25FLFVBQVUsRUFBRSxtQkFBbUI7WUFDL0IsUUFBUSxFQUFFLE9BQU87WUFDakIsU0FBUyxFQUFFLE9BQU87WUFDbEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksTUFBTTtZQUM3QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxNQUFNO1lBQy9CLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQzthQUNELFdBQVcsRUFBRSxDQUFBO0lBQ2xCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBSSxJQUFRO1FBQ2pDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxpQkFBaUIsQ0FBWSxjQUFjLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDMUYsQ0FBQztJQUVNLHlCQUF5QixDQUFJLElBQVE7UUFDMUMsYUFBYSxDQUFDLFlBQVksQ0FDeEIsSUFBSSxpQkFBaUIsQ0FBWSxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQ3hFLENBQUE7SUFDSCxDQUFDO0lBRU0sZUFBZSxDQUFPLE9BQWdDO1FBQzNELGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDckMsQ0FBQzsrR0E1Q1UsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJ1xuaW1wb3J0IHsgSWZyYW1lRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9pZnJhbWUtZGlhbG9nL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50J1xuaW1wb3J0IHsgSUZyYW1lUGFyYW1zIH0gZnJvbSAnLi9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUeXBlZEV2ZW50TWVzc2FnZSB9IGZyb20gJy4vdHlwZWQtZXZlbnQtbWVzc2FnZSdcbmltcG9ydCB7IElmcmFtZU1lc3NhZ2VzIH0gZnJvbSAnLi9pZnJhbWUtbWVzc2FnZXMnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVTZXJ2aWNlIHtcbiAgcHVibGljIHN0YXRpYyBwb3N0VG9QYXJlbnQ8VCwgRD4obWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8VCwgRD4pOiB2b2lkIHtcbiAgICBwYXJlbnQucG9zdE1lc3NhZ2UobWVzc2FnZSwgJyonKSAvLyAgYCpgIG9uIGFueSBkb21haW5cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb3BlbklmcmFtZURpYWxvZzxSPihwYXJhbXM6IElGcmFtZVBhcmFtcyk6IE9ic2VydmFibGU8Uj4ge1xuICAgIHJldHVybiB0aGlzLmRpYWxvZ1xuICAgICAgLm9wZW48SWZyYW1lRGlhbG9nQ29tcG9uZW50LCBJRnJhbWVQYXJhbXMsIFI+KElmcmFtZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICBwYW5lbENsYXNzOiAnbm8tcGFkZGluZy1kaWFsb2cnLFxuICAgICAgICBtYXhXaWR0aDogJzEwMHZ3JyxcbiAgICAgICAgbWF4SGVpZ2h0OiAnMTAwdmgnLFxuICAgICAgICB3aWR0aDogcGFyYW1zLndpZHRoIHx8ICc5MHZ3JyxcbiAgICAgICAgaGVpZ2h0OiBwYXJhbXMuaGVpZ2h0IHx8ICc5MHZoJyxcbiAgICAgICAgZGF0YTogcGFyYW1zLFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gIH1cblxuICBwdWJsaWMgcG9zdENsb3NlTWVzc2FnZTxUPihkYXRhPzogVCk6IHZvaWQge1xuICAgIElmcmFtZVNlcnZpY2UucG9zdFRvUGFyZW50KG5ldyBUeXBlZEV2ZW50TWVzc2FnZTxzdHJpbmcsIFQ+KElmcmFtZU1lc3NhZ2VzLkNMT1NFLCBkYXRhKSlcbiAgfVxuXG4gIHB1YmxpYyBwb3N0Vmlld1JlYWR5RXZlbnRNZXNzYWdlPFQ+KGRhdGE/OiBUKTogdm9pZCB7XG4gICAgSWZyYW1lU2VydmljZS5wb3N0VG9QYXJlbnQoXG4gICAgICBuZXcgVHlwZWRFdmVudE1lc3NhZ2U8c3RyaW5nLCBUPihJZnJhbWVNZXNzYWdlcy5WSUVXX1JFQURZX0VWRU5ULCBkYXRhKVxuICAgIClcbiAgfVxuXG4gIHB1YmxpYyBwb3N0RGF0YU1lc3NhZ2U8VCwgRD4obWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8VCwgRD4pOiB2b2lkIHtcbiAgICBJZnJhbWVTZXJ2aWNlLnBvc3RUb1BhcmVudChtZXNzYWdlKVxuICB9XG59XG4iXX0=
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
export class TypedEventMessage {
|
|
2
|
-
// type predicate to check weather an object is a DataViewMessage type
|
|
3
|
-
static isOfType(obj) {
|
|
4
|
-
return obj.type !== undefined;
|
|
5
|
-
}
|
|
6
|
-
constructor(type, data) {
|
|
7
|
-
this.type = type;
|
|
8
|
-
this.data = data;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
export class DataViewSelectionInit {
|
|
12
|
-
constructor(options, initialSelection = [], idField = 'id') {
|
|
13
|
-
this.options = options;
|
|
14
|
-
this.initialSelection = initialSelection;
|
|
15
|
-
this.idField = idField;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export class DataViewSelection {
|
|
19
|
-
constructor(selection) {
|
|
20
|
-
this.selection = selection;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
export const DataViewMessageTypeValues = ['SELECTION_INIT', 'SELECTION_SELECTED'];
|
|
24
|
-
export const isDataViewMessageType = (x) => DataViewMessageTypeValues.includes(x);
|
|
25
|
-
export class DataViewMessage extends TypedEventMessage {
|
|
26
|
-
static initialSelection(init) {
|
|
27
|
-
return new DataViewMessage('SELECTION_INIT', init);
|
|
28
|
-
}
|
|
29
|
-
static selection(selection) {
|
|
30
|
-
return new DataViewMessage('SELECTION_SELECTED', selection);
|
|
31
|
-
}
|
|
32
|
-
// type predicate to check weather an object is a DataViewMessage type
|
|
33
|
-
static isOfType(obj) {
|
|
34
|
-
return isDataViewMessageType(obj?.type);
|
|
35
|
-
}
|
|
36
|
-
constructor(type, data) {
|
|
37
|
-
super(type, data);
|
|
38
|
-
this.type = type;
|
|
39
|
-
this.data = data;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZXZlbnQtbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy90eXBlZC1ldmVudC1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsc0VBQXNFO0lBQy9ELE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBUTtRQUM3QixPQUFRLEdBQW1DLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQTtJQUNoRSxDQUFDO0lBRUQsWUFDUyxJQUFPLEVBQ1AsSUFBUTtRQURSLFNBQUksR0FBSixJQUFJLENBQUc7UUFDUCxTQUFJLEdBQUosSUFBSSxDQUFJO0lBQ2QsQ0FBQztDQUNMO0FBRUQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUNTLE9BQTZCLEVBQzdCLG1CQUF3QixFQUFFLEVBQzFCLFVBQWtCLElBQUk7UUFGdEIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFDN0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFVO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQWU7SUFDNUIsQ0FBQztDQUNMO0FBRUQsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUFtQixTQUFjO1FBQWQsY0FBUyxHQUFULFNBQVMsQ0FBSztJQUFHLENBQUM7Q0FDdEM7QUFFRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLGdCQUFnQixFQUFFLG9CQUFvQixDQUFVLENBQUE7QUFFMUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxDQUFNLEVBQTRCLEVBQUUsQ0FDeEUseUJBQXlCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRXZDLE1BQU0sT0FBTyxlQUdYLFNBQVEsaUJBQXlDO0lBQzFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBSSxJQUE4QjtRQUM5RCxPQUFPLElBQUksZUFBZSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFJLFNBQStCO1FBQ3hELE9BQU8sSUFBSSxlQUFlLENBQUMsb0JBQW9CLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDN0QsQ0FBQztJQUVELHNFQUFzRTtJQUMvRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQVE7UUFDN0IsT0FBTyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELFlBQ1MsSUFBeUIsRUFDekIsSUFBTztRQUVkLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFIVixTQUFJLEdBQUosSUFBSSxDQUFxQjtRQUN6QixTQUFJLEdBQUosSUFBSSxDQUFHO0lBR2hCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZGVyRGF0YVZpZXdPcHRpb25zIH0gZnJvbSAnLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMnXG5cbmV4cG9ydCBjbGFzcyBUeXBlZEV2ZW50TWVzc2FnZTxULCBEPiB7XG4gIC8vIHR5cGUgcHJlZGljYXRlIHRvIGNoZWNrIHdlYXRoZXIgYW4gb2JqZWN0IGlzIGEgRGF0YVZpZXdNZXNzYWdlIHR5cGVcbiAgcHVibGljIHN0YXRpYyBpc09mVHlwZShvYmo6IGFueSk6IG9iaiBpcyBUeXBlZEV2ZW50TWVzc2FnZTxhbnksIGFueT4ge1xuICAgIHJldHVybiAob2JqIGFzIFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55PikudHlwZSAhPT0gdW5kZWZpbmVkXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHlwZTogVCxcbiAgICBwdWJsaWMgZGF0YT86IERcbiAgKSB7fVxufVxuXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdTZWxlY3Rpb25Jbml0PFQ+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zLFxuICAgIHB1YmxpYyBpbml0aWFsU2VsZWN0aW9uOiBUW10gPSBbXSxcbiAgICBwdWJsaWMgaWRGaWVsZDogc3RyaW5nID0gJ2lkJ1xuICApIHt9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhVmlld1NlbGVjdGlvbjxUPiB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzZWxlY3Rpb246IFRbXSkge31cbn1cblxuZXhwb3J0IGNvbnN0IERhdGFWaWV3TWVzc2FnZVR5cGVWYWx1ZXMgPSBbJ1NFTEVDVElPTl9JTklUJywgJ1NFTEVDVElPTl9TRUxFQ1RFRCddIGFzIGNvbnN0XG5leHBvcnQgdHlwZSBEYXRhVmlld01lc3NhZ2VUeXBlID0gKHR5cGVvZiBEYXRhVmlld01lc3NhZ2VUeXBlVmFsdWVzKVtudW1iZXJdXG5leHBvcnQgY29uc3QgaXNEYXRhVmlld01lc3NhZ2VUeXBlID0gKHg6IGFueSk6IHggaXMgRGF0YVZpZXdNZXNzYWdlVHlwZSA9PlxuICBEYXRhVmlld01lc3NhZ2VUeXBlVmFsdWVzLmluY2x1ZGVzKHgpXG5cbmV4cG9ydCBjbGFzcyBEYXRhVmlld01lc3NhZ2U8XG4gIFQsXG4gIEQgPSBEYXRhVmlld1NlbGVjdGlvbkluaXQ8VD4gfCBEYXRhVmlld1NlbGVjdGlvbjxUPixcbj4gZXh0ZW5kcyBUeXBlZEV2ZW50TWVzc2FnZTxEYXRhVmlld01lc3NhZ2VUeXBlLCBEPiB7XG4gIHB1YmxpYyBzdGF0aWMgaW5pdGlhbFNlbGVjdGlvbjxEPihpbml0OiBEYXRhVmlld1NlbGVjdGlvbkluaXQ8RD4pOiBEYXRhVmlld01lc3NhZ2U8RD4ge1xuICAgIHJldHVybiBuZXcgRGF0YVZpZXdNZXNzYWdlKCdTRUxFQ1RJT05fSU5JVCcsIGluaXQpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHNlbGVjdGlvbjxEPihzZWxlY3Rpb246IERhdGFWaWV3U2VsZWN0aW9uPEQ+KTogRGF0YVZpZXdNZXNzYWdlPEQ+IHtcbiAgICByZXR1cm4gbmV3IERhdGFWaWV3TWVzc2FnZSgnU0VMRUNUSU9OX1NFTEVDVEVEJywgc2VsZWN0aW9uKVxuICB9XG5cbiAgLy8gdHlwZSBwcmVkaWNhdGUgdG8gY2hlY2sgd2VhdGhlciBhbiBvYmplY3QgaXMgYSBEYXRhVmlld01lc3NhZ2UgdHlwZVxuICBwdWJsaWMgc3RhdGljIGlzT2ZUeXBlKG9iajogYW55KTogb2JqIGlzIERhdGFWaWV3TWVzc2FnZTxhbnksIGFueT4ge1xuICAgIHJldHVybiBpc0RhdGFWaWV3TWVzc2FnZVR5cGUob2JqPy50eXBlKVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6IERhdGFWaWV3TWVzc2FnZVR5cGUsXG4gICAgcHVibGljIGRhdGE6IERcbiAgKSB7XG4gICAgc3VwZXIodHlwZSwgZGF0YSlcbiAgfVxufVxuIl19
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { Directive, Host } from '@angular/core';
|
|
2
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
4
|
-
import { takeUntil, tap } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/material/autocomplete";
|
|
7
|
-
import * as i2 from "./elder-infinite-scroll.directive";
|
|
8
|
-
export class ElderInfiniteAutocompleteDirective {
|
|
9
|
-
/***************************************************************************
|
|
10
|
-
* *
|
|
11
|
-
* Constructor *
|
|
12
|
-
* *
|
|
13
|
-
**************************************************************************/
|
|
14
|
-
constructor(autoComplete, infiniteScroll) {
|
|
15
|
-
this.autoComplete = autoComplete;
|
|
16
|
-
this.infiniteScroll = infiniteScroll;
|
|
17
|
-
/***************************************************************************
|
|
18
|
-
* *
|
|
19
|
-
* Fields *
|
|
20
|
-
* *
|
|
21
|
-
**************************************************************************/
|
|
22
|
-
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
23
|
-
this.unsubscribe$ = new Subject();
|
|
24
|
-
this.infiniteScroll.listenToHost = false; // We find the scroll container with our own logic
|
|
25
|
-
this.autoComplete.opened
|
|
26
|
-
.pipe(takeUntil(this.unsubscribe$), tap(() => {
|
|
27
|
-
// Note: When autocomplete raises opened, panel is not yet created (by Overlay)
|
|
28
|
-
// Note: The panel will be available on next tick
|
|
29
|
-
// Note: The panel wil NOT open if there are no options to display
|
|
30
|
-
setTimeout(() => {
|
|
31
|
-
this.infiniteScroll.scrollContainer = this.autoComplete.panel.nativeElement;
|
|
32
|
-
});
|
|
33
|
-
}))
|
|
34
|
-
.subscribe();
|
|
35
|
-
this.autoComplete.closed
|
|
36
|
-
.pipe(takeUntil(this.unsubscribe$), tap(() => {
|
|
37
|
-
this.infiniteScroll.scrollContainer = null;
|
|
38
|
-
}))
|
|
39
|
-
.subscribe();
|
|
40
|
-
}
|
|
41
|
-
/***************************************************************************
|
|
42
|
-
* *
|
|
43
|
-
* Life-Cycle Hooks *
|
|
44
|
-
* *
|
|
45
|
-
**************************************************************************/
|
|
46
|
-
ngOnInit() { }
|
|
47
|
-
ngOnDestroy() {
|
|
48
|
-
this.unsubscribe$.next();
|
|
49
|
-
this.unsubscribe$.complete();
|
|
50
|
-
}
|
|
51
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderInfiniteAutocompleteDirective, deps: [{ token: i1.MatAutocomplete, host: true }, { token: i2.ElderInfiniteScrollDirective, host: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
52
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ElderInfiniteAutocompleteDirective, isStandalone: true, selector: "mat-autocomplete[elderElderInfiniteAutocomplete]", ngImport: i0 }); }
|
|
53
|
-
}
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ElderInfiniteAutocompleteDirective, decorators: [{
|
|
55
|
-
type: Directive,
|
|
56
|
-
args: [{
|
|
57
|
-
selector: 'mat-autocomplete[elderElderInfiniteAutocomplete]',
|
|
58
|
-
standalone: true,
|
|
59
|
-
}]
|
|
60
|
-
}], ctorParameters: () => [{ type: i1.MatAutocomplete, decorators: [{
|
|
61
|
-
type: Host
|
|
62
|
-
}] }, { type: i2.ElderInfiniteScrollDirective, decorators: [{
|
|
63
|
-
type: Host
|
|
64
|
-
}] }] });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaW5maW5pdGUtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaW5maW5pdGVzY3JvbGwvZWxkZXItaW5maW5pdGUtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBcUIsTUFBTSxlQUFlLENBQUE7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXBELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7OztBQU8vQyxNQUFNLE9BQU8sa0NBQWtDO0lBVzdDOzs7O2dGQUk0RTtJQUU1RSxZQUMwQixZQUE2QixFQUM3QixjQUE0QztRQUQ1QyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0IsbUJBQWMsR0FBZCxjQUFjLENBQThCO1FBbEJ0RTs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUV2RCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUE7UUFZakQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFBLENBQUMsa0RBQWtEO1FBRTNGLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTTthQUNyQixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFDNUIsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLCtFQUErRTtZQUMvRSxpREFBaUQ7WUFDakQsa0VBQWtFO1lBQ2xFLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFBO1lBQzdFLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQTtRQUVkLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTTthQUNyQixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFDNUIsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQTtRQUM1QyxDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsRUFBRSxDQUFBO0lBQ2hCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDOUIsQ0FBQzsrR0ExRFUsa0NBQWtDO21HQUFsQyxrQ0FBa0M7OzRGQUFsQyxrQ0FBa0M7a0JBSjlDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtEQUFrRDtvQkFDNUQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFtQkksSUFBSTs7MEJBQ0osSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJ1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgRWxkZXJJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZWxkZXItaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZSdcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnbWF0LWF1dG9jb21wbGV0ZVtlbGRlckVsZGVySW5maW5pdGVBdXRvY29tcGxldGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJJbmZpbml0ZUF1dG9jb21wbGV0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEhvc3QoKSBwdWJsaWMgcmVhZG9ubHkgYXV0b0NvbXBsZXRlOiBNYXRBdXRvY29tcGxldGUsXG4gICAgQEhvc3QoKSBwdWJsaWMgcmVhZG9ubHkgaW5maW5pdGVTY3JvbGw6IEVsZGVySW5maW5pdGVTY3JvbGxEaXJlY3RpdmVcbiAgKSB7XG4gICAgdGhpcy5pbmZpbml0ZVNjcm9sbC5saXN0ZW5Ub0hvc3QgPSBmYWxzZSAvLyBXZSBmaW5kIHRoZSBzY3JvbGwgY29udGFpbmVyIHdpdGggb3VyIG93biBsb2dpY1xuXG4gICAgdGhpcy5hdXRvQ29tcGxldGUub3BlbmVkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAvLyBOb3RlOiBXaGVuIGF1dG9jb21wbGV0ZSByYWlzZXMgb3BlbmVkLCBwYW5lbCBpcyBub3QgeWV0IGNyZWF0ZWQgKGJ5IE92ZXJsYXkpXG4gICAgICAgICAgLy8gTm90ZTogVGhlIHBhbmVsIHdpbGwgYmUgYXZhaWxhYmxlIG9uIG5leHQgdGlja1xuICAgICAgICAgIC8vIE5vdGU6IFRoZSBwYW5lbCB3aWwgTk9UIG9wZW4gaWYgdGhlcmUgYXJlIG5vIG9wdGlvbnMgdG8gZGlzcGxheVxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbmZpbml0ZVNjcm9sbC5zY3JvbGxDb250YWluZXIgPSB0aGlzLmF1dG9Db21wbGV0ZS5wYW5lbC5uYXRpdmVFbGVtZW50XG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKVxuXG4gICAgdGhpcy5hdXRvQ29tcGxldGUuY2xvc2VkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmluZmluaXRlU2Nyb2xsLnNjcm9sbENvbnRhaW5lciA9IG51bGxcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUtQ3ljbGUgSG9va3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpXG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG59XG4iXX0=
|