Skip to content

Commit

Permalink
refactor(create-next-app): simplify import alias validation logic (#4…
Browse files Browse the repository at this point in the history
  • Loading branch information
juliusmarminge committed Jan 25, 2023
1 parent 2981488 commit 00cbc5a
Showing 1 changed file with 12 additions and 24 deletions.
36 changes: 12 additions & 24 deletions packages/create-next-app/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -342,30 +342,18 @@ async function run(): Promise<void> {
if (ciInfo.isCI) {
program.importAlias = '@/*'
} else {
let importAlias = ''

const promptAlias = async () => {
const styledImportAlias = chalk.hex('#007acc')('import alias')
const promptResult = await prompts({
onState: onPromptState,
type: 'text',
name: 'importAlias',
message: `What ${styledImportAlias} would you like configured?`,
initial: getPrefOrDefault('importAlias'),
})
importAlias = promptResult.importAlias

if (!/.+\/\*/.test(importAlias)) {
console.error(
`${chalk.red(
'Error:'
)} invalid import alias (${importAlias}), it must follow the pattern <prefix>/*`
)
await promptAlias()
}
}
await promptAlias()

const styledImportAlias = chalk.hex('#007acc')('import alias')
const { importAlias } = await prompts({
onState: onPromptState,
type: 'text',
name: 'importAlias',
message: `What ${styledImportAlias} would you like configured?`,
initial: getPrefOrDefault('importAlias'),
validate: (value) =>
/.+\/\*/.test(value)
? true
: 'Import alias must follow the pattern <prefix>/*',
})
program.importAlias = importAlias
preferences.importAlias = importAlias
}
Expand Down

0 comments on commit 00cbc5a

Please sign in to comment.