create-rstack 1.7.13 → 1.7.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +20 -11
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1981,12 +1981,24 @@ function isEmptyDir(path) {
1981
1981
  const files = node_fs.readdirSync(path);
1982
1982
  return 0 === files.length || 1 === files.length && '.git' === files[0];
1983
1983
  }
1984
+ function parseToolsOption(tools) {
1985
+ if (void 0 === tools) return null;
1986
+ const toolsArr = Array.isArray(tools) ? tools : [
1987
+ tools
1988
+ ];
1989
+ return toolsArr.flatMap((tool)=>tool.split(',')).map((tool)=>tool.trim()).filter(Boolean);
1990
+ }
1984
1991
  const BUILTIN_TOOLS = [
1992
+ 'biome',
1985
1993
  'eslint',
1986
- 'prettier',
1987
- 'biome'
1994
+ 'prettier'
1988
1995
  ];
1989
- function logHelpMessage(name, templates) {
1996
+ function logHelpMessage(name, templates, extraTools) {
1997
+ const extraToolNames = extraTools?.map((tool)=>tool.value) ?? [];
1998
+ const toolsList = [
1999
+ ...BUILTIN_TOOLS,
2000
+ ...extraToolNames
2001
+ ].join(', ');
1990
2002
  src_logger.log(`
1991
2003
  Usage: create-${name} [dir] [options]
1992
2004
 
@@ -1995,7 +2007,7 @@ function logHelpMessage(name, templates) {
1995
2007
  -h, --help display help for command
1996
2008
  -d, --dir <dir> create project in specified directory
1997
2009
  -t, --template <tpl> specify the template to use
1998
- --tools <tool> select additional tools (biome, eslint, prettier)
2010
+ --tools <tool> select additional tools (${toolsList})
1999
2011
  --override override files in target directory
2000
2012
  --packageName <name> specify the package name
2001
2013
 
@@ -2005,15 +2017,12 @@ function logHelpMessage(name, templates) {
2005
2017
  `);
2006
2018
  }
2007
2019
  async function getTools({ tools, dir, template }, extraTools) {
2008
- if (tools) {
2009
- let toolsArr = Array.isArray(tools) ? tools : [
2010
- tools
2011
- ];
2012
- toolsArr = toolsArr.filter((tool)=>BUILTIN_TOOLS.includes(tool) || extraTools?.some((extraTool)=>extraTool.value === tool));
2020
+ const parsedTools = parseToolsOption(tools);
2021
+ if (null !== parsedTools) {
2022
+ const toolsArr = parsedTools.filter((tool)=>BUILTIN_TOOLS.includes(tool) || extraTools?.some((extraTool)=>extraTool.value === tool));
2013
2023
  return toolsArr;
2014
2024
  }
2015
2025
  if (dir && template) return [];
2016
- if ('' === tools) return [];
2017
2026
  const options = [
2018
2027
  {
2019
2028
  value: 'biome',
@@ -2067,7 +2076,7 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
2067
2076
  console.log('');
2068
2077
  src_logger.greet(`◆ Create ${upperFirst(name)} Project`);
2069
2078
  const argv = parseArgv(processArgv);
2070
- if (argv.help) return void logHelpMessage(name, templates);
2079
+ if (argv.help) return void logHelpMessage(name, templates, extraTools);
2071
2080
  const cwd = process.cwd();
2072
2081
  const pkgInfo = pkgFromUserAgent(process.env.npm_config_user_agent);
2073
2082
  const packageManager = pkgInfo ? pkgInfo.name : 'npm';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-rstack",
3
- "version": "1.7.13",
3
+ "version": "1.7.14",
4
4
  "description": "Create a new Rstack project",
5
5
  "repository": {
6
6
  "type": "git",