@coolon/angular-ui-powerups 0.0.125 → 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 +3743 -3012
  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 +47 -22
  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 +66 -25
  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 +2641 -2268
  259. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  260. package/fesm5/coolon-angular-ui-powerups.js +3703 -2984
  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
@@ -5,47 +5,72 @@
5
5
  import * as tslib_1 from "tslib";
6
6
  import { Location } from '@angular/common';
7
7
  import { Injectable } from '@angular/core';
8
- import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router, UrlSerializer } from '@angular/router';
9
- import { assert, Dsl, GarbageCollector, lang, Logger, MutableListModel, MutableStream, MutableValueModel } from '@coolon/pectin';
10
- import _ from 'lodash';
8
+ import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from '@angular/router';
9
+ import { assert, DebugContext, Dsl, GarbageCollector, lang, Logger, MutableListModel, MutableValueModel } from '@coolon/pectin';
11
10
  import { InteractionService } from '../interaction/services/interaction.service';
12
- import { NavigationState } from './guards/navigation-state';
11
+ import { NavigatingDuringInteraction } from './navigation/session/interactions/navigating-during-interaction';
12
+ import { PopStateDuringInteractionNavigation } from './navigation/session/interactions/pop-state-during-interaction-navigation';
13
+ import { SynchroniseInteractionContextIdsWithRoute } from './navigation/session/interactions/synchronise-interaction-context-ids-with-route';
14
+ import { Navigating } from './navigation/session/navigating';
15
+ import { NavigationContext } from './navigation/session/navigation-context';
16
+ import { PopStateNavigation } from './navigation/session/pop-state-navigation';
13
17
  import { PlaceHistory } from './place-history';
14
- import { UrlSnapshot } from './url-snapshot';
18
+ import { UrlService } from './url-service';
15
19
  import * as i0 from "@angular/core";
16
20
  import * as i1 from "@angular/router";
17
21
  import * as i2 from "@angular/common";
