@objectstack/cli 4.0.5 → 4.1.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 (59) hide show
  1. package/README.md +32 -0
  2. package/dist/commands/cloud/login.d.ts +16 -0
  3. package/dist/commands/cloud/login.d.ts.map +1 -0
  4. package/dist/commands/cloud/login.js +166 -0
  5. package/dist/commands/cloud/login.js.map +1 -0
  6. package/dist/commands/cloud/logout.d.ts +15 -0
  7. package/dist/commands/cloud/logout.d.ts.map +1 -0
  8. package/dist/commands/cloud/logout.js +51 -0
  9. package/dist/commands/cloud/logout.js.map +1 -0
  10. package/dist/commands/cloud/whoami.d.ts +15 -0
  11. package/dist/commands/cloud/whoami.d.ts.map +1 -0
  12. package/dist/commands/cloud/whoami.js +81 -0
  13. package/dist/commands/cloud/whoami.js.map +1 -0
  14. package/dist/commands/dev.d.ts +6 -0
  15. package/dist/commands/dev.d.ts.map +1 -1
  16. package/dist/commands/dev.js +79 -14
  17. package/dist/commands/dev.js.map +1 -1
  18. package/dist/commands/login.js +2 -2
  19. package/dist/commands/login.js.map +1 -1
  20. package/dist/commands/package/publish.d.ts +32 -0
  21. package/dist/commands/package/publish.d.ts.map +1 -0
  22. package/dist/commands/package/publish.js +324 -0
  23. package/dist/commands/package/publish.js.map +1 -0
  24. package/dist/commands/publish.d.ts +3 -0
  25. package/dist/commands/publish.d.ts.map +1 -1
  26. package/dist/commands/publish.js +55 -11
  27. package/dist/commands/publish.js.map +1 -1
  28. package/dist/commands/rollback.d.ts +13 -0
  29. package/dist/commands/rollback.d.ts.map +1 -0
  30. package/dist/commands/rollback.js +77 -0
  31. package/dist/commands/rollback.js.map +1 -0
  32. package/dist/commands/serve.d.ts +14 -0
  33. package/dist/commands/serve.d.ts.map +1 -1
  34. package/dist/commands/serve.js +583 -30
  35. package/dist/commands/serve.js.map +1 -1
  36. package/dist/commands/start.d.ts +8 -1
  37. package/dist/commands/start.d.ts.map +1 -1
  38. package/dist/commands/start.js +80 -11
  39. package/dist/commands/start.js.map +1 -1
  40. package/dist/index.d.ts +4 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +6 -0
  43. package/dist/index.js.map +1 -1
  44. package/dist/utils/auth-flows.d.ts +31 -0
  45. package/dist/utils/auth-flows.d.ts.map +1 -0
  46. package/dist/utils/auth-flows.js +151 -0
  47. package/dist/utils/auth-flows.js.map +1 -0
  48. package/dist/utils/cloud-config.d.ts +24 -0
  49. package/dist/utils/cloud-config.d.ts.map +1 -0
  50. package/dist/utils/cloud-config.js +75 -0
  51. package/dist/utils/cloud-config.js.map +1 -0
  52. package/dist/utils/console.d.ts +1 -0
  53. package/dist/utils/console.d.ts.map +1 -1
  54. package/dist/utils/console.js +7 -4
  55. package/dist/utils/console.js.map +1 -1
  56. package/dist/utils/studio.d.ts.map +1 -1
  57. package/dist/utils/studio.js +5 -6
  58. package/dist/utils/studio.js.map +1 -1
  59. package/package.json +40 -36
