PluginProbe ʕ •ᴥ•ʔ
Starter Sites & Templates by Neve / trunk
Starter Sites & Templates by Neve vtrunk
1.4.0 1.3.0 1.2.29 1.2.28 1.2.6 1.2.7 1.2.8 1.2.9 trunk 1.0.10 1.0.11 1.0.7 1.0.8 1.0.9 1.1.0 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 1.1.22 1.1.23 1.1.24 1.1.25 1.1.26 1.1.27 1.1.28 1.1.29 1.1.3 1.1.30 1.1.31 1.1.32 1.1.33 1.1.34 1.1.35 1.1.36 1.1.37 1.1.38 1.1.39 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.3 1.2.4 1.2.5
templates-patterns-collection / assets / src / Components / ImportStepper.js
templates-patterns-collection / assets / src / Components Last commit date
CloudLibrary 1 year ago Settings 1 year ago StarterSites 3 years ago App.js 2 years ago Card.js 3 years ago CategoriesTabs.js 3 years ago CategorySelector.js 2 years ago CustomTooltip.js 3 years ago DocNotice.js 2 years ago EditorSelector.js 2 years ago EditorTabs.js 4 years ago Header.js 2 years ago Icon.js 2 years ago ImportModal.js 1 year ago ImportModalError.js 2 years ago ImportModalMock.js 4 years ago ImportModalNote.js 4 years ago ImportStepper.js 1 year ago InstallModal.js 1 year ago License.js 2 years ago LicensePanelContext.js 3 years ago Loading.js 4 years ago Main.js 1 year ago Migration.js 4 years ago NewTCNotice.js 1 year ago Notification.js 4 years ago OnboardingContent.js 4 years ago PreviewFrame.js 3 years ago Search.js 2 years ago StarterSiteCard.js 3 years ago
ImportStepper.js
109 lines
1 import classnames from 'classnames';
2
3 import { __ } from '@wordpress/i18n';
4 import { Dashicon } from '@wordpress/components';
5
6 const ImportStepper = ( { currentStep, progress, willDo } ) => {
7 const stepsMap = {
8 cleanup: {
9 label: __(
10 'Cleanup previous Import',
11 'templates-patterns-collection'
12 ),
13 status: progress.cleanup,
14 willDo: willDo.cleanup,
15 },
16 theme_install: {
17 label: __(
18 'Installing and Activating the Theme',
19 'templates-patterns-collection'
20 ),
21 status: progress.theme_install,
22 willDo: willDo.theme_install,
23 },
24 plugins: {
25 label: __( 'Installing Plugins', 'templates-patterns-collection' ),
26 status: progress.plugins,
27 willDo: true,
28 },
29 content: {
30 label: __( 'Importing Content', 'templates-patterns-collection' ),
31 status: progress.content,
32 willDo: willDo.content,
33 },
34 customizer: {
35 label: __(
36 'Importing Customizer Settings',
37 'templates-patterns-collection'
38 ),
39 status: progress.customizer,
40 willDo: willDo.customizer,
41 },
42 widgets: {
43 label: __( 'Importing Widgets', 'templates-patterns-collection' ),
44 status: progress.widgets,
45 willDo: willDo.widgets,
46 },
47 performanceAddon: {
48 label: __(
49 'Installing Performance Features',
50 'templates-patterns-collection'
51 ),
52 status: progress.performanceAddon,
53 willDo: willDo.performanceAddon,
54 },
55 };
56
57 return (
58 <ul className="stepper">
59 { Object.keys( stepsMap ).map( ( key, index ) => {
60 const { label, status, willDo } = stepsMap[ key ];
61
62 if ( ! willDo ) {
63 return null;
64 }
65
66 const classes = classnames( [
67 'icon',
68 {
69 loading: currentStep === key,
70 warning: currentStep === key,
71 success: 'done' === status,
72 error: 'error' === status,
73 skip: 'skip' === status,
74 },
75 ] );
76
77 let icon = 'clock';
78 if ( currentStep === key ) {
79 icon = 'update';
80 }
81
82 if ( 'done' === status ) {
83 icon = 'yes';
84 }
85
86 if ( 'error' === status ) {
87 icon = 'no-alt';
88 }
89
90 return (
91 <li key={ index }>
92 <span className={ classes }>
93 <Dashicon
94 icon={ icon }
95 className={
96 currentStep === key ? 'loading' : ''
97 }
98 />
99 </span>
100 <span>{ label }</span>
101 </li>
102 );
103 } ) }
104 </ul>
105 );
106 };
107
108 export default ImportStepper;
109