wexts 2.0.9 → 3.0.1
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.
- package/README.md +241 -235
- package/dist/chunk-2KAQYLVN.js +1 -0
- package/dist/chunk-2KAQYLVN.js.map +1 -0
- package/dist/chunk-3OM7CHCA.js +65 -0
- package/dist/chunk-3OM7CHCA.js.map +1 -0
- package/dist/chunk-667BQCEM.js +375 -0
- package/dist/chunk-667BQCEM.js.map +1 -0
- package/dist/chunk-FCEZDH42.mjs +20 -0
- package/dist/chunk-FCEZDH42.mjs.map +1 -0
- package/dist/chunk-KXYLEUSW.mjs +242 -0
- package/dist/chunk-KXYLEUSW.mjs.map +1 -0
- package/dist/chunk-O42L6HOX.js +242 -0
- package/dist/chunk-O42L6HOX.js.map +1 -0
- package/dist/chunk-ONXNE2A6.mjs +375 -0
- package/dist/chunk-ONXNE2A6.mjs.map +1 -0
- package/dist/chunk-STTOPUZ2.mjs +88 -0
- package/dist/chunk-STTOPUZ2.mjs.map +1 -0
- package/dist/chunk-VMT3LALB.mjs +51 -0
- package/dist/chunk-VMT3LALB.mjs.map +1 -0
- package/dist/chunk-VNNVLQLJ.mjs +65 -0
- package/dist/chunk-VNNVLQLJ.mjs.map +1 -0
- package/dist/chunk-WF65EDRZ.js +88 -0
- package/dist/chunk-WF65EDRZ.js.map +1 -0
- package/dist/chunk-XE4OXN2W.js +12 -0
- package/dist/chunk-XE4OXN2W.js.map +1 -0
- package/dist/chunk-XVKTIYHY.js +51 -0
- package/dist/chunk-XVKTIYHY.js.map +1 -0
- package/dist/chunk-YSLEF5C5.mjs +1 -0
- package/dist/chunk-YSLEF5C5.mjs.map +1 -0
- package/dist/cli/index.js +134 -81
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +93 -41
- package/dist/cli/index.mjs.map +1 -1
- package/dist/client/index.js +3 -3
- package/dist/client/index.mjs +2 -2
- package/dist/codegen/index.js +4 -4
- package/dist/codegen/index.mjs +3 -3
- package/dist/dev-server/index.js +4 -4
- package/dist/dev-server/index.mjs +3 -3
- package/dist/index.js +93 -51
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +75 -33
- package/dist/index.mjs.map +1 -1
- package/dist/nest/index.js +3 -3
- package/dist/nest/index.mjs +2 -2
- package/dist/next/index.js +22 -9
- package/dist/next/index.js.map +1 -1
- package/dist/next/index.mjs +23 -9
- package/dist/next/index.mjs.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.mjs +2 -2
- package/package.json +126 -112
- package/templates/.dockerignore +43 -0
- package/templates/.env.example +17 -0
- package/templates/Dockerfile +60 -0
- package/templates/Procfile +1 -0
- package/templates/README.md +58 -0
- package/templates/api-sdk.ts +115 -0
- package/templates/docker-compose.yml +34 -0
- package/templates/nestjs-api/src/auth/auth.controller.ts +4 -7
- package/templates/nestjs-api/src/auth/auth.module.ts +4 -1
- package/templates/nestjs-api/src/auth/auth.service.ts +8 -13
- package/templates/nestjs-api/src/todos/todos.controller.ts +0 -7
- package/templates/nestjs-api/src/todos/todos.module.ts +3 -1
- package/templates/nestjs-api/src/users/users.controller.ts +0 -3
- package/templates/nestjs-api/src/users/users.module.ts +3 -1
- package/templates/nextjs-web/app/actions/auth.ts +49 -20
- package/templates/nextjs-web/lib/api.ts +115 -0
- package/templates/nextjs-web/next-env.d.ts +1 -1
- package/templates/nixpacks.toml +11 -0
- package/templates/root-package.json +32 -0
- package/templates/server.ts +66 -0
- package/templates/tsconfig.json +31 -0
package/dist/cli/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["#!/usr/bin/env node\r\n\r\nimport { Command } from 'commander';\r\nimport { logger } from '../core/logger';\r\nimport * as pc from 'picocolors';\r\nimport inquirer from 'inquirer';\r\nimport * as fs from 'fs';\r\nimport * as path from 'path';\r\nimport { execSync } from 'child_process';\r\n\r\nconst program = new Command();\r\n\r\nprogram\r\n .name('wexts')\r\n .description('Wexts Framework - Next.js 16 + NestJS 11')\r\n .version('2.0.0');\r\n\r\n// Interactive Mode (when no command is provided)\r\nprogram\r\n .action(async () => {\r\n console.log(pc.cyan(`\r\n╔══════════════════════════════════════════╗\r\n║ ║\r\n║ ${pc.bold('🚀 Wexts Framework v2.0')} ║\r\n║ ║\r\n║ Next.js 16 + NestJS 11 Full-Stack ║\r\n║ ║\r\n╚══════════════════════════════════════════╝\r\n `));\r\n\r\n const { action } = await inquirer.prompt([\r\n {\r\n type: 'list',\r\n name: 'action',\r\n message: 'What would you like to do?',\r\n choices: [\r\n { name: '📦 Create a new project', value: 'create' },\r\n { name: '🚀 Start development server', value: 'dev' },\r\n { name: '🔨 Build for production', value: 'build' },\r\n { name: '⚡ Generate code', value: 'generate' },\r\n { name: '🤖 Generate API client', value: 'codegen' },\r\n { name: '❌ Exit', value: 'exit' },\r\n ],\r\n },\r\n ]);\r\n\r\n if (action === 'exit') {\r\n logger.info('Goodbye! 👋');\r\n process.exit(0);\r\n }\r\n\r\n // Route to appropriate command\r\n if (action === 'create') {\r\n const { projectName, template } = await inquirer.prompt([\r\n {\r\n type: 'input',\r\n name: 'projectName',\r\n message: 'Project name:',\r\n default: 'my-wexts-app',\r\n },\r\n {\r\n type: 'list',\r\n name: 'template',\r\n message: 'Select template:',\r\n choices: [\r\n { name: '📦 Monorepo (Next.js + NestJS)', value: 'monorepo' },\r\n { name: '🎯 API only (NestJS)', value: 'api' },\r\n { name: '🌐 Web only (Next.js)', value: 'web' },\r\n ],\r\n },\r\n ]);\r\n\r\n await createProject(projectName, template);\r\n } else if (action === 'dev') {\r\n logger.info(pc.green('🚀 Starting development servers...\\n'));\r\n logger.warn('Dev server not yet implemented');\r\n } else if (action === 'build') {\r\n logger.info(pc.blue('🔨 Building project...\\n'));\r\n logger.warn('Build not yet implemented');\r\n } else if (action === 'generate') {\r\n const { type, name } = await inquirer.prompt([\r\n {\r\n type: 'list',\r\n name: 'type',\r\n message: 'What to generate?',\r\n choices: ['controller', 'module', 'service', 'page'],\r\n },\r\n {\r\n type: 'input',\r\n name: 'name',\r\n message: 'Name:',\r\n },\r\n ]);\r\n logger.info(pc.magenta(`\\n⚡ Generating ${type}: ${name}\\n`));\r\n logger.warn('Code generation not yet implemented');\r\n } else if (action === 'codegen') {\r\n logger.info(pc.cyan('\\n🤖 Generating API client...\\n'));\r\n logger.warn('Codegen not yet implemented');\r\n }\r\n });\r\n\r\n// Create Command\r\nprogram\r\n .command('create <project-name>')\r\n .description('Create a new wexts project')\r\n .option('-t, --template <template>', 'Template to use (monorepo|api|web)', 'monorepo')\r\n .action(async (projectName: string, options: any) => {\r\n await createProject(projectName, options.template);\r\n });\r\n\r\n// Dev Command\r\nprogram\r\n .command('dev')\r\n .description('Start development servers')\r\n .option('-a, --api <path>', 'Path to API project', './apps/api')\r\n .option('-w, --web <path>', 'Path to Web project', './apps/web')\r\n .option('-p, --port <port>', 'Port for web server', '3000')\r\n .option('--api-port <port>', 'Port for API server', '5050')\r\n .option('--no-proxy', 'Disable proxy server')\r\n .action(async (options: any) => {\r\n logger.info(pc.green('🚀 Starting Wexts development servers...\\n'));\r\n\r\n const { FusionDevServer } = await import('../dev-server/index.js');\r\n const server = new FusionDevServer();\r\n\r\n try {\r\n await server.start({\r\n apiPath: options.api,\r\n webPath: options.web,\r\n webPort: parseInt(options.port),\r\n apiPort: parseInt(options.apiPort),\r\n useProxy: options.proxy,\r\n });\r\n } catch (error: any) {\r\n logger.error('Failed to start dev server:', error.message);\r\n process.exit(1);\r\n }\r\n });\r\n\r\n// Build Command\r\nprogram\r\n .command('build')\r\n .description('Build for production')\r\n .action(async () => {\r\n logger.info(pc.blue('Building Wexts project...'));\r\n\r\n // TODO: Build logic\r\n logger.warn('Build not yet implemented');\r\n });\r\n\r\n// Generate Command\r\nprogram\r\n .command('generate <type> <name>')\r\n .alias('g')\r\n .description('Generate code (controller|module|page)')\r\n .action(async (type: string, name: string) => {\r\n logger.info(pc.magenta(`Generating ${type}: ${name}`));\r\n\r\n // TODO: Code generation\r\n logger.warn('Code generation not yet implemented');\r\n });\r\n\r\n// Codegen Command\r\nprogram\r\n .command('codegen')\r\n .description('Generate API client from NestJS controllers')\r\n .option('-w, --watch', 'Watch mode - regenerate on changes')\r\n .option('-p, --project <path>', 'Path to NestJS project', './apps/api')\r\n .option('-o, --output <path>', 'Output path for generated client', './packages/api-client/src')\r\n .action(async (options: any) => {\r\n const { NestJSParser, ClientGenerator, CodegenWatcher } = await import('../codegen/index.js');\r\n\r\n if (options.watch) {\r\n logger.info(pc.cyan('Starting codegen in watch mode...'));\r\n const watcher = new CodegenWatcher();\r\n await watcher.watch({\r\n projectPath: options.project,\r\n outputPath: options.output,\r\n });\r\n } else {\r\n logger.info(pc.cyan('Generating API client...'));\r\n const parser = new NestJSParser(options.project);\r\n const controllers = parser.findFusionControllers();\r\n\r\n const generator = new ClientGenerator();\r\n await generator.generate({\r\n controllers,\r\n outputPath: options.output,\r\n });\r\n }\r\n });\r\n\r\n// Helper function for creating project\r\nasync function createProject(projectName: string, template: string) {\r\n logger.info(pc.cyan(`Creating wexts project: ${pc.bold(projectName)}`));\r\n logger.info(`Template: ${template}`);\r\n\r\n const projectPath = path.join(process.cwd(), projectName);\r\n\r\n if (fs.existsSync(projectPath)) {\r\n logger.error(`Directory ${projectName} already exists!`);\r\n process.exit(1);\r\n }\r\n\r\n // Helper to resolve template path\r\n function getTemplatePath(): string {\r\n // Try multiple locations\r\n const possiblePaths = [\r\n path.join(__dirname, '../../templates'), // When running from dist/cli/index.js\r\n path.join(__dirname, '../templates'), // Alternative structure\r\n path.join(process.cwd(), 'templates'), // Local dev\r\n path.resolve(__dirname, '..', '..', 'templates') // Absolute resolve\r\n ];\r\n\r\n for (const p of possiblePaths) {\r\n if (fs.existsSync(p)) {\r\n return p;\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n const templatePath = getTemplatePath();\r\n\r\n if (!templatePath) {\r\n logger.error(`❌ Template directory not found!`);\r\n logger.info(`Searched in:`);\r\n logger.info(` - ${path.join(__dirname, '../../templates')}`);\r\n logger.info(` - ${path.join(__dirname, '../templates')}`);\r\n logger.info(` - ${path.join(process.cwd(), 'templates')}`);\r\n\r\n // Fallback to basic structure if templates are missing (for dev/test)\r\n logger.warn('⚠️ Using fallback scaffolding (empty structure)');\r\n fs.mkdirSync(projectPath, { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'apps'), { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'packages'), { recursive: true });\r\n } else {\r\n logger.info(`📦 Copying templates from: ${templatePath}`);\r\n\r\n fs.mkdirSync(projectPath, { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'apps'), { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'packages'), { recursive: true });\r\n\r\n // Copy NestJS API Template\r\n const apiTemplatePath = path.join(templatePath, 'nestjs-api');\r\n const apiDestPath = path.join(projectPath, 'apps/api');\r\n if (fs.existsSync(apiTemplatePath)) {\r\n fs.cpSync(apiTemplatePath, apiDestPath, { recursive: true });\r\n logger.success(' - Copied API template');\r\n\r\n // Copy .env.example to .env\r\n const envExamplePath = path.join(apiDestPath, '.env.example');\r\n const envPath = path.join(apiDestPath, '.env');\r\n if (fs.existsSync(envExamplePath) && !fs.existsSync(envPath)) {\r\n fs.copyFileSync(envExamplePath, envPath);\r\n logger.success(' - Created .env from .env.example');\r\n }\r\n } else {\r\n logger.warn(` ⚠️ API template not found at ${apiTemplatePath}`);\r\n }\r\n\r\n // Copy Next.js Web Template\r\n const webTemplatePath = path.join(templatePath, 'nextjs-web');\r\n const webDestPath = path.join(projectPath, 'apps/web');\r\n if (fs.existsSync(webTemplatePath)) {\r\n fs.cpSync(webTemplatePath, webDestPath, { recursive: true });\r\n logger.success(' - Copied Web template');\r\n } else {\r\n logger.warn(` ⚠️ Web template not found at ${webTemplatePath}`);\r\n }\r\n }\r\n\r\n // Create package.json\r\n const packageJson = {\r\n name: projectName,\r\n version: \"0.0.0\",\r\n private: true,\r\n scripts: {\r\n \"build\": \"pnpm exec turbo build\",\r\n \"dev\": \"pnpm exec turbo dev\",\r\n \"lint\": \"pnpm exec turbo lint\",\r\n \"format\": \"prettier --write \\\"**/*.{ts,tsx,md}\\\"\"\r\n },\r\n devDependencies: {\r\n \"turbo\": \"^2.6.1\",\r\n \"prettier\": \"latest\",\r\n \"typescript\": \"^5.9.3\",\r\n \"wexts\": \"latest\"\r\n },\r\n packageManager: \"pnpm@10.0.0\"\r\n };\r\n\r\n fs.writeFileSync(\r\n path.join(projectPath, 'package.json'),\r\n JSON.stringify(packageJson, null, 2)\r\n );\r\n\r\n // Create turbo.json\r\n const turboJson = {\r\n \"$schema\": \"https://turbo.build/schema.json\",\r\n \"tasks\": {\r\n \"build\": {\r\n \"dependsOn\": [\"^build\"],\r\n \"outputs\": [\".next/**\", \"!.next/cache/**\", \"dist/**\"]\r\n },\r\n \"lint\": {},\r\n \"dev\": {\r\n \"cache\": false,\r\n \"persistent\": true\r\n }\r\n }\r\n };\r\n\r\n fs.writeFileSync(\r\n path.join(projectPath, 'turbo.json'),\r\n JSON.stringify(turboJson, null, 2)\r\n );\r\n\r\n // Create pnpm-workspace.yaml\r\n const pnpmWorkspace = `packages:\r\n - 'apps/*'\r\n - 'packages/*'\r\n`;\r\n fs.writeFileSync(\r\n path.join(projectPath, 'pnpm-workspace.yaml'),\r\n pnpmWorkspace\r\n );\r\n\r\n logger.success('✅ Project structure created');\r\n logger.info('📦 Installing dependencies...');\r\n\r\n try {\r\n // Check if pnpm is installed\r\n try {\r\n execSync('pnpm --version', { stdio: 'ignore' });\r\n } catch {\r\n logger.info('Installing pnpm...');\r\n execSync('npm install -g pnpm', { stdio: 'ignore' });\r\n }\r\n\r\n execSync('pnpm install', { cwd: projectPath, stdio: 'inherit' });\r\n logger.success('✅ Dependencies installed');\r\n\r\n logger.info(pc.green(`\\n🎉 Project ${projectName} created successfully!`));\r\n logger.info(`\\nTo get started:\\n`);\r\n logger.info(pc.cyan(` cd ${projectName}`));\r\n logger.info(pc.cyan(` pnpm dev\\n`));\r\n } catch (error) {\r\n logger.error('Failed to install dependencies');\r\n }\r\n}\r\n\r\nprogram.parse();\r\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["#!/usr/bin/env node\r\n\r\nimport { Command } from 'commander';\r\nimport { logger } from '../core/logger';\r\nimport * as pc from 'picocolors';\r\nimport inquirer from 'inquirer';\r\nimport * as fs from 'fs';\r\nimport * as path from 'path';\r\nimport { execSync } from 'child_process';\r\n\r\nconst program = new Command();\r\n\r\nprogram\r\n .name('wexts')\r\n .description('Wexts Framework - Next.js 16 + NestJS 11')\r\n .version('2.0.0');\r\n\r\n// Interactive Mode (when no command is provided)\r\nprogram\r\n .action(async () => {\r\n console.log(pc.cyan(`\r\n╔══════════════════════════════════════════╗\r\n║ ║\r\n║ ${pc.bold('🚀 Wexts Framework v2.0')} ║\r\n║ ║\r\n║ Next.js 16 + NestJS 11 Full-Stack ║\r\n║ ║\r\n╚══════════════════════════════════════════╝\r\n `));\r\n\r\n const { action } = await inquirer.prompt([\r\n {\r\n type: 'list',\r\n name: 'action',\r\n message: 'What would you like to do?',\r\n choices: [\r\n { name: '📦 Create a new project', value: 'create' },\r\n { name: '🚀 Start development server', value: 'dev' },\r\n { name: '🔨 Build for production', value: 'build' },\r\n { name: '⚡ Generate code', value: 'generate' },\r\n { name: '🤖 Generate API client', value: 'codegen' },\r\n { name: '❌ Exit', value: 'exit' },\r\n ],\r\n },\r\n ]);\r\n\r\n if (action === 'exit') {\r\n logger.info('Goodbye! 👋');\r\n process.exit(0);\r\n }\r\n\r\n // Route to appropriate command\r\n if (action === 'create') {\r\n const { projectName, template } = await inquirer.prompt([\r\n {\r\n type: 'input',\r\n name: 'projectName',\r\n message: 'Project name:',\r\n default: 'my-wexts-app',\r\n },\r\n {\r\n type: 'list',\r\n name: 'template',\r\n message: 'Select template:',\r\n choices: [\r\n { name: '📦 Monorepo (Next.js + NestJS)', value: 'monorepo' },\r\n { name: '🎯 API only (NestJS)', value: 'api' },\r\n { name: '🌐 Web only (Next.js)', value: 'web' },\r\n ],\r\n },\r\n ]);\r\n\r\n await createProject(projectName, template);\r\n } else if (action === 'dev') {\r\n logger.info(pc.green('🚀 Starting development servers...\\n'));\r\n logger.warn('Dev server not yet implemented');\r\n } else if (action === 'build') {\r\n logger.info(pc.blue('🔨 Building project...\\n'));\r\n logger.warn('Build not yet implemented');\r\n } else if (action === 'generate') {\r\n const { type, name } = await inquirer.prompt([\r\n {\r\n type: 'list',\r\n name: 'type',\r\n message: 'What to generate?',\r\n choices: ['controller', 'module', 'service', 'page'],\r\n },\r\n {\r\n type: 'input',\r\n name: 'name',\r\n message: 'Name:',\r\n },\r\n ]);\r\n logger.info(pc.magenta(`\\n⚡ Generating ${type}: ${name}\\n`));\r\n logger.warn('Code generation not yet implemented');\r\n } else if (action === 'codegen') {\r\n logger.info(pc.cyan('\\n🤖 Generating API client...\\n'));\r\n logger.warn('Codegen not yet implemented');\r\n }\r\n });\r\n\r\n// Create Command\r\nprogram\r\n .command('create <project-name>')\r\n .description('Create a new wexts project')\r\n .option('-t, --template <template>', 'Template to use (monorepo|api|web)', 'monorepo')\r\n .action(async (projectName: string, options: any) => {\r\n await createProject(projectName, options.template);\r\n });\r\n\r\n// Dev Command\r\nprogram\r\n .command('dev')\r\n .description('Start development servers')\r\n .option('-a, --api <path>', 'Path to API project', './apps/api')\r\n .option('-w, --web <path>', 'Path to Web project', './apps/web')\r\n .option('-p, --port <port>', 'Port for web server', '3000')\r\n .option('--api-port <port>', 'Port for API server', '5050')\r\n .option('--no-proxy', 'Disable proxy server')\r\n .action(async (options: any) => {\r\n logger.info(pc.green('🚀 Starting Wexts development servers...\\n'));\r\n\r\n const { FusionDevServer } = await import('../dev-server/index.js');\r\n const server = new FusionDevServer();\r\n\r\n try {\r\n await server.start({\r\n apiPath: options.api,\r\n webPath: options.web,\r\n webPort: parseInt(options.port),\r\n apiPort: parseInt(options.apiPort),\r\n useProxy: options.proxy,\r\n });\r\n } catch (error: any) {\r\n logger.error('Failed to start dev server:', error.message);\r\n process.exit(1);\r\n }\r\n });\r\n\r\n// Build Command\r\nprogram\r\n .command('build')\r\n .description('Build for production')\r\n .action(async () => {\r\n logger.info(pc.blue('Building Wexts project...'));\r\n\r\n // TODO: Build logic\r\n logger.warn('Build not yet implemented');\r\n });\r\n\r\n// Generate Command\r\nprogram\r\n .command('generate <type> <name>')\r\n .alias('g')\r\n .description('Generate code (controller|module|page)')\r\n .action(async (type: string, name: string) => {\r\n logger.info(pc.magenta(`Generating ${type}: ${name}`));\r\n\r\n // TODO: Code generation\r\n logger.warn('Code generation not yet implemented');\r\n });\r\n\r\n// Codegen Command\r\nprogram\r\n .command('codegen')\r\n .description('Generate API client from NestJS controllers')\r\n .option('-w, --watch', 'Watch mode - regenerate on changes')\r\n .option('-p, --project <path>', 'Path to NestJS project', './apps/api')\r\n .option('-o, --output <path>', 'Output path for generated client', './packages/api-client/src')\r\n .action(async (options: any) => {\r\n const { NestJSParser, ClientGenerator, CodegenWatcher } = await import('../codegen/index.js');\r\n\r\n if (options.watch) {\r\n logger.info(pc.cyan('Starting codegen in watch mode...'));\r\n const watcher = new CodegenWatcher();\r\n await watcher.watch({\r\n projectPath: options.project,\r\n outputPath: options.output,\r\n });\r\n } else {\r\n logger.info(pc.cyan('Generating API client...'));\r\n const parser = new NestJSParser(options.project);\r\n const controllers = parser.findFusionControllers();\r\n\r\n const generator = new ClientGenerator();\r\n await generator.generate({\r\n controllers,\r\n outputPath: options.output,\r\n });\r\n }\r\n });\r\n\r\n// Helper function for creating project\r\nasync function createProject(projectName: string, template: string) {\r\n logger.info(pc.cyan(`Creating wexts project: ${pc.bold(projectName)}`));\r\n logger.info(`Template: ${template}`);\r\n\r\n const projectPath = path.join(process.cwd(), projectName);\r\n\r\n if (fs.existsSync(projectPath)) {\r\n logger.error(`Directory ${projectName} already exists!`);\r\n process.exit(1);\r\n }\r\n\r\n // Helper to resolve template path\r\n function getTemplatePath(): string {\r\n // Try multiple locations\r\n const possiblePaths = [\r\n path.join(__dirname, '../../templates'), // When running from dist/cli/index.js\r\n path.join(__dirname, '../templates'), // Alternative structure\r\n path.join(process.cwd(), 'templates'), // Local dev\r\n path.resolve(__dirname, '..', '..', 'templates') // Absolute resolve\r\n ];\r\n\r\n for (const p of possiblePaths) {\r\n if (fs.existsSync(p)) {\r\n return p;\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n const templatePath = getTemplatePath();\r\n\r\n if (!templatePath) {\r\n logger.error(`❌ Template directory not found!`);\r\n logger.info(`Searched in:`);\r\n logger.info(` - ${path.join(__dirname, '../../templates')}`);\r\n logger.info(` - ${path.join(__dirname, '../templates')}`);\r\n logger.info(` - ${path.join(process.cwd(), 'templates')}`);\r\n\r\n // Fallback to basic structure if templates are missing (for dev/test)\r\n logger.warn('⚠️ Using fallback scaffolding (empty structure)');\r\n fs.mkdirSync(projectPath, { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'apps'), { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'packages'), { recursive: true });\r\n } else {\r\n logger.info(`📦 Copying templates from: ${templatePath}`);\r\n\r\n fs.mkdirSync(projectPath, { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'apps'), { recursive: true });\r\n fs.mkdirSync(path.join(projectPath, 'packages'), { recursive: true });\r\n\r\n // Copy NestJS API Template\r\n const apiTemplatePath = path.join(templatePath, 'nestjs-api');\r\n const apiDestPath = path.join(projectPath, 'apps/api');\r\n if (fs.existsSync(apiTemplatePath)) {\r\n fs.cpSync(apiTemplatePath, apiDestPath, { recursive: true });\r\n logger.success(' - Copied API template');\r\n\r\n // Copy .env.example to .env\r\n const envExamplePath = path.join(apiDestPath, '.env.example');\r\n const envPath = path.join(apiDestPath, '.env');\r\n if (fs.existsSync(envExamplePath) && !fs.existsSync(envPath)) {\r\n fs.copyFileSync(envExamplePath, envPath);\r\n logger.success(' - Created .env from .env.example');\r\n }\r\n } else {\r\n logger.warn(` ⚠️ API template not found at ${apiTemplatePath}`);\r\n }\r\n\r\n // Copy Next.js Web Template\r\n const webTemplatePath = path.join(templatePath, 'nextjs-web');\r\n const webDestPath = path.join(projectPath, 'apps/web');\r\n if (fs.existsSync(webTemplatePath)) {\r\n fs.cpSync(webTemplatePath, webDestPath, { recursive: true });\r\n logger.success(' - Copied Web template');\r\n } else {\r\n logger.warn(` ⚠️ Web template not found at ${webTemplatePath}`);\r\n }\r\n }\r\n\r\n // Create package.json\r\n const packageJson = {\r\n name: projectName,\r\n version: \"0.0.0\",\r\n private: true,\r\n scripts: {\r\n \"build\": \"pnpm exec turbo build\",\r\n \"dev\": \"pnpm exec turbo dev\",\r\n \"lint\": \"pnpm exec turbo lint\",\r\n \"format\": \"prettier --write \\\"**/*.{ts,tsx,md}\\\"\"\r\n },\r\n devDependencies: {\r\n \"turbo\": \"^2.6.1\",\r\n \"prettier\": \"latest\",\r\n \"typescript\": \"^5.9.3\",\r\n \"wexts\": \"latest\"\r\n },\r\n packageManager: \"pnpm@10.0.0\"\r\n };\r\n\r\n fs.writeFileSync(\r\n path.join(projectPath, 'package.json'),\r\n JSON.stringify(packageJson, null, 2)\r\n );\r\n\r\n // Create turbo.json\r\n const turboJson = {\r\n \"$schema\": \"https://turbo.build/schema.json\",\r\n \"tasks\": {\r\n \"build\": {\r\n \"dependsOn\": [\"^build\"],\r\n \"outputs\": [\".next/**\", \"!.next/cache/**\", \"dist/**\"]\r\n },\r\n \"lint\": {},\r\n \"dev\": {\r\n \"cache\": false,\r\n \"persistent\": true\r\n }\r\n }\r\n };\r\n\r\n fs.writeFileSync(\r\n path.join(projectPath, 'turbo.json'),\r\n JSON.stringify(turboJson, null, 2)\r\n );\r\n\r\n // Create pnpm-workspace.yaml\r\n const pnpmWorkspace = `packages:\r\n - 'apps/*'\r\n - 'packages/*'\r\n`;\r\n fs.writeFileSync(\r\n path.join(projectPath, 'pnpm-workspace.yaml'),\r\n pnpmWorkspace\r\n );\r\n\r\n logger.success('✅ Project structure created');\r\n logger.info('📦 Installing dependencies...');\r\n\r\n try {\r\n // Check if pnpm is installed\r\n try {\r\n execSync('pnpm --version', { stdio: 'ignore' });\r\n } catch {\r\n logger.info('Installing pnpm...');\r\n execSync('npm install -g pnpm', { stdio: 'ignore' });\r\n }\r\n\r\n execSync('pnpm install', { cwd: projectPath, stdio: 'inherit' });\r\n logger.success('✅ Dependencies installed');\r\n\r\n logger.info(pc.green(`\\n🎉 Project ${projectName} created successfully!`));\r\n logger.info(`\\nTo get started:\\n`);\r\n logger.info(pc.cyan(` cd ${projectName}`));\r\n logger.info(pc.cyan(` pnpm dev\\n`));\r\n } catch (error) {\r\n logger.error('Failed to install dependencies');\r\n }\r\n}\r\n\r\nprogram.parse();\r\n"],"mappings":"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","names":["Command","pc","inquirer","fs","path","execSync","program","Command","name","description","version","action","console","log","cyan","bold","inquirer","prompt","type","message","choices","value","logger","info","process","exit","projectName","template","default","createProject","green","warn","blue","magenta","command","option","options","FusionDevServer","server","start","apiPath","api","webPath","web","webPort","parseInt","port","apiPort","useProxy","proxy","error","alias","NestJSParser","ClientGenerator","CodegenWatcher","watch","watcher","projectPath","project","outputPath","output","parser","controllers","findFusionControllers","generator","generate","join","cwd","existsSync","getTemplatePath","possiblePaths","__dirname","resolve","p","templatePath","fs","mkdirSync","recursive","apiTemplatePath","apiDestPath","cpSync","success","envExamplePath","envPath","copyFileSync","webTemplatePath","webDestPath","packageJson","private","scripts","devDependencies","packageManager","writeFileSync","JSON","stringify","turboJson","pnpmWorkspace","execSync","stdio","parse"]}
|
package/dist/client/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
4
|
+
var _chunkXVKTIYHYjs = require('../chunk-XVKTIYHY.js');
|
|
5
|
+
require('../chunk-XE4OXN2W.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
exports.FusionFetcher =
|
|
9
|
+
exports.FusionFetcher = _chunkXVKTIYHYjs.FusionFetcher; exports.apiFetcher = _chunkXVKTIYHYjs.apiFetcher;
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
package/dist/client/index.mjs
CHANGED
package/dist/codegen/index.js
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../chunk-
|
|
7
|
-
require('../chunk-
|
|
5
|
+
var _chunk667BQCEMjs = require('../chunk-667BQCEM.js');
|
|
6
|
+
require('../chunk-3OM7CHCA.js');
|
|
7
|
+
require('../chunk-XE4OXN2W.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
exports.ClientGenerator =
|
|
12
|
+
exports.ClientGenerator = _chunk667BQCEMjs.ClientGenerator; exports.CodegenWatcher = _chunk667BQCEMjs.CodegenWatcher; exports.NestJSParser = _chunk667BQCEMjs.NestJSParser;
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/dist/codegen/index.mjs
CHANGED
|
@@ -2,9 +2,9 @@ import {
|
|
|
2
2
|
ClientGenerator,
|
|
3
3
|
CodegenWatcher,
|
|
4
4
|
NestJSParser
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
5
|
+
} from "../chunk-ONXNE2A6.mjs";
|
|
6
|
+
import "../chunk-VNNVLQLJ.mjs";
|
|
7
|
+
import "../chunk-FCEZDH42.mjs";
|
|
8
8
|
export {
|
|
9
9
|
ClientGenerator,
|
|
10
10
|
CodegenWatcher,
|
package/dist/dev-server/index.js
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../chunk-
|
|
7
|
-
require('../chunk-
|
|
5
|
+
var _chunkO42L6HOXjs = require('../chunk-O42L6HOX.js');
|
|
6
|
+
require('../chunk-3OM7CHCA.js');
|
|
7
|
+
require('../chunk-XE4OXN2W.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
exports.FusionDevServer =
|
|
12
|
+
exports.FusionDevServer = _chunkO42L6HOXjs.FusionDevServer; exports.ProcessRunner = _chunkO42L6HOXjs.ProcessRunner; exports.ProxyServer = _chunkO42L6HOXjs.ProxyServer;
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -2,9 +2,9 @@ import {
|
|
|
2
2
|
FusionDevServer,
|
|
3
3
|
ProcessRunner,
|
|
4
4
|
ProxyServer
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
5
|
+
} from "../chunk-KXYLEUSW.mjs";
|
|
6
|
+
import "../chunk-VNNVLQLJ.mjs";
|
|
7
|
+
import "../chunk-FCEZDH42.mjs";
|
|
8
8
|
export {
|
|
9
9
|
FusionDevServer,
|
|
10
10
|
ProcessRunner,
|
package/dist/index.js
CHANGED
|
@@ -1,51 +1,55 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _class;
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkXVKTIYHYjs = require('./chunk-XVKTIYHY.js');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
7
|
-
require('./chunk-
|
|
6
|
+
var _chunkWF65EDRZjs = require('./chunk-WF65EDRZ.js');
|
|
7
|
+
require('./chunk-2KAQYLVN.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _chunk667BQCEMjs = require('./chunk-667BQCEM.js');
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _chunkO42L6HOXjs = require('./chunk-O42L6HOX.js');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
var
|
|
21
|
+
var _chunk3OM7CHCAjs = require('./chunk-3OM7CHCA.js');
|
|
22
22
|
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
|
|
25
|
+
var _chunkXE4OXN2Wjs = require('./chunk-XE4OXN2W.js');
|
|
25
26
|
|
|
26
27
|
// src/core/index.ts
|
|
27
28
|
var core_exports = {};
|
|
28
|
-
|
|
29
|
+
_chunkXE4OXN2Wjs.__export.call(void 0, core_exports, {
|
|
29
30
|
APIError: () => APIError,
|
|
30
31
|
ConfigError: () => ConfigError,
|
|
31
32
|
ConfigLoader: () => ConfigLoader,
|
|
32
|
-
FileSystem: () =>
|
|
33
|
+
FileSystem: () => _chunk667BQCEMjs.FileSystem,
|
|
33
34
|
FusionError: () => FusionError,
|
|
34
|
-
LogLevel: () =>
|
|
35
|
-
Logger: () =>
|
|
35
|
+
LogLevel: () => _chunk3OM7CHCAjs.LogLevel,
|
|
36
|
+
Logger: () => _chunk3OM7CHCAjs.Logger,
|
|
36
37
|
ProcessManager: () => ProcessManager,
|
|
37
38
|
ValidationError: () => ValidationError,
|
|
38
39
|
config: () => config,
|
|
39
|
-
createLogger: () =>
|
|
40
|
-
filesystem: () =>
|
|
40
|
+
createLogger: () => _chunk3OM7CHCAjs.createLogger,
|
|
41
|
+
filesystem: () => _chunk667BQCEMjs.filesystem,
|
|
41
42
|
load: () => load,
|
|
42
|
-
logger: () =>
|
|
43
|
+
logger: () => _chunk3OM7CHCAjs.logger
|
|
43
44
|
});
|
|
44
45
|
|
|
45
46
|
// src/core/config.ts
|
|
46
47
|
var _fs = require('fs'); var fs = _interopRequireWildcard(_fs);
|
|
47
48
|
var _path = require('path'); var path = _interopRequireWildcard(_path);
|
|
48
49
|
var ConfigLoader = (_class = class {
|
|
50
|
+
static {
|
|
51
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "ConfigLoader");
|
|
52
|
+
}
|
|
49
53
|
__init() {this.config = /* @__PURE__ */ new Map()}
|
|
50
54
|
|
|
51
55
|
constructor(configDir = process.cwd()) {;_class.prototype.__init.call(this);
|
|
@@ -104,9 +108,13 @@ var config = new ConfigLoader();
|
|
|
104
108
|
function load(key, defaultValue) {
|
|
105
109
|
return config.load(key, defaultValue);
|
|
106
110
|
}
|
|
111
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, load, "load");
|
|
107
112
|
|
|
108
113
|
// src/core/process-manager.ts
|
|
109
114
|
var ProcessManager = class {
|
|
115
|
+
static {
|
|
116
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "ProcessManager");
|
|
117
|
+
}
|
|
110
118
|
/**
|
|
111
119
|
* Setup process error handlers
|
|
112
120
|
*/
|
|
@@ -143,57 +151,69 @@ var ProcessManager = class {
|
|
|
143
151
|
|
|
144
152
|
// src/core/errors.ts
|
|
145
153
|
var FusionError = class extends Error {
|
|
154
|
+
static {
|
|
155
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "FusionError");
|
|
156
|
+
}
|
|
157
|
+
|
|
146
158
|
constructor(message, code) {
|
|
147
|
-
super(message);
|
|
148
|
-
this.code = code;
|
|
159
|
+
super(message), this.code = code;
|
|
149
160
|
this.name = "FusionError";
|
|
150
161
|
}
|
|
151
162
|
};
|
|
152
163
|
var ConfigError = class extends FusionError {
|
|
164
|
+
static {
|
|
165
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "ConfigError");
|
|
166
|
+
}
|
|
153
167
|
constructor(message) {
|
|
154
168
|
super(message, "CONFIG_ERROR");
|
|
155
169
|
this.name = "ConfigError";
|
|
156
170
|
}
|
|
157
171
|
};
|
|
158
172
|
var ValidationError = class extends FusionError {
|
|
173
|
+
static {
|
|
174
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "ValidationError");
|
|
175
|
+
}
|
|
159
176
|
constructor(message) {
|
|
160
177
|
super(message, "VALIDATION_ERROR");
|
|
161
178
|
this.name = "ValidationError";
|
|
162
179
|
}
|
|
163
180
|
};
|
|
164
181
|
var APIError = class extends FusionError {
|
|
182
|
+
static {
|
|
183
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "APIError");
|
|
184
|
+
}
|
|
185
|
+
|
|
165
186
|
constructor(message, statusCode) {
|
|
166
|
-
super(message, "API_ERROR");
|
|
167
|
-
this.statusCode = statusCode;
|
|
187
|
+
super(message, "API_ERROR"), this.statusCode = statusCode;
|
|
168
188
|
this.name = "APIError";
|
|
169
189
|
}
|
|
170
190
|
};
|
|
171
191
|
|
|
172
192
|
// src/config/index.ts
|
|
173
193
|
var config_exports = {};
|
|
174
|
-
|
|
194
|
+
_chunkXE4OXN2Wjs.__export.call(void 0, config_exports, {
|
|
175
195
|
loader: () => loader
|
|
176
196
|
});
|
|
177
197
|
|
|
178
198
|
// src/config/loader.ts
|
|
179
199
|
var loader = {
|
|
180
|
-
load: () => ({})
|
|
200
|
+
load: /* @__PURE__ */ _chunkXE4OXN2Wjs.__name.call(void 0, () => ({}), "load")
|
|
181
201
|
};
|
|
182
202
|
|
|
183
203
|
// src/insight/index.ts
|
|
184
204
|
var insight_exports = {};
|
|
185
|
-
|
|
205
|
+
_chunkXE4OXN2Wjs.__export.call(void 0, insight_exports, {
|
|
186
206
|
server: () => server
|
|
187
207
|
});
|
|
188
208
|
|
|
189
209
|
// src/insight/server.ts
|
|
190
210
|
var server = {
|
|
191
|
-
start: () => console.log("Insight server started")
|
|
211
|
+
start: /* @__PURE__ */ _chunkXE4OXN2Wjs.__name.call(void 0, () => console.log("Insight server started"), "start")
|
|
192
212
|
};
|
|
193
213
|
|
|
194
214
|
// src/create-fusion/index.ts
|
|
195
215
|
var create_fusion_exports = {};
|
|
196
|
-
|
|
216
|
+
_chunkXE4OXN2Wjs.__export.call(void 0, create_fusion_exports, {
|
|
197
217
|
ProjectScaffolder: () => ProjectScaffolder
|
|
198
218
|
});
|
|
199
219
|
|
|
@@ -201,11 +221,16 @@ _chunkPZ5AY32Cjs.__export.call(void 0, create_fusion_exports, {
|
|
|
201
221
|
var _promises = require('fs/promises');
|
|
202
222
|
|
|
203
223
|
var ProjectScaffolder = class {
|
|
224
|
+
static {
|
|
225
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, this, "ProjectScaffolder");
|
|
226
|
+
}
|
|
204
227
|
async scaffold(options) {
|
|
205
228
|
const { projectName, template } = options;
|
|
206
229
|
const projectPath = _path.join.call(void 0, process.cwd(), projectName);
|
|
207
|
-
|
|
208
|
-
await _promises.mkdir.call(void 0, projectPath, {
|
|
230
|
+
_chunk3OM7CHCAjs.logger.info(`Creating project at: ${projectPath}`);
|
|
231
|
+
await _promises.mkdir.call(void 0, projectPath, {
|
|
232
|
+
recursive: true
|
|
233
|
+
});
|
|
209
234
|
if (template === "monorepo") {
|
|
210
235
|
await this.createMonorepo(projectPath, projectName);
|
|
211
236
|
} else if (template === "api") {
|
|
@@ -213,22 +238,33 @@ var ProjectScaffolder = class {
|
|
|
213
238
|
} else if (template === "web") {
|
|
214
239
|
await this.createNextJSApp(projectPath, projectName);
|
|
215
240
|
}
|
|
216
|
-
|
|
217
|
-
|
|
241
|
+
_chunk3OM7CHCAjs.logger.success(`Project ${projectName} created successfully!`);
|
|
242
|
+
_chunk3OM7CHCAjs.logger.info(`
|
|
218
243
|
Next steps:`);
|
|
219
|
-
|
|
220
|
-
|
|
244
|
+
_chunk3OM7CHCAjs.logger.info(` cd ${projectName}`);
|
|
245
|
+
_chunk3OM7CHCAjs.logger.info(` fusion dev`);
|
|
221
246
|
}
|
|
222
247
|
async createMonorepo(projectPath, projectName) {
|
|
223
|
-
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "apps", "api"), {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "
|
|
248
|
+
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "apps", "api"), {
|
|
249
|
+
recursive: true
|
|
250
|
+
});
|
|
251
|
+
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "apps", "web"), {
|
|
252
|
+
recursive: true
|
|
253
|
+
});
|
|
254
|
+
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "packages", "types"), {
|
|
255
|
+
recursive: true
|
|
256
|
+
});
|
|
257
|
+
await _promises.mkdir.call(void 0, _path.join.call(void 0, projectPath, "packages", "api-client"), {
|
|
258
|
+
recursive: true
|
|
259
|
+
});
|
|
227
260
|
const packageJson = {
|
|
228
261
|
name: projectName,
|
|
229
262
|
version: "0.0.1",
|
|
230
263
|
private: true,
|
|
231
|
-
workspaces: [
|
|
264
|
+
workspaces: [
|
|
265
|
+
"apps/*",
|
|
266
|
+
"packages/*"
|
|
267
|
+
],
|
|
232
268
|
scripts: {
|
|
233
269
|
dev: "fusion dev",
|
|
234
270
|
build: "fusion build"
|
|
@@ -237,10 +273,7 @@ Next steps:`);
|
|
|
237
273
|
"wexts": "^1.0.0"
|
|
238
274
|
}
|
|
239
275
|
};
|
|
240
|
-
await _promises.writeFile.call(void 0,
|
|
241
|
-
_path.join.call(void 0, projectPath, "package.json"),
|
|
242
|
-
JSON.stringify(packageJson, null, 2)
|
|
243
|
-
);
|
|
276
|
+
await _promises.writeFile.call(void 0, _path.join.call(void 0, projectPath, "package.json"), JSON.stringify(packageJson, null, 2));
|
|
244
277
|
const readme = `# ${projectName}
|
|
245
278
|
|
|
246
279
|
Created with wexts
|
|
@@ -254,16 +287,16 @@ fusion dev
|
|
|
254
287
|
await _promises.writeFile.call(void 0, _path.join.call(void 0, projectPath, "README.md"), readme);
|
|
255
288
|
}
|
|
256
289
|
async createNestJSApp(projectPath, projectName) {
|
|
257
|
-
|
|
290
|
+
_chunk3OM7CHCAjs.logger.info("Creating NestJS application...");
|
|
258
291
|
}
|
|
259
292
|
async createNextJSApp(projectPath, projectName) {
|
|
260
|
-
|
|
293
|
+
_chunk3OM7CHCAjs.logger.info("Creating Next.js application...");
|
|
261
294
|
}
|
|
262
295
|
};
|
|
263
296
|
|
|
264
297
|
// src/next/index.ts
|
|
265
298
|
var next_exports = {};
|
|
266
|
-
|
|
299
|
+
_chunkXE4OXN2Wjs.__export.call(void 0, next_exports, {
|
|
267
300
|
FusionProvider: () => FusionProvider,
|
|
268
301
|
useAuth: () => useAuth,
|
|
269
302
|
useFusion: () => useFusion
|
|
@@ -271,11 +304,18 @@ _chunkPZ5AY32Cjs.__export.call(void 0, next_exports, {
|
|
|
271
304
|
|
|
272
305
|
// src/next/provider.tsx
|
|
273
306
|
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
274
|
-
var FusionContext = _react.createContext.call(void 0, null);
|
|
307
|
+
var FusionContext = /* @__PURE__ */ _react.createContext.call(void 0, null);
|
|
275
308
|
function FusionProvider({ children, baseUrl = "/api" }) {
|
|
276
|
-
const client = _react2.default.useMemo(() => new (0,
|
|
277
|
-
|
|
309
|
+
const client = _react2.default.useMemo(() => new (0, _chunkXVKTIYHYjs.FusionFetcher)(baseUrl), [
|
|
310
|
+
baseUrl
|
|
311
|
+
]);
|
|
312
|
+
return /* @__PURE__ */ _react2.default.createElement(FusionContext.Provider, {
|
|
313
|
+
value: {
|
|
314
|
+
client
|
|
315
|
+
}
|
|
316
|
+
}, children);
|
|
278
317
|
}
|
|
318
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, FusionProvider, "FusionProvider");
|
|
279
319
|
function useFusion() {
|
|
280
320
|
const context = _react.useContext.call(void 0, FusionContext);
|
|
281
321
|
if (!context) {
|
|
@@ -283,6 +323,7 @@ function useFusion() {
|
|
|
283
323
|
}
|
|
284
324
|
return context;
|
|
285
325
|
}
|
|
326
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, useFusion, "useFusion");
|
|
286
327
|
|
|
287
328
|
// src/next/useAuth.ts
|
|
288
329
|
|
|
@@ -298,7 +339,7 @@ function useAuth() {
|
|
|
298
339
|
setLoading(false);
|
|
299
340
|
}
|
|
300
341
|
}, []);
|
|
301
|
-
const loadUser = async () => {
|
|
342
|
+
const loadUser = /* @__PURE__ */ _chunkXE4OXN2Wjs.__name.call(void 0, async () => {
|
|
302
343
|
try {
|
|
303
344
|
const userData = await client.get("/auth/me");
|
|
304
345
|
setUser(userData);
|
|
@@ -307,19 +348,19 @@ function useAuth() {
|
|
|
307
348
|
} finally {
|
|
308
349
|
setLoading(false);
|
|
309
350
|
}
|
|
310
|
-
};
|
|
311
|
-
const login = async (email, password) => {
|
|
351
|
+
}, "loadUser");
|
|
352
|
+
const login = /* @__PURE__ */ _chunkXE4OXN2Wjs.__name.call(void 0, async (email, password) => {
|
|
312
353
|
const response = await client.post("/auth/login", {
|
|
313
354
|
email,
|
|
314
355
|
password
|
|
315
356
|
});
|
|
316
357
|
localStorage.setItem("fusion_token", response.token);
|
|
317
358
|
setUser(response.user);
|
|
318
|
-
};
|
|
319
|
-
const logout = async () => {
|
|
359
|
+
}, "login");
|
|
360
|
+
const logout = /* @__PURE__ */ _chunkXE4OXN2Wjs.__name.call(void 0, async () => {
|
|
320
361
|
localStorage.removeItem("fusion_token");
|
|
321
362
|
setUser(null);
|
|
322
|
-
};
|
|
363
|
+
}, "logout");
|
|
323
364
|
return {
|
|
324
365
|
user,
|
|
325
366
|
loading,
|
|
@@ -328,6 +369,7 @@ function useAuth() {
|
|
|
328
369
|
isAuthenticated: !!user
|
|
329
370
|
};
|
|
330
371
|
}
|
|
372
|
+
_chunkXE4OXN2Wjs.__name.call(void 0, useAuth, "useAuth");
|
|
331
373
|
|
|
332
374
|
|
|
333
375
|
|
|
@@ -337,5 +379,5 @@ function useAuth() {
|
|
|
337
379
|
|
|
338
380
|
|
|
339
381
|
|
|
340
|
-
exports.Codegen =
|
|
382
|
+
exports.Codegen = _chunk667BQCEMjs.codegen_exports; exports.Config = config_exports; exports.Core = core_exports; exports.CreateFusion = create_fusion_exports; exports.DevServer = _chunkO42L6HOXjs.dev_server_exports; exports.Insight = insight_exports; exports.Nest = _chunkWF65EDRZjs.nest_exports; exports.Next = next_exports;
|
|
341
383
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["c:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\index.js"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,aAAa,EAAE,CAAC,CAAC;AACrB,uCAAQ,YAAa,EAAE;AACvB,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,QAAQ;AAC1B,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,WAAW;AAChC,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,YAAY;AAClC,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,2BAAU;AAC9B,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,WAAW;AAChC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,yBAAQ;AAC1B,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,uBAAM;AACtB,EAAE,cAAc,EAAE,CAAC,EAAE,GAAG,cAAc;AACtC,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,eAAe;AACxC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM;AACtB,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,6BAAY;AAClC,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,2BAAU;AAC9B,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI;AAClB,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG;AAChB,CAAC,CAAC;AACF;AACA;AACA,+DAAwB;AACxB,uEAA4B;AAC5B,IAAI,aAAa,YAAE,MAAM;AACzB,iBAAE,OAAO,kBAAkB,IAAI,GAAG,CAAC,EAAC;AACpC,EAAE;AACF,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;AACzC,IAAI,IAAI,CAAC,UAAU,EAAE,SAAS;AAC9B,EAAE;AACF;AACA;AACA;AACA,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE;AAC1B,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AAC9B,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;AACjC,IAAI;AACJ,IAAI,MAAM,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,WAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,
|
|
1
|
+
{"version":3,"sources":["c:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\index.js"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,aAAa,EAAE,CAAC,CAAC;AACrB,uCAAQ,YAAa,EAAE;AACvB,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,QAAQ;AAC1B,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,WAAW;AAChC,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,YAAY;AAClC,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,2BAAU;AAC9B,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,WAAW;AAChC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,yBAAQ;AAC1B,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,uBAAM;AACtB,EAAE,cAAc,EAAE,CAAC,EAAE,GAAG,cAAc;AACtC,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,eAAe;AACxC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM;AACtB,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,6BAAY;AAClC,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,2BAAU;AAC9B,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI;AAClB,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG;AAChB,CAAC,CAAC;AACF;AACA;AACA,+DAAwB;AACxB,uEAA4B;AAC5B,IAAI,aAAa,YAAE,MAAM;AACzB,EAAE,OAAO;AACT,IAAI,qCAAM,IAAK,EAAE,cAAc,CAAC;AAChC,EAAE;AACF,iBAAE,OAAO,kBAAkB,IAAI,GAAG,CAAC,EAAC;AACpC,EAAE;AACF,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;AACzC,IAAI,IAAI,CAAC,UAAU,EAAE,SAAS;AAC9B,EAAE;AACF;AACA;AACA;AACA,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE;AAC1B,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AAC9B,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;AACjC,IAAI;AACJ,IAAI,MAAM,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,WAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"C:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\index.js","sourcesContent":[null]}
|