@objectstack/cli 4.0.1 → 4.0.2

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/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +17 -0
  3. package/dist/commands/auth/login.d.ts +13 -0
  4. package/dist/commands/auth/login.d.ts.map +1 -0
  5. package/dist/commands/auth/login.js +167 -0
  6. package/dist/commands/auth/login.js.map +1 -0
  7. package/dist/commands/auth/logout.d.ts +10 -0
  8. package/dist/commands/auth/logout.d.ts.map +1 -0
  9. package/dist/commands/auth/logout.js +46 -0
  10. package/dist/commands/auth/logout.js.map +1 -0
  11. package/dist/commands/auth/whoami.d.ts +12 -0
  12. package/dist/commands/auth/whoami.d.ts.map +1 -0
  13. package/dist/commands/auth/whoami.js +76 -0
  14. package/dist/commands/auth/whoami.js.map +1 -0
  15. package/dist/commands/data/create.d.ts +17 -0
  16. package/dist/commands/data/create.d.ts.map +1 -0
  17. package/dist/commands/data/create.js +106 -0
  18. package/dist/commands/data/create.js.map +1 -0
  19. package/dist/commands/data/delete.d.ts +16 -0
  20. package/dist/commands/data/delete.d.ts.map +1 -0
  21. package/dist/commands/data/delete.js +78 -0
  22. package/dist/commands/data/delete.js.map +1 -0
  23. package/dist/commands/data/get.d.ts +16 -0
  24. package/dist/commands/data/get.d.ts.map +1 -0
  25. package/dist/commands/data/get.js +79 -0
  26. package/dist/commands/data/get.js.map +1 -0
  27. package/dist/commands/data/query.d.ts +20 -0
  28. package/dist/commands/data/query.d.ts.map +1 -0
  29. package/dist/commands/data/query.js +118 -0
  30. package/dist/commands/data/query.js.map +1 -0
  31. package/dist/commands/data/update.d.ts +18 -0
  32. package/dist/commands/data/update.d.ts.map +1 -0
  33. package/dist/commands/data/update.js +110 -0
  34. package/dist/commands/data/update.js.map +1 -0
  35. package/dist/commands/meta/delete.d.ts +16 -0
  36. package/dist/commands/meta/delete.d.ts.map +1 -0
  37. package/dist/commands/meta/delete.js +73 -0
  38. package/dist/commands/meta/delete.js.map +1 -0
  39. package/dist/commands/meta/get.d.ts +16 -0
  40. package/dist/commands/meta/get.d.ts.map +1 -0
  41. package/dist/commands/meta/get.js +65 -0
  42. package/dist/commands/meta/get.js.map +1 -0
  43. package/dist/commands/meta/list.d.ts +15 -0
  44. package/dist/commands/meta/list.d.ts.map +1 -0
  45. package/dist/commands/meta/list.js +103 -0
  46. package/dist/commands/meta/list.js.map +1 -0
  47. package/dist/commands/meta/register.d.ts +16 -0
  48. package/dist/commands/meta/register.d.ts.map +1 -0
  49. package/dist/commands/meta/register.js +89 -0
  50. package/dist/commands/meta/register.js.map +1 -0
  51. package/dist/commands/serve.d.ts.map +1 -1
  52. package/dist/commands/serve.js +33 -0
  53. package/dist/commands/serve.js.map +1 -1
  54. package/dist/utils/api-client.d.ts +42 -0
  55. package/dist/utils/api-client.d.ts.map +1 -0
  56. package/dist/utils/api-client.js +53 -0
  57. package/dist/utils/api-client.js.map +1 -0
  58. package/dist/utils/auth-config.d.ts +50 -0
  59. package/dist/utils/auth-config.d.ts.map +1 -0
  60. package/dist/utils/auth-config.js +73 -0
  61. package/dist/utils/auth-config.js.map +1 -0
  62. package/dist/utils/output-formatter.d.ts +9 -0
  63. package/dist/utils/output-formatter.d.ts.map +1 -0
  64. package/dist/utils/output-formatter.js +80 -0
  65. package/dist/utils/output-formatter.js.map +1 -0
  66. package/package.json +17 -12
  67. package/src/commands/auth/login.ts +188 -0
  68. package/src/commands/auth/logout.ts +51 -0
  69. package/src/commands/auth/whoami.ts +85 -0
  70. package/src/commands/data/create.ts +110 -0
  71. package/src/commands/data/delete.ts +84 -0
  72. package/src/commands/data/get.ts +84 -0
  73. package/src/commands/data/query.ts +127 -0
  74. package/src/commands/data/update.ts +114 -0
  75. package/src/commands/meta/delete.ts +79 -0
  76. package/src/commands/meta/get.ts +73 -0
  77. package/src/commands/meta/list.ts +105 -0
  78. package/src/commands/meta/register.ts +97 -0
  79. package/src/commands/serve.ts +38 -0
  80. package/src/utils/api-client.ts +88 -0
  81. package/src/utils/auth-config.ts +107 -0
  82. package/src/utils/output-formatter.ts +91 -0
  83. package/test/remote-api-commands.test.ts +188 -0
  84. package/test/remote-api-utils.test.ts +196 -0