18
- import * as i3 from "./place-history";
19
- import * as i4 from "../interaction/services/interaction.service";
22
+ import * as i3 from "../interaction/services/interaction.service";
23
+ import * as i4 from "./url-service";
24
+ import * as i5 from "./place-history";
20
25
  var PlaceRouter = /** @class */ (function (_super) {
21
26
  tslib_1.__extends(PlaceRouter, _super);
22
- function PlaceRouter(router, urlSerializer, angularLocation, placeHistory, interactionService) {
27
+ function PlaceRouter(angularRouter, angularLocation, interactionService, urlService, placeHistory) {
23
28
  var _this = _super.call(this) || this;
24
- _this.router = router;
25
- _this.urlSerializer = urlSerializer;
29
+ _this.angularRouter = angularRouter;
26
30
  _this.angularLocation = angularLocation;
27
- _this.placeHistory = placeHistory;
28
31
  _this.interactionService = interactionService;
29
- _this._navigationStateModel = new MutableValueModel();
32
+ _this.urlService = urlService;
33
+ _this.placeHistory = placeHistory;
34
+ _this.navigationSessionModel = new MutableValueModel();
30
35
  _this._activeVisits = new MutableListModel();
31
- var _a = Dsl.disposeWith(_this), chain = _a.chain, valueOf = _a.valueOf, before = _a.before, when = _a.when, after = _a.after, observe = _a.observe, switchOn = _a.switchOn;
32
- _this.activeVisitIndex = chain(_this._activeVisits).indexBy('placeDefinition');
33
- _this.navigationInProgress = chain(_this.navigationStateModel).pluck('isTransitional');
34
- _this._navigationSessionContext = new NavigationState.Context(_this, _this.interactionService, (/**
35
- * @param {?} session
36
+ _this.sessionFinishedJobs = [];
37
+ _this.routerInteractionAdapter = interactionService.registerPlaceRouter(_this);
38
+ // TODO: Make this an interface and use 'this' instead.
39
+ _this.navigationContext = new NavigationContext.Impl(_this.urlService, _this.routerInteractionAdapter, (/**
40
+ * @param {?} urlSnapshot
41
+ * @param {?} options
36
42
  * @return {?}
37
43
  */
38
- function (session) {
39
- _this.processNavigationSuccess(session);
40
- }));
41
- _this._navigationStateModel.value = new NavigationState.Idle(_this._navigationSessionContext);
42
- _this._navigationStateTypeModel = chain(_this._navigationStateModel).map((/**
44
+ function (urlSnapshot, options) {
45
+ return _this.navigateByUrl(urlSnapshot, options);
46
+ }), (/**
43
47
  * @param {?} state
44
48
  * @return {?}
45
49
  */
46
- function (state) { return (/** @type {?} */ (state.constructor)); }));
50
+ function (state) {
51
+ _this.transitionTo(state);
52
+ }), (/**
53
+ * @param {?} visits
54
+ * @return {?}
55
+ */
56
+ function (visits) {
57
+ _this.routingSessionFinished(visits);
58
+ }));
59
+ var _a = Dsl.disposeWith(_this), chain = _a.chain, valueOf = _a.valueOf, before = _a.before, when = _a.when, after = _a.after, observe = _a.observe, switchOn = _a.switchOn;
60
+ _this.navigationInProgress = chain(_this.navigationSessionModel).isNotNil();
61
+ /** @type {?} */
62
+ var idleStateName = chain(_this.interactionService.active).map((/**
63
+ * @param {?} active
64
+ * @return {?}
65
+ */
66
+ function (active) { return active ? 'IdleDuringInteraction' : 'Idle'; }));
67
+ _this.navigationSessionName = chain(_this.navigationSessionModel)
68
+ .pluck('name')
69
+ .otherwise(idleStateName);
70
+ DebugContext.tag(_this._activeVisits, "PlaceRouter.activeVisits");
71
+ _this.activeVisitsByPlaceDefinition = chain(_this._activeVisits).indexBy('placeDefinition');
47
72
  // TODO: make setup the callbacks in during module initiation to make this testable.
48
- _this.router.events.subscribe((/**
73
+ angularRouter.events.subscribe((/**
49
74
  * @param {?} event
50
75
  * @return {?}
51
76
  */
@@ -57,271 +82,252 @@ var PlaceRouter = /** @class */ (function (_super) {
57
82
  // NavigationStart -> .... -> NavigationError --> navigation aborted, end session.
58
83
  // =======================
59
84
  if (event instanceof NavigationStart) {
85
+ // console.log(`---> NavigationStart[${event.id}]: ${event.url} (${event.navigationTrigger})`);
60
86
  if (event.navigationTrigger === 'popstate') {
61
- _this.runStateTransition((/**
62
- * @param {?} state
63
- * @return {?}
64
- */
65
- function (state) { return state.onPopState(event); }));
87
+ _this.onPopState(event);
66
88
  }
67
89
  else {
68
- _this.runStateTransition((/**
69
- * @param {?} state
70
- * @return {?}
71
- */
72
- function (state) { return state.onRouterStarted(event); }));
90
+ _this.onRouterStarted(event);
73
91
  }
92
+ // console.log(`<--- NavigationStart[${event.id}]: ${event.url} (${event.navigationTrigger})`);
74
93
  }
75
94
  if (event instanceof NavigationEnd) {
76
- console.log(event);
77
- _this.runStateTransition((/**
78
- * @param {?} state
79
- * @return {?}
80
- */
81
- function (state) { return state.onRouterEnd(event); }));
95
+ // console.log(`---> NavigationEnd[${event.id}]: ${event.url}`);
96
+ _this.onRouterEnd(event);
97
+ // console.log(`<--- NavigationEnd[${event.id}]: ${event.url}`);
82
98
  }
83
99
  if (event instanceof NavigationError) {
84
- console.log(event);
85
- _this.runStateTransition((/**
86
- * @param {?} state
87
- * @return {?}
88
- */
89
- function (state) { return state.onRouterError(event); }));
100
+ // console.log(`---> NavigationError[${event.id}]: ${event.url}`);
101
+ _this.onRouterError(event);
102
+ // console.log(`<--- NavigationError[${event.id}]: ${event.url}`);
90
103
  }
91
104
  if (event instanceof NavigationCancel) {
92
- console.log(event);
93
- _this.runStateTransition((/**
94
- * @param {?} state
95
- * @return {?}
96
- */
97
- function (state) { return state.onRouterCancelled(event); }));
105
+ // console.log(`---> NavigationCancel[${event.id}]: ${event.url}`);
106
+ _this.onRouterCancelled(event);
107
+ // console.log(`<--- NavigationCancel[${event.id}]: ${event.url}`);
98
108
  }
99
109
  }));
100
- // Push dialog state to the url so we can capture the back button.
101
- when.listOf(_this.interactionService.activeInteractionContextIds).changes((/**
102
- * @param {?} ids
103
- * @param {?} previous
104
- * @return {?}
105
- */
106
- function (ids, previous) {
107
- _this.syncInteractionIdsWithRouter(ids, previous);
108
- }), { unless: _this.navigationInProgress }); // TODO: I think the exclusive interaction prevents interactions starting while it's active so we might not need this.
109
- // TODO: I think the exclusive interaction prevents interactions starting while it's active so we might not need this.
110
- /** @type {?} */
111
- var urlChanges = new MutableStream();
112
- // The angular router doesn't always fire router events when the back button is pushed while a navigation
113
- // session is in progress. Sometimes we only know about it from the url change.
114
- // IMPORTANT ORDER DEPENDENCY
115
- // This only works because we're notified of the change after the router has started reacting to it. This
116
- // we can can use our navigationState to determine things.
110
+ // The router needs to know about url changes and in some cases they are the only way the router can know if
111
+ // the back button was clicked.
117
112
  angularLocation.onUrlChange((/**
118
113
  * @param {?} url
119
114
  * @return {?}
120
115
  */
121
- function (url) {
122
- /** @type {?} */
123
- var navigationState = _this._navigationStateModel.value;
124
- console.log("URLChange -> " + url, { state: navigationState });
125
- urlChanges.publish({ url: url, state: navigationState });
126
- // The url has changed while we're in a transitional state
127
- if (navigationState.isTransitional) {
128
- /** @type {?} */
129
- var navigationInteraction = _this.navigationState.interactionContext;
130
- if (navigationInteraction && navigationInteraction.isActive()) {
131
- _this.runStateTransition((/**
132
- * @param {?} state
133
- * @return {?}
134
- */
135
- function (state) { return state.onBackClickedDuringNavigationInteraction(url); }));
136
- }
137
- }
138
- }));
116
+ function (url) { return _this.onUrlChanged(url); }));
139
117
  return _this;
140
118
  }
