create-zenstack 3.0.0-beta.31 → 3.0.0-beta.32

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/dist/index.cjs CHANGED
@@ -54,7 +54,7 @@ model Post {
54
54
  title String @length(1, 256)
55
55
  content String
56
56
  published Boolean @default(false)
57
- author User @relation(fields: [authorId], references: [id])
57
+ author User @relation(fields: [authorId], references: [id], onDelete: Cascade)
58
58
  authorId String
59
59
  }
60
60
  `;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../../cli/src/actions/templates.ts"],"sourcesContent":["import colors from 'colors';\nimport { Command } from 'commander';\nimport { execSync, type StdioOptions } from 'node:child_process';\nimport fs from 'node:fs';\nimport ora from 'ora';\nimport { STARTER_MAIN_TS, STARTER_ZMODEL } from './templates';\n\n// detect package manager\nconst npmAgent = process.env['npm_config_user_agent'];\nlet agent = 'npm';\nlet agentExec = 'npx';\nlet saveDev = '--save-dev';\n\nif (npmAgent?.includes('pnpm')) {\n agent = 'pnpm';\n agentExec = 'pnpm';\n} else if (npmAgent?.includes('yarn')) {\n agent = 'yarn';\n agentExec = 'npx';\n saveDev = '--dev';\n} else if (npmAgent?.includes('bun')) {\n agent = 'bun';\n agentExec = 'bun';\n}\n\nconst program = new Command('create-zenstack');\n\nprogram.arguments('<project-name>').action((projectName) => {\n initProject(projectName);\n});\n\nprogram.parse(process.argv);\n\nfunction initProject(name: string) {\n // create folder\n if (fs.existsSync(name)) {\n console.log(colors.red(`Directory ${name} already exists.`));\n process.exit(1);\n }\n fs.mkdirSync(name);\n process.chdir(name);\n\n console.log(colors.gray(`Using package manager: ${agent}`));\n\n // create package.json\n fs.writeFileSync(\n 'package.json',\n JSON.stringify(\n {\n name: 'zenstack-app',\n version: '1.0.0',\n description: 'Scaffolded with create-zenstack',\n type: 'module',\n scripts: {\n dev: 'tsx main.ts',\n },\n license: 'ISC',\n },\n null,\n 2,\n ),\n );\n\n // create VSCode config files\n createVsCodeConfig();\n\n // install packages\n const packages = [\n { name: '@zenstackhq/cli@next', dev: true },\n { name: '@zenstackhq/orm@next', dev: false },\n { name: 'better-sqlite3', dev: false },\n { name: '@types/better-sqlite3', dev: true },\n { name: 'typescript', dev: true },\n { name: 'tsx', dev: true },\n { name: '@types/node', dev: true },\n ];\n for (const pkg of packages) {\n installPackage(pkg);\n }\n\n // create tsconfig.json\n fs.writeFileSync(\n 'tsconfig.json',\n JSON.stringify(\n {\n compilerOptions: {\n module: 'esnext',\n target: 'esnext',\n moduleResolution: 'bundler',\n sourceMap: true,\n outDir: 'dist',\n strict: true,\n skipLibCheck: true,\n esModuleInterop: true,\n },\n },\n null,\n 2,\n ),\n );\n\n // create schema.zmodel\n fs.mkdirSync('zenstack');\n fs.writeFileSync('zenstack/schema.zmodel', STARTER_ZMODEL);\n\n // create main.ts\n fs.writeFileSync('main.ts', STARTER_MAIN_TS);\n\n // run `zen generate`\n runCommand(`${agentExec} zen generate`, 'Running `zen generate`');\n\n // run `zen db push`\n runCommand(`${agentExec} zen db push`, 'Running `zen db push`');\n\n // run `$agent run dev`\n console.log(`Running \\`${agent} run dev\\``);\n execSync(`${agent} run dev`, { stdio: 'inherit' });\n console.log(colors.green('Project setup completed!'));\n}\n\nfunction installPackage(pkg: { name: string; dev: boolean }) {\n runCommand(`${agent} install ${pkg.name} ${pkg.dev ? saveDev : ''}`, `Installing \"${pkg.name}\"`);\n}\n\nfunction runCommand(cmd: string, status: string, stdio: StdioOptions = 'ignore') {\n const spinner = ora(status).start();\n try {\n execSync(cmd, { stdio });\n spinner.succeed();\n } catch (e) {\n spinner.fail();\n throw e;\n }\n}\n\nfunction createVsCodeConfig() {\n fs.mkdirSync('.vscode', { recursive: true });\n fs.writeFileSync(\n '.vscode/settings.json',\n JSON.stringify(\n {\n 'files.associations': {\n '*.zmodel': 'zmodel-v3',\n },\n },\n null,\n 4,\n ),\n );\n fs.writeFileSync('.vscode/extensions.json', JSON.stringify({ recommendations: ['zenstack.zenstack-v3'] }, null, 4));\n}\n","export const STARTER_ZMODEL = `// This is a sample model to get you started.\n\n/// A sample data source using local sqlite db.\ndatasource db {\n provider = 'sqlite'\n url = 'file:./dev.db'\n}\n\n/// User model\nmodel User {\n id String @id @default(cuid())\n email String @unique @email @length(6, 32)\n posts Post[]\n}\n\n/// Post model\nmodel Post {\n id String @id @default(cuid())\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n title String @length(1, 256)\n content String\n published Boolean @default(false)\n author User @relation(fields: [authorId], references: [id])\n authorId String\n}\n`;\n\nexport const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/orm';\nimport { SqliteDialect } from '@zenstackhq/orm/dialects/sqlite';\nimport SQLite from 'better-sqlite3';\nimport { schema } from './zenstack/schema';\n\nasync function main() {\n const db = new ZenStackClient(schema, {\n dialect: new SqliteDialect({\n database: new SQLite('./zenstack/dev.db'),\n }),\n });\n const user = await db.user.create({\n data: {\n email: 'test@zenstack.dev',\n posts: {\n create: [\n {\n title: 'Hello World',\n content: 'This is a test post',\n },\n ],\n },\n },\n include: { posts: true }\n });\n console.log('User created:', user);\n}\n\nmain();\n`;\n"],"mappings":"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","names":["STARTER_ZMODEL","STARTER_MAIN_TS","npmAgent","process","env","agent","agentExec","saveDev","includes","program","Command","arguments","action","projectName","initProject","parse","argv","name","fs","existsSync","console","log","colors","red","exit","mkdirSync","chdir","gray","writeFileSync","JSON","stringify","version","description","type","scripts","dev","license","createVsCodeConfig","packages","pkg","installPackage","compilerOptions","module","target","moduleResolution","sourceMap","outDir","strict","skipLibCheck","esModuleInterop","STARTER_ZMODEL","STARTER_MAIN_TS","runCommand","execSync","stdio","green","cmd","status","spinner","ora","start","succeed","e","fail","recursive","recommendations"]}
