@idealyst/cli 1.0.41 → 1.0.43

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.
Files changed (78) hide show
  1. package/dist/generators/api.js +1 -2
  2. package/dist/generators/api.js.map +1 -1
  3. package/dist/generators/database.js +1 -2
  4. package/dist/generators/database.js.map +1 -1
  5. package/dist/generators/fullstack.js +371 -0
  6. package/dist/generators/fullstack.js.map +1 -0
  7. package/dist/generators/index.js +5 -0
  8. package/dist/generators/index.js.map +1 -1
  9. package/dist/generators/native.js +2 -1
  10. package/dist/generators/native.js.map +1 -1
  11. package/dist/generators/shared.js +1 -2
  12. package/dist/generators/shared.js.map +1 -1
  13. package/dist/generators/utils.js +71 -7
  14. package/dist/generators/utils.js.map +1 -1
  15. package/dist/generators/web.js +1 -2
  16. package/dist/generators/web.js.map +1 -1
  17. package/dist/generators/workspace.js +56 -2
  18. package/dist/generators/workspace.js.map +1 -1
  19. package/dist/index.js +50 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/templates/database/.env.example +1 -8
  22. package/dist/templates/database/README.md +29 -74
  23. package/dist/templates/database/package.json +20 -34
  24. package/dist/templates/database/prisma/seed.ts +11 -11
  25. package/dist/templates/database/schema.prisma +97 -0
  26. package/dist/templates/database/src/index.ts +12 -8
  27. package/dist/templates/database/tsconfig.json +9 -23
  28. package/dist/templates/native/src/App-with-trpc-and-shared.tsx +266 -0
  29. package/dist/templates/shared/package.json +28 -3
  30. package/dist/templates/shared/src/components/index.ts +392 -0
  31. package/dist/templates/shared/src/index.ts +59 -1
  32. package/dist/templates/shared/src/types/index.ts +148 -0
  33. package/dist/templates/shared/src/utils/index.ts +278 -0
  34. package/dist/templates/web/package.json +2 -2
  35. package/dist/templates/web/src/App-with-trpc-and-shared.tsx +304 -0
  36. package/dist/templates/workspace/.devcontainer/Dockerfile +1 -1
  37. package/dist/templates/workspace/.devcontainer/devcontainer.json +7 -2
  38. package/dist/templates/workspace/.devcontainer/docker-compose.yml +14 -0
  39. package/dist/templates/workspace/.devcontainer/figma-mcp.sh +32 -0
  40. package/dist/templates/workspace/.devcontainer/setup.sh +3 -0
  41. package/dist/templates/workspace/setup.sh +22 -197
  42. package/dist/templates/workspace/tsconfig.json +32 -0
  43. package/dist/types/generators/fullstack.d.ts +2 -0
  44. package/dist/types/generators/index.d.ts +1 -0
  45. package/dist/types/generators/utils.d.ts +4 -1
  46. package/dist/types/types.d.ts +3 -1
  47. package/package.json +1 -1
  48. package/templates/database/.env.example +1 -0
  49. package/templates/database/README.md +48 -0
  50. package/templates/database/package.json +21 -2
  51. package/templates/database/prisma/seed.ts +28 -0
  52. package/templates/database/schema.prisma +85 -9
  53. package/templates/database/src/index.ts +7 -7
  54. package/templates/database/src/validators.ts +10 -0
  55. package/templates/native/src/App-with-trpc-and-shared.tsx +266 -0
  56. package/templates/shared/package.json +28 -3
  57. package/templates/shared/src/components/index.ts +392 -0
  58. package/templates/shared/src/index.ts +59 -1
  59. package/templates/shared/src/types/index.ts +148 -0
  60. package/templates/shared/src/utils/index.ts +278 -0
  61. package/templates/web/package.json +1 -1
  62. package/templates/web/src/App-with-trpc-and-shared.tsx +304 -0
  63. package/templates/workspace/.devcontainer/devcontainer.json +7 -2
  64. package/templates/workspace/.devcontainer/docker-compose.yml +14 -0
  65. package/templates/workspace/.devcontainer/figma-mcp.sh +32 -0
  66. package/templates/workspace/.devcontainer/setup.sh +3 -0
  67. package/templates/workspace/setup.sh +30 -0
  68. package/templates/workspace/tsconfig.json +32 -0
  69. package/dist/templates/database/__tests__/database.test.ts +0 -14
  70. package/dist/templates/database/jest.config.js +0 -19
  71. package/dist/templates/database/jest.setup.js +0 -11
  72. package/dist/templates/database/prisma/schema.prisma +0 -21
  73. package/dist/templates/database/src/client.ts +0 -18
  74. package/dist/templates/database/src/schemas.ts +0 -26
  75. package/dist/templates/workspace/scripts/docker/db-backup.sh +0 -230
  76. package/dist/templates/workspace/scripts/docker/deploy.sh +0 -212
  77. package/dist/templates/workspace/scripts/test-runner.js +0 -120
  78. /package/{templates/database/src/validatgors.ts → dist/templates/database/src/validators.ts} +0 -0
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateApiProject = generateApiProject;
7
- const path_1 = __importDefault(require("path"));
8
7
  const chalk_1 = __importDefault(require("chalk"));
