UNPKG

create-rspeedy-canary

Version:

Create Rspeedy-powered ReactLynx apps with one command

65 lines (64 loc) 2.23 kB
#!/usr/bin/env node import * as __WEBPACK_EXTERNAL_MODULE_node_module_ab9f2194__ from "node:module"; import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path"; import * as __WEBPACK_EXTERNAL_MODULE_node_url_e96de089__ from "node:url"; import * as __WEBPACK_EXTERNAL_MODULE_create_rstack_aeeb76b8__ from "create-rstack"; const src_dirname = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].dirname((0, __WEBPACK_EXTERNAL_MODULE_node_url_e96de089__.fileURLToPath)(import.meta.url)); const src_require = (0, __WEBPACK_EXTERNAL_MODULE_node_module_ab9f2194__.createRequire)(import.meta.url); const { devDependencies } = src_require('../package.json'); const composeTemplateName = ({ template, lang })=>`${template}-${lang}`; const TEMPLATES = [ { template: 'react', tools: {}, lang: 'ts' }, { template: 'react', tools: {}, lang: 'js' } ]; async function getTemplateName({ template }) { if ('string' == typeof template) { const pair = template.split('-'); const lang = pair[pair.length - 1]; if (lang && [ 'js', 'ts' ].includes(lang)) return template; return `${template}-ts`; } const language = (0, __WEBPACK_EXTERNAL_MODULE_create_rstack_aeeb76b8__.checkCancel)(await (0, __WEBPACK_EXTERNAL_MODULE_create_rstack_aeeb76b8__.select)({ message: 'Select language', options: [ { value: 'ts', label: 'TypeScript', hint: 'recommended' }, { value: 'js', label: 'JavaScript' } ] })); return composeTemplateName({ template: 'react', lang: language }); } (0, __WEBPACK_EXTERNAL_MODULE_create_rstack_aeeb76b8__.create)({ root: __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(src_dirname, '..'), name: 'rspeedy', templates: TEMPLATES.map(({ template, tools, lang })=>composeTemplateName({ template, lang, tools })), version: devDependencies, getTemplateName, mapESLintTemplate () { return null; } });