@veloceapps/sdk 8.0.0-86 → 8.0.0-88

Sign up to get free protection for your applications and to get access to all the features.
@@ -1734,25 +1734,25 @@ class RootGuard {
1734
1734
  this.router = router;
1735
1735
  this.routerService = routerService;
1736
1736
  this.initialized = false;
1737
- this.navToRestore = null;
1738
1737
  }
1739
1738
  canActivate(route) {
1740
- var _a;
1741
1739
  // We always need to initialize root component first, and only then start checking guards/resolvers
1742
1740
  if (!this.initialized) {
1743
1741
  this.initialized = true;
1744
- this.navToRestore = this.router.getCurrentNavigation();
1742
+ const navToRestore = this.router.getCurrentNavigation();
1745
1743
  const rootUrl = this.routerService.getFlowRootPath(route);
1746
- this.router.navigate([rootUrl], {
1747
- replaceUrl: !((_a = this.navToRestore) === null || _a === void 0 ? void 0 : _a.previousNavigation),
1748
- queryParams: route.queryParams,
1749
- });
1750
- }
1751
- else if (this.navToRestore) {
1752
- const nav = this.navToRestore;
1753
- setTimeout(() => {
1754
- this.router.navigateByUrl(nav.extractedUrl, nav.extras);
1755
- this.navToRestore = null;
1744
+ this.router
1745
+ .navigate([rootUrl], {
1746
+ replaceUrl: !(navToRestore === null || navToRestore === void 0 ? void 0 : navToRestore.previousNavigation),
1747
+ skipLocationChange: true,
1748
+ })
1749
+ .then(success => {
1750
+ if (!success || !navToRestore) {
1751
+ return;
1752
+ }
1753
+ setTimeout(() => {
1754
+ this.router.navigateByUrl(navToRestore.extractedUrl, navToRestore.extras);
1755
+ });
1756
1756
  });
1757
1757
  }
1758
1758
  return true;
@@ -2832,71 +2832,78 @@ const rootRoute = {
2832
2832
  id: VELOCE_FLOW_ROOT_ROUTE,
2833
2833
  path: '',
2834
2834
  component: FlowComponent,
2835
- canActivate: [initFlow],
2836
- runGuardsAndResolvers: 'always',
2835
+ canActivate: [RootGuard],
2836
+ canDeactivate: [RootGuard],
2837
2837
  children: [
2838
2838
  {
2839
- path: 'flows',
2840
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2841
- resolve: { flow: FlowResolver },
2842
- canActivate: [ContextGuard],
2843
- children: [],
2844
- },
2845
- {
2846
- path: 'product',
2847
- component: ProductComponent,
2848
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2849
- resolve: { quote: QuoteResolver },
2850
- canActivate: [ContextGuard],
2851
- canDeactivate: [ProductUnloadGuard],
2852
- data: { showHeader: true },
2853
- },
2854
- {
2855
- path: 'cart',
2856
- component: ShoppingCartComponent,
2857
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2858
- resolve: { quote: QuoteResolver },
2859
- canActivate: [ContextGuard],
2860
- data: { showHeader: true },
2861
- },
2862
- {
2863
- path: 'catalog',
2864
- component: CatalogComponent,
2865
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2866
- resolve: { quote: QuoteResolver },
2867
- canActivate: [ContextGuard],
2868
- data: { showHeader: true },
2869
- },
2870
- {
2871
- path: 'assets',
2872
- component: AssetsComponent,
2873
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2874
- resolve: { quote: QuoteResolver },
2875
- canActivate: [ContextGuard],
2876
- data: { showHeader: true },
2877
- },
2878
- {
2879
- path: 'empty',
2880
- component: EmptyAccountComponent,
2881
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2882
- resolve: { quote: QuoteResolver },
2883
- canActivate: [ContextGuard],
2884
- data: { showHeader: true },
2885
- },
2886
- {
2887
- path: 'remote',
2888
- component: RemoteComponent,
2889
- runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2890
- resolve: { quote: QuoteResolver },
2891
- canActivate: [ContextGuard],
2892
- },
2893
- {
2894
- path: 'debug',
2895
- loadChildren: () => DebugModule,
2896
- },
2897
- {
2898
- path: '404',
2899
- loadChildren: () => RecordNotFoundModule,
2839
+ path: '',
2840
+ canActivate: [initFlow],
2841
+ runGuardsAndResolvers: 'always',
2842
+ children: [
2843
+ {
2844
+ path: 'flows',
2845
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2846
+ resolve: { flow: FlowResolver },
2847
+ canActivate: [ContextGuard],
2848
+ children: [],
2849
+ },
2850
+ {
2851
+ path: 'product',
2852
+ component: ProductComponent,
2853
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2854
+ resolve: { quote: QuoteResolver },
2855
+ canActivate: [ContextGuard],
2856
+ canDeactivate: [ProductUnloadGuard],
2857
+ data: { showHeader: true },
2858
+ },
2859
+ {
2860
+ path: 'cart',
2861
+ component: ShoppingCartComponent,
2862
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2863
+ resolve: { quote: QuoteResolver },
2864
+ canActivate: [ContextGuard],
2865
+ data: { showHeader: true },
2866
+ },
2867
+ {
2868
+ path: 'catalog',
2869
+ component: CatalogComponent,
2870
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2871
+ resolve: { quote: QuoteResolver },
2872
+ canActivate: [ContextGuard],
2873
+ data: { showHeader: true },
2874
+ },
2875
+ {
2876
+ path: 'assets',
2877
+ component: AssetsComponent,
2878
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2879
+ resolve: { quote: QuoteResolver },
2880
+ canActivate: [ContextGuard],
2881
+ data: { showHeader: true },
2882
+ },
2883
+ {
2884
+ path: 'empty',
2885
+ component: EmptyAccountComponent,
2886
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2887
+ resolve: { quote: QuoteResolver },
2888
+ canActivate: [ContextGuard],
2889
+ data: { showHeader: true },
2890
+ },
2891
+ {
2892
+ path: 'remote',
2893
+ component: RemoteComponent,
2894
+ runGuardsAndResolvers: 'paramsOrQueryParamsChange',
2895
+ resolve: { quote: QuoteResolver },
2896
+ canActivate: [ContextGuard],
2897
+ },
2898
+ {
2899
+ path: 'debug',
2900
+ loadChildren: () => DebugModule,
2901
+ },
2902
+ {
2903
+ path: '404',
2904
+ loadChildren: () => RecordNotFoundModule,
2905
+ },
2906
+ ],
2900
2907
  },
2901
2908
  ],
2902
2909
  };