1
+ {"version":3,"sources":["../src/index.ts","../../cli/src/actions/templates.ts"],"sourcesContent":["import colors from 'colors';\nimport { Command } from 'commander';\nimport { execSync, type StdioOptions } from 'node:child_process';\nimport fs from 'node:fs';\nimport ora from 'ora';\nimport { STARTER_MAIN_TS, STARTER_ZMODEL } from './templates';\n\n// detect package manager\nconst npmAgent = process.env['npm_config_user_agent'];\nlet agent = 'npm';\nlet agentExec = 'npx';\nlet saveDev = '--save-dev';\n\nif (npmAgent?.includes('pnpm')) {\n agent = 'pnpm';\n agentExec = 'pnpm';\n} else if (npmAgent?.includes('yarn')) {\n agent = 'yarn';\n agentExec = 'npx';\n saveDev = '--dev';\n} else if (npmAgent?.includes('bun')) {\n agent = 'bun';\n agentExec = 'bun';\n}\n\nconst program = new Command('create-zenstack');\n\nprogram.arguments('<project-name>').action((projectName) => {\n initProject(projectName);\n});\n\nprogram.parse(process.argv);\n\nfunction initProject(name: string) {\n // create folder\n if (fs.existsSync(name)) {\n console.log(colors.red(`Directory ${name} already exists.`));\n process.exit(1);\n }\n fs.mkdirSync(name);\n process.chdir(name);\n\n console.log(colors.gray(`Using package manager: ${agent}`));\n\n // create package.json\n fs.writeFileSync(\n 'package.json',\n JSON.stringify(\n {\n name: 'zenstack-app',\n version: '1.0.0',\n description: 'Scaffolded with create-zenstack',\n type: 'module',\n scripts: {\n dev: 'tsx main.ts',\n },\n license: 'ISC',\n },\n null,\n 2,\n ),\n );\n\n // create VSCode config files\n createVsCodeConfig();\n\n // install packages\n const packages = [\n { name: '@zenstackhq/cli@next', dev: true },\n { name: '@zenstackhq/orm@next', dev: false },\n { name: 'better-sqlite3', dev: false },\n { name: '@types/better-sqlite3', dev: true },\n { name: 'typescript', dev: true },\n { name: 'tsx', dev: true },\n { name: '@types/node', dev: true },\n ];\n for (const pkg of packages) {\n installPackage(pkg);\n }\n\n // create tsconfig.json\n fs.writeFileSync(\n 'tsconfig.json',\n JSON.stringify(\n {\n compilerOptions: {\n module: 'esnext',\n target: 'esnext',\n moduleResolution: 'bundler',\n sourceMap: true,\n outDir: 'dist',\n strict: true,\n skipLibCheck: true,\n esModuleInterop: true,\n },\n },\n null,\n 2,\n ),\n );\n\n // create schema.zmodel\n fs.mkdirSync('zenstack');\n fs.writeFileSync('zenstack/schema.zmodel', STARTER_ZMODEL);\n\n // create main.ts\n fs.writeFileSync('main.ts', STARTER_MAIN_TS);\n\n // run `zen generate`\n runCommand(`${agentExec} zen generate`, 'Running `zen generate`');\n\n // run `zen db push`\n runCommand(`${agentExec} zen db push`, 'Running `zen db push`');\n\n // run `$agent run dev`\n console.log(`Running \\`${agent} run dev\\``);\n execSync(`${agent} run dev`, { stdio: 'inherit' });\n console.log(colors.green('Project setup completed!'));\n}\n\nfunction installPackage(pkg: { name: string; dev: boolean }) {\n runCommand(`${agent} install ${pkg.name} ${pkg.dev ? saveDev : ''}`, `Installing \"${pkg.name}\"`);\n}\n\nfunction runCommand(cmd: string, status: string, stdio: StdioOptions = 'ignore') {\n const spinner = ora(status).start();\n try {\n execSync(cmd, { stdio });\n spinner.succeed();\n } catch (e) {\n spinner.fail();\n throw e;\n }\n}\n\nfunction createVsCodeConfig() {\n fs.mkdirSync('.vscode', { recursive: true });\n fs.writeFileSync(\n '.vscode/settings.json',\n JSON.stringify(\n {\n 'files.associations': {\n '*.zmodel': 'zmodel-v3',\n },\n },\n null,\n 4,\n ),\n );\n fs.writeFileSync('.vscode/extensions.json', JSON.stringify({ recommendations: ['zenstack.zenstack-v3'] }, null, 4));\n}\n","export const STARTER_ZMODEL = `// This is a sample model to get you started.\n\n/// A sample data source using local sqlite db.\ndatasource db {\n provider = 'sqlite'\n url = 'file:./dev.db'\n}\n\n/// User model\nmodel User {\n id String @id @default(cuid())\n email String @unique @email @length(6, 32)\n posts Post[]\n}\n\n/// Post model\nmodel Post {\n id String @id @default(cuid())\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n title String @length(1, 256)\n content String\n published Boolean @default(false)\n author User @relation(fields: [authorId], references: [id], onDelete: Cascade)\n authorId String\n}\n`;\n\nexport const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/orm';\nimport { SqliteDialect } from '@zenstackhq/orm/dialects/sqlite';\nimport SQLite from 'better-sqlite3';\nimport { schema } from './zenstack/schema';\n\nasync function main() {\n const db = new ZenStackClient(schema, {\n dialect: new SqliteDialect({\n database: new SQLite('./zenstack/dev.db'),\n }),\n });\n const user = await db.user.create({\n data: {\n email: 'test@zenstack.dev',\n posts: {\n create: [\n {\n title: 'Hello World',\n content: 'This is a test post',\n },\n ],\n },\n },\n include: { posts: true }\n });\n console.log('User created:', user);\n}\n\nmain();\n`;\n"],"mappings":"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","names":["STARTER_ZMODEL","STARTER_MAIN_TS","npmAgent","process","env","agent","agentExec","saveDev","includes","program","Command","arguments","action","projectName","initProject","parse","argv","name","fs","existsSync","console","log","colors","red","exit","mkdirSync","chdir","gray","writeFileSync","JSON","stringify","version","description","type","scripts","dev","license","createVsCodeConfig","packages","pkg","installPackage","compilerOptions","module","target","moduleResolution","sourceMap","outDir","strict","skipLibCheck","esModuleInterop","STARTER_ZMODEL","STARTER_MAIN_TS","runCommand","execSync","stdio","green","cmd","status","spinner","ora","start","succeed","e","fail","recursive","recommendations"]}
package/dist/index.js CHANGED
@@ -32,7 +32,7 @@ model Post {
32
32
  title String @length(1, 256)
33
33
  content String
34
34
  published Boolean @default(false)
35
- author User @relation(fields: [authorId], references: [id])
35
+ author User @relation(fields: [authorId], references: [id], onDelete: Cascade)
36
36
  authorId String
37
37
  }
