@@ -3,18 +3,21 @@ import React, { useState, type ReactNode } from 'react'
33import MainTitle from './import/MainTitle.js'
44import Step1 from './import/Step1.js'
55import Step2 from './import/Step2.js'
6- import Step3 , { type Item } from './import/Step3.js'
7- import Step4 from './import/Step4.js'
6+ import Step3 , { type Item as SetupTypeItem } from './import/Step3.js'
7+ import Step4 , { type Item as CustomOptionsItem } from './import/Step4.js'
88import Step5 from './import/Step5.js'
99import { canShowStep } from './import/utils.js'
1010
1111const App = ( ) => {
1212 const [ projectName , setProjectName ] = useState < string > ( '' )
1313 const [ currentStep , setCurrentStep ] = useState ( 1 )
14- const [ setupOption , setSetupOption ] = useState < Item | undefined > ( )
14+ const [ setupType , setSetupType ] = useState < SetupTypeItem | undefined > ( )
15+ const [ customOptions , setCustomOptions ] = useState < Array < CustomOptionsItem > | undefined > ( )
1516
1617 const finishStep = ( ) => setCurrentStep ( currentStep + 1 )
17- const onSelect = ( item : Item ) => setSetupOption ( item )
18+ const onSelectSetupType = ( item : SetupTypeItem ) => setSetupType ( item )
19+ const onSelectCustomOptions = ( selectedItems : Array < CustomOptionsItem > ) =>
20+ setCustomOptions ( [ ...selectedItems ] )
1821
1922 const steps : Array < ReactNode > = [
2023 < Step1
@@ -30,19 +33,19 @@ const App = () => {
3033 /> ,
3134 < Step3
3235 onCompletion = { finishStep }
33- onSelect = { onSelect }
36+ onSelect = { onSelectSetupType }
3437 key = { 3 }
3538 /> ,
3639 < Step4
3740 onCompletion = { finishStep }
38- onSubmit = { ( ) => console . log ( ) }
39- installation = { setupOption ?. value }
41+ onSubmit = { onSelectCustomOptions }
42+ installation = { setupType ?. value }
4043 key = { 4 }
4144 /> ,
4245 < Step5
4346 onCompletion = { finishStep }
4447 projectName = { projectName }
45- installation = { setupOption ?. value }
48+ installation = { setupType ?. value }
4649 key = { 5 }
4750 /> ,
4851 ]
@@ -54,6 +57,11 @@ const App = () => {
5457 >
5558 < MainTitle />
5659 { steps . map ( ( item , index ) => canShowStep ( currentStep , index + 1 ) && item ) }
60+ { customOptions ?. map ( ( item , index ) => (
61+ < Text key = { index } >
62+ { item . label } / { item . value }
63+ </ Text >
64+ ) ) }
5765 </ Box >
5866 )
5967}
0 commit comments