@coolon/angular-ui-powerups 0.0.126 → 0.0.128

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.
Files changed (350) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +3753 -3020
  2. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  3. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  4. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  5. package/coolon-angular-ui-powerups.d.ts +17 -18
  6. package/coolon-angular-ui-powerups.metadata.json +1 -1
  7. package/esm2015/coolon-angular-ui-powerups.js +16 -17
  8. package/esm2015/coolon-angular-ui-powerups.js.map +1 -1
  9. package/esm2015/coolon-angular-ui-powerups.metadata.json +1 -1
  10. package/esm2015/index.js +1 -1
  11. package/esm2015/index.js.map +1 -1
  12. package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  13. package/esm2015/lib/interaction/abstract-interaction-context.js +104 -0
  14. package/esm2015/lib/interaction/abstract-interaction-context.js.map +1 -0
  15. package/esm2015/lib/interaction/abstract-interaction-context.metadata.json +1 -0
  16. package/esm2015/lib/interaction/activity-ref.js +123 -0
  17. package/esm2015/lib/interaction/activity-ref.js.map +1 -0
  18. package/esm2015/lib/interaction/activity-ref.metadata.json +1 -0
  19. package/esm2015/lib/interaction/activity.js +21 -1
  20. package/esm2015/lib/interaction/activity.js.map +1 -1
  21. package/esm2015/lib/interaction/activity.metadata.json +1 -1
  22. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +199 -230
  23. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  24. package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
  25. package/esm2015/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.js +24 -31
  26. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -0
  27. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.metadata.json +1 -0
  28. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ngfactory.js.map +1 -0
  29. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +1 -0
  30. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -3
  31. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
  32. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.metadata.json +1 -1
  33. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +4 -11
  34. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
  35. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.metadata.json +1 -1
  36. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +2 -3
  37. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
  38. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.metadata.json +1 -1
  39. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +113 -0
  40. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -0
  41. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.metadata.json +1 -0
  42. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.ngfactory.js.map +1 -0
  43. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.scss.shim.ngstyle.js.map +1 -0
  44. package/esm2015/lib/interaction/index.js +7 -6
  45. package/esm2015/lib/interaction/index.js.map +1 -1
  46. package/esm2015/lib/interaction/index.metadata.json +1 -1
  47. package/esm2015/lib/interaction/interaction-context.js +12 -67
  48. package/esm2015/lib/interaction/interaction-context.js.map +1 -1
  49. package/esm2015/lib/interaction/interaction-context.metadata.json +1 -1
  50. package/esm2015/lib/interaction/interaction.module.js +4 -4
  51. package/esm2015/lib/interaction/interaction.module.js.map +1 -1
  52. package/esm2015/lib/interaction/interaction.module.metadata.json +1 -1
  53. package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  54. package/esm2015/lib/interaction/route-synchronisation-adapter.js +17 -0
  55. package/esm2015/lib/interaction/route-synchronisation-adapter.js.map +1 -0
  56. package/esm2015/lib/interaction/route-synchronisation-adapter.metadata.json +1 -0
  57. package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js +72 -0
  58. package/esm2015/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -0
  59. package/esm2015/lib/interaction/services/interaction-service-routing-adapter.metadata.json +1 -0
  60. package/esm2015/lib/interaction/services/interaction.service.js +174 -104
  61. package/esm2015/lib/interaction/services/interaction.service.js.map +1 -1
  62. package/esm2015/lib/interaction/services/interaction.service.metadata.json +1 -1
  63. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +4 -2
  64. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js.map +1 -1
  65. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.metadata.json +1 -1
  66. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js +79 -87
  67. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js.map +1 -1
  68. package/esm2015/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.metadata.json +1 -1
  69. package/esm2015/lib/interaction/services/modal-interaction-context.factory.js +3 -1
  70. package/esm2015/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
  71. package/esm2015/lib/place/components/abstract-place-navigation.component.js +27 -6
  72. package/esm2015/lib/place/components/abstract-place-navigation.component.js.map +1 -1
  73. package/esm2015/lib/place/components/abstract-place-navigation.component.metadata.json +1 -1
  74. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +9 -3
  75. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
  76. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.metadata.json +1 -1
  77. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +98 -110
  78. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
  79. package/esm2015/lib/place/components/place-outlet/place-outlet.component.metadata.json +1 -1
  80. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +9 -3
  81. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
  82. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.metadata.json +1 -1
  83. package/esm2015/lib/place/guards/place.guard.js +14 -13
  84. package/esm2015/lib/place/guards/place.guard.js.map +1 -1
  85. package/esm2015/lib/place/guards/place.guard.metadata.json +1 -1
  86. package/esm2015/lib/place/index.js +15 -2
  87. package/esm2015/lib/place/index.js.map +1 -1
  88. package/esm2015/lib/place/index.metadata.json +1 -1
  89. package/esm2015/lib/place/{guards → navigation}/place-component-deactivation-handler.js +28 -22
  90. package/esm2015/lib/place/navigation/place-component-deactivation-handler.js.map +1 -0
  91. package/esm2015/lib/place/navigation/place-component-deactivation-handler.metadata.json +1 -0
  92. package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js +37 -0
  93. package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -0
  94. package/esm2015/lib/place/navigation/session/abstract-pop-state-navigation.metadata.json +1 -0
  95. package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +19 -0
  96. package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -0
  97. package/esm2015/lib/place/navigation/session/event-cleanup/event-clean-up-session.metadata.json +1 -0
  98. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +95 -0
  99. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -0
  100. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.metadata.json +1 -0
  101. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +132 -0
  102. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -0
  103. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.metadata.json +1 -0
  104. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +123 -0
  105. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -0
  106. package/esm2015/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.metadata.json +1 -0
  107. package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js +62 -0
  108. package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -0
  109. package/esm2015/lib/place/navigation/session/interactions/navigating-during-interaction.metadata.json +1 -0
  110. package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +48 -0
  111. package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -0
  112. package/esm2015/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.metadata.json +1 -0
  113. package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +104 -0
  114. package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -0
  115. package/esm2015/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.metadata.json +1 -0
  116. package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +141 -0
  117. package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -0
  118. package/esm2015/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.metadata.json +1 -0
  119. package/esm2015/lib/place/navigation/session/navigating.js +54 -0
  120. package/esm2015/lib/place/navigation/session/navigating.js.map +1 -0
  121. package/esm2015/lib/place/navigation/session/navigating.metadata.json +1 -0
  122. package/esm2015/lib/place/navigation/session/navigation-context.js +38 -0
  123. package/esm2015/lib/place/navigation/session/navigation-context.js.map +1 -0
  124. package/esm2015/lib/place/navigation/session/navigation-context.metadata.json +1 -0
  125. package/esm2015/lib/place/navigation/session/navigation-session.js +326 -0
  126. package/esm2015/lib/place/navigation/session/navigation-session.js.map +1 -0
  127. package/esm2015/lib/place/navigation/session/navigation-session.metadata.json +1 -0
  128. package/esm2015/lib/place/navigation/session/pop-state-navigation.js +31 -0
  129. package/esm2015/lib/place/navigation/session/pop-state-navigation.js.map +1 -0
  130. package/esm2015/lib/place/navigation/session/pop-state-navigation.metadata.json +1 -0
  131. package/esm2015/lib/place/place-component.js +46 -15
  132. package/esm2015/lib/place/place-component.js.map +1 -1
  133. package/esm2015/lib/place/place-component.metadata.json +1 -1
  134. package/esm2015/lib/place/place-router.js +314 -309
  135. package/esm2015/lib/place/place-router.js.map +1 -1
  136. package/esm2015/lib/place/place-router.metadata.json +1 -1
  137. package/esm2015/lib/place/place.module.js.map +1 -1
  138. package/esm2015/lib/place/place.module.metadata.json +1 -1
  139. package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
  140. package/esm2015/lib/place/route/parameter-decorators.js +1 -0
  141. package/esm2015/lib/place/route/parameter-decorators.js.map +1 -1
  142. package/esm2015/lib/place/route/parameter-decorators.metadata.json +1 -1
  143. package/esm2015/lib/place/url-service.js +126 -0
  144. package/esm2015/lib/place/url-service.js.map +1 -0
  145. package/esm2015/lib/place/url-service.metadata.json +1 -0
  146. package/esm2015/lib/place/url-service.ngfactory.js.map +1 -0
  147. package/esm2015/lib/place/url-snapshot.js +15 -1
  148. package/esm2015/lib/place/url-snapshot.js.map +1 -1
  149. package/esm2015/lib/place/url-snapshot.metadata.json +1 -1
  150. package/esm2015/lib/place/visit.js +10 -0
  151. package/esm2015/lib/place/visit.js.map +1 -1
  152. package/esm2015/lib/place/visit.metadata.json +1 -1
  153. package/esm2015/public_api.js +2 -2
  154. package/esm2015/public_api.js.map +1 -1
  155. package/esm5/coolon-angular-ui-powerups.js +16 -17
  156. package/esm5/coolon-angular-ui-powerups.js.map +1 -1
  157. package/esm5/index.js +1 -1
  158. package/esm5/index.js.map +1 -1
  159. package/esm5/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  160. package/esm5/lib/interaction/abstract-interaction-context.js +146 -0
  161. package/esm5/lib/interaction/abstract-interaction-context.js.map +1 -0
  162. package/esm5/lib/interaction/activity-ref.js +153 -0
  163. package/esm5/lib/interaction/activity-ref.js.map +1 -0
  164. package/esm5/lib/interaction/activity.js +29 -1
  165. package/esm5/lib/interaction/activity.js.map +1 -1
  166. package/esm5/lib/interaction/components/activity-container/activity-container.component.js +273 -265
  167. package/esm5/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  168. package/esm5/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.js +25 -32
  169. package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -0
  170. package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.ngfactory.js.map +1 -0
  171. package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +1 -0
  172. package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -3
  173. package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
  174. package/esm5/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +4 -10
  175. package/esm5/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
  176. package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +2 -3
  177. package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
  178. package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +158 -0
  179. package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -0
  180. package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.ngfactory.js.map +1 -0
  181. package/esm5/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.scss.shim.ngstyle.js.map +1 -0
  182. package/esm5/lib/interaction/index.js +7 -6
  183. package/esm5/lib/interaction/index.js.map +1 -1
  184. package/esm5/lib/interaction/interaction-context.js +12 -106
  185. package/esm5/lib/interaction/interaction-context.js.map +1 -1
  186. package/esm5/lib/interaction/interaction.module.js +4 -4
  187. package/esm5/lib/interaction/interaction.module.js.map +1 -1
  188. package/esm5/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  189. package/esm5/lib/interaction/route-synchronisation-adapter.js +17 -0
  190. package/esm5/lib/interaction/route-synchronisation-adapter.js.map +1 -0
  191. package/esm5/lib/interaction/services/interaction-service-routing-adapter.js +98 -0
  192. package/esm5/lib/interaction/services/interaction-service-routing-adapter.js.map +1 -0
  193. package/esm5/lib/interaction/services/interaction.service.js +243 -117
  194. package/esm5/lib/interaction/services/interaction.service.js.map +1 -1
  195. package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js +6 -2
  196. package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.js.map +1 -1
  197. package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js +96 -107
  198. package/esm5/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.js.map +1 -1
  199. package/esm5/lib/interaction/services/modal-interaction-context.factory.js +3 -1
  200. package/esm5/lib/interaction/services/modal-interaction-context.factory.js.map +1 -1
  201. package/esm5/lib/place/components/abstract-place-navigation.component.js +24 -6
  202. package/esm5/lib/place/components/abstract-place-navigation.component.js.map +1 -1
  203. package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +6 -3
  204. package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
  205. package/esm5/lib/place/components/place-outlet/place-outlet.component.js +130 -129
  206. package/esm5/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
  207. package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +6 -3
  208. package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js.map +1 -1
  209. package/esm5/lib/place/guards/place.guard.js +17 -13
  210. package/esm5/lib/place/guards/place.guard.js.map +1 -1
  211. package/esm5/lib/place/index.js +15 -2
  212. package/esm5/lib/place/index.js.map +1 -1
  213. package/esm5/lib/place/{guards → navigation}/place-component-deactivation-handler.js +45 -21
  214. package/esm5/lib/place/navigation/place-component-deactivation-handler.js.map +1 -0
  215. package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js +49 -0
  216. package/esm5/lib/place/navigation/session/abstract-pop-state-navigation.js.map +1 -0
  217. package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js +36 -0
  218. package/esm5/lib/place/navigation/session/event-cleanup/event-clean-up-session.js.map +1 -0
  219. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js +151 -0
  220. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.js.map +1 -0
  221. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js +221 -0
  222. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.js.map +1 -0
  223. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js +186 -0
  224. package/esm5/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.js.map +1 -0
  225. package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js +107 -0
  226. package/esm5/lib/place/navigation/session/interactions/navigating-during-interaction.js.map +1 -0
  227. package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js +77 -0
  228. package/esm5/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.js.map +1 -0
  229. package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js +167 -0
  230. package/esm5/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.js.map +1 -0
  231. package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js +185 -0
  232. package/esm5/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.js.map +1 -0
  233. package/esm5/lib/place/navigation/session/navigating.js +75 -0
  234. package/esm5/lib/place/navigation/session/navigating.js.map +1 -0
  235. package/esm5/lib/place/navigation/session/navigation-context.js +32 -0
  236. package/esm5/lib/place/navigation/session/navigation-context.js.map +1 -0
  237. package/esm5/lib/place/navigation/session/navigation-session.js +450 -0
  238. package/esm5/lib/place/navigation/session/navigation-session.js.map +1 -0
  239. package/esm5/lib/place/navigation/session/pop-state-navigation.js +50 -0
  240. package/esm5/lib/place/navigation/session/pop-state-navigation.js.map +1 -0
  241. package/esm5/lib/place/place-component.js +61 -17
  242. package/esm5/lib/place/place-component.js.map +1 -1
  243. package/esm5/lib/place/place-router.js +414 -401
  244. package/esm5/lib/place/place-router.js.map +1 -1
  245. package/esm5/lib/place/place.module.js.map +1 -1
  246. package/esm5/lib/place/place.module.ngfactory.js.map +1 -1
  247. package/esm5/lib/place/route/parameter-decorators.js +1 -0
  248. package/esm5/lib/place/route/parameter-decorators.js.map +1 -1
  249. package/esm5/lib/place/url-service.js +176 -0
  250. package/esm5/lib/place/url-service.js.map +1 -0
  251. package/esm5/lib/place/url-service.ngfactory.js.map +1 -0
  252. package/esm5/lib/place/url-snapshot.js +22 -1
  253. package/esm5/lib/place/url-snapshot.js.map +1 -1
  254. package/esm5/lib/place/visit.js +14 -0
  255. package/esm5/lib/place/visit.js.map +1 -1
  256. package/esm5/public_api.js +2 -2
  257. package/esm5/public_api.js.map +1 -1
  258. package/fesm2015/coolon-angular-ui-powerups.js +2644 -2266
  259. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  260. package/fesm5/coolon-angular-ui-powerups.js +3703 -2982
  261. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  262. package/lib/interaction/abstract-interaction-context.d.ts +24 -0
  263. package/lib/interaction/activity-ref.d.ts +19 -0
  264. package/lib/interaction/activity.d.ts +5 -1
  265. package/lib/interaction/components/activity-container/activity-container.component.d.ts +42 -43
  266. package/lib/interaction/components/{activity-outlet → activity-container/activity-outlet}/activity-outlet.component.d.ts +7 -10
  267. package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +2 -2
  268. package/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.d.ts +2 -5
  269. package/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.d.ts +2 -2
  270. package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +24 -0
  271. package/lib/interaction/index.d.ts +6 -5
  272. package/lib/interaction/interaction-context.d.ts +8 -29
  273. package/lib/interaction/route-synchronisation-adapter.d.ts +5 -0
  274. package/lib/interaction/services/interaction-service-routing-adapter.d.ts +15 -0
  275. package/lib/interaction/services/interaction.service.d.ts +52 -24
  276. package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +2 -1
  277. package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +15 -12
  278. package/lib/interaction/services/modal-interaction-context.factory.d.ts +2 -1
  279. package/lib/place/components/abstract-place-navigation.component.d.ts +5 -3
  280. package/lib/place/components/list-place-nav/list-place-nav.component.d.ts +2 -1
  281. package/lib/place/components/place-outlet/place-outlet.component.d.ts +9 -10
  282. package/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.d.ts +2 -1
  283. package/lib/place/guards/place.guard.d.ts +4 -3
  284. package/lib/place/index.d.ts +15 -2
  285. package/lib/place/navigation/place-component-deactivation-handler.d.ts +22 -0
  286. package/lib/place/navigation/session/abstract-pop-state-navigation.d.ts +9 -0
  287. package/lib/place/navigation/session/event-cleanup/event-clean-up-session.d.ts +4 -0
  288. package/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.d.ts +27 -0
  289. package/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes.d.ts +43 -0
  290. package/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.d.ts +33 -0
  291. package/lib/place/navigation/session/interactions/navigating-during-interaction.d.ts +15 -0
  292. package/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.d.ts +17 -0
  293. package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +24 -0
  294. package/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.d.ts +15 -0
  295. package/lib/place/navigation/session/navigating.d.ts +11 -0
  296. package/lib/place/navigation/session/navigation-context.d.ts +28 -0
  297. package/lib/place/navigation/session/navigation-session.d.ts +51 -0
  298. package/lib/place/navigation/session/pop-state-navigation.d.ts +7 -0
  299. package/lib/place/place-component.d.ts +6 -3
  300. package/lib/place/place-router.d.ts +39 -35
  301. package/lib/place/url-service.d.ts +30 -0
  302. package/lib/place/url-snapshot.d.ts +3 -1
  303. package/lib/place/visit.d.ts +1 -0
  304. package/package.json +1 -1
  305. package/schematics/place-routes/templates/place-routes.ts.template +4 -3
  306. package/esm2015/lib/interaction/abstract-activity.js +0 -13
  307. package/esm2015/lib/interaction/abstract-activity.js.map +0 -1
  308. package/esm2015/lib/interaction/abstract-activity.metadata.json +0 -1
  309. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js +0 -21
  310. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js.map +0 -1
  311. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.metadata.json +0 -1
  312. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.js.map +0 -1
  313. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.metadata.json +0 -1
  314. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.ngfactory.js.map +0 -1
  315. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +0 -1
  316. package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js +0 -102
  317. package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js.map +0 -1
  318. package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.metadata.json +0 -1
  319. package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.ngfactory.js.map +0 -1
  320. package/esm2015/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.scss.shim.ngstyle.js.map +0 -1
  321. package/esm2015/lib/interaction/interaction-context-base.js +0 -171
  322. package/esm2015/lib/interaction/interaction-context-base.js.map +0 -1
  323. package/esm2015/lib/interaction/interaction-context-base.metadata.json +0 -1
  324. package/esm2015/lib/place/guards/navigation-state.js +0 -1118
  325. package/esm2015/lib/place/guards/navigation-state.js.map +0 -1
  326. package/esm2015/lib/place/guards/navigation-state.metadata.json +0 -1
  327. package/esm2015/lib/place/guards/place-component-deactivation-handler.js.map +0 -1
  328. package/esm2015/lib/place/guards/place-component-deactivation-handler.metadata.json +0 -1
  329. package/esm5/lib/interaction/abstract-activity.js +0 -30
  330. package/esm5/lib/interaction/abstract-activity.js.map +0 -1
  331. package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js +0 -21
  332. package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js.map +0 -1
  333. package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.js.map +0 -1
  334. package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.ngfactory.js.map +0 -1
  335. package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.scss.shim.ngstyle.js.map +0 -1
  336. package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js +0 -119
  337. package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.js.map +0 -1
  338. package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.ngfactory.js.map +0 -1
  339. package/esm5/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.scss.shim.ngstyle.js.map +0 -1
  340. package/esm5/lib/interaction/interaction-context-base.js +0 -228
  341. package/esm5/lib/interaction/interaction-context-base.js.map +0 -1
  342. package/esm5/lib/place/guards/navigation-state.js +0 -1491
  343. package/esm5/lib/place/guards/navigation-state.js.map +0 -1
  344. package/esm5/lib/place/guards/place-component-deactivation-handler.js.map +0 -1
  345. package/lib/interaction/abstract-activity.d.ts +0 -6
  346. package/lib/interaction/components/activity-outlet/activity-outlet-context.d.ts +0 -7
  347. package/lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component.d.ts +0 -17
  348. package/lib/interaction/interaction-context-base.d.ts +0 -29
  349. package/lib/place/guards/navigation-state.d.ts +0 -228
  350. package/lib/place/guards/place-component-deactivation-handler.d.ts +0 -15