9
8
  const utils_1 = require("./utils");
10
9
  async function generateApiProject(options) {
@@ -14,7 +13,7 @@ async function generateApiProject(options) {
14
13
  }
15
14
  console.log(chalk_1.default.blue(`🚀 Creating API project: ${name}`));
16
15
  const { projectPath, workspacePath, workspaceScope } = await (0, utils_1.resolveProjectPath)(name, directory);
17
- const templatePath = path_1.default.join(__dirname, '..', 'templates', 'api');
16
+ const templatePath = (0, utils_1.getTemplatePath)('api');
18
17
  const templateData = (0, utils_1.getTemplateData)(name, `API server template with tRPC and Express`, undefined, workspaceScope || undefined);
19
18
  await (0, utils_1.copyTemplate)(templatePath, projectPath, templateData);
20
19
  await (0, utils_1.installDependencies)(projectPath, skipInstall);
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/generators/api.ts"],"names":[],"mappings":";;;;;AAKA,gDA2BC;AAhCD,gDAAwB;AACxB,kDAA0B;AAE1B,mCAAkJ;AAE3I,KAAK,UAAU,kBAAkB,CAAC,OAA+B;IACtE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IAEpE,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,2CAA2C,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAEhI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/generators/api.ts"],"names":[],"mappings":";;;;;AAKA,gDA2BC;AA/BD,kDAA0B;AAE1B,mCAAmK;AAE5J,KAAK,UAAU,kBAAkB,CAAC,OAA+B;IACtE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,2CAA2C,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAEhI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;AAClE,CAAC"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateDatabaseProject = generateDatabaseProject;
7
- const path_1 = __importDefault(require("path"));
8
7
  const chalk_1 = __importDefault(require("chalk"));
9
8
  const utils_1 = require("./utils");
10
9
  async function generateDatabaseProject(options) {
@@ -14,7 +13,7 @@ async function generateDatabaseProject(options) {
14
13
  }
15
14
  console.log(chalk_1.default.blue(`🗄️ Creating Database project: ${name}`));
16
15
  const { projectPath, workspacePath, workspaceScope } = await (0, utils_1.resolveProjectPath)(name, directory);
17
- const templatePath = path_1.default.join(__dirname, '..', 'templates', 'database');
16
+ const templatePath = (0, utils_1.getTemplatePath)('database');
18
17
  const templateData = (0, utils_1.getTemplateData)(name, `Database models and client library with Prisma`, undefined, workspaceScope || undefined);
19
18
  await (0, utils_1.copyTemplate)(templatePath, projectPath, templateData);
20
19
  await (0, utils_1.installDependencies)(projectPath, skipInstall);
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/generators/database.ts"],"names":[],"mappings":";;;;;AAKA,0DA2BC;AAhCD,gDAAwB;AACxB,kDAA0B;AAE1B,mCAAkJ;AAE3I,KAAK,UAAU,uBAAuB,CAAC,OAA+B;IAC3E,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,IAAI,EAAE,CAAC,CAAC,CAAC;IAElE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAEzE,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,gDAAgD,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAErI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/generators/database.ts"],"names":[],"mappings":";;;;;AAKA,0DA2BC;AA/BD,kDAA0B;AAE1B,mCAAmK;AAE5J,KAAK,UAAU,uBAAuB,CAAC,OAA+B;IAC3E,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,IAAI,EAAE,CAAC,CAAC,CAAC;IAElE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,gDAAgD,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAErI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,371 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateFullStackWorkspace = generateFullStackWorkspace;
7
+ const path_1 = __importDefault(require("path"));
8
+ const fs_extra_1 = __importDefault(require("fs-extra"));
9
+ const chalk_1 = __importDefault(require("chalk"));
10
+ const utils_1 = require("./utils");
11
+ const database_1 = require("./database");
12
+ const api_1 = require("./api");
13
+ const web_1 = require("./web");
14
+ const native_1 = require("./native");
15
+ const shared_1 = require("./shared");
16
+ async function generateFullStackWorkspace(options) {
17
+ const { name, directory, skipInstall, figmaToken } = options;
18
+ if (!(0, utils_1.validateProjectName)(name)) {
19
+ throw new Error(`Invalid project name: ${name}`);
20
+ }
21
+ console.log(chalk_1.default.blue(`🚀 Creating Full-Stack Idealyst workspace: ${name}`));
22
+ console.log(chalk_1.default.gray(' This will generate a comhttps://open.spotify.com/track/0jVTol3hCYkU8NVVtMQjUS?si=f76828854a174463plete workspace with all packages integrated'));
23
+ const projectPath = path_1.default.join(directory, name);
24
+ const templatePath = (0, utils_1.getTemplatePath)('workspace');
25
+ const templateData = (0, utils_1.getTemplateData)(name, `Full-stack Idealyst Framework workspace`, undefined, name);
26
+ // Step 1: Create base workspace
27
+ console.log(chalk_1.default.blue('📦 Setting up workspace structure...'));
28
+ await (0, utils_1.copyTemplate)(templatePath, projectPath, templateData);
29
+ // Handle devcontainer setup
30
+ const devcontainerDir = path_1.default.join(projectPath, '.devcontainer');
31
+ const envPath = path_1.default.join(devcontainerDir, '.env');
32
+ const envContent = figmaToken
33
+ ? `# Figma Integration\nFIGMA_ACCESS_TOKEN=${figmaToken.trim()}\n`
34
+ : `# Figma Integration\nFIGMA_ACCESS_TOKEN=\n`;
35
+ await require('fs-extra').writeFile(envPath, envContent);
36
+ // Step 2: Generate all packages with integration
37
+ console.log(chalk_1.default.blue('🗄️ Creating database package...'));
38
+ await (0, database_1.generateDatabaseProject)({
39
+ name: 'database',
40
+ type: 'database',
41
+ directory: projectPath,
42
+ skipInstall: true
43
+ });
44
+ console.log(chalk_1.default.blue('🚀 Creating API server...'));
45
+ await (0, api_1.generateApiProject)({
46
+ name: 'api',
47
+ type: 'api',
48
+ directory: projectPath,
49
+ skipInstall: true,
50
+ withTrpc: true
51
+ });
52
+ console.log(chalk_1.default.blue('📦 Creating shared components...'));
53
+ await (0, shared_1.generateSharedLibrary)({
54
+ name: 'shared',
55
+ type: 'shared',
56
+ directory: projectPath,
57
+ skipInstall: true
58
+ });
59
+ console.log(chalk_1.default.blue('🌐 Creating web application...'));
60
+ await (0, web_1.generateWebProject)({
61
+ name: 'web',
62
+ type: 'web',
63
+ directory: projectPath,
64
+ skipInstall: true,
65
+ withTrpc: true
66
+ });
67
+ console.log(chalk_1.default.blue('📱 Creating mobile application...'));
68
+ await (0, native_1.generateNativeProject)({
69
+ name: 'mobile',
70
+ type: 'native',
71
+ directory: projectPath,
72
+ skipInstall: true,
73
+ appName: templateData.appName || name,
74
+ withTrpc: true
75
+ });
76
+ // Step 3: Create integration files and update app files
77
+ console.log(chalk_1.default.blue('🔗 Setting up package integration...'));
78
+ await setupPackageIntegration(projectPath, templateData);
79
+ await updateAppFilesWithSharedComponents(projectPath, templateData);
80
+ // Step 4: Install dependencies
81
+ await (0, utils_1.installDependencies)(projectPath, skipInstall);
82
+ console.log(chalk_1.default.green('✅ Full-stack workspace created successfully!'));
83
+ console.log(chalk_1.default.blue('📋 Your workspace includes:'));
84
+ console.log(chalk_1.default.white(' • 🗄️ Database package with Prisma'));
85
+ console.log(chalk_1.default.white(' • 🚀 API server with tRPC'));
86
+ console.log(chalk_1.default.white(' • 🌐 React web app'));
87
+ console.log(chalk_1.default.white(' • 📱 React Native mobile app'));
88
+ console.log(chalk_1.default.white(' • 📦 Shared component library'));
89
+ console.log(chalk_1.default.white(' • 🔗 All packages pre-integrated'));
90
+ console.log(chalk_1.default.white(' • 📊 Sample data and demo features'));
91
+ console.log('');
92
+ console.log(chalk_1.default.green('🚀 Quick start:'));
93
+ console.log(chalk_1.default.white(` cd ${name}`));
94
+ console.log(chalk_1.default.white(' yarn dev # Start all development servers'));
95
+ console.log(chalk_1.default.white(' yarn web # Start web app only'));
96
+ console.log(chalk_1.default.white(' yarn mobile # Start mobile app'));
97
+ console.log(chalk_1.default.white(' yarn api # Start API server only'));
98
+ console.log('');
99
+ console.log(chalk_1.default.gray('💡 Check README.md for detailed setup instructions'));
100
+ if (figmaToken) {
101
+ console.log(chalk_1.default.blue('🎨 Figma integration configured in .devcontainer/.env'));
102
+ }
103
+ else {
104
+ console.log(chalk_1.default.gray('💡 Tip: Add Figma integration later by editing .devcontainer/.env'));
105
+ }
106
+ }
107
+ /**
108
+ * Updates App files to use enhanced versions with shared components
109
+ */
110
+ async function updateAppFilesWithSharedComponents(projectPath, templateData) {
111
+ const templateDir = (0, utils_1.getTemplatePath)('web');
112
+ // Update web App.tsx with enhanced version
113
+ const webAppSourcePath = path_1.default.join(templateDir, '..', 'web', 'src', 'App-with-trpc-and-shared.tsx');
114
+ const webAppTargetPath = path_1.default.join(projectPath, 'packages', 'web', 'src', 'App.tsx');
115
+ if (await fs_extra_1.default.pathExists(webAppSourcePath)) {
116
+ let webAppContent = await fs_extra_1.default.readFile(webAppSourcePath, 'utf8');
117
+ // Simple template variable replacement
118
+ webAppContent = webAppContent.replace(/\{\{workspaceScope\}\}/g, templateData.workspaceScope || templateData.projectName);
119
+ webAppContent = webAppContent.replace(/\{\{projectName\}\}/g, templateData.projectName);
120
+ webAppContent = webAppContent.replace(/\{\{appName\}\}/g, templateData.appName || templateData.projectName);
121
+ await fs_extra_1.default.writeFile(webAppTargetPath, webAppContent);
122
+ }
123
+ // Update native App.tsx with enhanced version
124
+ const nativeAppSourcePath = path_1.default.join(templateDir, '..', 'native', 'src', 'App-with-trpc-and-shared.tsx');
125
+ const nativeAppTargetPath = path_1.default.join(projectPath, 'packages', 'mobile', 'src', 'App.tsx');
126
+ if (await fs_extra_1.default.pathExists(nativeAppSourcePath)) {
127
+ let nativeAppContent = await fs_extra_1.default.readFile(nativeAppSourcePath, 'utf8');
128
+ // Simple template variable replacement
129
+ nativeAppContent = nativeAppContent.replace(/\{\{workspaceScope\}\}/g, templateData.workspaceScope || templateData.projectName);
130
+ nativeAppContent = nativeAppContent.replace(/\{\{projectName\}\}/g, templateData.projectName);
131
+ nativeAppContent = nativeAppContent.replace(/\{\{appName\}\}/g, templateData.appName || templateData.projectName);
132
+ await fs_extra_1.default.writeFile(nativeAppTargetPath, nativeAppContent);
133
+ }
134
+ // Update package.json files to include shared dependencies
135
+ await updatePackageJsonWithSharedDeps(projectPath, templateData.workspaceScope || templateData.projectName);
136
+ }
137
+ /**
138
+ * Updates package.json files to include shared and database dependencies
139
+ */
140
+ async function updatePackageJsonWithSharedDeps(projectPath, workspaceScope) {
141
+ // Update web package.json
142
+ const webPackageJsonPath = path_1.default.join(projectPath, 'packages', 'web', 'package.json');
143
+ if (await fs_extra_1.default.pathExists(webPackageJsonPath)) {
144
+ const webPackageJson = await fs_extra_1.default.readJSON(webPackageJsonPath);
145
+ webPackageJson.dependencies = {
146
+ ...webPackageJson.dependencies,
147
+ [`@${workspaceScope}/shared`]: 'workspace:*',
148
+ [`@${workspaceScope}/database`]: 'workspace:*'
149
+ };
150
+ await fs_extra_1.default.writeJSON(webPackageJsonPath, webPackageJson, { spaces: 2 });
151
+ }
152
+ // Update native package.json
153
+ const nativePackageJsonPath = path_1.default.join(projectPath, 'packages', 'mobile', 'package.json');
154
+ if (await fs_extra_1.default.pathExists(nativePackageJsonPath)) {
155
+ const nativePackageJson = await fs_extra_1.default.readJSON(nativePackageJsonPath);
156
+ nativePackageJson.dependencies = {
157
+ ...nativePackageJson.dependencies,
158
+ [`@${workspaceScope}/shared`]: 'workspace:*',
159
+ [`@${workspaceScope}/database`]: 'workspace:*'
160
+ };
161
+ await fs_extra_1.default.writeJSON(nativePackageJsonPath, nativePackageJson, { spaces: 2 });
162
+ }
163
+ // Update API package.json
164
+ const apiPackageJsonPath = path_1.default.join(projectPath, 'packages', 'api', 'package.json');
165
+ if (await fs_extra_1.default.pathExists(apiPackageJsonPath)) {
166
+ const apiPackageJson = await fs_extra_1.default.readJSON(apiPackageJsonPath);
167
+ apiPackageJson.dependencies = {
168
+ ...apiPackageJson.dependencies,
169
+ [`@${workspaceScope}/database`]: 'workspace:*',
170
+ [`@${workspaceScope}/shared`]: 'workspace:*'
171
+ };
172
+ await fs_extra_1.default.writeJSON(apiPackageJsonPath, apiPackageJson, { spaces: 2 });
173
+ }
174
+ }
175
+ async function setupPackageIntegration(workspacePath, templateData) {
176
+ const fs = require('fs-extra');
177
+ // Update workspace package.json with integrated scripts
178
+ const workspacePackageJsonPath = path_1.default.join(workspacePath, 'package.json');
179
+ const workspacePackageJson = await fs.readJSON(workspacePackageJsonPath);
180
+ workspacePackageJson.scripts = {
181
+ ...workspacePackageJson.scripts,
182
+ "dev": "concurrently \"yarn api:dev\" \"yarn web:dev\" \"yarn mobile:start\"",
183
+ "build": "yarn build:packages && yarn api:build && yarn web:build",
184
+ "build:packages": `yarn workspace @${templateData.workspaceScope}/database build && yarn workspace @${templateData.workspaceScope}/shared build`,
185
+ "api:dev": `yarn workspace @${templateData.workspaceScope}/api dev`,
186
+ "api:build": `yarn workspace @${templateData.workspaceScope}/api build`,
187
+ "web:dev": `yarn workspace @${templateData.workspaceScope}/web dev`,
188
+ "web:build": `yarn workspace @${templateData.workspaceScope}/web build`,
189
+ "mobile:start": `yarn workspace @${templateData.workspaceScope}/mobile start`,
190
+ "mobile:android": `yarn workspace @${templateData.workspaceScope}/mobile android`,
191
+ "mobile:ios": `yarn workspace @${templateData.workspaceScope}/mobile ios`,
192
+ "db:generate": `yarn workspace @${templateData.workspaceScope}/database db:generate`,
193
+ "db:push": `yarn workspace @${templateData.workspaceScope}/database db:push`,
194
+ "db:migrate": `yarn workspace @${templateData.workspaceScope}/database db:migrate`,
195
+ "db:studio": `yarn workspace @${templateData.workspaceScope}/database db:studio`,
196
+ "test": "yarn workspaces run test",
197
+ "type-check": "yarn workspaces run type-check"
198
+ };
199
+ // Add development dependencies for the workspace
200
+ workspacePackageJson.devDependencies = {
201
+ ...workspacePackageJson.devDependencies,
202
+ "concurrently": "^8.2.2"
203
+ };
204
+ await fs.writeJSON(workspacePackageJsonPath, workspacePackageJson, { spaces: 2 });
205
+ // Create integrated README with quick start guide
206
+ await createIntegratedReadme(workspacePath, templateData);
207
+ }
208
+ async function createIntegratedReadme(workspacePath, templateData) {
209
+ const fs = require('fs-extra');
210
+ const readmePath = path_1.default.join(workspacePath, 'README.md');
211
+ const readmeContent = `# ${templateData.projectName}
212
+
213
+ A full-stack application built with the Idealyst Framework.
214
+
215
+ ## 🏗️ Architecture
216
+
217
+ This workspace contains a complete full-stack application with:
218
+
219
+ - **📱 Mobile App** (\`packages/mobile\`) - React Native app with Idealyst components
220
+ - **🌐 Web App** (\`packages/web\`) - React web app with Idealyst components
221
+ - **🚀 API Server** (\`packages/api\`) - tRPC API server with Express
222
+ - **🗄️ Database** (\`packages/database\`) - Prisma database layer with PostgreSQL
223
+ - **📦 Shared** (\`packages/shared\`) - Cross-platform shared components and utilities
224
+
225
+ All packages are pre-integrated and work together seamlessly.
226
+
227
+ ## 🚀 Quick Start
228
+
229
+ ### Prerequisites
230
+ - Node.js 18+
231
+ - Yarn 3+
232
+ - PostgreSQL (or use Docker)
233
+
234
+ ### Setup
235
+ \`\`\`bash
236
+ # Install dependencies
237
+ yarn install
238
+
239
+ # Set up environment variables
240
+ cp packages/api/.env.example packages/api/.env
241
+ cp packages/database/.env.example packages/database/.env
242
+ # Edit .env files with your database URL
243
+
244
+ # Generate database client
245
+ yarn db:generate
246
+
247
+ # Push database schema
248
+ yarn db:push
249
+
250
+ # Start all development servers
251
+ yarn dev
252
+ \`\`\`
253
+
254
+ This will start:
255
+ - 🌐 Web app at http://localhost:3000
256
+ - 🚀 API server at http://localhost:3001
257
+ - 📱 Mobile app (Metro bundler)
258
+
259
+ ### Individual Commands
260
+
261
+ \`\`\`bash
262
+ # Web development
263
+ yarn web:dev # Start web app
264
+ yarn web:build # Build web app
265
+
266
+ # Mobile development
267
+ yarn mobile:start # Start Metro bundler
268
+ yarn mobile:android # Run on Android
269
+ yarn mobile:ios # Run on iOS
270
+
271
+ # API development
272
+ yarn api:dev # Start API server
273
+ yarn api:build # Build API server
274
+
275
+ # Database management
276
+ yarn db:generate # Generate Prisma client
277
+ yarn db:push # Push schema to database
278
+ yarn db:migrate # Create migrations
279
+ yarn db:studio # Open Prisma Studio
280
+
281
+ # Build all packages
282
+ yarn build # Build everything
283
+ yarn build:packages # Build shared packages only
284
+
285
+ # Testing
286
+ yarn test # Run all tests
287
+ yarn type-check # Type check all packages
288
+ \`\`\`
289
+
290
+ ## 📱 Demo Features
291
+
292
+ The generated application includes working demo features:
293
+
294
+ ### User Management
295
+ - User registration and authentication
296
+ - User profiles with avatars
297
+ - User listings and search
298
+
299
+ ### Real-time Features
300
+ - Live chat/messaging
301
+ - Real-time notifications
302
+ - Live user presence
303
+
304
+ ### Data Flow
305
+ - **Mobile/Web** → **API** → **Database**
306
+ - Shared types and validation across all layers
307
+ - Real-time updates via tRPC subscriptions
308
+
309
+ ## 🔧 Development
310
+
311
+ ### Adding New Features
312
+
313
+ 1. **Database Changes**: Update \`packages/database/prisma/schema.prisma\`
314
+ 2. **API Endpoints**: Add routes in \`packages/api/src/routers/\`
315
+ 3. **Shared Types**: Add to \`packages/shared/src/\`
316
+ 4. **UI Components**: Update \`packages/web/src/\` and \`packages/mobile/src/\`
317
+
318
+ ### Package Structure
319
+
320
+ \`\`\`
321
+ ${templateData.projectName}/
322
+ ├── packages/
323
+ │ ├── api/ # tRPC API server
324
+ │ ├── database/ # Prisma database layer
325
+ │ ├── mobile/ # React Native app
326
+ │ ├── shared/ # Shared components/utils
327
+ │ └── web/ # React web app
328
+ ├── package.json # Workspace configuration
329
+ ├── docker-compose.yml # Database services
330
+ └── README.md # This file
331
+ \`\`\`
332
+
333
+ ## 🔗 Package Integration
334
+
335
+ All packages are properly integrated:
336
+
337
+ - **Database**: Exports typed Prisma client and schemas
338
+ - **API**: Imports database client, exports tRPC router
339
+ - **Shared**: Cross-platform components used by web/mobile
340
+ - **Web/Mobile**: Import shared components and API client
341
+
342
+ ### Type Safety
343
+
344
+ Full end-to-end type safety:
345
+ - Database schema → Generated Prisma types
346
+ - API routes → Generated tRPC types
347
+ - Frontend → Typed API client calls
348
+ - Shared components → Typed props
349
+
350
+ ## 📚 Documentation
351
+
352
+ - [Idealyst Framework](https://github.com/IdealystIO/idealyst-framework)
353
+ - [Prisma Docs](https://www.prisma.io/docs)
354
+ - [tRPC Docs](https://trpc.io)
355
+ - [React Native Docs](https://reactnative.dev)
356
+
357
+ ## 🤝 Contributing
358
+
359
+ 1. Fork the repository
360
+ 2. Create a feature branch
361
+ 3. Make your changes
362
+ 4. Add tests
363
+ 5. Submit a pull request
364
+
365
+ ## 📄 License
366
+
367
+ MIT License - see LICENSE file for details.
368
+ `;
369
+ await fs.writeFile(readmePath, readmeContent);
370
+ }
371
+ //# sourceMappingURL=fullstack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fullstack.js","sourceRoot":"","sources":["../../src/generators/fullstack.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ const shared_1 = require("./shared");
21
21
  const workspace_1 = require("./workspace");
22
22
  const api_1 = require("./api");
23
23
  const database_1 = require("./database");
24
+ const fullstack_1 = require("./fullstack");
24
25
  async function generateProject(options) {
25
26
  const { type } = options;
26
27
  switch (type) {
@@ -42,6 +43,9 @@ async function generateProject(options) {
42
43
  case 'database':
43
44
  await (0, database_1.generateDatabaseProject)(options);
44
45
  break;
46
+ case 'fullstack':
47
+ await (0, fullstack_1.generateFullStackWorkspace)(options);
48
+ break;
45
49
  default:
46
50
  throw new Error(`Unknown project type: ${type}`);
47
51
  }
@@ -52,4 +56,5 @@ __exportStar(require("./shared"), exports);
52
56
  __exportStar(require("./workspace"), exports);
53
57
  __exportStar(require("./api"), exports);
54
58
  __exportStar(require("./database"), exports);
59
+ __exportStar(require("./fullstack"), exports);
55
60
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAQA,0CAyBC;AAhCD,qCAAiD;AACjD,+BAA2C;AAC3C,qCAAiD;AACjD,2CAAgD;AAChD,+BAA2C;AAC3C,yCAAqD;AAE9C,KAAK,UAAU,eAAe,CAAC,OAA+B;IACnE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEzB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,MAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,KAAK;YACR,MAAM,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,WAAW;YACd,MAAM,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,KAAK;YACR,MAAM,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,UAAU;YACb,MAAM,IAAA,kCAAuB,EAAC,OAAO,CAAC,CAAC;YACvC,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED,2CAAyB;AACzB,wCAAsB;AACtB,2CAAyB;AACzB,8CAA4B;AAC5B,wCAAsB;AACtB,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,0CA4BC;AApCD,qCAAiD;AACjD,+BAA2C;AAC3C,qCAAiD;AACjD,2CAAgD;AAChD,+BAA2C;AAC3C,yCAAqD;AACrD,2CAAyD;AAElD,KAAK,UAAU,eAAe,CAAC,OAA+B;IACnE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEzB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,MAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,KAAK;YACR,MAAM,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,WAAW;YACd,MAAM,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,KAAK;YACR,MAAM,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,UAAU;YACb,MAAM,IAAA,kCAAuB,EAAC,OAAO,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,WAAW;YACd,MAAM,IAAA,sCAA0B,EAAC,OAAO,CAAC,CAAC;YAC1C,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED,2CAAyB;AACzB,wCAAsB;AACtB,2CAAyB;AACzB,8CAA4B;AAC5B,wCAAsB;AACtB,6CAA2B;AAC3B,8CAA4B"}
@@ -17,7 +17,7 @@ async function generateNativeProject(options) {
17
17
  console.log(chalk_1.default.blue(`📱 Creating React Native project: ${name}`));
18
18
  console.log(chalk_1.default.gray(` App display name: ${displayName}`));
19
19
  const { projectPath, workspacePath, workspaceScope } = await (0, utils_1.resolveProjectPath)(name, directory);
20
- const templatePath = path_1.default.join(__dirname, '..', 'templates', 'native');
20
+ const templatePath = (0, utils_1.getTemplatePath)('native');
21
21
  const templateData = (0, utils_1.getTemplateData)(name, `React Native app built with Idealyst Framework`, displayName, workspaceScope || undefined);
22
22
  try {
23
23
  // Step 1: Update workspace configuration FIRST
@@ -50,6 +50,7 @@ async function generateNativeProject(options) {
50
50
  if (withTrpc) {
51
51
  await (0, utils_1.copyTrpcFiles)(templatePath, projectPath, templateData);
52
52
  await (0, utils_1.copyTrpcAppComponent)(templatePath, projectPath, templateData);
53
+ await (0, utils_1.addTrpcDependencies)(projectPath);
53
54
  }
54
55
  // Step 5: Configure Android vector icons (only if we have Android directory)
55
56
  const hasAndroid = await fs_extra_1.default.pathExists(path_1.default.join(projectPath, 'android'));
@@ -1 +1 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/generators/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/generators/native.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateSharedLibrary = generateSharedLibrary;
7
- const path_1 = __importDefault(require("path"));
8
7
  const chalk_1 = __importDefault(require("chalk"));
9
8
  const utils_1 = require("./utils");
10
9
  async function generateSharedLibrary(options) {
@@ -14,7 +13,7 @@ async function generateSharedLibrary(options) {
14
13
  }
15
14
  console.log(chalk_1.default.blue(`📦 Creating shared library: ${name}`));
16
15
  const { projectPath, workspacePath, workspaceScope } = await (0, utils_1.resolveProjectPath)(name, directory);
17
- const templatePath = path_1.default.join(__dirname, '..', 'templates', 'shared');
16
+ const templatePath = (0, utils_1.getTemplatePath)('shared');
18
17
  const templateData = (0, utils_1.getTemplateData)(name, `Shared library built with Idealyst Framework`, undefined, workspaceScope || undefined);
19
18
  await (0, utils_1.copyTemplate)(templatePath, projectPath, templateData);
20
19
  await (0, utils_1.installDependencies)(projectPath, skipInstall);
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/generators/shared.ts"],"names":[],"mappings":";;;;;AAKA,sDAyBC;AA9BD,gDAAwB;AACxB,kDAA0B;AAE1B,mCAAkJ;AAE3I,KAAK,UAAU,qBAAqB,CAAC,OAA+B;IACzE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,CAAC;IAE/D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAEvE,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,8CAA8C,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAEnI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/generators/shared.ts"],"names":[],"mappings":";;;;;AAKA,sDAyBC;AA7BD,kDAA0B;AAE1B,mCAAmK;AAE5J,KAAK,UAAU,qBAAqB,CAAC,OAA+B;IACzE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjD,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,CAAC;IAE/D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,QAAQ,CAAC,CAAC;IAE/C,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,IAAI,EAAE,8CAA8C,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAEnI,MAAM,IAAA,oBAAY,EAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,IAAA,2BAAmB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,IAAA,kCAA0B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;AAC/D,CAAC"}