141
- /**
142
- * @private
143
- * @param {?} session
144
- * @return {?}
145
- */
146
- PlaceRouter.prototype.processNavigationSuccess = /**
147
- * @private
148
- * @param {?} session
149
- * @return {?}
150
- */
151
- function (session) {
152
- var _this = this;
153
- // We need to update the visits before the session finishes. This allows the placeOutets to ignore visit
154
- // changes that occur while routerNavigationActive is true.
155
- assert.isTruthy(this.navigationInProgress.value);
156
- /** @type {?} */
157
- var visits = session.getVisits();
158
- visits.forEach((/**
159
- * @param {?} v
160
- * @return {?}
161
- */
162
- function (v) { return _this.placeHistory.add(v); }));
163
- this._activeVisits.value = visits;
164
- };
165
- Object.defineProperty(PlaceRouter.prototype, "navigationState", {
119
+ Object.defineProperty(PlaceRouter.prototype, "navigationSession", {
166
120
  get: /**
167
121
  * @return {?}
168
122
  */
169
123
  function () {
170
- return this._navigationStateModel.value;
124
+ return this.navigationSessionModel.value;
171
125
  },
172
126
  enumerable: true,
173
127
  configurable: true
174
128
  });
175
- Object.defineProperty(PlaceRouter.prototype, "navigationStateModel", {
129
+ Object.defineProperty(PlaceRouter.prototype, "currentSession", {
176
130
  get: /**
177
131
  * @return {?}
178
132
  */
179
133
  function () {
180
- return this._navigationStateModel.readonly;
181
- },
182
- enumerable: true,
183
- configurable: true
184
- });
185
- Object.defineProperty(PlaceRouter.prototype, "activeVisits", {
186
- get: /**
187
- * @return {?}
188
- */
189
- function () {
190
- return this._activeVisits.readonly;
134
+ return this.navigationSessionModel.value;
191
135
  },
192
136
  enumerable: true,
193
137
  configurable: true
194
138
  });
139
+ // @Trace()
140
+ // @Trace()
195
141
  /**
196
- * placeRouter.navigate(placeDestinations.somePlace.createVisit(routeId, ...visitParams));
197
- * @param visit
142
+ * @param {?} event
143
+ * @return {?}
198
144
  */
145
+ PlaceRouter.prototype.onPopState =
146
+ // @Trace()
199
147
  /**
200
- * placeRouter.navigate(placeDestinations.somePlace.createVisit(routeId, ...visitParams));
201
- * @param {?} visit
202
- * @param {?=} options
148
+ * @param {?} event
203
149
  * @return {?}
204
150
  */
205
- PlaceRouter.prototype.navigate = /**
206
- * placeRouter.navigate(placeDestinations.somePlace.createVisit(routeId, ...visitParams));
207
- * @param {?} visit
208
- * @param {?=} options
151
+ function (event) {
152
+ assert.isTruthy(event.navigationTrigger === 'popstate');
153
+ if (this.currentSession) {
154
+ this.currentSession.onPopState(event);
155
+ }
156
+ else {
157
+ /** @type {?} */
158
+ var poppedHistoryUrl = event.url;
159
+ /** @type {?} */
160
+ var currentRouterUrl = this.urlService.getCurrentRouterUrl();
161
+ /** @type {?} */
162
+ var session = this.interactionService.isActive() ?
163
+ new PopStateDuringInteractionNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl) :
164
+ new PopStateNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl);
165
+ this.transitionTo(session);
166
+ }
167
+ };
168
+ // @Trace()
169
+ // @Trace()
170
+ /**
171
+ * @param {?} event
209
172
  * @return {?}
210
173
  */
211
- function (visit, options) {
212
- return tslib_1.__awaiter(this, void 0, void 0, function () {
213
- var _this = this;
214
- return tslib_1.__generator(this, function (_a) {
215
- this.doNavigation(visit, (/**
216
- * @param {?} router
217
- * @return {?}
218
- */
219
- function (router) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
220
- var commands;
221
- return tslib_1.__generator(this, function (_a) {
222
- switch (_a.label) {
223
- case 0:
224
- commands = tslib_1.__spread([
225
- visit.placeDefinition.path
226
- ], this.createRouteParameters(visit));
227
- return [4 /*yield*/, this.router.navigate(commands, {
228
- relativeTo: options ? options.relativeTo : null
229
- })];
230
- case 1:
231
- _a.sent();
232
- return [2 /*return*/];
233
- }
234
- });
235
- }); }));
236
- return [2 /*return*/];
237
- });
238
- });
174
+ PlaceRouter.prototype.onRouterStarted =
175
+ // @Trace()
176
+ /**
177
+ * @param {?} event
178
+ * @return {?}
179
+ */
180
+ function (event) {
181
+ assert.isFalsey(event.navigationTrigger === 'popstate');
182
+ /** @type {?} */
183
+ var inInteraction = this.interactionService.isActive();
184
+ if (this.currentSession) {
185
+ this.currentSession.onRouterStarted(event);
186
+ }
187
+ else {
188
+ this.transitionTo(this.createNavigationSession(this.urlService.getCurrentRouterUrl()));
189
+ }
239
190
  };
240
191
  // @Trace()
241
192
  // @Trace()