@@ -13,6 +13,7 @@ export { PlaceHistory } from "./place-history";
13
13
  export { PlaceRouter } from "./place-router";
14
14
  export { Place } from "./place.decorator";
15
15
  export { PlaceModule } from "./place.module";
16
+ export { UrlService } from "./url-service";
16
17
  export { UrlSnapshot } from "./url-snapshot";
17
18
  export { Visit } from "./visit";
18
19
  export { AbstractPlaceNavigationComponent } from "./components/abstract-place-navigation.component";
@@ -23,10 +24,22 @@ export { PlaceOutletComponent } from "./components/place-outlet/place-outlet.com
23
24
  export { leftRightPlaceAnimation, LEFT_RIGHT_PLACE_ANIMATION } from "./components/place-outlet/route-animations";
24
25
  export { TabbedPlaceNavigationComponent } from "./components/tabbed-place-navigation/tabbed-place-navigation.component";
25
26
  export { ConsolidatedParameterMap } from "./guards/consolidated-param-map";
26
- export { NavigationState } from "./guards/navigation-state";
27
27
  export { NoopAuthGuard } from "./guards/noop-auth-guard.service";
28
- export { PlaceComponentDeactivationHandler } from "./guards/place-component-deactivation-handler";
29
28
  export { PlaceGuard } from "./guards/place.guard";
