mirror of
https://github.com/stackblitz-labs/bolt.diy
synced 2025-06-26 18:26:38 +00:00
Merge fa83eeb624
into d0d9818964
This commit is contained in:
commit
e30643fbb5
132
cli/bolt-cli.ts
Normal file
132
cli/bolt-cli.ts
Normal file
@ -0,0 +1,132 @@
|
||||
#!/usr/bin/env node
|
||||
import { Command } from 'commander';
|
||||
import fs from 'fs-extra';
|
||||
import path from 'path';
|
||||
|
||||
const program = new Command();
|
||||
|
||||
program
|
||||
.command('make:controller <ControllerName>')
|
||||
.description('Create a new controller class')
|
||||
.action((controllerName: string) => {
|
||||
let normalizedName = controllerName.charAt(0).toUpperCase() + controllerName.slice(1);
|
||||
const controllerSuffix = 'Controller';
|
||||
|
||||
if (normalizedName.toLowerCase().endsWith(controllerSuffix.toLowerCase())) {
|
||||
normalizedName = normalizedName.substring(0, normalizedName.length - controllerSuffix.length) + controllerSuffix;
|
||||
} else {
|
||||
normalizedName += controllerSuffix;
|
||||
}
|
||||
|
||||
const controllerDir = path.resolve(process.cwd(), 'app', 'controllers');
|
||||
const controllerPath = path.resolve(controllerDir, `${normalizedName}.ts`);
|
||||
|
||||
try {
|
||||
fs.ensureDirSync(controllerDir);
|
||||
|
||||
if (fs.existsSync(controllerPath)) {
|
||||
console.error(`Error: Controller ${normalizedName} already exists at ${controllerPath}`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const boilerplate = `// app/controllers/${normalizedName}.ts
|
||||
|
||||
// TODO: Define or import Request and Response types suitable for the project if needed.
|
||||
|
||||
export class ${normalizedName} {
|
||||
constructor() {
|
||||
console.log('${normalizedName} initialized');
|
||||
}
|
||||
|
||||
/**
|
||||
* Example index method.
|
||||
*/
|
||||
public async index(): Promise<void> {
|
||||
console.log('Executing ${normalizedName} index method');
|
||||
// Your logic here
|
||||
// Example: return some data or render a view
|
||||
}
|
||||
|
||||
/**
|
||||
* Example show method.
|
||||
* @param id The ID of the resource to show.
|
||||
*/
|
||||
public async show(id: string): Promise<void> {
|
||||
console.log(\`Executing ${normalizedName} show method for ID: \${id}\`);
|
||||
// Your logic here
|
||||
}
|
||||
}
|
||||
`;
|
||||
fs.writeFileSync(controllerPath, boilerplate);
|
||||
console.log(`Controller ${normalizedName} created successfully at ${controllerPath}`);
|
||||
|
||||
} catch (error) {
|
||||
if (error instanceof Error) {
|
||||
console.error(`Failed to create controller: ${error.message}`);
|
||||
} else {
|
||||
console.error('Failed to create controller (unknown error type):', error);
|
||||
}
|
||||
process.exit(1);
|
||||
}
|
||||
});
|
||||
|
||||
program
|
||||
.command('make:model <ModelName>')
|
||||
.description('Create a new model class')
|
||||
.action((modelName: string) => {
|
||||
let normalizedName = modelName.charAt(0).toUpperCase() + modelName.slice(1);
|
||||
// No strict suffix like "Model" is enforced, just PascalCase.
|
||||
|
||||
const modelDir = path.resolve(process.cwd(), 'app', 'models');
|
||||
const modelPath = path.resolve(modelDir, `${normalizedName}.ts`);
|
||||
|
||||
try {
|
||||
fs.ensureDirSync(modelDir);
|
||||
|
||||
if (fs.existsSync(modelPath)) {
|
||||
console.error(`Error: Model ${normalizedName} already exists at ${modelPath}`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const boilerplate = `// app/models/${normalizedName}.ts
|
||||
|
||||
// TODO: Define database interaction logic or ORM setup if applicable.
|
||||
|
||||
export class ${normalizedName} {
|
||||
public id: string | number; // Example property
|
||||
|
||||
constructor(id: string | number) {
|
||||
this.id = id;
|
||||
console.log('${normalizedName} initialized with id:', id);
|
||||
}
|
||||
|
||||
public async save(): Promise<void> {
|
||||
console.log('Saving ${normalizedName} instance with id:', this.id);
|
||||
// Actual save logic here
|
||||
}
|
||||
|
||||
public static async findById(id: string | number): Promise<${normalizedName} | null> {
|
||||
console.log('Finding ${normalizedName} instance with id:', id);
|
||||
// Actual find logic here
|
||||
return null;
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
fs.writeFileSync(modelPath, boilerplate);
|
||||
console.log(`Model ${normalizedName} created successfully at ${modelPath}`);
|
||||
|
||||
} catch (error) {
|
||||
if (error instanceof Error) {
|
||||
console.error(`Failed to create model: ${error.message}`);
|
||||
} else {
|
||||
console.error('Failed to create model (unknown error type):', error);
|
||||
}
|
||||
process.exit(1);
|
||||
}
|
||||
});
|
||||
|
||||
program.parse(process.argv);
|
||||
|
||||
// Commander handles help output by default if no command/args are given,
|
||||
// or if an unknown command is used. So, no explicit help call needed here.
|
126
cli/tests/cli.test.ts
Normal file
126
cli/tests/cli.test.ts
Normal file
@ -0,0 +1,126 @@
|
||||
import { type ExecSyncOptionsWithStringEncoding, execSync } from 'child_process'; // Added 'type' keyword
|
||||
import fs from 'fs-extra';
|
||||
import path from 'path';
|
||||
import assert from 'assert';
|
||||
import { rimrafSync } from 'rimraf'; // Use rimrafSync
|
||||
|
||||
const cliCommand = 'pnpm run bolt --'; // Base command to run the CLI
|
||||
const controllersDir = path.join(process.cwd(), 'app', 'controllers');
|
||||
const modelsDir = path.join(process.cwd(), 'app', 'models');
|
||||
|
||||
const execOptions: ExecSyncOptionsWithStringEncoding = { encoding: 'utf-8', stdio: 'pipe' };
|
||||
|
||||
function runCli(args: string): { stdout: string; stderr: string; error: any } {
|
||||
try {
|
||||
const stdout = execSync(`${cliCommand} ${args}`, execOptions);
|
||||
return { stdout, stderr: '', error: null };
|
||||
} catch (e: any) {
|
||||
// If execSync throws, 'e' is the error object.
|
||||
// stdout and stderr are properties on it if the command produced output before failing.
|
||||
return {
|
||||
stdout: e.stdout?.toString() || '',
|
||||
stderr: e.stderr?.toString() || '',
|
||||
error: e
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
function cleanup() {
|
||||
console.log('Cleaning up test directories...');
|
||||
if (fs.existsSync(controllersDir)) {
|
||||
rimrafSync(controllersDir);
|
||||
}
|
||||
if (fs.existsSync(modelsDir)) {
|
||||
rimrafSync(modelsDir);
|
||||
}
|
||||
}
|
||||
|
||||
function testMakeController() {
|
||||
console.log('Running make:controller tests...');
|
||||
let result;
|
||||
|
||||
// Test 1: Successful creation
|
||||
console.log(' Test 1: Successful controller creation');
|
||||
result = runCli('make:controller TestUserController');
|
||||
assert.strictEqual(result.error, null, `make:controller TestUserController failed: STDERR: ${result.stderr} STDOUT: ${result.stdout}`);
|
||||
const controllerPath = path.join(controllersDir, 'TestUserController.ts');
|
||||
assert(fs.existsSync(controllerPath), `TestUserController.ts should be created. STDERR: ${result.stderr}`);
|
||||
const content = fs.readFileSync(controllerPath, 'utf-8');
|
||||
assert(content.includes('export class TestUserController'), 'File content is incorrect');
|
||||
console.log(' Test 1 PASSED');
|
||||
|
||||
// Test 2: Already exists
|
||||
console.log(' Test 2: Controller already exists');
|
||||
result = runCli('make:controller TestUserController');
|
||||
assert.notStrictEqual(result.error, null, 'make:controller TestUserController should fail if controller exists');
|
||||
assert(result.stderr.includes('already exists'), `Error message for existing controller is incorrect. STDERR: ${result.stderr}`);
|
||||
console.log(' Test 2 PASSED');
|
||||
|
||||
// Test 3: Naming convention (lowercase input)
|
||||
console.log(' Test 3: Controller naming convention');
|
||||
result = runCli('make:controller lowercaseuser');
|
||||
assert.strictEqual(result.error, null, `make:controller lowercaseuser failed: ${result.stderr}`);
|
||||
const normalizedControllerPath = path.join(controllersDir, 'LowercaseuserController.ts');
|
||||
assert(fs.existsSync(normalizedControllerPath), `LowercaseuserController.ts should be created. Actual path: ${normalizedControllerPath}`);
|
||||
console.log(' Test 3 PASSED');
|
||||
|
||||
// Test 4: Missing argument
|
||||
console.log(' Test 4: Missing controller name');
|
||||
result = runCli('make:controller');
|
||||
assert.notStrictEqual(result.error, null, 'make:controller should fail without a name');
|
||||
assert(result.stderr.includes("error: missing required argument 'ControllerName'"), `Error message for missing argument is incorrect. STDERR: ${result.stderr}`);
|
||||
console.log(' Test 4 PASSED');
|
||||
}
|
||||
|
||||
function testMakeModel() {
|
||||
console.log('Running make:model tests...');
|
||||
let result;
|
||||
|
||||
// Test 1: Successful creation
|
||||
console.log(' Test 1: Successful model creation');
|
||||
result = runCli('make:model TestModel');
|
||||
assert.strictEqual(result.error, null, `make:model TestModel failed: ${result.stderr}`);
|
||||
const modelPath = path.join(modelsDir, 'TestModel.ts');
|
||||
assert(fs.existsSync(modelPath), 'TestModel.ts should be created');
|
||||
const content = fs.readFileSync(modelPath, 'utf-8');
|
||||
assert(content.includes('export class TestModel'), 'File content is incorrect');
|
||||
console.log(' Test 1 PASSED');
|
||||
|
||||
// Test 2: Already exists
|
||||
console.log(' Test 2: Model already exists');
|
||||
result = runCli('make:model TestModel');
|
||||
assert.notStrictEqual(result.error, null, 'make:model TestModel should fail if model exists');
|
||||
assert(result.stderr.includes('already exists'), `Error message for existing model is incorrect. STDERR: ${result.stderr}`);
|
||||
console.log(' Test 2 PASSED');
|
||||
|
||||
// Test 3: Naming convention (lowercase input)
|
||||
console.log(' Test 3: Model naming convention');
|
||||
result = runCli('make:model lowermodule');
|
||||
assert.strictEqual(result.error, null, `make:model lowermodule failed: ${result.stderr}`);
|
||||
const normalizedModelPath = path.join(modelsDir, 'Lowermodule.ts');
|
||||
assert(fs.existsSync(normalizedModelPath), `Lowermodule.ts should be created. Actual path: ${normalizedModelPath}`);
|
||||
console.log(' Test 3 PASSED');
|
||||
|
||||
// Test 4: Missing argument
|
||||
console.log(' Test 4: Missing model name');
|
||||
result = runCli('make:model');
|
||||
assert.notStrictEqual(result.error, null, 'make:model should fail without a name');
|
||||
assert(result.stderr.includes("error: missing required argument 'ModelName'"), `Error message for missing argument is incorrect. STDERR: ${result.stderr}`);
|
||||
console.log(' Test 4 PASSED');
|
||||
}
|
||||
|
||||
// Main test execution
|
||||
try {
|
||||
cleanup();
|
||||
testMakeController();
|
||||
cleanup();
|
||||
testMakeModel();
|
||||
console.log('\nAll CLI tests PASSED!');
|
||||
} catch (e: any) {
|
||||
console.error('\nCLI tests FAILED:', e.message); // Log specific error message
|
||||
if (e.stdout) console.error('STDOUT:', e.stdout.toString());
|
||||
if (e.stderr) console.error('STDERR:', e.stderr.toString());
|
||||
process.exit(1);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
@ -14,8 +14,10 @@
|
||||
"deploy": "npm run build && wrangler pages deploy",
|
||||
"build": "remix vite:build",
|
||||
"dev": "node pre-start.cjs && remix vite:dev",
|
||||
"bolt": "TS_NODE_PROJECT=tsconfig.cli.json node --loader ts-node/esm --experimental-specifier-resolution=node cli/bolt-cli.ts",
|
||||
"test": "vitest --run",
|
||||
"test:watch": "vitest",
|
||||
"test:cli": "TS_NODE_PROJECT=tsconfig.cli.test.json node --loader ts-node/esm --experimental-specifier-resolution=node cli/tests/cli.test.ts",
|
||||
"lint": "eslint --cache --cache-location ./node_modules/.cache/eslint app",
|
||||
"lint:fix": "npm run lint -- --fix && prettier app --write",
|
||||
"start:windows": "wrangler pages dev ./build/client",
|
||||
@ -106,6 +108,7 @@
|
||||
"chart.js": "^4.4.7",
|
||||
"class-variance-authority": "^0.7.0",
|
||||
"clsx": "^2.1.0",
|
||||
"commander": "^14.0.0",
|
||||
"date-fns": "^3.6.0",
|
||||
"diff": "^5.2.0",
|
||||
"dotenv": "^16.4.7",
|
||||
@ -114,6 +117,7 @@
|
||||
"electron-updater": "^6.3.9",
|
||||
"file-saver": "^2.0.5",
|
||||
"framer-motion": "^11.12.0",
|
||||
"fs-extra": "^11.3.0",
|
||||
"ignore": "^6.0.2",
|
||||
"isbot": "^4.4.0",
|
||||
"isomorphic-git": "^1.27.2",
|
||||
@ -168,11 +172,14 @@
|
||||
"@types/dom-speech-recognition": "^0.0.4",
|
||||
"@types/electron": "^1.6.12",
|
||||
"@types/file-saver": "^2.0.7",
|
||||
"@types/fs-extra": "^11.0.4",
|
||||
"@types/js-cookie": "^3.0.6",
|
||||
"@types/node": "^22.15.30",
|
||||
"@types/path-browserify": "^1.0.3",
|
||||
"@types/react": "^18.3.12",
|
||||
"@types/react-dom": "^18.3.1",
|
||||
"@types/react-window": "^1.8.8",
|
||||
"@types/rimraf": "^4.0.5",
|
||||
"@vitejs/plugin-react": "^4.3.4",
|
||||
"concurrently": "^8.2.2",
|
||||
"cross-env": "^7.0.3",
|
||||
@ -191,6 +198,7 @@
|
||||
"rimraf": "^4.4.1",
|
||||
"sass-embedded": "^1.81.0",
|
||||
"stream-browserify": "^3.0.0",
|
||||
"ts-node": "^10.9.2",
|
||||
"typescript": "^5.7.2",
|
||||
"unified": "^11.0.5",
|
||||
"unocss": "^0.61.9",
|
||||
|
259
pnpm-lock.yaml
259
pnpm-lock.yaml
@ -197,6 +197,9 @@ importers:
|
||||
clsx:
|
||||
specifier: ^2.1.0
|
||||
version: 2.1.1
|
||||
commander:
|
||||
specifier: ^14.0.0
|
||||
version: 14.0.0
|
||||
date-fns:
|
||||
specifier: ^3.6.0
|
||||
version: 3.6.0
|
||||
@ -221,6 +224,9 @@ importers:
|
||||
framer-motion:
|
||||
specifier: ^11.12.0
|
||||
version: 11.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
fs-extra:
|
||||
specifier: ^11.3.0
|
||||
version: 11.3.0
|
||||
ignore:
|
||||
specifier: ^6.0.2
|
||||
version: 6.0.2
|
||||
@ -271,7 +277,7 @@ importers:
|
||||
version: 5.3.0(chart.js@4.4.8)(react@18.3.1)
|
||||
react-dnd:
|
||||
specifier: ^16.0.1
|
||||
version: 16.0.1(@types/hoist-non-react-statics@3.3.6)(@types/node@22.13.14)(@types/react@18.3.20)(react@18.3.1)
|
||||
version: 16.0.1(@types/hoist-non-react-statics@3.3.6)(@types/node@22.15.30)(@types/react@18.3.20)(react@18.3.1)
|
||||
react-dnd-html5-backend:
|
||||
specifier: ^16.0.1
|
||||
version: 16.0.1
|
||||
@ -331,7 +337,7 @@ importers:
|
||||
version: 10.0.4(react@18.3.1)
|
||||
vite-plugin-node-polyfills:
|
||||
specifier: ^0.22.0
|
||||
version: 0.22.0(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
version: 0.22.0(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
zod:
|
||||
specifier: ^3.24.1
|
||||
version: 3.24.2
|
||||
@ -356,7 +362,7 @@ importers:
|
||||
version: 2.0.0
|
||||
'@remix-run/dev':
|
||||
specifier: ^2.15.2
|
||||
version: 2.16.3(@remix-run/react@2.16.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2))(@remix-run/serve@2.16.3(typescript@5.8.2))(@types/node@22.13.14)(sass-embedded@1.86.0)(typescript@5.8.2)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))(wrangler@4.6.0(@cloudflare/workers-types@4.20250327.0))
|
||||
version: 2.16.3(@remix-run/react@2.16.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2))(@remix-run/serve@2.16.3(typescript@5.8.2))(@types/node@22.15.30)(sass-embedded@1.86.0)(ts-node@10.9.2(@types/node@22.15.30)(typescript@5.8.2))(typescript@5.8.2)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))(wrangler@4.6.0(@cloudflare/workers-types@4.20250327.0))
|
||||
'@remix-run/serve':
|
||||
specifier: ^2.15.2
|
||||
version: 2.16.3(typescript@5.8.2)
|
||||
@ -378,9 +384,15 @@ importers:
|
||||
'@types/file-saver':
|
||||
specifier: ^2.0.7
|
||||
version: 2.0.7
|
||||
'@types/fs-extra':
|
||||
specifier: ^11.0.4
|
||||
version: 11.0.4
|
||||
'@types/js-cookie':
|
||||
specifier: ^3.0.6
|
||||
version: 3.0.6
|
||||
'@types/node':
|
||||
specifier: ^22.15.30
|
||||
version: 22.15.30
|
||||
'@types/path-browserify':
|
||||
specifier: ^1.0.3
|
||||
version: 1.0.3
|
||||
@ -393,9 +405,12 @@ importers:
|
||||
'@types/react-window':
|
||||
specifier: ^1.8.8
|
||||
version: 1.8.8
|
||||
'@types/rimraf':
|
||||
specifier: ^4.0.5
|
||||
version: 4.0.5
|
||||
'@vitejs/plugin-react':
|
||||
specifier: ^4.3.4
|
||||
version: 4.3.4(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
version: 4.3.4(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
concurrently:
|
||||
specifier: ^8.2.2
|
||||
version: 8.2.2
|
||||
@ -447,6 +462,9 @@ importers:
|
||||
stream-browserify:
|
||||
specifier: ^3.0.0
|
||||
version: 3.0.0
|
||||
ts-node:
|
||||
specifier: ^10.9.2
|
||||
version: 10.9.2(@types/node@22.15.30)(typescript@5.8.2)
|
||||
typescript:
|
||||
specifier: ^5.7.2
|
||||
version: 5.8.2
|
||||
@ -455,22 +473,22 @@ importers:
|
||||
version: 11.0.5
|
||||
unocss:
|
||||
specifier: ^0.61.9
|
||||
version: 0.61.9(postcss@8.5.3)(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
version: 0.61.9(postcss@8.5.3)(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
vite:
|
||||
specifier: ^5.4.11
|
||||
version: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
version: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
vite-plugin-copy:
|
||||
specifier: ^0.1.6
|
||||
version: 0.1.6
|
||||
vite-plugin-optimize-css-modules:
|
||||
specifier: ^1.1.0
|
||||
version: 1.2.0(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
version: 1.2.0(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
vite-tsconfig-paths:
|
||||
specifier: ^4.3.2
|
||||
version: 4.3.2(typescript@5.8.2)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
version: 4.3.2(typescript@5.8.2)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
vitest:
|
||||
specifier: ^2.1.7
|
||||
version: 2.1.9(@types/node@22.13.14)(jsdom@26.0.0)(sass-embedded@1.86.0)
|
||||
version: 2.1.9(@types/node@22.15.30)(jsdom@26.0.0)(sass-embedded@1.86.0)
|
||||
wrangler:
|
||||
specifier: ^4.5.1
|
||||
version: 4.6.0(@cloudflare/workers-types@4.20250327.0)
|
||||
@ -3181,6 +3199,18 @@ packages:
|
||||
resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
|
||||
engines: {node: '>= 10'}
|
||||
|
||||
'@tsconfig/node10@1.0.11':
|
||||
resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==}
|
||||
|
||||
'@tsconfig/node12@1.0.11':
|
||||
resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==}
|
||||
|
||||
'@tsconfig/node14@1.0.3':
|
||||
resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
|
||||
|
||||
'@tsconfig/node16@1.0.4':
|
||||
resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
|
||||
|
||||
'@types/acorn@4.0.6':
|
||||
resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
|
||||
|
||||
@ -3230,6 +3260,9 @@ packages:
|
||||
'@types/file-saver@2.0.7':
|
||||
resolution: {integrity: sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==}
|
||||
|
||||
'@types/fs-extra@11.0.4':
|
||||
resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
|
||||
|
||||
'@types/fs-extra@9.0.13':
|
||||
resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
|
||||
|
||||
@ -3251,6 +3284,9 @@ packages:
|
||||
'@types/json-schema@7.0.15':
|
||||
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
|
||||
|
||||
'@types/jsonfile@6.1.4':
|
||||
resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
|
||||
|
||||
'@types/keyv@3.1.4':
|
||||
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
|
||||
|
||||
@ -3269,8 +3305,8 @@ packages:
|
||||
'@types/node@20.17.28':
|
||||
resolution: {integrity: sha512-DHlH/fNL6Mho38jTy7/JT7sn2wnXI+wULR6PV4gy4VHLVvnrV/d3pHAMQHhc4gjdLmK2ZiPoMxzp6B3yRajLSQ==}
|
||||
|
||||
'@types/node@22.13.14':
|
||||
resolution: {integrity: sha512-Zs/Ollc1SJ8nKUAgc7ivOEdIBM8JAKgrqqUYi2J997JuKO7/tpQC+WCetQ1sypiKCQWHdvdg9wBNpUPEWZae7w==}
|
||||
'@types/node@22.15.30':
|
||||
resolution: {integrity: sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==}
|
||||
|
||||
'@types/path-browserify@1.0.3':
|
||||
resolution: {integrity: sha512-ZmHivEbNCBtAfcrFeBCiTjdIc2dey0l7oCGNGpSuRTy8jP6UVND7oUowlvDujBy8r2Hoa8bfFUOCiPWfmtkfxw==}
|
||||
@ -3304,6 +3340,10 @@ packages:
|
||||
'@types/responselike@1.0.3':
|
||||
resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==}
|
||||
|
||||
'@types/rimraf@4.0.5':
|
||||
resolution: {integrity: sha512-DTCZoIQotB2SUJnYgrEx43cQIUYOlNZz0AZPbKU4PSLYTUdML5Gox0++z4F9kQocxStrCmRNhi4x5x/UlwtKUA==}
|
||||
deprecated: This is a stub types definition. rimraf provides its own type definitions, so you do not need this installed.
|
||||
|
||||
'@types/unist@2.0.11':
|
||||
resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==}
|
||||
|
||||
@ -3669,6 +3709,9 @@ packages:
|
||||
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
|
||||
deprecated: This package is no longer supported.
|
||||
|
||||
arg@4.1.3:
|
||||
resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
|
||||
|
||||
arg@5.0.2:
|
||||
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
|
||||
|
||||
@ -4060,6 +4103,10 @@ packages:
|
||||
comma-separated-tokens@2.0.3:
|
||||
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
|
||||
|
||||
commander@14.0.0:
|
||||
resolution: {integrity: sha512-2uM9rYjPvyq39NwLRqaiLtWHyDC1FvryJDa2ATTVims5YAS4PupsEQsDvP14FqhFr0P49CYDugi59xaxJlTXRA==}
|
||||
engines: {node: '>=20'}
|
||||
|
||||
commander@5.1.0:
|
||||
resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==}
|
||||
engines: {node: '>= 6'}
|
||||
@ -4363,6 +4410,10 @@ packages:
|
||||
diff3@0.0.3:
|
||||
resolution: {integrity: sha512-iSq8ngPOt0K53A6eVr4d5Kn6GNrM2nQZtC740pzIriHtn4pOQ2lyzEXQMBeVcWERN0ye7fhBsk9PbLLQOnUx/g==}
|
||||
|
||||
diff@4.0.2:
|
||||
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
|
||||
engines: {node: '>=0.3.1'}
|
||||
|
||||
diff@5.2.0:
|
||||
resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
|
||||
engines: {node: '>=0.3.1'}
|
||||
@ -5605,6 +5656,9 @@ packages:
|
||||
magic-string@0.30.17:
|
||||
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
|
||||
|
||||
make-error@1.3.6:
|
||||
resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
|
||||
|
||||
make-fetch-happen@10.2.1:
|
||||
resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==}
|
||||
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
|
||||
@ -7552,6 +7606,20 @@ packages:
|
||||
peerDependencies:
|
||||
typescript: '>=4.8.4'
|
||||
|
||||
ts-node@10.9.2:
|
||||
resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@swc/core': '>=1.2.50'
|
||||
'@swc/wasm': '>=1.2.50'
|
||||
'@types/node': '*'
|
||||
typescript: '>=2.7'
|
||||
peerDependenciesMeta:
|
||||
'@swc/core':
|
||||
optional: true
|
||||
'@swc/wasm':
|
||||
optional: true
|
||||
|
||||
tsconfck@3.1.5:
|
||||
resolution: {integrity: sha512-CLDfGgUp7XPswWnezWwsCRxNmgQjhYq3VXHM0/XIRxhVrKw0M1if9agzryh1QS3nxjCROvV+xWxoJO1YctzzWg==}
|
||||
engines: {node: ^18 || >=20}
|
||||
@ -7621,8 +7689,8 @@ packages:
|
||||
undici-types@6.19.8:
|
||||
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
|
||||
|
||||
undici-types@6.20.0:
|
||||
resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
|
||||
undici-types@6.21.0:
|
||||
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
|
||||
|
||||
undici@5.29.0:
|
||||
resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==}
|
||||
@ -7797,6 +7865,9 @@ packages:
|
||||
engines: {node: '>=8'}
|
||||
hasBin: true
|
||||
|
||||
v8-compile-cache-lib@3.0.1:
|
||||
resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
|
||||
|
||||
valibot@0.41.0:
|
||||
resolution: {integrity: sha512-igDBb8CTYr8YTQlOKgaN9nSS0Be7z+WRuaeYqGf3Cjz3aKmSnqEmYnkfVjzIuumGqfHpa3fLIvMEAfhrpqN8ng==}
|
||||
peerDependencies:
|
||||
@ -8106,6 +8177,10 @@ packages:
|
||||
yauzl@2.10.0:
|
||||
resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==}
|
||||
|
||||
yn@3.1.1:
|
||||
resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
yocto-queue@0.1.0:
|
||||
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
||||
engines: {node: '>=10'}
|
||||
@ -10502,7 +10577,7 @@ snapshots:
|
||||
optionalDependencies:
|
||||
typescript: 5.8.2
|
||||
|
||||
'@remix-run/dev@2.16.3(@remix-run/react@2.16.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2))(@remix-run/serve@2.16.3(typescript@5.8.2))(@types/node@22.13.14)(sass-embedded@1.86.0)(typescript@5.8.2)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))(wrangler@4.6.0(@cloudflare/workers-types@4.20250327.0))':
|
||||
'@remix-run/dev@2.16.3(@remix-run/react@2.16.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2))(@remix-run/serve@2.16.3(typescript@5.8.2))(@types/node@22.15.30)(sass-embedded@1.86.0)(ts-node@10.9.2(@types/node@22.15.30)(typescript@5.8.2))(typescript@5.8.2)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))(wrangler@4.6.0(@cloudflare/workers-types@4.20250327.0))':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
'@babel/generator': 7.27.0
|
||||
@ -10519,7 +10594,7 @@ snapshots:
|
||||
'@remix-run/router': 1.23.0
|
||||
'@remix-run/server-runtime': 2.16.3(typescript@5.8.2)
|
||||
'@types/mdx': 2.0.13
|
||||
'@vanilla-extract/integration': 6.5.0(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
'@vanilla-extract/integration': 6.5.0(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
arg: 5.0.2
|
||||
cacache: 17.1.4
|
||||
chalk: 4.1.2
|
||||
@ -10547,7 +10622,7 @@ snapshots:
|
||||
pidtree: 0.6.0
|
||||
postcss: 8.5.3
|
||||
postcss-discard-duplicates: 5.1.0(postcss@8.5.3)
|
||||
postcss-load-config: 4.0.2(postcss@8.5.3)
|
||||
postcss-load-config: 4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@22.15.30)(typescript@5.8.2))
|
||||
postcss-modules: 6.0.1(postcss@8.5.3)
|
||||
prettier: 2.8.8
|
||||
pretty-ms: 7.0.1
|
||||
@ -10559,12 +10634,12 @@ snapshots:
|
||||
tar-fs: 2.1.2
|
||||
tsconfig-paths: 4.2.0
|
||||
valibot: 0.41.0(typescript@5.8.2)
|
||||
vite-node: 3.0.0-beta.2(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite-node: 3.0.0-beta.2(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
ws: 7.5.10
|
||||
optionalDependencies:
|
||||
'@remix-run/serve': 2.16.3(typescript@5.8.2)
|
||||
typescript: 5.8.2
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
wrangler: 4.6.0(@cloudflare/workers-types@4.20250327.0)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
@ -11138,6 +11213,14 @@ snapshots:
|
||||
|
||||
'@tootallnate/once@2.0.0': {}
|
||||
|
||||
'@tsconfig/node10@1.0.11': {}
|
||||
|
||||
'@tsconfig/node12@1.0.11': {}
|
||||
|
||||
'@tsconfig/node14@1.0.3': {}
|
||||
|
||||
'@tsconfig/node16@1.0.4': {}
|
||||
|
||||
'@types/acorn@4.0.6':
|
||||
dependencies:
|
||||
'@types/estree': 1.0.7
|
||||
@ -11169,7 +11252,7 @@ snapshots:
|
||||
dependencies:
|
||||
'@types/http-cache-semantics': 4.0.4
|
||||
'@types/keyv': 3.1.4
|
||||
'@types/node': 20.17.28
|
||||
'@types/node': 22.15.30
|
||||
'@types/responselike': 1.0.3
|
||||
|
||||
'@types/cookie@0.6.0': {}
|
||||
@ -11198,9 +11281,14 @@ snapshots:
|
||||
|
||||
'@types/file-saver@2.0.7': {}
|
||||
|
||||
'@types/fs-extra@11.0.4':
|
||||
dependencies:
|
||||
'@types/jsonfile': 6.1.4
|
||||
'@types/node': 22.15.30
|
||||
|
||||
'@types/fs-extra@9.0.13':
|
||||
dependencies:
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
|
||||
'@types/hast@2.3.10':
|
||||
dependencies:
|
||||
@ -11221,9 +11309,13 @@ snapshots:
|
||||
|
||||
'@types/json-schema@7.0.15': {}
|
||||
|
||||
'@types/jsonfile@6.1.4':
|
||||
dependencies:
|
||||
'@types/node': 22.15.30
|
||||
|
||||
'@types/keyv@3.1.4':
|
||||
dependencies:
|
||||
'@types/node': 20.17.28
|
||||
'@types/node': 22.15.30
|
||||
|
||||
'@types/mdast@3.0.15':
|
||||
dependencies:
|
||||
@ -11241,15 +11333,15 @@ snapshots:
|
||||
dependencies:
|
||||
undici-types: 6.19.8
|
||||
|
||||
'@types/node@22.13.14':
|
||||
'@types/node@22.15.30':
|
||||
dependencies:
|
||||
undici-types: 6.20.0
|
||||
undici-types: 6.21.0
|
||||
|
||||
'@types/path-browserify@1.0.3': {}
|
||||
|
||||
'@types/plist@3.0.5':
|
||||
dependencies:
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
xmlbuilder: 15.1.1
|
||||
optional: true
|
||||
|
||||
@ -11284,7 +11376,11 @@ snapshots:
|
||||
|
||||
'@types/responselike@1.0.3':
|
||||
dependencies:
|
||||
'@types/node': 20.17.28
|
||||
'@types/node': 22.15.30
|
||||
|
||||
'@types/rimraf@4.0.5':
|
||||
dependencies:
|
||||
rimraf: 4.4.1
|
||||
|
||||
'@types/unist@2.0.11': {}
|
||||
|
||||
@ -11297,7 +11393,7 @@ snapshots:
|
||||
|
||||
'@types/yauzl@2.10.3':
|
||||
dependencies:
|
||||
'@types/node': 20.17.28
|
||||
'@types/node': 22.15.30
|
||||
optional: true
|
||||
|
||||
'@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@1.21.7))(typescript@5.8.2))(eslint@9.23.0(jiti@1.21.7))(typescript@5.8.2)':
|
||||
@ -11393,13 +11489,13 @@ snapshots:
|
||||
|
||||
'@ungap/structured-clone@1.3.0': {}
|
||||
|
||||
'@unocss/astro@0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))':
|
||||
'@unocss/astro@0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))':
|
||||
dependencies:
|
||||
'@unocss/core': 0.61.9
|
||||
'@unocss/reset': 0.61.9
|
||||
'@unocss/vite': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
'@unocss/vite': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
optionalDependencies:
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- rollup
|
||||
- supports-color
|
||||
@ -11536,7 +11632,7 @@ snapshots:
|
||||
dependencies:
|
||||
'@unocss/core': 0.61.9
|
||||
|
||||
'@unocss/vite@0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))':
|
||||
'@unocss/vite@0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))':
|
||||
dependencies:
|
||||
'@ampproject/remapping': 2.3.0
|
||||
'@rollup/pluginutils': 5.1.4(rollup@4.38.0)
|
||||
@ -11548,7 +11644,7 @@ snapshots:
|
||||
chokidar: 3.6.0
|
||||
fast-glob: 3.3.3
|
||||
magic-string: 0.30.17
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- rollup
|
||||
- supports-color
|
||||
@ -11576,7 +11672,7 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- babel-plugin-macros
|
||||
|
||||
'@vanilla-extract/integration@6.5.0(@types/node@22.13.14)(sass-embedded@1.86.0)':
|
||||
'@vanilla-extract/integration@6.5.0(@types/node@22.15.30)(sass-embedded@1.86.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10)
|
||||
@ -11589,8 +11685,8 @@ snapshots:
|
||||
lodash: 4.17.21
|
||||
mlly: 1.7.4
|
||||
outdent: 0.8.0
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite-node: 1.6.1(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
vite-node: 1.6.1(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
@ -11605,14 +11701,14 @@ snapshots:
|
||||
|
||||
'@vanilla-extract/private@1.0.6': {}
|
||||
|
||||
'@vitejs/plugin-react@4.3.4(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))':
|
||||
'@vitejs/plugin-react@4.3.4(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.10
|
||||
'@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.10)
|
||||
'@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.10)
|
||||
'@types/babel__core': 7.20.5
|
||||
react-refresh: 0.14.2
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
@ -11623,13 +11719,13 @@ snapshots:
|
||||
chai: 5.2.0
|
||||
tinyrainbow: 1.2.0
|
||||
|
||||
'@vitest/mocker@2.1.9(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))':
|
||||
'@vitest/mocker@2.1.9(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))':
|
||||
dependencies:
|
||||
'@vitest/spy': 2.1.9
|
||||
estree-walker: 3.0.3
|
||||
magic-string: 0.30.17
|
||||
optionalDependencies:
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
|
||||
'@vitest/pretty-format@2.1.9':
|
||||
dependencies:
|
||||
@ -11849,6 +11945,8 @@ snapshots:
|
||||
delegates: 1.0.0
|
||||
readable-stream: 3.6.2
|
||||
|
||||
arg@4.1.3: {}
|
||||
|
||||
arg@5.0.2: {}
|
||||
|
||||
argparse@2.0.1: {}
|
||||
@ -12319,6 +12417,8 @@ snapshots:
|
||||
|
||||
comma-separated-tokens@2.0.3: {}
|
||||
|
||||
commander@14.0.0: {}
|
||||
|
||||
commander@5.1.0: {}
|
||||
|
||||
common-tags@1.8.2: {}
|
||||
@ -12608,6 +12708,8 @@ snapshots:
|
||||
|
||||
diff3@0.0.3: {}
|
||||
|
||||
diff@4.0.2: {}
|
||||
|
||||
diff@5.2.0: {}
|
||||
|
||||
diffie-hellman@5.0.3:
|
||||
@ -13145,7 +13247,7 @@ snapshots:
|
||||
|
||||
eval@0.1.8:
|
||||
dependencies:
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
require-like: 0.1.2
|
||||
|
||||
event-target-shim@5.0.1: {}
|
||||
@ -14191,6 +14293,8 @@ snapshots:
|
||||
dependencies:
|
||||
'@jridgewell/sourcemap-codec': 1.5.0
|
||||
|
||||
make-error@1.3.6: {}
|
||||
|
||||
make-fetch-happen@10.2.1:
|
||||
dependencies:
|
||||
agentkeepalive: 4.6.0
|
||||
@ -15441,12 +15545,13 @@ snapshots:
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-load-config@4.0.2(postcss@8.5.3):
|
||||
postcss-load-config@4.0.2(postcss@8.5.3)(ts-node@10.9.2(@types/node@22.15.30)(typescript@5.8.2)):
|
||||
dependencies:
|
||||
lilconfig: 3.1.3
|
||||
yaml: 2.7.0
|
||||
optionalDependencies:
|
||||
postcss: 8.5.3
|
||||
ts-node: 10.9.2(@types/node@22.15.30)(typescript@5.8.2)
|
||||
|
||||
postcss-modules-extract-imports@3.1.0(postcss@8.5.3):
|
||||
dependencies:
|
||||
@ -15641,7 +15746,7 @@ snapshots:
|
||||
dependencies:
|
||||
dnd-core: 16.0.1
|
||||
|
||||
react-dnd@16.0.1(@types/hoist-non-react-statics@3.3.6)(@types/node@22.13.14)(@types/react@18.3.20)(react@18.3.1):
|
||||
react-dnd@16.0.1(@types/hoist-non-react-statics@3.3.6)(@types/node@22.15.30)(@types/react@18.3.20)(react@18.3.1):
|
||||
dependencies:
|
||||
'@react-dnd/invariant': 4.0.2
|
||||
'@react-dnd/shallowequal': 4.0.2
|
||||
@ -15651,7 +15756,7 @@ snapshots:
|
||||
react: 18.3.1
|
||||
optionalDependencies:
|
||||
'@types/hoist-non-react-statics': 3.3.6
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
'@types/react': 18.3.20
|
||||
|
||||
react-dom@18.3.1(react@18.3.1):
|
||||
@ -16642,6 +16747,24 @@ snapshots:
|
||||
dependencies:
|
||||
typescript: 5.8.2
|
||||
|
||||
ts-node@10.9.2(@types/node@22.15.30)(typescript@5.8.2):
|
||||
dependencies:
|
||||
'@cspotcode/source-map-support': 0.8.1
|
||||
'@tsconfig/node10': 1.0.11
|
||||
'@tsconfig/node12': 1.0.11
|
||||
'@tsconfig/node14': 1.0.3
|
||||
'@tsconfig/node16': 1.0.4
|
||||
'@types/node': 22.15.30
|
||||
acorn: 8.14.1
|
||||
acorn-walk: 8.3.2
|
||||
arg: 4.1.3
|
||||
create-require: 1.1.1
|
||||
diff: 4.0.2
|
||||
make-error: 1.3.6
|
||||
typescript: 5.8.2
|
||||
v8-compile-cache-lib: 3.0.1
|
||||
yn: 3.1.1
|
||||
|
||||
tsconfck@3.1.5(typescript@5.8.2):
|
||||
optionalDependencies:
|
||||
typescript: 5.8.2
|
||||
@ -16705,7 +16828,7 @@ snapshots:
|
||||
|
||||
undici-types@6.19.8: {}
|
||||
|
||||
undici-types@6.20.0: {}
|
||||
undici-types@6.21.0: {}
|
||||
|
||||
undici@5.29.0:
|
||||
dependencies:
|
||||
@ -16820,9 +16943,9 @@ snapshots:
|
||||
|
||||
universalify@2.0.1: {}
|
||||
|
||||
unocss@0.61.9(postcss@8.5.3)(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)):
|
||||
unocss@0.61.9(postcss@8.5.3)(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)):
|
||||
dependencies:
|
||||
'@unocss/astro': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
'@unocss/astro': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
'@unocss/cli': 0.61.9(rollup@4.38.0)
|
||||
'@unocss/core': 0.61.9
|
||||
'@unocss/extractor-arbitrary-variants': 0.61.9
|
||||
@ -16841,9 +16964,9 @@ snapshots:
|
||||
'@unocss/transformer-compile-class': 0.61.9
|
||||
'@unocss/transformer-directives': 0.61.9
|
||||
'@unocss/transformer-variant-group': 0.61.9
|
||||
'@unocss/vite': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
'@unocss/vite': 0.61.9(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
optionalDependencies:
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- postcss
|
||||
- rollup
|
||||
@ -16921,6 +17044,8 @@ snapshots:
|
||||
kleur: 4.1.5
|
||||
sade: 1.8.1
|
||||
|
||||
v8-compile-cache-lib@3.0.1: {}
|
||||
|
||||
valibot@0.41.0(typescript@5.8.2):
|
||||
optionalDependencies:
|
||||
typescript: 5.8.2
|
||||
@ -16972,13 +17097,13 @@ snapshots:
|
||||
'@types/unist': 3.0.3
|
||||
vfile-message: 4.0.2
|
||||
|
||||
vite-node@1.6.1(@types/node@22.13.14)(sass-embedded@1.86.0):
|
||||
vite-node@1.6.1(@types/node@22.15.30)(sass-embedded@1.86.0):
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.4.0
|
||||
pathe: 1.1.2
|
||||
picocolors: 1.1.1
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
@ -16990,13 +17115,13 @@ snapshots:
|
||||
- supports-color
|
||||
- terser
|
||||
|
||||
vite-node@2.1.9(@types/node@22.13.14)(sass-embedded@1.86.0):
|
||||
vite-node@2.1.9(@types/node@22.15.30)(sass-embedded@1.86.0):
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.4.0
|
||||
es-module-lexer: 1.6.0
|
||||
pathe: 1.1.2
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
@ -17008,13 +17133,13 @@ snapshots:
|
||||
- supports-color
|
||||
- terser
|
||||
|
||||
vite-node@3.0.0-beta.2(@types/node@22.13.14)(sass-embedded@1.86.0):
|
||||
vite-node@3.0.0-beta.2(@types/node@22.15.30)(sass-embedded@1.86.0):
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.4.0
|
||||
es-module-lexer: 1.6.0
|
||||
pathe: 1.1.2
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
@ -17030,43 +17155,43 @@ snapshots:
|
||||
dependencies:
|
||||
fast-glob: 3.3.3
|
||||
|
||||
vite-plugin-node-polyfills@0.22.0(rollup@4.38.0)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)):
|
||||
vite-plugin-node-polyfills@0.22.0(rollup@4.38.0)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)):
|
||||
dependencies:
|
||||
'@rollup/plugin-inject': 5.0.5(rollup@4.38.0)
|
||||
node-stdlib-browser: 1.3.1
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- rollup
|
||||
|
||||
vite-plugin-optimize-css-modules@1.2.0(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)):
|
||||
vite-plugin-optimize-css-modules@1.2.0(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)):
|
||||
dependencies:
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
|
||||
vite-tsconfig-paths@4.3.2(typescript@5.8.2)(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)):
|
||||
vite-tsconfig-paths@4.3.2(typescript@5.8.2)(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)):
|
||||
dependencies:
|
||||
debug: 4.4.0
|
||||
globrex: 0.1.2
|
||||
tsconfck: 3.1.5(typescript@5.8.2)
|
||||
optionalDependencies:
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
- typescript
|
||||
|
||||
vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0):
|
||||
vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
postcss: 8.5.3
|
||||
rollup: 4.38.0
|
||||
optionalDependencies:
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
fsevents: 2.3.3
|
||||
sass-embedded: 1.86.0
|
||||
|
||||
vitest@2.1.9(@types/node@22.13.14)(jsdom@26.0.0)(sass-embedded@1.86.0):
|
||||
vitest@2.1.9(@types/node@22.15.30)(jsdom@26.0.0)(sass-embedded@1.86.0):
|
||||
dependencies:
|
||||
'@vitest/expect': 2.1.9
|
||||
'@vitest/mocker': 2.1.9(vite@5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0))
|
||||
'@vitest/mocker': 2.1.9(vite@5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0))
|
||||
'@vitest/pretty-format': 2.1.9
|
||||
'@vitest/runner': 2.1.9
|
||||
'@vitest/snapshot': 2.1.9
|
||||
@ -17082,11 +17207,11 @@ snapshots:
|
||||
tinyexec: 0.3.2
|
||||
tinypool: 1.0.2
|
||||
tinyrainbow: 1.2.0
|
||||
vite: 5.4.15(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite-node: 2.1.9(@types/node@22.13.14)(sass-embedded@1.86.0)
|
||||
vite: 5.4.15(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
vite-node: 2.1.9(@types/node@22.15.30)(sass-embedded@1.86.0)
|
||||
why-is-node-running: 2.3.0
|
||||
optionalDependencies:
|
||||
'@types/node': 22.13.14
|
||||
'@types/node': 22.15.30
|
||||
jsdom: 26.0.0
|
||||
transitivePeerDependencies:
|
||||
- less
|
||||
@ -17244,6 +17369,8 @@ snapshots:
|
||||
buffer-crc32: 0.2.13
|
||||
fd-slicer: 1.1.0
|
||||
|
||||
yn@3.1.1: {}
|
||||
|
||||
yocto-queue@0.1.0: {}
|
||||
|
||||
youch@3.2.3:
|
||||
|
22
tsconfig.cli.json
Normal file
22
tsconfig.cli.json
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "dist/cli",
|
||||
"rootDir": "cli",
|
||||
"resolveJsonModule": true,
|
||||
"esModuleInterop": true,
|
||||
"skipLibCheck": true
|
||||
},
|
||||
"ts-node": {
|
||||
"esm": true,
|
||||
"experimentalSpecifierResolution": "node"
|
||||
},
|
||||
"include": [
|
||||
"cli/**/*.ts"
|
||||
],
|
||||
"exclude": [
|
||||
"node_modules",
|
||||
"app",
|
||||
"dist"
|
||||
]
|
||||
}
|
23
tsconfig.cli.test.json
Normal file
23
tsconfig.cli.test.json
Normal file
@ -0,0 +1,23 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "dist/cli_tests",
|
||||
"rootDir": ".",
|
||||
"resolveJsonModule": true,
|
||||
"esModuleInterop": true,
|
||||
"skipLibCheck": true
|
||||
},
|
||||
"ts-node": {
|
||||
"esm": true,
|
||||
"experimentalSpecifierResolution": "node",
|
||||
"transpileOnly": true
|
||||
},
|
||||
"include": [
|
||||
"cli/tests/**/*.ts"
|
||||
],
|
||||
"exclude": [
|
||||
"node_modules",
|
||||
"app",
|
||||
"dist"
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue
Block a user