PluginProbe
WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell / 3.12.0
WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell v3.12.0
3.13.3 3.13.2 3.13.1 3.13.0 3.12.13 3.12.12 3.12.11 3.12.10 3.12.9 3.12.8 3.12.7 3.12.6 3.12.5 3.12.4 3.12.3 3.12.1 3.12.2 3.12.0 3.11.1 3.11.0 3.10.9 3.10.8 3.10.7 3.10.6 2.8.16 All 261 releases
wpfunnels / admin / modules / setup-wizard / components / Sidebar / Steps.vue

Steps.vue in WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell 3.12.0, at admin/modules/setup-wizard/components/Sidebar/Steps.vue

62 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <template>
2 <div class="wpfnl-mm-setup-wizard-steps">
3 <div
4 v-for="(step, index) in steps"
5 :key="index"
6 class="wpfnl-mm-setup-wizard-step"
7 :class="{
8 'active': isActive(index),
9 'completed': isCompleted(index)
10 }"
11 >
12 <div class="wpfnl-mm-setup-wizard-step-number">
13 <svg v-if="isCompleted(index)" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">>
14 <circle cx="8" cy="8" r="8" fill="#239654"/>
15 <path d="M11.3333 5.33334L6.66667 10L4.66667 8" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
16 </svg>
17 <span v-else>{{ index + 1 }}</span>
18 </div>
19 <span class="wpfnl-mm-setup-wizard-step-label">{{ step }}</span>
20 </div>
21 </div>
22 </template>
23
24 <script>
25 export default {
26 name: 'Steps',
27 props: {
28 currentStep: {
29 type: Number,
30 default: 1
31 },
32 selectedGoal: {
33 type: String,
34 default: ''
35 },
36 storeCheckoutPhase: {
37 type: String,
38 default: 'select'
39 }
40 },
41 computed: {
42 steps() {
43 return ['Welcome', 'Required Installation', 'Store Checkout'];
44 }
45 },
46 methods: {
47 isCompleted(index) {
48 // Standard: earlier steps are completed when currentStep has moved past them
49 if (this.currentStep > index + 1) return true;
50 // Special case: step 3 (index 2) is completed when StoreCheckout phase is 'complete'
51 if (index === 2 && this.currentStep === 3 && this.storeCheckoutPhase === 'complete') return true;
52 return false;
53 },
54 isActive(index) {
55 // Step 3 is no longer "active" once it's complete — it's "completed"
56 if (index === 2 && this.storeCheckoutPhase === 'complete') return false;
57 return this.currentStep === index + 1;
58 }
59 }
60 }
61 </script>
62