@geekmidas/cli 0.17.0 → 0.19.0

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 (118) hide show
  1. package/dist/{bundler-C74EKlNa.cjs → bundler-CyHg1v_T.cjs} +3 -3
  2. package/dist/{bundler-C74EKlNa.cjs.map → bundler-CyHg1v_T.cjs.map} +1 -1
  3. package/dist/{bundler-B6z6HEeh.mjs → bundler-DQIuE3Kn.mjs} +3 -3
  4. package/dist/{bundler-B6z6HEeh.mjs.map → bundler-DQIuE3Kn.mjs.map} +1 -1
  5. package/dist/{config-DYULeEv8.mjs → config-BaYqrF3n.mjs} +48 -10
  6. package/dist/config-BaYqrF3n.mjs.map +1 -0
  7. package/dist/{config-AmInkU7k.cjs → config-CxrLu8ia.cjs} +53 -9
  8. package/dist/config-CxrLu8ia.cjs.map +1 -0
  9. package/dist/config.cjs +4 -1
  10. package/dist/config.d.cts +27 -2
  11. package/dist/config.d.cts.map +1 -1
  12. package/dist/config.d.mts +27 -2
  13. package/dist/config.d.mts.map +1 -1
  14. package/dist/config.mjs +3 -2
  15. package/dist/dokploy-api-B0w17y4_.mjs +3 -0
  16. package/dist/{dokploy-api-CaETb2L6.mjs → dokploy-api-B9qR2Yn1.mjs} +1 -1
  17. package/dist/{dokploy-api-CaETb2L6.mjs.map → dokploy-api-B9qR2Yn1.mjs.map} +1 -1
  18. package/dist/dokploy-api-BnGeUqN4.cjs +3 -0
  19. package/dist/{dokploy-api-C7F9VykY.cjs → dokploy-api-C5czOZoc.cjs} +1 -1
  20. package/dist/{dokploy-api-C7F9VykY.cjs.map → dokploy-api-C5czOZoc.cjs.map} +1 -1
  21. package/dist/{encryption-D7Efcdi9.cjs → encryption-BAz0xQ1Q.cjs} +1 -1
  22. package/dist/{encryption-D7Efcdi9.cjs.map → encryption-BAz0xQ1Q.cjs.map} +1 -1
  23. package/dist/{encryption-h4Nb6W-M.mjs → encryption-JtMsiGNp.mjs} +2 -2
  24. package/dist/{encryption-h4Nb6W-M.mjs.map → encryption-JtMsiGNp.mjs.map} +1 -1
  25. package/dist/index-CWN-bgrO.d.mts +495 -0
  26. package/dist/index-CWN-bgrO.d.mts.map +1 -0
  27. package/dist/index-DEWYvYvg.d.cts +495 -0
  28. package/dist/index-DEWYvYvg.d.cts.map +1 -0
  29. package/dist/index.cjs +2644 -564
  30. package/dist/index.cjs.map +1 -1
  31. package/dist/index.mjs +2639 -564
  32. package/dist/index.mjs.map +1 -1
  33. package/dist/{openapi-CZVcfxk-.mjs → openapi-CgqR6Jkw.mjs} +3 -3
  34. package/dist/{openapi-CZVcfxk-.mjs.map → openapi-CgqR6Jkw.mjs.map} +1 -1
  35. package/dist/{openapi-C89hhkZC.cjs → openapi-DfpxS0xv.cjs} +8 -2
  36. package/dist/{openapi-C89hhkZC.cjs.map → openapi-DfpxS0xv.cjs.map} +1 -1
  37. package/dist/{openapi-react-query-CM2_qlW9.mjs → openapi-react-query-5rSortLH.mjs} +1 -1
  38. package/dist/{openapi-react-query-CM2_qlW9.mjs.map → openapi-react-query-5rSortLH.mjs.map} +1 -1
  39. package/dist/{openapi-react-query-iKjfLzff.cjs → openapi-react-query-DvNpdDpM.cjs} +1 -1
  40. package/dist/{openapi-react-query-iKjfLzff.cjs.map → openapi-react-query-DvNpdDpM.cjs.map} +1 -1
  41. package/dist/openapi-react-query.cjs +1 -1
  42. package/dist/openapi-react-query.mjs +1 -1
  43. package/dist/openapi.cjs +3 -2
  44. package/dist/openapi.d.cts +1 -1
  45. package/dist/openapi.d.mts +1 -1
  46. package/dist/openapi.mjs +3 -2
  47. package/dist/{storage-Bn3K9Ccu.cjs → storage-BPRgh3DU.cjs} +136 -5
  48. package/dist/storage-BPRgh3DU.cjs.map +1 -0
  49. package/dist/{storage-nkGIjeXt.mjs → storage-DNj_I11J.mjs} +1 -1
  50. package/dist/storage-Dhst7BhI.mjs +272 -0
  51. package/dist/storage-Dhst7BhI.mjs.map +1 -0
  52. package/dist/{storage-UfyTn7Zm.cjs → storage-fOR8dMu5.cjs} +1 -1
  53. package/dist/{types-iFk5ms7y.d.mts → types-K2uQJ-FO.d.mts} +2 -2
  54. package/dist/{types-BgaMXsUa.d.cts.map → types-K2uQJ-FO.d.mts.map} +1 -1
  55. package/dist/{types-BgaMXsUa.d.cts → types-l53qUmGt.d.cts} +2 -2
  56. package/dist/{types-iFk5ms7y.d.mts.map → types-l53qUmGt.d.cts.map} +1 -1
  57. package/dist/workspace/index.cjs +19 -0
  58. package/dist/workspace/index.d.cts +3 -0
  59. package/dist/workspace/index.d.mts +3 -0
  60. package/dist/workspace/index.mjs +3 -0
  61. package/dist/workspace-CPLEZDZf.mjs +3788 -0
  62. package/dist/workspace-CPLEZDZf.mjs.map +1 -0
  63. package/dist/workspace-iWgBlX6h.cjs +3885 -0
  64. package/dist/workspace-iWgBlX6h.cjs.map +1 -0
  65. package/package.json +9 -4
  66. package/src/build/__tests__/workspace-build.spec.ts +215 -0
  67. package/src/build/index.ts +189 -1
  68. package/src/config.ts +71 -14
  69. package/src/deploy/__tests__/docker.spec.ts +1 -1
  70. package/src/deploy/__tests__/index.spec.ts +305 -1
  71. package/src/deploy/index.ts +426 -4
  72. package/src/deploy/types.ts +32 -0
  73. package/src/dev/__tests__/index.spec.ts +572 -1
  74. package/src/dev/index.ts +582 -2
  75. package/src/docker/__tests__/compose.spec.ts +425 -0
  76. package/src/docker/__tests__/templates.spec.ts +145 -0
  77. package/src/docker/compose.ts +248 -0
  78. package/src/docker/index.ts +159 -3
  79. package/src/docker/templates.ts +223 -4
  80. package/src/index.ts +24 -0
  81. package/src/init/__tests__/generators.spec.ts +17 -24
  82. package/src/init/__tests__/init.spec.ts +157 -5
  83. package/src/init/generators/auth.ts +220 -0
  84. package/src/init/generators/config.ts +61 -4
  85. package/src/init/generators/docker.ts +115 -8
  86. package/src/init/generators/env.ts +7 -127
  87. package/src/init/generators/index.ts +1 -0
  88. package/src/init/generators/models.ts +3 -1
  89. package/src/init/generators/monorepo.ts +154 -10
  90. package/src/init/generators/package.ts +5 -3
  91. package/src/init/generators/web.ts +213 -0
  92. package/src/init/index.ts +290 -58
  93. package/src/init/templates/api.ts +38 -29
  94. package/src/init/templates/index.ts +132 -4
  95. package/src/init/templates/minimal.ts +33 -35
  96. package/src/init/templates/serverless.ts +16 -19
  97. package/src/init/templates/worker.ts +50 -25
  98. package/src/init/versions.ts +47 -0
  99. package/src/secrets/keystore.ts +144 -0
  100. package/src/secrets/storage.ts +109 -6
  101. package/src/test/index.ts +97 -0
  102. package/src/workspace/__tests__/client-generator.spec.ts +357 -0
  103. package/src/workspace/__tests__/index.spec.ts +543 -0
  104. package/src/workspace/__tests__/schema.spec.ts +519 -0
  105. package/src/workspace/__tests__/type-inference.spec.ts +251 -0
  106. package/src/workspace/client-generator.ts +307 -0
  107. package/src/workspace/index.ts +372 -0
  108. package/src/workspace/schema.ts +368 -0
  109. package/src/workspace/types.ts +336 -0
  110. package/tsconfig.tsbuildinfo +1 -0
  111. package/tsdown.config.ts +1 -0
  112. package/dist/config-AmInkU7k.cjs.map +0 -1
  113. package/dist/config-DYULeEv8.mjs.map +0 -1
  114. package/dist/dokploy-api-B7KxOQr3.cjs +0 -3
  115. package/dist/dokploy-api-DHvfmWbi.mjs +0 -3
  116. package/dist/storage-BaOP55oq.mjs +0 -147
  117. package/dist/storage-BaOP55oq.mjs.map +0 -1
  118. package/dist/storage-Bn3K9Ccu.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CWN-bgrO.d.mts","names":[],"sources":["../src/workspace/types.ts","../src/workspace/schema.ts","../src/workspace/index.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,495 @@
