Skip to content

Commit aa2b32c

Browse files
refactor: change folder structure
1 parent f14a11a commit aa2b32c

21 files changed

Lines changed: 81 additions & 59 deletions

package.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,15 @@
55
"bin": "dist/cli.js",
66
"type": "module",
77
"engines": {
8-
"node": ">=16"
8+
"node": ">=20"
99
},
1010
"scripts": {
1111
"build": "tsc",
1212
"dev": "tsc --watch",
1313
"lint": "pnpm biome check",
1414
"lint:fix": "pnpm biome check --write"
1515
},
16-
"files": [
17-
"dist"
18-
],
16+
"files": ["dist"],
1917
"dependencies": {
2018
"figures": "^6.1.0",
2119
"ink": "^5.2.1",

source/app.tsx

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
import { Box, Text } from 'ink'
22
import React, { useState, type ReactNode } from 'react'
3-
import MainTitle from './import/MainTitle.js'
4-
import Step1 from './import/Step1.js'
5-
import Step2 from './import/Step2.js'
6-
import Step3, { type Item as SetupTypeItem } from './import/Step3.js'
7-
import Step4, { type Item as CustomOptionsItem } from './import/Step4.js'
8-
import Step5 from './import/Step5.js'
9-
import { canShowStep } from './import/utils.js'
3+
import MainTitle from './import/components/MainTitle.js'
4+
import CloneRepo from './import/components/steps/CloneRepo/CloneRepo.js'
5+
import Install from './import/components/steps/Install/Install.js'
6+
import InstallationType, {
7+
type Item as SetupTypeItem,
8+
} from './import/components/steps/InstallationType.js'
9+
import OptionalPackages, {
10+
type Item as CustomOptionsItem,
11+
} from './import/components/steps/OptionalPackages.js'
12+
import ProjectName from './import/components/steps/ProjectName.js'
13+
import { canShowStep } from './import/utils/utils.js'
1014

1115
const App = () => {
1216
const [projectName, setProjectName] = useState<string>('')
@@ -20,29 +24,29 @@ const App = () => {
2024
setCustomOptions([...selectedItems])
2125

2226
const steps: Array<ReactNode> = [
23-
<Step1
27+
<ProjectName
2428
onSubmit={setProjectName}
2529
onCompletion={finishStep}
2630
projectName={projectName}
2731
key={1}
2832
/>,
29-
<Step2
33+
<CloneRepo
3034
onCompletion={finishStep}
3135
projectName={projectName}
3236
key={2}
3337
/>,
34-
<Step3
38+
<InstallationType
3539
onCompletion={finishStep}
3640
onSelect={onSelectSetupType}
3741
key={3}
3842
/>,
39-
<Step4
43+
<OptionalPackages
4044
onCompletion={finishStep}
4145
onSubmit={onSelectCustomOptions}
4246
installation={setupType?.value}
4347
key={4}
4448
/>,
45-
<Step5
49+
<Install
4650
onCompletion={finishStep}
4751
projectName={projectName}
4852
installation={setupType?.value}
@@ -57,8 +61,8 @@ const App = () => {
5761
>
5862
<MainTitle />
5963
{steps.map((item, index) => canShowStep(currentStep, index + 1) && item)}
60-
{customOptions?.map((item, index) => (
61-
<Text key={index}>
64+
{customOptions?.map((item) => (
65+
<Text key={item.value}>
6266
{item.label} / {item.value}
6367
</Text>
6468
))}

source/import/Step2.tsx

Lines changed: 0 additions & 20 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Box, Text } from 'ink'
22
import TextInput from 'ink-text-input'
33
import React, { type FC, useMemo, useState } from 'react'
4-
import { isAnswerConfirmed } from './utils.js'
4+
import { isAnswerConfirmed } from '../utils/utils.js'
55

66
interface Props {
77
answer?: string
File renamed without changes.

source/import/Multiselect/components/Checkbox.tsx renamed to source/import/components/Multiselect/components/Checkbox.tsx

File renamed without changes.

source/import/Multiselect/components/Indicator.tsx renamed to source/import/components/Multiselect/components/Indicator.tsx

File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)