242
193
  /**
243
- * @param {?} activatedRoute
244
- * @param {?} previous
245
- * @param {?} next
194
+ * @param {?} newUrl
246
195
  * @return {?}
247
196
  */
248
- PlaceRouter.prototype.pushVisitChangesToRoute =
197
+ PlaceRouter.prototype.onUrlChanged =
249
198
  // @Trace()
250
199
  /**
251
- * @param {?} activatedRoute
252
- * @param {?} previous
253
- * @param {?} next
200
+ * @param {?} newUrl
254
201
  * @return {?}
255
202
  */
256
- function (activatedRoute, previous, next) {
257
- return tslib_1.__awaiter(this, void 0, void 0, function () {
258
- var _this = this;
203
+ function (newUrl) {
204
+ // the back button can trigger a url change without a navigation session in progress so we
205
+ // console.log(`---> Url Changed ${newUrl}`);
206
+ if (this.currentSession) {
207
+ this.currentSession.onUrlChange(newUrl);
208
+ }
209
+ else {
210
+ console.log('FYI: url changed without a navigation session in progress');
211
+ }
212
+ // console.log(`<--- Url Changed`);
213
+ };
214
+ // @Trace()
215
+ // @Trace()
216
+ /**
217
+ * @param {?} event
218
+ * @return {?}
219
+ */
220
+ PlaceRouter.prototype.onRouterCancelled =
221
+ // @Trace()
222
+ /**
223
+ * @param {?} event
224
+ * @return {?}
225
+ */
226
+ function (event) {
227
+ this.currentSession.onRouterCancelled(event);
228
+ };
229
+ // @Trace()
230
+ // @Trace()
231
+ /**
232
+ * @param {?} event
233
+ * @return {?}
234
+ */
235
+ PlaceRouter.prototype.onRouterError =
236
+ // @Trace()
237
+ /**
238
+ * @param {?} event
239
+ * @return {?}
240
+ */
241
+ function (event) {
242
+ this.currentSession.onRouterError(event);
243
+ };
244
+ // @Trace()
245
+ // @Trace()
246
+ /**
247
+ * @param {?} event
248
+ * @return {?}
249
+ */
250
+ PlaceRouter.prototype.onRouterEnd =
251
+ // @Trace()
252
+ /**
253
+ * @param {?} event
254
+ * @return {?}
255
+ */
256
+ function (event) {
257
+ this.currentSession.onRouterEnd(event);
258
+ };
259
+ /**
260
+ * @param {?} visit
261
+ * @param {?=} options
262
+ * @return {?}
263
+ */
264
+ PlaceRouter.prototype.navigate = /**
265
+ * @param {?} visit
266
+ * @param {?=} options
267
+ * @return {?}
268
+ */
269
+ function (visit, options) {
270
+ var _this = this;
271
+ return this.doNavigation(visit, (/**
272
+ * @param {?} router
273
+ * @return {?}
274
+ */
275
+ function (router) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
276
+ var commands;
259
277
  return tslib_1.__generator(this, function (_a) {
260
- // we have to push to history so our remember sanitisers don't pick up the previous value
261
- // when it's been cleared by the user.
262
- this.placeHistory.add(next);
263
- // FIXME: no route id -> route id duplicates route parameters
264
- if (next.hasRoutingChangedFrom(previous)) {
265
- return [2 /*return*/, this.doNavigation(next, (/**
266
- * @param {?} router
267
- * @return {?}
268
- */
269
- function (router) {
270
- /** @type {?} */
271
- var urlSnapshot = _this.parseUrl(_this.router.routerState.snapshot.url).updateVisitSegments(next);
272
- console.log('### Push Changes to route Redirect', { commands: urlSnapshot.url });
273
- return _this.navigateByUrl(urlSnapshot);
274
- }))];
278
+ switch (_a.label) {
279
+ case 0:
280
+ commands = tslib_1.__spread([
281
+ visit.placeDefinition.path
282
+ ], this.createRouteParameters(visit));
283
+ return [4 /*yield*/, this.angularRouter.navigate(commands, {
284
+ relativeTo: options ? options.relativeTo : null
285
+ })];
286
+ case 1:
287
+ _a.sent();
288
+ return [2 /*return*/];
275
289
  }
276
- return [2 /*return*/];
277
290
  });
278
- });
291
+ }); }));
279
292
  };
293
+ // @Trace()
294
+ // @Trace()
280
295
  /**
281
296
  * @param {?} visit
282
297
  * @param {?} runNavigationCommands
283
298
  * @return {?}
284
299
  */
285
- PlaceRouter.prototype.doNavigation = /**
300
+ PlaceRouter.prototype.doNavigation =
301
+ // @Trace()
302
+ /**
286
303
  * @param {?} visit
287
304
  * @param {?} runNavigationCommands
288
305
  * @return {?}
289
306
  */