1
+ import { GkmConfig, HooksConfig, OpenApiConfig, ProvidersConfig, Routes, Runtime, StudioConfig, TelescopeConfig } from "./types-l53qUmGt.cjs";
2
+ import { z } from "zod/v4";
3
+
4
+ //#region src/workspace/types.d.ts
5
+
6
+ /**
7
+ * Deploy target for an app.
8
+ * Currently only 'dokploy' is supported.
9
+ * Future: 'vercel' | 'cloudflare'
10
+ */
11
+ type DeployTarget = 'dokploy' | 'vercel' | 'cloudflare';
12
+ /**
13
+ * Service image configuration for custom Docker images.
14
+ */
15
+ interface ServiceImageConfig {
16
+ /** Docker image version/tag (e.g., '18-alpine') */
17
+ version?: string;
18
+ /** Full Docker image reference (overrides version) */
19
+ image?: string;
20
+ }
21
+ /**
22
+ * Mail service configuration.
23
+ */
24
+ interface MailServiceConfig extends ServiceImageConfig {
25
+ /** SMTP configuration for production */
26
+ smtp?: {
27
+ host: string;
28
+ port: number;
29
+ user?: string;
30
+ pass?: string;
31
+ };
32
+ }
33
+ /**
34
+ * Development services configuration.
35
+ */
36
+ interface ServicesConfig {
37
+ /** PostgreSQL database (default: postgres:18-alpine) */
38
+ db?: boolean | ServiceImageConfig;
39
+ /** Redis cache (default: redis:8-alpine) */
40
+ cache?: boolean | ServiceImageConfig;
41
+ /** Mail service (mailpit for dev) */
42
+ mail?: boolean | MailServiceConfig;
43
+ }
44
+ /**
45
+ * Dokploy workspace deployment configuration.
46
+ */
47
+ interface DokployWorkspaceConfig {
48
+ /** Dokploy API endpoint */
49
+ endpoint: string;
50
+ /** Project ID (1 workspace = 1 project) */
51
+ projectId: string;
52
+ /** Container registry for images */
53
+ registry?: string;
54
+ /** Registry ID in Dokploy */
55
+ registryId?: string;
56
+ }
57
+ /**
58
+ * Deployment configuration for the workspace.
59
+ */
60
+ interface DeployConfig {
61
+ /** Default deploy target for all apps */
62
+ default?: DeployTarget;
63
+ /** Dokploy-specific configuration */
64
+ dokploy?: DokployWorkspaceConfig;
65
+ }
66
+ /**
67
+ * Models package configuration for shared schemas.
68
+ */
69
+ interface ModelsConfig {
70
+ /** Path to models package (default: packages/models) */
71
+ path?: string;
72
+ /**
73
+ * Schema library to use.
74
+ * Currently only 'zod' is supported.
75
+ * Future: any StandardSchema-compatible library
76
+ */
77
+ schema?: 'zod';
78
+ }
79
+ /**
80
+ * Shared packages configuration.
81
+ */
82
+ interface SharedConfig {
83
+ /** Glob patterns for shared packages (default: ['packages/*']) */
84
+ packages?: string[];
85
+ /** Models package configuration */
86
+ models?: ModelsConfig;
87
+ }
88
+ /**
89
+ * Secrets encryption configuration.
90
+ */
91
+ interface SecretsConfig {
92
+ /** Enable encrypted secrets */
93
+ enabled?: boolean;
94
+ /** Encryption algorithm (default: aes-256-gcm) */
95
+ algorithm?: string;
96
+ /** Key derivation function (default: scrypt) */
97
+ kdf?: 'scrypt' | 'pbkdf2';
98
+ }
99
+ /**
100
+ * Client generation configuration for frontend apps.
101
+ */
102
+ interface ClientConfig {
103
+ /** Output directory for generated client (relative to app path) */
104
+ output?: string;
105
+ }
106
+ /**
107
+ * Base app configuration properties (shared between input and normalized).
108
+ */
109
+ interface AppConfigBase {
110
+ /** App type (default: 'backend') */
111
+ type?: 'backend' | 'frontend';
112
+ /** Path relative to workspace root */
113
+ path: string;
114
+ /** Dev server port */
115
+ port: number;
116
+ /** Per-app deploy target override */
117
+ deploy?: DeployTarget;
118
+ /** Routes glob pattern */
119
+ routes?: Routes;
120
+ /** Functions glob pattern */
121
+ functions?: Routes;
122
+ /** Crons glob pattern */
123
+ crons?: Routes;
124
+ /** Subscribers glob pattern */
125
+ subscribers?: Routes;
126
+ /** Path to environment parser module */
127
+ envParser?: string;
128
+ /** Path to logger module */
129
+ logger?: string;
130
+ /** Provider configuration */
131
+ providers?: ProvidersConfig;
132
+ /** Server lifecycle hooks */
133
+ hooks?: HooksConfig;
134
+ /** Telescope configuration */
135
+ telescope?: string | boolean | TelescopeConfig;
136
+ /** Studio configuration */
137
+ studio?: string | boolean | StudioConfig;
138
+ /** OpenAPI configuration */
139
+ openapi?: boolean | OpenApiConfig;
140
+ /** Runtime (node or bun) */
141
+ runtime?: Runtime;
142
+ /** Environment file(s) to load */
143
+ env?: string | string[];
144
+ /** Frontend framework (currently only 'nextjs') */
145
+ framework?: 'nextjs';
146
+ /** Client generation configuration */
147
+ client?: ClientConfig;
148
+ }
149
+ /**
150
+ * App configuration input with type-safe dependencies.
151
+ * @template TAppNames - Union of valid app names in the workspace
152
+ */
153
+ interface AppConfigInput<TAppNames extends string = string> extends AppConfigBase {
154
+ /** Dependencies on other apps in the workspace (type-safe) */
155
+ dependencies?: TAppNames[];
156
+ }
157
+ /**
158
+ * App configuration (legacy, for backwards compatibility).
159
+ * @deprecated Use AppConfigInput for new code
160
+ */
161
+ interface AppConfig extends AppConfigBase {
162
+ /** Dependencies on other apps in the workspace */
163
+ dependencies?: string[];
164
+ }
165
+ /**
166
+ * Base app input type for type inference.
167
+ */
168
+ type AppInput = AppConfigBase & {
169
+ dependencies?: readonly string[];
170
+ };
171
+ /**
172
+ * Apps record type for workspace configuration.
173
+ */
174
+ type AppsRecord = Record<string, AppInput>;
175
+ /**
176
+ * Constrain apps so dependencies only reference valid app names.
177
+ * Dependencies must be an array of valid app names from the workspace.
178
+ */
179
+ type ConstrainedApps<TApps extends AppsRecord> = { [K in keyof TApps]: Omit<TApps[K], 'dependencies'> & {
180
+ dependencies?: readonly (keyof TApps & string)[];
181
+ } };
182
+ /**
183
+ * Full workspace input type with constrained dependencies.
184
+ */
185
+ type WorkspaceInput<TApps extends AppsRecord> = {
186
+ name?: string;
187
+ apps: ConstrainedApps<TApps>;
188
+ shared?: SharedConfig;
189
+ deploy?: DeployConfig;
190
+ services?: ServicesConfig;
191
+ secrets?: SecretsConfig;
192
+ };
193
+ /**
194
+ * Extract app names from apps record.
195
+ */
196
+ type InferAppNames<TApps extends AppsRecord> = keyof TApps & string;
197
+ /**
198
+ * Inferred workspace config with proper app name types.
199
+ */
200
+ type InferredWorkspaceConfig<TApps extends AppsRecord> = {
201
+ name?: string;
202
+ apps: { [K in keyof TApps]: Omit<TApps[K], 'dependencies'> & {
203
+ dependencies?: InferAppNames<TApps>[];
204
+ } };
205
+ shared?: SharedConfig;
206
+ deploy?: DeployConfig;
207
+ services?: ServicesConfig;
208
+ secrets?: SecretsConfig;
209
+ };
210
+ /** @deprecated Use WorkspaceInput */
211
+
212
+ /**
213
+ * Workspace configuration for multi-app monorepos (legacy).
214
+ * @deprecated Use WorkspaceConfigInput with defineWorkspace for type inference
215
+ */
216
+ interface WorkspaceConfig {
217
+ /** Workspace name (defaults to root package.json name) */
218
+ name?: string;
219
+ /** App definitions */
220
+ apps: Record<string, AppConfig>;
221
+ /** Shared packages configuration */
222
+ shared?: SharedConfig;
223
+ /** Default deployment configuration */
224
+ deploy?: DeployConfig;
225
+ /** Development services (db, cache, mail) */
226
+ services?: ServicesConfig;
227
+ /** Encrypted secrets configuration */
228
+ secrets?: SecretsConfig;
229
+ }
230
+ /**
231
+ * Normalized app configuration with resolved defaults.
232
+ */
233
+ interface NormalizedAppConfig extends Omit<AppConfigBase, 'type'> {
234
+ type: 'backend' | 'frontend';
235
+ path: string;
236
+ port: number;
237
+ dependencies: string[];
238
+ /** Resolved deploy target (app.deploy > deploy.default > 'dokploy') */
239
+ resolvedDeployTarget: DeployTarget;
240
+ }
241
+ /**
242
+ * Normalized workspace configuration with resolved defaults.
243
+ */
244
+ interface NormalizedWorkspace {
245
+ name: string;
246
+ root: string;
247
+ apps: Record<string, NormalizedAppConfig>;
248
+ services: ServicesConfig;
249
+ deploy: DeployConfig;
250
+ shared: SharedConfig;
251
+ secrets: SecretsConfig;
252
+ }
253
+ /**
254
+ * Result of loading and processing a configuration.
255
+ */
256
+ interface LoadedConfig {
257
+ /** Whether this is a single-app or workspace config */
258
+ type: 'single' | 'workspace';
259
+ /** The raw configuration as loaded */
260
+ raw: GkmConfig | WorkspaceConfig;
261
+ /** Normalized workspace (always available) */
262
+ workspace: NormalizedWorkspace;
263
+ }
264
+ /**
265
+ * Type guard to check if a config is a WorkspaceConfig.
266
+ */
267
+ declare function isWorkspaceConfig(config: GkmConfig | WorkspaceConfig): config is WorkspaceConfig;
268
+ //#endregion
269
+ //#region src/workspace/schema.d.ts
270
+ /**
271
+ * Supported deploy targets (Phase 1).
272
+ */
273
+ declare const SUPPORTED_DEPLOY_TARGETS: readonly ["dokploy"];
274
+ /**
275
+ * Phase 2 deploy targets (not yet implemented).
276
+ */
277
+ declare const PHASE_2_DEPLOY_TARGETS: readonly ["vercel", "cloudflare"];
278
+ /**
279
+ * Check if a deploy target is supported.
280
+ */
281
+ declare function isDeployTargetSupported(target: string): boolean;
282
+ /**
283
+ * Check if a deploy target is planned for Phase 2.
284
+ */
285
+ declare function isPhase2DeployTarget(target: string): boolean;
286
+ /**
287
+ * Get error message for unsupported deploy targets.
288
+ */
289
+ declare function getDeployTargetError(target: string, appName?: string): string;
290
+ /**
291
+ * Workspace configuration schema.
292
+ */
293
+ declare const WorkspaceConfigSchema: z.ZodObject<{
294
+ name: z.ZodOptional<z.ZodString>;
295
+ apps: z.ZodRecord<z.ZodString, z.ZodObject<{
296
+ type: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
297
+ backend: "backend";
298
+ frontend: "frontend";
299
+ }>>>;
300
+ path: z.ZodString;
301
+ port: z.ZodNumber;
302
+ dependencies: z.ZodOptional<z.ZodArray<z.ZodString>>;
303
+ deploy: z.ZodOptional<z.ZodEnum<{
304
+ dokploy: "dokploy";
305
+ vercel: "vercel";
306
+ cloudflare: "cloudflare";
307
+ }>>;
308
+ routes: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
309
+ functions: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
310
+ crons: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
311
+ subscribers: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
312
+ envParser: z.ZodOptional<z.ZodString>;
313
+ logger: z.ZodOptional<z.ZodString>;
314
+ hooks: z.ZodOptional<z.ZodObject<{
315
+ server: z.ZodOptional<z.ZodString>;
316
+ }, z.core.$strip>>;
317
+ telescope: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodObject<{
318
+ enabled: z.ZodOptional<z.ZodBoolean>;
319
+ port: z.ZodOptional<z.ZodNumber>;
320
+ path: z.ZodOptional<z.ZodString>;
321
+ ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
322
+ recordBody: z.ZodOptional<z.ZodBoolean>;
323
+ maxEntries: z.ZodOptional<z.ZodNumber>;
324
+ websocket: z.ZodOptional<z.ZodBoolean>;
325
+ }, z.core.$strip>]>>;
326
+ studio: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodObject<{
327
+ enabled: z.ZodOptional<z.ZodBoolean>;
328
+ path: z.ZodOptional<z.ZodString>;
329
+ schema: z.ZodOptional<z.ZodString>;
330
+ }, z.core.$strip>]>>;
331
+ openapi: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
332
+ enabled: z.ZodOptional<z.ZodBoolean>;
333
+ title: z.ZodOptional<z.ZodString>;
334
+ version: z.ZodOptional<z.ZodString>;
335
+ description: z.ZodOptional<z.ZodString>;
336
+ }, z.core.$strip>]>>;
337
+ runtime: z.ZodOptional<z.ZodEnum<{
338
+ node: "node";
339
+ bun: "bun";
340
+ }>>;
341
+ env: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
342
+ framework: z.ZodOptional<z.ZodEnum<{
343
+ nextjs: "nextjs";
344
+ }>>;
345
+ client: z.ZodOptional<z.ZodObject<{
346
+ output: z.ZodOptional<z.ZodString>;
347
+ }, z.core.$strip>>;
348
+ }, z.core.$strip>>;
349
+ shared: z.ZodOptional<z.ZodObject<{
350
+ packages: z.ZodOptional<z.ZodArray<z.ZodString>>;
351
+ models: z.ZodOptional<z.ZodObject<{
352
+ path: z.ZodOptional<z.ZodString>;
353
+ schema: z.ZodOptional<z.ZodEnum<{
354
+ zod: "zod";
355
+ }>>;
356
+ }, z.core.$strip>>;
357
+ }, z.core.$strip>>;
358
+ deploy: z.ZodOptional<z.ZodObject<{
359
+ default: z.ZodOptional<z.ZodEnum<{
360
+ dokploy: "dokploy";
361
+ vercel: "vercel";
362
+ cloudflare: "cloudflare";
363
+ }>>;
364
+ dokploy: z.ZodOptional<z.ZodObject<{
365
+ endpoint: z.ZodURL;
366
+ projectId: z.ZodString;
367
+ registry: z.ZodOptional<z.ZodString>;
368
+ registryId: z.ZodOptional<z.ZodString>;
369
+ }, z.core.$strip>>;
370
+ }, z.core.$strip>>;
371
+ services: z.ZodOptional<z.ZodObject<{
372
+ db: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
373
+ version: z.ZodOptional<z.ZodString>;
374
+ image: z.ZodOptional<z.ZodString>;
375
+ }, z.core.$strip>]>>;
376
+ cache: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
377
+ version: z.ZodOptional<z.ZodString>;
378
+ image: z.ZodOptional<z.ZodString>;
379
+ }, z.core.$strip>]>>;
380
+ mail: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
381
+ version: z.ZodOptional<z.ZodString>;
382
+ image: z.ZodOptional<z.ZodString>;
383
+ smtp: z.ZodOptional<z.ZodObject<{
384
+ host: z.ZodString;
385
+ port: z.ZodNumber;
386
+ user: z.ZodOptional<z.ZodString>;
387
+ pass: z.ZodOptional<z.ZodString>;
388
+ }, z.core.$strip>>;
389
+ }, z.core.$strip>]>>;
390
+ }, z.core.$strip>>;
391
+ secrets: z.ZodOptional<z.ZodObject<{
392
+ enabled: z.ZodOptional<z.ZodBoolean>;
393
+ algorithm: z.ZodOptional<z.ZodString>;
394
+ kdf: z.ZodOptional<z.ZodEnum<{
395
+ scrypt: "scrypt";
396
+ pbkdf2: "pbkdf2";
397
+ }>>;
398
+ }, z.core.$strip>>;
399
+ }, z.core.$strip>;
400
+ /**
401
+ * Validate workspace configuration.
402
+ * Throws ZodError with detailed messages on validation failure.
403
+ */
404
+ declare function validateWorkspaceConfig(config: unknown): z.infer<typeof WorkspaceConfigSchema>;
405
+ /**
406
+ * Safe validation that returns result instead of throwing.
407
+ */
408
+ declare function safeValidateWorkspaceConfig(config: unknown): {
409
+ success: boolean;
410
+ data?: z.infer<typeof WorkspaceConfigSchema>;
411
+ error?: z.ZodError;
412
+ };
413
+ /**
414
+ * Format Zod errors into user-friendly messages.
415
+ */
416
+ declare function formatValidationErrors(error: z.ZodError): string;
417
+ //#endregion
418
+ //#region src/workspace/index.d.ts
419
+ /**
420
+ * Define workspace configuration with full TypeScript support and type inference.
421
+ *
422
+ * Uses `const` type parameter to infer literal app names, providing:
423
+ * - Autocomplete for app names in dependencies
424
+ * - Type errors for invalid dependency references
425
+ * - Full type inference for the returned config
426
+ *
427
+ * @example
428
+ * ```ts
429
+ * // gkm.config.ts
430
+ * import { defineWorkspace } from '@geekmidas/cli';
431
+ *
432
+ * export default defineWorkspace({
433
+ * name: 'my-saas',
434
+ * apps: {
435
+ * api: {
436
+ * type: 'backend',
437
+ * path: 'apps/api',
438
+ * port: 3000,
439
+ * routes: './src/endpoints/**\/*.ts',
440
+ * envParser: './src/config/env',
441
+ * logger: './src/logger',
442
+ * },
443
+ * web: {
444
+ * type: 'frontend',
445
+ * framework: 'nextjs',
446
+ * path: 'apps/web',
447
+ * port: 3001,
448
+ * dependencies: ['api'], // <- autocomplete shows 'api' | 'web'
449
+ * },
450
+ * },
451
+ * services: {
452
+ * db: true,
453
+ * cache: true,
454
+ * },
455
+ * });
456
+ *
457
+ * // config.apps.api <- full type inference
458
+ * // config.apps.foo <- TypeScript error
459
+ * ```
460
+ */
461
+ declare function defineWorkspace<const TApps extends AppsRecord>(config: WorkspaceInput<TApps>): InferredWorkspaceConfig<TApps>;
462
+ /**
463
+ * Normalize a workspace configuration with resolved defaults.
464
+ */
465
+ declare function normalizeWorkspace(config: WorkspaceConfig, cwd: string): NormalizedWorkspace;
466
+ /**
467
+ * Wrap a single-app GkmConfig as a workspace.
468
+ * This allows existing single-app configs to work seamlessly.
469
+ */
470
+ declare function wrapSingleAppAsWorkspace(config: GkmConfig, cwd: string): NormalizedWorkspace;
471
+ /**
472
+ * Process a loaded configuration (either single-app or workspace).
473
+ * Returns a normalized workspace in both cases.
474
+ */
475
+ declare function processConfig(config: GkmConfig | WorkspaceConfig, cwd: string): LoadedConfig;
476
+ /**
477
+ * Get the GkmConfig for a specific app in a workspace.
478
+ * Useful for running existing single-app commands on a specific app.
479
+ */
480
+ declare function getAppGkmConfig(workspace: NormalizedWorkspace, appName: string): GkmConfig | undefined;
481
+ /**
482
+ * Get topologically sorted app names based on dependencies.
483
+ * Apps with no dependencies come first, then apps that depend on them.
484
+ */
485
+ declare function getAppBuildOrder(workspace: NormalizedWorkspace): string[];
486
+ /**
487
+ * Generate environment variables for app dependencies.
488
+ * Each dependency gets a {DEP_NAME}_URL variable.
489
+ */
490
+ declare function getDependencyEnvVars(workspace: NormalizedWorkspace, appName: string, urlPrefix?: string): Record<string, string>;
491
+ //# sourceMappingURL=index.d.ts.map
492
+
493
+ //#endregion
494
+ export { AppConfig, AppConfigInput, AppInput, AppsRecord, ClientConfig, ConstrainedApps, DeployConfig, DeployTarget, DokployWorkspaceConfig, InferAppNames, InferredWorkspaceConfig, LoadedConfig, MailServiceConfig, ModelsConfig, NormalizedAppConfig, NormalizedWorkspace, PHASE_2_DEPLOY_TARGETS, SUPPORTED_DEPLOY_TARGETS, SecretsConfig, ServiceImageConfig, ServicesConfig, SharedConfig, WorkspaceConfig, WorkspaceConfigSchema, WorkspaceInput, defineWorkspace, formatValidationErrors, getAppBuildOrder, getAppGkmConfig, getDependencyEnvVars, getDeployTargetError, isDeployTargetSupported, isPhase2DeployTarget, isWorkspaceConfig, normalizeWorkspace, processConfig, safeValidateWorkspaceConfig, validateWorkspaceConfig, wrapSingleAppAsWorkspace };
495
+ //# sourceMappingURL=index-DEWYvYvg.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DEWYvYvg.d.cts","names":[],"sources":["../src/workspace/types.ts","../src/workspace/schema.ts","../src/workspace/index.ts"],"sourcesContent":[],"mappings":"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"}