@@ -0,0 +1,103 @@
1
+ // Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2
+ import { Args, Command, Flags } from '@oclif/core';
3
+ import { printError } from '../../utils/format.js';
4
+ import { createApiClient, requireAuth } from '../../utils/api-client.js';
5
+ import { formatOutput } from '../../utils/output-formatter.js';
6
+ export default class MetaList extends Command {
7
+ static description = 'List metadata types or items';
8
+ static examples = [
9
+ '$ os meta list',
10
+ '$ os meta list object',
11
+ '$ os meta list plugin --format json',
12
+ ];
13
+ static args = {
14
+ type: Args.string({
15
+ description: 'Metadata type (object, plugin, view, etc.)',
16
+ }),
17
+ };
18
+ static flags = {
19
+ url: Flags.string({
20
+ char: 'u',
21
+ description: 'Server URL',
22
+ env: 'OBJECTSTACK_URL',
23
+ }),
24
+ token: Flags.string({
25
+ char: 't',
26
+ description: 'Authentication token',
27
+ env: 'OBJECTSTACK_TOKEN',
28
+ }),
29
+ format: Flags.string({
30
+ char: 'f',
31
+ description: 'Output format',
32
+ options: ['json', 'table', 'yaml'],
33
+ default: 'table',
34
+ }),
35
+ };
36
+ async run() {
37
+ const { args, flags } = await this.parse(MetaList);
38
+ try {
39
+ const { client, token } = await createApiClient({
40
+ url: flags.url,
41
+ token: flags.token,
42
+ });
43
+ requireAuth(token);
44
+ if (!args.type) {
45
+ // List all metadata types
46
+ const types = await client.meta.getTypes();
47
+ if (flags.format === 'json') {
48
+ formatOutput(types, 'json');
49
+ }
50
+ else if (flags.format === 'yaml') {
51
+ formatOutput(types, 'yaml');
52
+ }
53
+ else {
54
+ console.log('\nAvailable metadata types:\n');
55
+ if (Array.isArray(types)) {
56
+ types.forEach(type => console.log(` • ${type}`));
57
+ }
58
+ else {
59
+ console.log('No types available');
60
+ }
61
+ console.log('');
62
+ }
63
+ }
64
+ else {
65
+ // List items of a specific type
66
+ const items = await client.meta.getItems(args.type);
67
+ if (flags.format === 'json') {
68
+ formatOutput(items, 'json');
69
+ }
70
+ else if (flags.format === 'yaml') {
71
+ formatOutput(items, 'yaml');
72
+ }
73
+ else {
74
+ console.log(`\n${args.type} items:\n`);
75
+ if (Array.isArray(items)) {
76
+ if (items.length === 0) {
77
+ console.log(' (no items)');
78
+ }
79
+ else {
80
+ items.forEach(item => {
81
+ const name = item.name || item.id || JSON.stringify(item);
82
+ console.log(` • ${name}`);
83
+ });
84
+ }
85
+ }
86
+ console.log('');
87
+ }
88
+ }
89
+ }
90
+ catch (error) {
91
+ if (flags.format === 'json') {
92
+ console.log(JSON.stringify({
93
+ success: false,
94
+ error: error.message,
95
+ }, null, 2));
96
+ this.exit(1);
97
+ }
98
+ printError(error.message || String(error));
99
+ this.exit(1);
100
+ }
101
+ }
102
+ }
103
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/meta/list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class MetaRegister extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ type: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ url: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ token: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ data: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
12
+ format: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
13
+ };
14
+ run(): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../src/commands/meta/register.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AAKnD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAC/C,OAAgB,WAAW,SAA0C;IAErE,OAAgB,QAAQ,WAGtB;IAEF,OAAgB,IAAI;;MAKlB;IAEF,OAAgB,KAAK;;;;;MAsBnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAkD3B"}
@@ -0,0 +1,89 @@
1
+ // Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2
+ import { Args, Command, Flags } from '@oclif/core';
3
+ import { printError, printSuccess } from '../../utils/format.js';
4
+ import { createApiClient, requireAuth } from '../../utils/api-client.js';
5
+ import { formatOutput } from '../../utils/output-formatter.js';
6
+ export default class MetaRegister extends Command {
7
+ static description = 'Register metadata (create or update)';
8
+ static examples = [
9
+ '$ os meta register object --data object-def.json',
10
+ '$ os meta register plugin --data plugin-manifest.json',
11
+ ];
12
+ static args = {
13
+ type: Args.string({
14
+ description: 'Metadata type',
15
+ required: true,
16
+ }),
17
+ };
18
+ static flags = {
19
+ url: Flags.string({
20
+ char: 'u',
21
+ description: 'Server URL',
22
+ env: 'OBJECTSTACK_URL',
23
+ }),
24
+ token: Flags.string({
25
+ char: 't',
26
+ description: 'Authentication token',
27
+ env: 'OBJECTSTACK_TOKEN',
28
+ }),
29
+ data: Flags.string({
30
+ char: 'd',
31
+ description: 'Path to JSON file containing metadata definition',
32
+ required: true,
33
+ }),
34
+ format: Flags.string({
35
+ char: 'f',
36
+ description: 'Output format',
37
+ options: ['json', 'table', 'yaml'],
38
+ default: 'table',
39
+ }),
40
+ };
41
+ async run() {
42
+ const { args, flags } = await this.parse(MetaRegister);
43
+ try {
44
+ const { client, token } = await createApiClient({
45
+ url: flags.url,
46
+ token: flags.token,
47
+ });
48
+ requireAuth(token);
49
+ // Read metadata from file
50
+ const { readFile } = await import('node:fs/promises');
51
+ const fileContent = await readFile(flags.data, 'utf-8');
52
+ let metadata;
53
+ try {
54
+ metadata = JSON.parse(fileContent);
55
+ }
56
+ catch (e) {
57
+ throw new Error(`Invalid JSON in file: ${e.message}`);
58
+ }
59
+ // Extract name from metadata
60
+ const name = metadata.name;
61
+ if (!name) {
62
+ throw new Error('Metadata definition must include a "name" field');
63
+ }
64
+ // Register the metadata
65
+ const result = await client.meta.saveItem(args.type, name, metadata);
66
+ if (flags.format === 'json') {
67
+ formatOutput(result, 'json');
68
+ }
69
+ else if (flags.format === 'yaml') {
70
+ formatOutput(result, 'yaml');
71
+ }
72
+ else {
73
+ printSuccess(`Metadata registered: ${args.type}/${name}`);
74
+ }
75
+ }
76
+ catch (error) {
77
+ if (flags.format === 'json') {
78
+ console.log(JSON.stringify({
79
+ success: false,
80
+ error: error.message,
81
+ }, null, 2));
82
+ this.exit(1);
83
+ }
84
+ printError(error.message || String(error));
85
+ this.exit(1);
86
+ }
87
+ }
88
+ }
89
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../../src/commands/meta/register.ts"],"names":[],"mappings":"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"}
@@ -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;AAkDnD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAA8D;IAEzF,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;MAKnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAkT3B"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AAkDnD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAA8D;IAEzF,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;MAKnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAwV3B"}
@@ -222,6 +222,20 @@ export default class Serve extends Command {
222
222
  console.warn(chalk.yellow(` ⚠ HTTP server plugin not available: ${e.message}`));
223
223
  }