29
+ export { PlaceComponentDeactivationHandler } from "./navigation/place-component-deactivation-handler";
30
+ export { AbstractPopStateNavigation } from "./navigation/session/abstract-pop-state-navigation";
31
+ export { Navigating } from "./navigation/session/navigating";
32
+ export { NavigationContext } from "./navigation/session/navigation-context";
33
+ export { NavigationSession } from "./navigation/session/navigation-session";
34
+ export { PopStateNavigation } from "./navigation/session/pop-state-navigation";
35
+ export { EventCleanUpSession } from "./navigation/session/event-cleanup/event-clean-up-session";
36
+ export { WaitUntilLeavingInteractionTransitionCancelled } from "./navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled";
37
+ export { WaitUntilLinkTriggeredNavigationInteractionCancellationEventsFinish } from "./navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes";
38
+ export { WaitUntilPopStateDuringCanDeactivateInteractionFinishes } from "./navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes";
39
+ export { NavigatingDuringInteraction } from "./navigation/session/interactions/navigating-during-interaction";
40
+ export { PopStateDuringInteractionNavigation } from "./navigation/session/interactions/pop-state-during-interaction-navigation";
41
+ export { RemoveLastInteractionFromUrlNavigationSession } from "./navigation/session/interactions/remove-last-interaction-from-url-navigation-session";
42
+ export { SynchroniseInteractionContextIdsWithRoute } from "./navigation/session/interactions/synchronise-interaction-context-ids-with-route";
30
43
  export { Formatter } from "./route/formatter";
