@coolon/angular-ui-powerups 16.1.0-aplpha.8 → 16.1.0-aplpha.81
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/assets/activities/input-activities.scss +10 -2
- package/assets/form.scss +62 -27
- package/assets/table.scss +15 -18
- package/assets/tabs.scss +2 -6
- package/esm2022/lib/angular-ui-powerups.module.mjs +1 -1
- package/esm2022/lib/animations/slide-animations.mjs +6 -1
- package/esm2022/lib/components/alignment.mjs +1 -1
- package/esm2022/lib/components/busy-overlay/busy-overlay.component.mjs +4 -9
- package/esm2022/lib/components/cards/abstract-card-container.component.mjs +1 -1
- package/esm2022/lib/components/cards/card-container/card-container.component.mjs +2 -2
- package/esm2022/lib/components/commands/command/command.component.mjs +24 -13
- package/esm2022/lib/components/commands/command-face/command-face.component.mjs +11 -3
- package/esm2022/lib/components/commands/command-face.mjs +11 -11
- package/esm2022/lib/components/commands/flex.component.mjs +1 -1
- package/esm2022/lib/components/commands/group/command-container.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-aware.component.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-container.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +11 -11
- package/esm2022/lib/components/commands/group/popup-menu/more-menu.component.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-menu/popup-menu.component.mjs +2 -2
- package/esm2022/lib/components/commands/group/tool-bar/tool-bar.component.mjs +9 -16
- package/esm2022/lib/components/commands/separator.component.mjs +1 -1
- package/esm2022/lib/components/components.module.mjs +31 -17
- package/esm2022/lib/components/disposable-component.mjs +8 -37
- package/esm2022/lib/components/empty-state/empty-state.component.mjs +2 -6
- package/esm2022/lib/components/exports.mjs +6 -2
- package/esm2022/lib/components/focus-container/focus-container.component.mjs +1 -1
- package/esm2022/lib/components/focusable.component.mjs +2 -2
- package/esm2022/lib/components/forms/abstract-input.component.mjs +62 -15
- package/esm2022/lib/components/forms/abstract-list-input.component.mjs +1 -1
- package/esm2022/lib/components/forms/abstract-value-input.component.mjs +1 -1
- package/esm2022/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +3 -4
- package/esm2022/lib/components/forms/checkbox-input/checkbox-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/form-field.mjs +2 -0
- package/esm2022/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/number-input/number-input.component.mjs +49 -10
- package/esm2022/lib/components/forms/password-input/password-input.component.mjs +40 -3
- package/esm2022/lib/components/forms/search-input/search-input.component.mjs +33 -0
- package/esm2022/lib/components/forms/select-input/select-input.component.mjs +12 -11
- package/esm2022/lib/components/forms/string-input/string-input.component.mjs +22 -10
- package/esm2022/lib/components/forms/text-input/text-input.component.mjs +1 -1
- package/esm2022/lib/components/icon/icon.component.mjs +6 -3
- package/esm2022/lib/components/labelled-value/labelled-value.component.mjs +1 -1
- package/esm2022/lib/components/loadable-component.mjs +49 -0
- package/esm2022/lib/components/loading-container/loading-container.component.mjs +4 -9
- package/esm2022/lib/components/noop/noop.component.mjs +2 -4
- package/esm2022/lib/components/resize-aware.component.mjs +61 -24
- package/esm2022/lib/components/scroll-container/scroll-container.component.mjs +2 -2
- package/esm2022/lib/components/section-header/section-header.component.mjs +1 -1
- package/esm2022/lib/components/switch-case/switch-case.component.mjs +2 -2
- package/esm2022/lib/components/tables/abstract-table-model.mjs +40 -23
- package/esm2022/lib/components/tables/abstract-table.component.mjs +19 -5
- package/esm2022/lib/components/tables/column/column-manager.mjs +81 -0
- package/esm2022/lib/components/tables/column/column-model.mjs +18 -7
- package/esm2022/lib/components/tables/column/column-order-manager.mjs +19 -0
- package/esm2022/lib/components/tables/column/column-template/column-template.directive.mjs +1 -1
- package/esm2022/lib/components/tables/column/custom-template-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/custom-value-column-model.mjs +5 -5
- package/esm2022/lib/components/tables/column/editor-controls-column-model.mjs +5 -5
- package/esm2022/lib/components/tables/column/list-propery-column-model.mjs +6 -5
- package/esm2022/lib/components/tables/column/property-column-model.mjs +5 -5
- package/esm2022/lib/components/tables/column/selection-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.mjs +6 -6
- package/esm2022/lib/components/tables/editor/edit-session.mjs +4 -2
- package/esm2022/lib/components/tables/editor/editable-cell-renderer.mjs +1 -1
- package/esm2022/lib/components/tables/filter/column-text-search-formatter.mjs +1 -1
- package/esm2022/lib/components/tables/filter/enable-cell-text-search.decorator.mjs +3 -2
- package/esm2022/lib/components/tables/filter/table-filter-model.mjs +4 -2
- package/esm2022/lib/components/tables/filter/text-search-predicate.mjs +16 -2
- package/esm2022/lib/components/tables/paginator/paginator.component.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/cell-editors.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/cell-portal-ref.mjs +1 -3
- package/esm2022/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.mjs +4 -6
- package/esm2022/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.mjs +2 -4
- package/esm2022/lib/components/tables/renderer/select-header-cell/selection-header-cell.component.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/table-body/table-body.component.mjs +212 -37
- package/esm2022/lib/components/tables/renderer/table-cell/table-cell.component.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/table-header-cell/table-header-cell.component.mjs +2 -4
- package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +7 -2
- package/esm2022/lib/components/tables/table/table-model.mjs +1 -1
- package/esm2022/lib/components/tables/table/table.component.mjs +12 -67
- package/esm2022/lib/components/tables/table-row-menu/table-row-menu.component.mjs +1 -1
- package/esm2022/lib/components/tables/tree-table/decorated-tree-node.mjs +5 -4
- package/esm2022/lib/components/tables/tree-table/flattened-tree-list-model.mjs +1 -1
- package/esm2022/lib/components/tables/tree-table/tree-expansion-model.mjs +1 -1
- package/esm2022/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.mjs +2 -4
- package/esm2022/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.mjs +1 -1
- package/esm2022/lib/components/tables/tree-table/tree-label-column-model.mjs +4 -4
- package/esm2022/lib/components/tables/tree-table/tree-table-component.mjs +7 -4
- package/esm2022/lib/components/tables/tree-table/tree-table-model.mjs +3 -3
- package/esm2022/lib/components/text/markdown/markdown.component.mjs +3 -3
- package/esm2022/lib/components/track.mjs +1 -1
- package/esm2022/lib/components/types/bounds.class.mjs +1 -1
- package/esm2022/lib/components/vertical-focus-container/vertical-focus-container.component.mjs +1 -1
- package/esm2022/lib/directives/command.directive.mjs +2 -2
- package/esm2022/lib/directives/directives.module.mjs +2 -2
- package/esm2022/lib/directives/exports.mjs +2 -1
- package/esm2022/lib/directives/focus-binding-factory.mjs +1 -1
- package/esm2022/lib/directives/focus-binding.directive.mjs +2 -2
- package/esm2022/lib/directives/focus-binding.mjs +1 -1
- package/esm2022/lib/directives/garbage-collector.directive.mjs +2 -1
- package/esm2022/lib/directives/highlight-text-model.directive.mjs +1 -1
- package/esm2022/lib/directives/highlight.pipe.mjs +2 -2
- package/esm2022/lib/directives/resize-observer.directive.mjs +40 -0
- package/esm2022/lib/interaction/abstract-interaction-context.mjs +1 -1
- package/esm2022/lib/interaction/activity-ref.mjs +2 -2
- package/esm2022/lib/interaction/activity.mjs +4 -4
- package/esm2022/lib/interaction/alert.mjs +2 -2
- package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +8 -4
- package/esm2022/lib/interaction/components/abstract-dialog.component.mjs +2 -3
- package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +3 -3
- package/esm2022/lib/interaction/components/activity-body/activity-body.component.mjs +1 -1
- package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +28 -11
- package/esm2022/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.mjs +1 -3
- package/esm2022/lib/interaction/components/activity-title/activity-title.component.mjs +2 -2
- package/esm2022/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.mjs +1 -1
- package/esm2022/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.mjs +1 -1
- package/esm2022/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.mjs +1 -1
- package/esm2022/lib/interaction/components/add-card-activity/add-card-activity.component.mjs +1 -1
- package/esm2022/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.mjs +1 -1
- package/esm2022/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/editors/edit-context.mjs +1 -1
- package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-editor-model.mjs +2 -2
- package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.mjs +3 -3
- package/esm2022/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +3 -3
- package/esm2022/lib/interaction/components/input-activities/input-activity.mjs +3 -2
- package/esm2022/lib/interaction/components/input-activities/select-input-activity.mjs +4 -1
- package/esm2022/lib/interaction/components/input-activities/string-input-activity.mjs +9 -4
- package/esm2022/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.mjs +3 -2
- package/esm2022/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.mjs +129 -0
- package/esm2022/lib/interaction/confirm.mjs +1 -1
- package/esm2022/lib/interaction/directives/interaction-context-trigger-for.directive.mjs +6 -6
- package/esm2022/lib/interaction/exports.mjs +2 -1
- package/esm2022/lib/interaction/in-place-interaction-context.mjs +1 -1
- package/esm2022/lib/interaction/interaction-context.mjs +1 -1
- package/esm2022/lib/interaction/interaction.module.mjs +21 -23
- package/esm2022/lib/interaction/route-synchronisation-adapter.mjs +1 -1
- package/esm2022/lib/interaction/services/interaction-service-routing-adapter.mjs +1 -1
- package/esm2022/lib/interaction/services/interaction.service.mjs +3 -3
- package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.mjs +2 -3
- package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.mjs +1 -2
- package/esm2022/lib/interaction/services/modal-interaction-context.factory.mjs +1 -1
- package/esm2022/lib/place/components/abstract-place-navigation.component.mjs +1 -1
- package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +3 -4
- package/esm2022/lib/place/components/not-authorised-notice/not-authorised-notice.component.mjs +2 -4
- package/esm2022/lib/place/components/place-outlet/place-outlet.component.mjs +4 -4
- package/esm2022/lib/place/components/place-outlet/route-animations.mjs +1 -1
- package/esm2022/lib/place/components/side-place-navigation/side-place-navigation.component.mjs +4 -4
- package/esm2022/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.mjs +1 -1
- package/esm2022/lib/place/guards/consolidated-param-map.mjs +4 -4
- package/esm2022/lib/place/guards/noop-auth-guard.service.mjs +2 -4
- package/esm2022/lib/place/guards/place.guard.mjs +2 -2
- package/esm2022/lib/place/navigation/place-component-deactivation-handler.mjs +2 -2
- package/esm2022/lib/place/navigation/session/abstract-pop-state-navigation.mjs +1 -1
- package/esm2022/lib/place/navigation/session/event-cleanup/event-clean-up-session.mjs +1 -1
- package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.mjs +1 -1
- package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-navigation-interaction-cancelation-type-determined.mjs +1 -1
- package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.mjs +1 -1
- package/esm2022/lib/place/navigation/session/interactions/navigating-during-interaction.mjs +2 -2
- package/esm2022/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.mjs +1 -1
- package/esm2022/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.mjs +3 -3
- package/esm2022/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.mjs +3 -6
- package/esm2022/lib/place/navigation/session/navigating.mjs +2 -2
- package/esm2022/lib/place/navigation/session/navigation-context.mjs +1 -1
- package/esm2022/lib/place/navigation/session/navigation-session.mjs +1 -1
- package/esm2022/lib/place/navigation/session/pop-state-navigation.mjs +1 -1
- package/esm2022/lib/place/place-access-guard.mjs +1 -1
- package/esm2022/lib/place/place-component.mjs +29 -30
- package/esm2022/lib/place/place-config.mjs +1 -1
- package/esm2022/lib/place/place-definition.mjs +3 -3
- package/esm2022/lib/place/place-history.mjs +3 -5
- package/esm2022/lib/place/place-router.mjs +17 -15
- package/esm2022/lib/place/place.decorator.mjs +2 -2
- package/esm2022/lib/place/place.module.mjs +1 -5
- package/esm2022/lib/place/route/formatter.mjs +2 -2
- package/esm2022/lib/place/route/json-types.mjs +1 -1
- package/esm2022/lib/place/route/parameter-decorators.mjs +54 -50
- package/esm2022/lib/place/route/parameter-definition.mjs +2 -2
- package/esm2022/lib/place/route/parameter-sanitiser.mjs +1 -1
- package/esm2022/lib/place/route/parameter-snapshot.mjs +1 -1
- package/esm2022/lib/place/route/visit-segment-sanitiser.mjs +1 -1
- package/esm2022/lib/place/url-service.mjs +1 -1
- package/esm2022/lib/place/url-snapshot.mjs +3 -3
- package/esm2022/lib/place/visit-segment.mjs +2 -2
- package/esm2022/lib/place/visit.mjs +2 -2
- package/esm2022/lib/services/markdown/markdown.service.mjs +2 -4
- package/esm2022/lib/services/markdown/pill-plugin.mjs +1 -3
- package/esm2022/lib/services/visibility-service.mjs +4 -4
- package/fesm2022/coolon-angular-ui-powerups.mjs +2237 -1611
- package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
- package/lib/animations/slide-animations.d.ts +1 -0
- package/lib/components/busy-overlay/busy-overlay.component.d.ts +1 -4
- package/lib/components/commands/command/command.component.d.ts +4 -4
- package/lib/components/commands/command-face/command-face.component.d.ts +2 -0
- package/lib/components/commands/command-face.d.ts +5 -7
- package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +2 -2
- package/lib/components/commands/group/tool-bar/tool-bar.component.d.ts +3 -7
- package/lib/components/components.module.d.ts +55 -53
- package/lib/components/disposable-component.d.ts +1 -6
- package/lib/components/empty-state/empty-state.component.d.ts +1 -4
- package/lib/components/exports.d.ts +5 -1
- package/lib/components/forms/abstract-input.component.d.ts +13 -5
- package/lib/components/forms/form-field.d.ts +5 -0
- package/lib/components/forms/number-input/number-input.component.d.ts +8 -4
- package/lib/components/forms/password-input/password-input.component.d.ts +7 -1
- package/lib/components/forms/search-input/search-input.component.d.ts +10 -0
- package/lib/components/forms/select-input/select-input.component.d.ts +4 -3
- package/lib/components/forms/string-input/string-input.component.d.ts +3 -1
- package/lib/components/loadable-component.d.ts +17 -0
- package/lib/components/loading-container/loading-container.component.d.ts +1 -4
- package/lib/components/noop/noop.component.d.ts +0 -1
- package/lib/components/resize-aware.component.d.ts +24 -5
- package/lib/components/switch-case/switch-case.component.d.ts +4 -4
- package/lib/components/tables/abstract-table-model.d.ts +10 -5
- package/lib/components/tables/abstract-table.component.d.ts +5 -4
- package/lib/components/tables/column/column-manager.d.ts +19 -0
- package/lib/components/tables/column/column-model.d.ts +6 -2
- package/lib/components/tables/column/column-order-manager.d.ts +20 -0
- package/lib/components/tables/column/custom-template-column-model.d.ts +2 -1
- package/lib/components/tables/column/custom-value-column-model.d.ts +2 -1
- package/lib/components/tables/column/editor-controls-column-model.d.ts +2 -1
- package/lib/components/tables/column/list-propery-column-model.d.ts +2 -1
- package/lib/components/tables/column/property-column-model.d.ts +2 -1
- package/lib/components/tables/column/selection-column-model.d.ts +2 -1
- package/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.d.ts +3 -3
- package/lib/components/tables/editor/editable-cell-renderer.d.ts +1 -1
- package/lib/components/tables/filter/enable-cell-text-search.decorator.d.ts +1 -1
- package/lib/components/tables/filter/text-search-predicate.d.ts +9 -0
- package/lib/components/tables/renderer/cell-portal-ref.d.ts +2 -3
- package/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.d.ts +0 -1
- package/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.d.ts +0 -1
- package/lib/components/tables/renderer/table-body/table-body.component.d.ts +25 -15
- package/lib/components/tables/renderer/table-header-cell/table-header-cell.component.d.ts +0 -1
- package/lib/components/tables/renderer/table-more-menu/table-more-menu.component.d.ts +2 -1
- package/lib/components/tables/table/table.component.d.ts +6 -12
- package/lib/components/tables/tree-table/tree-expansion-model.d.ts +2 -2
- package/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.d.ts +0 -1
- package/lib/components/tables/tree-table/tree-label-column-model.d.ts +2 -1
- package/lib/components/tables/tree-table/tree-table-component.d.ts +5 -2
- package/lib/components/text/markdown/markdown.component.d.ts +1 -1
- package/lib/directives/exports.d.ts +1 -0
- package/lib/directives/resize-observer.directive.d.ts +16 -0
- package/lib/interaction/activity-ref.d.ts +2 -2
- package/lib/interaction/activity.d.ts +2 -2
- package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +1 -0
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +7 -3
- package/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.d.ts +2 -3
- package/lib/interaction/components/editors/edit-context.d.ts +1 -1
- package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +1 -1
- package/lib/interaction/components/input-activities/string-input-activity.d.ts +1 -1
- package/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.d.ts +53 -0
- package/lib/interaction/directives/interaction-context-trigger-for.directive.d.ts +3 -3
- package/lib/interaction/exports.d.ts +1 -0
- package/lib/interaction/interaction.module.d.ts +28 -28
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +1 -2
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +1 -2
- package/lib/place/components/not-authorised-notice/not-authorised-notice.component.d.ts +0 -1
- package/lib/place/guards/noop-auth-guard.service.d.ts +0 -1
- package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +0 -1
- package/lib/place/place-component.d.ts +4 -10
- package/lib/place/place-history.d.ts +0 -1
- package/lib/place/place-router.d.ts +2 -2
- package/lib/place/place.decorator.d.ts +1 -1
- package/lib/place/place.module.d.ts +4 -5
- package/lib/place/route/json-types.d.ts +1 -3
- package/lib/place/visit-segment.d.ts +4 -4
- package/lib/place/visit.d.ts +2 -2
- package/lib/services/markdown/markdown.service.d.ts +0 -1
- package/lib/services/visibility-service.d.ts +1 -1
- package/package.json +8 -7
- package/esm2022/lib/components/tables/column/column-list-model.mjs +0 -44
- package/lib/components/tables/column/column-list-model.d.ts +0 -13
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Directive, inject } from '@angular/core';
|
|
2
|
+
import { MutableValueModel } from '@coolon/pectin';
|
|
3
|
+
import { DisposableComponent } from "./disposable-component";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class LoadableComponent extends DisposableComponent {
|
|
6
|
+
#_loaded$ = new MutableValueModel();
|
|
7
|
+
#asyncLoadables = [];
|
|
8
|
+
#awaitedLoadables = [];
|
|
9
|
+
get loaded$() {
|
|
10
|
+
return this.#_loaded$.readonly$;
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
super.ngOnInit();
|
|
14
|
+
this.#asyncLoadables.forEach(it => it.ensureLoaded());
|
|
15
|
+
if (this.#awaitedLoadables.length > 0) {
|
|
16
|
+
Promise.all(this.#awaitedLoadables.map(it => {
|
|
17
|
+
return it.ensureLoaded(); //.then(() => console.log(`${it.constructor.name} loaded`));
|
|
18
|
+
})).then(() => {
|
|
19
|
+
this.#_loaded$.value = true;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
this.#_loaded$.value = true;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
injectLoadable(token, options) {
|
|
27
|
+
return this.registerLoadable(inject(token), options);
|
|
28
|
+
}
|
|
29
|
+
registerLoadable(loadable, options) {
|
|
30
|
+
if (this.loaded$.value) {
|
|
31
|
+
loadable.ensureLoaded();
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
if (!options || options.wait === true) {
|
|
35
|
+
this.#awaitedLoadables.push(loadable);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
this.#asyncLoadables.push(loadable);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return loadable;
|
|
42
|
+
}
|
|
43
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadableComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
44
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: LoadableComponent, usesInheritance: true, ngImport: i0 });
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadableComponent, decorators: [{
|
|
47
|
+
type: Directive
|
|
48
|
+
}] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9sb2FkYWJsZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOztBQUkzRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsbUJBQW1CO0lBRXhELFNBQVMsR0FBRyxJQUFJLGlCQUFpQixFQUFXLENBQUM7SUFDN0MsZUFBZSxHQUFlLEVBQUUsQ0FBQztJQUNqQyxpQkFBaUIsR0FBZSxFQUFFLENBQUM7SUFFbkMsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQTtJQUNqQyxDQUFDO0lBRVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUMxQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFBLDREQUE0RDtZQUN2RixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUM3QjtJQUNILENBQUM7SUFHUyxjQUFjLENBQXFCLEtBQXVCLEVBQUUsT0FBMkI7UUFDL0YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxnQkFBZ0IsQ0FBcUIsUUFBVyxFQUFFLE9BQTJCO1FBQzNFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDdEIsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3pCO2FBQU07WUFDTCxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO2dCQUNyQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO2FBQ3RDO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO2FBQ3BDO1NBQ0Y7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO3VHQXhDVSxpQkFBaUI7MkZBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBpbmplY3QsIFByb3ZpZGVyVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNdXRhYmxlVmFsdWVNb2RlbH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi9kaXNwb3NhYmxlLWNvbXBvbmVudFwiO1xuaW1wb3J0IHtMb2FkYWJsZX0gZnJvbSBcIi4vdHlwZXMvbG9hZGFibGVcIjtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgTG9hZGFibGVDb21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IHtcblxuICAjX2xvYWRlZCQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4oKTtcbiAgI2FzeW5jTG9hZGFibGVzOiBMb2FkYWJsZVtdID0gW107XG4gICNhd2FpdGVkTG9hZGFibGVzOiBMb2FkYWJsZVtdID0gW107XG5cbiAgZ2V0IGxvYWRlZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuI19sb2FkZWQkLnJlYWRvbmx5JFxuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKVxuICAgIHRoaXMuI2FzeW5jTG9hZGFibGVzLmZvckVhY2goaXQgPT4gaXQuZW5zdXJlTG9hZGVkKCkpO1xuICAgIGlmICh0aGlzLiNhd2FpdGVkTG9hZGFibGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIFByb21pc2UuYWxsKHRoaXMuI2F3YWl0ZWRMb2FkYWJsZXMubWFwKGl0ID0+IHtcbiAgICAgICAgcmV0dXJuIGl0LmVuc3VyZUxvYWRlZCgpOy8vLnRoZW4oKCkgPT4gY29uc29sZS5sb2coYCR7aXQuY29uc3RydWN0b3IubmFtZX0gbG9hZGVkYCkpO1xuICAgICAgfSkpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLiNfbG9hZGVkJC52YWx1ZSA9IHRydWU7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jX2xvYWRlZCQudmFsdWUgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG5cbiAgcHJvdGVjdGVkIGluamVjdExvYWRhYmxlPFQgZXh0ZW5kcyBMb2FkYWJsZT4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG9wdGlvbnM/OiB7IHdhaXQ6IGJvb2xlYW4gfSk6IFQge1xuICAgIHJldHVybiB0aGlzLnJlZ2lzdGVyTG9hZGFibGUoaW5qZWN0KHRva2VuKSwgb3B0aW9ucyk7XG4gIH1cblxuICByZWdpc3RlckxvYWRhYmxlPFQgZXh0ZW5kcyBMb2FkYWJsZT4obG9hZGFibGU6IFQsIG9wdGlvbnM/OiB7IHdhaXQ6IGJvb2xlYW4gfSkge1xuICAgIGlmICh0aGlzLmxvYWRlZCQudmFsdWUpIHtcbiAgICAgIGxvYWRhYmxlLmVuc3VyZUxvYWRlZCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoIW9wdGlvbnMgfHwgb3B0aW9ucy53YWl0ID09PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuI2F3YWl0ZWRMb2FkYWJsZXMucHVzaChsb2FkYWJsZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuI2FzeW5jTG9hZGFibGVzLnB1c2gobG9hZGFibGUpXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBsb2FkYWJsZTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { Component, HostBinding, Input } from '@angular/core';
|
|
3
|
-
import { GarbageCollector,
|
|
3
|
+
import { GarbageCollector, Proxify, proxify, StoreInValueModel, ValueModel } from '@coolon/pectin';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "@angular/common";
|
|
6
6
|
import * as i2 from "@angular/material/progress-bar";
|
|
@@ -20,12 +20,7 @@ export class LoadingContainerComponent extends GarbageCollector {
|
|
|
20
20
|
get state() {
|
|
21
21
|
return this.loading$.value ? "loaded" : "loading";
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
super();
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
}
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadingContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadingContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
29
24
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: LoadingContainerComponent, selector: "aup-loading-container", inputs: { loading$: "loading$", loading: "loading", message$: "message$", message: "message" }, host: { properties: { "class": "this.state" } }, usesInheritance: true, ngImport: i0, template: "<ng-content *ngIf=\"!loading$.value\"></ng-content>\n<section *ngIf=\"loading$.value\" class=\"loading-indicator-overlay\">\n <div class=\"loading-message\">\n <p>{{message$.value}}</p>\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n </div>\n</section>\n", styles: [":host{display:block;position:relative}section.loading-indicator-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-message{display:inline-block;text-align:center;width:10em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] });
|
|
30
25
|
}
|
|
31
26
|
__decorate([
|
|
@@ -47,7 +42,7 @@ __decorate([
|
|
|
47
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadingContainerComponent, decorators: [{
|
|
48
43
|
type: Component,
|
|
49
44
|
args: [{ selector: 'aup-loading-container', template: "<ng-content *ngIf=\"!loading$.value\"></ng-content>\n<section *ngIf=\"loading$.value\" class=\"loading-indicator-overlay\">\n <div class=\"loading-message\">\n <p>{{message$.value}}</p>\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n </div>\n</section>\n", styles: [":host{display:block;position:relative}section.loading-indicator-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-message{display:inline-block;text-align:center;width:10em}\n"] }]
|
|
50
|
-
}],
|
|
45
|
+
}], propDecorators: { loading$: [{
|
|
51
46
|
type: Input
|
|
52
47
|
}], loading: [{
|
|
53
48
|
type: Input
|
|
@@ -59,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
59
54
|
type: HostBinding,
|
|
60
55
|
args: ["class"]
|
|
61
56
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9sb2FkaW5nLWNvbnRhaW5lci9sb2FkaW5nLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL2xvYWRpbmctY29udGFpbmVyL2xvYWRpbmctY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFPakcsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGdCQUFnQjtJQUdwRCw2QkFBVyxPQUFPLENBQUMsQ0FBQSxVQUFtQixDQUFBLENBQUMsQ0FBQztJQUF4QyxJQUFBLFFBQVEsOENBQWdDO0lBQXhDLElBQUEsUUFBUSxvREFBZ0M7SUFHeEMsMEJBQWlCO0lBQWpCLElBQUEsT0FBTyw2Q0FBVTtJQUFqQixJQUFBLE9BQU8sbURBQVU7SUFHakIsNkJBQVcsT0FBTyxDQUFDLENBQUEsVUFBa0IsQ0FBQSxDQUFDLENBQUM7SUFBdkMsSUFBQSxRQUFRLDhDQUErQjtJQUF2QyxJQUFBLFFBQVEsb0RBQStCO0lBR3ZDLDBCQUFnQjtJQUFoQixJQUFBLE9BQU8sNkNBQVM7SUFBaEIsSUFBQSxPQUFPLG1EQUFTO0lBRXpCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3BELENBQUM7dUdBakJVLHlCQUF5QjsyRkFBekIseUJBQXlCLHFPQ1J0Qyx5UkFPQTs7QURJVztJQURDLE9BQU8sRUFBRTs7eURBQzhCO0FBR3hDO0lBREMsaUJBQWlCLEVBQUU7O3dEQUNIO0FBR2pCO0lBREMsT0FBTyxFQUFFOzt5REFDNkI7QUFHdkM7SUFEQyxpQkFBaUIsRUFBRTs7d0RBQ0o7MkZBWmQseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFPeEIsUUFBUTtzQkFEaEIsS0FBSztnQkFJRyxPQUFPO3NCQURmLEtBQUs7Z0JBSUcsUUFBUTtzQkFEaEIsS0FBSztnQkFJRyxPQUFPO3NCQURmLEtBQUs7Z0JBSUYsS0FBSztzQkFEUixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7R2FyYmFnZUNvbGxlY3RvciwgUHJveGlmeSwgcHJveGlmeSwgU3RvcmVJblZhbHVlTW9kZWwsIFZhbHVlTW9kZWx9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLWxvYWRpbmctY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6IGAuL2xvYWRpbmctY29udGFpbmVyLmNvbXBvbmVudC5odG1sYCxcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGluZy1jb250YWluZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgR2FyYmFnZUNvbGxlY3RvciB7XG5cbiAgQElucHV0KCkgQFByb3hpZnkoKVxuICBhY2Nlc3NvciBsb2FkaW5nJCA9IHByb3hpZnkoVmFsdWVNb2RlbDxib29sZWFuPik7XG5cbiAgQElucHV0KCkgQFN0b3JlSW5WYWx1ZU1vZGVsKClcbiAgYWNjZXNzb3IgbG9hZGluZzogYm9vbGVhbjtcblxuICBASW5wdXQoKSBAUHJveGlmeSgpXG4gIGFjY2Vzc29yIG1lc3NhZ2UkID0gcHJveGlmeShWYWx1ZU1vZGVsPHN0cmluZz4pO1xuXG4gIEBJbnB1dCgpIEBTdG9yZUluVmFsdWVNb2RlbCgpXG4gIGFjY2Vzc29yIG1lc3NhZ2U6IHN0cmluZztcblxuICBASG9zdEJpbmRpbmcoXCJjbGFzc1wiKVxuICBnZXQgc3RhdGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5sb2FkaW5nJC52YWx1ZSA/IFwibG9hZGVkXCIgOiBcImxvYWRpbmdcIjtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgKm5nSWY9XCIhbG9hZGluZyQudmFsdWVcIj48L25nLWNvbnRlbnQ+XG48c2VjdGlvbiAqbmdJZj1cImxvYWRpbmckLnZhbHVlXCIgY2xhc3M9XCJsb2FkaW5nLWluZGljYXRvci1vdmVybGF5XCI+XG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nLW1lc3NhZ2VcIj5cbiAgICA8cD57e21lc3NhZ2UkLnZhbHVlfX08L3A+XG4gICAgPG1hdC1wcm9ncmVzcy1iYXIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XG4gIDwvZGl2PlxuPC9zZWN0aW9uPlxuIl19
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class NoopComponent {
|
|
4
|
-
constructor() {
|
|
5
|
-
}
|
|
6
4
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: NoopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
5
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: NoopComponent, selector: "aup-noop", ngImport: i0, template: "", styles: [":host{display:block}\n"] });
|
|
8
6
|
}
|
|
9
7
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: NoopComponent, decorators: [{
|
|
10
8
|
type: Component,
|
|
11
9
|
args: [{ selector: 'aup-noop', template: "", styles: [":host{display:block}\n"] }]
|
|
12
|
-
}]
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL25vb3Avbm9vcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL25vb3Avbm9vcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQU94QyxNQUFNLE9BQU8sYUFBYTt1R0FBYixhQUFhOzJGQUFiLGFBQWEsZ0RDUDFCLEVBQUE7OzJGRE9hLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLW5vb3AnLFxuICB0ZW1wbGF0ZVVybDogJy4vbm9vcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vb3AuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb29wQ29tcG9uZW50IHtcbn1cbiIsIiJdfQ==
|
|
@@ -1,29 +1,18 @@
|
|
|
1
1
|
import { Directive, ElementRef, NgZone } from '@angular/core';
|
|
2
|
-
import { MutableValueModel } from '@coolon/pectin';
|
|
2
|
+
import { Dsl, GarbageCollector, MutableValueModel } from '@coolon/pectin';
|
|
3
3
|
import ResizeObserver from 'resize-observer-polyfill';
|
|
4
4
|
import { DisposableComponent } from './disposable-component';
|
|
5
5
|
import { Bounds } from './types/bounds.class';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class ResizeAwareComponent extends DisposableComponent {
|
|
8
|
-
elementRef;
|
|
9
|
-
ngZone;
|
|
10
|
-
|
|
11
|
-
constructor(elementRef, ngZone) {
|
|
12
|
-
super();
|
|
13
|
-
this.elementRef = elementRef;
|
|
14
|
-
this.ngZone = ngZone;
|
|
15
|
-
}
|
|
8
|
+
elementRef = this.inject(ElementRef);
|
|
9
|
+
ngZone = this.inject(NgZone);
|
|
10
|
+
boundsTracker = new ResizeAwareComponent.ResizeTracker(this.elementRef, this.ngZone);
|
|
16
11
|
ngAfterViewInit() {
|
|
17
|
-
|
|
18
|
-
const ro = new ResizeObserver((entries, observer) => {
|
|
19
|
-
this.ngZone.run(() => this._updateBounds());
|
|
20
|
-
});
|
|
21
|
-
ro.observe(element);
|
|
22
|
-
this.onDispose(() => ro.disconnect());
|
|
23
|
-
setTimeout(() => this._updateBounds());
|
|
12
|
+
this.boundsTracker.notifyViewReady();
|
|
24
13
|
}
|
|
25
14
|
get bounds$() {
|
|
26
|
-
return this.
|
|
15
|
+
return this.boundsTracker.bounds$;
|
|
27
16
|
}
|
|
28
17
|
get nativeElement() {
|
|
29
18
|
return this.elementRef.nativeElement;
|
|
@@ -33,15 +22,63 @@ export class ResizeAwareComponent extends DisposableComponent {
|
|
|
33
22
|
return this.bounds.relativePositionOf(point);
|
|
34
23
|
}
|
|
35
24
|
get bounds() {
|
|
36
|
-
return this.
|
|
37
|
-
}
|
|
38
|
-
_updateBounds() {
|
|
39
|
-
this._bounds$.value = Bounds.ofElement(this.nativeElement);
|
|
25
|
+
return this.bounds$.value;
|
|
40
26
|
}
|
|
41
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, deps:
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
42
28
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeAwareComponent, usesInheritance: true, ngImport: i0 });
|
|
43
29
|
}
|
|
44
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, decorators: [{
|
|
45
31
|
type: Directive
|
|
46
|
-
}]
|
|
47
|
-
|
|
32
|
+
}] });
|
|
33
|
+
(function (ResizeAwareComponent) {
|
|
34
|
+
class ResizeTracker extends GarbageCollector {
|
|
35
|
+
elementRef;
|
|
36
|
+
ngZone;
|
|
37
|
+
_bounds$ = new MutableValueModel(new Bounds(0, 0, 0, 0));
|
|
38
|
+
width$;
|
|
39
|
+
height$;
|
|
40
|
+
top$;
|
|
41
|
+
left$;
|
|
42
|
+
bottom$;
|
|
43
|
+
right$;
|
|
44
|
+
constructor(elementRef, ngZone) {
|
|
45
|
+
super();
|
|
46
|
+
this.elementRef = elementRef;
|
|
47
|
+
this.ngZone = ngZone;
|
|
48
|
+
const { chain } = Dsl.disposeWith(this);
|
|
49
|
+
this.width$ = chain(this.bounds$).pluck("width");
|
|
50
|
+
this.height$ = chain(this.bounds$).pluck("height");
|
|
51
|
+
this.top$ = chain(this.bounds$).pluck("top");
|
|
52
|
+
this.left$ = chain(this.bounds$).pluck("left");
|
|
53
|
+
this.bottom$ = chain.numericValue(this.top$).add(this.height$);
|
|
54
|
+
this.right$ = chain.numericValue(this.left$).add(this.width$);
|
|
55
|
+
}
|
|
56
|
+
notifyViewReady() {
|
|
57
|
+
const element = this.elementRef.nativeElement;
|
|
58
|
+
const ro = new ResizeObserver((entries, observer) => {
|
|
59
|
+
this.ngZone.run(() => this._updateBounds());
|
|
60
|
+
});
|
|
61
|
+
ro.observe(element);
|
|
62
|
+
this.onDispose(() => ro.disconnect());
|
|
63
|
+
setTimeout(() => this._updateBounds());
|
|
64
|
+
}
|
|
65
|
+
get bounds$() {
|
|
66
|
+
return this._bounds$.readonly$;
|
|
67
|
+
}
|
|
68
|
+
get nativeElement() {
|
|
69
|
+
return this.elementRef.nativeElement;
|
|
70
|
+
}
|
|
71
|
+
// TODO: Make this handle body scroll
|
|
72
|
+
relativePositionOf(point) {
|
|
73
|
+
return this.bounds.relativePositionOf(point);
|
|
74
|
+
}
|
|
75
|
+
get bounds() {
|
|
76
|
+
return this._bounds$.value;
|
|
77
|
+
}
|
|
78
|
+
_updateBounds() {
|
|
79
|
+
this._bounds$.value = Bounds.ofElement(this.nativeElement);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
ResizeAwareComponent.ResizeTracker = ResizeTracker;
|
|
83
|
+
})(ResizeAwareComponent || (ResizeAwareComponent = {}));
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLWF3YXJlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvcmVzaXplLWF3YXJlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBQyxHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRixPQUFPLGNBQWMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7O0FBSTVDLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxtQkFBbUI7SUFFeEMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFdEMsYUFBYSxHQUFHLElBQUksb0JBQW9CLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRS9GLGVBQWU7UUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxxQ0FBcUM7SUFDOUIsa0JBQWtCLENBQUMsS0FBNEM7UUFDcEUs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QyxLQUFLLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBRUQsSUFBSSxNQUFNO1lBQ1IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUM3QixDQUFDO1FBRU8sYUFBYTtZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RCxDQUFDO0tBRUY7SUFwRFksa0NBQWEsZ0JBb0R6QixDQUFBO0FBQ0gsQ0FBQyxFQXhEZ0Isb0JBQW9CLEtBQXBCLG9CQUFvQixRQXdEcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgTmdab25lfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RHNsLCBHYXJiYWdlQ29sbGVjdG9yLCBNdXRhYmxlVmFsdWVNb2RlbCwgVmFsdWVNb2RlbH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IFJlc2l6ZU9ic2VydmVyIGZyb20gJ3Jlc2l6ZS1vYnNlcnZlci1wb2x5ZmlsbCc7XG5pbXBvcnQge0Rpc3Bvc2FibGVDb21wb25lbnR9IGZyb20gJy4vZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHtCb3VuZHN9IGZyb20gJy4vdHlwZXMvYm91bmRzLmNsYXNzJztcbmltcG9ydCB7UG9pbnR9IGZyb20gJy4vdHlwZXMvcG9pbnQuY2xhc3MnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBSZXNpemVBd2FyZUNvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZiA9IHRoaXMuaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmdab25lID0gdGhpcy5pbmplY3QoTmdab25lKTtcblxuICBwcm90ZWN0ZWQgYm91bmRzVHJhY2tlciA9IG5ldyBSZXNpemVBd2FyZUNvbXBvbmVudC5SZXNpemVUcmFja2VyKHRoaXMuZWxlbWVudFJlZiwgdGhpcy5uZ1pvbmUpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJvdW5kc1RyYWNrZXIubm90aWZ5Vmlld1JlYWR5KCk7XG4gIH1cblxuICBnZXQgYm91bmRzJCgpOiBWYWx1ZU1vZGVsPEJvdW5kcz4ge1xuICAgIHJldHVybiB0aGlzLmJvdW5kc1RyYWNrZXIuYm91bmRzJDtcbiAgfVxuXG4gIGdldCBuYXRpdmVFbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIC8vIFRPRE86IE1ha2UgdGhpcyBoYW5kbGUgYm9keSBzY3JvbGxcbiAgcHVibGljIHJlbGF0aXZlUG9zaXRpb25PZihwb2ludDogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgTW91c2VFdmVudCk6IFBvaW50IHtcbiAgICByZXR1cm4gdGhpcy5ib3VuZHMucmVsYXRpdmVQb3NpdGlvbk9mKHBvaW50KTtcbiAgfVxuXG4gIGdldCBib3VuZHMoKTogQm91bmRzIHtcbiAgICByZXR1cm4gdGhpcy5ib3VuZHMkLnZhbHVlO1xuICB9XG5cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBSZXNpemVBd2FyZUNvbXBvbmVudCB7XG5cblxuICBleHBvcnQgY2xhc3MgUmVzaXplVHJhY2tlciBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gICAgcHJpdmF0ZSBfYm91bmRzJCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxCb3VuZHM+KG5ldyBCb3VuZHMoMCwgMCwgMCwgMCkpO1xuICAgIHJlYWRvbmx5IHdpZHRoJDogVmFsdWVNb2RlbDxudW1iZXI+O1xuICAgIHJlYWRvbmx5IGhlaWdodCQ6IFZhbHVlTW9kZWw8bnVtYmVyPjtcbiAgICByZWFkb25seSB0b3AkOiBWYWx1ZU1vZGVsPG51bWJlcj47XG4gICAgcmVhZG9ubHkgbGVmdCQ6IFZhbHVlTW9kZWw8bnVtYmVyPjtcbiAgICByZWFkb25seSBib3R0b20kOiBWYWx1ZU1vZGVsPG51bWJlcj47XG4gICAgcmVhZG9ubHkgcmlnaHQkOiBWYWx1ZU1vZGVsPG51bWJlcj47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHJlYWRvbmx5IG5nWm9uZTogTmdab25lKSB7XG4gICAgICBzdXBlcigpO1xuICAgICAgY29uc3Qge2NoYWlufSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICAgIHRoaXMud2lkdGgkID0gY2hhaW4odGhpcy5ib3VuZHMkKS5wbHVjayhcIndpZHRoXCIpXG4gICAgICB0aGlzLmhlaWdodCQgPSBjaGFpbih0aGlzLmJvdW5kcyQpLnBsdWNrKFwiaGVpZ2h0XCIpXG4gICAgICB0aGlzLnRvcCQgPSBjaGFpbih0aGlzLmJvdW5kcyQpLnBsdWNrKFwidG9wXCIpXG4gICAgICB0aGlzLmxlZnQkID0gY2hhaW4odGhpcy5ib3VuZHMkKS5wbHVjayhcImxlZnRcIilcbiAgICAgIHRoaXMuYm90dG9tJCA9IGNoYWluLm51bWVyaWNWYWx1ZSh0aGlzLnRvcCQpLmFkZCh0aGlzLmhlaWdodCQpXG4gICAgICB0aGlzLnJpZ2h0JCA9IGNoYWluLm51bWVyaWNWYWx1ZSh0aGlzLmxlZnQkKS5hZGQodGhpcy53aWR0aCQpXG4gICAgfVxuXG4gICAgbm90aWZ5Vmlld1JlYWR5KCkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgY29uc3Qgcm8gPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMsIG9ic2VydmVyKSA9PiB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLl91cGRhdGVCb3VuZHMoKSk7XG4gICAgICB9KTtcbiAgICAgIHJvLm9ic2VydmUoZWxlbWVudCk7XG4gICAgICB0aGlzLm9uRGlzcG9zZSgoKSA9PiByby5kaXNjb25uZWN0KCkpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl91cGRhdGVCb3VuZHMoKSk7XG4gICAgfVxuXG4gICAgZ2V0IGJvdW5kcyQoKTogVmFsdWVNb2RlbDxCb3VuZHM+IHtcbiAgICAgIHJldHVybiB0aGlzLl9ib3VuZHMkLnJlYWRvbmx5JDtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRWxlbWVudCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgaGFuZGxlIGJvZHkgc2Nyb2xsXG4gICAgcHVibGljIHJlbGF0aXZlUG9zaXRpb25PZihwb2ludDogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgTW91c2VFdmVudCk6IFBvaW50IHtcbiAgICAgIHJldHVybiB0aGlzLmJvdW5kcy5yZWxhdGl2ZVBvc2l0aW9uT2YocG9pbnQpO1xuICAgIH1cblxuICAgIGdldCBib3VuZHMoKTogQm91bmRzIHtcbiAgICAgIHJldHVybiB0aGlzLl9ib3VuZHMkLnZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3VwZGF0ZUJvdW5kcygpIHtcbiAgICAgIHRoaXMuX2JvdW5kcyQudmFsdWUgPSBCb3VuZHMub2ZFbGVtZW50KHRoaXMubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { Component, HostBinding, Input } from "@angular/core";
|
|
3
|
-
import {
|
|
3
|
+
import { Proxify, proxify, StoreInValueModel, ValueModel } from "@coolon/pectin";
|
|
4
4
|
import { DisposableComponent } from "../disposable-component";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/cdk/scrolling";
|
|
@@ -36,4 +36,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
36
36
|
type: HostBinding,
|
|
37
37
|
args: ["class.disable-scroll"]
|
|
38
38
|
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3Njcm9sbC1jb250YWluZXIvc2Nyb2xsLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3Njcm9sbC1jb250YWluZXIvc2Nyb2xsLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDOzs7QUFPNUQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLG1CQUFtQjtJQUd0RCxtQ0FBaUIsT0FBTyxDQUFDLENBQUEsVUFBbUIsQ0FBQSxDQUFDLENBQUU7SUFBL0MsSUFBQSxjQUFjLG9EQUFpQztJQUEvQyxJQUFBLGNBQWMsMERBQWlDO0lBSS9DLGtDQUFnQixLQUFLLENBQUM7SUFBdEIsSUFBQSxhQUFhLG1EQUFTO0lBQXRCLElBQUEsYUFBYSx5REFBUztJQUUvQjtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQzt1R0FYVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qix5T0NUckMsdUZBR0E7O0FEU1c7SUFEQyxPQUFPLEVBQUU7OzhEQUNxQztBQUkvQztJQUZDLGlCQUFpQixFQUFFOzs2REFFRTsyRkFQcEIsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjswRUFPdkIsY0FBYztzQkFEdEIsS0FBSztnQkFLRyxhQUFhO3NCQUZyQixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1Byb3hpZnksIHByb3hpZnksIFN0b3JlSW5WYWx1ZU1vZGVsLCBWYWx1ZU1vZGVsfSBmcm9tIFwiQGNvb2xvbi9wZWN0aW5cIjtcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSBcIi4uL2Rpc3Bvc2FibGUtY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhdXAtc2Nyb2xsLWNvbnRhaW5lclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3Njcm9sbC1jb250YWluZXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3Njcm9sbC1jb250YWluZXIuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgU2Nyb2xsQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgQFByb3hpZnkoKVxuICBhY2Nlc3NvciBkaXNhYmxlU2Nyb2xsJCA9IHByb3hpZnkoVmFsdWVNb2RlbDxib29sZWFuPikgO1xuXG4gIEBJbnB1dCgpIEBTdG9yZUluVmFsdWVNb2RlbCgpXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmRpc2FibGUtc2Nyb2xsXCIpXG4gIGFjY2Vzc29yIGRpc2FibGVTY3JvbGwgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJzY3JvbGwtY29udGFpbmVyXCIgY2RrU2Nyb2xsYWJsZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
31
31
|
type: HostBinding,
|
|
32
32
|
args: ['class.border-bottom']
|
|
33
33
|
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9zZWN0aW9uLWhlYWRlci9zZWN0aW9uLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3NlY3Rpb24taGVhZGVyL3NlY3Rpb24taGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPNUQsTUFBTSxPQUFPLHNCQUF1QixTQUFRLG1CQUFtQjtJQUU3RCx1REFBdUQ7SUFJdkQsSUFBSSxHQUE2QyxRQUFRLENBQUM7SUFJMUQsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUlsQixZQUFZLEdBQUcsS0FBSyxDQUFDO0lBRXJCO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO3VHQWxCVSxzQkFBc0I7MkZBQXRCLHNCQUFzQixtU0NSbkMsNlNBR0E7OzJGREthLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxvQkFBb0I7MEVBVTlCLElBQUk7c0JBRkgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxPQUFPO2dCQUtwQixTQUFTO3NCQUZSLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUsvQixZQUFZO3NCQUZYLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Rpc3Bvc2FibGVDb21wb25lbnR9IGZyb20gJy4uL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLXNlY3Rpb24taGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlY3Rpb24taGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VjdGlvbi1oZWFkZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTZWN0aW9uSGVhZGVyQ29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCB7XG5cbiAgLy8gcmVhZG9ubHkgaTE4biA9IEkxOG5NYXJzVWkuY29tcG9uZW50cy5sYXlvdXQuaGVhZGVyO1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBzaXplOiAndG9vbGJhcicgfCAnbGFyZ2UnIHwgJ21lZGl1bScgfCAnc21hbGwnID0gJ21lZGl1bSc7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ib3JkZXItdG9wJylcbiAgYm9yZGVyVG9wID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ib3JkZXItYm90dG9tJylcbiAgYm9yZGVyQm90dG9tID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG59XG4iLCI8c3BhbiBjbGFzcz1cImNvbnRhaW5lci1zdGFydFwiPjxuZy1jb250ZW50IHNlbGVjdD1cIltoZWFkZXItc3RhcnRdXCI+PC9uZy1jb250ZW50PjxuZy1jb250ZW50PjwvbmctY29udGVudD48L3NwYW4+XG48c3BhbiBjbGFzcz1cImNvbnRhaW5lci1taWRkbGVcIj48bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGVyLWNlbnRlcl1cIj48L25nLWNvbnRlbnQ+PC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJjb250YWluZXItZW5kXCI+PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2hlYWRlci1lbmRdXCI+PC9uZy1jb250ZW50Pjwvc3Bhbj5cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { ChangeDetectorRef, Component, ContentChildren, Directive, Input, QueryList, TemplateRef } from '@angular/core';
|
|
3
|
-
import { Dsl,
|
|
3
|
+
import { Dsl, Proxify, proxify, StoreInValueModel, ValueModel } from '@coolon/pectin';
|
|
4
4
|
import { DisposableComponent } from '../disposable-component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/common";
|
|
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
131
131
|
type: ContentChildren,
|
|
132
132
|
args: [SwitchCaseOption]
|
|
133
133
|
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpdGNoLWNhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy9zd2l0Y2gtY2FzZS9zd2l0Y2gtY2FzZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3N3aXRjaC1jYXNlL3N3aXRjaC1jYXNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUc1RCxNQUFNLE9BQWdCLGdCQUFnQjtJQUlmO0lBQXJCLFlBQXFCLFdBQWdDO1FBQWhDLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtJQUNyRCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0NBR0Y7QUFNRCxNQUFNLE9BQU8sdUJBQTJCLFNBQVEsZ0JBQW1CO0lBQ3hELGlCQUFpQixDQUFJO0lBQ3JCLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFFM0IsWUFBWSxXQUFnQztRQUMxQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFRO1FBQ2QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEtBQUssS0FBSyxDQUFD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SUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQy9DLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRTtvQkFDcEIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUM5QjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUMvQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsZ0JBQWdCLENBQUMsTUFBTSw2Q0FBNkMsQ0FBQyxDQUFDO2FBQzdGO1NBQ0Y7UUFDRCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMxQzthQUFNO1lBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDekI7SUFDSCxDQUFDO3VHQW5EVSxtQkFBbUI7MkZBQW5CLG1CQUFtQiwySUFRYixnQkFBZ0Isb0RDbEZuQyxxUkFPQTs7QURzRVc7SUFEQyxPQUFPLEVBQUU7O2tEQUN1QjtBQUdqQztJQURDLGlCQUFpQixFQUFFOztpREFDVjsyRkFOUixtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsaUJBQWlCO3dHQU9sQixPQUFPO3NCQURmLEtBQUs7Z0JBSUcsTUFBTTtzQkFEZCxLQUFLO2dCQUlOLGlCQUFpQjtzQkFEaEIsZUFBZTt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RHNsLCBQcm94aWZ5LCBwcm94aWZ5LCBTdG9yZUluVmFsdWVNb2RlbCwgVmFsdWVNb2RlbH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50fSBmcm9tICcuLi9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN3aXRjaENhc2VPcHRpb248VD4ge1xuXG4gIGFic3RyYWN0IHJlYWRvbmx5IGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8b2JqZWN0Pikge1xuICB9XG5cbiAgZ2V0IG5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uc3RydWN0b3IubmFtZTtcbiAgfVxuXG4gIGFic3RyYWN0IG1hdGNoZXModmFsdWU6IFQpOiBib29sZWFuO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVwU3dpdGNoQ2FzZVdoZW5dJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBTd2l0Y2hDYXNlT3B0aW9uLCB1c2VFeGlzdGluZzogU3dpdGNoQ2FzZVdoZW5EaXJlY3RpdmUgfV1cbn0pXG5leHBvcnQgY2xhc3MgU3dpdGNoQ2FzZVdoZW5EaXJlY3RpdmU8VD4gZXh0ZW5kcyBTd2l0Y2hDYXNlT3B0aW9uPFQ+IHtcbiAgQElucHV0KCkgYXVwU3dpdGNoQ2FzZVdoZW46IFQ7XG4gIHJlYWRvbmx5IGlzRGVmYXVsdCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxvYmplY3Q+KSB7XG4gICAgc3VwZXIodGVtcGxhdGVSZWYpO1xuICB9XG5cbiAgbWF0Y2hlcyh2YWx1ZTogVCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmF1cFN3aXRjaENhc2VXaGVuID09PSB2YWx1ZTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVwU3dpdGNoQ2FzZURlZmF1bHRdJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBTd2l0Y2hDYXNlT3B0aW9uLCB1c2VFeGlzdGluZzogU3dpdGNoQ2FzZURlZmF1bHREaXJlY3RpdmUgfV1cbn0pXG5leHBvcnQgY2xhc3MgU3dpdGNoQ2FzZURlZmF1bHREaXJlY3RpdmU8VD4gZXh0ZW5kcyBTd2l0Y2hDYXNlT3B0aW9uPFQ+IHtcbiAgcmVhZG9ubHkgaXNEZWZhdWx0ID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3Rvcih0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8b2JqZWN0Pikge1xuICAgIHN1cGVyKHRlbXBsYXRlUmVmKTtcbiAgfVxuXG4gIG1hdGNoZXModmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBAZXhhbXBsZVxuICogPGF1cC1zd2l0Y2gtY2FzZSBbc3dpdGNoTW9kZWxdPVwiYm9vbGVhbk1vZGVsXCI+XG4gKiAgICA8ZGl2ICphdXBTd2l0Y2hDYXNlV2hlbj1cInRydWVcIj48L2Rpdj5cbiAqICAgIDxkaXYgKmF1cFN3aXRjaENhc2VEZWZhdWx0PlRoZSBkZWZhdWx0IGNvbnRlbnQ8L2Rpdj5cbiAqIDwvYXVwLXN3aXRjaC1jYXNlPlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtc3dpdGNoLWNhc2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3dpdGNoLWNhc2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zd2l0Y2gtY2FzZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN3aXRjaENhc2VDb21wb25lbnQ8VD4gZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgIEFmdGVyQ29udGVudEluaXQge1xuXG4gIEBJbnB1dCgpIEBQcm94aWZ5KClcbiAgYWNjZXNzb3Igc3dpdGNoJCA9IHByb3hpZnkoVmFsdWVNb2RlbDxUPik7XG5cbiAgQElucHV0KCkgQFN0b3JlSW5WYWx1ZU1vZGVsKClcbiAgYWNjZXNzb3Igc3dpdGNoOiBUO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oU3dpdGNoQ2FzZU9wdGlvbilcbiAgc3dpdGNoQ2FzZU9wdGlvbnM6IFF1ZXJ5TGlzdDxTd2l0Y2hDYXNlT3B0aW9uPFQ+PjtcblxuICBzZWxlY3RlZEluZGV4ID0gMDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuc3dpdGNoQ2FzZU9wdGlvbnMuY2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlID0+IHRoaXMudXBkYXRlU2VsZWN0aW9uKCkpO1xuICAgIHRoaXMub25EaXNwb3NlKCgpID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICBjb25zdCB7IGNoYWluLCB3aGVuIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgd2hlbih0aGlzLnN3aXRjaCQpLmNoYW5nZXMoKCkgPT4gdGhpcy51cGRhdGVTZWxlY3Rpb24oKSwgeyBpbml0aWFsVmFsdWU6ICd0cmlnZ2VyQ2hhbmdlJyB9KTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVNlbGVjdGlvbigpIHtcbiAgICBjb25zdCBtYXRjaGluZ0luZGljaWVzID0gW107XG4gICAgdGhpcy5zd2l0Y2hDYXNlT3B0aW9ucy5mb3JFYWNoKChvcHRpb24sIGluZGV4KSA9PiB7XG4gICAgICBpZiAob3B0aW9uLm1hdGNoZXModGhpcy5zd2l0Y2gkLnZhbHVlKSkge1xuICAgICAgICBtYXRjaGluZ0luZGljaWVzLnB1c2goaW5kZXgpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmIChtYXRjaGluZ0luZGljaWVzLmxlbmd0aCA+IDEpIHtcbiAgICAgIGNvbnNvbGUud2FybihgZm91bmQgJHttYXRjaGluZ0luZGljaWVzLmxlbmd0aH0gbWF0Y2hpbmcgY2FzZSB2YWx1ZXMsIGRpc3BsYXlpbmcgdGhlIGZpcnN0LmApO1xuICAgIH1cbiAgICBpZiAobWF0Y2hpbmdJbmRpY2llcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuc3dpdGNoQ2FzZU9wdGlvbnMuZm9yRWFjaCgob3B0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAob3B0aW9uLmlzRGVmYXVsdCkge1xuICAgICAgICAgIG1hdGNoaW5nSW5kaWNpZXMucHVzaChpbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgaWYgKG1hdGNoaW5nSW5kaWNpZXMubGVuZ3RoID4gMSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYGZvdW5kICR7bWF0Y2hpbmdJbmRpY2llcy5sZW5ndGh9IGRlZmF1bHQgY2FzZSB2YWx1ZXMsIGRpc3BsYXlpbmcgdGhlIGZpcnN0LmApO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAobWF0Y2hpbmdJbmRpY2llcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBtYXRjaGluZ0luZGljaWVzWzBdO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oYGZvdW5kIG5vIG1hdGNoaW5nIG9yIGRlZmF1bHQgY2FzZSB2YWx1ZXMuYCk7XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcbiAgICB9XG4gIH1cbn1cblxuIiwiPG1hdC10YWItZ3JvdXAgY2xhc3M9XCJjb250ZW50LXdyYXBwZXJcIiBuby10YWItaGVhZGVyIGZ1bGwtaGVpZ2h0LXRhYnMgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRJbmRleFwiPlxuICA8bWF0LXRhYiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHN3aXRjaENhc2VPcHRpb25zXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm9wdGlvbi50ZW1wbGF0ZVJlZlwiPjwvbmctdGVtcGxhdGU+XG4gIDwvbWF0LXRhYj5cbjwvbWF0LXRhYi1ncm91cD5cblxuXG4iXX0=
|