290
307
  function (visit, runNavigationCommands) {
291
308
  return tslib_1.__awaiter(this, void 0, void 0, function () {
292
- var _this = this;
309
+ var navigation;
293
310
  return tslib_1.__generator(this, function (_a) {
294
311
  switch (_a.label) {
295
312
  case 0:
296
313
  if (this.navigationInProgress.value) {
297
314
  lang.illegalState('Navigation already in progress');
298
315
  }
299
- this.runStateTransition((/**
300
- * @param {?} current
301
- * @return {?}
302
- */
303
- function (current) {
304
- /** @type {?} */
305
- var session = _this.navigationState.onPlaceNavigationStart(visit, _this.getCurrentRouterUrl());
306
- session.storeVisit(visit);
307
- return session;
308
- }));
316
+ navigation = this.createNavigationSession(this.urlService.getCurrentRouterUrl());
317
+ navigation.storeVisit(visit);
318
+ this.transitionTo(navigation);
309
319
  _a.label = 1;
310
320
  case 1:
311
321
  _a.trys.push([1, , 3, 4]);
312
- return [4 /*yield*/, runNavigationCommands(this.router)];
322
+ return [4 /*yield*/, runNavigationCommands(this.angularRouter)];
313
323
  case 2:
314
324
  _a.sent();
315
325
  return [3 /*break*/, 4];
316
326
  case 3:
317
- // Router has finished (since there was no router change required) so we
318
- // need to end the navigation session.
319
- if (this.navigationState.isTransitional && !this.router.getCurrentNavigation()) {
320
- this.runStateTransition((/**
321
- * @param {?} session
322
- * @return {?}
323
- */
324
- function (session) { return session.onRouterEnd(new NavigationEnd(-1, '', '')); }));
327
+ // Check if the router has finished (in the case where no router change required) and we're still in a
328
+ // transient state and finish of the transition.
329
+ if (!this.angularRouter.getCurrentNavigation() && this.currentSession) {
330
+ this.currentSession.onRouterEnd(new NavigationEnd(-1, '', ''));
325
331
  }
326
332
  return [7 /*endfinally*/];
327
333
  case 4: return [2 /*return*/];
@@ -329,242 +335,245 @@ var PlaceRouter = /** @class */ (function (_super) {
329
335
  });
330
336
  });
331
337
  };
338
+ /**
339
+ * @param {?} urlSnapshot
340
+ * @param {?=} navigationExtras
341
+ * @return {?}
342
+ */
343
+ PlaceRouter.prototype.navigateByUrl = /**
344
+ * @param {?} urlSnapshot
345
+ * @param {?=} navigationExtras
346
+ * @return {?}
347
+ */
348
+ function (urlSnapshot, navigationExtras) {
349
+ // console.log(`### navigationByUrl -> ${urlSnapshot.urlTree.toString()}`);
350
+ return this.angularRouter.navigateByUrl(urlSnapshot.urlTree, navigationExtras);
351
+ };
352
+ Object.defineProperty(PlaceRouter.prototype, "activeVisits", {
353
+ get: /**
354
+ * @return {?}
355
+ */
356
+ function () {
357
+ return this._activeVisits.readonly;
358
+ },
359
+ enumerable: true,
360
+ configurable: true
361
+ });
332
362
  // @Trace()
333
363
  // @Trace()
334
364
  /**
335
- * @protected
336
- * @param {?} transition
365
+ * @param {?} previous
366
+ * @param {?} next
337
367
  * @return {?}
338
368
  */
339
- PlaceRouter.prototype.runStateTransition =
369
+ PlaceRouter.prototype.pushVisitChangesToRoute =
340
370
  // @Trace()
341
371
  /**
342
- * @protected
343
- * @param {?} transition
372
+ * @param {?} previous
373
+ * @param {?} next
344
374
  * @return {?}
345
375
  */
346
- function (transition) {
347
- /** @type {?} */
348
- var previous = this._navigationStateModel.value;
349
- /** @type {?} */
350
- var next = transition(this.navigationState);
351
- this._navigationStateModel.value = next;
352
- if (next !== previous) {
353
- previous.dispose();
354
- Logger.get(this).info("Router State Transition: " + previous.toString() + " -> " + next.toString());
355
- }
376
+ function (previous, next) {
377
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
378
+ var _this = this;
379
+ return tslib_1.__generator(this, function (_a) {
380
+ // we have to push to history so our remember sanitisers don't pick up the previous value
381
+ // when it's been cleared by the user.
382
+ this.placeHistory.add(next);
383
+ // FIXME: no route id -> route id duplicates route parameters
384
+ if (next.hasRoutingChangedFrom(previous)) {
385
+ return [2 /*return*/, this.doNavigation(next, (/**
386
+ * @param {?} router
387
+ * @return {?}
388
+ */
389
+ function (router) {
390
+ /** @type {?} */
391
+ var urlSnapshot = _this.urlService.parseUrl(_this.angularRouter.routerState.snapshot.url).updateVisitSegments(next);
392
+ // console.log('### Push Changes to route Redirect', { commands: urlSnapshot.url });
393
+ return _this.navigateByUrl(urlSnapshot);
394
+ }))];
395
+ }
396
+ return [2 /*return*/];
397
+ });
398
+ });
356
399
  };
357
400
  /**
358
401
  * @private
359
- * @param {?} visit
402
+ * @param {?} currentRouterUrl
360
403
  * @return {?}
361
404
  */
362
- PlaceRouter.prototype.createRouteParameters = /**
405
+ PlaceRouter.prototype.createNavigationSession = /**
363
406
  * @private
364
- * @param {?} visit
407
+ * @param {?} currentRouterUrl
365
408
  * @return {?}
366
409
  */
367
- function (visit) {
410
+ function (currentRouterUrl) {
368
411
  /** @type {?} */
369
- var def = visit.placeDefinition;
370
- return visit.hasRouteId() ?
371
- [def.getFormattedRouteId(visit), def.getFormattedRouteParameters(visit)] :
372
- [def.getFormattedRouteParameters(visit)];
373
- };
374
- /**
375
- * @param {?} activatedRoute
376
- * @return {?}
377
- */
378
- PlaceRouter.prototype.extractChildPath = /**
379
- * @param {?} activatedRoute
380
- * @return {?}
381
- */
382
- function (activatedRoute) {
383
- return _.flatten(activatedRoute.children.map((/**
384
- * @param {?} child
385
- * @return {?}
386
- */
387
- function (child) { return child.url; })));
412
+ var inInteraction = this.interactionService.isActive();
413
+ return inInteraction ?
414
+ new NavigatingDuringInteraction(this.navigationContext, currentRouterUrl) :
415
+ new Navigating(this.navigationContext, currentRouterUrl);
388
416
  };
417
+ // @Trace()
418
+ // @Trace()
389
419
  /**
390
- * @param {?} url
391
- * @return {?}
392
- */
393
- PlaceRouter.prototype.parseUrl = /**
394
- * @param {?} url
420
+ * @protected
421
+ * @param {?} next
395
422
  * @return {?}
396
423
  */
397
- function (url) {
398
- return new UrlSnapshot(this.urlSerializer, url);
399
- };
424
+ PlaceRouter.prototype.transitionTo =
425
+ // @Trace()
400
426
  /**
401
- * @param {?} url
402
- * @param {?} options
403
- * @return {?}
404
- */
405
- PlaceRouter.prototype.resetBrowserLocation = /**
406
- * @param {?} url
407
- * @param {?} options
427
+ * @protected
428
+ * @param {?} next
408
429
  * @return {?}
409
430
  */
410
- function (url, options) {
411
- options.replaceCurrent ? this.angularLocation.replaceState(url) : this.angularLocation.go(url);
431
+ function (next) {
432
+ /** @type {?} */
433
+ var previous = this.navigationSessionModel.value;
434
+ assert.isTruthy(next !== previous);
435
+ Logger.get(this).info("### Router State Transition: " + (previous ? previous.toString() : 'null') + " -> " + next.toString());
436
+ this.navigationSessionModel.value = next;
437
+ if (!!previous) {
438
+ previous.dispose();
439
+ }
440
+ next.notifyActive();
412
441
  };
442
+ // @Trace()
443
+ // @Trace()
413
444
  /**
445
+ * @private
446
+ * @param {?} visits
414
447
  * @return {?}
415
448
  */
416
- PlaceRouter.prototype.forward = /**
417
- * @return {?}
418
- */
419
- function () {
420
- this.angularLocation.forward();
421
- };
449
+ PlaceRouter.prototype.routingSessionFinished =
450
+ // @Trace()
422
451
  /**
423
- * @param {...?} visits
424
- * @return {?}
425
- */
426
- PlaceRouter.prototype.createUrlSnapshot = /**
427
- * @param {...?} visits
452
+ * @private
453
+ * @param {?} visits
428
454
  * @return {?}
429
455
  */
430
- function () {
456
+ function (visits) {
431
457
  var _this = this;
432
- var visits = [];
433
- for (var _i = 0; _i < arguments.length; _i++) {
434
- visits[_i] = arguments[_i];
458
+ if (visits && visits.length > 0) {
459
+ assert.isTruthy(this.navigationInProgress.value);
460
+ visits.forEach((/**
461
+ * @param {?} v
462
+ * @return {?}
463
+ */
464
+ function (v) { return _this.placeHistory.add(v); }));
465
+ // We update the active visits before we finish the session so the
466
+ // place outlets can ignore the incoming changes until things are
467
+ // settled. TODO: can we removed the event'ness here and just do a push?
468
+ this._activeVisits.value = visits;
435
469
  }
436
470
  /** @type {?} */
437
- var bits = [];
438
- visits.forEach((/**
439
- * @param {?} v
471
+ var session = this.currentSession;
472
+ session.dispose();
473
+ this.navigationSessionModel.value = null;
474
+ console.log("### Router Session Finished (was " + session.toString() + ")");
475
+ this.sessionFinishedJobs.forEach((/**
476
+ * @param {?} job
440
477
  * @return {?}
441
478
  */
442
- function (v) {
443
- bits.push(_this.parseUrl("" + v.placeDefinition.path).updateVisitSegments(v).url);
444
- }));
445
- return this.parseUrl(bits.join(''));
446
- };
447
- /**
448
- * @return {?}
449
- */
450
- PlaceRouter.prototype.getCurrentRouterUrl = /**
451
- * @return {?}
452
- */
453
- function () {
454
- return this.router.routerState ? this.router.routerState.snapshot.url : null;
455
- };
456
- /**
457
- * @return {?}
458
- */
459
- PlaceRouter.prototype.getCurrentRouteSnapshot = /**
460
- * @return {?}
461
- */
462
- function () {
463
- return this.parseUrl(this.getCurrentRouterUrl());
479
+ function (job) { return job(); }));
480
+ this.sessionFinishedJobs = [];
464
481
  };
465
482
  /**
466
- * @param {?} url
483
+ * @private
484
+ * @param {?} func
467
485
  * @return {?}
468
486
  */
469
- PlaceRouter.prototype.getActiveInteractionIdsFromUrl = /**
470
- * @param {?} url
487
+ PlaceRouter.prototype.runAfterCurrentRoutingSession = /**
488
+ * @private
489
+ * @param {?} func
471
490
  * @return {?}
472
491
  */
473
- function (url) {
474
- return this.parseUrl(url).getInteractionIds();
492
+ function (func) {
493
+ assert.isTruthy(this.navigationInProgress);
494
+ this.sessionFinishedJobs.push(func);
475
495
  };
476
- // @Trace()
477
- // @Trace()
478
496
  /**
479
- * @param {?} url
480
- * @return {?}
497
+ * Sync's the current interaction state with the URL. We need to push something in the URL in order
498
+ * to be able to capture the back button on the first page. If we don't then the back click will exit
499
+ * the app directly and we don't get to ask.
481
500
  */
482
- PlaceRouter.prototype.hasActiveInteractionIds =
483
501
  // @Trace()
484
502
  /**
485
- * @param {?} url
503
+ * Sync's the current interaction state with the URL. We need to push something in the URL in order
504
+ * to be able to capture the back button on the first page. If we don't then the back click will exit
505
+ * the app directly and we don't get to ask.
486
506
  * @return {?}
487
507
  */
488
- function (url) {
489
- return this.getActiveInteractionIdsFromUrl(url).length > 0;
490
- };
491
- // @Trace()
492
508
  // @Trace()
493
- /**
494
- * @param {?} urlSnapshot
495
- * @param {?=} navigationExtras
509
+ PlaceRouter.prototype.syncInteractionContextIdsWithRouter = /**
510
+ * Sync's the current interaction state with the URL. We need to push something in the URL in order
511
+ * to be able to capture the back button on the first page. If we don't then the back click will exit
512
+ * the app directly and we don't get to ask.
496
513
  * @return {?}
497
514
  */
498
- PlaceRouter.prototype.navigateByUrl =
499
515
  // @Trace()
500
- /**
501
- * @param {?} urlSnapshot
502
- * @param {?=} navigationExtras
503
- * @return {?}
504
- */
505
- function (urlSnapshot, navigationExtras) {
506
- return this.router.navigateByUrl(urlSnapshot.urlTree, navigationExtras);
516
+ function () {
517
+ var _this = this;
518
+ if (this.navigationSession) {
519
+ // console.log(`Navigation active -> ${this.navigationSession.toString()}, sync delayed until finished.`);
520
+ /** @type {?} */
521
+ var session = this.navigationSession;
522
+ return new Promise((/**
523
+ * @param {?} resolve
524
+ * @param {?} reject
525
+ * @return {?}
526
+ */
527
+ function (resolve, reject) {
528
+ _this.runAfterCurrentRoutingSession((/**
529
+ * @return {?}
530
+ */
531
+ function () {
532
+ // console.log(`Starting delayed sync job`);
533
+ /** @type {?} */
534
+ var syncSession = new SynchroniseInteractionContextIdsWithRoute(_this.navigationContext, _this.urlService.getCurrentRouterUrl(), false);
535
+ syncSession.onDispose((/**
536
+ * @return {?}
537
+ */
538
+ function () { return resolve(); }));
539
+ _this.transitionTo(syncSession);
540
+ }));
541
+ }));
542
+ }
543
+ else {
544
+ return new Promise(((/**
545
+ * @param {?} resolve
546
+ * @param {?} reject
547
+ * @return {?}
548
+ */
549
+ function (resolve, reject) {
550
+ // console.log(`No navigation in progress, starting synchronisation job`);
551
+ /** @type {?} */
552
+ var session = new SynchroniseInteractionContextIdsWithRoute(_this.navigationContext, _this.urlService.getCurrentRouterUrl(), false);
553
+ session.onDispose((/**
554
+ * @return {?}
555
+ */
556
+ function () { return resolve(); }));
557
+ _this.transitionTo(session);
558
+ })));
559
+ }
507
560
  };
508
- // TODO: Should this be moved to the navigation states?
509
- // TODO: Should this be moved to the navigation states?
510
561
  /**
511
- * @param {?} currentIds
512
- * @param {?} previous
562
+ * @private
563
+ * @param {?} visit
513
564
  * @return {?}
514
565
  */
515
- PlaceRouter.prototype.syncInteractionIdsWithRouter =
516
- // TODO: Should this be moved to the navigation states?
517
- /**
518
- * @param {?} currentIds
519
- * @param {?} previous
566
+ PlaceRouter.prototype.createRouteParameters = /**
567
+ * @private
568
+ * @param {?} visit
520
569
  * @return {?}
521
570
  */
522
- function (currentIds, previous) {
523
- var _this = this;
524
- assert.isFalsey(this.navigationInProgress.value); // Updating interaction routes during an existing navigation breaks all the things.
525
- console.log({
526
- startingActivity: currentIds.length > previous.length,
527
- wasBackButton: this.navigationState.isPopState
528
- });
529
- if (_.isEqual(currentIds, previous)) {
530
- console.log('activity ids were the same, skipping');
531
- }
532
- else {
533
- // OMG, this is nuts.
534
- /** @type {?} */
535
- var addingActivity = currentIds.length > previous.length;
536
- /** @type {?} */
537
- var isFirstActivity = addingActivity && previous.length < 1;
538
- /** @type {?} */
539
- var removingLastActivity = currentIds.length < 1;
540
- if (addingActivity) { // we're starting a new activity, push the change to the history and update the url
541
- console.log('adding activity');
542
- this.navigateByUrl(this.getCurrentRouteSnapshot().updateInteractionIds(currentIds), {
543
- replaceUrl: !isFirstActivity // we don't let the history pile up
544
- });
545
- }
546
- else {
547
- /** @type {?} */
548
- var urlSnapshot = this.getCurrentRouteSnapshot().updateInteractionIds(currentIds);
549
- if (removingLastActivity) {
550
- this.navigateByUrl(urlSnapshot, {
551
- replaceUrl: true
552
- }).then((/**
553
- * @return {?}
554
- */
555
- function () {
556
- // for some reason we need to pop the last history off the stack when leaving the
557
- // active activity state.
558
- _this.angularLocation.back();
559
- }));
560
- }
561
- else {
562
- this.navigateByUrl(urlSnapshot, {
563
- replaceUrl: true
564
- });
565
- }
566
- }
567
- }
571
+ function (visit) {
572
+ /** @type {?} */
573
+ var def = visit.placeDefinition;
574
+ return visit.hasRouteId() ?
575
+ [def.getFormattedRouteId(visit), def.getFormattedRouteParameters(visit)] :
576
+ [def.getFormattedRouteParameters(visit)];
568
577
  };
569
578
  PlaceRouter.decorators = [
570
579
  { type: Injectable, args: [{
@@ -574,64 +583,68 @@ var PlaceRouter = /** @class */ (function (_super) {
574
583
  /** @nocollapse */
575
584
  PlaceRouter.ctorParameters = function () { return [
576
585
  { type: Router },
577
- { type: UrlSerializer },
578
586
  { type: Location },
579
- { type: PlaceHistory },
580
- { type: InteractionService }
587
+ { type: InteractionService },
588
+ { type: UrlService },
589
+ { type: PlaceHistory }
581
590
  ]; };
582
- /** @nocollapse */ PlaceRouter.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function PlaceRouter_Factory() { return new PlaceRouter(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i1.UrlSerializer), i0.ɵɵinject(i2.Location), i0.ɵɵinject(i3.PlaceHistory), i0.ɵɵinject(i4.InteractionService)); }, token: PlaceRouter, providedIn: "root" });
591
+ /** @nocollapse */ PlaceRouter.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function PlaceRouter_Factory() { return new PlaceRouter(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Location), i0.ɵɵinject(i3.InteractionService), i0.ɵɵinject(i4.UrlService), i0.ɵɵinject(i5.PlaceHistory)); }, token: PlaceRouter, providedIn: "root" });
583
592
  return PlaceRouter;
584
593
  }(GarbageCollector));
585
594
  export { PlaceRouter };
586
595
  if (false) {
596
+ /** @type {?} */
597
+ PlaceRouter.prototype.navigationSessionModel;
598
+ /** @type {?} */
599
+ PlaceRouter.prototype.navigationInProgress;
600
+ /** @type {?} */
601
+ PlaceRouter.prototype.navigationSessionName;
587
602
  /**
588
603
  * @type {?}
589
604
  * @private
590
605
  */
591
- PlaceRouter.prototype._navigationStateModel;
606
+ PlaceRouter.prototype.navigationContext;
592
607
  /**
593
608
  * @type {?}
594
609
  * @private
595
610
  */
596
611
  PlaceRouter.prototype._activeVisits;
597
612
  /** @type {?} */
598
- PlaceRouter.prototype.navigationInProgress;
599
- /** @type {?} */
600
- PlaceRouter.prototype.activeVisitIndex;
613
+ PlaceRouter.prototype.activeVisitsByPlaceDefinition;
601
614
  /**
602
615
  * @type {?}
603
616
  * @private
604
617
  */
605
- PlaceRouter.prototype._navigationSessionContext;
618
+ PlaceRouter.prototype.routerInteractionAdapter;
606
619
  /**
607
620
  * @type {?}
608
621
  * @private
609
622
  */
610
- PlaceRouter.prototype._navigationStateTypeModel;
623
+ PlaceRouter.prototype.sessionFinishedJobs;
611
624
  /**
612
625
  * @type {?}
613
626
  * @private
614
627
  */
615
- PlaceRouter.prototype.router;
628
+ PlaceRouter.prototype.angularRouter;
616
629
  /**
617
630
  * @type {?}
618
631
  * @private
619
632
  */
620
- PlaceRouter.prototype.urlSerializer;
633
+ PlaceRouter.prototype.angularLocation;
621
634
  /**
622
635
  * @type {?}
623
636
  * @private
624
637
  */
625
- PlaceRouter.prototype.angularLocation;
638
+ PlaceRouter.prototype.interactionService;
626
639
  /**
627
640
  * @type {?}
628
641
  * @private
629
642
  */
630
- PlaceRouter.prototype.placeHistory;
643
+ PlaceRouter.prototype.urlService;
631
644
  /**
632
645
  * @type {?}
633
646
  * @private
634
647
  */
635
- PlaceRouter.prototype.interactionService;
648
+ PlaceRouter.prototype.placeHistory;
636
649
  }
637
650
  //# sourceMappingURL=place-router.js.map