Skip to content

Commit

Permalink
fix: rename config to _config
Browse files Browse the repository at this point in the history
  • Loading branch information
snickbit committed Jun 4, 2022
1 parent 3b4317a commit 1ff0f99
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 25 deletions.
21 changes: 16 additions & 5 deletions src/actions/add.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,24 +45,35 @@ export default async argv => cli(argv)
continue
}

const icon_results = results?.data?.search?.map(r => r.id) || []
const icon_results: IconResult[] = results?.data?.search || []

if (icon_results.length) {
let icon_selected = icon_results.find(r => r === icon)
let icon_selected: IconResult | 'None of the above' = icon_results.find(r => r.id === icon)

if (!icon_selected) {
if (icon_results.length === 1) {
icon_selected = icon_results[0]
} else {
icon_results.push('None of the above')
icon_selected = await ask(`Found ${icon_results.length} matches for ${icon}`, {type: 'select', choices: icon_results})
const choices: ChoiceOption[] = icon_results.map(r => ({
title: `${r.label}\t(${r.styles.join(', ')})`,
value: r.id
}))
choices.push('None of the above')
icon_selected = await ask(`Found ${icon_results.length} matches for ${icon}`, {
type: 'select',
choices
})
if (icon_selected === 'None of the above') {
continue
}
}
}

iconName = normalizeIconName(icon_selected.replace(/(fa[a-z]?)-/, `$1:`))
if (icon_selected) {
iconName = normalizeIconName(icon_selected.id)
if (icon_selected.styles.includes('brands')) {
iconName = iconName.replace(/fa:/, 'fab:')
}

if (!config.icons.includes(iconName)) {
config.icons.push(iconName)
Expand Down
40 changes: 20 additions & 20 deletions src/utilities/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ interface Config {
output?: string
}

let config: Config
let _config: Config

export const $out = new Out('fa-cli')

Expand All @@ -29,14 +29,14 @@ export function getNodeModulesPath() {
export const config_path = path.join(process.cwd(), 'fa.config.json')

export async function initConfig() {
if (!config) {
if (!_config) {
if (!fileExists(config_path)) {
// create with inquirer
$out.block.info('fa-cli config')

config = {} as Config
_config = {} as Config

config.version = await ask('Which FontAwesome version?', {
_config.version = await ask('Which FontAwesome version?', {
type: 'select',
choices: [{
title: 'FontAwesome Pro 5',
Expand All @@ -47,11 +47,11 @@ export async function initConfig() {
}]
})

if (!config.version) {
if (!_config.version) {
out.fatal('No FontAwesome version selected')
}

config.default = await ask('Default Style?', {
_config.default = await ask('Default Style?', {
type: 'select',
choices: [
{
Expand All @@ -73,50 +73,50 @@ export async function initConfig() {
]
})

if (!config.default) {
if (!_config.default) {
out.fatal('No default style selected')
}

if (fileExists('tsconfig.json') && await confirm('Use TypeScript?')) {
config.typescript = true
_config.typescript = true
}

config.icons = default_icons.slice()
config.aliases = {...default_icon_aliases}
_config.icons = default_icons.slice()
_config.aliases = {...default_icon_aliases}
if (fileExists('quasar.conf.js') || fileExists('quasar.config.js')) {
$out.info('Quasar Framework detected!')
config.isQuasar = true
_config.isQuasar = true
}

saveConfig(config)
saveConfig(_config)
} else {
try {
config = getFileJson(config_path)
_config = getFileJson(config_path)
} catch (e) {
$out.error(`Error parsing config file: ${e.message}`)
process.exit(1)
}
}
}

icon_prefix_types.fa = icon_prefix_types[config.default]
icon_prefix_types.fa = icon_prefix_types[_config.default]

return config
return _config
}

export function useConfig() {
if (!config) {
if (!_config) {
out.throw('No config found!')
}

icon_prefix_types.fa = icon_prefix_types[config.default]
icon_prefix_types.fa = icon_prefix_types[_config.default]

return config
return _config
}

export function saveConfig(conf) {
config = conf
return saveFileJson(config_path, config)
_config = conf
return saveFileJson(config_path, _config)
}

export function cleanIconName(icon_name: string): string {
Expand Down

0 comments on commit 1ff0f99

Please sign in to comment.