224
224
  }
225
+ // 5. Auto-register SetupPlugin BEFORE config plugins so that other
226
+ // plugins (e.g. AuthPlugin) can call setupNav.contribute() during init.
227
+ const hasSetupPlugin = plugins.some((p) => p.name === 'com.objectstack.setup' || p.constructor?.name === 'SetupPlugin');
228
+ if (!hasSetupPlugin) {
229
+ try {
230
+ const setupPkg = '@objectstack/plugin-setup';
231
+ const { SetupPlugin } = await import(/* webpackIgnore: true */ setupPkg);
232
+ await kernel.use(new SetupPlugin());
233
+ trackPlugin('Setup');
234
+ }
235
+ catch {
236
+ // @objectstack/plugin-setup not installed — setup app unavailable
237
+ }
238
+ }
225
239
  if (plugins.length > 0) {
226
240
  for (const plugin of plugins) {
227
241
  try {
@@ -276,6 +290,25 @@ export default class Serve extends Command {
276
290
  // optional
277
291
  }
278
292
  }
293
+ // 4. Auto-register AIServicePlugin if not already loaded by config plugins.
294
+ // Registered AFTER Dispatcher so that the ai:routes hook listener is
295
+ // already in place when AIServicePlugin.start() fires the hook.
296
+ const hasAIPlugin = plugins.some((p) => p.name === 'com.objectstack.service-ai'
297
+ || p.constructor?.name === 'AIServicePlugin');
298
+ if (!hasAIPlugin) {
299
+ try {
300
+ const aiPkg = '@objectstack/service-ai';
301
+ const { AIServicePlugin } = await import(/* webpackIgnore: true */ aiPkg);
302
+ // AIServicePlugin will auto-detect LLM provider from environment variables
303
+ // (AI_GATEWAY_MODEL, OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_GENERATIVE_AI_API_KEY)
304
+ // No need to manually construct the adapter here.
305
+ await kernel.use(new AIServicePlugin());
306
+ trackPlugin('AIService');
307
+ }
308
+ catch {
309
+ // @objectstack/service-ai not installed — AI features unavailable
310
+ }
311
+ }
279
312
  // ── Studio UI ─────────────────────────────────────────────────
280
313
  // In dev mode, Studio UI is enabled by default (use --no-ui to disable).
281
314
  // Always serves the pre-built dist/ — no Vite dev server, no extra port.
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { ObjectStackClient } from '@objectstack/client';
2
+ /**
3
+ * API client configuration options for CLI commands
4
+ */
5
+ export interface ApiClientOptions {
6
+ /**
7
+ * Server URL (defaults to OBJECTSTACK_URL env var or http://localhost:3000)
8
+ */
9
+ url?: string;
10
+ /**
11
+ * Authentication token (defaults to stored credentials or OBJECTSTACK_TOKEN env var)
12
+ */
13
+ token?: string;
14
+ /**
15
+ * Enable debug logging
16
+ */
17
+ debug?: boolean;
18
+ }
19
+ /**
20
+ * Result returned by createApiClient — exposes the resolved token so commands
21
+ * can call requireAuth() without accessing private client fields.
22
+ */
23
+ export interface ApiClientResult {
24
+ client: ObjectStackClient;
25
+ token?: string;
26
+ }
27
+ /**
28
+ * Create an authenticated ObjectStack API client for CLI commands.
29
+ *
30
+ * Resolves configuration in this priority order:
31
+ * 1. Explicit options passed to the function
32
+ * 2. Environment variables (OBJECTSTACK_URL, OBJECTSTACK_TOKEN)
33
+ * 3. Stored credentials from `os auth login`
34
+ * 4. Defaults (http://localhost:3000)
35
+ */
36
+ export declare function createApiClient(options?: ApiClientOptions): Promise<ApiClientResult>;
37
+ /**
38
+ * Ensure authentication is present, throwing an error if not.
39
+ * Use this in commands that require authentication.
40
+ */
41
+ export declare function requireAuth(token?: string): void;
42
+ //# sourceMappingURL=api-client.d.ts.map
@@ -0,0 +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;;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;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAkC9F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAMhD"}
@@ -0,0 +1,53 @@
1
+ // Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2
+ import { ObjectStackClient } from '@objectstack/client';
3
+ import { readAuthConfig } from './auth-config.js';
4
+ /**
5
+ * Create an authenticated ObjectStack API client for CLI commands.
6
+ *
7
+ * Resolves configuration in this priority order:
8
+ * 1. Explicit options passed to the function
9
+ * 2. Environment variables (OBJECTSTACK_URL, OBJECTSTACK_TOKEN)
10
+ * 3. Stored credentials from `os auth login`
11
+ * 4. Defaults (http://localhost:3000)
12
+ */
13
+ export async function createApiClient(options = {}) {
14
+ // Resolve server URL (without applying defaults yet)
15
+ let baseUrl = options.url || process.env.OBJECTSTACK_URL;
16
+ // Resolve authentication token
17
+ let token = options.token || process.env.OBJECTSTACK_TOKEN;
18
+ // If URL or token is missing, try to load from stored credentials
19
+ if (!baseUrl || !token) {
20
+ try {
21
+ const authConfig = await readAuthConfig();
22
+ if (!token && authConfig.token) {
23
+ token = authConfig.token;
24
+ }
25
+ if (!baseUrl && authConfig.url) {
26
+ baseUrl = authConfig.url;
27
+ }
28
+ }
29
+ catch {
30
+ // No stored credentials - commands will fail if auth is required
31
+ }
32
+ }
33
+ // Apply final default for baseUrl if still not resolved
34
+ if (!baseUrl) {
35
+ baseUrl = 'http://localhost:3000';
36
+ }
37
+ const client = new ObjectStackClient({
38
+ baseUrl,
39
+ token,
40
+ debug: options.debug || false,
41
+ });
42
+ return { client, token };
43
+ }
44
+ /**
45
+ * Ensure authentication is present, throwing an error if not.
46
+ * Use this in commands that require authentication.
47
+ */
48
+ export function requireAuth(token) {
49
+ if (!token) {
50
+ throw new Error('Authentication required. Please run `os auth login` or set OBJECTSTACK_TOKEN environment variable.');
51
+ }
52
+ }
53
+ //# sourceMappingURL=api-client.js.map
@@ -0,0 +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;AA6BlD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA4B,EAAE;IAClE,qDAAqD;IACrD,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAEzD,+BAA+B;IAC/B,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAE3D,kEAAkE;IAClE,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,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;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,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;KAC9B,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Authentication configuration stored in ~/.objectstack/credentials.json
3
+ */
4
+ export interface AuthConfig {
5
+ /**
6
+ * Server URL (base URL for the ObjectStack instance)
7
+ */
8
+ url: string;
9
+ /**
10
+ * Authentication token (Bearer token)
11
+ */
12
+ token: string;
13
+ /**
14
+ * User email (for display purposes)
15
+ */
16
+ email?: string;
17
+ /**
18
+ * User ID
19
+ */
20
+ userId?: string;
21
+ /**
22
+ * Timestamp when credentials were created
23
+ */
24
+ createdAt: string;
25
+ /**
26
+ * Timestamp when credentials were last used
27
+ */
28
+ lastUsedAt?: string;
29
+ }
30
+ /**
31
+ * Get the path to the credentials file
32
+ */
33
+ export declare function getCredentialsPath(): string;
34
+ /**
35
+ * Read stored authentication configuration
36
+ */
37
+ export declare function readAuthConfig(): Promise<AuthConfig>;
38
+ /**
39
+ * Write authentication configuration
40
+ */
41
+ export declare function writeAuthConfig(config: AuthConfig): Promise<void>;
42
+ /**
43
+ * Delete stored authentication configuration
44
+ */
45
+ export declare function deleteAuthConfig(): Promise<void>;
46
+ /**
47
+ * Update last used timestamp
48
+ */
49
+ export declare function touchAuthConfig(): Promise<void>;
50
+ //# sourceMappingURL=auth-config.d.ts.map
@@ -0,0 +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;CACrB;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"}
@@ -0,0 +1,73 @@
1
+ // Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2
+ import { homedir } from 'node:os';
3
+ import { join } from 'node:path';
4
+ import { readFile, writeFile, mkdir, chmod } from 'node:fs/promises';
5
+ /**
6
+ * Get the path to the credentials file
7
+ */
8
+ export function getCredentialsPath() {
9
+ return join(homedir(), '.objectstack', 'credentials.json');
10
+ }
11
+ /**
12
+ * Read stored authentication configuration
13
+ */
14
+ export async function readAuthConfig() {
15
+ const path = getCredentialsPath();
16
+ try {
17
+ const content = await readFile(path, 'utf-8');
18
+ return JSON.parse(content);
19
+ }
20
+ catch (error) {
21
+ if (error.code === 'ENOENT') {
22
+ throw new Error('No stored credentials found. Please run `os auth login` first.');
23
+ }
24
+ throw new Error(`Failed to read credentials: ${error.message}`);
25
+ }
26
+ }
27
+ /**
28
+ * Write authentication configuration
29
+ */
30
+ export async function writeAuthConfig(config) {
31
+ const path = getCredentialsPath();
32
+ const dir = join(homedir(), '.objectstack');
33
+ // Ensure directory exists
34
+ await mkdir(dir, { recursive: true });
35
+ // Write credentials file
36
+ await writeFile(path, JSON.stringify(config, null, 2), { mode: 0o600 });
37
+ // Explicitly enforce permissions in case the file already existed with broader perms
38
+ try {
39
+ await chmod(path, 0o600);
40
+ }
41
+ catch {
42
+ // Best-effort — platforms that don't support chmod will silently continue
43
+ }
44
+ }
45
+ /**
46
+ * Delete stored authentication configuration
47
+ */
48
+ export async function deleteAuthConfig() {
49
+ const path = getCredentialsPath();
50
+ try {
51
+ const { unlink } = await import('node:fs/promises');
52
+ await unlink(path);
53
+ }
54
+ catch (error) {
55
+ if (error.code !== 'ENOENT') {
56
+ throw new Error(`Failed to delete credentials: ${error.message}`);
57
+ }
58
+ }
59
+ }
60
+ /**
61
+ * Update last used timestamp
62
+ */
63
+ export async function touchAuthConfig() {
64
+ try {
65
+ const config = await readAuthConfig();
66
+ config.lastUsedAt = new Date().toISOString();
67
+ await writeAuthConfig(config);
68
+ }
69
+ catch {
70
+ // Ignore errors - this is best-effort
71
+ }
72
+ }
73
+ //# sourceMappingURL=auth-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-config.js","sourceRoot":"","sources":["../../src/utils/auth-config.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAgCrE;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;IAC3C,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAkB;IACtD,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;IAE5C,0BAA0B;IAC1B,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtC,yBAAyB;IACzB,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAExE,qFAAqF;IACrF,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;IAC5E,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;QACtC,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Output format options for CLI commands
3
+ */
4
+ export type OutputFormat = 'json' | 'table' | 'yaml';
5
+ /**
6
+ * Format and output data according to the specified format
7
+ */
8
+ export declare function formatOutput(data: any, format?: OutputFormat): void;
9
+ //# sourceMappingURL=output-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/output-formatter.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAErD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,GAAE,YAAqB,GAAG,IAAI,CAyB3E"}