@coolon/angular-ui-powerups 0.0.126 → 0.0.129
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/bundles/coolon-angular-ui-powerups.umd.js +3745 -3019
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
- package/coolon-angular-ui-powerups.d.ts +17 -18
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/coolon-angular-ui-powerups.js +16 -17
- package/esm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/esm2015/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/index.js +1 -1
- package/esm2015/index.js.map +1 -1
- package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
- package/esm2015/lib/interaction/abstract-interaction-context.js +104 -0
- package/esm2015/lib/interaction/abstract-interaction-context.js.map +1 -0
- package/esm2015/lib/interaction/abstract-interaction-context.metadata.json +1 -0
- package/esm2015/lib/interaction/activity-ref.js +123 -0
- package/esm2015/lib/interaction/activity-ref.js.map +1 -0
- package/esm2015/lib/interaction/activity-ref.metadata.json +1 -0
- package/esm2015/lib/interaction/activity.js +21 -1
- package/esm2015/lib/interaction/activity.js.map +1 -1
- package/esm2015/lib/interaction/activity.metadata.json +1 -1
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +199 -230
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
- package/esm2015/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.js +24 -31
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -0
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.metadata.json +1 -0
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ngfactory.js.map +1 -0
- package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +1 -0
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -3
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.metadata.json +1 -1
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +4 -11
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.metadata.json +1 -1
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +2 -3
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.metadata.json +1 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +113 -0
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -0
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.metadata.json +1 -0
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.ngfactory.js.map +1 -0
- package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.scss.shim.ngstyle.js.map +1 -0
- package/esm2015/lib/interaction/index.js +7 -6
- package/esm2015/lib/interaction/index.js.map +1 -1
- package/esm2015/lib/interaction/index.metadata.json +1 -1
- package/esm2015/lib/interaction/interaction-context.js +12 -67
- package/esm2015/lib/interaction/interaction-context.js.map +1 -1
- package/esm2015/lib/interaction/interaction-context.metadata.json +1 -1
- package/esm2015/lib/interaction/interaction.module.js +4 -4
- 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/route-synchronisation-adapter.js +17 -0
- package/esm2015/lib/interaction/route-synchronisation-adapter.js.map +1 -0
- package/esm2015/lib/interaction/route-synchronisation-adapter.metadata.json +1 -0
- package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js +72 -0
- package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -0
- package/esm2015/lib/interaction/services/interaction-service-routing-adapter.metadata.json +1 -0
- package/esm2015/lib/interaction/services/interaction.service.js +174 -104
- 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 +4 -2
- 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 +79 -87
- 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 +3 -1
- package/esm2015/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
- package/esm2015/lib/place/components/abstract-place-navigation.component.js +27 -6
- package/esm2015/lib/place/components/abstract-place-navigation.component.js.map +1 -1
- package/esm2015/lib/place/components/abstract-place-navigation.component.metadata.json +1 -1
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +9 -3
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.metadata.json +1 -1
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +98 -110
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.metadata.json +1 -1
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +9 -3
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.metadata.json +1 -1
- package/esm2015/lib/place/guards/place.guard.js +14 -13
- package/esm2015/lib/place/guards/place.guard.js.map +1 -1
- package/esm2015/lib/place/guards/place.guard.metadata.json +1 -1
- package/esm2015/lib/place/index.js +15 -2
- package/esm2015/lib/place/index.js.map +1 -1
- package/esm2015/lib/place/index.metadata.json +1 -1
- package/esm2015/lib/place/{guards → navigation}/place-component-deactivation-handler.js +28 -22
- package/esm2015/lib/place/navigation/place-component-deactivation-handler.js.map +1 -0
- package/esm2015/lib/place/navigation/place-component-deactivation-handler.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js +37 -0
- package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -0
- package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +19 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +95 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +132 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +123 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -0
- package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js +62 -0
- package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -0
- package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +48 -0
- package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -0
- package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +104 -0
- package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -0
- package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +141 -0
- package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -0
- package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/navigating.js +54 -0
- package/esm2015/lib/place/navigation/session/navigating.js.map +1 -0
- package/esm2015/lib/place/navigation/session/navigating.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/navigation-context.js +38 -0
- package/esm2015/lib/place/navigation/session/navigation-context.js.map +1 -0
- package/esm2015/lib/place/navigation/session/navigation-context.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/navigation-session.js +326 -0
- package/esm2015/lib/place/navigation/session/navigation-session.js.map +1 -0
- package/esm2015/lib/place/navigation/session/navigation-session.metadata.json +1 -0
- package/esm2015/lib/place/navigation/session/pop-state-navigation.js +31 -0
- package/esm2015/lib/place/navigation/session/pop-state-navigation.js.map +1 -0
- package/esm2015/lib/place/navigation/session/pop-state-navigation.metadata.json +1 -0
- package/esm2015/lib/place/place-component.js +46 -15
- 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-router.js +307 -309
- 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.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/parameter-decorators.js +1 -0
- package/esm2015/lib/place/route/parameter-decorators.js.map +1 -1
- package/esm2015/lib/place/route/parameter-decorators.metadata.json +1 -1
- package/esm2015/lib/place/url-service.js +126 -0
- package/esm2015/lib/place/url-service.js.map +1 -0
- package/esm2015/lib/place/url-service.metadata.json +1 -0
- package/esm2015/lib/place/url-service.ngfactory.js.map +1 -0
- package/esm2015/lib/place/url-snapshot.js +15 -1
- package/esm2015/lib/place/url-snapshot.js.map +1 -1
- package/esm2015/lib/place/url-snapshot.metadata.json +1 -1
- package/esm2015/lib/place/visit.js +10 -0
- package/esm2015/lib/place/visit.js.map +1 -1
- package/esm2015/lib/place/visit.metadata.json +1 -1
- package/esm2015/public_api.js +2 -2
- package/esm2015/public_api.js.map +1 -1
- package/esm5/coolon-angular-ui-powerups.js +16 -17
- package/esm5/coolon-angular-ui-powerups.js.map +1 -1
- package/esm5/index.js +1 -1
- package/esm5/index.js.map +1 -1
- package/esm5/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
- package/esm5/lib/interaction/abstract-interaction-context.js +146 -0
- package/esm5/lib/interaction/abstract-interaction-context.js.map +1 -0
- package/esm5/lib/interaction/activity-ref.js +153 -0
- package/esm5/lib/interaction/activity-ref.js.map +1 -0
- package/esm5/lib/interaction/activity.js +29 -1
- package/esm5/lib/interaction/activity.js.map +1 -1
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js +273 -265
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
- package/esm5/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.js +25 -32
- package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -0
- package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ngfactory.js.map +1 -0
- package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +1 -0
- package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -3
- 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 +4 -10
- 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 +2 -3
- 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 +158 -0
- package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -0
- package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.ngfactory.js.map +1 -0
- package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.scss.shim.ngstyle.js.map +1 -0
- package/esm5/lib/interaction/index.js +7 -6
- package/esm5/lib/interaction/index.js.map +1 -1
- package/esm5/lib/interaction/interaction-context.js +12 -106
- package/esm5/lib/interaction/interaction-context.js.map +1 -1
- package/esm5/lib/interaction/interaction.module.js +4 -4
- 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/route-synchronisation-adapter.js +17 -0
- package/esm5/lib/interaction/route-synchronisation-adapter.js.map +1 -0
- package/esm5/lib/interaction/services/interaction-service-routing-adapter.js +98 -0
- package/esm5/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -0
- package/esm5/lib/interaction/services/interaction.service.js +243 -117
- package/esm5/lib/interaction/services/interaction.service.js.map +1 -1
- package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +6 -2
- 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 +96 -107
- 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 +3 -1
- package/esm5/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
- package/esm5/lib/place/components/abstract-place-navigation.component.js +24 -6
- package/esm5/lib/place/components/abstract-place-navigation.component.js.map +1 -1
- package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +6 -3
- 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 +130 -129
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
- package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +6 -3
- package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
- package/esm5/lib/place/guards/place.guard.js +17 -13
- package/esm5/lib/place/guards/place.guard.js.map +1 -1
- package/esm5/lib/place/index.js +15 -2
- package/esm5/lib/place/index.js.map +1 -1
- package/esm5/lib/place/{guards → navigation}/place-component-deactivation-handler.js +45 -21
- package/esm5/lib/place/navigation/place-component-deactivation-handler.js.map +1 -0
- package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js +49 -0
- package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -0
- package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +36 -0
- package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +151 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +221 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +186 -0
- package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -0
- package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js +107 -0
- package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -0
- package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +77 -0
- package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -0
- package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +167 -0
- package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -0
- package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +185 -0
- package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -0
- package/esm5/lib/place/navigation/session/navigating.js +75 -0
- package/esm5/lib/place/navigation/session/navigating.js.map +1 -0
- package/esm5/lib/place/navigation/session/navigation-context.js +32 -0
- package/esm5/lib/place/navigation/session/navigation-context.js.map +1 -0
- package/esm5/lib/place/navigation/session/navigation-session.js +450 -0
- package/esm5/lib/place/navigation/session/navigation-session.js.map +1 -0
- package/esm5/lib/place/navigation/session/pop-state-navigation.js +50 -0
- package/esm5/lib/place/navigation/session/pop-state-navigation.js.map +1 -0
- package/esm5/lib/place/place-component.js +61 -17
- package/esm5/lib/place/place-component.js.map +1 -1
- package/esm5/lib/place/place-router.js +407 -401
- package/esm5/lib/place/place-router.js.map +1 -1
- 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/parameter-decorators.js +1 -0
- package/esm5/lib/place/route/parameter-decorators.js.map +1 -1
- package/esm5/lib/place/url-service.js +176 -0
- package/esm5/lib/place/url-service.js.map +1 -0
- package/esm5/lib/place/url-service.ngfactory.js.map +1 -0
- package/esm5/lib/place/url-snapshot.js +22 -1
- package/esm5/lib/place/url-snapshot.js.map +1 -1
- package/esm5/lib/place/visit.js +14 -0
- package/esm5/lib/place/visit.js.map +1 -1
- package/esm5/public_api.js +2 -2
- package/esm5/public_api.js.map +1 -1
- package/fesm2015/coolon-angular-ui-powerups.js +2637 -2266
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +3694 -2980
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/interaction/abstract-interaction-context.d.ts +24 -0
- package/lib/interaction/activity-ref.d.ts +19 -0
- package/lib/interaction/activity.d.ts +5 -1
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +42 -43
- package/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.d.ts +7 -10
- package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +2 -2
- package/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.d.ts +2 -5
- package/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.d.ts +2 -2
- package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +24 -0
- package/lib/interaction/index.d.ts +6 -5
- package/lib/interaction/interaction-context.d.ts +8 -29
- package/lib/interaction/route-synchronisation-adapter.d.ts +5 -0
- package/lib/interaction/services/interaction-service-routing-adapter.d.ts +15 -0
- package/lib/interaction/services/interaction.service.d.ts +52 -24
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +2 -1
- package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +15 -12
- package/lib/interaction/services/modal-interaction-context.factory.d.ts +2 -1
- package/lib/place/components/abstract-place-navigation.component.d.ts +5 -3
- package/lib/place/components/list-place-nav/list-place-nav.component.d.ts +2 -1
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +9 -10
- package/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.d.ts +2 -1
- package/lib/place/guards/place.guard.d.ts +4 -3
- package/lib/place/index.d.ts +15 -2
- package/lib/place/navigation/place-component-deactivation-handler.d.ts +22 -0
- package/lib/place/navigation/session/abstract-pop-state-navigation.d.ts +9 -0
- package/lib/place/navigation/session/event-cleanup/event-clean-up-session.d.ts +4 -0
- package/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.d.ts +27 -0
- package/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.d.ts +43 -0
- package/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.d.ts +33 -0
- package/lib/place/navigation/session/interactions/navigating-during-interaction.d.ts +15 -0
- package/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.d.ts +17 -0
- package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +24 -0
- package/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.d.ts +15 -0
- package/lib/place/navigation/session/navigating.d.ts +11 -0
- package/lib/place/navigation/session/navigation-context.d.ts +28 -0
- package/lib/place/navigation/session/navigation-session.d.ts +51 -0
- package/lib/place/navigation/session/pop-state-navigation.d.ts +7 -0
- package/lib/place/place-component.d.ts +6 -3
- package/lib/place/place-router.d.ts +39 -35
- package/lib/place/url-service.d.ts +30 -0
- package/lib/place/url-snapshot.d.ts +3 -1
- package/lib/place/visit.d.ts +1 -0
- package/package.json +1 -1
- package/schematics/place-routes/templates/place-routes.ts.template +4 -3
- package/esm2015/lib/interaction/abstract-activity.js +0 -13
- package/esm2015/lib/interaction/abstract-activity.js.map +0 -1
- package/esm2015/lib/interaction/abstract-activity.metadata.json +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js +0 -21
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js.map +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.metadata.json +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.js.map +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.metadata.json +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.ngfactory.js.map +0 -1
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +0 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js +0 -102
- package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js.map +0 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.metadata.json +0 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.ngfactory.js.map +0 -1
- package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.scss.shim.ngstyle.js.map +0 -1
- package/esm2015/lib/interaction/interaction-context-base.js +0 -171
- package/esm2015/lib/interaction/interaction-context-base.js.map +0 -1
- package/esm2015/lib/interaction/interaction-context-base.metadata.json +0 -1
- package/esm2015/lib/place/guards/navigation-state.js +0 -1118
- package/esm2015/lib/place/guards/navigation-state.js.map +0 -1
- package/esm2015/lib/place/guards/navigation-state.metadata.json +0 -1
- package/esm2015/lib/place/guards/place-component-deactivation-handler.js.map +0 -1
- package/esm2015/lib/place/guards/place-component-deactivation-handler.metadata.json +0 -1
- package/esm5/lib/interaction/abstract-activity.js +0 -30
- package/esm5/lib/interaction/abstract-activity.js.map +0 -1
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js +0 -21
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js.map +0 -1
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.js.map +0 -1
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.ngfactory.js.map +0 -1
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +0 -1
- package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js +0 -119
- package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js.map +0 -1
- package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.ngfactory.js.map +0 -1
- package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.scss.shim.ngstyle.js.map +0 -1
- package/esm5/lib/interaction/interaction-context-base.js +0 -228
- package/esm5/lib/interaction/interaction-context-base.js.map +0 -1
- package/esm5/lib/place/guards/navigation-state.js +0 -1491
- package/esm5/lib/place/guards/navigation-state.js.map +0 -1
- package/esm5/lib/place/guards/place-component-deactivation-handler.js.map +0 -1
- package/lib/interaction/abstract-activity.d.ts +0 -6
- package/lib/interaction/components/activity-outlet/activity-outlet-context.d.ts +0 -7
- package/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.d.ts +0 -17
- package/lib/interaction/interaction-context-base.d.ts +0 -29
- package/lib/place/guards/navigation-state.d.ts +0 -228
- package/lib/place/guards/place-component-deactivation-handler.d.ts +0 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.service.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/interaction.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n BooleanValueModelChain,\n Disposable,\n Dsl,\n GarbageCollector,\n lang,\n ListModelChain,\n MutableListModel,\n MutableValueModel,\n ValueModel,\n ValueModelChain\n} from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { InteractionContext } from '../interaction-context';\n\nimport { ModalInteractionContextFactory } from './modal-interaction-context.factory';\n\nlet inplaceMonitorCount = 0;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InteractionService {\n\n private readonly garbage = new GarbageCollector();\n readonly active: BooleanValueModelChain;\n private readonly exclusiveContext = new MutableValueModel<InteractionContext>();\n\n private readonly _activeModalInteractionContextModel = new MutableValueModel<InteractionService.Monitor>();\n private readonly _activeInlineInteractionContextModel = new MutableValueModel<InteractionService.Monitor>();\n private readonly _activeInteractionContext: ValueModelChain<InteractionContext>;\n\n readonly activeInteractionContextIds: ListModelChain<string>;\n readonly modelInteractionActive: BooleanValueModelChain;\n readonly inlineInteractionActive: BooleanValueModelChain;\n\n constructor(readonly modelInteractionContextFactory: ModalInteractionContextFactory) {\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this.garbage);\n\n this._activeInteractionContext = chain(this._activeModalInteractionContextModel)\n .otherwise(this._activeInlineInteractionContextModel)\n .pluck('interactionContext');\n\n this.active = chain(this._activeInteractionContext).isNotNil();\n this.modelInteractionActive = chain(this._activeModalInteractionContextModel).isNotNil();\n this.inlineInteractionActive = chain(this._activeInlineInteractionContextModel).isNotNil();\n\n // TODO: chain.concat(listOrValueModels) would be nice.\n this.activeInteractionContextIds = chain(new MutableListModel<InteractionService.Monitor>())\n .append(this._activeInlineInteractionContextModel)\n .append(this._activeModalInteractionContextModel)\n .rejectNil()\n .pluck('id');\n\n }\n\n isActive(): boolean {\n return this.active.value;\n }\n\n isModalActive(): boolean {\n return this.modelInteractionActive.value;\n }\n\n /**\n * @deprecated use #createModalInteractionContextDisposedWith instead.\n * @param disposable\n */\n createModalInteractionContextFor(disposable: Disposable.Collector): InteractionContext {\n return this.createModalInteractionContextDisposedWith(disposable);\n }\n\n /**\n * Creates a new model interaction context that will be disposed along with the component.\n * @param disposable\n */\n createModalInteractionContextDisposedWith(disposable: Disposable.Collector): InteractionContext {\n const context = this.modelInteractionContextFactory.createInteractionContext();\n disposable.registerDisposable(new InteractionService.Monitor('modal', context, this._activeModalInteractionContextModel, this.exclusiveContext));\n return context;\n }\n\n _registerInplaceInteractionContext(interactionContext: InteractionContext) {\n interactionContext.registerDisposable(new InteractionService.Monitor(`ip${++inplaceMonitorCount}`, interactionContext, this._activeInlineInteractionContextModel, this.exclusiveContext));\n }\n\n // @Trace()\n getActiveContext(): InteractionContext {\n assert.isTruthy(this.isActive());\n return this._activeInteractionContext.value;\n }\n\n /**\n * Creates an interaction context that will prevent any other contexts from starting an\n * activity until it is disposed. This is intended for use by the router for passing\n * to PlaceComponent.canDeactivate(interactionContext). This ensures components don't\n * try and interact in a way that we can't track and synchronise with the browser back\n * button.\n */\n _createExclusiveModalInteractionContext(): InteractionContext {\n this.exclusiveContext.value = this.modelInteractionContextFactory.createInteractionContext();\n const self = this;\n this.exclusiveContext.value.registerDisposable({\n dispose(): void {\n self.exclusiveContext.value = null;\n }\n });\n return this.exclusiveContext.value;\n }\n}\n\nexport namespace InteractionService {\n\n export interface Callback {\n onStarted(monitor: Monitor);\n\n onFinished(monitor: Monitor);\n }\n\n export class Monitor extends GarbageCollector {\n constructor(readonly id: string,\n readonly interactionContext: InteractionContext,\n readonly currentActiveMonitor: MutableValueModel<Monitor>,\n readonly exclusiveContext: ValueModel<InteractionContext>) {\n super();\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n when.valueOf(interactionContext.active).becomesTruthy(() => this.onStarted());\n when.valueOf(interactionContext.active).becomesFalsey(() => this.onFinished());\n interactionContext.registerDisposable(this);\n }\n\n protected onStarted() {\n this.assertCanStart();\n this.currentActiveMonitor.value = this;\n }\n\n private assertCanStart() {\n assert.isFalsey(this.currentActiveMonitor.value);\n if (this.exclusiveContext.value && this.interactionContext !== this.exclusiveContext.value) {\n lang.illegalState('Interaction started while exclusive lock active. This is usually because you using a different context during place.canDeactivate(interactionContext)');\n }\n }\n\n protected onFinished() {\n this.assertCurrentlyActive();\n this.currentActiveMonitor.value = null;\n }\n\n private assertCurrentlyActive() {\n assert.isTruthy(this.currentActiveMonitor.value === this);\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"interaction.service.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/interaction.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\nimport {\n BooleanValueModelChain,\n DelegatingValueModel,\n Disposable,\n Dsl,\n GarbageCollector, ListModel,\n ListModelChain,\n MutableListModel,\n MutableValueModel, Trace,\n ValueModel,\n ValueModelChain\n} from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { PlaceRouter } from '../../place/place-router';\nimport { InPlaceInteractionContextComponent } from '../components/inplace-interaction-context/in-place-interaction-context.component';\nimport { InteractionContext } from '../interaction-context';\nimport { InteractionServiceRoutingAdapter } from './interaction-service-routing-adapter';\n\nimport { ModalInteractionContextFactory } from './modal-interaction-context.factory';\n\nlet inplaceMonitorCount = 0;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InteractionService {\n\n private readonly garbage = new GarbageCollector();\n readonly active: BooleanValueModelChain;\n\n // private readonly _activeModalContext = new MutableValueModel<InteractionContext>();\n // private readonly _activeInlineContext = new MutableValueModel<InteractionContext>();\n // private readonly _activeContext: ValueModelChain<InteractionContext>;\n private readonly _navigationInProgress = new DelegatingValueModel<boolean>().withDefault(false);\n\n private placeRouter: PlaceRouter;\n private exclusiveInteractionRegistry: InteractionService.ContextRegistry;\n private modalInteractionRegistry: InteractionService.ContextRegistry;\n private inPlaceInteractionRegistry: InteractionService.ContextRegistry;\n private activeModalContext: ValueModelChain<InteractionContext>;\n\n readonly activeInteractionContextIds: ListModelChain<string>;\n readonly inModalInteraction: BooleanValueModelChain;\n\n constructor(readonly modelInteractionContextFactory: ModalInteractionContextFactory) {\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this.garbage);\n\n this.exclusiveInteractionRegistry = new InteractionService.ContextRegistry();\n this.modalInteractionRegistry = new InteractionService.ContextRegistry();\n this.inPlaceInteractionRegistry = new InteractionService.ContextRegistry();\n\n this.modalInteractionRegistry.disableWhen(valueOf.any(\n this.exclusiveInteractionRegistry.active,\n this.modalInteractionRegistry.active\n ).areTruthy());\n\n this.inPlaceInteractionRegistry.disableWhen(valueOf.any(\n this.exclusiveInteractionRegistry.active,\n this.modalInteractionRegistry.active,\n this.inPlaceInteractionRegistry.active\n ).areTruthy());\n\n this.active = valueOf.any(\n this.inPlaceInteractionRegistry.active,\n this.modalInteractionRegistry.active\n ).areTruthy();\n\n\n // TODO: chain.concat(listOrValueModels) would be nice.\n this.activeInteractionContextIds = chain(this.inPlaceInteractionRegistry.interactionContextIds)\n .concat(this.modalInteractionRegistry.interactionContextIds);\n\n this.activeModalContext = chain(this.modalInteractionRegistry.interactionContexts).first();\n this.inModalInteraction = chain(this.activeModalContext).isNotNil();\n\n }\n\n isActive(): boolean {\n return this.active.value;\n }\n\n /**\n * @deprecated use #createModalInteractionContextDisposedWith instead.\n * @param disposable\n */\n createModalInteractionContextFor(disposable: Disposable.Collector): InteractionContext {\n return this.createModalInteractionContextDisposedWith(disposable);\n }\n\n /**\n * Creates a new model interaction context that will be disposed along with the component.\n * @param disposable\n */\n createModalInteractionContextDisposedWith(disposable: Disposable.Collector): InteractionContext {\n // TODO: look at making the registry the factory..\n return this.modelInteractionContextFactory.createInteractionContext('modal', new InteractionService.ApiAdapter(this.placeRouter, this.modalInteractionRegistry));\n }\n\n registerInplaceInteractionContext(interactionContext: InPlaceInteractionContextComponent<any, any, any>) {\n // TODO: look at making the registry the factory..\n // Todo: check for double registration.\n // Todo: allow multiple inplace interactions..\n interactionContext.initialise(`ip${++inplaceMonitorCount}`, new InteractionService.ApiAdapter(this.placeRouter, this.inPlaceInteractionRegistry));\n }\n\n\n // private assertModalCanStart() {\n // assert.isFalsey(this.inExclusiveInteraction.value);\n // assert.isFalsey(this.modalActive.value);\n // }\n //\n // private assertInPlaceCanStart() {\n // assert.isFalsey(this.inExclusiveInteraction.value);\n // assert.isFalsey(this.modalActive.value);\n // assert.isFalsey(this._activeInlineContext.value);\n // }\n\n\n // // @Trace()\n // getActiveContext(): InteractionContext {\n // assert.isTruthy(this.isActive());\n // return this._activeContext.value;\n // }\n\n /**\n * Creates an interaction context that will prevent any other contexts from starting an\n * activity until it is disposed. This is intended for use by the router for passing\n * to PlaceComponent.canDeactivate(interactionContext). This ensures components don't\n * try and interact in a way that we can't track and synchronise with the browser back\n * button.\n */\n registerPlaceRouter(router: PlaceRouter): InteractionServiceRoutingAdapter {\n assert.isFalsey(this.placeRouter);\n this.placeRouter = router;\n this._navigationInProgress.setDelegate(this.placeRouter.navigationInProgress);\n const self = this;\n return new InteractionServiceRoutingAdapter(\n this.activeInteractionContextIds,\n this.activeModalContext,\n () => {\n return self.modelInteractionContextFactory.createInteractionContext('exclusive', new InteractionService.ApiAdapter(this.placeRouter, this.exclusiveInteractionRegistry));\n });\n }\n\n}\n\nexport namespace InteractionService {\n\n export interface Api {\n\n /**\n * Notifies the interaction service that a particular interactionContext has become active. The interaction\n * services will then push changes to the router to track state. If the router is idle, the promise will\n * resolve when the routing has finished updating. Otherwise it will return immediately.\n * @param interactionContext\n */\n notifyActive(interactionContext: InteractionContext): Promise<unknown>;\n\n /**\n * Notifies the interaction service that a particular interactionContext has become idle. The interaction\n * services will then push changes to the router to track state. If the router is idle, the promise will\n * resolve when the routing has finished updating. Otherwise it will return immediately.\n * @param interactionContext\n */\n notifyFinished(interactionContext: InteractionContext): Promise<unknown>;\n }\n\n /**\n * Provides a mechanism for the service to keep track of what the API adapters are doing to\n * ensure the rules are followed, i.e. modal or in-place interaction aren't started while\n * an exclusive routing interaction is active.\n */\n export class ContextRegistry extends GarbageCollector {\n\n private _interactions = new MutableListModel<InteractionContext>();\n private _disabledDelegate = new DelegatingValueModel<boolean>().withDefault(false);\n readonly active: BooleanValueModelChain;\n readonly interactionContextIds: ListModelChain<string>;\n\n constructor() {\n super();\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.active = chain(this._interactions).isNotEmpty();\n this.interactionContextIds = chain(this._interactions).pluck(\"identifier\");\n }\n\n get interactionContexts():ListModel<InteractionContext> {\n return this._interactions.readonly;\n }\n\n start(context: InteractionContext) {\n this._interactions.push(context);\n }\n\n finish(context: InteractionContext) {\n this._interactions.remove(context);\n }\n\n isActive() {\n return this.active.value;\n }\n\n disableWhen(disabled: ValueModel<boolean>) {\n this._disabledDelegate.setDelegate(disabled);\n }\n }\n\n export class ApiAdapter implements Api {\n\n constructor(private readonly placeRouter: PlaceRouter, private readonly contextRegistry: ContextRegistry) {\n }\n\n // @Trace()\n notifyActive(context: InteractionContext): Promise<any> {\n assert.isTruthy(context.identifier);\n this.contextRegistry.start(context);\n return this.isNavigationInProgress() ? Promise.resolve() : this.placeRouter.syncInteractionContextIdsWithRouter();\n }\n\n // @Trace()\n private isNavigationInProgress() {\n return this.placeRouter.navigationInProgress.value;\n }\n\n // @Trace()\n notifyFinished(context: InteractionContext): Promise<any> {\n this.contextRegistry.finish(context);\n // :: Important ::\n // This method will be traversed by both the place router (during can canDeactivate guards) and user land code\n // (both when routing is idle and while it is active in PlaceComponent.canDeactivate()).\n // The result of pushInteractionIdsToRoute will not start until after the current route finishes, and the\n // current route won't finish until after this promise returns... Deadlock.\n // So in order to keep this logic out of the activities we perform the check here and ensure that\n // any interactions with the context while routing is active returns immediately.\n return this.isNavigationInProgress() ? Promise.resolve() : this.placeRouter.syncInteractionContextIdsWithRouter();\n }\n }\n\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"InteractionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"InteractionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":23,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./modal-interaction-context.factory","name":"ModalInteractionContextFactory","line":45,"character":55}]}],"isActive":[{"__symbolic":"method"}],"createModalInteractionContextFor":[{"__symbolic":"method"}],"createModalInteractionContextDisposedWith":[{"__symbolic":"method"}],"registerInplaceInteractionContext":[{"__symbolic":"method"}],"registerPlaceRouter":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}}}]
|
|
@@ -26,12 +26,14 @@ export class DialogInteractionContextFactory extends ModalInteractionContextFact
|
|
|
26
26
|
assert.notNil(dialogService);
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
+
* @param {?} identifier
|
|
30
|
+
* @param {?} api
|
|
29
31
|
* @return {?}
|
|
30
32
|
*/
|
|
31
|
-
createInteractionContext() {
|
|
33
|
+
createInteractionContext(identifier, api) {
|
|
32
34
|
/** @type {?} */
|
|
33
35
|
const config = Object.assign({ autoFocus: false, hasBackdrop: true, closeOnNavigation: false }, this.matDialogDefaultConfig, this.dialogServiceDefaults);
|
|
34
|
-
return new DialogInteractionContext(this.dialogService, config);
|
|
36
|
+
return new DialogInteractionContext(identifier, api, this.dialogService, config);
|
|
35
37
|
}
|
|
36
38
|
}
|
|
37
39
|
DialogInteractionContextFactory.decorators = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-interaction-context-factory.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"dialog-interaction-context-factory.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAItD,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;;;;AAExE,MAAM,OAAO,mCAAmC,GAAG,IAAI,cAAc,CAAuB,qCAAqC,CAAC;AAKlI,MAAM,OAAO,+BAAgC,SAAQ,8BAA8B;;;;;;IAIjF,YAA6B,aAAwB,EACyB,qBAA2C,EACpD,sBAA4C;QAE/G,KAAK,EAAE,CAAC;QAJmB,kBAAa,GAAb,aAAa,CAAW;QACyB,0BAAqB,GAArB,qBAAqB,CAAsB;QACpD,2BAAsB,GAAtB,sBAAsB,CAAsB;QAG/G,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC/B,CAAC;;;;;;IAED,wBAAwB,CAAC,UAAkB,EAAE,GAA2B;;cAChE,MAAM,mBACV,SAAS,EAAE,KAAK,EAChB,WAAW,EAAE,IAAI,EACjB,iBAAiB,EAAE,KAAK,IACrB,IAAI,CAAC,sBAAsB,EAC3B,IAAI,CAAC,qBAAqB,CAC9B;QAED,OAAO,IAAI,wBAAwB,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACnF,CAAC;;;YAzBF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;YAdQ,SAAS;YACmB,eAAe,uBAmBrC,QAAQ,YAAI,MAAM,SAAC,mCAAmC;YAnBhC,eAAe,uBAoBrC,QAAQ,YAAI,MAAM,SAAC,0BAA0B;;;;;IAJ1D,iDAAwC;;;;;IAE5B,wDAAyC;;IACzC,gEAA6G;;IAC7G,iEAAqG","sourcesContent":["import { Inject, Injectable, InjectionToken, Optional } from '@angular/core';\nimport { MatDialog } from '@angular/material';\nimport { MAT_DIALOG_DEFAULT_OPTIONS, MatDialogConfig } from '@angular/material/dialog';\nimport { BooleanValueModelChain } from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\n\nimport { InteractionContext } from '../../interaction-context';\nimport { InteractionService } from '../interaction.service';\nimport { ModalInteractionContextFactory } from '../modal-interaction-context.factory';\nimport { DialogInteractionContext } from './dialog-interaction-context';\n\nexport const DIALOG_INTERACTION_SERVICE_DEFAULTS = new InjectionToken<MatDialogConfig<any>>('DIALOG_INTERACTION_SERVICE_DEFAULTS');\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DialogInteractionContextFactory extends ModalInteractionContextFactory {\n\n readonly active: BooleanValueModelChain;\n\n constructor(private readonly dialogService: MatDialog,\n @Optional() @Inject(DIALOG_INTERACTION_SERVICE_DEFAULTS) readonly dialogServiceDefaults: MatDialogConfig<any>,\n @Optional() @Inject(MAT_DIALOG_DEFAULT_OPTIONS) readonly matDialogDefaultConfig: MatDialogConfig<any>\n ) {\n super();\n assert.notNil(dialogService);\n }\n\n createInteractionContext(identifier: string, api: InteractionService.Api): InteractionContext {\n const config: MatDialogConfig = {\n autoFocus: false,\n hasBackdrop: true,\n closeOnNavigation: false,\n ...this.matDialogDefaultConfig,\n ...this.dialogServiceDefaults\n };\n\n return new DialogInteractionContext(identifier, api, this.dialogService, config);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"DIALOG_INTERACTION_SERVICE_DEFAULTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"DIALOG_INTERACTION_SERVICE_DEFAULTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":11,"character":55},"arguments":["DIALOG_INTERACTION_SERVICE_DEFAULTS"]},"DialogInteractionContextFactory":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../modal-interaction-context.factory","name":"ModalInteractionContextFactory","line":16,"character":53},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":21,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":27},"arguments":[{"__symbolic":"reference","name":"DIALOG_INTERACTION_SERVICE_DEFAULTS"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":22,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":27},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DEFAULT_OPTIONS","line":22,"character":34}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/material","name":"MatDialog","line":20,"character":46},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogConfig","line":21,"character":103,"arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogConfig","line":21,"character":103,"arguments":[{"__symbolic":"reference","name":"any"}]}]}],"createInteractionContext":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}}}]
|
package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js
CHANGED
|
@@ -2,56 +2,67 @@
|
|
|
2
2
|
* @fileoverview added by tsickle
|
|
3
3
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import { GarbageCollector, lang } from '@coolon/pectin';
|
|
6
6
|
import { assert } from '@coolon/typescript-utilities';
|
|
7
|
+
import { AbstractInteractionContext } from '../../abstract-interaction-context';
|
|
7
8
|
import { ActivityContainerComponent } from '../../components/activity-container/activity-container.component';
|
|
8
|
-
|
|
9
|
-
export class DialogInteractionContext extends InteractionContextBase {
|
|
9
|
+
export class DialogInteractionContext extends AbstractInteractionContext {
|
|
10
10
|
/**
|
|
11
|
+
* @param {?} identifier
|
|
12
|
+
* @param {?} api
|
|
11
13
|
* @param {?} dialogService
|
|
12
14
|
* @param {?} config
|
|
13
15
|
*/
|
|
14
|
-
constructor(dialogService, config) {
|
|
16
|
+
constructor(identifier, api, dialogService, config) {
|
|
15
17
|
super();
|
|
18
|
+
this.identifier = identifier;
|
|
19
|
+
this.api = api;
|
|
16
20
|
this.dialogService = dialogService;
|
|
17
21
|
this.config = config;
|
|
18
|
-
this.
|
|
22
|
+
this.garbage = new GarbageCollector();
|
|
19
23
|
assert.notNil(dialogService);
|
|
20
|
-
this.onDispose((/**
|
|
21
|
-
* @return {?}
|
|
22
|
-
*/
|
|
23
|
-
() => {
|
|
24
|
-
if (this.isActive()) {
|
|
25
|
-
lang.illegalState('Dispose called while active.');
|
|
26
|
-
}
|
|
27
|
-
}));
|
|
28
24
|
}
|
|
29
25
|
/**
|
|
30
26
|
* @return {?}
|
|
31
27
|
*/
|
|
32
|
-
|
|
33
|
-
return this.
|
|
28
|
+
cancelActiveActivity() {
|
|
29
|
+
return this.activityContainer.cancelActiveActivity();
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @return {?}
|
|
33
|
+
*/
|
|
34
|
+
dispose() {
|
|
35
|
+
if (this.isActive()) {
|
|
36
|
+
lang.illegalState('Dispose called while active.');
|
|
37
|
+
}
|
|
38
|
+
this.garbage.dispose();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @template T
|
|
42
|
+
* @param {?} disposable
|
|
43
|
+
* @return {?}
|
|
44
|
+
*/
|
|
45
|
+
registerDisposable(disposable) {
|
|
46
|
+
return this.garbage.registerDisposable(disposable);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* @return {?}
|
|
50
|
+
*/
|
|
51
|
+
isActive() {
|
|
52
|
+
return !!this.activityContainer && this.activityContainer.isActive();
|
|
34
53
|
}
|
|
35
54
|
/**
|
|
36
55
|
* @protected
|
|
37
56
|
* @template D, R, E
|
|
38
57
|
* @param {?} activityType
|
|
39
58
|
* @param {?} data
|
|
40
|
-
* @param {
|
|
59
|
+
* @param {?} disableClose
|
|
41
60
|
* @return {?}
|
|
42
61
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
lang.illegalState(`Activity already in progress: ${this.activityList.value.map((/**
|
|
46
|
-
* @param {?} a
|
|
47
|
-
* @return {?}
|
|
48
|
-
*/
|
|
49
|
-
a => a.constructor.name)).join(', ')}`);
|
|
50
|
-
}
|
|
51
|
-
this._activeModel.value = true;
|
|
62
|
+
createAndLaunchActivity(activityType, data, disableClose) {
|
|
63
|
+
assert.isNil(this._currentActivityRef);
|
|
52
64
|
/** @type {?} */
|
|
53
65
|
const config = Object.assign({}, this.config, {
|
|
54
|
-
data,
|
|
55
66
|
disableClose,
|
|
56
67
|
panelClass: 'dialog-interaction-context'
|
|
57
68
|
});
|
|
@@ -59,73 +70,37 @@ export class DialogInteractionContext extends InteractionContextBase {
|
|
|
59
70
|
const self = this;
|
|
60
71
|
/** @type {?} */
|
|
61
72
|
const matDialogRef = (/** @type {?} */ (this.dialogService.open(ActivityContainerComponent, config)));
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
73
|
+
/** @type {?} */
|
|
74
|
+
const activityContainer = this.activityContainer = matDialogRef.componentInstance;
|
|
75
|
+
this.activityContainer.initialise(this.identifier, this.api);
|
|
76
|
+
/** @type {?} */
|
|
77
|
+
const activityResult = this.activityContainer.startActivity(activityType, data);
|
|
78
|
+
activityResult.finally((/**
|
|
65
79
|
* @return {?}
|
|
66
80
|
*/
|
|
67
|
-
(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
activityData: data,
|
|
74
|
-
/**
|
|
75
|
-
* @param {?} result
|
|
76
|
-
* @return {?}
|
|
77
|
-
*/
|
|
78
|
-
onDone(result) {
|
|
79
|
-
resolve(result);
|
|
80
|
-
matDialogRef.close(true); // return true to let the after close listener know we've already handled it.
|
|
81
|
-
},
|
|
82
|
-
/**
|
|
83
|
-
* @param {?} error
|
|
84
|
-
* @return {?}
|
|
85
|
-
*/
|
|
86
|
-
onCancel(error) {
|
|
87
|
-
reject(error);
|
|
88
|
-
matDialogRef.close(true); // return true to let the after close listener know we've already handled it.
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
// we need to check if our onDone/onCancel methods above we called or if we were
|
|
92
|
-
// closed by the user clicking the backdrop. If the later then we need to reject
|
|
93
|
-
// our promise.
|
|
94
|
-
matDialogRef.afterClosed().subscribe((/**
|
|
95
|
-
* @param {?} promiseAlreadyFinished
|
|
96
|
-
* @return {?}
|
|
97
|
-
*/
|
|
98
|
-
promiseAlreadyFinished => {
|
|
99
|
-
if (!promiseAlreadyFinished) {
|
|
100
|
-
reject('auto-closed');
|
|
101
|
-
}
|
|
102
|
-
}));
|
|
103
|
-
matDialogRef.updateSize();
|
|
104
|
-
matDialogRef.afterOpened().subscribe((/**
|
|
105
|
-
* @param {?} promiseAlreadyFinished
|
|
106
|
-
* @return {?}
|
|
107
|
-
*/
|
|
108
|
-
promiseAlreadyFinished => {
|
|
109
|
-
matDialogRef.updateSize();
|
|
110
|
-
}));
|
|
111
|
-
})).finally((/**
|
|
81
|
+
() => matDialogRef.close()));
|
|
82
|
+
// we need to check if our onDone/onCancel methods above we called or if we were
|
|
83
|
+
// closed by the user clicking the backdrop. If the later then we need to cancel our
|
|
84
|
+
// activity.
|
|
85
|
+
matDialogRef.afterClosed().subscribe((/**
|
|
86
|
+
* @param {?} promiseAlreadyFinished
|
|
112
87
|
* @return {?}
|
|
113
88
|
*/
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
89
|
+
promiseAlreadyFinished => {
|
|
90
|
+
if (activityContainer.isActive()) {
|
|
91
|
+
activityContainer.cancelActiveActivity();
|
|
92
|
+
}
|
|
93
|
+
this.activityContainer = null;
|
|
117
94
|
}));
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
* @param {?} delegate
|
|
122
|
-
* @return {?}
|
|
123
|
-
*/
|
|
124
|
-
safelyUpdateActivityListDelegate(delegate) {
|
|
125
|
-
setTimeout((/**
|
|
95
|
+
matDialogRef.updateSize();
|
|
96
|
+
matDialogRef.afterOpened().subscribe((/**
|
|
97
|
+
* @param {?} promiseAlreadyFinished
|
|
126
98
|
* @return {?}
|
|
127
99
|
*/
|
|
128
|
-
|
|
100
|
+
promiseAlreadyFinished => {
|
|
101
|
+
matDialogRef.updateSize();
|
|
102
|
+
}));
|
|
103
|
+
return activityResult;
|
|
129
104
|
}
|
|
130
105
|
}
|
|
131
106
|
if (false) {
|
|
@@ -133,7 +108,24 @@ if (false) {
|
|
|
133
108
|
* @type {?}
|
|
134
109
|
* @private
|
|
135
110
|
*/
|
|
136
|
-
DialogInteractionContext.prototype.
|
|
111
|
+
DialogInteractionContext.prototype.garbage;
|
|
112
|
+
/**
|
|
113
|
+
* @type {?}
|
|
114
|
+
* @private
|
|
115
|
+
*/
|
|
116
|
+
DialogInteractionContext.prototype._currentActivityRef;
|
|
117
|
+
/**
|
|
118
|
+
* @type {?}
|
|
119
|
+
* @private
|
|
120
|
+
*/
|
|
121
|
+
DialogInteractionContext.prototype.activityContainer;
|
|
122
|
+
/** @type {?} */
|
|
123
|
+
DialogInteractionContext.prototype.identifier;
|
|
124
|
+
/**
|
|
125
|
+
* @type {?}
|
|
126
|
+
* @private
|
|
127
|
+
*/
|
|
128
|
+
DialogInteractionContext.prototype.api;
|
|
137
129
|
/**
|
|
138
130
|
* @type {?}
|
|
139
131
|
* @private
|
package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-interaction-context.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.ts"],"names":[],"mappings":";;;;AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"dialog-interaction-context.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.ts"],"names":[],"mappings":"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","sourcesContent":["import { MatDialog } from '@angular/material';\nimport { MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\nimport { Constructable, DelegatingValueModel, Disposable, GarbageCollector, lang, Trace } from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { AbstractInteractionContext } from '../../abstract-interaction-context';\nimport { Activity } from '../../activity';\nimport { ActivityRef } from '../../activity-ref';\nimport { ActivityContainerComponent } from '../../components/activity-container/activity-container.component';\nimport { InteractionService } from '../interaction.service';\n\nexport class DialogInteractionContext extends AbstractInteractionContext {\n\n private garbage = new GarbageCollector();\n private _currentActivityRef: ActivityRef<any, any, any>;\n private activityContainer: ActivityContainerComponent<any, any, any>;\n\n constructor(readonly identifier: string,\n private readonly api: InteractionService.Api,\n private readonly dialogService: MatDialog,\n readonly config: MatDialogConfig<any>) {\n super();\n assert.notNil(dialogService);\n }\n\n cancelActiveActivity(): Promise<boolean> {\n return this.activityContainer.cancelActiveActivity();\n }\n\n dispose(): void {\n if (this.isActive()) {\n lang.illegalState('Dispose called while active.');\n }\n this.garbage.dispose();\n }\n\n registerDisposable<T extends Disposable>(disposable: T): T {\n return this.garbage.registerDisposable(disposable);\n }\n\n isActive(): boolean {\n return !!this.activityContainer && this.activityContainer.isActive();\n }\n\n protected createAndLaunchActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data: D, disableClose: boolean): Promise<R> {\n assert.isNil(this._currentActivityRef);\n\n const config: MatDialogConfig = {\n ...this.config,\n ...{\n disableClose,\n panelClass: 'dialog-interaction-context'\n }\n };\n const self = this;\n const matDialogRef = this.dialogService.open(ActivityContainerComponent, config) as MatDialogRef<ActivityContainerComponent<D, R, E>>;\n const activityContainer = this.activityContainer = matDialogRef.componentInstance;\n this.activityContainer.initialise(this.identifier, this.api);\n const activityResult = this.activityContainer.startActivity(activityType, data);\n\n activityResult.finally(() => matDialogRef.close());\n // we need to check if our onDone/onCancel methods above we called or if we were\n // closed by the user clicking the backdrop. If the later then we need to cancel our\n // activity.\n matDialogRef.afterClosed().subscribe(promiseAlreadyFinished => {\n if (activityContainer.isActive()) {\n activityContainer.cancelActiveActivity();\n }\n this.activityContainer = null;\n });\n matDialogRef.updateSize();\n matDialogRef.afterOpened().subscribe(promiseAlreadyFinished => {\n matDialogRef.updateSize();\n });\n\n return activityResult;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"DialogInteractionContext":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../interaction-context
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"DialogInteractionContext":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../abstract-interaction-context","name":"AbstractInteractionContext","line":10,"character":46},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../interaction.service","name":"InteractionService","line":17,"character":36},"member":"Api"},{"__symbolic":"reference","module":"@angular/material","name":"MatDialog","line":18,"character":46},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogConfig","line":19,"character":31,"arguments":[{"__symbolic":"reference","name":"any"}]}]}],"cancelActiveActivity":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"registerDisposable":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"createAndLaunchActivity":[{"__symbolic":"method"}]}}}}]
|
|
@@ -10,8 +10,10 @@ export class ModalInteractionContextFactory {
|
|
|
10
10
|
if (false) {
|
|
11
11
|
/**
|
|
12
12
|
* @abstract
|
|
13
|
+
* @param {?} identifier
|
|
14
|
+
* @param {?} api
|
|
13
15
|
* @return {?}
|
|
14
16
|
*/
|
|
15
|
-
ModalInteractionContextFactory.prototype.createInteractionContext = function () { };
|
|
17
|
+
ModalInteractionContextFactory.prototype.createInteractionContext = function (identifier, api) { };
|
|
16
18
|
}
|
|
17
19
|
//# sourceMappingURL=modal-interaction-context.factory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal-interaction-context.factory.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/modal-interaction-context.factory.ts"],"names":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"modal-interaction-context.factory.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/interaction/services/modal-interaction-context.factory.ts"],"names":[],"mappings":";;;;;;;AAGA,MAAM,OAAgB,8BAA8B;CAGnD;;;;;;;;IADC,mGAAuG","sourcesContent":["import { InteractionContext } from '../interaction-context';\nimport { InteractionService } from './interaction.service';\n\nexport abstract class ModalInteractionContextFactory {\n\n abstract createInteractionContext(identifier: string, api: InteractionService.Api): InteractionContext;\n}\n"]}
|
|
@@ -4,16 +4,21 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import * as tslib_1 from "tslib";
|
|
6
6
|
import { Component, Input } from '@angular/core';
|
|
7
|
-
import { Command, Dsl, ListModel, StoreInListModel, StoreInValueModel, UseDelegate, ValueModel } from '@coolon/pectin';
|
|
7
|
+
import { Command, DelegatingValueModel, Dsl, ListModel, StoreInListModel, StoreInValueModel, UseDelegate, ValueModel } from '@coolon/pectin';
|
|
8
8
|
import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
|
|
9
9
|
import { DisposableComponent } from '../../components/disposable-component';
|
|
10
10
|
import { PlaceComponent } from '../place-component';
|
|
11
11
|
import { PlaceDefinition } from '../place-definition';
|
|
12
|
+
import { PlaceRouter } from '../place-router';
|
|
12
13
|
import { Visit } from '../visit';
|
|
13
14
|
import { PlaceOutletComponent } from './place-outlet/place-outlet.component';
|
|
14
15
|
export class AbstractPlaceNavigationComponent extends DisposableComponent {
|
|
15
|
-
|
|
16
|
+
/**
|
|
17
|
+
* @param {?} placeRouter
|
|
18
|
+
*/
|
|
19
|
+
constructor(placeRouter) {
|
|
16
20
|
super();
|
|
21
|
+
this._activePlaceComponent = new DelegatingValueModel();
|
|
17
22
|
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
18
23
|
this.placeDefinitions = chain(this.placesModel).map((/**
|
|
19
24
|
* @param {?} c
|
|
@@ -27,11 +32,20 @@ export class AbstractPlaceNavigationComponent extends DisposableComponent {
|
|
|
27
32
|
(placeDefinition) => {
|
|
28
33
|
this.placeOutlet.navigate(new Visit(placeDefinition));
|
|
29
34
|
}));
|
|
30
|
-
|
|
31
|
-
* @param {?}
|
|
35
|
+
when.valueOf(this.placeOutletModel).changes((/**
|
|
36
|
+
* @param {?} outlet
|
|
32
37
|
* @return {?}
|
|
33
38
|
*/
|
|
34
|
-
|
|
39
|
+
outlet => {
|
|
40
|
+
// NOTE: this updates during a change cycle and causes our isActiveMethod to return 2 different
|
|
41
|
+
// values in the one change detection cycle. So instead we delay the update to a different
|
|
42
|
+
// tick.
|
|
43
|
+
setTimeout((/**
|
|
44
|
+
* @return {?}
|
|
45
|
+
*/
|
|
46
|
+
() => this._activePlaceComponent.setDelegate(outlet ? outlet.activePlaceModel : null)));
|
|
47
|
+
}));
|
|
48
|
+
this.activePlaceDefinition = chain(this._activePlaceComponent).pluck('placeDefinition');
|
|
35
49
|
}
|
|
36
50
|
/**
|
|
37
51
|
* @param {?} placeDef
|
|
@@ -74,7 +88,9 @@ AbstractPlaceNavigationComponent.decorators = [
|
|
|
74
88
|
}] }
|
|
75
89
|
];
|
|
76
90
|
/** @nocollapse */
|
|
77
|
-
AbstractPlaceNavigationComponent.ctorParameters = () => [
|
|
91
|
+
AbstractPlaceNavigationComponent.ctorParameters = () => [
|
|
92
|
+
{ type: PlaceRouter }
|
|
93
|
+
];
|
|
78
94
|
AbstractPlaceNavigationComponent.propDecorators = {
|
|
79
95
|
places: [{ type: Input }],
|
|
80
96
|
placesModel: [{ type: Input }],
|
|
@@ -117,6 +133,11 @@ if (false) {
|
|
|
117
133
|
/** @type {?} */
|
|
118
134
|
AbstractPlaceNavigationComponent.prototype.commandFactory;
|
|
119
135
|
/** @type {?} */
|
|
136
|
+
AbstractPlaceNavigationComponent.prototype._activePlaceComponent;
|
|
137
|
+
/**
|
|
138
|
+
* @type {?}
|
|
139
|
+
* @private
|
|
140
|
+
*/
|
|
120
141
|
AbstractPlaceNavigationComponent.prototype.activePlaceDefinition;
|
|
121
142
|
}
|
|
122
143
|
//# sourceMappingURL=abstract-place-navigation.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-place-navigation.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/components/abstract-place-navigation.component.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"abstract-place-navigation.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/components/abstract-place-navigation.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport {\n Command,\n Constructable,\n DelegatingValueModel,\n Dsl,\n ListModel,\n ListModelChain,\n StoreInListModel,\n StoreInValueModel,\n TransactionObserver,\n UseDelegate,\n ValueModel,\n ValueModelChain\n} from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport { DisposableComponent } from '../../components/disposable-component';\nimport { NavItem } from '../nav-item';\nimport { PlaceComponent } from '../place-component';\nimport { PlaceDefinition } from '../place-definition';\nimport { PlaceRouter } from '../place-router';\nimport { Visit } from '../visit';\nimport { PlaceOutletComponent } from './place-outlet/place-outlet.component';\n\n@Component({\n template: ''\n})\nexport class AbstractPlaceNavigationComponent extends DisposableComponent implements OnInit {\n\n @Input() @StoreInListModel('placesModel')\n places: Constructable<PlaceComponent>[];\n\n @Input() @UseDelegate()\n placesModel: ListModel<Constructable<PlaceComponent>>;\n\n\n @Input() @StoreInValueModel('placeOutletModel')\n placeOutlet: PlaceOutletComponent;\n\n @Input() @UseDelegate()\n placeOutletModel: ValueModel<PlaceOutletComponent>;\n\n readonly placeDefinitions: ListModelChain<PlaceDefinition>;\n\n readonly commandFactory: Command.Factory<PlaceDefinition, void>;\n readonly _activePlaceComponent = new DelegatingValueModel<PlaceComponent>();\n private activePlaceDefinition: ValueModelChain<PlaceDefinition>;\n\n constructor(placeRouter: PlaceRouter) {\n super();\n const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);\n this.placeDefinitions = chain(this.placesModel).map(c => PlaceComponent.getDefinition(c));\n this.commandFactory = Command.createFactory((placeDefinition: PlaceDefinition) => {\n this.placeOutlet.navigate(new Visit(placeDefinition));\n });\n\n when.valueOf(this.placeOutletModel).changes(outlet => {\n // NOTE: this updates during a change cycle and causes our isActiveMethod to return 2 different\n // values in the one change detection cycle. So instead we delay the update to a different\n // tick.\n setTimeout(() => this._activePlaceComponent.setDelegate(outlet ? outlet.activePlaceModel : null));\n });\n this.activePlaceDefinition = chain(this._activePlaceComponent).pluck('placeDefinition');\n }\n\n\n @Memoize()\n getNav(placeDef: PlaceDefinition): NavItem {\n const navItem = placeDef.getPlaceData('nav') as NavItem;\n return {\n title: () => navItem ? navItem.title() : placeDef.searchPlaceData(['navTitle', 'title']),\n tooltip: () => navItem && navItem.tooltip ? navItem.tooltip() : placeDef.getPlaceData('navTooltip', null),\n icon: () => navItem && navItem.icon ? navItem.icon() : placeDef.getPlaceData('navIcon', null)\n };\n }\n\n isActive(place: PlaceDefinition): boolean {\n return this.activePlaceDefinition.query().equals(place);\n }\n\n ngOnInit() {\n }\n\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"AbstractPlaceNavigationComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../components/disposable-component","name":"DisposableComponent","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AbstractPlaceNavigationComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../components/disposable-component","name":"DisposableComponent","line":27,"character":54},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":24,"character":1},"arguments":[{"template":""}]}],"members":{"places":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":29,"character":12},"arguments":["placesModel"]}]}],"placesModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":32,"character":12}}]}],"placeOutlet":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":36,"character":12},"arguments":["placeOutletModel"]}]}],"placeOutletModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":39,"character":12}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"../place-router","name":"PlaceRouter","line":48,"character":27}]}],"getNav":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@typescript-plus/fast-memoize-decorator/dist/src","name":"Memoize","line":66,"character":3}}]}],"isActive":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}]}}}}]
|
|
@@ -3,10 +3,14 @@
|
|
|
3
3
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
4
|
*/
|
|
5
5
|
import { Component, HostBinding } from '@angular/core';
|
|
6
|
+
import { PlaceRouter } from '../../place-router';
|
|
6
7
|
import { AbstractPlaceNavigationComponent } from '../abstract-place-navigation.component';
|
|
7
8
|
export class ListPlaceNavComponent extends AbstractPlaceNavigationComponent {
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* @param {?} placeRouter
|
|
11
|
+
*/
|
|
12
|
+
constructor(placeRouter) {
|
|
13
|
+
super(placeRouter);
|
|
10
14
|
this.expanded = true;
|
|
11
15
|
}
|
|
12
16
|
/**
|
|
@@ -36,7 +40,9 @@ ListPlaceNavComponent.decorators = [
|
|
|
36
40
|
}] }
|
|
37
41
|
];
|
|
38
42
|
/** @nocollapse */
|
|
39
|
-
ListPlaceNavComponent.ctorParameters = () => [
|
|
43
|
+
ListPlaceNavComponent.ctorParameters = () => [
|
|
44
|
+
{ type: PlaceRouter }
|
|
45
|
+
];
|
|
40
46
|
ListPlaceNavComponent.propDecorators = {
|
|
41
47
|
expanded: [{ type: HostBinding, args: ['class.expanded',] }]
|
|
42
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-place-nav.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/components/list-place-nav/list-place-nav.component.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAO1F,MAAM,OAAO,qBAAsB,SAAQ,gCAAgC
|
|
1
|
+
{"version":3,"file":"list-place-nav.component.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/components/list-place-nav/list-place-nav.component.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAO1F,MAAM,OAAO,qBAAsB,SAAQ,gCAAgC;;;;IAKzE,YAAY,WAAuB;QACjC,KAAK,CAAC,WAAW,CAAC,CAAC;QAHd,aAAQ,GAAG,IAAI,CAAC;IAIvB,CAAC;;;;IAED,UAAU;QACR,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;;;;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;;;;IAED,UAAU;QACR,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;IACjC,CAAC;;;YAxBF,SAAS,SAAC;gBACT,QAAQ,EAAE,oBAAoB;gBAC9B,ufAA8C;;aAE/C;;;;YAPQ,WAAW;;;uBAUjB,WAAW,SAAC,gBAAgB;;;;IAA7B,yCACuB","sourcesContent":["import { Component, HostBinding } from '@angular/core';\nimport { PlaceRouter } from '../../place-router';\nimport { AbstractPlaceNavigationComponent } from '../abstract-place-navigation.component';\n\n@Component({\n selector: 'aup-list-place-nav',\n templateUrl: './list-place-nav.component.html',\n styleUrls: ['./list-place-nav.component.scss']\n})\nexport class ListPlaceNavComponent extends AbstractPlaceNavigationComponent {\n\n @HostBinding('class.expanded')\n public expanded = true;\n\n constructor(placeRouter:PlaceRouter) {\n super(placeRouter);\n }\n\n expandMenu() {\n this.expanded = true;\n }\n\n collapseMenu() {\n this.expanded = false;\n }\n\n toggleMenu() {\n this.expanded = !this.expanded;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"ListPlaceNavComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-place-navigation.component","name":"AbstractPlaceNavigationComponent","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"ListPlaceNavComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-place-navigation.component","name":"AbstractPlaceNavigationComponent","line":9,"character":43},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-list-place-nav","template":"<mat-nav-list class=\"app-menu\">\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n</mat-nav-list>\n","styles":[":host{display:flex;flex-direction:column;--expanded-width:235px;--nav-item-width:var(--nav-bar-height);width:var(--nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--expanded-width);max-width:var(--expanded-width)}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}.header{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;height:var(--nav-bar-height);border-bottom:var(--pinstripe-border);cursor:pointer}.header .menu{flex:1}.header button{color:inherit;width:var(--nav-item-width);height:var(--nav-bar-height)}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--nav-item-width);height:var(--nav-bar-height);color:rgba(0,0,0,.6)}.mat-list-item.active{background-color:rgba(0,0,0,.1);color:rgba(0,0,0,.9)}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item mat-icon{margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}a[ng-reflect-router-link=manage-instruments] mat-icon{transform:rotate(90deg)}.app-menu{padding-top:0}"]}]}],"members":{"expanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":11,"character":3},"arguments":["class.expanded"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"../../place-router","name":"PlaceRouter","line":14,"character":26}]}],"expandMenu":[{"__symbolic":"method"}],"collapseMenu":[{"__symbolic":"method"}],"toggleMenu":[{"__symbolic":"method"}]}}}}]
|