@coolon/angular-ui-powerups 16.1.0-aplpha.189 → 16.1.0-aplpha.2
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/README.md +0 -4
- package/assets/activities/activities.scss +6 -8
- package/assets/activities/input-activities.scss +6 -14
- package/assets/form.scss +23 -77
- package/assets/icons.scss +1 -2
- package/assets/interaction/editor/inline-string-editor.scss +0 -4
- package/assets/interaction.scss +1 -1
- package/assets/styles.scss +0 -4
- package/assets/table.scss +30 -55
- package/assets/tabs.scss +2 -15
- package/esm2022/lib/angular-ui-powerups.module.mjs +9 -9
- package/esm2022/lib/animations/slide-animations.mjs +10 -15
- package/esm2022/lib/components/alignment.mjs +1 -1
- package/esm2022/lib/components/busy-overlay/busy-overlay.component.mjs +12 -7
- package/esm2022/lib/components/cards/abstract-card-container.component.mjs +7 -30
- package/esm2022/lib/components/cards/card-container/card-container.component.mjs +6 -6
- package/esm2022/lib/components/cards/card-stack/card-stack.component.mjs +81 -0
- package/esm2022/lib/components/commands/command/command.component.mjs +33 -35
- package/esm2022/lib/components/commands/command-face/command-face.component.mjs +5 -13
- package/esm2022/lib/components/commands/command-face.mjs +11 -12
- package/esm2022/lib/components/commands/flex.component.mjs +4 -4
- package/esm2022/lib/components/commands/group/command-container.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-aware.component.mjs +8 -31
- package/esm2022/lib/components/commands/group/popup-container.mjs +1 -1
- package/esm2022/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +25 -27
- package/esm2022/lib/components/commands/group/popup-menu/more-menu.component.mjs +22 -13
- package/esm2022/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.mjs +12 -17
- package/esm2022/lib/components/commands/group/popup-menu/popup-menu.component.mjs +23 -14
- package/esm2022/lib/components/commands/group/tool-bar/tool-bar.component.mjs +19 -12
- package/esm2022/lib/components/commands/separator.component.mjs +14 -8
- package/esm2022/lib/components/components.module.mjs +59 -79
- package/esm2022/lib/components/disposable-component.mjs +42 -38
- package/esm2022/lib/components/empty-state/empty-state.component.mjs +9 -5
- package/esm2022/lib/components/exports.mjs +7 -15
- package/esm2022/lib/components/focus-container/focus-container.component.mjs +4 -4
- package/esm2022/lib/components/focusable.component.mjs +5 -5
- package/esm2022/lib/components/forms/abstract-input.component.mjs +18 -66
- package/esm2022/lib/components/forms/abstract-list-input.component.mjs +4 -4
- package/esm2022/lib/components/forms/abstract-value-input.component.mjs +4 -4
- package/esm2022/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +13 -12
- package/esm2022/lib/components/forms/checkbox-input/checkbox-input.component.mjs +8 -10
- package/esm2022/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +10 -10
- package/esm2022/lib/components/forms/number-input/number-input.component.mjs +13 -90
- package/esm2022/lib/components/forms/password-input/password-input.component.mjs +7 -44
- package/esm2022/lib/components/forms/select-input/select-input.component.mjs +16 -17
- package/esm2022/lib/components/forms/string-input/string-input.component.mjs +16 -35
- package/esm2022/lib/components/forms/text-input/text-input.component.mjs +8 -12
- package/esm2022/lib/components/icon/icon.component.mjs +7 -10
- package/esm2022/lib/components/labelled-value/labelled-value.component.mjs +4 -4
- package/esm2022/lib/components/loading-container/loading-container.component.mjs +12 -7
- package/esm2022/lib/components/noop/noop.component.mjs +7 -5
- package/esm2022/lib/components/resize-aware.component.mjs +27 -64
- package/esm2022/lib/components/scroll-container/scroll-container.component.mjs +5 -5
- package/esm2022/lib/components/section-header/section-header.component.mjs +4 -4
- package/esm2022/lib/components/switch-case/switch-case.component.mjs +17 -15
- package/esm2022/lib/components/tables/abstract-table-model.mjs +63 -112
- package/esm2022/lib/components/tables/abstract-table.component.mjs +8 -22
- package/esm2022/lib/components/tables/column/column-list-model.mjs +44 -0
- package/esm2022/lib/components/tables/column/column-model.mjs +10 -21
- package/esm2022/lib/components/tables/column/column-template/column-template.directive.mjs +4 -4
- 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 +5 -6
- package/esm2022/lib/components/tables/column/property-column-model.mjs +5 -5
- package/esm2022/lib/components/tables/column/selection-column-model.mjs +13 -35
- package/esm2022/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.mjs +7 -7
- package/esm2022/lib/components/tables/editor/edit-session.mjs +2 -4
- 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 +2 -3
- package/esm2022/lib/components/tables/filter/table-filter-model.mjs +9 -14
- package/esm2022/lib/components/tables/filter/text-search-predicate.mjs +2 -16
- package/esm2022/lib/components/tables/paginator/paginator.component.mjs +5 -5
- package/esm2022/lib/components/tables/renderer/cell-editors.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/cell-portal-ref.mjs +7 -23
- package/esm2022/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.mjs +8 -6
- package/esm2022/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.mjs +7 -5
- package/esm2022/lib/components/tables/renderer/select-header-cell/selection-header-cell.component.mjs +8 -18
- package/esm2022/lib/components/tables/renderer/selection-cell/selection-cell.component.mjs +8 -11
- package/esm2022/lib/components/tables/renderer/table-body/table-body.component.mjs +51 -161
- package/esm2022/lib/components/tables/renderer/table-cell/table-cell.component.mjs +9 -9
- package/esm2022/lib/components/tables/renderer/table-header-cell/table-header-cell.component.mjs +7 -5
- package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.mjs +33 -0
- package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +60 -0
- package/esm2022/lib/components/tables/table/table-model.mjs +3 -12
- package/esm2022/lib/components/tables/table/table.component.mjs +64 -42
- package/esm2022/lib/components/tables/table-row-menu/table-row-menu.component.mjs +84 -0
- package/esm2022/lib/components/tables/tree-table/decorated-tree-node.mjs +4 -5
- 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 +7 -5
- package/esm2022/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.mjs +5 -5
- 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 +8 -15
- package/esm2022/lib/components/tables/tree-table/tree-table-model.mjs +7 -4
- package/esm2022/lib/components/text/markdown/markdown.component.mjs +6 -6
- package/esm2022/lib/components/track.mjs +1 -1
- package/esm2022/lib/components/types/bounds.class.mjs +1 -1
- package/esm2022/lib/components/types/loadable.mjs +2 -0
- package/esm2022/lib/components/vertical-focus-container/vertical-focus-container.component.mjs +4 -4
- package/esm2022/lib/directives/command.directive.mjs +14 -25
- package/esm2022/lib/directives/directives.module.mjs +10 -10
- package/esm2022/lib/directives/exports.mjs +1 -2
- package/esm2022/lib/directives/focus-binding-factory.mjs +4 -4
- package/esm2022/lib/directives/focus-binding.directive.mjs +5 -5
- package/esm2022/lib/directives/focus-binding.mjs +1 -1
- package/esm2022/lib/directives/garbage-collector.directive.mjs +4 -5
- package/esm2022/lib/directives/highlight-text-model.directive.mjs +4 -4
- package/esm2022/lib/directives/highlight.pipe.mjs +11 -12
- package/esm2022/lib/interaction/abstract-interaction-context.mjs +7 -6
- package/esm2022/lib/interaction/activity-ref.mjs +2 -2
- package/esm2022/lib/interaction/activity.mjs +23 -23
- package/esm2022/lib/interaction/alert.mjs +2 -2
- package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +10 -13
- package/esm2022/lib/interaction/components/abstract-dialog.component.mjs +45 -4
- package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +17 -29
- package/esm2022/lib/interaction/components/activity-body/activity-body.component.mjs +4 -10
- package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +19 -50
- package/esm2022/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.mjs +19 -55
- package/esm2022/lib/interaction/components/activity-title/activity-title.component.mjs +6 -6
- package/esm2022/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.mjs +3 -3
- package/esm2022/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.mjs +4 -4
- package/esm2022/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.mjs +4 -4
- package/esm2022/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.mjs +4 -4
- package/esm2022/lib/interaction/components/add-card-activity/add-card-activity.component.mjs +4 -4
- package/esm2022/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.mjs +4 -4
- package/esm2022/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +12 -12
- package/esm2022/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +10 -6
- package/esm2022/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +10 -6
- package/esm2022/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +11 -9
- 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 +9 -9
- package/esm2022/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +9 -25
- package/esm2022/lib/interaction/components/input-activities/input-activity.mjs +5 -6
- package/esm2022/lib/interaction/components/input-activities/select-input-activity.mjs +38 -44
- package/esm2022/lib/interaction/components/input-activities/string-input-activity.mjs +12 -14
- package/esm2022/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.mjs +5 -6
- package/esm2022/lib/interaction/confirm.mjs +2 -26
- package/esm2022/lib/interaction/directives/interaction-context-trigger-for.directive.mjs +6 -6
- package/esm2022/lib/interaction/exports.mjs +1 -6
- package/esm2022/lib/interaction/in-place-interaction-context.mjs +1 -1
- package/esm2022/lib/interaction/interaction-context.mjs +2 -3
- package/esm2022/lib/interaction/interaction.module.mjs +36 -44
- package/esm2022/lib/interaction/route-synchronisation-adapter.mjs +1 -1
- package/esm2022/lib/interaction/services/interaction-service-routing-adapter.mjs +4 -4
- package/esm2022/lib/interaction/services/interaction.service.mjs +10 -22
- package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.mjs +10 -9
- package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.mjs +5 -23
- package/esm2022/lib/interaction/services/modal-interaction-context.factory.mjs +1 -1
- package/esm2022/lib/place/components/abstract-place-navigation.component.mjs +5 -15
- package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +9 -8
- package/esm2022/lib/place/components/not-authorised-notice/not-authorised-notice.component.mjs +7 -5
- package/esm2022/lib/place/components/place-outlet/place-outlet.component.mjs +12 -10
- 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 +10 -15
- package/esm2022/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.mjs +7 -7
- package/esm2022/lib/place/guards/consolidated-param-map.mjs +4 -4
- package/esm2022/lib/place/guards/noop-auth-guard.service.mjs +7 -5
- package/esm2022/lib/place/guards/place.guard.mjs +9 -10
- 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 +6 -3
- 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 +2 -2
- 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-auth-service.mjs +6 -7
- package/esm2022/lib/place/place-component.mjs +58 -54
- package/esm2022/lib/place/place-config.mjs +1 -1
- package/esm2022/lib/place/place-definition.mjs +4 -15
- package/esm2022/lib/place/place-history.mjs +8 -6
- package/esm2022/lib/place/place-router.mjs +68 -84
- package/esm2022/lib/place/place.decorator.mjs +2 -2
- package/esm2022/lib/place/place.module.mjs +16 -16
- 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 +50 -54
- package/esm2022/lib/place/route/parameter-definition.mjs +2 -6
- package/esm2022/lib/place/route/parameter-sanitiser.mjs +2 -7
- 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 +4 -4
- 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 +7 -5
- package/esm2022/lib/services/markdown/pill-plugin.mjs +3 -1
- package/esm2022/lib/services/visibility-service.mjs +7 -7
- package/fesm2022/coolon-angular-ui-powerups.mjs +3003 -4341
- package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
- package/lib/angular-ui-powerups.module.d.ts +5 -5
- package/lib/animations/slide-animations.d.ts +0 -1
- package/lib/components/busy-overlay/busy-overlay.component.d.ts +4 -1
- package/lib/components/cards/abstract-card-container.component.d.ts +3 -6
- package/lib/components/cards/card-container/card-container.component.d.ts +1 -1
- package/lib/components/cards/card-stack/card-stack.component.d.ts +68 -0
- package/lib/components/commands/command/command.component.d.ts +10 -9
- package/lib/components/commands/command-face/command-face.component.d.ts +0 -2
- package/lib/components/commands/command-face.d.ts +9 -8
- package/lib/components/commands/group/popup-aware.component.d.ts +4 -9
- package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +5 -5
- package/lib/components/commands/group/popup-menu/more-menu.component.d.ts +4 -2
- package/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.d.ts +1 -3
- package/lib/components/commands/group/popup-menu/popup-menu.component.d.ts +4 -2
- package/lib/components/commands/group/tool-bar/tool-bar.component.d.ts +7 -3
- package/lib/components/commands/separator.component.d.ts +4 -2
- package/lib/components/components.module.d.ts +53 -57
- package/lib/components/disposable-component.d.ts +9 -17
- package/lib/components/empty-state/empty-state.component.d.ts +4 -1
- package/lib/components/exports.d.ts +6 -14
- package/lib/components/forms/abstract-input.component.d.ts +7 -16
- package/lib/components/forms/autocomplete-input/autocomplete-input.component.d.ts +2 -2
- package/lib/components/forms/checkbox-input/checkbox-input.component.d.ts +0 -2
- package/lib/components/forms/number-input/number-input.component.d.ts +4 -16
- package/lib/components/forms/password-input/password-input.component.d.ts +1 -7
- package/lib/components/forms/select-input/select-input.component.d.ts +3 -4
- package/lib/components/forms/string-input/string-input.component.d.ts +1 -7
- package/lib/components/forms/text-input/text-input.component.d.ts +0 -3
- package/lib/components/loading-container/loading-container.component.d.ts +4 -1
- package/lib/components/noop/noop.component.d.ts +1 -0
- package/lib/components/resize-aware.component.d.ts +6 -25
- package/lib/components/switch-case/switch-case.component.d.ts +7 -6
- package/lib/components/tables/abstract-table-model.d.ts +25 -50
- package/lib/components/tables/abstract-table.component.d.ts +5 -6
- package/lib/components/tables/column/column-list-model.d.ts +13 -0
- package/lib/components/tables/column/column-model.d.ts +4 -8
- package/lib/components/tables/column/custom-template-column-model.d.ts +2 -3
- package/lib/components/tables/column/custom-value-column-model.d.ts +2 -3
- package/lib/components/tables/column/editor-controls-column-model.d.ts +2 -3
- package/lib/components/tables/column/list-propery-column-model.d.ts +2 -3
- package/lib/components/tables/column/property-column-model.d.ts +2 -3
- package/lib/components/tables/column/selection-column-model.d.ts +4 -10
- package/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.d.ts +3 -3
- package/lib/components/tables/editor/edit-session.d.ts +1 -1
- 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 +0 -9
- package/lib/components/tables/renderer/cell-portal-ref.d.ts +14 -21
- package/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.d.ts +1 -0
- package/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.d.ts +1 -0
- package/lib/components/tables/renderer/select-header-cell/selection-header-cell.component.d.ts +1 -2
- package/lib/components/tables/renderer/table-body/table-body.component.d.ts +19 -43
- package/lib/components/tables/renderer/table-cell/table-cell.component.d.ts +3 -2
- package/lib/components/tables/renderer/table-header-cell/table-header-cell.component.d.ts +1 -0
- package/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.d.ts +15 -0
- package/lib/components/tables/renderer/{table-custom-more-menu/table-custom-more-menu.component.d.ts → table-more-menu/table-more-menu.component.d.ts} +8 -9
- package/lib/components/tables/table/table-model.d.ts +4 -4
- package/lib/components/tables/table/table.component.d.ts +11 -15
- package/lib/components/tables/table-row-menu/table-row-menu.component.d.ts +28 -0
- 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 +1 -0
- package/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.d.ts +1 -1
- package/lib/components/tables/tree-table/tree-label-column-model.d.ts +2 -3
- package/lib/components/tables/tree-table/tree-table-component.d.ts +2 -5
- package/lib/components/tables/tree-table/tree-table-model.d.ts +5 -4
- package/lib/components/text/markdown/markdown.component.d.ts +1 -1
- package/lib/components/types/loadable.d.ts +5 -0
- package/lib/directives/command.directive.d.ts +5 -7
- package/lib/directives/directives.module.d.ts +5 -5
- package/lib/directives/exports.d.ts +0 -1
- package/lib/interaction/abstract-interaction-context.d.ts +1 -1
- package/lib/interaction/activity-ref.d.ts +2 -2
- package/lib/interaction/activity.d.ts +7 -7
- package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +1 -2
- package/lib/interaction/components/abstract-dialog.component.d.ts +14 -5
- package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +9 -12
- package/lib/interaction/components/activity-body/activity-body.component.d.ts +1 -2
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +5 -11
- package/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.d.ts +5 -4
- package/lib/interaction/components/activity-title/activity-title.component.d.ts +1 -1
- package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +1 -6
- 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 +4 -6
- package/lib/interaction/components/input-activities/string-input-activity.d.ts +1 -1
- package/lib/interaction/confirm.d.ts +0 -4
- package/lib/interaction/directives/interaction-context-trigger-for.directive.d.ts +3 -3
- package/lib/interaction/exports.d.ts +0 -5
- package/lib/interaction/interaction-context.d.ts +1 -7
- package/lib/interaction/interaction.module.d.ts +33 -35
- package/lib/interaction/services/interaction-service-routing-adapter.d.ts +2 -2
- package/lib/interaction/services/interaction.service.d.ts +1 -2
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +3 -2
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +3 -4
- package/lib/place/components/abstract-place-navigation.component.d.ts +0 -1
- package/lib/place/components/not-authorised-notice/not-authorised-notice.component.d.ts +1 -0
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +4 -3
- package/lib/place/components/side-place-navigation/side-place-navigation.component.d.ts +1 -2
- package/lib/place/guards/noop-auth-guard.service.d.ts +1 -0
- package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +1 -0
- package/lib/place/place-auth-service.d.ts +4 -4
- package/lib/place/place-component.d.ts +16 -8
- package/lib/place/place-definition.d.ts +0 -2
- package/lib/place/place-history.d.ts +1 -0
- package/lib/place/place-router.d.ts +5 -10
- package/lib/place/place.decorator.d.ts +1 -1
- package/lib/place/place.module.d.ts +8 -8
- package/lib/place/route/json-types.d.ts +3 -1
- package/lib/place/route/parameter-decorators.d.ts +4 -3
- package/lib/place/route/parameter-definition.d.ts +2 -2
- package/lib/place/route/parameter-sanitiser.d.ts +0 -7
- 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 +1 -0
- package/lib/services/visibility-service.d.ts +1 -1
- package/package.json +19 -18
- package/assets/draw.scss +0 -20
- package/assets/layout.scss +0 -3
- package/assets/place.scss +0 -31
- package/esm2022/lib/components/commands/button-renderer/button-renderer.component.mjs +0 -115
- package/esm2022/lib/components/file/file-download/file-download.component.mjs +0 -89
- package/esm2022/lib/components/forms/form-field.mjs +0 -2
- package/esm2022/lib/components/forms/search-input/search-input.component.mjs +0 -33
- package/esm2022/lib/components/loadable-component.mjs +0 -69
- package/esm2022/lib/components/tables/column/column-manager.mjs +0 -81
- package/esm2022/lib/components/tables/column/column-order-manager.mjs +0 -19
- package/esm2022/lib/components/tables/footer/footer-row-model.mjs +0 -38
- package/esm2022/lib/components/tables/renderer/abstract-cell-renderer.mjs +0 -7
- package/esm2022/lib/components/tables/renderer/table-action-column/menu-builder.mjs +0 -2
- package/esm2022/lib/components/tables/renderer/table-action-column/table-action-column.component.mjs +0 -153
- package/esm2022/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component.mjs +0 -45
- package/esm2022/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu.component.mjs +0 -71
- package/esm2022/lib/components/tables/renderer/table-footer-row/table-footer-row.component.mjs +0 -30
- package/esm2022/lib/directives/resize-observer.directive.mjs +0 -40
- package/esm2022/lib/interaction/activity-context.mjs +0 -4
- package/esm2022/lib/interaction/components/alert-renderer/alert-renderer.component.mjs +0 -55
- package/esm2022/lib/interaction/components/confirm-renderer/confirm-renderer.component.mjs +0 -54
- package/esm2022/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.mjs +0 -134
- package/esm2022/lib/interaction/interaction-context-provider.mjs +0 -17
- package/lib/components/commands/button-renderer/button-renderer.component.d.ts +0 -30
- package/lib/components/file/file-download/file-download.component.d.ts +0 -45
- package/lib/components/forms/form-field.d.ts +0 -5
- package/lib/components/forms/search-input/search-input.component.d.ts +0 -10
- package/lib/components/loadable-component.d.ts +0 -20
- package/lib/components/tables/column/column-manager.d.ts +0 -19
- package/lib/components/tables/column/column-order-manager.d.ts +0 -20
- package/lib/components/tables/footer/footer-row-model.d.ts +0 -22
- package/lib/components/tables/renderer/abstract-cell-renderer.d.ts +0 -6
- package/lib/components/tables/renderer/table-action-column/menu-builder.d.ts +0 -7
- package/lib/components/tables/renderer/table-action-column/table-action-column.component.d.ts +0 -42
- package/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component.d.ts +0 -19
- package/lib/components/tables/renderer/table-footer-row/table-footer-row.component.d.ts +0 -11
- package/lib/directives/resize-observer.directive.d.ts +0 -16
- package/lib/interaction/activity-context.d.ts +0 -9
- package/lib/interaction/components/alert-renderer/alert-renderer.component.d.ts +0 -17
- package/lib/interaction/components/confirm-renderer/confirm-renderer.component.d.ts +0 -15
- package/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.d.ts +0 -53
- package/lib/interaction/interaction-context-provider.d.ts +0 -11
package/esm2022/lib/place/components/side-place-navigation/side-place-navigation.component.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { Component, ContentChild, HostBinding, Input, TemplateRef } from "@angular/core";
|
|
3
|
-
import {
|
|
3
|
+
import { MutableValueModel, StoreInValueModel, Proxify, proxify } from "@coolon/pectin";
|
|
4
4
|
import { PlaceRouter } from '../../place-router';
|
|
5
5
|
import { AbstractPlaceNavigationComponent } from '../abstract-place-navigation.component';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "../../place-router";
|
|
8
8
|
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "@angular/material/list";
|
|
10
|
-
import * as i4 from "@angular/material/tooltip";
|
|
9
|
+
import * as i3 from "@angular/material/legacy-list";
|
|
10
|
+
import * as i4 from "@angular/material/legacy-tooltip";
|
|
11
11
|
import * as i5 from "../../../directives/command.directive";
|
|
12
12
|
import * as i6 from "../../../directives/garbage-collector.directive";
|
|
13
13
|
import * as i7 from "../../../components/icon/icon.component";
|
|
@@ -57,17 +57,12 @@ export class SidePlaceNavigationComponent extends AbstractPlaceNavigationCompone
|
|
|
57
57
|
#expanded$_accessor_storage = proxify((MutableValueModel));
|
|
58
58
|
get expanded$() { return this.#expanded$_accessor_storage; }
|
|
59
59
|
set expanded$(value) { this.#expanded$_accessor_storage = value; }
|
|
60
|
-
#expanded_accessor_storage
|
|
60
|
+
#expanded_accessor_storage;
|
|
61
61
|
get expanded() { return this.#expanded_accessor_storage; }
|
|
62
62
|
set expanded(value) { this.#expanded_accessor_storage = value; }
|
|
63
63
|
navEndTemplate;
|
|
64
|
-
homeIcon$;
|
|
65
64
|
constructor(router) {
|
|
66
65
|
super(router);
|
|
67
|
-
const { chain } = Dsl.disposeWith(this);
|
|
68
|
-
this.homeIcon$ = chain(this.expanded$).map(expanded => {
|
|
69
|
-
return expanded ? "mat:arrow_back" : "mat:menu";
|
|
70
|
-
});
|
|
71
66
|
}
|
|
72
67
|
expandMenu() {
|
|
73
68
|
this.expanded = true;
|
|
@@ -78,8 +73,8 @@ export class SidePlaceNavigationComponent extends AbstractPlaceNavigationCompone
|
|
|
78
73
|
toggleMenu() {
|
|
79
74
|
this.expanded = !this.expanded;
|
|
80
75
|
}
|
|
81
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
82
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
76
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SidePlaceNavigationComponent, deps: [{ token: i1.PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
77
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SidePlaceNavigationComponent, selector: "aup-side-place-navigation", inputs: { expanded$: "expanded$", expanded: "expanded" }, host: { properties: { "class.expanded": "this.expanded" } }, queries: [{ propertyName: "navEndTemplate", first: true, predicate: ["navEndTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\" class=\"home\">\n <aup-icon class=\"collapsed-only\" icon=\"mat:menu\"></aup-icon>\n <aup-icon class=\"expanded-only\" icon=\"mat:arrow_back\"></aup-icon>\n <span class=\"expanded-only\">Menu</span>\n </a>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-icon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-nav-item-height: var(--nav-item-height, var(--resolved-nav-item-width));--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);width:var(--resolved-nav-item-width);transition:width 125ms linear;background-color:var(--resolved-background-color);color:var(--resolved-color)}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item aup-icon:not(.collapsed-only){margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--resolved-nav-item-width);height:var(--resolved-nav-item-height);color:inherit}.mat-list-item.active{background-color:#444}.mat-list-item.home{text-align:left}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatLegacyNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { kind: "component", type: i3.MatLegacyListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "directive", type: i4.MatLegacyTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: i7.IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
83
78
|
}
|
|
84
79
|
__decorate([
|
|
85
80
|
Proxify(),
|
|
@@ -87,11 +82,11 @@ __decorate([
|
|
|
87
82
|
], SidePlaceNavigationComponent.prototype, "expanded$", null);
|
|
88
83
|
__decorate([
|
|
89
84
|
StoreInValueModel(),
|
|
90
|
-
__metadata("design:type",
|
|
85
|
+
__metadata("design:type", Boolean)
|
|
91
86
|
], SidePlaceNavigationComponent.prototype, "expanded", null);
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SidePlaceNavigationComponent, decorators: [{
|
|
93
88
|
type: Component,
|
|
94
|
-
args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon
|
|
89
|
+
args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\" class=\"home\">\n <aup-icon class=\"collapsed-only\" icon=\"mat:menu\"></aup-icon>\n <aup-icon class=\"expanded-only\" icon=\"mat:arrow_back\"></aup-icon>\n <span class=\"expanded-only\">Menu</span>\n </a>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-icon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-nav-item-height: var(--nav-item-height, var(--resolved-nav-item-width));--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);width:var(--resolved-nav-item-width);transition:width 125ms linear;background-color:var(--resolved-background-color);color:var(--resolved-color)}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item aup-icon:not(.collapsed-only){margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--resolved-nav-item-width);height:var(--resolved-nav-item-height);color:inherit}.mat-list-item.active{background-color:#444}.mat-list-item.home{text-align:left}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}\n"] }]
|
|
95
90
|
}], ctorParameters: function () { return [{ type: i1.PlaceRouter }]; }, propDecorators: { expanded$: [{
|
|
96
91
|
type: Input
|
|
97
92
|
}], expanded: [{
|
|
@@ -103,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
103
98
|
type: ContentChild,
|
|
104
99
|
args: ['navEndTemplate']
|
|
105
100
|
}] } });
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2NvbXBvbmVudHMvc2lkZS1wbGFjZS1uYXZpZ2F0aW9uL3NpZGUtcGxhY2UtbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL3NpZGUtcGxhY2UtbmF2aWdhdGlvbi9zaWRlLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpHLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxPQUFPLEVBQWMsT0FBTyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7Ozs7QUFHMUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBeUNHO0FBTUgsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGdDQUFnQztJQUd2RSw4QkFBWSxPQUFPLENBQUMsQ0FBQSxpQkFBMEIsQ0FBQSxDQUFDLENBQUM7SUFBaEQsSUFBQSxTQUFTLCtDQUF1QztJQUFoRCxJQUFBLFNBQVMscURBQXVDO0lBSWhELDJCQUFrQjtJQUFsQixJQUFBLFFBQVEsOENBQVU7SUFBbEIsSUFBQSxRQUFRLG9EQUFVO0lBRzNCLGNBQWMsQ0FBbUI7SUFFakMsWUFBWSxNQUFtQjtRQUM3QixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDakMsQ0FBQzt1R0ExQlUsNEJBQTRCOzJGQUE1Qiw0QkFBNEIsNlRDdER6Qyx1NkJBaUJBOztBRHdDVztJQURDLE9BQU8sRUFBRTs7NkRBQ3NDO0FBSWhEO0lBRkMsaUJBQWlCLEVBQUU7OzREQUVGOzJGQVBoQiw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCO2tHQU81QixTQUFTO3NCQURqQixLQUFLO2dCQUtHLFFBQVE7c0JBRmhCLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUk3QixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtNdXRhYmxlVmFsdWVNb2RlbCwgU3RvcmVJblZhbHVlTW9kZWwsIFByb3hpZnksIFZhbHVlTW9kZWwsIHByb3hpZnl9IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHsgQWJzdHJhY3RQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5cblxuLyoqXG4gKiBAZXhhbXBsZVxuICogLy8gVXNhZ2VcbiAqIDxhdXAtdmVydGljYWwtcGxhY2UtbmF2aWdhdGlvbiBbcGxhY2VzXT1cInBsYWNlQ29uc3RydWN0b3JBcnJheVwiXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlT3V0bGV0XT1cInBsYWNlT3V0bGV0Q29tcG9uZW50XCI+XG4gKiA8L2F1cC12ZXJ0aWNhbC1wbGFjZS1uYXZpZ2F0aW9uPlxuICogPGF1cC1wbGFjZS1vdXRsZXQgI3BsYWNlT3V0bGV0Q29tcG9uZW50PjwvYXVwLXBsYWNlLW91dGxldD5cbiAqXG4gKiAvLyBDU1Mgb3ZlcnJpZGVzOlxuICogYXVwLXNpZGUtcGxhY2UtbmF2aWdhdGlvbiB7XG4gKiAgIC0tbmF2LXdpZHRoOiA1NnB4XG4gKiAgIC0tbmF2LWV4cGFuZGVkLXdpZHRoOiAyMzVweFxuICogICAtLW5hdi1pdGVtLWhlaWdodDogdmFyKC0tbmF2LXdpZHRoKVxuICogICAtLW5hdi1iYWNrZ3JvdW5kLWNvbG9yOiAjNTU1O1xuICogICAtLW5hdi1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICogfVxuICpcbiAqIC8vIENvbnRlbnQgVGVtcGxhdGVzOlxuICogI25hdkVuZFRlbXBsYXRlXG4gKiA8bmctdGVtcGxhdGUgI25hdkVuZFRlbXBsYXRlPlxuICogICAgPGEgbWF0LWxpc3QtaXRlbSAoY2xpY2spPVwibG9nb3V0KClcIiBtYXRUb29sdGlwPVwiTG9nb3V0XCI+XG4gKiAgICA8bWF0LWljb24+ZXhpdF90b19hcHA8L21hdC1pY29uPlxuICogICAgPHNwYW4gKm5nSWY9XCJzaWRlTmF2LmV4cGFuZGVkXCI+TG9nb3V0PC9zcGFuPlxuICogICAgPC9hPlxuICogPC9uYXYtdGVtcGxhdGU+XG4gKlxuICogLy8gUGxhY2UgbmF2IGl0ZW0gaW4gYW4gaTE4bi55bWxcbiAqIHBsYWNlczpcbiAqICAgbXlQbGFjZTpcbiAqICAgICBuYXYoTmF2SXRlbSk6XG4gKiAgICAgICB0aXRsZTogXCJBY3Rpdml0aWVzXCJcbiAqICAgICAgIGljb246IFwiYnVpbGRcIlxuICogICAgICAgdG9vbHRpcDogXCJBbGVydHMsIGNvbmZpcm1zIGFuZCBkaWFsb2dzXCJcbiAqXG4gKiAvLyBJbiB5b3VyIHBsYWNlXG4gKiAoYXQpUGxhY2Uoe1xuICogICBwYXRoOiAnbXlQbGFjZScsXG4gKiAgIGRhdGE6IHtcbiAqICAgICBuYXY6IEkxOG4ucGxhY2VzLm15UGxhY2UubmF2XG4gKiAgIH1cbiAqIH0pXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1zaWRlLXBsYWNlLW5hdmlnYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lkZS1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2lkZVBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0UGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBAUHJveGlmeSgpXG4gIGFjY2Vzc29yIGV4cGFuZGVkJCA9IHByb3hpZnkoTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4pO1xuXG4gIEBJbnB1dCgpIEBTdG9yZUluVmFsdWVNb2RlbCgpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZXhwYW5kZWQnKVxuICBhY2Nlc3NvciBleHBhbmRlZDogYm9vbGVhbjtcblxuICBAQ29udGVudENoaWxkKCduYXZFbmRUZW1wbGF0ZScpXG4gIG5hdkVuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHJvdXRlcjogUGxhY2VSb3V0ZXIpIHtcbiAgICBzdXBlcihyb3V0ZXIpO1xuICB9XG5cbiAgZXhwYW5kTWVudSgpIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gdHJ1ZTtcbiAgfVxuXG4gIGNvbGxhcHNlTWVudSgpIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gZmFsc2U7XG4gIH1cblxuICB0b2dnbGVNZW51KCkge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgfVxufVxuIiwiPG1hdC1uYXYtbGlzdD5cbiAgPGEgbWF0LWxpc3QtaXRlbSAoY2xpY2spPVwidG9nZ2xlTWVudSgpXCIgY2xhc3M9XCJob21lXCI+XG4gICAgPGF1cC1pY29uIGNsYXNzPVwiY29sbGFwc2VkLW9ubHlcIiBpY29uPVwibWF0Om1lbnVcIj48L2F1cC1pY29uPlxuICAgIDxhdXAtaWNvbiBjbGFzcz1cImV4cGFuZGVkLW9ubHlcIiBpY29uPVwibWF0OmFycm93X2JhY2tcIj48L2F1cC1pY29uPlxuICAgIDxzcGFuIGNsYXNzPVwiZXhwYW5kZWQtb25seVwiPk1lbnU8L3NwYW4+XG4gIDwvYT5cbiAgPGEgbWF0LWxpc3QtaXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51SXRlbXMudmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlQbGFjZURlZlwiXG4gICAgIGF1cC1nYyAjZ2M9XCJhdXAtZ2NcIlxuICAgICBbcGVjdGluQ29tbWFuZF09XCJjb21tYW5kRmFjdG9yeS5jcmVhdGUoaXRlbS5wbGFjZSwge2Rpc3Bvc2VkV2l0aDogZ2N9KVwiXG4gICAgIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5hY3RpdmVcIlxuICAgICBbbWF0VG9vbHRpcF09XCJnZXROYXZpZ2F0aW9uRmFjZShpdGVtLnBsYWNlKS50b29sdGlwKClcIj5cbiAgICA8YXVwLWljb24gKm5nSWY9XCJnZXROYXZpZ2F0aW9uRmFjZShpdGVtLnBsYWNlKS5pY29uKClcIiBbaWNvbl09XCJnZXROYXZpZ2F0aW9uRmFjZShpdGVtLnBsYWNlKS5pY29uKClcIj48L2F1cC1pY29uPlxuICAgIDxzcGFuIGNsYXNzPVwiZXhwYW5kZWQtb25seVwiPnt7Z2V0TmF2aWdhdGlvbkZhY2UoaXRlbS5wbGFjZSkudGV4dCgpfX08L3NwYW4+XG4gIDwvYT5cbiAgPHNwYW4gW3N0eWxlLmZsZXhdPVwiMVwiPjwvc3Bhbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5hdkVuZFRlbXBsYXRlXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwibmF2RW5kVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbjwvbWF0LW5hdi1saXN0PlxuIl19
|
package/esm2022/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.mjs
CHANGED
|
@@ -4,8 +4,8 @@ import { AbstractPlaceNavigationComponent } from '../abstract-place-navigation.c
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "../../place-router";
|
|
6
6
|
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "@angular/material/tabs";
|
|
8
|
-
import * as i4 from "@angular/material/tooltip";
|
|
7
|
+
import * as i3 from "@angular/material/legacy-tabs";
|
|
8
|
+
import * as i4 from "@angular/material/legacy-tooltip";
|
|
9
9
|
import * as i5 from "../../../directives/command.directive";
|
|
10
10
|
import * as i6 from "../../../directives/garbage-collector.directive";
|
|
11
11
|
import * as i7 from "../../../components/commands/command-face/command-face.component";
|
|
@@ -13,11 +13,11 @@ export class TabbedPlaceNavigationComponent extends AbstractPlaceNavigationCompo
|
|
|
13
13
|
constructor(router) {
|
|
14
14
|
super(router);
|
|
15
15
|
}
|
|
16
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
17
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TabbedPlaceNavigationComponent, deps: [{ token: i1.PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: TabbedPlaceNavigationComponent, selector: "aup-tabbed-place-navigation", usesInheritance: true, ngImport: i0, template: "<nav mat-tab-nav-bar>\n <ng-content select=\"[nav-start]\"></ng-content>\n <a mat-tab-link *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n <ng-content select=\"[nav-end]\"></ng-content>\n</nav>\n", styles: [":host{display:block}div.place-holder{border:1px solid green}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatLegacyTabNav, selector: "[mat-tab-nav-bar]", inputs: ["color"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "directive", type: i3.MatLegacyTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matTabLink"] }, { kind: "directive", type: i4.MatLegacyTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: i7.CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: TabbedPlaceNavigationComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
|
-
args: [{ selector: 'aup-tabbed-place-navigation', template: "<nav mat-tab-nav-bar
|
|
21
|
+
args: [{ selector: 'aup-tabbed-place-navigation', template: "<nav mat-tab-nav-bar>\n <ng-content select=\"[nav-start]\"></ng-content>\n <a mat-tab-link *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n <ng-content select=\"[nav-end]\"></ng-content>\n</nav>\n", styles: [":host{display:block}div.place-holder{border:1px solid green}\n"] }]
|
|
22
22
|
}], ctorParameters: function () { return [{ type: i1.PlaceRouter }]; } });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvY29tcG9uZW50cy90YWJiZWQtcGxhY2UtbmF2aWdhdGlvbi90YWJiZWQtcGxhY2UtbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7Ozs7QUFPMUYsTUFBTSxPQUFPLDhCQUErQixTQUFRLGdDQUFnQztJQUNsRixZQUFZLE1BQW1CO1FBQzdCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQixDQUFDO3VHQUhVLDhCQUE4QjsyRkFBOUIsOEJBQThCLDBGQ1QzQyxxZ0JBV0E7OzJGREZhLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDRSw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBsYWNlUm91dGVyIH0gZnJvbSAnLi4vLi4vcGxhY2Utcm91dGVyJztcbmltcG9ydCB7IEFic3RyYWN0UGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYWJzdHJhY3QtcGxhY2UtbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJiZWQtcGxhY2UtbmF2aWdhdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRhYmJlZFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0UGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3Iocm91dGVyOiBQbGFjZVJvdXRlcikge1xuICAgIHN1cGVyKHJvdXRlcik7XG4gIH1cbn1cbiIsIjxuYXYgbWF0LXRhYi1uYXYtYmFyPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbbmF2LXN0YXJ0XVwiPjwvbmctY29udGVudD5cbiAgPGEgbWF0LXRhYi1saW5rICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1lbnVJdGVtcy52YWx1ZTsgdHJhY2tCeTogdHJhY2tCeVBsYWNlRGVmXCJcbiAgICAgYXVwLWdjICNnYz1cImF1cC1nY1wiXG4gICAgIFtwZWN0aW5Db21tYW5kXT1cImNvbW1hbmRGYWN0b3J5LmNyZWF0ZShpdGVtLnBsYWNlLCB7ZGlzcG9zZWRXaXRoOiBnY30pXCJcbiAgICAgW2FjdGl2ZV09XCJpdGVtLmFjdGl2ZVwiXG4gICAgIFttYXRUb29sdGlwXT1cImdldE5hdmlnYXRpb25GYWNlKGl0ZW0ucGxhY2UpLnRvb2x0aXAoKVwiPlxuICAgIDxhdXAtY29tbWFuZC1mYWNlIFtmYWNlc109XCJbZ2V0TmF2aWdhdGlvbkZhY2UoaXRlbS5wbGFjZSldXCI+PC9hdXAtY29tbWFuZC1mYWNlPlxuICA8L2E+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIltuYXYtZW5kXVwiPjwvbmctY29udGVudD5cbjwvbmF2PlxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import {
|
|
3
|
-
import { uniq } from 'lodash
|
|
2
|
+
import { Memoize } from '@typescript-plus/fast-memoize-decorator';
|
|
3
|
+
import { uniq } from 'lodash';
|
|
4
4
|
/**
|
|
5
5
|
* This a work around for the fact that an activated route with multiple segments doesn't
|
|
6
6
|
* include the segment params in the paramMap as well as each segment returns an empty
|
|
@@ -31,7 +31,7 @@ export class ConsolidatedParameterMap {
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
__decorate([
|
|
34
|
-
|
|
34
|
+
Memoize(),
|
|
35
35
|
__metadata("design:type", Array),
|
|
36
36
|
__metadata("design:paramtypes", [])
|
|
37
37
|
], ConsolidatedParameterMap.prototype, "keys", null);
|
|
@@ -54,4 +54,4 @@ class ParamMapAdapter {
|
|
|
54
54
|
return Object.keys(this.params);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29saWRhdGVkLXBhcmFtLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2d1YXJkcy9jb25zb2xpZGF0ZWQtcGFyYW0tbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFbEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU5Qjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUVsQixTQUFTLEdBQWUsRUFBRSxDQUFDO0lBRTVDLFlBQVksV0FBeUIsRUFBRSxRQUFtQjtRQUN4RCxvR0FBb0c7UUFDcEcsTUFBTSxhQUFhLEdBQUcsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFlLENBQUM7UUFDcEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhO2FBQzNCLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDaEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsNENBQTRDO0lBQ25FLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdkQsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGO0FBSkM7SUFBQyxPQUFPLEVBQUU7OztvREFHVDtBQUdILE1BQU0sZUFBZTtJQUNVO0lBQTdCLFlBQTZCLE1BQStCO1FBQS9CLFdBQU0sR0FBTixNQUFNLENBQXlCO0lBQzVELENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhcmFtTWFwLCBVcmxTZWdtZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE1lbW9pemUgfSBmcm9tICdAdHlwZXNjcmlwdC1wbHVzL2Zhc3QtbWVtb2l6ZS1kZWNvcmF0b3InO1xuXG5pbXBvcnQgeyB1bmlxIH0gZnJvbSAnbG9kYXNoJztcblxuLyoqXG4gKiBUaGlzIGEgd29yayBhcm91bmQgZm9yIHRoZSBmYWN0IHRoYXQgYW4gYWN0aXZhdGVkIHJvdXRlIHdpdGggbXVsdGlwbGUgc2VnbWVudHMgZG9lc24ndFxuICogaW5jbHVkZSB0aGUgc2VnbWVudCBwYXJhbXMgaW4gdGhlIHBhcmFtTWFwIGFzIHdlbGwgYXMgZWFjaCBzZWdtZW50IHJldHVybnMgYW4gZW1wdHlcbiAqIHBhcmFtIG1hcCBldmVuIHdoZW4gYHBhcmFtZXRlcmBzIGhhcyBjb250ZW50LlxuICovXG5leHBvcnQgY2xhc3MgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwIGltcGxlbWVudHMgUGFyYW1NYXAge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcGFyYW1NYXBzOiBQYXJhbU1hcFtdID0gW107XG5cbiAgY29uc3RydWN0b3IodXJsU2VnbWVudHM6IFVybFNlZ21lbnRbXSwgcGFyYW1NYXA/OiBQYXJhbU1hcCkge1xuICAgIC8vIFRPRE86IGNhbiB3ZSBnZXQgYWxsIG91ciBwYXJhbXMgZnJvbSB0ZWggdXJsIHNlZ21lbnRzPyBJZiBzbyB3ZSBjYW4gZHJvcCB0aGUgcGFyYW1NYXAgYWx0b2dldGhlci5cbiAgICBjb25zdCBzZWdtZW50UGFyYW1zID0gKHVybFNlZ21lbnRzIHx8IFtdKS5tYXAocyA9PiBuZXcgUGFyYW1NYXBBZGFwdGVyKHMucGFyYW1ldGVycykpIGFzIFBhcmFtTWFwW107XG4gICAgdGhpcy5wYXJhbU1hcHMgPSBzZWdtZW50UGFyYW1zXG4gICAgICAuY29uY2F0KHBhcmFtTWFwKVxuICAgICAgLmZpbHRlcihtID0+ICEhbSk7IC8vIHRoZSBhY3RpdmF0ZWQgcm91dGUgcGFyYW0gbWFwIGNhbiBiZSBudWxsXG4gIH1cblxuICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgY29uc3QgcGFyYW1NYXAgPSB0aGlzLnBhcmFtTWFwcy5maW5kKG0gPT4gbS5oYXMobmFtZSkpO1xuICAgIHJldHVybiBwYXJhbU1hcC5nZXQobmFtZSk7XG4gIH1cblxuICBnZXRBbGwobmFtZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHBhcmFtTWFwID0gdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgICByZXR1cm4gcGFyYW1NYXAuZ2V0QWxsKG5hbWUpO1xuICB9XG5cbiAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gIH1cblxuICBATWVtb2l6ZSgpXG4gIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdW5pcSh0aGlzLnBhcmFtTWFwcy5yZWR1Y2UoKHJlc3VsdCwgcGFyYW1zKSA9PiByZXN1bHQuY29uY2F0KHBhcmFtcy5rZXlzKSwgW10pKTtcbiAgfVxufVxuXG5jbGFzcyBQYXJhbU1hcEFkYXB0ZXIgaW1wbGVtZW50cyBQYXJhbU1hcCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcGFyYW1zOiB7IFtwOiBzdHJpbmddOiBzdHJpbmcgfSkge1xuICB9XG5cbiAgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnBhcmFtc1tuYW1lXTtcbiAgfVxuXG4gIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChuYW1lKTtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gIH1cblxuICBoYXMobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMua2V5cy5pbmNsdWRlcyhuYW1lKTtcbiAgfVxuXG4gIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5wYXJhbXMpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class NoopAuthGuard {
|
|
4
|
+
constructor() {
|
|
5
|
+
}
|
|
4
6
|
async canActivate(activatedRoute, state) {
|
|
5
7
|
return true;
|
|
6
8
|
}
|
|
7
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
8
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: NoopAuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: NoopAuthGuard, providedIn: 'root' });
|
|
9
11
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: NoopAuthGuard, decorators: [{
|
|
11
13
|
type: Injectable,
|
|
12
14
|
args: [{
|
|
13
15
|
providedIn: 'root'
|
|
14
16
|
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
}], ctorParameters: function () { return []; } });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC1hdXRoLWd1YXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9ndWFyZHMvbm9vcC1hdXRoLWd1YXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNM0MsTUFBTSxPQUFPLGFBQWE7SUFFeEI7SUFDQSxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFzQyxFQUFFLEtBQTBCO1FBQ2xGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt1R0FQVSxhQUFhOzJHQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlclN0YXRlU25hcHNob3QsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOb29wQXV0aEd1YXJkICB7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICBhc3luYyBjYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -38,14 +38,13 @@ export class PlaceGuard {
|
|
|
38
38
|
}
|
|
39
39
|
// @Trace()
|
|
40
40
|
async canActivate(activatedRoute, state) {
|
|
41
|
-
await this.placeRouter.waitUntilRouterReady();
|
|
42
41
|
if (PlaceComponent.isPlaceComponentConstructor(activatedRoute.component)) {
|
|
43
42
|
const placeDefinition = PlaceComponent.getDefinition(activatedRoute.component);
|
|
44
43
|
if (placeDefinition.authenticate) {
|
|
45
44
|
await this.placeRouter.authService.waitUntilAuthenticationReady();
|
|
46
45
|
const authenticated = this.authService.isAuthenticated();
|
|
47
46
|
if (!authenticated) {
|
|
48
|
-
const redirect =
|
|
47
|
+
const redirect = this.authService.getAuthenticationFailureRedirect(activatedRoute, state);
|
|
49
48
|
// const nextPlaceDef = this.getPlaceDefinition(redirect);
|
|
50
49
|
if (redirect.requiresAuthentication()) {
|
|
51
50
|
lang.illegalState(`onAuthenticationFailure hook returned place ${redirect.toDebugString()} that requires authentication.`);
|
|
@@ -54,7 +53,7 @@ export class PlaceGuard {
|
|
|
54
53
|
}
|
|
55
54
|
await this.authService.waitUntilAuthorisationReadyFor(placeDefinition);
|
|
56
55
|
if (!this.authService.isAuthorised(placeDefinition)) {
|
|
57
|
-
const nextRedirect =
|
|
56
|
+
const nextRedirect = this.findBestAuthenticatedAlternative(placeDefinition, activatedRoute);
|
|
58
57
|
return this.createUrlTree(nextRedirect);
|
|
59
58
|
}
|
|
60
59
|
}
|
|
@@ -81,7 +80,7 @@ export class PlaceGuard {
|
|
|
81
80
|
if (placeDefinition.children.length < 1) {
|
|
82
81
|
lang.illegalState(`redirectToFirstChild set to true, but there were no children `);
|
|
83
82
|
}
|
|
84
|
-
for (
|
|
83
|
+
for (let child of placeDefinition.children) {
|
|
85
84
|
if (!child.authenticate || this.authService.isAuthorised(child)) {
|
|
86
85
|
return destUrlSnapshot.appendSegment(new VisitSegment(child));
|
|
87
86
|
}
|
|
@@ -98,7 +97,7 @@ export class PlaceGuard {
|
|
|
98
97
|
return lang.illegalState(`expected component to be an instance of PlaceComponent, got ${activatedRoute.component}`);
|
|
99
98
|
}
|
|
100
99
|
}
|
|
101
|
-
|
|
100
|
+
findBestAuthenticatedAlternative(placeDefinition, activatedRoute) {
|
|
102
101
|
let currentPlace = placeDefinition;
|
|
103
102
|
while (!currentPlace.isRoot()) {
|
|
104
103
|
currentPlace = currentPlace.parent;
|
|
@@ -108,7 +107,7 @@ export class PlaceGuard {
|
|
|
108
107
|
}
|
|
109
108
|
}
|
|
110
109
|
// Couldn't find an authorised ancestor so we check if there are router level defined alternatives
|
|
111
|
-
const alternativeRoutes =
|
|
110
|
+
const alternativeRoutes = this.placeRouter.getAuthorisationFailureRedirectOptions(activatedRoute.component);
|
|
112
111
|
if (alternativeRoutes.length < 1) {
|
|
113
112
|
return lang.illegalState(`onAuthorisationFailure hook didn't return any alternate places`);
|
|
114
113
|
}
|
|
@@ -151,11 +150,11 @@ export class PlaceGuard {
|
|
|
151
150
|
return next();
|
|
152
151
|
}
|
|
153
152
|
}
|
|
154
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
155
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
153
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: PlaceGuard, deps: [{ token: i1.Router }, { token: i2.UrlService }, { token: i3.PlaceRouter }, { token: i4.PlaceHistory }, { token: i5.InteractionService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
154
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: PlaceGuard, providedIn: 'root' });
|
|
156
155
|
}
|
|
157
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: PlaceGuard, decorators: [{
|
|
158
157
|
type: Injectable,
|
|
159
158
|
args: [{ providedIn: 'root' }]
|
|
160
159
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.UrlService }, { type: i3.PlaceRouter }, { type: i4.PlaceHistory }, { type: i5.InteractionService }, { type: i0.Injector }]; } });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9ndWFyZHMvcGxhY2UuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUF5QixNQUFNLEVBQStCLE1BQU0saUJBQWlCLENBQUM7QUFDN0YsT0FBTyxFQUFnQixJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUVsRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQy9CLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQUdsRSxNQUFNLE9BQU8sVUFBVTtJQUdRO0lBQ1Q7SUFDUztJQUNBO0lBQ0E7SUFDQTtJQUw3QixZQUE2QixNQUFjLEVBQ3ZCLFVBQXNCLEVBQ2IsV0FBd0IsRUFDeEIsWUFBMEIsRUFD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LENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDaEUsaUdBQWlHO1lBQ2pHLG1EQUFtRDtZQUNuRCxPQUFPLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQ25DO2FBQU07WUFDTCxPQUFPLElBQUksRUFBRSxDQUFDO1NBQ2Y7SUFDSCxDQUFDO3VHQWpKVSxVQUFVOzJHQUFWLFVBQVUsY0FERSxNQUFNOzsyRkFDbEIsVUFBVTtrQkFEdEIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBVcmxUcmVlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtDb25zdHJ1Y3RhYmxlLCBsYW5nfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQge0ludGVyYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vaW50ZXJhY3Rpb24vc2VydmljZXMvaW50ZXJhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQge1BsYWNlQXV0aFNlcnZpY2V9IGZyb20gXCIuLi9wbGFjZS1hdXRoLXNlcnZpY2VcIjtcbmltcG9ydCB7UGxhY2VDb21wb25lbnR9IGZyb20gJy4uL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSAnLi4vcGxhY2UtZGVmaW5pdGlvbic7XG5pbXBvcnQge1BsYWNlSGlzdG9yeX0gZnJvbSAnLi4vcGxhY2UtaGlzdG9yeSc7XG5pbXBvcnQge1BsYWNlUm91dGVyfSBmcm9tICcuLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnRTYW5pdGlzZXJ9IGZyb20gJy4uL3JvdXRlL3Zpc2l0LXNlZ21lbnQtc2FuaXRpc2VyJztcbmltcG9ydCB7VXJsU2VydmljZX0gZnJvbSAnLi4vdXJsLXNlcnZpY2UnO1xuaW1wb3J0IHtVcmxTbmFwc2hvdH0gZnJvbSAnLi4vdXJsLXNuYXBzaG90JztcbmltcG9ydCB7VmlzaXR9IGZyb20gXCIuLi92aXNpdFwiO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuaW1wb3J0IHtDb25zb2xpZGF0ZWRQYXJhbWV0ZXJNYXB9IGZyb20gJy4vY29uc29saWRhdGVkLXBhcmFtLW1hcCc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFBsYWNlR3VhcmQge1xuXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1cmxTZXJ2aWNlOiBVcmxTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBsYWNlUm91dGVyOiBQbGFjZVJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZUhpc3Rvcnk6IFBsYWNlSGlzdG9yeSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbnRlcmFjdGlvblNlcnZpY2U6IEludGVyYWN0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgfVxuXG4gIGdldCBhdXRoU2VydmljZSgpOiBQbGFjZUF1dGhTZXJ2aWNlIHtcbiAgICByZXR1cm4gdGhpcy5wbGFjZVJvdXRlci5hdXRoU2VydmljZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNhbkFjdGl2YXRlKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHtcblxuICAgIGF3YWl0IHRoaXMucGxhY2VSb3V0ZXIud2FpdFVudGlsUm91dGVyUmVhZHkoKTtcblxuICAgIGlmIChQbGFjZUNvbXBvbmVudC5pc1BsYWNlQ29tcG9uZW50Q29uc3RydWN0b3IoYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KSkge1xuICAgICAgY29uc3QgcGxhY2VEZWZpbml0aW9uID0gUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihhY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnQpO1xuXG4gICAgICBpZiAocGxhY2VEZWZpbml0aW9uLmF1dGhlbnRpY2F0ZSkge1xuXG4gICAgICAgIGF3YWl0IHRoaXMucGxhY2VSb3V0ZXIuYXV0aFNlcnZpY2Uud2FpdFVudGlsQXV0aGVudGljYXRpb25SZWFkeSgpO1xuXG4gICAgICAgIGNvbnN0IGF1dGhlbnRpY2F0ZWQgPSB0aGlzLmF1dGhTZXJ2aWNlLmlzQXV0aGVudGljYXRlZCgpO1xuXG4gICAgICAgIGlmICghYXV0aGVudGljYXRlZCkge1xuICAgICAgICAgIGNvbnN0IHJlZGlyZWN0ID0gYXdhaXQgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRoZW50aWNhdGlvbkZhaWx1cmVSZWRpcmVjdChhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpO1xuICAgICAgICAgIC8vIGNvbnN0IG5leHRQbGFjZURlZiA9IHRoaXMuZ2V0UGxhY2VEZWZpbml0aW9uKHJlZGlyZWN0KTtcbiAgICAgICAgICBpZiAocmVkaXJlY3QucmVxdWlyZXNBdXRoZW50aWNhdGlvbigpKSB7XG4gICAgICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZShgb25BdXRoZW50aWNhdGlvbkZhaWx1cmUgaG9vayByZXR1cm5lZCBwbGFjZSAke3JlZGlyZWN0LnRvRGVidWdTdHJpbmcoKX0gdGhhdCByZXF1aXJlcyBhdXRoZW50aWNhdGlvbi5gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlVXJsVHJlZShyZWRpcmVjdCk7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLndhaXRVbnRpbEF1dGhvcmlzYXRpb25SZWFkeUZvcihwbGFjZURlZmluaXRpb24pO1xuXG4gICAgICAgIGlmICghdGhpcy5hdXRoU2VydmljZS5pc0F1dGhvcmlzZWQocGxhY2VEZWZpbml0aW9uKSkge1xuICAgICAgICAgIGNvbnN0IG5leHRSZWRpcmVjdCA9IGF3YWl0IHRoaXMuZmluZEJlc3RBdXRoZW50aWNhdGVkQWx0ZXJuYXRpdmUocGxhY2VEZWZpbml0aW9uLCBhY3RpdmF0ZWRSb3V0ZSk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlVXJsVHJlZShuZXh0UmVkaXJlY3QpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY2xlYW5JbnRlcmFjdGlvblN0YXRlKGFjdGl2YXRlZFJvdXRlLCBzdGF0ZSwgYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uU2Vzc2lvbiA9IHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb247XG5cbiAgICAgICAgLy8gUGFyc2Ugb3VyIHJvdXRlIHBhcmFtcy5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IENvbnNvbGlkYXRlZFBhcmFtZXRlck1hcChhY3RpdmF0ZWRSb3V0ZS51cmwsIGFjdGl2YXRlZFJvdXRlLnBhcmFtTWFwKTtcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJSb3V0ZVBhcmFtc1wiLCBwYXJhbXMpXG4gICAgICAgIGNvbnN0IHBhcnNlZFBhcmFtcyA9IHBsYWNlRGVmaW5pdGlvbi5wYXJzZVJvdXRlUGFyYW1zKHBhcmFtcyk7XG4gICAgICAgIGNvbnN0IGluaXRpYWxWaXNpdCA9IG5hdmlnYXRpb25TZXNzaW9uLmdldFZpc2l0U2VnbWVudEZvcihwbGFjZURlZmluaXRpb24pIHx8IG5ldyBWaXNpdFNlZ21lbnQocGxhY2VEZWZpbml0aW9uLCBwYXJzZWRQYXJhbXMpO1xuICAgICAgICBjb25zdCBzYW5pdGlzZXIgPSBuZXcgVmlzaXRTZWdtZW50U2FuaXRpc2VyKG5hdmlnYXRpb25TZXNzaW9uLCBhY3RpdmF0ZWRSb3V0ZSwgdGhpcy5yb3V0ZXIsIHRoaXMucGxhY2VIaXN0b3J5LCB0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY29uc3Qgc2FuaXRpc2VkVmlzaXQgPSBhd2FpdCBzYW5pdGlzZXIuc2FuaXRpc2UoaW5pdGlhbFZpc2l0Lm1lcmdlUm91dGVQYXJhbWV0ZXJzKHBhcnNlZFBhcmFtcykpO1xuICAgICAgICAvLyBTYXZlIHRoZSB2aXNpdCB3aXRoIGFueSB1cGRhdGVkIHBhcmFtZXRlcnMuICBXZSBuZWVkIHRvIHNhdmUgaXQgc28gd2UgcmVtZW1iZXIgYW55IG5vbiByb3V0ZSBwYXJhbWV0ZXJzXG4gICAgICAgIG5hdmlnYXRpb25TZXNzaW9uLnVwZGF0ZVZpc2l0U2VnbWVudChzYW5pdGlzZWRWaXNpdCk7XG5cbiAgICAgICAgY29uc3QgZGVzdFVybFNuYXBzaG90ID0gdGhpcy51cmxTZXJ2aWNlLnBhcnNlVXJsKHN0YXRlLnVybCk7XG4gICAgICAgIGlmIChpbml0aWFsVmlzaXQuaGFzUm91dGluZ0NoYW5nZWRGcm9tKHNhbml0aXNlZFZpc2l0KSkge1xuICAgICAgICAgIC8vIFJlZ2VuZXJhdGUgdGhlIHVybCBhbmQgdXBkYXRlIG91ciB2aXNpdCBzZWdtZW50IGluIHRoZSBzZXNzaW9uXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coJyMjIyMjIFBsYWNlIEd1YXJkIFJlZGlyZWN0JywgZGVzdFVybFNuYXBzaG90LnVwZGF0ZVZpc2l0U2VnbWVudChzYW5pdGlzZWRWaXNpdCkpO1xuICAgICAgICAgIHJldHVybiBkZXN0VXJsU25hcHNob3QudXBkYXRlVmlzaXRTZWdtZW50KHNhbml0aXNlZFZpc2l0KTtcbiAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgIC8vIE91ciB2aXNpdCBwYXJhbWV0ZXJzIGFyZSBhbGwgc29ydGVkLCBub3cgY2hlY2sgaWYgd2Ugc2hvdWxkIHJlZGlyZWN0IHRvIG91ciBjaGlsZC5cbiAgICAgICAgICBpZiAoZGVzdFVybFNuYXBzaG90LmlzTGFzdFBsYWNlSW5VcmwocGxhY2VEZWZpbml0aW9uKSAmJiBwbGFjZURlZmluaXRpb24ucmVkaXJlY3RUb0ZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgIGlmIChwbGFjZURlZmluaXRpb24uY2hpbGRyZW4ubGVuZ3RoIDwgMSkge1xuICAgICAgICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZShgcmVkaXJlY3RUb0ZpcnN0Q2hpbGQgc2V0IHRvIHRydWUsIGJ1dCB0aGVyZSB3ZXJlIG5vIGNoaWxkcmVuIGApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBwbGFjZURlZmluaXRpb24uY2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgaWYgKCFjaGlsZC5hdXRoZW50aWNhdGUgfHwgdGhpcy5hdXRoU2VydmljZS5pc0F1dGhvcmlzZWQoY2hpbGQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlc3RVcmxTbmFwc2hvdC5hcHBlbmRTZWdtZW50KG5ldyBWaXNpdFNlZ21lbnQoY2hpbGQpKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBobW0sIHdoYXQgc2hvdWxkIEkgZG8gaGVyZSwgd2UgZGlkbid0IGhhdmUgYW4gYXV0aG9yaXNlZCBjaGlsZFxuICAgICAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYHJlZGlyZWN0VG9GaXJzdENoaWxkIHNldCB0byB0cnVlLCBidXQgdGhlcmUgd2VyZSBubyBhdXRoZW50aWNhdGVkIGNoaWxkcmVuYCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gcmVzdWx0IGluc3RhbmNlb2YgVXJsU25hcHNob3QgPyByZXN1bHQudXJsVHJlZSA6IHJlc3VsdDtcblxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbGFuZy5pbGxlZ2FsU3RhdGUoYGV4cGVjdGVkIGNvbXBvbmVudCB0byBiZSBhbiBpbnN0YW5jZSBvZiBQbGFjZUNvbXBvbmVudCwgZ290ICR7YWN0aXZhdGVkUm91dGUuY29tcG9uZW50fWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZmluZEJlc3RBdXRoZW50aWNhdGVkQWx0ZXJuYXRpdmUocGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb24sIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogUHJvbWlzZTxWaXNpdD4ge1xuICAgIGxldCBjdXJyZW50UGxhY2UgPSBwbGFjZURlZmluaXRpb247XG4gICAgd2hpbGUgKCFjdXJyZW50UGxhY2UuaXNSb290KCkpIHtcbiAgICAgIGN1cnJlbnRQbGFjZSA9IGN1cnJlbnRQbGFjZS5wYXJlbnQ7XG4gICAgICBjb25zdCBwZXJtaXR0ZWRDaGlsZCA9IGN1cnJlbnRQbGFjZS5maW5kQ2hpbGQoYyA9PiB0aGlzLmF1dGhTZXJ2aWNlLmlzQXV0aG9yaXNlZChjKSk7XG4gICAgICBpZiAocGVybWl0dGVkQ2hpbGQpIHtcbiAgICAgICAgcmV0dXJuIFZpc2l0LmdvdG8ocGVybWl0dGVkQ2hpbGQuY29tcG9uZW50KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gQ291bGRuJ3QgZmluZCBhbiBhdXRob3Jpc2VkIGFuY2VzdG9yIHNvIHdlIGNoZWNrIGlmIHRoZXJlIGFyZSByb3V0ZXIgbGV2ZWwgZGVmaW5lZCBhbHRlcm5hdGl2ZXNcbiAgICBjb25zdCBhbHRlcm5hdGl2ZVJvdXRlcyA9IGF3YWl0IHRoaXMucGxhY2VSb3V0ZXIuZ2V0QXV0aG9yaXNhdGlvbkZhaWx1cmVSZWRpcmVjdE9wdGlvbnMoYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KTtcbiAgICBpZiAoYWx0ZXJuYXRpdmVSb3V0ZXMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIGxhbmcuaWxsZWdhbFN0YXRlKGBvbkF1dGhvcmlzYXRpb25GYWlsdXJlIGhvb2sgZGlkbid0IHJldHVybiBhbnkgYWx0ZXJuYXRlIHBsYWNlc2ApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBuZXh0UmVkaXJlY3QgPSBhbHRlcm5hdGl2ZVJvdXRlcy5maW5kKGl0ID0+IGl0LmlzQXV0aG9yaXNlZCh0aGlzLmF1dGhTZXJ2aWNlKSlcbiAgICAgIHJldHVybiBuZXh0UmVkaXJlY3QgPz8gbGFuZy5pbGxlZ2FsU3RhdGUoYG9uQXV0aG9yaXNhdGlvbkZhaWx1cmUgaG9vayBkaWRuJ3QgcmV0dXJuIGFueSBhdXRob3Jpc2VkIGxvY2F0aW9uc2ApO1xuICAgIH1cbiAgfVxuXG4vLyBAVHJhY2UoKVxuICBhc3luYyBjYW5EZWFjdGl2YXRlKGNvbXBvbmVudDogUGxhY2VDb21wb25lbnQsIGN1cnJlbnRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgY3VycmVudFN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBuZXh0U3RhdGU/OiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgIGlmICghY29tcG9uZW50KSB7XG4gICAgICAvLyB0aGlzIGhhcHBlbnMgd2hlbiB0aGUgcGxhY2Ugd2Fzbid0IGF1dGhvcmlzZWQgYW5kIHRoZSBhc3NvY2lhdGVkXG4gICAgICAvLyByb3V0ZXIgb3V0bGV0IHdhcyByZW1vdmVkIGZyb20gdGhlIGRvbS5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBjdXJyZW50VXJsID0gdGhpcy51cmxTZXJ2aWNlLnBhcnNlVXJsKGN1cnJlbnRTdGF0ZS51cmwpO1xuICAgIGNvbnN0IG5leHRVcmwgPSB0aGlzLnVybFNlcnZpY2UucGFyc2VVcmwobmV4dFN0YXRlLnVybCk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uU2Vzc2lvbi5jYW5EZWFjdGl2YXRlUGxhY2UoY29tcG9uZW50LCBjdXJyZW50VXJsLCBuZXh0VXJsKTtcbiAgICByZXR1cm4gcmVzdWx0IGluc3RhbmNlb2YgVXJsU25hcHNob3QgPyByZXN1bHQudXJsVHJlZSA6IHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGxhY2VEZWZpbml0aW9uKHJlc3VsdDogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4gfCBWaXNpdFNlZ21lbnQgfCBQbGFjZURlZmluaXRpb24pOiBQbGFjZURlZmluaXRpb24ge1xuICAgIHJldHVybiByZXN1bHQgaW5zdGFuY2VvZiBWaXNpdFNlZ21lbnQgP1xuICAgICAgcmVzdWx0LnBsYWNlRGVmaW5pdGlvbiA6XG4gICAgICByZXN1bHQgaW5zdGFuY2VvZiBQbGFjZURlZmluaXRpb24gP1xuICAgICAgICByZXN1bHQgOlxuICAgICAgICBQbGFjZUNvbXBvbmVudC5nZXREZWZpbml0aW9uKHJlc3VsdCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVVybFRyZWUodmlzaXQ6IFZpc2l0KSB7XG4gICAgcmV0dXJuIHRoaXMudXJsU2VydmljZS5jcmVhdGVVcmxTbmFwc2hvdCh2aXNpdC5zZWdtZW50cykudXJsVHJlZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNsZWFuSW50ZXJhY3Rpb25TdGF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsIG5leHQ6ICgpID0+IFByb21pc2U8Ym9vbGVhbiB8IFVybFNuYXBzaG90IHwgVXJsVHJlZT4pOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdCB8IFVybFRyZWU+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLnVybFNlcnZpY2UucGFyc2VVcmwoc3RhdGUudXJsKTtcbiAgICBpZiAoIXRoaXMuaW50ZXJhY3Rpb25TZXJ2aWNlLmlzQWN0aXZlKCkgJiYgdXJsLmhhc0ludGVyYWN0aW9ucygpKSB7XG4gICAgICAvLyBUaGlzIGhhcHBlbnMgaWYgd2UgcmVsb2FkIHRoZSBwYWdlIG9yIHRoZSB1cmwgd2FzIHBhc3RlZCBhcyB0aGUgcm91dGUgc2hvdWxkIG9ubHkgYmUgYWN0aXZhdGVkXG4gICAgICAvLyBhZnRlciB0aGUgaW50ZXJhY3Rpb24gY29udGV4dCBoYXMgYmVjb21lIGFjdGl2ZS5cbiAgICAgIHJldHVybiB1cmwucmVtb3ZlSW50ZXJhY3Rpb25JZHMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9ndWFyZHMvcGxhY2UuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUEwQixNQUFNLEVBQWdDLE1BQU0saUJBQWlCLENBQUM7QUFDL0YsT0FBTyxFQUFnQixJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUdsRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQy9CLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQUdsRSxNQUFNLE9BQU8sVUFBVTtJQUdRO0lBQ1Q7SUFDUztJQUNBO0lBQ0E7SUFDQTtJQUw3QixZQUE2QixNQUFjLEVBQ3ZCLFVBQXNCLEVBQ2IsV0FBd0IsRUFDeEIsWUFBMEIsRUFD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QixFQUFFLENBQUM7U0FDbkM7YUFBTTtZQUNMLE9BQU8sSUFBSSxFQUFFLENBQUM7U0FDZjtJQUNILENBQUM7dUdBL0lVLFVBQVU7MkdBQVYsVUFBVSxjQURFLE1BQU07OzJGQUNsQixVQUFVO2tCQUR0QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0b3J9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7Q29uc3RydWN0YWJsZSwgbGFuZ30gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHtJbnRlcmFjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL2ludGVyYWN0aW9uL3NlcnZpY2VzL2ludGVyYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtQbGFjZUFjY2Vzc0d1YXJkfSBmcm9tIFwiLi4vcGxhY2UtYWNjZXNzLWd1YXJkXCI7XG5pbXBvcnQge1BsYWNlQXV0aFNlcnZpY2V9IGZyb20gXCIuLi9wbGFjZS1hdXRoLXNlcnZpY2VcIjtcbmltcG9ydCB7UGxhY2VDb21wb25lbnR9IGZyb20gJy4uL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSAnLi4vcGxhY2UtZGVmaW5pdGlvbic7XG5pbXBvcnQge1BsYWNlSGlzdG9yeX0gZnJvbSAnLi4vcGxhY2UtaGlzdG9yeSc7XG5pbXBvcnQge1BsYWNlUm91dGVyfSBmcm9tICcuLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnRTYW5pdGlzZXJ9IGZyb20gJy4uL3JvdXRlL3Zpc2l0LXNlZ21lbnQtc2FuaXRpc2VyJztcbmltcG9ydCB7VXJsU2VydmljZX0gZnJvbSAnLi4vdXJsLXNlcnZpY2UnO1xuaW1wb3J0IHtVcmxTbmFwc2hvdH0gZnJvbSAnLi4vdXJsLXNuYXBzaG90JztcbmltcG9ydCB7VmlzaXR9IGZyb20gXCIuLi92aXNpdFwiO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuaW1wb3J0IHtDb25zb2xpZGF0ZWRQYXJhbWV0ZXJNYXB9IGZyb20gJy4vY29uc29saWRhdGVkLXBhcmFtLW1hcCc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFBsYWNlR3VhcmQgIHtcblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgdXJsU2VydmljZTogVXJsU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW50ZXJhY3Rpb25TZXJ2aWNlOiBJbnRlcmFjdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIH1cblxuICBnZXQgYXV0aFNlcnZpY2UoKTogUGxhY2VBdXRoU2VydmljZSB7XG4gICAgcmV0dXJuIHRoaXMucGxhY2VSb3V0ZXIuYXV0aFNlcnZpY2U7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBjYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XG5cbiAgICBpZiAoUGxhY2VDb21wb25lbnQuaXNQbGFjZUNvbXBvbmVudENvbnN0cnVjdG9yKGFjdGl2YXRlZFJvdXRlLmNvbXBvbmVudCkpIHtcbiAgICAgIGNvbnN0IHBsYWNlRGVmaW5pdGlvbiA9IFBsYWNlQ29tcG9uZW50LmdldERlZmluaXRpb24oYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KTtcblxuICAgICAgaWYgKHBsYWNlRGVmaW5pdGlvbi5hdXRoZW50aWNhdGUpIHtcblxuICAgICAgICBhd2FpdCB0aGlzLnBsYWNlUm91dGVyLmF1dGhTZXJ2aWNlLndhaXRVbnRpbEF1dGhlbnRpY2F0aW9uUmVhZHkoKTtcblxuICAgICAgICBjb25zdCBhdXRoZW50aWNhdGVkID0gdGhpcy5hdXRoU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQoKTtcblxuICAgICAgICBpZiAoIWF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgICAgICBjb25zdCByZWRpcmVjdCA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aGVudGljYXRpb25GYWlsdXJlUmVkaXJlY3QoYWN0aXZhdGVkUm91dGUsIHN0YXRlKTtcbiAgICAgICAgICAvLyBjb25zdCBuZXh0UGxhY2VEZWYgPSB0aGlzLmdldFBsYWNlRGVmaW5pdGlvbihyZWRpcmVjdCk7XG4gICAgICAgICAgaWYgKHJlZGlyZWN0LnJlcXVpcmVzQXV0aGVudGljYXRpb24oKSkge1xuICAgICAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYG9uQXV0aGVudGljYXRpb25GYWlsdXJlIGhvb2sgcmV0dXJuZWQgcGxhY2UgJHtyZWRpcmVjdC50b0RlYnVnU3RyaW5nKCl9IHRoYXQgcmVxdWlyZXMgYXV0aGVudGljYXRpb24uYCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVVybFRyZWUocmVkaXJlY3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgYXdhaXQgdGhpcy5hdXRoU2VydmljZS53YWl0VW50aWxBdXRob3Jpc2F0aW9uUmVhZHlGb3IocGxhY2VEZWZpbml0aW9uKTtcblxuICAgICAgICBpZiAoIXRoaXMuYXV0aFNlcnZpY2UuaXNBdXRob3Jpc2VkKHBsYWNlRGVmaW5pdGlvbikpIHtcbiAgICAgICAgICBjb25zdCBuZXh0UmVkaXJlY3QgPSB0aGlzLmZpbmRCZXN0QXV0aGVudGljYXRlZEFsdGVybmF0aXZlKHBsYWNlRGVmaW5pdGlvbiwgYWN0aXZhdGVkUm91dGUpO1xuICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVVybFRyZWUobmV4dFJlZGlyZWN0KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmNsZWFuSW50ZXJhY3Rpb25TdGF0ZShhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUsIGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgbmF2aWdhdGlvblNlc3Npb24gPSB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uO1xuXG4gICAgICAgIC8vIFBhcnNlIG91ciByb3V0ZSBwYXJhbXMuXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBDb25zb2xpZGF0ZWRQYXJhbWV0ZXJNYXAoYWN0aXZhdGVkUm91dGUudXJsLCBhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcCk7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiUm91dGVQYXJhbXNcIiwgcGFyYW1zKVxuICAgICAgICBjb25zdCBwYXJzZWRQYXJhbXMgPSBwbGFjZURlZmluaXRpb24ucGFyc2VSb3V0ZVBhcmFtcyhwYXJhbXMpO1xuICAgICAgICBjb25zdCBpbml0aWFsVmlzaXQgPSBuYXZpZ2F0aW9uU2Vzc2lvbi5nZXRWaXNpdFNlZ21lbnRGb3IocGxhY2VEZWZpbml0aW9uKSB8fCBuZXcgVmlzaXRTZWdtZW50KHBsYWNlRGVmaW5pdGlvbiwgcGFyc2VkUGFyYW1zKTtcbiAgICAgICAgY29uc3Qgc2FuaXRpc2VyID0gbmV3IFZpc2l0U2VnbWVudFNhbml0aXNlcihuYXZpZ2F0aW9uU2Vzc2lvbiwgYWN0aXZhdGVkUm91dGUsIHRoaXMucm91dGVyLCB0aGlzLnBsYWNlSGlzdG9yeSwgdGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IHNhbml0aXNlZFZpc2l0ID0gYXdhaXQgc2FuaXRpc2VyLnNhbml0aXNlKGluaXRpYWxWaXNpdC5tZXJnZVJvdXRlUGFyYW1ldGVycyhwYXJzZWRQYXJhbXMpKTtcbiAgICAgICAgLy8gU2F2ZSB0aGUgdmlzaXQgd2l0aCBhbnkgdXBkYXRlZCBwYXJhbWV0ZXJzLiAgV2UgbmVlZCB0byBzYXZlIGl0IHNvIHdlIHJlbWVtYmVyIGFueSBub24gcm91dGUgcGFyYW1ldGVyc1xuICAgICAgICBuYXZpZ2F0aW9uU2Vzc2lvbi51cGRhdGVWaXNpdFNlZ21lbnQoc2FuaXRpc2VkVmlzaXQpO1xuXG4gICAgICAgIGNvbnN0IGRlc3RVcmxTbmFwc2hvdCA9IHRoaXMudXJsU2VydmljZS5wYXJzZVVybChzdGF0ZS51cmwpO1xuICAgICAgICBpZiAoaW5pdGlhbFZpc2l0Lmhhc1JvdXRpbmdDaGFuZ2VkRnJvbShzYW5pdGlzZWRWaXNpdCkpIHtcbiAgICAgICAgICAvLyBSZWdlbmVyYXRlIHRoZSB1cmwgYW5kIHVwZGF0ZSBvdXIgdmlzaXQgc2VnbWVudCBpbiB0aGUgc2Vzc2lvblxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCcjIyMjIyBQbGFjZSBHdWFyZCBSZWRpcmVjdCcsIGRlc3RVcmxTbmFwc2hvdC51cGRhdGVWaXNpdFNlZ21lbnQoc2FuaXRpc2VkVmlzaXQpKTtcbiAgICAgICAgICByZXR1cm4gZGVzdFVybFNuYXBzaG90LnVwZGF0ZVZpc2l0U2VnbWVudChzYW5pdGlzZWRWaXNpdCk7XG4gICAgICAgIH0gZWxzZSB7XG5cbiAgICAgICAgICAvLyBPdXIgdmlzaXQgcGFyYW1ldGVycyBhcmUgYWxsIHNvcnRlZCwgbm93IGNoZWNrIGlmIHdlIHNob3VsZCByZWRpcmVjdCB0byBvdXIgY2hpbGQuXG4gICAgICAgICAgaWYgKGRlc3RVcmxTbmFwc2hvdC5pc0xhc3RQbGFjZUluVXJsKHBsYWNlRGVmaW5pdGlvbikgJiYgcGxhY2VEZWZpbml0aW9uLnJlZGlyZWN0VG9GaXJzdENoaWxkKSB7XG4gICAgICAgICAgICBpZiAocGxhY2VEZWZpbml0aW9uLmNoaWxkcmVuLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYHJlZGlyZWN0VG9GaXJzdENoaWxkIHNldCB0byB0cnVlLCBidXQgdGhlcmUgd2VyZSBubyBjaGlsZHJlbiBgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAobGV0IGNoaWxkIG9mIHBsYWNlRGVmaW5pdGlvbi5jaGlsZHJlbikge1xuICAgICAgICAgICAgICBpZiAoIWNoaWxkLmF1dGhlbnRpY2F0ZSB8fCB0aGlzLmF1dGhTZXJ2aWNlLmlzQXV0aG9yaXNlZChjaGlsZCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdFVybFNuYXBzaG90LmFwcGVuZFNlZ21lbnQobmV3IFZpc2l0U2VnbWVudChjaGlsZCkpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGhtbSwgd2hhdCBzaG91bGQgSSBkbyBoZXJlLCB3ZSBkaWRuJ3QgaGF2ZSBhbiBhdXRob3Jpc2VkIGNoaWxkXG4gICAgICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZShgcmVkaXJlY3RUb0ZpcnN0Q2hpbGQgc2V0IHRvIHRydWUsIGJ1dCB0aGVyZSB3ZXJlIG5vIGF1dGhlbnRpY2F0ZWQgY2hpbGRyZW5gKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiByZXN1bHQgaW5zdGFuY2VvZiBVcmxTbmFwc2hvdCA/IHJlc3VsdC51cmxUcmVlIDogcmVzdWx0O1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBsYW5nLmlsbGVnYWxTdGF0ZShgZXhwZWN0ZWQgY29tcG9uZW50IHRvIGJlIGFuIGluc3RhbmNlIG9mIFBsYWNlQ29tcG9uZW50LCBnb3QgJHthY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnR9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQmVzdEF1dGhlbnRpY2F0ZWRBbHRlcm5hdGl2ZShwbGFjZURlZmluaXRpb246IFBsYWNlRGVmaW5pdGlvbiwgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOlZpc2l0IHtcbiAgICBsZXQgY3VycmVudFBsYWNlID0gcGxhY2VEZWZpbml0aW9uO1xuICAgIHdoaWxlICghY3VycmVudFBsYWNlLmlzUm9vdCgpKSB7XG4gICAgICBjdXJyZW50UGxhY2UgPSBjdXJyZW50UGxhY2UucGFyZW50O1xuICAgICAgY29uc3QgcGVybWl0dGVkQ2hpbGQgPSBjdXJyZW50UGxhY2UuZmluZENoaWxkKGMgPT4gdGhpcy5hdXRoU2VydmljZS5pc0F1dGhvcmlzZWQoYykpO1xuICAgICAgaWYgKHBlcm1pdHRlZENoaWxkKSB7XG4gICAgICAgIHJldHVybiBWaXNpdC5nb3RvKHBlcm1pdHRlZENoaWxkLmNvbXBvbmVudCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIENvdWxkbid0IGZpbmQgYW4gYXV0aG9yaXNlZCBhbmNlc3RvciBzbyB3ZSBjaGVjayBpZiB0aGVyZSBhcmUgcm91dGVyIGxldmVsIGRlZmluZWQgYWx0ZXJuYXRpdmVzXG4gICAgY29uc3QgYWx0ZXJuYXRpdmVSb3V0ZXMgPSB0aGlzLnBsYWNlUm91dGVyLmdldEF1dGhvcmlzYXRpb25GYWlsdXJlUmVkaXJlY3RPcHRpb25zKGFjdGl2YXRlZFJvdXRlLmNvbXBvbmVudCk7XG4gICAgaWYgKGFsdGVybmF0aXZlUm91dGVzLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBsYW5nLmlsbGVnYWxTdGF0ZShgb25BdXRob3Jpc2F0aW9uRmFpbHVyZSBob29rIGRpZG4ndCByZXR1cm4gYW55IGFsdGVybmF0ZSBwbGFjZXNgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbmV4dFJlZGlyZWN0ID0gYWx0ZXJuYXRpdmVSb3V0ZXMuZmluZChpdCA9PiBpdC5pc0F1dGhvcmlzZWQodGhpcy5hdXRoU2VydmljZSkpXG4gICAgICByZXR1cm4gbmV4dFJlZGlyZWN0ID8/IGxhbmcuaWxsZWdhbFN0YXRlKGBvbkF1dGhvcmlzYXRpb25GYWlsdXJlIGhvb2sgZGlkbid0IHJldHVybiBhbnkgYXV0aG9yaXNlZCBsb2NhdGlvbnNgKTtcbiAgICB9XG4gIH1cblxuLy8gQFRyYWNlKClcbiAgYXN5bmMgY2FuRGVhY3RpdmF0ZShjb21wb25lbnQ6IFBsYWNlQ29tcG9uZW50LCBjdXJyZW50Um91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIGN1cnJlbnRTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCwgbmV4dFN0YXRlPzogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHtcbiAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgLy8gdGhpcyBoYXBwZW5zIHdoZW4gdGhlIHBsYWNlIHdhc24ndCBhdXRob3Jpc2VkIGFuZCB0aGUgYXNzb2NpYXRlZFxuICAgICAgLy8gcm91dGVyIG91dGxldCB3YXMgcmVtb3ZlZCBmcm9tIHRoZSBkb20uXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFVybCA9IHRoaXMudXJsU2VydmljZS5wYXJzZVVybChjdXJyZW50U3RhdGUudXJsKTtcbiAgICBjb25zdCBuZXh0VXJsID0gdGhpcy51cmxTZXJ2aWNlLnBhcnNlVXJsKG5leHRTdGF0ZS51cmwpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb24uY2FuRGVhY3RpdmF0ZVBsYWNlKGNvbXBvbmVudCwgY3VycmVudFVybCwgbmV4dFVybCk7XG4gICAgcmV0dXJuIHJlc3VsdCBpbnN0YW5jZW9mIFVybFNuYXBzaG90ID8gcmVzdWx0LnVybFRyZWUgOiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldFBsYWNlRGVmaW5pdGlvbihyZXN1bHQ6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+IHwgVmlzaXRTZWdtZW50IHwgUGxhY2VEZWZpbml0aW9uKTogUGxhY2VEZWZpbml0aW9uIHtcbiAgICByZXR1cm4gcmVzdWx0IGluc3RhbmNlb2YgVmlzaXRTZWdtZW50ID9cbiAgICAgIHJlc3VsdC5wbGFjZURlZmluaXRpb24gOlxuICAgICAgcmVzdWx0IGluc3RhbmNlb2YgUGxhY2VEZWZpbml0aW9uID9cbiAgICAgICAgcmVzdWx0IDpcbiAgICAgICAgUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihyZXN1bHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVVcmxUcmVlKHZpc2l0OiBWaXNpdCkge1xuICAgIHJldHVybiB0aGlzLnVybFNlcnZpY2UuY3JlYXRlVXJsU25hcHNob3QodmlzaXQuc2VnbWVudHMpLnVybFRyZWU7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBjbGVhbkludGVyYWN0aW9uU3RhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBuZXh0OiAoKSA9PiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdCB8IFVybFRyZWU+KTogUHJvbWlzZTxib29sZWFuIHwgVXJsU25hcHNob3QgfCBVcmxUcmVlPiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy51cmxTZXJ2aWNlLnBhcnNlVXJsKHN0YXRlLnVybCk7XG4gICAgaWYgKCF0aGlzLmludGVyYWN0aW9uU2VydmljZS5pc0FjdGl2ZSgpICYmIHVybC5oYXNJbnRlcmFjdGlvbnMoKSkge1xuICAgICAgLy8gVGhpcyBoYXBwZW5zIGlmIHdlIHJlbG9hZCB0aGUgcGFnZSBvciB0aGUgdXJsIHdhcyBwYXN0ZWQgYXMgdGhlIHJvdXRlIHNob3VsZCBvbmx5IGJlIGFjdGl2YXRlZFxuICAgICAgLy8gYWZ0ZXIgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgaGFzIGJlY29tZSBhY3RpdmUuXG4gICAgICByZXR1cm4gdXJsLnJlbW92ZUludGVyYWN0aW9uSWRzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuZXh0KCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { assert } from '@coolon/pectin';
|
|
2
|
-
import { isEqual } from 'lodash
|
|
2
|
+
import { isEqual } from 'lodash';
|
|
3
3
|
/**
|
|
4
4
|
* This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:
|
|
5
5
|
* 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)
|
|
@@ -84,4 +84,4 @@ export class PlaceComponentDeactivationHandler {
|
|
|
84
84
|
return !nextState.includesPathOf(this.component.placeDefinition);
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LWRlYWN0aXZhdGlvbi1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvbmF2aWdhdGlvbi9wbGFjZS1jb21wb25lbnQtZGVhY3RpdmF0aW9uLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFNakM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFPLGlDQUFpQztJQUl2QjtJQUFvQztJQUErQztJQUZoRyxvQkFBb0IsQ0FBaUM7SUFFN0QsWUFBcUIsU0FBeUIsRUFBVyxpQkFBb0MsRUFBVyxrQkFBMkI7UUFBOUcsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFBVyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFTO1FBQ2pJLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXO0lBQ1gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxVQUF1QixFQUFFLFNBQXNCO1FBQ2pFLDJFQUEyRTtRQUMzRSxvRkFBb0Y7UUFDcEYsc0JBQXNCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUIsd0ZBQXdGO1lBQ3hGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUdELFdBQVc7SUFDRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBdUIsRUFBRSxTQUFzQjtRQUNwRix5R0FBeUc7UUFDekcsK0lBQStJO1FBQy9JLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRTtZQUVyQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQzVFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMvRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsOEJBQThCLEVBQUUsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSw2QkFBNkI7b0JBQ2pFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDZCQUE2QixFQUFFLENBQUM7b0JBQ3BFLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2FBQ0Y7aUJBQU07Z0JBQ0wscURBQXFEO2dCQUNyRCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ3hFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDL0UsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO1FBRUQscURBQXFEO1FBQ3JELDhIQUE4SDtRQUM5SCwrR0FBK0c7UUFDL0csSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDNUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsK0JBQStCLENBQUMsQ0FBQztZQUM3RyxxR0FBcUc7WUFDckcsd0RBQXdEO1lBQ3hELElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BGLE9BQU8sQ0FBQyxJQUFJLENBQUMsNkVBQTZFLENBQUMsQ0FBQztnQkFDNUYsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUVELE9BQU8sUUFBUSxDQUFDO1NBQ2pCO2FBQU07WUFDTCxtREFBbUQ7WUFDbkQsT0FBTyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLCtCQUErQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzFIO0lBQ0gsQ0FBQztJQUVTLHdCQUF3QixDQUFDLFNBQXNCO1FBQ3ZELHFGQUFxRjtRQUNyRixnRkFBZ0Y7UUFDaEYsMENBQTBDO1FBQzFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhY2UsIGFzc2VydCB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBQbGFjZUNvbXBvbmVudCB9IGZyb20gJy4uL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZURlZmluaXRpb24gfSBmcm9tICcuLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7IFVybFNuYXBzaG90IH0gZnJvbSAnLi4vdXJsLXNuYXBzaG90JztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXNzaW9uIH0gZnJvbSAnLi9zZXNzaW9uL25hdmlnYXRpb24tc2Vzc2lvbic7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBoYW5kbGVzIHRoZSBsb2dpYyBhcm91bmQgY2FuRGVhY3RpdmF0ZSBmb3IgYSBnaXZlbiByb3V0ZXIgc3RhdGUgdHJhbnNpdGlvbi4gIEl0J3MgY29yZSByZXNwb25zaWJpbGl0aWVzIGFyZTpcbiAqIDEuIEVuc3VyZSB3ZSBvbmx5IGFzayB0aGUgY29tcG9uZW50IHRvIGRlYWN0aXZhdGUgb25jZSBvbiBhIGdpdmVuIG5hdmlnYXRpb24gY3ljbGUgKHNpbmNlIHZpc2l0IHNhbml0aXNhdGlvbiBjYW4gcmVzdWx0IGluIG11bHRpcGxlIHJvdW5kIHRyaXBzIHRvIHRocm91Z2ggdGhlIHJvdXRlci4pXG4gKiAyLiBFbnN1cmUgb25seSB0aGUgcHJpbWFyeSBwbGFjZSBjb21wb25lbnQgaXMgYXNrZWQgd2hlbiB0aGVyZSBhcmUgbmVzdGVkIHBsYWNlcy4gIFRoZSBwcmltYXJ5IGNvbXBvbmVudCBpcyB0aGUgb25lIGF0IHRoZSB0b3BcbiAqICAgIG9mIHRoZSByb3V0aW5nIGNoYW5nZSB0cmVlLlxuICogMy4gQXV0b21hdGljYWxseSBoYW5kbGUgc3RhbmRhcmQgaW50ZXJhY3Rpb24gc2NlbmFyaW9zIG9uIHRoZSBjb21wb25lbnRzIGJlaGFsZi5cbiAqL1xuZXhwb3J0IGNsYXNzIFBsYWNlQ29tcG9uZW50RGVhY3RpdmF0aW9uSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSBjYW5EZWFjdGl2YXRlUHJvbWlzZTogUHJvbWlzZTxib29sZWFuIHwgVXJsU25hcHNob3Q+O1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvbXBvbmVudDogUGxhY2VDb21wb25lbnQsIHJlYWRvbmx5IG5hdmlnYXRpb25TZXNzaW9uOiBOYXZpZ2F0aW9uU2Vzc2lvbiwgcmVhZG9ubHkgaXNQcmltYXJ5Q29tcG9uZW50OiBib29sZWFuKSB7XG4gICAgYXNzZXJ0Lm5vdE5pbChjb21wb25lbnQpO1xuICB9XG5cbiAgZ2V0IHJvdXRlckludGVyYWN0aW9uQWRhcHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5pbnRlcmFjdGlvblNlcnZpY2VBZGFwdGVyO1xuICB9XG5cbiAgZ2V0IHVybFNlcnZpY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMubmF2aWdhdGlvblNlc3Npb24udXJsU2VydmljZTtcbiAgfVxuXG4gIGdldCBwbGFjZURlZmluaXRpb24oKTpQbGFjZURlZmluaXRpb24ge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudC5wbGFjZURlZmluaXRpb247XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBjYW5EZWFjdGl2YXRlKGN1cnJlbnRVcmw6IFVybFNuYXBzaG90LCBuZXh0U3RhdGU6IFVybFNuYXBzaG90KTogUHJvbWlzZTxib29sZWFuIHwgVXJsU25hcHNob3Q+IHtcbiAgICAvLyBXZSdsbCBnZXQgY2FsbGVkIG11bHRpcGxlIHRpbWVzIGlmIHRoZXJlJ3MgYW55IHBhcmFtZXRlciBzYW5pdGlzYXRpb24gc29cbiAgICAvLyB3ZSBhbHdheXMgcmV0dXJuIHRydWUgaWYgd2UgYWNjZXB0ZWQgcHJvbWlzZSBmcm9tIGEgcHJldmlvdXMgY3ljbGUgb2YgdGhlIGN1cnJlbnRcbiAgICAvLyBuYXZpZ2F0aW9uIHNlc3Npb24uXG4gICAgaWYgKCF0aGlzLmNhbkRlYWN0aXZhdGVQcm9taXNlKSB7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgY3JlYXRpbmcgZGVhY3RpdmF0ZSBwcm9taXNlIGZvciAtPiAke3RoaXMuY29tcG9uZW50LmNvbnN0cnVjdG9yLm5hbWV9YCk7XG4gICAgICB0aGlzLmNhbkRlYWN0aXZhdGVQcm9taXNlID0gdGhpcy5jYW5EZWFjdGl2YXRlQ29tcG9uZW50KGN1cnJlbnRVcmwsIG5leHRTdGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNhbkRlYWN0aXZhdGVQcm9taXNlO1xuICB9XG5cblxuICAvLyBAVHJhY2UoKVxuICBwcm90ZWN0ZWQgYXN5bmMgY2FuRGVhY3RpdmF0ZUNvbXBvbmVudChjdXJyZW50VXJsOiBVcmxTbmFwc2hvdCwgbmV4dFN0YXRlOiBVcmxTbmFwc2hvdCk6IFByb21pc2U8VXJsU25hcHNob3QgfCBib29sZWFuPiB7XG4gICAgLy8gQXV0b21hdGljYWxseSBjYW5jZWwgYW55IGFjdGl2ZSBhY3Rpdml0aWVzIGlmIHRoZSBuYXZpZ2F0aW9uIHNlc3Npb24gd2FzIHRyaWdnZXJlZCBieSB0aGUgYmFjayBidXR0b24uXG4gICAgLy8gSWYgd2UgaGFuZGxlZCBtb3JlIHRoYW4ganVzdCB0aGUgcG9wIHN0YXRlIHRoZW4gaXQgbGVhZHMgdG8gdGhlIFVJIGlnbm9yaW5nIGNsaWNrcyBhbmQganVzdCBjYW5jZWxsaW5nIHRoaW5ncyB3aGljaCBpcyBkZWVwbHkgZGlzY29uY2VydGluZy5cbiAgICBpZiAodGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5pc1BvcFN0YXRlKSB7XG5cbiAgICAgIGlmICh0aGlzLmlzUHJpbWFyeUNvbXBvbmVudCAmJiB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5pc01vZGFsQWN0aXZlKCkpIHtcbiAgICAgICAgY29uc3Qgcm91dGVJZHMgPSB0aGlzLnVybFNlcnZpY2UuZ2V0QWN0aXZlSW50ZXJhY3Rpb25JZHNGcm9tVXJsKG5leHRTdGF0ZS51cmwpO1xuICAgICAgICBjb25zdCBjdXJyZW50SWRzID0gdGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuZ2V0QWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWRzKCk7XG4gICAgICAgIGlmICghaXNFcXVhbChjdXJyZW50SWRzLCByb3V0ZUlkcykpIHsgLy8gd2h5IGFtIEkgY2hlY2tpbmcgdGhpcz8/Pz9cbiAgICAgICAgICBhd2FpdCB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5jYW5jZWxDdXJyZW50TW9kYWxJbnRlcmFjdGlvbigpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gY2hlY2sgaWYgdGhlIGNvbXBvbmVudCBoYXMgYW4gaW4gcGxhY2UgaW50ZXJhY3Rpb25cbiAgICAgICAgaWYgKHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmlzQ29tcG9uZW50SW50ZXJhY3RpbmcodGhpcy5jb21wb25lbnQpKSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuY2FuY2VsQ29tcG9uZW50SW50ZXJhY3Rpb24odGhpcy5jb21wb25lbnQpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5vIGludGVyYWN0aW9uIGluIHByb2dyZXNzLCBzbyBhc2sgdGhlIGNvbXBvbmVudCAuXG4gICAgLy8gVGhpcyBtYXkgc3RhcnQgYW4gaW50ZXJhY3Rpb24sIGhlbmNlIGNoZWNraW5nIHRoZSBpbnRlcmFjdGlvbiBjb250ZXh0IGJlZm9yZSBub3cuIEkuZS4gaWYgdGhlIHBsYWNlIHBvcHMgdXAgdGhlIGRpYWxvZywgYW5kXG4gICAgLy8gdGhlIHVzZXIgY2xpY2tzIGJhY2sgYWdhaW4sIHdlJ2xsIHJlLWVudGVyIGhlcmUgYW5kIGdvIGJhbmcgd2hlbiB0aGUgY29tcG9uZW50IHRyaWVzIHRvIG9wZW4gYW5vdGhlciBkaWFsb2cuXG4gICAgaWYgKHRoaXMuaXNHb2luZ1RvQURpZmZlcmVudFBsYWNlKG5leHRTdGF0ZSkpIHtcbiAgICAgIGNvbnN0IGNhbkxlYXZlID0gYXdhaXQgdGhpcy5jb21wb25lbnQuX2NhbkxlYXZlUGxhY2UodGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5jYW5EZWFjdGl2YXRlSW50ZXJhY3Rpb25Db250ZXh0KTtcbiAgICAgIC8vIFRoZSBjb21wb25lbnQgaGFzIGFuIGFjdGl2ZSBpbnRlcmFjdGlvbiBidXQgbm8gZGVhY3RpdmF0aW9uIGhvb2suICBSYXRoZXIgdGhhbiBndWVzc2luZyB3aGF0IHRvIGRvXG4gICAgICAvLyB3ZSdsbCBqdXN0IGNhbmNlbCB0aGUgbmF2aWdhdGlvbiBhbmQgcHJpbnQgYSB3YXJuaW5nLlxuICAgICAgaWYgKGNhbkxlYXZlICYmIHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmlzQ29tcG9uZW50SW50ZXJhY3RpbmcodGhpcy5jb21wb25lbnQpKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignUm91dGUgY2hhbmdlZCB3aGlsZSBjb21wb25lbnQgaGFzIGFjdGl2ZSBpbnRlcmFjdGlvbiwgY2FuY2VsbGluZyBuYXZpZ2F0aW9uJyk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNhbkxlYXZlO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBlaXRoZXIgYW4gaW50ZXJhY3Rpb24gb3IgdmlzaXQgcGFyYW1ldGVyIGNoYW5nZS5cbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmNvbXBvbmVudC5fY2FuQ2hhbmdlUm91dGVQYXJhbWV0ZXJzKHRoaXMubmF2aWdhdGlvblNlc3Npb24uY2FuRGVhY3RpdmF0ZUludGVyYWN0aW9uQ29udGV4dCwgbmV4dFN0YXRlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNHb2luZ1RvQURpZmZlcmVudFBsYWNlKG5leHRTdGF0ZTogVXJsU25hcHNob3QpIHtcbiAgICAvLyBCZWNhdXNlIHBsYWNlcyB3aXRoIGEgcm91dGUtaWQgY292ZXIgdHdvIHJvdXRlIHNlZ21lbnRzIHdlIGdldCBhc2tlZCB0byBkZWFjdGl2YXRlXG4gICAgLy8gaWYgdGhlIHJvdXRlIGlkIGlzIGFkZGVkIG9yIHJlbW92ZWQuICBTbyBpZiBvdXIgcGF0aCBpcyBzdGlsbCBwcmVzZW50IHRoZSB1cmxcbiAgICAvLyB0aGVuIHdlIHNob3VsZG4ndCBkZWFjdGl2YXRlIHRoZSBwbGFjZS5cbiAgICByZXR1cm4gIW5leHRTdGF0ZS5pbmNsdWRlc1BhdGhPZih0aGlzLmNvbXBvbmVudC5wbGFjZURlZmluaXRpb24pO1xuICB9XG59XG4iXX0=
|
|
@@ -12,4 +12,4 @@ export class AbstractPopStateNavigation extends NavigationSession {
|
|
|
12
12
|
super.repairBrowserHistoryAndUrlAfterGuardCancellation(this.poppedHistoryUrl, this.startingUrl);
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcG9wLXN0YXRlLW5hdmlnYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9uYXZpZ2F0aW9uL3Nlc3Npb24vYWJzdHJhY3QtcG9wLXN0YXRlLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFekQsTUFBTSxPQUFnQiwwQkFBMkIsU0FBUSxpQkFBaUI7SUFJRjtJQUg3RCxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ2xCLGlCQUFpQixHQUFHLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFFakUsWUFBWSxPQUEwQixFQUFFLFdBQW1CLEVBQVcsZ0JBQXdCO1FBQzVGLEtBQUssQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFEd0MscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFRO0lBRTlGLENBQUM7SUFFRCxXQUFXO0lBQ0YsZ0RBQWdEO1FBQ3ZELEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQ2pHLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ2dlciwgVHJhY2UgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uQ29udGV4dCB9IGZyb20gJy4vbmF2aWdhdGlvbi1jb250ZXh0JztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXNzaW9uIH0gZnJvbSAnLi9uYXZpZ2F0aW9uLXNlc3Npb24nO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RQb3BTdGF0ZU5hdmlnYXRpb24gZXh0ZW5kcyBOYXZpZ2F0aW9uU2Vzc2lvbiB7XG4gIHJlYWRvbmx5IGlzUG9wU3RhdGUgPSB0cnVlO1xuICBvdmVycmlkZSBkZWJ1Z1Byb3BlcnR5S2V5cyA9IFsnc3RhcnRpbmdVcmwnLCAncG9wcGVkSGlzdG9yeVVybCddO1xuXG4gIGNvbnN0cnVjdG9yKGNvbnRleHQ6IE5hdmlnYXRpb25Db250ZXh0LCBzdGFydGluZ1VybDogc3RyaW5nLCByZWFkb25seSBwb3BwZWRIaXN0b3J5VXJsOiBzdHJpbmcpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdGFydGluZ1VybCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvdmVycmlkZSByZXBhaXJCcm93c2VySGlzdG9yeUFuZFVybEFmdGVyR3VhcmRDYW5jZWxsYXRpb24oKTogdm9pZCB7XG4gICAgc3VwZXIucmVwYWlyQnJvd3Nlckhpc3RvcnlBbmRVcmxBZnRlckd1YXJkQ2FuY2VsbGF0aW9uKHRoaXMucG9wcGVkSGlzdG9yeVVybCwgdGhpcy5zdGFydGluZ1VybClcbiAgfVxuXG59XG4iXX0=
|
|
@@ -5,4 +5,4 @@ export class EventCleanUpSession extends NavigationSession {
|
|
|
5
5
|
lang.illegalState('onCanDeactivateInteractionCancelled not supported for event clean up states');
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtY2xlYW4tdXAtc2Vzc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL25hdmlnYXRpb24vc2Vzc2lvbi9ldmVudC1jbGVhbnVwL2V2ZW50LWNsZWFuLXVwLXNlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFELE1BQU0sT0FBZ0IsbUJBQW9CLFNBQVEsaUJBQWlCO0lBR2pFLHlDQUF5QyxDQUFDLE1BQWM7UUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyw2RUFBNkUsQ0FBQyxDQUFDO0lBQ25HLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxhbmcgfSBmcm9tICdAY29vbG9uL3R5cGVzY3JpcHQtdXRpbGl0aWVzJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXNzaW9uIH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1zZXNzaW9uJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEV2ZW50Q2xlYW5VcFNlc3Npb24gZXh0ZW5kcyBOYXZpZ2F0aW9uU2Vzc2lvbiB7XG5cblxuICBoYW5kbGVDYW5EZWFjdGl2YXRlQ2FuY2VsbGVkRXZlbnRTY2VuYXJpbyhuZXdVcmw6IHN0cmluZyk6IHZvaWQge1xuICAgIGxhbmcuaWxsZWdhbFN0YXRlKCdvbkNhbkRlYWN0aXZhdGVJbnRlcmFjdGlvbkNhbmNlbGxlZCBub3Qgc3VwcG9ydGVkIGZvciBldmVudCBjbGVhbiB1cCBzdGF0ZXMnKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -42,4 +42,4 @@ export class WaitUntilLeavingInteractionTransitionCancelled extends EventCleanUp
|
|
|
42
42
|
return false;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC11bnRpbC1sZWF2aW5nLWludGVyYWN0aW9uLXRyYW5zaXRpb24tY2FuY2VsbGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvbmF2aWdhdGlvbi9zZXNzaW9uL2V2ZW50LWNsZWFudXAvd2FpdC11bnRpbC1sZWF2aW5nLWludGVyYWN0aW9uLXRyYW5zaXRpb24tY2FuY2VsbGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRS9EOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyw4Q0FBK0MsU0FBUSxtQkFBbUI7SUFVaEU7SUFSWixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzVCLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUMzQixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLGdCQUFnQixDQUFTO0lBQ2hCLGlCQUFpQixHQUFHLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSwwQkFBMEIsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBRWxLLFlBQVksT0FBMEIsRUFDMUIsV0FBbUIsRUFDVix3QkFBZ0M7UUFDbkQsS0FBSyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztRQURULDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBUTtJQUVyRCxDQUFDO0lBRUQsV0FBVztJQUNGLGVBQWUsQ0FBQyxLQUFzQjtRQUM3QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO0lBQ0YsaUJBQWlCLENBQUMsS0FBdUI7UUFDaEQsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxXQUFXO0lBQ0YsV0FBVyxDQUFDLEtBQW9CO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7SUFDRixhQUFhLENBQUMsS0FBc0I7UUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztJQUNGLFVBQVUsQ0FBQyxLQUFzQjtRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFUSxLQUFLLENBQUMsa0JBQWtCLENBQUMsU0FBeUIsRUFBRSxVQUF1QixFQUFFLE9BQW9CO1FBQ3hHLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmF2aWdhdGlvbkNhbmNlbCwgTmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvbkVycm9yLCBOYXZpZ2F0aW9uU3RhcnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9nZ2VyLCBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFVybFNuYXBzaG90IH0gZnJvbSAnLi4vLi4vLi4vdXJsLXNuYXBzaG90JztcbmltcG9ydCB7IFN5bmNocm9uaXNlSW50ZXJhY3Rpb25Db250ZXh0SWRzV2l0aFJvdXRlIH0gZnJvbSAnLi4vaW50ZXJhY3Rpb25zL3N5bmNocm9uaXNlLWludGVyYWN0aW9uLWNvbnRleHQtaWRzLXdpdGgtcm91dGUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkNvbnRleHQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWNvbnRleHQnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblNlc3Npb24gfSBmcm9tICcuLi9uYXZpZ2F0aW9uLXNlc3Npb24nO1xuaW1wb3J0IHsgbGFuZyB9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgRXZlbnRDbGVhblVwU2Vzc2lvbiB9IGZyb20gJy4vZXZlbnQtY2xlYW4tdXAtc2Vzc2lvbic7XG5cbi8qKlxuICogVGhlIHNlcXVlbmNlIG9mIHJvdXRlciBldmVudHMgYXJlOlxuICogTmF2aWdhdGlvbkVycm9yIC0+IHVybCA9IHVybCBvZiBuYXZpZ2F0aW9uIGxpbmtcbiAqIE5hdmlnYXRpb25FbmRcbiAqIG9uUG9wU3RhdGUgdXJsID0gT3VyIGN1cnJlbnRVcmwgc2FucyBhbmQgaW50ZXJhY3Rpb24gcXVlcnkgcGFyYW1zXG4gKiBOYXZpZ2F0aW9uQ2FuY2VsIHVybCA9PSBzYW1lIGFzIGFib3ZlLlxuICovXG5leHBvcnQgY2xhc3MgV2FpdFVudGlsTGVhdmluZ0ludGVyYWN0aW9uVHJhbnNpdGlvbkNhbmNlbGxlZCBleHRlbmRzIEV2ZW50Q2xlYW5VcFNlc3Npb24ge1xuXG4gIHJlYWRvbmx5IGlzUG9wU3RhdGUgPSBmYWxzZTtcbiAgZmlyc3RDYW5jZWxIYW5kbGVkID0gZmFsc2U7XG4gIHBvcFN0YXRlSGFuZGxlZCA9IGZhbHNlO1xuICBwb3BTdGF0ZUV2ZW50VXJsOiBzdHJpbmc7XG4gIG92ZXJyaWRlIGRlYnVnUHJvcGVydHlLZXlzID0gWydpZGxlJywgJ3N0YXJ0aW5nVXJsJywgJ3BvcHBlZEhpc3RvcnlVcmwnLCAnbG9jYXRpb25DaGFuZ2VUcmlnZ2VyVXJsJywgJ3BvcFN0YXRlRXZlbnRVcmwnLCAnZmlyc3RDYW5jZWxIYW5kbGVkJywgJ3BvcFN0YXRlSGFuZGxlZCddO1xuXG4gIGNvbnN0cnVjdG9yKGNvbnRleHQ6IE5hdmlnYXRpb25Db250ZXh0LFxuICAgICAgICAgICAgICBzdGFydGluZ1VybDogc3RyaW5nLFxuICAgICAgICAgICAgICByZWFkb25seSBsb2NhdGlvbkNoYW5nZVRyaWdnZXJVcmw6IHN0cmluZykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0YXJ0aW5nVXJsKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIG92ZXJyaWRlIG9uUm91dGVyU3RhcnRlZChldmVudDogTmF2aWdhdGlvblN0YXJ0KTogdm9pZCB7XG4gICAgdGhpcy5pZ25vcmUoZXZlbnQpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb3ZlcnJpZGUgb25Sb3V0ZXJDYW5jZWxsZWQoZXZlbnQ6IE5hdmlnYXRpb25DYW5jZWwpOiB2b2lkIHtcbiAgICB0aGlzLnJlcGFpckJyb3dzZXJIaXN0b3J5QW5kVXJsQWZ0ZXJHdWFyZENhbmNlbGxhdGlvbih0aGlzLmxvY2F0aW9uQ2hhbmdlVHJpZ2dlclVybCwgdGhpcy5zdGFydGluZ1VybCk7XG4gICAgdGhpcy5jb250ZXh0LmZpbmlzaFJvdXRpbmdTZXNzaW9uKCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvdmVycmlkZSBvblJvdXRlckVuZChldmVudDogTmF2aWdhdGlvbkVuZCk6IHZvaWQge1xuICAgIHRoaXMuaWdub3JlKGV2ZW50KTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIG92ZXJyaWRlIG9uUm91dGVyRXJyb3IoZXZlbnQ6IE5hdmlnYXRpb25FcnJvcik6IHZvaWQge1xuICAgIHRoaXMuaWdub3JlKGV2ZW50KTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIG92ZXJyaWRlIG9uUG9wU3RhdGUoZXZlbnQ6IE5hdmlnYXRpb25TdGFydCk6IHZvaWQge1xuICAgIHRoaXMuaWdub3JlKGV2ZW50KTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGNhbkRlYWN0aXZhdGVQbGFjZShjb21wb25lbnQ6IFBsYWNlQ29tcG9uZW50LCBjdXJyZW50VXJsOiBVcmxTbmFwc2hvdCwgbmV4dFVybDogVXJsU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdD4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
|