31
44
  export {} from "./route/json-types";
32
45
  export { RouteId, VisitParameter, VisitParameterList } from "./route/parameter-decorators";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/index.ts"],"names":[],"mappings":";;;;;;;AAIA,eAAc,YAAY,CAAC;AAC3B,mFAAc,mBAAmB,CAAC;AAClC,iCAAc,gBAAgB,CAAC;AAC/B,gCAAc,oBAAoB,CAAC;AACnC,6BAAc,iBAAiB,CAAC;AAChC,4BAAc,gBAAgB,CAAC;AAC/B,sBAAc,mBAAmB,CAAC;AAClC,4BAAc,gBAAgB,CAAC;AAC/B,4BAAc,gBAAgB,CAAC;AAC/B,sBAAc,SAAS,CAAC;AACxB,iDAAc,kDAAkD,CAAC;AACjE,qCAAc,kDAAkD,CAAC;AACjE,oCAAc,gDAAgD,CAAC;AAC/D,sCAAc,sDAAsD,CAAC;AACrE,qCAAc,kDAAkD,CAAC;AACjE,oEAAc,4CAA4C,CAAC;AAC3D,+CAAc,wEAAwE,CAAC;AACvF,yCAAc,iCAAiC,CAAC;AAChD,gCAAc,2BAA2B,CAAC;AAC1C,8BAAc,kCAAkC,CAAC;AACjD,kDAAc,+CAA+C,CAAC;AAC9D,2BAAc,sBAAsB,CAAC;AACrC,0BAAc,mBAAmB,CAAC;AAClC,eAAc,oBAAoB,CAAC;AACnC,4DAAc,8BAA8B,CAAC;AAC7C,oCAAc,oCAAoC,CAAC;AACnD,eAAc,6BAA6B,CAAC;AAC5C,eAAc,4BAA4B,CAAC;AAC3C,+BAAc,yBAAyB,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./nav-item\";\nexport * from \"./place-component\";\nexport * from \"./place-config\";\nexport * from \"./place-definition\";\nexport * from \"./place-history\";\nexport * from \"./place-router\";\nexport * from \"./place.decorator\";\nexport * from \"./place.module\";\nexport * from \"./url-snapshot\";\nexport * from \"./visit\";\nexport * from \"./components/abstract-place-navigation.component\";\nexport * from \"./components/busy-overlay/busy-overlay.component\";\nexport * from \"./components/empty-state/empty-state.component\";\nexport * from \"./components/list-place-nav/list-place-nav.component\";\nexport * from \"./components/place-outlet/place-outlet.component\";\nexport * from \"./components/place-outlet/route-animations\";\nexport * from \"./components/tabbed-place-navigation/tabbed-place-navigation.component\";\nexport * from \"./guards/consolidated-param-map\";\nexport * from \"./guards/navigation-state\";\nexport * from \"./guards/noop-auth-guard.service\";\nexport * from \"./guards/place-component-deactivation-handler\";\nexport * from \"./guards/place.guard\";\nexport * from \"./route/formatter\";\nexport * from \"./route/json-types\";\nexport * from \"./route/parameter-decorators\";\nexport * from \"./route/parameter-definition.class\";\nexport * from \"./route/parameter-sanitiser\";\nexport * from \"./route/parameter-snapshot\";\nexport * from \"./route/visit-sanitiser\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/index.ts"],"names":[],"mappings":";;;;;;;AAIA,eAAc,YAAY,CAAC;AAC3B,mFAAc,mBAAmB,CAAC;AAClC,iCAAc,gBAAgB,CAAC;AAC/B,gCAAc,oBAAoB,CAAC;AACnC,6BAAc,iBAAiB,CAAC;AAChC,4BAAc,gBAAgB,CAAC;AAC/B,sBAAc,mBAAmB,CAAC;AAClC,4BAAc,gBAAgB,CAAC;AAC/B,2BAAc,eAAe,CAAC;AAC9B,4BAAc,gBAAgB,CAAC;AAC/B,sBAAc,SAAS,CAAC;AACxB,iDAAc,kDAAkD,CAAC;AACjE,qCAAc,kDAAkD,CAAC;AACjE,oCAAc,gDAAgD,CAAC;AAC/D,sCAAc,sDAAsD,CAAC;AACrE,qCAAc,kDAAkD,CAAC;AACjE,oEAAc,4CAA4C,CAAC;AAC3D,+CAAc,wEAAwE,CAAC;AACvF,yCAAc,iCAAiC,CAAC;AAChD,8BAAc,kCAAkC,CAAC;AACjD,2BAAc,sBAAsB,CAAC;AACrC,kDAAc,mDAAmD,CAAC;AAClE,2CAAc,oDAAoD,CAAC;AACnE,2BAAc,iCAAiC,CAAC;AAChD,kCAAc,yCAAyC,CAAC;AACxD,kCAAc,yCAAyC,CAAC;AACxD,mCAAc,2CAA2C,CAAC;AAC1D,oCAAc,2DAA2D,CAAC;AAC1E,+DAAc,wFAAwF,CAAC;AACvG,oFAAc,+FAA+F,CAAC;AAC9G,wEAAc,kGAAkG,CAAC;AACjH,4CAAc,iEAAiE,CAAC;AAChF,oDAAc,2EAA2E,CAAC;AAC1F,8DAAc,uFAAuF,CAAC;AACtG,0DAAc,kFAAkF,CAAC;AACjG,0BAAc,mBAAmB,CAAC;AAClC,eAAc,oBAAoB,CAAC;AACnC,4DAAc,8BAA8B,CAAC;AAC7C,oCAAc,oCAAoC,CAAC;AACnD,eAAc,6BAA6B,CAAC;AAC5C,eAAc,4BAA4B,CAAC;AAC3C,+BAAc,yBAAyB,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./nav-item\";\nexport * from \"./place-component\";\nexport * from \"./place-config\";\nexport * from \"./place-definition\";\nexport * from \"./place-history\";\nexport * from \"./place-router\";\nexport * from \"./place.decorator\";\nexport * from \"./place.module\";\nexport * from \"./url-service\";\nexport * from \"./url-snapshot\";\nexport * from \"./visit\";\nexport * from \"./components/abstract-place-navigation.component\";\nexport * from \"./components/busy-overlay/busy-overlay.component\";\nexport * from \"./components/empty-state/empty-state.component\";\nexport * from \"./components/list-place-nav/list-place-nav.component\";\nexport * from \"./components/place-outlet/place-outlet.component\";\nexport * from \"./components/place-outlet/route-animations\";\nexport * from \"./components/tabbed-place-navigation/tabbed-place-navigation.component\";\nexport * from \"./guards/consolidated-param-map\";\nexport * from \"./guards/noop-auth-guard.service\";\nexport * from \"./guards/place.guard\";\nexport * from \"./navigation/place-component-deactivation-handler\";\nexport * from \"./navigation/session/abstract-pop-state-navigation\";\nexport * from \"./navigation/session/navigating\";\nexport * from \"./navigation/session/navigation-context\";\nexport * from \"./navigation/session/navigation-session\";\nexport * from \"./navigation/session/pop-state-navigation\";\nexport * from \"./navigation/session/event-cleanup/event-clean-up-session\";\nexport * from \"./navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled\";\nexport * from \"./navigation/session/event-cleanup/wait-until-link-triggered-interaction-cancelation-finishes\";\nexport * from \"./navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes\";\nexport * from \"./navigation/session/interactions/navigating-during-interaction\";\nexport * from \"./navigation/session/interactions/pop-state-during-interaction-navigation\";\nexport * from \"./navigation/session/interactions/remove-last-interaction-from-url-navigation-session\";\nexport * from \"./navigation/session/interactions/synchronise-interaction-context-ids-with-route\";\nexport * from \"./route/formatter\";\nexport * from \"./route/json-types\";\nexport * from \"./route/parameter-decorators\";\nexport * from \"./route/parameter-definition.class\";\nexport * from \"./route/parameter-sanitiser\";\nexport * from \"./route/parameter-snapshot\";\nexport * from \"./route/visit-sanitiser\";\n"]}