38
38
  `;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../../cli/src/actions/templates.ts"],"sourcesContent":["import colors from 'colors';\nimport { Command } from 'commander';\nimport { execSync, type StdioOptions } from 'node:child_process';\nimport fs from 'node:fs';\nimport ora from 'ora';\nimport { STARTER_MAIN_TS, STARTER_ZMODEL } from './templates';\n\n// detect package manager\nconst npmAgent = process.env['npm_config_user_agent'];\nlet agent = 'npm';\nlet agentExec = 'npx';\nlet saveDev = '--save-dev';\n\nif (npmAgent?.includes('pnpm')) {\n agent = 'pnpm';\n agentExec = 'pnpm';\n} else if (npmAgent?.includes('yarn')) {\n agent = 'yarn';\n agentExec = 'npx';\n saveDev = '--dev';\n} else if (npmAgent?.includes('bun')) {\n agent = 'bun';\n agentExec = 'bun';\n}\n\nconst program = new Command('create-zenstack');\n\nprogram.arguments('<project-name>').action((projectName) => {\n initProject(projectName);\n});\n\nprogram.parse(process.argv);\n\nfunction initProject(name: string) {\n // create folder\n if (fs.existsSync(name)) {\n console.log(colors.red(`Directory ${name} already exists.`));\n process.exit(1);\n }\n fs.mkdirSync(name);\n process.chdir(name);\n\n console.log(colors.gray(`Using package manager: ${agent}`));\n\n // create package.json\n fs.writeFileSync(\n 'package.json',\n JSON.stringify(\n {\n name: 'zenstack-app',\n version: '1.0.0',\n description: 'Scaffolded with create-zenstack',\n type: 'module',\n scripts: {\n dev: 'tsx main.ts',\n },\n license: 'ISC',\n },\n null,\n 2,\n ),\n );\n\n // create VSCode config files\n createVsCodeConfig();\n\n // install packages\n const packages = [\n { name: '@zenstackhq/cli@next', dev: true },\n { name: '@zenstackhq/orm@next', dev: false },\n { name: 'better-sqlite3', dev: false },\n { name: '@types/better-sqlite3', dev: true },\n { name: 'typescript', dev: true },\n { name: 'tsx', dev: true },\n { name: '@types/node', dev: true },\n ];\n for (const pkg of packages) {\n installPackage(pkg);\n }\n\n // create tsconfig.json\n fs.writeFileSync(\n 'tsconfig.json',\n JSON.stringify(\n {\n compilerOptions: {\n module: 'esnext',\n target: 'esnext',\n moduleResolution: 'bundler',\n sourceMap: true,\n outDir: 'dist',\n strict: true,\n skipLibCheck: true,\n esModuleInterop: true,\n },\n },\n null,\n 2,\n ),\n );\n\n // create schema.zmodel\n fs.mkdirSync('zenstack');\n fs.writeFileSync('zenstack/schema.zmodel', STARTER_ZMODEL);\n\n // create main.ts\n fs.writeFileSync('main.ts', STARTER_MAIN_TS);\n\n // run `zen generate`\n runCommand(`${agentExec} zen generate`, 'Running `zen generate`');\n\n // run `zen db push`\n runCommand(`${agentExec} zen db push`, 'Running `zen db push`');\n\n // run `$agent run dev`\n console.log(`Running \\`${agent} run dev\\``);\n execSync(`${agent} run dev`, { stdio: 'inherit' });\n console.log(colors.green('Project setup completed!'));\n}\n\nfunction installPackage(pkg: { name: string; dev: boolean }) {\n runCommand(`${agent} install ${pkg.name} ${pkg.dev ? saveDev : ''}`, `Installing \"${pkg.name}\"`);\n}\n\nfunction runCommand(cmd: string, status: string, stdio: StdioOptions = 'ignore') {\n const spinner = ora(status).start();\n try {\n execSync(cmd, { stdio });\n spinner.succeed();\n } catch (e) {\n spinner.fail();\n throw e;\n }\n}\n\nfunction createVsCodeConfig() {\n fs.mkdirSync('.vscode', { recursive: true });\n fs.writeFileSync(\n '.vscode/settings.json',\n JSON.stringify(\n {\n 'files.associations': {\n '*.zmodel': 'zmodel-v3',\n },\n },\n null,\n 4,\n ),\n );\n fs.writeFileSync('.vscode/extensions.json', JSON.stringify({ recommendations: ['zenstack.zenstack-v3'] }, null, 4));\n}\n","export const STARTER_ZMODEL = `// This is a sample model to get you started.\n\n/// A sample data source using local sqlite db.\ndatasource db {\n provider = 'sqlite'\n url = 'file:./dev.db'\n}\n\n/// User model\nmodel User {\n id String @id @default(cuid())\n email String @unique @email @length(6, 32)\n posts Post[]\n}\n\n/// Post model\nmodel Post {\n id String @id @default(cuid())\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n title String @length(1, 256)\n content String\n published Boolean @default(false)\n author User @relation(fields: [authorId], references: [id])\n authorId String\n}\n`;\n\nexport const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/orm';\nimport { SqliteDialect } from '@zenstackhq/orm/dialects/sqlite';\nimport SQLite from 'better-sqlite3';\nimport { schema } from './zenstack/schema';\n\nasync function main() {\n const db = new ZenStackClient(schema, {\n dialect: new SqliteDialect({\n database: new SQLite('./zenstack/dev.db'),\n }),\n });\n const user = await db.user.create({\n data: {\n email: 'test@zenstack.dev',\n posts: {\n create: [\n {\n title: 'Hello World',\n content: 'This is a test post',\n },\n ],\n },\n },\n include: { posts: true }\n });\n console.log('User created:', user);\n}\n\nmain();\n`;\n"],"mappings":"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","names":["colors","Command","execSync","fs","ora","STARTER_ZMODEL","STARTER_MAIN_TS","npmAgent","process","env","agent","agentExec","saveDev","includes","program","Command","arguments","action","projectName","initProject","parse","argv","name","fs","existsSync","console","log","colors","red","exit","mkdirSync","chdir","gray","writeFileSync","JSON","stringify","version","description","type","scripts","dev","license","createVsCodeConfig","packages","pkg","installPackage","compilerOptions","module","target","moduleResolution","sourceMap","outDir","strict","skipLibCheck","esModuleInterop","STARTER_ZMODEL","STARTER_MAIN_TS","runCommand","execSync","stdio","green","cmd","status","spinner","ora","start","succeed","e","fail","recursive","recommendations"]}
