@objectstack/cli 5.1.0 → 6.0.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 (84) hide show
  1. package/dist/commands/dev.d.ts +1 -1
  2. package/dist/commands/dev.js +7 -7
  3. package/dist/commands/dev.js.map +1 -1
  4. package/dist/commands/{projects → environments}/bind.d.ts +3 -3
  5. package/dist/commands/environments/bind.d.ts.map +1 -0
  6. package/dist/commands/{projects → environments}/bind.js +10 -10
  7. package/dist/commands/environments/bind.js.map +1 -0
  8. package/dist/commands/{projects → environments}/create.d.ts +1 -1
  9. package/dist/commands/environments/create.d.ts.map +1 -0
  10. package/dist/commands/{projects → environments}/create.js +3 -3
  11. package/dist/commands/environments/create.js.map +1 -0
  12. package/dist/commands/environments/environments.test.d.ts +2 -0
  13. package/dist/commands/environments/environments.test.d.ts.map +1 -0
  14. package/dist/commands/{projects/projects.test.js → environments/environments.test.js} +2 -2
  15. package/dist/commands/environments/environments.test.js.map +1 -0
  16. package/dist/commands/environments/list.d.ts.map +1 -0
  17. package/dist/commands/{projects → environments}/list.js +1 -1
  18. package/dist/commands/environments/list.js.map +1 -0
  19. package/dist/commands/environments/show.d.ts.map +1 -0
  20. package/dist/commands/environments/show.js.map +1 -0
  21. package/dist/commands/{projects → environments}/switch.d.ts +2 -2
  22. package/dist/commands/environments/switch.d.ts.map +1 -0
  23. package/dist/commands/{projects → environments}/switch.js +3 -3
  24. package/dist/commands/environments/switch.js.map +1 -0
  25. package/dist/commands/package/publish.d.ts +13 -0
  26. package/dist/commands/package/publish.d.ts.map +1 -1
  27. package/dist/commands/package/publish.js +199 -0
  28. package/dist/commands/package/publish.js.map +1 -1
  29. package/dist/commands/publish.d.ts +1 -1
  30. package/dist/commands/publish.js +6 -6
  31. package/dist/commands/publish.js.map +1 -1
  32. package/dist/commands/rollback.d.ts +1 -1
  33. package/dist/commands/rollback.js +7 -7
  34. package/dist/commands/rollback.js.map +1 -1
  35. package/dist/commands/serve.d.ts.map +1 -1
  36. package/dist/commands/serve.js +206 -34
  37. package/dist/commands/serve.js.map +1 -1
  38. package/dist/commands/start.js +4 -4
  39. package/dist/commands/start.js.map +1 -1
  40. package/dist/index.d.ts +5 -5
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +6 -6
  43. package/dist/index.js.map +1 -1
  44. package/dist/utils/api-client.d.ts +3 -3
  45. package/dist/utils/api-client.d.ts.map +1 -1
  46. package/dist/utils/api-client.js +6 -6
  47. package/dist/utils/api-client.js.map +1 -1
  48. package/dist/utils/auth-config.d.ts +1 -1
  49. package/dist/utils/auth-config.d.ts.map +1 -1
  50. package/dist/utils/config.d.ts +9 -0
  51. package/dist/utils/config.d.ts.map +1 -1
  52. package/dist/utils/config.js +24 -0
  53. package/dist/utils/config.js.map +1 -1
  54. package/dist/utils/console.d.ts +10 -2
  55. package/dist/utils/console.d.ts.map +1 -1
  56. package/dist/utils/console.js +88 -34
  57. package/dist/utils/console.js.map +1 -1
  58. package/dist/utils/plugin-detection.js +2 -2
  59. package/dist/utils/plugin-detection.js.map +1 -1
  60. package/dist/utils/studio-field-patch.d.ts +43 -0
  61. package/dist/utils/studio-field-patch.d.ts.map +1 -0
  62. package/dist/utils/studio-field-patch.js +336 -0
  63. package/dist/utils/studio-field-patch.js.map +1 -0
  64. package/dist/utils/studio.d.ts +40 -36
  65. package/dist/utils/studio.d.ts.map +1 -1
  66. package/dist/utils/studio.js +301 -174
  67. package/dist/utils/studio.js.map +1 -1
  68. package/package.json +38 -32
  69. package/dist/commands/projects/bind.d.ts.map +0 -1
  70. package/dist/commands/projects/bind.js.map +0 -1
  71. package/dist/commands/projects/create.d.ts.map +0 -1
  72. package/dist/commands/projects/create.js.map +0 -1
  73. package/dist/commands/projects/list.d.ts.map +0 -1
  74. package/dist/commands/projects/list.js.map +0 -1
  75. package/dist/commands/projects/projects.test.d.ts +0 -2
  76. package/dist/commands/projects/projects.test.d.ts.map +0 -1
  77. package/dist/commands/projects/projects.test.js.map +0 -1
  78. package/dist/commands/projects/show.d.ts.map +0 -1
  79. package/dist/commands/projects/show.js.map +0 -1
  80. package/dist/commands/projects/switch.d.ts.map +0 -1
  81. package/dist/commands/projects/switch.js.map +0 -1
  82. /package/dist/commands/{projects → environments}/list.d.ts +0 -0
  83. /package/dist/commands/{projects → environments}/show.d.ts +0 -0
  84. /package/dist/commands/{projects → environments}/show.js +0 -0