@@ -0,0 +1,77 @@
1
+ // Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2
+ import { Command, Flags } from '@oclif/core';
3
+ import { printHeader, printKV, printSuccess, printError, printStep } from '../utils/format.js';
4
+ export default class Rollback extends Command {
5
+ static description = 'Activate a previously published artifact revision (rollback or roll-forward)';
6
+ static examples = [
7
+ '<%= config.bin %> <%= command.id %> --commit 9ce1bd48dd70',
8
+ 'OS_PROJECT_ID=proj_crm <%= config.bin %> <%= command.id %> --commit abcdef123456',
9
+ ];
10
+ static flags = {
11
+ server: Flags.string({
12
+ char: 's',
13
+ description: 'ObjectStack Cloud control-plane URL',
14
+ env: 'OS_CLOUD_URL',
15
+ default: 'http://localhost:4000',
16
+ }),
17
+ project: Flags.string({
18
+ char: 'p',
19
+ description: 'Project ID (required)',
20
+ env: 'OS_PROJECT_ID',
21
+ required: true,
22
+ }),
23
+ commit: Flags.string({
24
+ char: 'c',
25
+ description: 'Commit ID (full or 12+ char prefix) of the revision to activate',
26
+ required: true,
27
+ }),
28
+ token: Flags.string({
29
+ char: 't',
30
+ description: 'API key for ObjectStack Cloud',
31
+ env: 'OS_CLOUD_API_KEY',
32
+ }),
33
+ };
34
+ async run() {
35
+ const { flags } = await this.parse(Rollback);
36
+ printHeader('Rollback / Activate Revision');
37
+ try {
38
+ const url = `${flags.server}/api/v1/cloud/projects/${flags.project}/revisions/${flags.commit}/activate`;
39
+ printStep(`POST ${url}`);
40
+ const response = await fetch(url, {
41
+ method: 'POST',
42
+ headers: {
43
+ 'Content-Type': 'application/json',
44
+ ...(flags.token && { Authorization: `Bearer ${flags.token}` }),
45
+ },
46
+ });
47
+ if (!response.ok) {
48
+ let errMsg;
49
+ try {
50
+ const errBody = await response.json();
51
+ errMsg = errBody?.error ?? response.statusText;
52
+ }
53
+ catch {
54
+ errMsg = response.statusText;
55
+ }
56
+ printError(`Activate failed (${response.status}): ${errMsg}`);
57
+ this.exit(1);
58
+ return;
59
+ }
60
+ const result = await response.json();
61
+ const data = result?.data ?? result;
62
+ console.log('');
63
+ printSuccess('Revision activated');
64
+ printKV(' Project', flags.project);
65
+ if (data?.commitId)
66
+ printKV(' Commit', data.commitId);
67
+ if (data?.previousCommitId)
68
+ printKV(' Previous', data.previousCommitId);
69
+ printKV(' Server', flags.server);
70
+ }
71
+ catch (error) {
72
+ printError(error.message);
73
+ this.exit(1);
74
+ }
75
+ }
76
+ }
77
+ //# sourceMappingURL=rollback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollback.js","sourceRoot":"","sources":["../../src/commands/rollback.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,24 @@ export default class Serve extends Command {
8
8
  port: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
9
  dev: import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
10
  ui: import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
+ console: import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
12
  server: import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
13
  prebuilt: import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
14
  preset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
14
15
  };
16
+ /**
17
+ * Capabilities auto-added to every app's `requires` for every preset
18
+ * EXCEPT `minimal`. These form the foundation that every server-side
19
+ * runtime expects to exist (background work, settings persistence,
20
+ * transactional mail, file uploads). Apps may still list these in
21
+ * `requires:` explicitly — duplicates are de-duped.
22
+ *
23
+ * Opt out: `objectstack serve --preset minimal`.
24
+ *
25
+ * Mirrored on hosted objectos per-project kernels by
26
+ * `mountDefaultProjectPlugins()` in `@objectstack/service-cloud`.
27
+ */
28
+ static readonly ALWAYS_ON_CAPABILITIES: readonly string[];
15
29
  /**
16
30
  * Auto-registered plugin tiers. Plugins explicitly listed in
17
31
  * `config.plugins` are always loaded — tiers only gate the optional
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AA8DnD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAA8D;IAEzF,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;MAUnB;IAEF;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAIpD;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA40B3B"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AA8DnD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAAkM;IAE7N,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;;MAenB;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAEtD;IAEH;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAIpD;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAq1C3B"}