@coolon/angular-ui-powerups 0.0.135 → 1.0.0-alpha.12
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/CHANGELOG.md +303 -0
- package/bundles/coolon-angular-ui-powerups.umd.js +1142 -6275
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js +16 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/coolon-angular-ui-powerups.js +1 -5
- package/esm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/esm2015/index.js +1 -5
- package/esm2015/index.js.map +1 -1
- package/esm2015/lib/angular-ui-powerups.module.js +32 -32
- package/esm2015/lib/angular-ui-powerups.module.js.map +1 -1
- package/esm2015/lib/angular-ui-powerups.module.metadata.json +1 -1
- package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
- package/esm2015/lib/animations/index.js +1 -5
- package/esm2015/lib/animations/index.js.map +1 -1
- package/esm2015/lib/animations/slide-animations.js +0 -8
- package/esm2015/lib/animations/slide-animations.js.map +1 -1
- package/esm2015/lib/components/components.module.js +39 -39
- package/esm2015/lib/components/components.module.js.map +1 -1
- package/esm2015/lib/components/components.module.metadata.json +1 -1
- package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
- package/esm2015/lib/components/disposable-component.js +8 -9
- package/esm2015/lib/components/disposable-component.js.map +1 -1
- package/esm2015/lib/components/disposable-component.metadata.json +1 -1
- package/esm2015/lib/components/forms/abstract-input.component.js +82 -114
- package/esm2015/lib/components/forms/abstract-input.component.js.map +1 -1
- package/esm2015/lib/components/forms/abstract-input.component.metadata.json +1 -1
- package/esm2015/lib/components/forms/number-input/number-input.component.js +12 -18
- package/esm2015/lib/components/forms/number-input/number-input.component.js.map +1 -1
- package/esm2015/lib/components/forms/password-input/password-input.component.js +12 -18
- package/esm2015/lib/components/forms/password-input/password-input.component.js.map +1 -1
- package/esm2015/lib/components/forms/select-input/select-input.component.js +38 -57
- package/esm2015/lib/components/forms/select-input/select-input.component.js.map +1 -1
- package/esm2015/lib/components/forms/select-input/select-input.component.metadata.json +1 -1
- package/esm2015/lib/components/forms/string-input/string-input.component.js +19 -41
- package/esm2015/lib/components/forms/string-input/string-input.component.js.map +1 -1
- package/esm2015/lib/components/index.js +13 -17
- package/esm2015/lib/components/index.js.map +1 -1
- package/esm2015/lib/components/noop/noop.component.js +12 -15
- package/esm2015/lib/components/noop/noop.component.js.map +1 -1
- package/esm2015/lib/components/resize-aware.component.js +17 -64
- package/esm2015/lib/components/resize-aware.component.js.map +1 -1
- package/esm2015/lib/components/resize-aware.component.metadata.json +1 -1
- package/esm2015/lib/components/scroll-container/scroll-container.component.js +12 -18
- package/esm2015/lib/components/scroll-container/scroll-container.component.js.map +1 -1
- package/esm2015/lib/components/types/bounds.class.js +0 -29
- package/esm2015/lib/components/types/bounds.class.js.map +1 -1
- package/esm2015/lib/components/types/dimension.class.js +0 -14
- package/esm2015/lib/components/types/dimension.class.js.map +1 -1
- package/esm2015/lib/components/types/point.class.js +0 -23
- package/esm2015/lib/components/types/point.class.js.map +1 -1
- package/esm2015/lib/directives/command.directive.js +31 -85
- package/esm2015/lib/directives/command.directive.js.map +1 -1
- package/esm2015/lib/directives/directives.module.js +28 -28
- package/esm2015/lib/directives/directives.module.js.map +1 -1
- package/esm2015/lib/directives/directives.module.metadata.json +1 -1
- package/esm2015/lib/directives/directives.module.ngfactory.js.map +1 -1
- package/esm2015/lib/directives/focus-binding.directive.js +41 -96
- package/esm2015/lib/directives/focus-binding.directive.js.map +1 -1
- package/esm2015/lib/directives/index.js +3 -7
- package/esm2015/lib/directives/index.js.map +1 -1
- package/esm2015/lib/interaction/abstract-interaction-context.js +4 -73
- package/esm2015/lib/interaction/abstract-interaction-context.js.map +1 -1
- package/esm2015/lib/interaction/activity-ref.js +2 -79
- package/esm2015/lib/interaction/activity-ref.js.map +1 -1
- package/esm2015/lib/interaction/activity.js +0 -72
- package/esm2015/lib/interaction/activity.js.map +1 -1
- package/esm2015/lib/interaction/alert.js +0 -22
- package/esm2015/lib/interaction/alert.js.map +1 -1
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +41 -187
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js +24 -74
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -1
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +13 -24
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +15 -62
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +13 -27
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +16 -71
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -1
- package/esm2015/lib/interaction/confirm.js +0 -16
- package/esm2015/lib/interaction/confirm.js.map +1 -1
- package/esm2015/lib/interaction/index.js +15 -24
- package/esm2015/lib/interaction/index.js.map +1 -1
- package/esm2015/lib/interaction/interaction-context.js +0 -50
- package/esm2015/lib/interaction/interaction-context.js.map +1 -1
- package/esm2015/lib/interaction/interaction.module.js +41 -41
- package/esm2015/lib/interaction/interaction.module.js.map +1 -1
- package/esm2015/lib/interaction/interaction.module.metadata.json +1 -1
- package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
- package/esm2015/lib/interaction/result.js +2 -23
- package/esm2015/lib/interaction/result.js.map +1 -1
- package/esm2015/lib/interaction/route-synchronisation-adapter.js +0 -16
- package/esm2015/lib/interaction/route-synchronisation-adapter.js.map +1 -1
- package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js +0 -43
- package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -1
- package/esm2015/lib/interaction/services/interaction.service.js +22 -172
- package/esm2015/lib/interaction/services/interaction.service.js.map +1 -1
- package/esm2015/lib/interaction/services/interaction.service.metadata.json +1 -1
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +17 -40
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js.map +1 -1
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.metadata.json +1 -1
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js +7 -86
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js.map +1 -1
- package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.metadata.json +1 -1
- package/esm2015/lib/interaction/services/modal-interaction-context.factory.js +0 -16
- package/esm2015/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
- package/esm2015/lib/place/components/abstract-place-navigation.component.js +36 -105
- package/esm2015/lib/place/components/abstract-place-navigation.component.js.map +1 -1
- package/esm2015/lib/place/components/busy-overlay/busy-overlay.component.js +17 -34
- package/esm2015/lib/place/components/busy-overlay/busy-overlay.component.js.map +1 -1
- package/esm2015/lib/place/components/empty-state/empty-state.component.js +12 -18
- package/esm2015/lib/place/components/empty-state/empty-state.component.js.map +1 -1
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +16 -33
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +52 -240
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
- package/esm2015/lib/place/components/place-outlet/route-animations.js +0 -12
- package/esm2015/lib/place/components/place-outlet/route-animations.js.map +1 -1
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +12 -17
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
- package/esm2015/lib/place/guards/consolidated-param-map.js +9 -92
- package/esm2015/lib/place/guards/consolidated-param-map.js.map +1 -1
- package/esm2015/lib/place/guards/noop-auth-guard.service.js +12 -21
- package/esm2015/lib/place/guards/noop-auth-guard.service.js.map +1 -1
- package/esm2015/lib/place/guards/noop-auth-guard.service.metadata.json +1 -1
- package/esm2015/lib/place/guards/place.guard.js +10 -119
- package/esm2015/lib/place/guards/place.guard.js.map +1 -1
- package/esm2015/lib/place/index.js +38 -46
- package/esm2015/lib/place/index.js.map +1 -1
- package/esm2015/lib/place/nav-item.js +0 -22
- package/esm2015/lib/place/nav-item.js.map +1 -1
- package/esm2015/lib/place/navigation/place-component-deactivation-handler.js +3 -49
- package/esm2015/lib/place/navigation/place-component-deactivation-handler.js.map +1 -1
- package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js +0 -23
- package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -1
- package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +0 -11
- package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -1
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +2 -51
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -1
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +2 -54
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -1
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +2 -60
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -1
- package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js +0 -24
- package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -1
- package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +1 -19
- package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -1
- package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +0 -55
- package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -1
- package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +4 -60
- package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -1
- package/esm2015/lib/place/navigation/session/navigating.js +0 -31
- package/esm2015/lib/place/navigation/session/navigating.js.map +1 -1
- package/esm2015/lib/place/navigation/session/navigation-context.js +0 -24
- package/esm2015/lib/place/navigation/session/navigation-context.js.map +1 -1
- package/esm2015/lib/place/navigation/session/navigation-session.js +12 -178
- package/esm2015/lib/place/navigation/session/navigation-session.js.map +1 -1
- package/esm2015/lib/place/navigation/session/pop-state-navigation.js +0 -16
- package/esm2015/lib/place/navigation/session/pop-state-navigation.js.map +1 -1
- package/esm2015/lib/place/place-component.js +22 -107
- package/esm2015/lib/place/place-component.js.map +1 -1
- package/esm2015/lib/place/place-component.metadata.json +1 -1
- package/esm2015/lib/place/place-config.js +0 -13
- package/esm2015/lib/place/place-config.js.map +1 -1
- package/esm2015/lib/place/place-definition.js +26 -163
- package/esm2015/lib/place/place-definition.js.map +1 -1
- package/esm2015/lib/place/place-history.js +11 -38
- package/esm2015/lib/place/place-history.js.map +1 -1
- package/esm2015/lib/place/place-history.metadata.json +1 -1
- package/esm2015/lib/place/place-router.js +38 -247
- package/esm2015/lib/place/place-router.js.map +1 -1
- package/esm2015/lib/place/place-router.metadata.json +1 -1
- package/esm2015/lib/place/place.decorator.js +3 -38
- package/esm2015/lib/place/place.decorator.js.map +1 -1
- package/esm2015/lib/place/place.module.js +40 -42
- package/esm2015/lib/place/place.module.js.map +1 -1
- package/esm2015/lib/place/place.module.metadata.json +1 -1
- package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
- package/esm2015/lib/place/route/formatter.js +0 -30
- package/esm2015/lib/place/route/formatter.js.map +1 -1
- package/esm2015/lib/place/route/json-types.js +0 -12
- package/esm2015/lib/place/route/json-types.js.map +1 -1
- package/esm2015/lib/place/route/parameter-decorators.js +14 -133
- package/esm2015/lib/place/route/parameter-decorators.js.map +1 -1
- package/esm2015/lib/place/route/parameter-definition.class.js +2 -147
- package/esm2015/lib/place/route/parameter-definition.class.js.map +1 -1
- package/esm2015/lib/place/route/parameter-sanitiser.js +0 -18
- package/esm2015/lib/place/route/parameter-sanitiser.js.map +1 -1
- package/esm2015/lib/place/route/parameter-snapshot.js +0 -19
- package/esm2015/lib/place/route/parameter-snapshot.js.map +1 -1
- package/esm2015/lib/place/route/visit-sanitiser.js +2 -47
- package/esm2015/lib/place/route/visit-sanitiser.js.map +1 -1
- package/esm2015/lib/place/url-service.js +13 -68
- package/esm2015/lib/place/url-service.js.map +1 -1
- package/esm2015/lib/place/url-service.metadata.json +1 -1
- package/esm2015/lib/place/url-snapshot.js +3 -86
- package/esm2015/lib/place/url-snapshot.js.map +1 -1
- package/esm2015/lib/place/visit.js +5 -73
- package/esm2015/lib/place/visit.js.map +1 -1
- package/esm2015/public_api.js +6 -10
- package/esm2015/public_api.js.map +1 -1
- package/esm5/coolon-angular-ui-powerups.js +1 -5
- package/esm5/coolon-angular-ui-powerups.js.map +1 -1
- package/esm5/index.js +1 -5
- package/esm5/index.js.map +1 -1
- package/esm5/lib/angular-ui-powerups.module.js +29 -30
- package/esm5/lib/angular-ui-powerups.module.js.map +1 -1
- package/esm5/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
- package/esm5/lib/animations/index.js +1 -5
- package/esm5/lib/animations/index.js.map +1 -1
- package/esm5/lib/animations/slide-animations.js +0 -8
- package/esm5/lib/animations/slide-animations.js.map +1 -1
- package/esm5/lib/components/components.module.js +36 -37
- package/esm5/lib/components/components.module.js.map +1 -1
- package/esm5/lib/components/components.module.ngfactory.js.map +1 -1
- package/esm5/lib/components/disposable-component.js +7 -13
- package/esm5/lib/components/disposable-component.js.map +1 -1
- package/esm5/lib/components/forms/abstract-input.component.js +95 -157
- package/esm5/lib/components/forms/abstract-input.component.js.map +1 -1
- package/esm5/lib/components/forms/number-input/number-input.component.js +11 -22
- package/esm5/lib/components/forms/number-input/number-input.component.js.map +1 -1
- package/esm5/lib/components/forms/password-input/password-input.component.js +11 -22
- package/esm5/lib/components/forms/password-input/password-input.component.js.map +1 -1
- package/esm5/lib/components/forms/select-input/select-input.component.js +38 -61
- package/esm5/lib/components/forms/select-input/select-input.component.js.map +1 -1
- package/esm5/lib/components/forms/string-input/string-input.component.js +19 -45
- package/esm5/lib/components/forms/string-input/string-input.component.js.map +1 -1
- package/esm5/lib/components/index.js +13 -17
- package/esm5/lib/components/index.js.map +1 -1
- package/esm5/lib/components/noop/noop.component.js +9 -13
- package/esm5/lib/components/noop/noop.component.js.map +1 -1
- package/esm5/lib/components/resize-aware.component.js +21 -80
- package/esm5/lib/components/resize-aware.component.js.map +1 -1
- package/esm5/lib/components/scroll-container/scroll-container.component.js +10 -20
- package/esm5/lib/components/scroll-container/scroll-container.component.js.map +1 -1
- package/esm5/lib/components/types/bounds.class.js +3 -30
- package/esm5/lib/components/types/bounds.class.js.map +1 -1
- package/esm5/lib/components/types/dimension.class.js +0 -10
- package/esm5/lib/components/types/dimension.class.js.map +1 -1
- package/esm5/lib/components/types/point.class.js +2 -30
- package/esm5/lib/components/types/point.class.js.map +1 -1
- package/esm5/lib/directives/command.directive.js +37 -103
- package/esm5/lib/directives/command.directive.js.map +1 -1
- package/esm5/lib/directives/directives.module.js +25 -26
- package/esm5/lib/directives/directives.module.js.map +1 -1
- package/esm5/lib/directives/directives.module.ngfactory.js.map +1 -1
- package/esm5/lib/directives/focus-binding.directive.js +50 -147
- package/esm5/lib/directives/focus-binding.directive.js.map +1 -1
- package/esm5/lib/directives/index.js +3 -7
- package/esm5/lib/directives/index.js.map +1 -1
- package/esm5/lib/interaction/abstract-interaction-context.js +7 -114
- package/esm5/lib/interaction/abstract-interaction-context.js.map +1 -1
- package/esm5/lib/interaction/activity-ref.js +12 -109
- package/esm5/lib/interaction/activity-ref.js.map +1 -1
- package/esm5/lib/interaction/activity.js +12 -121
- package/esm5/lib/interaction/activity.js.map +1 -1
- package/esm5/lib/interaction/alert.js +0 -22
- package/esm5/lib/interaction/alert.js.map +1 -1
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js +64 -330
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
- package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js +26 -79
- package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -1
- package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js +12 -25
- package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
- package/esm5/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +17 -72
- package/esm5/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
- package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +13 -32
- package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
- package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +24 -117
- package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -1
- package/esm5/lib/interaction/confirm.js +0 -16
- package/esm5/lib/interaction/confirm.js.map +1 -1
- package/esm5/lib/interaction/index.js +15 -24
- package/esm5/lib/interaction/index.js.map +1 -1
- package/esm5/lib/interaction/interaction-context.js +0 -50
- package/esm5/lib/interaction/interaction-context.js.map +1 -1
- package/esm5/lib/interaction/interaction.module.js +38 -39
- package/esm5/lib/interaction/interaction.module.js.map +1 -1
- package/esm5/lib/interaction/interaction.module.ngfactory.js.map +1 -1
- package/esm5/lib/interaction/result.js +2 -23
- package/esm5/lib/interaction/result.js.map +1 -1
- package/esm5/lib/interaction/route-synchronisation-adapter.js +0 -16
- package/esm5/lib/interaction/route-synchronisation-adapter.js.map +1 -1
- package/esm5/lib/interaction/services/interaction-service-routing-adapter.js +6 -73
- package/esm5/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -1
- package/esm5/lib/interaction/services/interaction.service.js +33 -290
- package/esm5/lib/interaction/services/interaction.service.js.map +1 -1
- package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +16 -41
- package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js.map +1 -1
- package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js +14 -109
- package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js.map +1 -1
- package/esm5/lib/interaction/services/modal-interaction-context.factory.js +1 -23
- package/esm5/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
- package/esm5/lib/place/components/abstract-place-navigation.component.js +37 -115
- package/esm5/lib/place/components/abstract-place-navigation.component.js.map +1 -1
- package/esm5/lib/place/components/busy-overlay/busy-overlay.component.js +16 -37
- package/esm5/lib/place/components/busy-overlay/busy-overlay.component.js.map +1 -1
- package/esm5/lib/place/components/empty-state/empty-state.component.js +10 -20
- package/esm5/lib/place/components/empty-state/empty-state.component.js.map +1 -1
- package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +17 -42
- package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js +64 -314
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
- package/esm5/lib/place/components/place-outlet/route-animations.js +0 -12
- package/esm5/lib/place/components/place-outlet/route-animations.js.map +1 -1
- package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +10 -14
- package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
- package/esm5/lib/place/guards/consolidated-param-map.js +17 -117
- package/esm5/lib/place/guards/consolidated-param-map.js.map +1 -1
- package/esm5/lib/place/guards/noop-auth-guard.service.js +11 -26
- package/esm5/lib/place/guards/noop-auth-guard.service.js.map +1 -1
- package/esm5/lib/place/guards/place.guard.js +24 -172
- package/esm5/lib/place/guards/place.guard.js.map +1 -1
- package/esm5/lib/place/index.js +38 -46
- package/esm5/lib/place/index.js.map +1 -1
- package/esm5/lib/place/nav-item.js +0 -22
- package/esm5/lib/place/nav-item.js.map +1 -1
- package/esm5/lib/place/navigation/place-component-deactivation-handler.js +11 -86
- package/esm5/lib/place/navigation/place-component-deactivation-handler.js.map +1 -1
- package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js +4 -34
- package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -1
- package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +4 -25
- package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -1
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +11 -110
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -1
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +12 -147
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -1
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +11 -126
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -1
- package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js +7 -71
- package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -1
- package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +6 -49
- package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -1
- package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +11 -120
- package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -1
- package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +13 -106
- package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -1
- package/esm5/lib/place/navigation/session/navigating.js +6 -53
- package/esm5/lib/place/navigation/session/navigating.js.map +1 -1
- package/esm5/lib/place/navigation/session/navigation-context.js +0 -17
- package/esm5/lib/place/navigation/session/navigation-context.js.map +1 -1
- package/esm5/lib/place/navigation/session/navigation-session.js +39 -306
- package/esm5/lib/place/navigation/session/navigation-session.js.map +1 -1
- package/esm5/lib/place/navigation/session/pop-state-navigation.js +5 -33
- package/esm5/lib/place/navigation/session/pop-state-navigation.js.map +1 -1
- package/esm5/lib/place/place-component.js +30 -142
- package/esm5/lib/place/place-component.js.map +1 -1
- package/esm5/lib/place/place-config.js +0 -13
- package/esm5/lib/place/place-config.js.map +1 -1
- package/esm5/lib/place/place-definition.js +37 -219
- package/esm5/lib/place/place-definition.js.map +1 -1
- package/esm5/lib/place/place-history.js +11 -56
- package/esm5/lib/place/place-history.js.map +1 -1
- package/esm5/lib/place/place-router.js +59 -372
- package/esm5/lib/place/place-router.js.map +1 -1
- package/esm5/lib/place/place.decorator.js +3 -38
- package/esm5/lib/place/place.decorator.js.map +1 -1
- package/esm5/lib/place/place.module.js +37 -40
- package/esm5/lib/place/place.module.js.map +1 -1
- package/esm5/lib/place/place.module.ngfactory.js.map +1 -1
- package/esm5/lib/place/route/formatter.js +6 -60
- package/esm5/lib/place/route/formatter.js.map +1 -1
- package/esm5/lib/place/route/json-types.js +0 -12
- package/esm5/lib/place/route/json-types.js.map +1 -1
- package/esm5/lib/place/route/parameter-decorators.js +14 -133
- package/esm5/lib/place/route/parameter-decorators.js.map +1 -1
- package/esm5/lib/place/route/parameter-definition.class.js +21 -222
- package/esm5/lib/place/route/parameter-definition.class.js.map +1 -1
- package/esm5/lib/place/route/parameter-sanitiser.js +0 -18
- package/esm5/lib/place/route/parameter-sanitiser.js.map +1 -1
- package/esm5/lib/place/route/parameter-snapshot.js +0 -19
- package/esm5/lib/place/route/parameter-snapshot.js.map +1 -1
- package/esm5/lib/place/route/visit-sanitiser.js +4 -42
- package/esm5/lib/place/route/visit-sanitiser.js.map +1 -1
- package/esm5/lib/place/url-service.js +20 -119
- package/esm5/lib/place/url-service.js.map +1 -1
- package/esm5/lib/place/url-snapshot.js +15 -143
- package/esm5/lib/place/url-snapshot.js.map +1 -1
- package/esm5/lib/place/visit.js +14 -132
- package/esm5/lib/place/visit.js.map +1 -1
- package/esm5/public_api.js +6 -10
- package/esm5/public_api.js.map +1 -1
- package/fesm2015/coolon-angular-ui-powerups.js +861 -4526
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +1129 -6274
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/components/forms/abstract-input.component.d.ts +9 -9
- package/lib/components/resize-aware.component.d.ts +3 -3
- package/lib/directives/command.directive.d.ts +4 -2
- package/lib/directives/focus-binding.directive.d.ts +1 -1
- package/lib/interaction/activity-ref.d.ts +2 -2
- package/lib/interaction/activity.d.ts +2 -2
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +2 -2
- package/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.d.ts +3 -2
- package/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.d.ts +1 -1
- package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +1 -1
- package/lib/interaction/services/interaction.service.d.ts +1 -1
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +1 -1
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +1 -1
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +4 -4
- package/lib/place/guards/consolidated-param-map.d.ts +1 -1
- package/lib/place/navigation/place-component-deactivation-handler.d.ts +2 -2
- package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +1 -1
- package/lib/place/navigation/session/navigation-session.d.ts +4 -4
- package/lib/place/place-component.d.ts +2 -2
- package/lib/place/place-router.d.ts +3 -3
- package/lib/place/route/formatter.d.ts +4 -3
- package/lib/place/route/parameter-definition.class.d.ts +2 -2
- package/package.json +10 -10
- package/schematics/place-routes/place-builder.js +4 -2
- package/schematics/place-routes/place-builder.js.map +1 -1
- package/schematics/place-routes/place-class-scanner.d.ts +3 -3
- package/schematics/place-routes/place-class-scanner.js +1 -1
- package/schematics/place-routes/place-class-scanner.js.map +1 -1
- package/schematics/place-routes/place-def.d.ts +9 -9
- /package/{styles → assets}/styles.scss +0 -0
package/esm2015/lib/interaction/components/activity-container/activity-container.component.js
CHANGED
|
@@ -1,46 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import * as tslib_1 from "tslib";
|
|
1
|
+
import { __awaiter, __decorate, __metadata } from "tslib";
|
|
6
2
|
import { Component, Input, QueryList, ViewChild, ViewChildren } from '@angular/core';
|
|
7
|
-
import { MatTabGroup } from '@angular/material';
|
|
3
|
+
import { MatTabGroup } from '@angular/material/tabs';
|
|
8
4
|
import { assert, Dsl, GarbageCollector, Trace } from '@coolon/pectin';
|
|
9
5
|
import { lang } from '@coolon/typescript-utilities';
|
|
10
6
|
import _ from 'lodash';
|
|
11
7
|
import { AbstractInteractionContext } from '../../abstract-interaction-context';
|
|
12
8
|
import { ActivityRef } from '../../activity-ref';
|
|
13
9
|
import { ActivityOutletComponent } from './activity-outlet/activity-outlet.component';
|
|
14
|
-
|
|
15
|
-
* @template D, R, E
|
|
16
|
-
*/
|
|
17
|
-
export class ActivityContainerComponent extends AbstractInteractionContext {
|
|
10
|
+
let ActivityContainerComponent = class ActivityContainerComponent extends AbstractInteractionContext {
|
|
18
11
|
constructor() {
|
|
19
12
|
super();
|
|
20
13
|
this.dynamicHeight = false;
|
|
21
14
|
this.activityTabs = [];
|
|
22
15
|
this.garbage = new GarbageCollector();
|
|
23
16
|
}
|
|
24
|
-
/**
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
17
|
ngOnInit() {
|
|
28
18
|
}
|
|
29
|
-
/**
|
|
30
|
-
* @return {?}
|
|
31
|
-
*/
|
|
32
19
|
ngAfterViewInit() {
|
|
33
20
|
const { chain, observe } = Dsl.disposeWith(this);
|
|
34
|
-
observe.valuesFrom(this.tabs.animationDone).subscribe((
|
|
35
|
-
* @return {?}
|
|
36
|
-
*/
|
|
37
|
-
() => this.onAnimationFinished()));
|
|
21
|
+
observe.valuesFrom(this.tabs.animationDone).subscribe(() => this.onAnimationFinished());
|
|
38
22
|
}
|
|
39
|
-
/**
|
|
40
|
-
* @param {?} identifier
|
|
41
|
-
* @param {?} api
|
|
42
|
-
* @return {?}
|
|
43
|
-
*/
|
|
44
23
|
initialise(identifier, api) {
|
|
45
24
|
assert.isFalsey(this.isInitialised());
|
|
46
25
|
assert.notNil(identifier);
|
|
@@ -48,64 +27,40 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
48
27
|
this._identifier = identifier;
|
|
49
28
|
this.interactionServiceApi = api;
|
|
50
29
|
}
|
|
51
|
-
/**
|
|
52
|
-
* @return {?}
|
|
53
|
-
*/
|
|
54
30
|
get identifier() {
|
|
55
31
|
return this._identifier;
|
|
56
32
|
}
|
|
57
|
-
/**
|
|
58
|
-
* @return {?}
|
|
59
|
-
*/
|
|
60
33
|
isInitialised() {
|
|
61
34
|
return !!this.identifier;
|
|
62
35
|
}
|
|
63
36
|
/**
|
|
64
37
|
* Returns true if an activity is currently running.
|
|
65
|
-
* @return {?}
|
|
66
38
|
*/
|
|
67
39
|
isActive() {
|
|
68
40
|
return this.getActiveActivityCount() > 0;
|
|
69
41
|
}
|
|
70
|
-
/**
|
|
71
|
-
* @template T
|
|
72
|
-
* @param {?} disposable
|
|
73
|
-
* @return {?}
|
|
74
|
-
*/
|
|
75
42
|
registerDisposable(disposable) {
|
|
76
43
|
return this.garbage.registerDisposable(disposable);
|
|
77
44
|
}
|
|
78
|
-
/**
|
|
79
|
-
* @return {?}
|
|
80
|
-
*/
|
|
81
45
|
dispose() {
|
|
82
46
|
// TODO: think about auto cancelling any outstanding activity on dispose.
|
|
83
47
|
// See NavigationState.Navigating for a use-case.
|
|
84
48
|
assert.isFalsey(this.isActive());
|
|
85
49
|
this.garbage.dispose();
|
|
86
50
|
}
|
|
87
|
-
/**
|
|
88
|
-
* @return {?}
|
|
89
|
-
*/
|
|
90
51
|
getActiveActivityRef() {
|
|
91
52
|
if (!this.isActive()) {
|
|
92
53
|
lang.illegalState('no activity in progress');
|
|
93
54
|
}
|
|
94
|
-
return _.findLast(this.activityTabs, (
|
|
95
|
-
* @param {?} tab
|
|
96
|
-
* @return {?}
|
|
97
|
-
*/
|
|
98
|
-
tab => !tab.isComplete()));
|
|
55
|
+
return _.findLast(this.activityTabs, tab => !tab.isComplete());
|
|
99
56
|
}
|
|
100
57
|
/**
|
|
101
58
|
* Cancels the current activity and returns true the context is no longer active, false if
|
|
102
59
|
* there is still another activity running.
|
|
103
|
-
* @return {?}
|
|
104
60
|
*/
|
|
105
61
|
// @Trace()
|
|
106
62
|
cancelActiveActivity() {
|
|
107
|
-
return
|
|
108
|
-
/** @type {?} */
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
109
64
|
const activity = this.getActiveActivityRef();
|
|
110
65
|
activity.cancel();
|
|
111
66
|
if (this.isCleaningUp()) {
|
|
@@ -118,23 +73,9 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
118
73
|
}
|
|
119
74
|
// TODO: this handling of multiple nested activities is only used by the activity component and is not a general case.
|
|
120
75
|
// @Trace()
|
|
121
|
-
/**
|
|
122
|
-
* @protected
|
|
123
|
-
* @template D1, R1, E1
|
|
124
|
-
* @param {?} activityType
|
|
125
|
-
* @param {?} data
|
|
126
|
-
* @param {?} disableClose
|
|
127
|
-
* @return {?}
|
|
128
|
-
*/
|
|
129
76
|
createAndLaunchActivity(activityType, data, disableClose) {
|
|
130
77
|
assert.isTruthy(this.isInitialised()); // make sure we've been initialised
|
|
131
|
-
|
|
132
|
-
/** @type {?} */
|
|
133
|
-
const activityRef = new ActivityRef(activityType, data, (/**
|
|
134
|
-
* @return {?}
|
|
135
|
-
*/
|
|
136
|
-
() => {
|
|
137
|
-
/** @type {?} */
|
|
78
|
+
const activityRef = new ActivityRef(activityType, data, () => {
|
|
138
79
|
const activeActivityCount = this.getActiveActivityCount() > 0;
|
|
139
80
|
if (activeActivityCount) {
|
|
140
81
|
this.triggerTabSynchronisation();
|
|
@@ -142,7 +83,7 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
142
83
|
else {
|
|
143
84
|
this.finishAndStartCleanup();
|
|
144
85
|
}
|
|
145
|
-
})
|
|
86
|
+
});
|
|
146
87
|
this.launchActivity(activityRef);
|
|
147
88
|
// if this is the first activity let the interaction service know.
|
|
148
89
|
if (this.activityTabs.length === 1) {
|
|
@@ -151,184 +92,97 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
151
92
|
}
|
|
152
93
|
return activityRef.activityResult;
|
|
153
94
|
}
|
|
154
|
-
/**
|
|
155
|
-
* @private
|
|
156
|
-
* @return {?}
|
|
157
|
-
*/
|
|
158
95
|
getActiveActivityCount() {
|
|
159
|
-
return this.activityTabs.filter((
|
|
160
|
-
* @param {?} ref
|
|
161
|
-
* @return {?}
|
|
162
|
-
*/
|
|
163
|
-
ref => !ref.isComplete())).length;
|
|
96
|
+
return this.activityTabs.filter(ref => !ref.isComplete()).length;
|
|
164
97
|
}
|
|
165
98
|
/**
|
|
166
99
|
* Checks if this interaction context has finished an is in the process of waiting
|
|
167
100
|
* for all the infrastructure (including route updates) to be completed.
|
|
168
|
-
* @return {?}
|
|
169
101
|
*/
|
|
170
102
|
isCleaningUp() {
|
|
171
103
|
return !!this._deferredCleanUp;
|
|
172
104
|
}
|
|
173
|
-
/**
|
|
174
|
-
* @return {?}
|
|
175
|
-
*/
|
|
176
105
|
waitForInteractionContextCleanupToFinish() {
|
|
177
|
-
return
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
178
107
|
return this._deferredCleanUp ?
|
|
179
108
|
this._deferredCleanUp :
|
|
180
109
|
true;
|
|
181
110
|
});
|
|
182
111
|
}
|
|
183
112
|
// @Trace()
|
|
184
|
-
/**
|
|
185
|
-
* @private
|
|
186
|
-
* @return {?}
|
|
187
|
-
*/
|
|
188
113
|
finishAndStartCleanup() {
|
|
189
114
|
if (!this._deferredCleanUp) {
|
|
190
|
-
/** @type {?} */
|
|
191
115
|
const promise = this.interactionServiceApi.notifyFinished(this);
|
|
192
116
|
this._deferredCleanUp = promise
|
|
193
|
-
.finally((
|
|
194
|
-
* @return {?}
|
|
195
|
-
*/
|
|
196
|
-
() => {
|
|
117
|
+
.finally(() => {
|
|
197
118
|
this._deferredCleanUp = null;
|
|
198
|
-
})
|
|
119
|
+
});
|
|
199
120
|
}
|
|
200
121
|
}
|
|
201
122
|
// @Trace()
|
|
202
|
-
/**
|
|
203
|
-
* @template D1, R1, E1
|
|
204
|
-
* @param {?} activityRef
|
|
205
|
-
* @return {?}
|
|
206
|
-
*/
|
|
207
123
|
launchActivity(activityRef) {
|
|
208
|
-
|
|
209
|
-
const cleanedTabs = this.activityTabs.filter((/**
|
|
210
|
-
* @param {?} tab
|
|
211
|
-
* @return {?}
|
|
212
|
-
*/
|
|
213
|
-
tab => !tab.isComplete()));
|
|
124
|
+
const cleanedTabs = this.activityTabs.filter(tab => !tab.isComplete());
|
|
214
125
|
this.activityTabs = cleanedTabs.concat(activityRef);
|
|
215
126
|
this.tabs.selectedIndex = this.activityTabs.length;
|
|
216
127
|
}
|
|
217
|
-
/**
|
|
218
|
-
* @param {?} index
|
|
219
|
-
* @param {?} activityRef
|
|
220
|
-
* @return {?}
|
|
221
|
-
*/
|
|
222
128
|
activityIndex(index, activityRef) {
|
|
223
129
|
return index;
|
|
224
130
|
}
|
|
225
131
|
;
|
|
226
132
|
// @Trace()
|
|
227
|
-
/**
|
|
228
|
-
* @private
|
|
229
|
-
* @return {?}
|
|
230
|
-
*/
|
|
231
133
|
onAnimationFinished() {
|
|
232
134
|
this.getSelectedOutlet().component.onActivityReady();
|
|
233
|
-
this.activityTabs = this.activityTabs.filter((
|
|
234
|
-
* @param {?} tab
|
|
235
|
-
* @return {?}
|
|
236
|
-
*/
|
|
237
|
-
tab => !tab.isComplete()));
|
|
135
|
+
this.activityTabs = this.activityTabs.filter(tab => !tab.isComplete());
|
|
238
136
|
}
|
|
239
137
|
/**
|
|
240
138
|
* Synchronises the selected tab index. Returns true if there was no change to the selected index.
|
|
241
|
-
* @private
|
|
242
|
-
* @return {?}
|
|
243
139
|
*/
|
|
244
140
|
// @Trace()
|
|
245
141
|
synchroniseSelectedTabIndex() {
|
|
246
|
-
/** @type {?} */
|
|
247
142
|
const previousIndex = this.tabs.selectedIndex;
|
|
248
|
-
/** @type {?} */
|
|
249
143
|
const newIndex = this.getActiveActivityCount() - 1;
|
|
250
144
|
this.tabs.selectedIndex = newIndex;
|
|
251
145
|
return previousIndex === newIndex;
|
|
252
146
|
}
|
|
253
|
-
/**
|
|
254
|
-
* @private
|
|
255
|
-
* @return {?}
|
|
256
|
-
*/
|
|
257
147
|
getSelectedOutlet() {
|
|
258
148
|
return this.activityOutlets.toArray()[this.tabs.selectedIndex];
|
|
259
149
|
}
|
|
260
150
|
// @Trace()
|
|
261
|
-
/**
|
|
262
|
-
* @private
|
|
263
|
-
* @return {?}
|
|
264
|
-
*/
|
|
265
151
|
triggerTabSynchronisation() {
|
|
266
152
|
if (this.syncSelectedTabTimeout) {
|
|
267
153
|
clearTimeout(this.syncSelectedTabTimeout);
|
|
268
154
|
}
|
|
269
|
-
this.syncSelectedTabTimeout = setTimeout((
|
|
270
|
-
* @return {?}
|
|
271
|
-
*/
|
|
272
|
-
() => {
|
|
155
|
+
this.syncSelectedTabTimeout = setTimeout(() => {
|
|
273
156
|
this.syncSelectedTabTimeout = null;
|
|
274
157
|
this.synchroniseSelectedTabIndex();
|
|
275
|
-
}
|
|
158
|
+
}, 75);
|
|
276
159
|
}
|
|
277
|
-
}
|
|
278
|
-
ActivityContainerComponent.decorators = [
|
|
279
|
-
{ type: Component, args: [{
|
|
280
|
-
selector: 'aup-activity-container',
|
|
281
|
-
template: "<mat-tab-group #tabs no-tab-header [dynamicHeight]=\"dynamicHeight\" [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs; trackBy: activityIndex\" >\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n",
|
|
282
|
-
styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]
|
|
283
|
-
}] }
|
|
284
|
-
];
|
|
285
|
-
/** @nocollapse */
|
|
286
|
-
ActivityContainerComponent.ctorParameters = () => [];
|
|
287
|
-
ActivityContainerComponent.propDecorators = {
|
|
288
|
-
dynamicHeight: [{ type: Input }],
|
|
289
|
-
tabs: [{ type: ViewChild, args: ['tabs', { static: true },] }],
|
|
290
|
-
activityOutlets: [{ type: ViewChildren, args: [ActivityOutletComponent,] }]
|
|
291
160
|
};
|
|
292
|
-
|
|
161
|
+
__decorate([
|
|
162
|
+
Input(),
|
|
163
|
+
__metadata("design:type", Object)
|
|
164
|
+
], ActivityContainerComponent.prototype, "dynamicHeight", void 0);
|
|
165
|
+
__decorate([
|
|
166
|
+
ViewChild('tabs', { static: true }),
|
|
167
|
+
__metadata("design:type", MatTabGroup)
|
|
168
|
+
], ActivityContainerComponent.prototype, "tabs", void 0);
|
|
169
|
+
__decorate([
|
|
170
|
+
ViewChildren(ActivityOutletComponent),
|
|
171
|
+
__metadata("design:type", QueryList)
|
|
172
|
+
], ActivityContainerComponent.prototype, "activityOutlets", void 0);
|
|
173
|
+
__decorate([
|
|
293
174
|
Trace(),
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
175
|
+
__metadata("design:type", Function),
|
|
176
|
+
__metadata("design:paramtypes", []),
|
|
177
|
+
__metadata("design:returntype", void 0)
|
|
297
178
|
], ActivityContainerComponent.prototype, "dispose", null);
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
/**
|
|
308
|
-
* @type {?}
|
|
309
|
-
* @private
|
|
310
|
-
*/
|
|
311
|
-
ActivityContainerComponent.prototype._identifier;
|
|
312
|
-
/**
|
|
313
|
-
* @type {?}
|
|
314
|
-
* @private
|
|
315
|
-
*/
|
|
316
|
-
ActivityContainerComponent.prototype._deferredCleanUp;
|
|
317
|
-
/**
|
|
318
|
-
* @type {?}
|
|
319
|
-
* @private
|
|
320
|
-
*/
|
|
321
|
-
ActivityContainerComponent.prototype.interactionServiceApi;
|
|
322
|
-
/**
|
|
323
|
-
* @type {?}
|
|
324
|
-
* @private
|
|
325
|
-
*/
|
|
326
|
-
ActivityContainerComponent.prototype.garbage;
|
|
327
|
-
/**
|
|
328
|
-
* @type {?}
|
|
329
|
-
* @private
|
|
330
|
-
*/
|
|
331
|
-
ActivityContainerComponent.prototype.syncSelectedTabTimeout;
|
|
332
|
-
/* Skipping unhandled member: ;*/
|
|
333
|
-
}
|
|
179
|
+
ActivityContainerComponent = __decorate([
|
|
180
|
+
Component({
|
|
181
|
+
selector: 'aup-activity-container',
|
|
182
|
+
template: "<mat-tab-group #tabs no-tab-header [dynamicHeight]=\"dynamicHeight\" [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs; trackBy: activityIndex\" >\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n",
|
|
183
|
+
styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]
|
|
184
|
+
}),
|
|
185
|
+
__metadata("design:paramtypes", [])
|
|
186
|
+
], ActivityContainerComponent);
|
|
187
|
+
export { ActivityContainerComponent };
|
|
334
188
|
//# sourceMappingURL=activity-container.component.js.map
|
package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-container.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/activity-container/activity-container.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { AfterViewInit, Component, Input, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';\nimport { MatTabGroup } from '@angular/material';\nimport { assert, Constructable, Disposable, Dsl, GarbageCollector, Trace, ValueModel } from '@coolon/pectin';\nimport { lang } from '@coolon/typescript-utilities';\nimport _ from 'lodash';\nimport { AbstractInteractionContext } from '../../abstract-interaction-context';\nimport { Activity } from '../../activity';\nimport { ActivityRef } from '../../activity-ref';\nimport { InteractionService } from '../../services/interaction.service';\nimport { ActivityOutletComponent } from './activity-outlet/activity-outlet.component';\n\n@Component({\n selector: 'aup-activity-container',\n templateUrl: './activity-container.component.html',\n styleUrls: ['./activity-container.component.scss']\n})\nexport class ActivityContainerComponent<D, R, E> extends AbstractInteractionContext implements OnInit, AfterViewInit {\n\n @Input()\n dynamicHeight = false;\n\n @ViewChild('tabs', { static: true })\n tabs: MatTabGroup;\n\n @ViewChildren(ActivityOutletComponent)\n activityOutlets: QueryList<ActivityOutletComponent<any, any, any>>;\n\n activityTabs: ActivityRef<any, any, any>[] = [];\n\n private _identifier: string;\n private _deferredCleanUp: Promise<any>;\n\n private interactionServiceApi: InteractionService.Api;\n\n private garbage = new GarbageCollector();\n private syncSelectedTabTimeout: any;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit(): void {\n const { chain, observe } = Dsl.disposeWith(this);\n observe.valuesFrom(this.tabs.animationDone).subscribe(() => this.onAnimationFinished());\n }\n\n initialise(identifier: string, api: InteractionService.Api) {\n assert.isFalsey(this.isInitialised());\n assert.notNil(identifier);\n assert.notNil(api);\n this._identifier = identifier;\n this.interactionServiceApi = api;\n }\n\n get identifier() {\n return this._identifier;\n }\n\n isInitialised() {\n return !!this.identifier;\n }\n\n /**\n * Returns true if an activity is currently running.\n */\n isActive(): boolean {\n return this.getActiveActivityCount() > 0;\n }\n\n registerDisposable<T extends Disposable>(disposable: T): T {\n return this.garbage.registerDisposable(disposable);\n }\n\n @Trace()\n dispose(): void {\n // TODO: think about auto cancelling any outstanding activity on dispose.\n // See NavigationState.Navigating for a use-case.\n assert.isFalsey(this.isActive());\n this.garbage.dispose();\n }\n\n getActiveActivityRef(): ActivityRef<any, any, any> {\n if (!this.isActive()) {\n lang.illegalState('no activity in progress');\n }\n return _.findLast(this.activityTabs, tab => !tab.isComplete());\n }\n\n /**\n * Cancels the current activity and returns true the context is no longer active, false if\n * there is still another activity running.\n */\n // @Trace()\n async cancelActiveActivity(): Promise<boolean> {\n const activity = this.getActiveActivityRef();\n activity.cancel();\n if (this.isCleaningUp()) {\n return this.waitForInteractionContextCleanupToFinish();\n } else {\n return !this.isActive();\n }\n }\n\n // TODO: this handling of multiple nested activities is only used by the activity component and is not a general case.\n // @Trace()\n protected createAndLaunchActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data: D1, disableClose: boolean): Promise<R1> {\n assert.isTruthy(this.isInitialised()); // make sure we've been initialised\n const activityRef = new ActivityRef<D1, R1, E1>(activityType, data, () => {\n const activeActivityCount = this.getActiveActivityCount() > 0;\n if (activeActivityCount) {\n this.triggerTabSynchronisation();\n } else {\n this.finishAndStartCleanup();\n }\n });\n this.launchActivity(activityRef);\n // if this is the first activity let the interaction service know.\n if (this.activityTabs.length === 1) {\n // console.log('Now active!!!');\n this.interactionServiceApi.notifyActive(this);\n }\n return activityRef.activityResult;\n }\n\n private getActiveActivityCount(): number {\n return this.activityTabs.filter(ref => !ref.isComplete()).length;\n }\n\n /**\n * Checks if this interaction context has finished an is in the process of waiting\n * for all the infrastructure (including route updates) to be completed.\n */\n isCleaningUp(): boolean {\n return !!this._deferredCleanUp;\n }\n\n async waitForInteractionContextCleanupToFinish(): Promise<any> {\n return this._deferredCleanUp ?\n this._deferredCleanUp :\n true;\n }\n\n // @Trace()\n private finishAndStartCleanup(): void {\n if (!this._deferredCleanUp) {\n const promise = this.interactionServiceApi.notifyFinished(this);\n this._deferredCleanUp = promise\n .finally(() => {\n this._deferredCleanUp = null;\n });\n }\n }\n\n// @Trace()\n launchActivity<D1, R1, E1>(activityRef: ActivityRef<D1, R1, E1>) {\n const cleanedTabs = this.activityTabs.filter(tab => !tab.isComplete());\n this.activityTabs = cleanedTabs.concat(activityRef);\n this.tabs.selectedIndex = this.activityTabs.length;\n }\n\n activityIndex(index: number, activityRef: ActivityRef<any, any, any>) {\n return index;\n };\n\n\n // @Trace()\n private onAnimationFinished() {\n this.getSelectedOutlet().component.onActivityReady();\n this.activityTabs = this.activityTabs.filter(tab => !tab.isComplete());\n }\n\n /**\n * Synchronises the selected tab index. Returns true if there was no change to the selected index.\n */\n // @Trace()\n private synchroniseSelectedTabIndex(): boolean {\n const previousIndex = this.tabs.selectedIndex;\n const newIndex = this.getActiveActivityCount() - 1;\n this.tabs.selectedIndex = newIndex;\n return previousIndex === newIndex;\n }\n\n private getSelectedOutlet() {\n return this.activityOutlets.toArray()[this.tabs.selectedIndex];\n }\n\n // @Trace()\n private triggerTabSynchronisation() {\n if (this.syncSelectedTabTimeout) {\n clearTimeout(this.syncSelectedTabTimeout);\n }\n this.syncSelectedTabTimeout = setTimeout(() => {\n this.syncSelectedTabTimeout = null;\n this.synchroniseSelectedTabIndex();\n }, 75);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"activity-container.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/activity-container/activity-container.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { AfterViewInit, Component, Input, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';\nimport { MatTabGroup } from '@angular/material/tabs';\nimport { assert, Constructable, Disposable, Dsl, GarbageCollector, Trace, ValueModel } from '@coolon/pectin';\nimport { lang } from '@coolon/typescript-utilities';\nimport _ from 'lodash';\nimport { AbstractInteractionContext } from '../../abstract-interaction-context';\nimport { Activity } from '../../activity';\nimport { ActivityRef } from '../../activity-ref';\nimport { InteractionService } from '../../services/interaction.service';\nimport { ActivityOutletComponent } from './activity-outlet/activity-outlet.component';\n\n@Component({\n selector: 'aup-activity-container',\n templateUrl: './activity-container.component.html',\n styleUrls: ['./activity-container.component.scss']\n})\nexport class ActivityContainerComponent<D, R, E> extends AbstractInteractionContext implements OnInit, AfterViewInit {\n\n @Input()\n dynamicHeight = false;\n\n @ViewChild('tabs', { static: true })\n tabs: MatTabGroup;\n\n @ViewChildren(ActivityOutletComponent)\n activityOutlets: QueryList<ActivityOutletComponent<any, any, any>>;\n\n activityTabs: ActivityRef<any, any, any>[] = [];\n\n private _identifier: string;\n private _deferredCleanUp: Promise<any>;\n\n private interactionServiceApi: InteractionService.Api;\n\n private garbage = new GarbageCollector();\n private syncSelectedTabTimeout: any;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n }\n\n ngAfterViewInit(): void {\n const { chain, observe } = Dsl.disposeWith(this);\n observe.valuesFrom(this.tabs.animationDone).subscribe(() => this.onAnimationFinished());\n }\n\n initialise(identifier: string, api: InteractionService.Api) {\n assert.isFalsey(this.isInitialised());\n assert.notNil(identifier);\n assert.notNil(api);\n this._identifier = identifier;\n this.interactionServiceApi = api;\n }\n\n get identifier() {\n return this._identifier;\n }\n\n isInitialised() {\n return !!this.identifier;\n }\n\n /**\n * Returns true if an activity is currently running.\n */\n isActive(): boolean {\n return this.getActiveActivityCount() > 0;\n }\n\n registerDisposable<T extends Disposable>(disposable: T): T {\n return this.garbage.registerDisposable(disposable);\n }\n\n @Trace()\n dispose(): void {\n // TODO: think about auto cancelling any outstanding activity on dispose.\n // See NavigationState.Navigating for a use-case.\n assert.isFalsey(this.isActive());\n this.garbage.dispose();\n }\n\n getActiveActivityRef(): ActivityRef<any, any, any> {\n if (!this.isActive()) {\n lang.illegalState('no activity in progress');\n }\n return _.findLast(this.activityTabs, tab => !tab.isComplete());\n }\n\n /**\n * Cancels the current activity and returns true the context is no longer active, false if\n * there is still another activity running.\n */\n // @Trace()\n async cancelActiveActivity(): Promise<boolean> {\n const activity = this.getActiveActivityRef();\n activity.cancel();\n if (this.isCleaningUp()) {\n return this.waitForInteractionContextCleanupToFinish();\n } else {\n return !this.isActive();\n }\n }\n\n // TODO: this handling of multiple nested activities is only used by the activity component and is not a general case.\n // @Trace()\n protected createAndLaunchActivity<D1, R1, E1>(activityType: Constructable<Activity<D1, R1, E1>>, data: D1, disableClose: boolean): Promise<R1> {\n assert.isTruthy(this.isInitialised()); // make sure we've been initialised\n const activityRef = new ActivityRef<D1, R1, E1>(activityType, data, () => {\n const activeActivityCount = this.getActiveActivityCount() > 0;\n if (activeActivityCount) {\n this.triggerTabSynchronisation();\n } else {\n this.finishAndStartCleanup();\n }\n });\n this.launchActivity(activityRef);\n // if this is the first activity let the interaction service know.\n if (this.activityTabs.length === 1) {\n // console.log('Now active!!!');\n this.interactionServiceApi.notifyActive(this);\n }\n return activityRef.activityResult;\n }\n\n private getActiveActivityCount(): number {\n return this.activityTabs.filter(ref => !ref.isComplete()).length;\n }\n\n /**\n * Checks if this interaction context has finished an is in the process of waiting\n * for all the infrastructure (including route updates) to be completed.\n */\n isCleaningUp(): boolean {\n return !!this._deferredCleanUp;\n }\n\n async waitForInteractionContextCleanupToFinish(): Promise<any> {\n return this._deferredCleanUp ?\n this._deferredCleanUp :\n true;\n }\n\n // @Trace()\n private finishAndStartCleanup(): void {\n if (!this._deferredCleanUp) {\n const promise = this.interactionServiceApi.notifyFinished(this);\n this._deferredCleanUp = promise\n .finally(() => {\n this._deferredCleanUp = null;\n });\n }\n }\n\n// @Trace()\n launchActivity<D1, R1, E1>(activityRef: ActivityRef<D1, R1, E1>) {\n const cleanedTabs = this.activityTabs.filter(tab => !tab.isComplete());\n this.activityTabs = cleanedTabs.concat(activityRef);\n this.tabs.selectedIndex = this.activityTabs.length;\n }\n\n activityIndex(index: number, activityRef: ActivityRef<any, any, any>) {\n return index;\n };\n\n\n // @Trace()\n private onAnimationFinished() {\n this.getSelectedOutlet().component.onActivityReady();\n this.activityTabs = this.activityTabs.filter(tab => !tab.isComplete());\n }\n\n /**\n * Synchronises the selected tab index. Returns true if there was no change to the selected index.\n */\n // @Trace()\n private synchroniseSelectedTabIndex(): boolean {\n const previousIndex = this.tabs.selectedIndex;\n const newIndex = this.getActiveActivityCount() - 1;\n this.tabs.selectedIndex = newIndex;\n return previousIndex === newIndex;\n }\n\n private getSelectedOutlet() {\n return this.activityOutlets.toArray()[this.tabs.selectedIndex];\n }\n\n // @Trace()\n private triggerTabSynchronisation() {\n if (this.syncSelectedTabTimeout) {\n clearTimeout(this.syncSelectedTabTimeout);\n }\n this.syncSelectedTabTimeout = setTimeout(() => {\n this.syncSelectedTabTimeout = null;\n this.synchroniseSelectedTabIndex();\n }, 75);\n }\n}\n"]}
|
|
@@ -1,31 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component, ComponentFactoryResolver, Injector, Input, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { Component, ComponentFactoryResolver, ComponentRef, Injector, Input, OnInit, ViewContainerRef } from '@angular/core';
|
|
6
3
|
import { lang } from '@coolon/typescript-utilities';
|
|
7
4
|
import { ACTIVITY_DATA } from '../../../activity';
|
|
8
5
|
import { ActivityRef } from '../../../activity-ref';
|
|
9
6
|
/**
|
|
10
7
|
* ActivityOutletComponent creates and displays an activity and delegates the interaction context functionality to an
|
|
11
8
|
* external service.
|
|
12
|
-
* @template D, R, E
|
|
13
9
|
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @param {?} componentFactoryResolver
|
|
17
|
-
* @param {?} viewContainerRef
|
|
18
|
-
* @param {?} injector
|
|
19
|
-
*/
|
|
10
|
+
let ActivityOutletComponent = class ActivityOutletComponent {
|
|
20
11
|
constructor(componentFactoryResolver, viewContainerRef, injector) {
|
|
21
12
|
this.componentFactoryResolver = componentFactoryResolver;
|
|
22
13
|
this.viewContainerRef = viewContainerRef;
|
|
23
14
|
this.injector = injector;
|
|
24
15
|
}
|
|
25
|
-
/**
|
|
26
|
-
* @param {?} activityRef
|
|
27
|
-
* @return {?}
|
|
28
|
-
*/
|
|
29
16
|
set activityRef(activityRef) {
|
|
30
17
|
if (this.activityRef && !this.activityRef.isComplete()) {
|
|
31
18
|
lang.illegalState("changing activity before previous one has completed");
|
|
@@ -34,88 +21,51 @@ export class ActivityOutletComponent {
|
|
|
34
21
|
this.loadActivity(activityRef);
|
|
35
22
|
}
|
|
36
23
|
;
|
|
37
|
-
/**
|
|
38
|
-
* @return {?}
|
|
39
|
-
*/
|
|
40
24
|
get activityRef() {
|
|
41
25
|
return this._activityRef;
|
|
42
26
|
}
|
|
43
|
-
/**
|
|
44
|
-
* @return {?}
|
|
45
|
-
*/
|
|
46
27
|
ngOnInit() {
|
|
47
28
|
}
|
|
48
|
-
/**
|
|
49
|
-
* @param {?} activityRef
|
|
50
|
-
* @return {?}
|
|
51
|
-
*/
|
|
52
29
|
loadActivity(activityRef) {
|
|
53
|
-
/** @type {?} */
|
|
54
30
|
const injector = Injector.create({
|
|
55
31
|
providers: [
|
|
56
32
|
{ provide: ACTIVITY_DATA, useValue: activityRef.activityData }
|
|
57
33
|
],
|
|
58
34
|
parent: this.injector
|
|
59
35
|
});
|
|
60
|
-
/** @type {?} */
|
|
61
36
|
const componentFactory = this.componentFactoryResolver.resolveComponentFactory(activityRef.activityClass);
|
|
62
37
|
this.viewContainerRef.clear();
|
|
63
38
|
// console.log(`creating component -> ${activityRef.activityClass.name}`);
|
|
64
39
|
this.activityComponentRef = this.viewContainerRef.createComponent(componentFactory, 0, injector);
|
|
65
40
|
this.activityRef.notifyActivityCreated(this.activityComponentRef.instance, this.nestedInteractionContext);
|
|
66
41
|
}
|
|
67
|
-
/**
|
|
68
|
-
* @return {?}
|
|
69
|
-
*/
|
|
70
42
|
get component() {
|
|
71
43
|
return this.activityComponentRef.instance;
|
|
72
44
|
}
|
|
73
|
-
}
|
|
74
|
-
ActivityOutletComponent.decorators = [
|
|
75
|
-
{ type: Component, args: [{
|
|
76
|
-
selector: 'aup-activity-outlet',
|
|
77
|
-
template: '',
|
|
78
|
-
styles: [":host{display:block}"]
|
|
79
|
-
}] }
|
|
80
|
-
];
|
|
81
|
-
/** @nocollapse */
|
|
45
|
+
};
|
|
82
46
|
ActivityOutletComponent.ctorParameters = () => [
|
|
83
47
|
{ type: ComponentFactoryResolver },
|
|
84
48
|
{ type: ViewContainerRef },
|
|
85
49
|
{ type: Injector }
|
|
86
50
|
];
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
*/
|
|
108
|
-
ActivityOutletComponent.prototype.componentFactoryResolver;
|
|
109
|
-
/**
|
|
110
|
-
* @type {?}
|
|
111
|
-
* @private
|
|
112
|
-
*/
|
|
113
|
-
ActivityOutletComponent.prototype.viewContainerRef;
|
|
114
|
-
/**
|
|
115
|
-
* @type {?}
|
|
116
|
-
* @private
|
|
117
|
-
*/
|
|
118
|
-
ActivityOutletComponent.prototype.injector;
|
|
119
|
-
/* Skipping unhandled member: ;*/
|
|
120
|
-
}
|
|
51
|
+
__decorate([
|
|
52
|
+
Input(),
|
|
53
|
+
__metadata("design:type", Object)
|
|
54
|
+
], ActivityOutletComponent.prototype, "nestedInteractionContext", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
Input(),
|
|
57
|
+
__metadata("design:type", ActivityRef),
|
|
58
|
+
__metadata("design:paramtypes", [ActivityRef])
|
|
59
|
+
], ActivityOutletComponent.prototype, "activityRef", null);
|
|
60
|
+
ActivityOutletComponent = __decorate([
|
|
61
|
+
Component({
|
|
62
|
+
selector: 'aup-activity-outlet',
|
|
63
|
+
template: '',
|
|
64
|
+
styles: [":host{display:block}"]
|
|
65
|
+
}),
|
|
66
|
+
__metadata("design:paramtypes", [ComponentFactoryResolver,
|
|
67
|
+
ViewContainerRef,
|
|
68
|
+
Injector])
|
|
69
|
+
], ActivityOutletComponent);
|
|
70
|
+
export { ActivityOutletComponent };
|
|
121
71
|
//# sourceMappingURL=activity-outlet.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-outlet.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"activity-outlet.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EACT,wBAAwB,EACxB,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,MAAM,EACN,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAY,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD;;;GAGG;AAMH,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAsBlC,YACU,wBAAkD,EAClD,gBAAkC,EAClC,QAAkB;QAFlB,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,aAAQ,GAAR,QAAQ,CAAU;IAE5B,CAAC;IAjBD,IAAI,WAAW,CAAC,WAAiC;QAC/C,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE;YACtD,IAAI,CAAC,YAAY,CAAC,qDAAqD,CAAC,CAAA;SACzE;QACD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAAA,CAAC;IAEF,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IASD,QAAQ;IACR,CAAC;IAED,YAAY,CAAC,WAAiC;QAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC/B,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAC,YAAY,EAAE;aAC/D;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;QACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAC1G,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,0EAA0E;QAC1E,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QACjG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAC5G,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;IAC5C,CAAC;CAEF,CAAA;;YA3BqC,wBAAwB;YAChC,gBAAgB;YACxB,QAAQ;;AApB5B;IADC,KAAK,EAAE;;yEACqC;AAK7C;IADC,KAAK,EAAE;8BACqB,WAAW;qCAAX,WAAW;0DAMvC;AAhBU,uBAAuB;IALnC,SAAS,CAAC;QACT,QAAQ,EAAE,qBAAqB;QAC/B,QAAQ,EAAE,EAAE;;KAEb,CAAC;qCAwBoC,wBAAwB;QAChC,gBAAgB;QACxB,QAAQ;GAzBjB,uBAAuB,CAkDnC;SAlDY,uBAAuB","sourcesContent":["import {\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n Injector,\n Input,\n OnInit,\n ViewContainerRef\n} from '@angular/core';\nimport { assert } from '@coolon/pectin';\nimport { lang } from '@coolon/typescript-utilities';\nimport { Activity, ACTIVITY_DATA } from '../../../activity';\nimport { ActivityRef } from '../../../activity-ref';\nimport { InteractionContext } from '../../../interaction-context';\n\n/**\n * ActivityOutletComponent creates and displays an activity and delegates the interaction context functionality to an\n * external service.\n */\n@Component({\n selector: 'aup-activity-outlet',\n template: '',\n styleUrls: ['./activity-outlet.component.scss']\n})\nexport class ActivityOutletComponent<D, R, E> implements OnInit {\n\n private activityComponentRef: ComponentRef<Activity<D, R, E>>;\n\n @Input()\n nestedInteractionContext: InteractionContext;\n\n private _activityRef: ActivityRef<D, R, E>;\n\n @Input()\n set activityRef(activityRef: ActivityRef<D, R, E>) {\n if (this.activityRef && !this.activityRef.isComplete()) {\n lang.illegalState(\"changing activity before previous one has completed\")\n }\n this._activityRef = activityRef;\n this.loadActivity(activityRef);\n };\n\n get activityRef(): ActivityRef<D, R, E> {\n return this._activityRef;\n }\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private viewContainerRef: ViewContainerRef,\n private injector: Injector\n ) {\n }\n\n ngOnInit() {\n }\n\n loadActivity(activityRef: ActivityRef<D, R, E>) {\n const injector = Injector.create({\n providers: [\n { provide: ACTIVITY_DATA, useValue: activityRef.activityData }\n ],\n parent: this.injector\n });\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(activityRef.activityClass);\n this.viewContainerRef.clear();\n // console.log(`creating component -> ${activityRef.activityClass.name}`);\n this.activityComponentRef = this.viewContainerRef.createComponent(componentFactory, 0, injector);\n this.activityRef.notifyActivityCreated(this.activityComponentRef.instance, this.nestedInteractionContext);\n }\n\n get component(): Activity<D, R, E> {\n return this.activityComponentRef.instance;\n }\n\n}\n"]}
|
|
@@ -1,36 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
1
|
+
import { __decorate, __metadata, __param } from "tslib";
|
|
5
2
|
import { Component, Inject } from '@angular/core';
|
|
6
3
|
import { Activity, ACTIVITY_DATA } from '../../activity';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @param {?} alert
|
|
10
|
-
*/
|
|
4
|
+
let AlertDialogComponent = class AlertDialogComponent extends Activity {
|
|
11
5
|
constructor(alert) {
|
|
12
6
|
super();
|
|
13
7
|
this.alert = alert;
|
|
14
8
|
}
|
|
15
|
-
/**
|
|
16
|
-
* @return {?}
|
|
17
|
-
*/
|
|
18
9
|
ngOnInit() {
|
|
19
10
|
}
|
|
20
|
-
}
|
|
21
|
-
AlertDialogComponent.decorators = [
|
|
22
|
-
{ type: Component, args: [{
|
|
23
|
-
selector: 'aup-alert-dialog',
|
|
24
|
-
template: "<h3 matDialogTitle *ngIf=\"alert.title\">{{alert.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of alert.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-raised-button color=\"primary\" (click)=\"done()\" data-cy=\"close-button\">{{alert.ok()}}</button>\n</div>\n",
|
|
25
|
-
styles: [":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]
|
|
26
|
-
}] }
|
|
27
|
-
];
|
|
28
|
-
/** @nocollapse */
|
|
11
|
+
};
|
|
29
12
|
AlertDialogComponent.ctorParameters = () => [
|
|
30
13
|
{ type: undefined, decorators: [{ type: Inject, args: [ACTIVITY_DATA,] }] }
|
|
31
14
|
];
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
15
|
+
AlertDialogComponent = __decorate([
|
|
16
|
+
Component({
|
|
17
|
+
selector: 'aup-alert-dialog',
|
|
18
|
+
template: "<h3 matDialogTitle *ngIf=\"alert.title\">{{alert.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of alert.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-raised-button color=\"primary\" (click)=\"done()\" data-cy=\"close-button\">{{alert.ok()}}</button>\n</div>\n",
|
|
19
|
+
styles: [":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]
|
|
20
|
+
}),
|
|
21
|
+
__param(0, Inject(ACTIVITY_DATA)),
|
|
22
|
+
__metadata("design:paramtypes", [Object])
|
|
23
|
+
], AlertDialogComponent);
|
|
24
|
+
export { AlertDialogComponent };
|
|
36
25
|
//# sourceMappingURL=alert-dialog.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert-dialog.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/alert-dialog/alert-dialog.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"alert-dialog.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/components/alert-dialog/alert-dialog.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAQzD,IAAa,oBAAoB,GAAjC,MAAa,oBAAqB,SAAQ,QAAqB;IAE7D,YAA4C,KAAY;QACtD,KAAK,EAAE,CAAC;QADkC,UAAK,GAAL,KAAK,CAAO;IAExD,CAAC;IAED,QAAQ;IACR,CAAC;CAEF,CAAA;;4CAPc,MAAM,SAAC,aAAa;;AAFtB,oBAAoB;IALhC,SAAS,CAAC;QACT,QAAQ,EAAE,kBAAkB;QAC5B,0TAA4C;;KAE7C,CAAC;IAGa,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;;GAFvB,oBAAoB,CAShC;SATY,oBAAoB","sourcesContent":["import { Component, Inject, OnInit } from '@angular/core';\nimport { Activity, ACTIVITY_DATA } from '../../activity';\nimport { Alert } from '../../alert';\n\n@Component({\n selector: 'aup-alert-dialog',\n templateUrl: './alert-dialog.component.html',\n styleUrls: ['./alert-dialog.component.scss']\n})\nexport class AlertDialogComponent extends Activity<Alert, void> implements OnInit {\n\n constructor(@Inject(ACTIVITY_DATA) readonly alert: Alert) {\n super();\n }\n\n ngOnInit() {\n }\n\n}\n"]}
|