@@ -29,7 +29,7 @@ export default class Start extends Command {
29
29
  }),
30
30
  // Project identity
31
31
  'project-id': Flags.string({
32
- description: 'Project identifier (overrides $OS_PROJECT_ID, default proj_local)',
32
+ description: 'Project identifier (overrides $OS_ENVIRONMENT_ID, default proj_local)',
33
33
  }),
34
34
  // Storage
35
35
  database: Flags.string({
@@ -71,13 +71,13 @@ export default class Start extends Command {
71
71
  const displayPath = isUrl ? artifactPath : path.relative(process.cwd(), artifactPath);
72
72
  printKV('Artifact', displayPath, '📦');
73
73
  printStep('Starting server (production mode)...');
74
- const projectId = flags['project-id'] ?? process.env.OS_PROJECT_ID ?? 'proj_local';
74
+ const environmentId = flags['project-id'] ?? process.env.OS_ENVIRONMENT_ID ?? 'proj_local';
75
75
  // Build the env handed to `serve`. Flags win over inherited env so
76
76
  // `--database file:foo.db` overrides any pre-existing OS_DATABASE_URL.
77
77
  const localEnv = {
78
78
  ...process.env,
79
79
  NODE_ENV: 'production',
80
- OS_PROJECT_ID: projectId,
80
+ OS_ENVIRONMENT_ID: environmentId,
81
81
  OS_ARTIFACT_PATH: artifactPath,
82
82
  ...(flags.port ? { PORT: String(flags.port) } : {}),
83
83
  ...(flags.database ? { OS_DATABASE_URL: flags.database } : {}),
@@ -85,7 +85,7 @@ export default class Start extends Command {
85
85
  ...(flags['database-auth-token'] ? { OS_DATABASE_AUTH_TOKEN: flags['database-auth-token'] } : {}),
86
86
  ...(flags['auth-secret'] ? { AUTH_SECRET: flags['auth-secret'] } : {}),
87
87
  };
88
- printKV('Project ID', projectId, '🎯');
88
+ printKV('Project ID', environmentId, '🎯');
89
89
  if (flags.database)
90
90
  printKV('Database', redactDbUrl(flags.database), '🗄️');
91
91
  const binPath = process.argv[1];
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,11 +10,11 @@ export { default as ServeCommand } from './commands/serve.js';
10
10
  export { default as StartCommand } from './commands/start.js';
11
11
  export { default as TestCommand } from './commands/test.js';
12
12
  export { default as DoctorCommand } from './commands/doctor.js';
13
- export { default as ProjectsListCommand } from './commands/projects/list.js';
14
- export { default as ProjectsShowCommand } from './commands/projects/show.js';
15
- export { default as ProjectsCreateCommand } from './commands/projects/create.js';
16
- export { default as ProjectsSwitchCommand } from './commands/projects/switch.js';
17
- export { default as ProjectsBindCommand } from './commands/projects/bind.js';
13
+ export { default as EnvironmentsListCommand } from './commands/environments/list.js';
14
+ export { default as EnvironmentsShowCommand } from './commands/environments/show.js';
15
+ export { default as EnvironmentsCreateCommand } from './commands/environments/create.js';
16
+ export { default as EnvironmentsSwitchCommand } from './commands/environments/switch.js';
17
+ export { default as EnvironmentsBindCommand } from './commands/environments/bind.js';
18
18
  export { default as CloudLoginCommand } from './commands/cloud/login.js';
19
19
  export { default as CloudLogoutCommand } from './commands/cloud/logout.js';
20
20
  export { default as CloudWhoamiCommand } from './commands/cloud/whoami.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGhE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAG7E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAG3E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGhE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAGrF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAG3E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
package/dist/index.js CHANGED
@@ -14,12 +14,12 @@ export { default as ServeCommand } from './commands/serve.js';
14
14
  export { default as StartCommand } from './commands/start.js';
15
15
  export { default as TestCommand } from './commands/test.js';
16
16
  export { default as DoctorCommand } from './commands/doctor.js';
17
- // ─── Projects topic subcommands ─────────────────────────────────────
18
- export { default as ProjectsListCommand } from './commands/projects/list.js';
19
- export { default as ProjectsShowCommand } from './commands/projects/show.js';
20
- export { default as ProjectsCreateCommand } from './commands/projects/create.js';
21
- export { default as ProjectsSwitchCommand } from './commands/projects/switch.js';
22
- export { default as ProjectsBindCommand } from './commands/projects/bind.js';
17
+ // ─── Environments topic subcommands ─────────────────────────────────
18
+ export { default as EnvironmentsListCommand } from './commands/environments/list.js';
19
+ export { default as EnvironmentsShowCommand } from './commands/environments/show.js';
20
+ export { default as EnvironmentsCreateCommand } from './commands/environments/create.js';
21
+ export { default as EnvironmentsSwitchCommand } from './commands/environments/switch.js';
22
+ export { default as EnvironmentsBindCommand } from './commands/environments/bind.js';
23
23
  // ─── Cloud topic subcommands ────────────────────────────────────────
24
24
  export { default as CloudLoginCommand } from './commands/cloud/login.js';
25
25
  export { default as CloudLogoutCommand } from './commands/cloud/logout.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,uEAAuE;AACvE,iEAAiE;AACjE,4EAA4E;AAE5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEhE,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAE3E,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,uEAAuE;AACvE,iEAAiE;AACjE,4EAA4E;AAE5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEhE,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAErF,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAE3E,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -12,10 +12,10 @@ export interface ApiClientOptions {
12
12
  */
13
13
  token?: string;
14
14
  /**
15
- * Explicit project id. Overrides the stored `activeProjectId` from
15
+ * Explicit project id. Overrides the stored `activeEnvironmentId` from
16
16
  * `~/.objectstack/credentials.json` (written by `os projects switch`).
17
17
  */
18
- projectId?: string;
18
+ environmentId?: string;
19
19
  /**
20
20
  * Enable debug logging
21
21
  */
@@ -28,7 +28,7 @@ export interface ApiClientOptions {
28
28
  export interface ApiClientResult {
29
29
  client: ObjectStackClient;
30
30
  token?: string;
31
- projectId?: string;
31
+ environmentId?: string;
32
32
  }
33
33
  /**
34
34
  * Create an authenticated ObjectStack API client for CLI commands.
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyC9F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAMhD"}
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyC9F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAMhD"}
@@ -16,9 +16,9 @@ export async function createApiClient(options = {}) {
16
16
  // Resolve authentication token
17
17
  let token = options.token || process.env.OS_TOKEN;
18
18
  // Resolve active project id (explicit > env > stored credentials)
19
- let projectId = options.projectId || process.env.OS_PROJECT_ID;
19
+ let environmentId = options.environmentId || process.env.OS_ENVIRONMENT_ID;
20
20
  // If URL or token is missing, try to load from stored credentials
21
- if (!baseUrl || !token || !projectId) {
21
+ if (!baseUrl || !token || !environmentId) {
22
22
  try {
23
23
  const authConfig = await readAuthConfig();
24
24
  if (!token && authConfig.token) {
@@ -27,8 +27,8 @@ export async function createApiClient(options = {}) {
27
27
  if (!baseUrl && authConfig.url) {
28
28
  baseUrl = authConfig.url;
29
29
  }
30
- if (!projectId && authConfig.activeProjectId) {
31
- projectId = authConfig.activeProjectId;
30
+ if (!environmentId && authConfig.activeEnvironmentId) {
31
+ environmentId = authConfig.activeEnvironmentId;
32
32
  }
33
33
  }
34
34
  catch {
@@ -42,10 +42,10 @@ export async function createApiClient(options = {}) {
42
42
  const client = new ObjectStackClient({
43
43
  baseUrl,
44
44
  token,
45
- projectId,
45
+ environmentId,
46
46
  debug: options.debug || false,
47
47
  });
48
- return { client, token, projectId };
48
+ return { client, token, environmentId };
49
49
  }
50
50
  /**
51
51
  * Ensure authentication is present, throwing an error if not.
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAmClD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA4B,EAAE;IAClE,qDAAqD;IACrD,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAEtD,+BAA+B;IAC/B,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAElD,kEAAkE;IAClE,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAE/D,kEAAkE;IAClE,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,cAAc,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC/B,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;gBAC/B,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;gBAC7C,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;QACnE,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,uBAAuB,CAAC;IACpC,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;QACnC,OAAO;QACP,KAAK;QACL,SAAS;QACT,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;KAC9B,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAmClD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA4B,EAAE;IAClE,qDAAqD;IACrD,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAEtD,+BAA+B;IAC/B,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAElD,kEAAkE;IAClE,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAE3E,kEAAkE;IAClE,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,cAAc,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC/B,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;gBAC/B,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,aAAa,IAAI,UAAU,CAAC,mBAAmB,EAAE,CAAC;gBACrD,aAAa,GAAG,UAAU,CAAC,mBAAmB,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;QACnE,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,uBAAuB,CAAC;IACpC,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;QACnC,OAAO;QACP,KAAK;QACL,aAAa;QACb,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;KAC9B,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -31,7 +31,7 @@ export interface AuthConfig {
31
31
  * read by `createApiClient` so every command lands in the right project
32
32
  * without an explicit flag.
33
33
  */
34
- activeProjectId?: string;
34
+ activeEnvironmentId?: string;
35
35
  }
36
36
  /**
37
37
  * Get the path to the credentials file
@@ -1 +1 @@
1
- {"version":3,"file":"auth-config.d.ts","sourceRoot":"","sources":["../../src/utils/auth-config.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAW1D;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUtD;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAQrD"}
1
+ {"version":3,"file":"auth-config.d.ts","sourceRoot":"","sources":["../../src/utils/auth-config.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAW1D;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUtD;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAQrD"}
@@ -3,6 +3,15 @@ export interface LoadedConfig {
3
3
  absolutePath: string;
4
4
  duration: number;
5
5
  }
6
+ /**
7
+ * Keep workspace packages and known native/driver deps external so they
8
+ * are resolved at runtime via real Node ESM dynamic imports. Bundling
9
+ * them through esbuild collapses each package's `createRequire(import.meta.url)`
10
+ * chain into inline `require(...)` calls that throw in pure-ESM mode.
11
+ *
12
+ * Shared between `loadConfig()` and `serve.ts`'s direct `bundleRequire` call.
13
+ */
14
+ export declare const BUNDLE_REQUIRE_EXTERNALS: (string | RegExp)[];
6
15
  /**
7
16
  * Resolve the config file path. Supports:
8
17
  * - explicit path (objectstack.config.ts)
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CA6BzD;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAiCvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAAgC,GAAG,OAAO,CAE5E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAcvD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CA6BzD;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAkCvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAAgC,GAAG,OAAO,CAE5E"}
@@ -4,6 +4,29 @@ import fs from 'fs';
4
4
  import chalk from 'chalk';
5
5
  import { bundleRequire } from 'bundle-require';
6
6
  import { printError } from './format.js';
7
+ /**
8
+ * Keep workspace packages and known native/driver deps external so they
9
+ * are resolved at runtime via real Node ESM dynamic imports. Bundling
10
+ * them through esbuild collapses each package's `createRequire(import.meta.url)`
11
+ * chain into inline `require(...)` calls that throw in pure-ESM mode.
12
+ *
13
+ * Shared between `loadConfig()` and `serve.ts`'s direct `bundleRequire` call.
14
+ */
15
+ export const BUNDLE_REQUIRE_EXTERNALS = [
16
+ /^@objectstack\//,
17
+ 'sql.js',
18
+ 'knex',
19
+ 'better-sqlite3',
20
+ 'pg',
21
+ 'mysql',
22
+ 'mysql2',
23
+ 'mongodb',
24
+ 'tedious',
25
+ 'oracledb',
26
+ 'sqlite3',
27
+ 'libsql',
28
+ '@libsql/client',
29
+ ];
7
30
  /**
8
31
  * Resolve the config file path. Supports:
9
32
  * - explicit path (objectstack.config.ts)
@@ -46,6 +69,7 @@ export async function loadConfig(source) {
46
69
  const start = Date.now();
47
70
  const { mod } = await bundleRequire({
48
71
  filepath: absolutePath,
72
+ external: BUNDLE_REQUIRE_EXTERNALS,
49
73
  });
50
74
  const baseConfig = mod.default || mod;
51
75
  if (!baseConfig) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
1
  /** URL mount path for the Console portal inside the ObjectStack server */
2
2
  export declare const CONSOLE_PATH = "/_console";
3
3
  /**
4
- * Resolve the filesystem path to the @objectstack/console package.
5
- * Searches workspace locations first, then falls back to node_modules.
4
+ * Resolve the filesystem path to the @object-ui/console package.
5
+ *
6
+ * Resolution order:
7
+ * 1. `require.resolve` from the consumer cwd (typical app install).
8
+ * 2. `require.resolve` from this CLI's own location (pnpm workspace).
9
+ * 3. Direct `<cwd>/node_modules/@object-ui/console` filesystem check.
10
+ * 4. Sibling-repo dev fallback — `../objectui/apps/console` — so the
11
+ * framework monorepo can be developed against an in-tree checkout
12
+ * of objectui without publishing every change. Matched by checking
13
+ * `package.json.name === "@object-ui/console"`.
6
14
  */
7
15
  export declare function resolveConsolePath(): string | null;
8
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/utils/console.ts"],"names":[],"mappings":"AAwBA,0EAA0E;AAC1E,eAAO,MAAM,YAAY,cAAc,CAAC;AAIxC;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CA6ClD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE3D;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE;;;iBAM1F,GAAG;EAgEzB"}
1
+ {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/utils/console.ts"],"names":[],"mappings":"AA2BA,0EAA0E;AAC1E,eAAO,MAAM,YAAY,cAAc,CAAC;AAOxC;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CA8DlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE3D;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE;;;iBAM1F,GAAG;EAmFzB"}
@@ -3,16 +3,19 @@
3
3
  * Console UI Integration Utilities
4
4
  *
5
5
  * Mirrors `studio.ts` / `account.ts` but for the opinionated, fork-ready
6
- * runtime console (`@objectstack/console`). The Console SPA is mounted at
6
+ * runtime console — published as `@object-ui/console` from the
7
+ * objectstack-ai/objectui monorepo. The Console SPA is mounted at
7
8
  * `/_console/` by every deployment that opts in (CLI dev server,
8
9
  * self-host, Vercel) — exactly the same convention as `_studio` and
9
10
  * `_account`. The Console is built with `base: '/_console/'`, so its
10
11
  * pre-built `dist/` is served verbatim.
11
12
  *
12
- * Note: this module was previously named `dashboard.ts` (and the SPA was
13
- * `apps/dashboard`). It was renamed to disambiguate from the spec-level
14
- * `Dashboard` metadata type — the Console *renders* dashboards, it is not
15
- * itself a dashboard.
13
+ * History:
14
+ * - Was previously consumed as a workspace package (`@objectstack/console`
15
+ * at `apps/console`) in this monorepo.
16
+ * - Was renamed and moved upstream to `@object-ui/console` (see
17
+ * https://github.com/objectstack-ai/objectui/tree/main/apps/console).
18
+ * - We now resolve it from `node_modules` like any other npm dep.
16
19
  */
17
20
  import path from 'path';
18
21
  import fs from 'fs';
@@ -21,33 +24,24 @@ import { pathToFileURL } from 'url';
21
24
  // ─── Constants ──────────────────────────────────────────────────────
22
25
  /** URL mount path for the Console portal inside the ObjectStack server */
23
26
  export const CONSOLE_PATH = '/_console';
27
+ /** npm package name for the upstream Console SPA. */
28
+ const CONSOLE_PACKAGE = '@object-ui/console';
24
29
  // ─── Path Resolution ────────────────────────────────────────────────
25
30
  /**
26
- * Resolve the filesystem path to the @objectstack/console package.
27
- * Searches workspace locations first, then falls back to node_modules.
31
+ * Resolve the filesystem path to the @object-ui/console package.
32
+ *
33
+ * Resolution order:
34
+ * 1. `require.resolve` from the consumer cwd (typical app install).
35
+ * 2. `require.resolve` from this CLI's own location (pnpm workspace).
36
+ * 3. Direct `<cwd>/node_modules/@object-ui/console` filesystem check.
37
+ * 4. Sibling-repo dev fallback — `../objectui/apps/console` — so the
38
+ * framework monorepo can be developed against an in-tree checkout
39
+ * of objectui without publishing every change. Matched by checking
40
+ * `package.json.name === "@object-ui/console"`.
28
41
  */
29
42
  export function resolveConsolePath() {
30
43
  const cwd = process.cwd();
31
- // Workspace candidates (monorepo layouts)
32
- const candidates = [
33
- path.resolve(cwd, 'apps/console'),
34
- path.resolve(cwd, '../../apps/console'),
35
- path.resolve(cwd, '../apps/console'),
36
- ];
37
- for (const candidate of candidates) {
38
- const pkgPath = path.join(candidate, 'package.json');
39
- if (fs.existsSync(pkgPath)) {
40
- try {
41
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
42
- if (pkg.name === '@objectstack/console')
43
- return candidate;
44
- }
45
- catch {
46
- // Skip invalid package.json
47
- }
48
- }
49
- }
50
- // Fallback: resolve from node_modules via createRequire.
44
+ // 1 + 2: node module resolution from cwd and from the CLI itself.
51
45
  const resolutionBases = [
52
46
  pathToFileURL(path.join(cwd, 'package.json')).href, // consumer workspace
53
47
  import.meta.url, // CLI package itself
@@ -55,18 +49,58 @@ export function resolveConsolePath() {
55
49
  for (const base of resolutionBases) {
56
50
  try {
57
51
  const req = createRequire(base);
58
- const resolved = req.resolve('@objectstack/console/package.json');
59
- return path.dirname(resolved);
52
+ // Resolve the bare package (uses `main`/`exports`) and walk up
53
+ // to find the package root. Avoids `./package.json` subpath which
54
+ // is gated by the `exports` field in newer packages.
55
+ const resolved = req.resolve(CONSOLE_PACKAGE);
56
+ let dir = path.dirname(resolved);
57
+ // Walk up until we find a package.json whose `name` matches.
58
+ for (let i = 0; i < 8; i++) {
59
+ const pkgPath = path.join(dir, 'package.json');
60
+ if (fs.existsSync(pkgPath)) {
61
+ try {
62
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
63
+ if (pkg.name === CONSOLE_PACKAGE)
64
+ return dir;
65
+ }
66
+ catch {
67
+ // ignore parse errors and keep walking
68
+ }
69
+ }
70
+ const parent = path.dirname(dir);
71
+ if (parent === dir)
72
+ break;
73
+ dir = parent;
74
+ }
60
75
  }
61
76
  catch {
62
- // Not resolvable from this base — try next
77
+ // Not resolvable from this base — try next.
63
78
  }
64
79
  }
65
- // Last resort: direct filesystem check in cwd/node_modules
66
- const directPath = path.join(cwd, 'node_modules', '@objectstack', 'console');
80
+ // 3: direct filesystem check in cwd/node_modules.
81
+ const directPath = path.join(cwd, 'node_modules', '@object-ui', 'console');
67
82
  if (fs.existsSync(path.join(directPath, 'package.json'))) {
68
83
  return directPath;
69
84
  }
85
+ // 4: sibling-repo dev fallback. Useful when iterating on the Console
86
+ // source inside `objectui` while running the framework CLI here.
87
+ const siblingCandidates = [
88
+ path.resolve(cwd, '../objectui/apps/console'),
89
+ path.resolve(cwd, '../../objectui/apps/console'),
90
+ ];
91
+ for (const candidate of siblingCandidates) {
92
+ const pkgPath = path.join(candidate, 'package.json');
93
+ if (fs.existsSync(pkgPath)) {
94
+ try {
95
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
96
+ if (pkg.name === CONSOLE_PACKAGE)
97
+ return candidate;
98
+ }
99
+ catch {
100
+ // Skip invalid package.json
101
+ }
102
+ }
103
+ }
70
104
  return null;
71
105
  }
72
106
  /**
@@ -106,7 +140,21 @@ export function createConsoleStaticPlugin(distPath, options) {
106
140
  ctx.logger?.warn?.(`Console static: dist not found at ${absoluteDist}`);
107
141
  return;
108
142
  }
109
- const readIndexHtml = () => fs.readFileSync(indexPath, 'utf-8');
143
+ const readIndexHtml = () => {
144
+ const raw = fs.readFileSync(indexPath, 'utf-8');
145
+ // Inject <base href="${CONSOLE_PATH}/"> so:
146
+ // 1. Relative asset URLs ('./assets/...') resolve to the
147
+ // correct mount path regardless of where the user navigated.
148
+ // 2. The SPA can derive its React Router basename from
149
+ // `document.baseURI` at runtime, freeing the published
150
+ // build from being pinned to a specific mount.
151
+ //
152
+ // Idempotent — bails if the build already shipped a <base>.
153
+ if (/<base\s/i.test(raw))
154
+ return raw;
155
+ const baseTag = `<base href="${CONSOLE_PATH}/">`;
156
+ return raw.replace(/<head(\s[^>]*)?>/i, (m) => `${m}\n ${baseTag}`);
157
+ };
110
158
  // The Console is the default end-user surface — root `/` redirects
111
159
  // here whenever the Console is mounted (`rootRedirect !== false`).
112
160
  // Mirrors the studio plugin's `rootRedirect` option. The CLI's
@@ -126,8 +174,14 @@ export function createConsoleStaticPlugin(distPath, options) {
126
174
  if (!filePath.startsWith(absoluteDist)) {
127
175
  return c.text('Forbidden', 403);
128
176
  }
129
- // Try serving the exact file
177
+ // Try serving the exact file (HTML files go through the base-tag
178
+ // injection path so all entry points stay path-portable).
130
179
  if (fs.existsSync(filePath) && fs.statSync(filePath).isFile()) {
180
+ if (filePath.endsWith('.html')) {
181
+ return new Response(readIndexHtml(), {
182
+ headers: { 'content-type': 'text/html; charset=utf-8' },
183
+ });
184
+ }
131
185
  const content = fs.readFileSync(filePath);
132
186
  return new Response(content, {
133
187
  headers: { 'content-type': mimeType(filePath) },
@@ -1 +1 @@
1
- {"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/utils/console.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/utils/console.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,uEAAuE;AAEvE,0EAA0E;AAC1E,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;AAExC,qDAAqD;AACrD,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAE7C,uEAAuE;AAEvE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,kEAAkE;IAClE,MAAM,eAAe,GAAG;QACtB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,qBAAqB;QACzE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAuC,qBAAqB;KAC5E,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YAChC,+DAA+D;YAC/D,kEAAkE;YAClE,qDAAqD;YACrD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,6DAA6D;YAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;gBAC/C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC3B,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;wBAC1D,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe;4BAAE,OAAO,GAAG,CAAC;oBAC/C,CAAC;oBAAC,MAAM,CAAC;wBACP,uCAAuC;oBACzC,CAAC;gBACH,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,MAAM,KAAK,GAAG;oBAAE,MAAM;gBAC1B,GAAG,GAAG,MAAM,CAAC;YACf,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IAC3E,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QACzD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,qEAAqE;IACrE,iEAAiE;IACjE,MAAM,iBAAiB,GAAG;QACxB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,0BAA0B,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,6BAA6B,CAAC;KACjD,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACrD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC1D,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe;oBAAE,OAAO,SAAS,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,4BAA4B;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,uEAAuE;AAEvE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,QAAgB,EAAE,OAAqD;IAC/G,OAAO;QACL,IAAI,EAAE,gCAAgC;QAEtC,IAAI,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QAEpB,KAAK,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACxB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC;gBAC3B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,0DAA0D,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YAED,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAE5C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACxD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,qCAAqC,YAAY,EAAE,CAAC,CAAC;gBACxE,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAChD,4CAA4C;gBAC5C,2DAA2D;gBAC3D,kEAAkE;gBAClE,yDAAyD;gBACzD,4DAA4D;gBAC5D,oDAAoD;gBACpD,EAAE;gBACF,4DAA4D;gBAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACrC,MAAM,OAAO,GAAG,eAAe,YAAY,KAAK,CAAC;gBACjD,OAAO,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC;YAEF,mEAAmE;YACnE,mEAAmE;YACnE,+DAA+D;YAC/D,sEAAsE;YACtE,8DAA8D;YAC9D,6DAA6D;YAC7D,IAAI,OAAO,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;gBACpC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;YAED,wDAAwD;YACxD,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC;YAElE,uCAAuC;YACvC,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,IAAI,EAAE,KAAK,EAAE,CAAM,EAAE,EAAE;gBAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;gBACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAElD,mCAAmC;gBACnC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBACvC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;gBAClC,CAAC;gBAED,iEAAiE;gBACjE,0DAA0D;gBAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBAC9D,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC/B,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,EAAE;4BACnC,OAAO,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE;yBACxD,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAC1C,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE;wBAC3B,OAAO,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;qBAChD,CAAC,CAAC;gBACL,CAAC;gBAED,8CAA8C;gBAC9C,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBACnC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;gBAClC,CAAC;gBAED,eAAe;gBACf,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,EAAE;oBACnC,OAAO,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,0DAA0D;YAC1D,KAAK,OAAO,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED,uEAAuE;AAEvE,MAAM,UAAU,GAA2B;IACzC,OAAO,EAAE,0BAA0B;IACnC,KAAK,EAAI,uCAAuC;IAChD,MAAM,EAAG,uCAAuC;IAChD,MAAM,EAAG,yBAAyB;IAClC,OAAO,EAAE,iCAAiC;IAC1C,MAAM,EAAG,eAAe;IACxB,MAAM,EAAG,WAAW;IACpB,MAAM,EAAG,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAG,WAAW;IACpB,MAAM,EAAG,cAAc;IACvB,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAG,UAAU;IACnB,MAAM,EAAG,kBAAkB;CAC5B,CAAC;AAEF,SAAS,QAAQ,CAAC,QAAgB;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC;AACvD,CAAC"}
@@ -36,8 +36,8 @@ const RECOGNISED_MODES = new Set([
36
36
  // Deprecated aliases (kept for back-compat — emit a console warning at boot).
37
37
  'project',
38
38
  'local',
39
- 'single-project',
40
- 'multi-project',
39
+ 'single-environment',
40
+ 'multi-environment',
41
41
  ]);
42
42
  export function shouldBootWithLibrary(config) {
43
43
  if (isHostConfig(config))
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-detection.js","sourceRoot":"","sources":["../../src/utils/plugin-detection.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,MAAW;IACtC,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,UAAU,CAAC,CAC/D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,SAAS;IACT,OAAO;IACP,YAAY;IACZ,8EAA8E;IAC9E,SAAS;IACT,OAAO;IACP,gBAAgB;IAChB,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CAAC,MAAW;IAC/C,IAAI,YAAY,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACzE,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,iCAAiC,IAAI,oCAAoC,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,MAAM,EAAE,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"plugin-detection.js","sourceRoot":"","sources":["../../src/utils/plugin-detection.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,MAAW;IACtC,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,UAAU,CAAC,CAC/D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,SAAS;IACT,OAAO;IACP,YAAY;IACZ,8EAA8E;IAC9E,SAAS;IACT,OAAO;IACP,oBAAoB;IACpB,mBAAmB;CACpB,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CAAC,MAAW;IAC/C,IAAI,YAAY,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACzE,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,iCAAiC,IAAI,oCAAoC,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,MAAM,EAAE,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,43 @@
1
+ export interface FieldPatch {
2
+ label?: string | null;
3
+ description?: string | null;
4
+ required?: boolean | null;
5
+ }
6
+ export type PatchResult = {
7
+ ok: true;
8
+ } | {
9
+ ok: false;
10
+ error: string;
11
+ };
12
+ /**
13
+ * Locate the field's inner object-literal and apply the patch.
14
+ * Writes the file in place when successful.
15
+ */
16
+ export declare function patchObjectFieldFile(absPath: string, fieldKey: string, patch: FieldPatch): Promise<PatchResult>;
17
+ /**
18
+ * Append a new field to the `fields: { ... }` object literal. The
19
+ * `initializer` is the raw TS source that goes on the right-hand side
20
+ * of `<fieldName>: …` — typically an object literal but may be any
21
+ * expression (e.g. `Field.text({ ... })`).
22
+ *
23
+ * Refuses to overwrite an existing field — callers must surface a
24
+ * conflict to the user.
25
+ */
26
+ export declare function addObjectField(absPath: string, fieldName: string, initializer: string): Promise<PatchResult>;
27
+ /**
28
+ * Re-order the properties inside the `fields: { ... }` object literal
29
+ * to match `order[]`. Field names absent from `order` are appended at
30
+ * the end in their existing relative order — keeps the operation safe
31
+ * if the UI has a stale snapshot.
32
+ *
33
+ * Implementation: slice each property's source range out of the file
34
+ * (including any leading whitespace / blank-line / comment trivia and
35
+ * the trailing `,`), then concatenate the slices in the new order. By
36
+ * working on the raw source, indentation, trailing commas, blank-line
37
+ * separators and inline comments are all preserved verbatim. The only
38
+ * cost: a hanging blank line that previously sat *between* two props
39
+ * follows whichever property it precedes after the reorder, which is
40
+ * the natural and least-surprising behaviour.
41
+ */
42
+ export declare function reorderObjectFields(absPath: string, order: readonly string[]): Promise<PatchResult>;
43
+ //# sourceMappingURL=studio-field-patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio-field-patch.d.ts","sourceRoot":"","sources":["../../src/utils/studio-field-patch.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjC;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,WAAW,CAAC,CAgBtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,WAAW,CAAC,CAiEtB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC,CAiEtB"}