1
+ {"version":3,"sources":["../src/index.ts","../../cli/src/actions/templates.ts"],"sourcesContent":["import colors from 'colors';\nimport { Command } from 'commander';\nimport { execSync, type StdioOptions } from 'node:child_process';\nimport fs from 'node:fs';\nimport ora from 'ora';\nimport { STARTER_MAIN_TS, STARTER_ZMODEL } from './templates';\n\n// detect package manager\nconst npmAgent = process.env['npm_config_user_agent'];\nlet agent = 'npm';\nlet agentExec = 'npx';\nlet saveDev = '--save-dev';\n\nif (npmAgent?.includes('pnpm')) {\n agent = 'pnpm';\n agentExec = 'pnpm';\n} else if (npmAgent?.includes('yarn')) {\n agent = 'yarn';\n agentExec = 'npx';\n saveDev = '--dev';\n} else if (npmAgent?.includes('bun')) {\n agent = 'bun';\n agentExec = 'bun';\n}\n\nconst program = new Command('create-zenstack');\n\nprogram.arguments('<project-name>').action((projectName) => {\n initProject(projectName);\n});\n\nprogram.parse(process.argv);\n\nfunction initProject(name: string) {\n // create folder\n if (fs.existsSync(name)) {\n console.log(colors.red(`Directory ${name} already exists.`));\n process.exit(1);\n }\n fs.mkdirSync(name);\n process.chdir(name);\n\n console.log(colors.gray(`Using package manager: ${agent}`));\n\n // create package.json\n fs.writeFileSync(\n 'package.json',\n JSON.stringify(\n {\n name: 'zenstack-app',\n version: '1.0.0',\n description: 'Scaffolded with create-zenstack',\n type: 'module',\n scripts: {\n dev: 'tsx main.ts',\n },\n license: 'ISC',\n },\n null,\n 2,\n ),\n );\n\n // create VSCode config files\n createVsCodeConfig();\n\n // install packages\n const packages = [\n { name: '@zenstackhq/cli@next', dev: true },\n { name: '@zenstackhq/orm@next', dev: false },\n { name: 'better-sqlite3', dev: false },\n { name: '@types/better-sqlite3', dev: true },\n { name: 'typescript', dev: true },\n { name: 'tsx', dev: true },\n { name: '@types/node', dev: true },\n ];\n for (const pkg of packages) {\n installPackage(pkg);\n }\n\n // create tsconfig.json\n fs.writeFileSync(\n 'tsconfig.json',\n JSON.stringify(\n {\n compilerOptions: {\n module: 'esnext',\n target: 'esnext',\n moduleResolution: 'bundler',\n sourceMap: true,\n outDir: 'dist',\n strict: true,\n skipLibCheck: true,\n esModuleInterop: true,\n },\n },\n null,\n 2,\n ),\n );\n\n // create schema.zmodel\n fs.mkdirSync('zenstack');\n fs.writeFileSync('zenstack/schema.zmodel', STARTER_ZMODEL);\n\n // create main.ts\n fs.writeFileSync('main.ts', STARTER_MAIN_TS);\n\n // run `zen generate`\n runCommand(`${agentExec} zen generate`, 'Running `zen generate`');\n\n // run `zen db push`\n runCommand(`${agentExec} zen db push`, 'Running `zen db push`');\n\n // run `$agent run dev`\n console.log(`Running \\`${agent} run dev\\``);\n execSync(`${agent} run dev`, { stdio: 'inherit' });\n console.log(colors.green('Project setup completed!'));\n}\n\nfunction installPackage(pkg: { name: string; dev: boolean }) {\n runCommand(`${agent} install ${pkg.name} ${pkg.dev ? saveDev : ''}`, `Installing \"${pkg.name}\"`);\n}\n\nfunction runCommand(cmd: string, status: string, stdio: StdioOptions = 'ignore') {\n const spinner = ora(status).start();\n try {\n execSync(cmd, { stdio });\n spinner.succeed();\n } catch (e) {\n spinner.fail();\n throw e;\n }\n}\n\nfunction createVsCodeConfig() {\n fs.mkdirSync('.vscode', { recursive: true });\n fs.writeFileSync(\n '.vscode/settings.json',\n JSON.stringify(\n {\n 'files.associations': {\n '*.zmodel': 'zmodel-v3',\n },\n },\n null,\n 4,\n ),\n );\n fs.writeFileSync('.vscode/extensions.json', JSON.stringify({ recommendations: ['zenstack.zenstack-v3'] }, null, 4));\n}\n","export const STARTER_ZMODEL = `// This is a sample model to get you started.\n\n/// A sample data source using local sqlite db.\ndatasource db {\n provider = 'sqlite'\n url = 'file:./dev.db'\n}\n\n/// User model\nmodel User {\n id String @id @default(cuid())\n email String @unique @email @length(6, 32)\n posts Post[]\n}\n\n/// Post model\nmodel Post {\n id String @id @default(cuid())\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n title String @length(1, 256)\n content String\n published Boolean @default(false)\n author User @relation(fields: [authorId], references: [id], onDelete: Cascade)\n authorId String\n}\n`;\n\nexport const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/orm';\nimport { SqliteDialect } from '@zenstackhq/orm/dialects/sqlite';\nimport SQLite from 'better-sqlite3';\nimport { schema } from './zenstack/schema';\n\nasync function main() {\n const db = new ZenStackClient(schema, {\n dialect: new SqliteDialect({\n database: new SQLite('./zenstack/dev.db'),\n }),\n });\n const user = await db.user.create({\n data: {\n email: 'test@zenstack.dev',\n posts: {\n create: [\n {\n title: 'Hello World',\n content: 'This is a test post',\n },\n ],\n },\n },\n include: { posts: true }\n });\n console.log('User created:', user);\n}\n\nmain();\n`;\n"],"mappings":";;;;AAAA,OAAOA,YAAY;AACnB,SAASC,eAAe;AACxB,SAASC,gBAAmC;AAC5C,OAAOC,QAAQ;AACf,OAAOC,SAAS;;;ACJT,IAAMC,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BvB,IAAMC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ADpB/B,IAAMC,WAAWC,QAAQC,IAAI,uBAAA;AAC7B,IAAIC,QAAQ;AACZ,IAAIC,YAAY;AAChB,IAAIC,UAAU;AAEd,IAAIL,UAAUM,SAAS,MAAA,GAAS;AAC5BH,UAAQ;AACRC,cAAY;AAChB,WAAWJ,UAAUM,SAAS,MAAA,GAAS;AACnCH,UAAQ;AACRC,cAAY;AACZC,YAAU;AACd,WAAWL,UAAUM,SAAS,KAAA,GAAQ;AAClCH,UAAQ;AACRC,cAAY;AAChB;AAEA,IAAMG,UAAU,IAAIC,QAAQ,iBAAA;AAE5BD,QAAQE,UAAU,gBAAA,EAAkBC,OAAO,CAACC,gBAAAA;AACxCC,cAAYD,WAAAA;AAChB,CAAA;AAEAJ,QAAQM,MAAMZ,QAAQa,IAAI;AAE1B,SAASF,YAAYG,MAAY;AAE7B,MAAIC,GAAGC,WAAWF,IAAAA,GAAO;AACrBG,YAAQC,IAAIC,OAAOC,IAAI,aAAaN,IAAAA,kBAAsB,CAAA;AAC1Dd,YAAQqB,KAAK,CAAA;EACjB;AACAN,KAAGO,UAAUR,IAAAA;AACbd,UAAQuB,MAAMT,IAAAA;AAEdG,UAAQC,IAAIC,OAAOK,KAAK,0BAA0BtB,KAAAA,EAAO,CAAA;AAGzDa,KAAGU,cACC,gBACAC,KAAKC,UACD;IACIb,MAAM;IACNc,SAAS;IACTC,aAAa;IACbC,MAAM;IACNC,SAAS;MACLC,KAAK;IACT;IACAC,SAAS;EACb,GACA,MACA,CAAA,CAAA;AAKRC,qBAAAA;AAGA,QAAMC,WAAW;IACb;MAAErB,MAAM;MAAwBkB,KAAK;IAAK;IAC1C;MAAElB,MAAM;MAAwBkB,KAAK;IAAM;IAC3C;MAAElB,MAAM;MAAkBkB,KAAK;IAAM;IACrC;MAAElB,MAAM;MAAyBkB,KAAK;IAAK;IAC3C;MAAElB,MAAM;MAAckB,KAAK;IAAK;IAChC;MAAElB,MAAM;MAAOkB,KAAK;IAAK;IACzB;MAAElB,MAAM;MAAekB,KAAK;IAAK;;AAErC,aAAWI,OAAOD,UAAU;AACxBE,mBAAeD,GAAAA;EACnB;AAGArB,KAAGU,cACC,iBACAC,KAAKC,UACD;IACIW,iBAAiB;MACbC,QAAQ;MACRC,QAAQ;MACRC,kBAAkB;MAClBC,WAAW;MACXC,QAAQ;MACRC,QAAQ;MACRC,cAAc;MACdC,iBAAiB;IACrB;EACJ,GACA,MACA,CAAA,CAAA;AAKR/B,KAAGO,UAAU,UAAA;AACbP,KAAGU,cAAc,0BAA0BsB,cAAAA;AAG3ChC,KAAGU,cAAc,WAAWuB,eAAAA;AAG5BC,aAAW,GAAG9C,SAAAA,iBAA0B,wBAAA;AAGxC8C,aAAW,GAAG9C,SAAAA,gBAAyB,uBAAA;AAGvCc,UAAQC,IAAI,aAAahB,KAAAA,YAAiB;AAC1CgD,WAAS,GAAGhD,KAAAA,YAAiB;IAAEiD,OAAO;EAAU,CAAA;AAChDlC,UAAQC,IAAIC,OAAOiC,MAAM,0BAAA,CAAA;AAC7B;AArFSzC;AAuFT,SAAS0B,eAAeD,KAAmC;AACvDa,aAAW,GAAG/C,KAAAA,YAAiBkC,IAAItB,IAAI,IAAIsB,IAAIJ,MAAM5B,UAAU,EAAA,IAAM,eAAegC,IAAItB,IAAI,GAAG;AACnG;AAFSuB;AAIT,SAASY,WAAWI,KAAaC,QAAgBH,QAAsB,UAAQ;AAC3E,QAAMI,UAAUC,IAAIF,MAAAA,EAAQG,MAAK;AACjC,MAAI;AACAP,aAASG,KAAK;MAAEF;IAAM,CAAA;AACtBI,YAAQG,QAAO;EACnB,SAASC,GAAG;AACRJ,YAAQK,KAAI;AACZ,UAAMD;EACV;AACJ;AATSV;AAWT,SAASf,qBAAAA;AACLnB,KAAGO,UAAU,WAAW;IAAEuC,WAAW;EAAK,CAAA;AAC1C9C,KAAGU,cACC,yBACAC,KAAKC,UACD;IACI,sBAAsB;MAClB,YAAY;IAChB;EACJ,GACA,MACA,CAAA,CAAA;AAGRZ,KAAGU,cAAc,2BAA2BC,KAAKC,UAAU;IAAEmC,iBAAiB;MAAC;;EAAwB,GAAG,MAAM,CAAA,CAAA;AACpH;AAfS5B;","names":["colors","Command","execSync","fs","ora","STARTER_ZMODEL","STARTER_MAIN_TS","npmAgent","process","env","agent","agentExec","saveDev","includes","program","Command","arguments","action","projectName","initProject","parse","argv","name","fs","existsSync","console","log","colors","red","exit","mkdirSync","chdir","gray","writeFileSync","JSON","stringify","version","description","type","scripts","dev","license","createVsCodeConfig","packages","pkg","installPackage","compilerOptions","module","target","moduleResolution","sourceMap","outDir","strict","skipLibCheck","esModuleInterop","STARTER_ZMODEL","STARTER_MAIN_TS","runCommand","execSync","stdio","green","cmd","status","spinner","ora","start","succeed","e","fail","recursive","recommendations"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-zenstack",
3
- "version": "3.0.0-beta.31",
3
+ "version": "3.0.0-beta.32",
4
4
  "description": "Create a new ZenStack project",
5
5
  "type": "module",
6
6
  "keywords": [],
@@ -30,8 +30,8 @@
30
30
  "ora": "^5.4.1"
31
31
  },
32
32
  "devDependencies": {
33
- "@zenstackhq/eslint-config": "3.0.0-beta.31",
34
- "@zenstackhq/typescript-config": "3.0.0-beta.31"
33
+ "@zenstackhq/eslint-config": "3.0.0-beta.32",
34
+ "@zenstackhq/typescript-config": "3.0.0-beta.32"
35
35
  },
36
36
  "scripts": {
37
37
  "build": "tsc --noEmit && tsup-node",