@@ -4,38 +4,56 @@
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
6
  import * as _ from 'lodash';
7
- var PlaceComponentDeactivationHandler = /** @class */ (function () {
8
- function PlaceComponentDeactivationHandler(component, navigationState, isPrimaryComponent) {
7
+ /**
8
+ * This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:
9
+ * 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)
10
+ * 2. Ensure only the primary place component is asked when there are nested places. The primary component is the one at the top
11
+ * of the routing change tree.
12
+ * 3. Automatically handle standard interaction scenarios on the components behalf.
13
+ */
14
+ var /**
15
+ * This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:
16
+ * 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)
17
+ * 2. Ensure only the primary place component is asked when there are nested places. The primary component is the one at the top
18
+ * of the routing change tree.
19
+ * 3. Automatically handle standard interaction scenarios on the components behalf.
20
+ */
21
+ PlaceComponentDeactivationHandler = /** @class */ (function () {
22
+ function PlaceComponentDeactivationHandler(component, navigationSession, isPrimaryComponent) {
9
23
  this.component = component;
10
- this.navigationState = navigationState;
24
+ this.navigationSession = navigationSession;
11
25
  this.isPrimaryComponent = isPrimaryComponent;
12
26
  }
13
- Object.defineProperty(PlaceComponentDeactivationHandler.prototype, "interactionService", {
27
+ Object.defineProperty(PlaceComponentDeactivationHandler.prototype, "routerInteractionAdapter", {
14
28
  get: /**
15
29
  * @return {?}
16
30
  */
17
31
  function () {
18
- return this.navigationState.interactionService;
32
+ return this.navigationSession.interactionServiceAdapter;
19
33
  },
20
34
  enumerable: true,
21
35
  configurable: true
22
36
  });
23
- Object.defineProperty(PlaceComponentDeactivationHandler.prototype, "placeRouter", {
37
+ Object.defineProperty(PlaceComponentDeactivationHandler.prototype, "urlService", {
24
38
  get: /**
25
39
  * @return {?}
26
40
  */
27
41
  function () {
28
- return this.navigationState.placeRouter;
42
+ return this.navigationSession.urlService;
29
43
  },
30
44
  enumerable: true,
31
45
  configurable: true
32
46
  });
47
+ // @Trace()
48
+ // @Trace()
33
49
  /**
34
50
  * @param {?} currentUrl
35
51
  * @param {?} nextState
36
52
  * @return {?}
37
53
  */
38
- PlaceComponentDeactivationHandler.prototype.canDeactivate = /**
54
+ PlaceComponentDeactivationHandler.prototype.canDeactivate =
55
+ // @Trace()
56
+ /**
39
57
  * @param {?} currentUrl
40
58
  * @param {?} nextState
41
59
  * @return {?}
@@ -76,23 +94,22 @@ var PlaceComponentDeactivationHandler = /** @class */ (function () {
76
94
  return tslib_1.__generator(this, function (_a) {
77
95
  switch (_a.label) {
78
96
  case 0:
79
- if (!this.navigationState.isPopState) return [3 /*break*/, 5];
80
- if (!(this.isPrimaryComponent && this.interactionService.isModalActive())) return [3 /*break*/, 3];
81
- routeIds = this.placeRouter.getActiveInteractionIdsFromUrl(nextState.url);
82
- currentIds = this.interactionService.activeInteractionContextIds.value;
97
+ if (!this.navigationSession.isPopState) return [3 /*break*/, 5];
98
+ if (!(this.isPrimaryComponent && this.routerInteractionAdapter.isModalActive())) return [3 /*break*/, 3];
99
+ routeIds = this.urlService.getActiveInteractionIdsFromUrl(nextState.url);
100
+ currentIds = this.routerInteractionAdapter.getActiveInteractionContextIds();
83
101
  if (!!_.isEqual(currentIds, routeIds)) return [3 /*break*/, 2];
84
- return [4 /*yield*/, this.interactionService.getActiveContext().cancelActiveActivity()];
102
+ return [4 /*yield*/, this.routerInteractionAdapter.cancelCurrentModalInteraction()];
85
103
  case 1:
86
104
  _a.sent();
87
- return [2 /*return*/, currentUrl.updateInteractionIds(this.interactionService.activeInteractionContextIds.value)];
105
+ return [2 /*return*/, false];
88
106
  case 2: return [3 /*break*/, 5];
89
107
  case 3:
90
- if (!(this.component.interactionContext && this.component.interactionContext.isActive())) return [3 /*break*/, 5];
91
- return [4 /*yield*/, this.component.interactionContext.cancelActiveActivity()];
108
+ if (!this.routerInteractionAdapter.isComponentInteracting(this.component)) return [3 /*break*/, 5];
109
+ return [4 /*yield*/, this.routerInteractionAdapter.cancelComponentInteraction(this.component)];
92
110
  case 4:
93
111
  _a.sent();
94
- return [2 /*return*/, currentUrl
95
- .updateInteractionIds(this.interactionService.activeInteractionContextIds.value)];
112
+ return [2 /*return*/, false];
96
113
  case 5:
97
114
  // Ok, so now we're really leaving, so we ask the component if we should.;
98
115
  if (this.isNotJustAChangeInRouteId(nextState)) {
@@ -100,11 +117,11 @@ var PlaceComponentDeactivationHandler = /** @class */ (function () {
100
117
  // No interaction in progress, so ask the component .
101
118
  // This may start an interaction, hence checking the interaction context before now. I.e. if the place pops up the dialog, and
102
119
  // the user clicks back again, we'll re-enter here and go bang when the component tries to open another dialog.
103
- return [2 /*return*/, this.component.canDeactivate(this.navigationState.interactionContext)];
120
+ return [2 /*return*/, this.component.canDeactivate(this.navigationSession.canDeactivateInteractionContext)];
104
121
  }
105
122
  // The component has an active interaction but no deactivation hook. Rather than guessing what to do
106
123
  // we'll just cancel the navigation and print a warning.
107
- if (this.component.interactionContext && this.component.interactionContext.isActive()) {
124
+ if (this.routerInteractionAdapter.isComponentInteracting(this.component)) {
108
125
  console.warn('Route changed while component has active interaction, cancelling navigation');
109
126
  return [2 /*return*/, false];
110
127
  }
@@ -132,6 +149,13 @@ var PlaceComponentDeactivationHandler = /** @class */ (function () {
132
149
  };
133
150
  return PlaceComponentDeactivationHandler;
134
151
  }());
152
+ /**
153
+ * This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:
154
+ * 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)
155
+ * 2. Ensure only the primary place component is asked when there are nested places. The primary component is the one at the top
156
+ * of the routing change tree.
157
+ * 3. Automatically handle standard interaction scenarios on the components behalf.
158
+ */
135
159
  export { PlaceComponentDeactivationHandler };
136
160
  if (false) {
137
161
  /**
@@ -142,7 +166,7 @@ if (false) {
142
166
  /** @type {?} */
143
167
  PlaceComponentDeactivationHandler.prototype.component;
144
168
  /** @type {?} */
145
- PlaceComponentDeactivationHandler.prototype.navigationState;
169
+ PlaceComponentDeactivationHandler.prototype.navigationSession;
146
170
  /** @type {?} */
147
171
  PlaceComponentDeactivationHandler.prototype.isPrimaryComponent;
148
172
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"place-component-deactivation-handler.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/navigation/place-component-deactivation-handler.ts"],"names":[],"mappings":";;;;;AACA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;;;;;;;;AAY5B;;;;;;;;IAIE,2CAAqB,SAAyB,EAAW,iBAAoC,EAAW,kBAA2B;QAA9G,cAAS,GAAT,SAAS,CAAgB;QAAW,sBAAiB,GAAjB,iBAAiB,CAAmB;QAAW,uBAAkB,GAAlB,kBAAkB,CAAS;IACnI,CAAC;IAED,sBAAI,uEAAwB;;;;QAA5B;YACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC;QAC1D,CAAC;;;OAAA;IAED,sBAAI,yDAAU;;;;QAAd;YACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;QAC3C,CAAC;;;OAAA;IAED,WAAW;;;;;;;IACL,yDAAa;;;;;;;IAAnB,UAAoB,UAAuB,EAAE,SAAsB;;;gBACjE,2EAA2E;gBAC3E,oFAAoF;gBACpF,sBAAsB;gBACtB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;oBAC9B,wFAAwF;oBACxF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;iBAChF;gBACD,sBAAO,IAAI,CAAC,oBAAoB,EAAC;;;KAClC;IAGD,WAAW;;;;;;;;IACK,kEAAsB;;;;;;;;IAAtC,UAAuC,UAAuB,EAAE,SAAsB;;;;;;6BAGhF,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAjC,wBAAiC;6BAE/B,CAAA,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,wBAAwB,CAAC,aAAa,EAAE,CAAA,EAAxE,wBAAwE;wBACpE,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,SAAS,CAAC,GAAG,CAAC;wBACxE,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,8BAA8B,EAAE;6BAC7E,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAhC,wBAAgC;wBAClC,qBAAM,IAAI,CAAC,wBAAwB,CAAC,6BAA6B,EAAE,EAAA;;wBAAnE,SAAmE,CAAC;wBACpE,sBAAO,KAAK,EAAC;;;6BAIX,IAAI,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,EAApE,wBAAoE;wBACtE,qBAAM,IAAI,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA;;wBAA9E,SAA8E,CAAC;wBAC/E,sBAAO,KAAK,EAAC;;wBAMnB,0EAA0E;wBAC1E,IAAI,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE;4BAE7C,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;gCAChC,qDAAqD;gCACrD,8HAA8H;gCAC9H,+GAA+G;gCAC/G,sBAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,+BAA+B,CAAC,EAAC;6BAC7F;4BAED,qGAAqG;4BACrG,wDAAwD;4BACxD,IAAI,IAAI,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gCACxE,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;gCAC5F,sBAAO,KAAK,EAAC;6BACd;yBAEF;wBACD,sBAAO,IAAI,EAAC;;;;KACb;;;;;;IAES,qEAAyB;;;;;IAAnC,UAAoC,SAAsB;QACxD,qFAAqF;QACrF,gFAAgF;QAChF,0CAA0C;QAC1C,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IACnE,CAAC;IACH,wCAAC;AAAD,CAAC,AA9ED,IA8EC;;;;;;;;;;;;;;IA5EC,iEAA6D;;IAEjD,sDAAkC;;IAAE,8DAA6C;;IAAE,+DAAoC","sourcesContent":["import { Trace } from '@coolon/pectin';\nimport * as _ from 'lodash';\nimport { PlaceComponent } from '../place-component';\nimport { UrlSnapshot } from '../url-snapshot';\nimport { NavigationSession } from './session/navigation-session';\n\n/**\n * This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:\n * 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)\n * 2. Ensure only the primary place component is asked when there are nested places. The primary component is the one at the top\n * of the routing change tree.\n * 3. Automatically handle standard interaction scenarios on the components behalf.\n */\nexport class PlaceComponentDeactivationHandler {\n\n private canDeactivatePromise: Promise<boolean | UrlSnapshot>;\n\n constructor(readonly component: PlaceComponent, readonly navigationSession: NavigationSession, readonly isPrimaryComponent: boolean) {\n }\n\n get routerInteractionAdapter() {\n return this.navigationSession.interactionServiceAdapter;\n }\n\n get urlService() {\n return this.navigationSession.urlService;\n }\n\n // @Trace()\n async canDeactivate(currentUrl: UrlSnapshot, nextState: UrlSnapshot): Promise<boolean | UrlSnapshot> {\n // We'll get called multiple times if there's any parameter sanitisation so\n // we always return true if we accepted promise from a previous cycle of the current\n // navigation session.\n if (!this.canDeactivatePromise) {\n // console.log(`creating deactivate promise for -> ${this.component.constructor.name}`);\n this.canDeactivatePromise = this.canDeactivateComponent(currentUrl, nextState);\n }\n return this.canDeactivatePromise;\n }\n\n\n // @Trace()\n protected async canDeactivateComponent(currentUrl: UrlSnapshot, nextState: UrlSnapshot): Promise<UrlSnapshot | boolean> {\n // Automatically cancel any active activities if the navigation session was triggered by the back button.\n // If we handled more than just the pop state then it leads to the UI ignoring clicks and just cancelling things which is deeply disconcerting.\n if (this.navigationSession.isPopState) {\n\n if (this.isPrimaryComponent && this.routerInteractionAdapter.isModalActive()) {\n const routeIds = this.urlService.getActiveInteractionIdsFromUrl(nextState.url);\n const currentIds = this.routerInteractionAdapter.getActiveInteractionContextIds();\n if (!_.isEqual(currentIds, routeIds)) { // why am I checking this????\n await this.routerInteractionAdapter.cancelCurrentModalInteraction();\n return false;\n }\n } else {\n // check if the component has an in place interaction\n if (this.routerInteractionAdapter.isComponentInteracting(this.component)) {\n await this.routerInteractionAdapter.cancelComponentInteraction(this.component);\n return false;\n }\n }\n }\n\n\n // Ok, so now we're really leaving, so we ask the component if we should.;\n if (this.isNotJustAChangeInRouteId(nextState)) {\n\n if (this.component.canDeactivate) {\n // No interaction in progress, so ask the component .\n // This may start an interaction, hence checking the interaction context before now. I.e. if the place pops up the dialog, and\n // the user clicks back again, we'll re-enter here and go bang when the component tries to open another dialog.\n return this.component.canDeactivate(this.navigationSession.canDeactivateInteractionContext);\n }\n\n // The component has an active interaction but no deactivation hook. Rather than guessing what to do\n // we'll just cancel the navigation and print a warning.\n if (this.routerInteractionAdapter.isComponentInteracting(this.component)) {\n console.warn('Route changed while component has active interaction, cancelling navigation');\n return false;\n }\n\n }\n return true;\n }\n\n protected isNotJustAChangeInRouteId(nextState: UrlSnapshot) {\n // Because places with a route-id cover two route segments we get asked to deactivate\n // if the route id is added or removed. So if our path is still present the url\n // then we shouldn't deactivate the place.\n return !nextState.includesPathOf(this.component.placeDefinition);\n }\n}\n"]}
@@ -0,0 +1,49 @@
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";
6
+ import { NavigationSession } from './navigation-session';
7
+ /**
8
+ * @abstract
9
+ */
10
+ var /**
11
+ * @abstract
12
+ */
13
+ AbstractPopStateNavigation = /** @class */ (function (_super) {
14
+ tslib_1.__extends(AbstractPopStateNavigation, _super);
15
+ function AbstractPopStateNavigation(context, startingUrl, poppedHistoryUrl) {
16
+ var _this = _super.call(this, context, startingUrl) || this;
17
+ _this.poppedHistoryUrl = poppedHistoryUrl;
18
+ _this.isPopState = true;
19
+ _this.debugPropertyKeys = ['startingUrl', 'poppedHistoryUrl'];
20
+ return _this;
21
+ }
22
+ // @Trace()
23
+ // @Trace()
24
+ /**
25
+ * @return {?}
26
+ */
27
+ AbstractPopStateNavigation.prototype.repairBrowserHistoryAndUrlAfterGuardCancellation =
28
+ // @Trace()
29
+ /**
30
+ * @return {?}
31
+ */
32
+ function () {
33
+ _super.prototype.repairBrowserHistoryAndUrlAfterGuardCancellation.call(this, this.poppedHistoryUrl, this.startingUrl);
34
+ };
35
+ return AbstractPopStateNavigation;
36
+ }(NavigationSession));
37
+ /**
38
+ * @abstract
39
+ */
40
+ export { AbstractPopStateNavigation };
41
+ if (false) {
42
+ /** @type {?} */
43
+ AbstractPopStateNavigation.prototype.isPopState;
44
+ /** @type {?} */
45
+ AbstractPopStateNavigation.prototype.debugPropertyKeys;
46
+ /** @type {?} */
47
+ AbstractPopStateNavigation.prototype.poppedHistoryUrl;
48
+ }
49
+ //# sourceMappingURL=abstract-pop-state-navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-pop-state-navigation.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/navigation/session/abstract-pop-state-navigation.ts"],"names":[],"mappings":";;;;;AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;;;;AAEzD;;;;IAAyD,sDAAiB;IAIxE,oCAAY,OAA0B,EAAE,WAAmB,EAAW,gBAAwB;QAA9F,YACE,kBAAM,OAAO,EAAE,WAAW,CAAC,SAC5B;QAFqE,sBAAgB,GAAhB,gBAAgB,CAAQ;QAHrF,gBAAU,GAAG,IAAI,CAAC;QAC3B,uBAAiB,GAAG,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;;IAIxD,CAAC;IAED,WAAW;;;;;IACX,qFAAgD;;;;;IAAhD;QACE,iBAAM,gDAAgD,YAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACjG,CAAC;IAEH,iCAAC;AAAD,CAAC,AAbD,CAAyD,iBAAiB,GAazE;;;;;;;IAZC,gDAA2B;;IAC3B,uDAAwD;;IAEK,sDAAiC","sourcesContent":["import { Logger, Trace } from '@coolon/pectin';\nimport { NavigationContext } from './navigation-context';\nimport { NavigationSession } from './navigation-session';\n\nexport abstract class AbstractPopStateNavigation extends NavigationSession {\n readonly isPopState = true;\n debugPropertyKeys = ['startingUrl', 'poppedHistoryUrl'];\n\n constructor(context: NavigationContext, startingUrl: string, readonly poppedHistoryUrl: string) {\n super(context, startingUrl);\n }\n\n // @Trace()\n repairBrowserHistoryAndUrlAfterGuardCancellation(): void {\n super.repairBrowserHistoryAndUrlAfterGuardCancellation(this.poppedHistoryUrl, this.startingUrl)\n }\n\n}\n"]}
@@ -0,0 +1,36 @@
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";
6
+ import { lang } from '@coolon/typescript-utilities';
7
+ import { NavigationSession } from '../navigation-session';
8
+ /**
9
+ * @abstract
10
+ */
11
+ var /**
12
+ * @abstract
13
+ */
14
+ EventCleanUpSession = /** @class */ (function (_super) {
15
+ tslib_1.__extends(EventCleanUpSession, _super);
16
+ function EventCleanUpSession() {
17
+ return _super !== null && _super.apply(this, arguments) || this;
18
+ }
19
+ /**
20
+ * @param {?} newUrl
21
+ * @return {?}
22
+ */
23
+ EventCleanUpSession.prototype.handleCanDeactivateCancelledEventScenario = /**
24
+ * @param {?} newUrl
25
+ * @return {?}
26
+ */
27
+ function (newUrl) {
28
+ lang.illegalState('onCanDeactivateInteractionCancelled not supported for event clean up states');
29
+ };
30
+ return EventCleanUpSession;
31
+ }(NavigationSession));
32
+ /**
33
+ * @abstract
34
+ */
35
+ export { EventCleanUpSession };
36
+ //# sourceMappingURL=event-clean-up-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-clean-up-session.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/navigation/session/event-cleanup/event-clean-up-session.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;;;AAE1D;;;;IAAkD,+CAAiB;IAAnE;;IAOA,CAAC;;;;;IAJC,uEAAyC;;;;IAAzC,UAA0C,MAAc;QACtD,IAAI,CAAC,YAAY,CAAC,6EAA6E,CAAC,CAAC;IACnG,CAAC;IAEH,0BAAC;AAAD,CAAC,AAPD,CAAkD,iBAAiB,GAOlE","sourcesContent":["import { lang } from '@coolon/typescript-utilities';\nimport { NavigationSession } from '../navigation-session';\n\nexport abstract class EventCleanUpSession extends NavigationSession {\n\n\n handleCanDeactivateCancelledEventScenario(newUrl: string): void {\n lang.illegalState('onCanDeactivateInteractionCancelled not supported for event clean up states');\n }\n\n}\n"]}
@@ -0,0 +1,151 @@
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";
6
+ import { EventCleanUpSession } from './event-clean-up-session';
7
+ /**
8
+ * The sequence of router events are:
9
+ * NavigationError -> url = url of navigation link
10
+ * NavigationEnd
11
+ * onPopState url = Our currentUrl sans and interaction query params
12
+ * NavigationCancel url == same as above.
13
+ */
14
+ var /**
15
+ * The sequence of router events are:
16
+ * NavigationError -> url = url of navigation link
17
+ * NavigationEnd
18
+ * onPopState url = Our currentUrl sans and interaction query params
19
+ * NavigationCancel url == same as above.
20
+ */
21
+ WaitUntilLeavingInteractionTransitionCancelled = /** @class */ (function (_super) {
22
+ tslib_1.__extends(WaitUntilLeavingInteractionTransitionCancelled, _super);
23
+ function WaitUntilLeavingInteractionTransitionCancelled(context, startingUrl, locationChangeTriggerUrl) {
24
+ var _this = _super.call(this, context, startingUrl) || this;
25
+ _this.locationChangeTriggerUrl = locationChangeTriggerUrl;
26
+ _this.isPopState = false;
27
+ _this.firstCancelHandled = false;
28
+ _this.popStateHandled = false;
29
+ _this.debugPropertyKeys = ['idle', 'startingUrl', 'poppedHistoryUrl', 'locationChangeTriggerUrl', 'popStateEventUrl', 'firstCancelHandled', 'popStateHandled'];
30
+ return _this;
31
+ }
32
+ // @Trace()
33
+ // @Trace()
34
+ /**
35
+ * @param {?} event
36
+ * @return {?}
37
+ */
38
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.onRouterStarted =
39
+ // @Trace()
40
+ /**
41
+ * @param {?} event
42
+ * @return {?}
43
+ */
44
+ function (event) {
45
+ this.ignore(event);
46
+ };
47
+ // @Trace()
48
+ // @Trace()
49
+ /**
50
+ * @param {?} event
51
+ * @return {?}
52
+ */
53
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.onRouterCancelled =
54
+ // @Trace()
55
+ /**
56
+ * @param {?} event
57
+ * @return {?}
58
+ */
59
+ function (event) {
60
+ this.repairBrowserHistoryAndUrlAfterGuardCancellation(this.locationChangeTriggerUrl, this.startingUrl);
61
+ this.context.finishRoutingSession();
62
+ };
63
+ // @Trace()
64
+ // @Trace()
65
+ /**
66
+ * @param {?} event
67
+ * @return {?}
68
+ */
69
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.onRouterEnd =
70
+ // @Trace()
71
+ /**
72
+ * @param {?} event
73
+ * @return {?}
74
+ */
75
+ function (event) {
76
+ this.ignore(event);
77
+ };
78
+ // @Trace()
79
+ // @Trace()
80
+ /**
81
+ * @param {?} event
82
+ * @return {?}
83
+ */
84
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.onRouterError =
85
+ // @Trace()
86
+ /**
87
+ * @param {?} event
88
+ * @return {?}
89
+ */
90
+ function (event) {
91
+ this.ignore(event);
92
+ };
93
+ // @Trace()
94
+ // @Trace()
95
+ /**
96
+ * @param {?} event
97
+ * @return {?}
98
+ */
99
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.onPopState =
100
+ // @Trace()
101
+ /**
102
+ * @param {?} event
103
+ * @return {?}
104
+ */
105
+ function (event) {
106
+ this.ignore(event);
107
+ };
108
+ /**
109
+ * @param {?} component
110
+ * @param {?} currentUrl
111
+ * @param {?} nextUrl
112
+ * @return {?}
113
+ */
114
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.canDeactivatePlace = /**
115
+ * @param {?} component
116
+ * @param {?} currentUrl
117
+ * @param {?} nextUrl
118
+ * @return {?}
119
+ */
120
+ function (component, currentUrl, nextUrl) {
121
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
122
+ return tslib_1.__generator(this, function (_a) {
123
+ return [2 /*return*/, false];
124
+ });
125
+ });
126
+ };
127
+ return WaitUntilLeavingInteractionTransitionCancelled;
128
+ }(EventCleanUpSession));
129
+ /**
130
+ * The sequence of router events are:
131
+ * NavigationError -> url = url of navigation link
132
+ * NavigationEnd
133
+ * onPopState url = Our currentUrl sans and interaction query params
134
+ * NavigationCancel url == same as above.
135
+ */
136
+ export { WaitUntilLeavingInteractionTransitionCancelled };
137
+ if (false) {
138
+ /** @type {?} */
139
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.isPopState;
140
+ /** @type {?} */
141
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.firstCancelHandled;
142
+ /** @type {?} */
143
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.popStateHandled;
144
+ /** @type {?} */
145
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.popStateEventUrl;
146
+ /** @type {?} */
147
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.debugPropertyKeys;
148
+ /** @type {?} */
149
+ WaitUntilLeavingInteractionTransitionCancelled.prototype.locationChangeTriggerUrl;
150
+ }
151
+ //# sourceMappingURL=wait-until-leaving-interaction-transition-cancelled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-until-leaving-interaction-transition-cancelled.js","sourceRoot":"ng://@coolon/angular-ui-powerups/","sources":["lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.ts"],"names":[],"mappings":";;;;;AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;;;;;;;;AAS/D;;;;;;;;IAAoE,0EAAmB;IAQrF,wDAAY,OAA0B,EAC1B,WAAmB,EACV,wBAAgC;QAFrD,YAGE,kBAAM,OAAO,EAAE,WAAW,CAAC,SAC5B;QAFoB,8BAAwB,GAAxB,wBAAwB,CAAQ;QAR5C,gBAAU,GAAG,KAAK,CAAC;QAC5B,wBAAkB,GAAG,KAAK,CAAC;QAC3B,qBAAe,GAAG,KAAK,CAAC;QAExB,uBAAiB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAC;;IAMzJ,CAAC;IAED,WAAW;;;;;;IACX,wEAAe;;;;;;IAAf,UAAgB,KAAsB;QACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,WAAW;;;;;;IACX,0EAAiB;;;;;;IAAjB,UAAkB,KAAuB;QACvC,IAAI,CAAC,gDAAgD,CAAC,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACvG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IACtC,CAAC;IAED,WAAW;;;;;;IACX,oEAAW;;;;;;IAAX,UAAY,KAAoB;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,WAAW;;;;;;IACX,sEAAa;;;;;;IAAb,UAAc,KAAsB;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,WAAW;;;;;;IACX,mEAAU;;;;;;IAAV,UAAW,KAAsB;QAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;;;;;;;IAEK,2EAAkB;;;;;;IAAxB,UAAyB,SAAyB,EAAE,UAAuB,EAAE,OAAoB;;;gBAC/F,sBAAO,KAAK,EAAC;;;KACd;IACH,qDAAC;AAAD,CAAC,AA3CD,CAAoE,mBAAmB,GA2CtF;;;;;;;;;;;IAzCC,oEAA4B;;IAC5B,4EAA2B;;IAC3B,yEAAwB;;IACxB,0EAAyB;;IACzB,2EAAyJ;;IAI7I,kFAAyC","sourcesContent":["import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart } from '@angular/router';\nimport { Logger, Trace } from '@coolon/pectin';\nimport { PlaceComponent } from '../../../place-component';\nimport { UrlSnapshot } from '../../../url-snapshot';\nimport { SynchroniseInteractionContextIdsWithRoute } from '../interactions/synchronise-interaction-context-ids-with-route';\nimport { NavigationContext } from '../navigation-context';\nimport { NavigationSession } from '../navigation-session';\nimport { lang } from '@coolon/typescript-utilities';\nimport { EventCleanUpSession } from './event-clean-up-session';\n\n/**\n * The sequence of router events are:\n * NavigationError -> url = url of navigation link\n * NavigationEnd\n * onPopState url = Our currentUrl sans and interaction query params\n * NavigationCancel url == same as above.\n */\nexport class WaitUntilLeavingInteractionTransitionCancelled extends EventCleanUpSession {\n\n readonly isPopState = false;\n firstCancelHandled = false;\n popStateHandled = false;\n popStateEventUrl: string;\n debugPropertyKeys = ['idle', 'startingUrl', 'poppedHistoryUrl', 'locationChangeTriggerUrl', 'popStateEventUrl', 'firstCancelHandled', 'popStateHandled'];\n\n constructor(context: NavigationContext,\n startingUrl: string,\n readonly locationChangeTriggerUrl: string) {\n super(context, startingUrl);\n }\n\n // @Trace()\n onRouterStarted(event: NavigationStart): void {\n this.ignore(event);\n }\n\n // @Trace()\n onRouterCancelled(event: NavigationCancel): void {\n this.repairBrowserHistoryAndUrlAfterGuardCancellation(this.locationChangeTriggerUrl, this.startingUrl);\n this.context.finishRoutingSession();\n }\n\n // @Trace()\n onRouterEnd(event: NavigationEnd): void {\n this.ignore(event);\n }\n\n // @Trace()\n onRouterError(event: NavigationError): void {\n this.ignore(event);\n }\n\n // @Trace()\n onPopState(event: NavigationStart): void {\n this.ignore(event);\n }\n\n async canDeactivatePlace(component: PlaceComponent, currentUrl: UrlSnapshot, nextUrl: UrlSnapshot): Promise<boolean | UrlSnapshot> {\n return false;\n }\n}\n"]}