create-rspeedy-canary
Version:
Create Rspeedy-powered ReactLynx apps with one command
65 lines (64 loc) • 2.23 kB
JavaScript
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;
}
});