PluginProbe
CartFlows – Funnel Builder & Checkout Plugin for WooCommerce / trunk
CartFlows – Funnel Builder & Checkout Plugin for WooCommerce vtrunk
3.2.0 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.1 trunk 1.0.4 1.1.0 1.1.0.1 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.20 1.1.21 All 160 releases
cartflows / wizard / assets / src / WizardRoute.js

WizardRoute.js in CartFlows – Funnel Builder & Checkout Plugin for WooCommerce trunk, at wizard/assets/src/WizardRoute.js

92 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import React from 'react';
2 import { useLocation } from 'react-router-dom';
3
4 import {
5 WelcomeStep,
6 PageBuilderStep,
7 PluginsInstallStep,
8 OptinStep,
9 GlobalCheckout,
10 ReadyStep,
11 } from '@WizardSteps';
12 import { NavigationBar, FooterNavigationBar } from '@WizardFields';
13
14 function WizardRoute( props ) {
15 const { setTemplatePreview } = props;
16 const query = new URLSearchParams( useLocation().search );
17 const action = query.get( 'step' );
18 const templatePreview = query.get( 'preview' );
19 let previous_step = 'dashboard',
20 next_step = '',
21 step_sequence = '';
22 const maxSteps = 6;
23
24 const get_route_page = function () {
25 let route_page = '';
26
27 switch ( action ) {
28 case 'welcome':
29 route_page = <WelcomeStep />;
30 previous_step = 'dashboard';
31 next_step = 'page-builder';
32 step_sequence = 0;
33 break;
34 case 'page-builder':
35 route_page = <PageBuilderStep />;
36 previous_step = 'welcome';
37 next_step = 'plugin-install';
38 step_sequence = 1;
39 break;
40 case 'plugin-install':
41 route_page = <PluginsInstallStep />;
42 previous_step = 'page-builder';
43 next_step = 'store-checkout';
44 step_sequence = 2;
45 break;
46 case 'store-checkout':
47 route_page = <GlobalCheckout />;
48 previous_step = 'plugin-install';
49 next_step = 'optin';
50 step_sequence = 3;
51 setTemplatePreview( templatePreview ? true : false );
52 break;
53 case 'optin':
54 setTemplatePreview( false );
55 route_page = <OptinStep />;
56 previous_step = 'store-checkout';
57 next_step = 'ready';
58 step_sequence = 4;
59 break;
60 case 'ready':
61 route_page = <ReadyStep />;
62 previous_step = 'optin';
63 step_sequence = 5;
64 break;
65 default:
66 route_page = <WelcomeStep />;
67 next_step = 'page-builder';
68 step_sequence = 0;
69 break;
70 }
71
72 return route_page;
73 };
74
75 return (
76 <>
77 <NavigationBar />
78 <main className="wcf-setup-wizard-content py-24 relative bg-white">
79 { get_route_page() }
80 </main>
81 <FooterNavigationBar
82 previousStep={ previous_step }
83 nextStep={ next_step }
84 currentStep={ step_sequence }
85 maxSteps={ maxSteps }
86 />
87 </>
88 );
89 }
90
91 export default WizardRoute;
92