@carthooks/arcubase-cli 0.1.26 → 0.1.27
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.
- package/bundle/arcubase-admin.mjs +17982 -17958
- package/bundle/arcubase.mjs +17982 -17958
- package/dist/runtime/execute.d.ts.map +1 -1
- package/dist/runtime/execute.js +21 -6
- package/package.json +2 -1
- package/src/runtime/execute.ts +20 -6
- package/src/tests/dev_sdk_gen.test.ts +4 -4
- package/dist/runtime/dev_sdk_gen.d.ts +0 -9
- package/dist/runtime/dev_sdk_gen.d.ts.map +0 -1
- package/dist/runtime/dev_sdk_gen.js +0 -598
- package/src/runtime/dev_sdk_gen.ts +0 -666
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/runtime/execute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/runtime/execute.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1D,OAAO,EAAyF,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAQhJ,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,YAAY,CAAA;IACnB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CAC9B,CAAA;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAe1D;AAaD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,QAAsB,GAAG,MAAM,CAoB7G;AA8BD,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAUlD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,QAAsB,GAAG,MAAM,CA8HpI;AAg0ED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,uBAAuB,CActH;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAyOrI"}
|
package/dist/runtime/execute.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
|
+
import { ArcubaseCodeGenError, generateArcubaseProjectSDK } from '@arcubase/code-gen';
|
|
3
4
|
import { parseCLIArgs, hasFlag, flagValue } from './argv.js';
|
|
4
5
|
import { loadRuntimeEnv } from './env.js';
|
|
5
6
|
import { CLIError } from './errors.js';
|
|
@@ -11,7 +12,6 @@ import { resolveArcubaseSDKPath } from './paths.js';
|
|
|
11
12
|
import { compileCSVImportMapping, compileExcelImportMapping } from './entity_import_mapping.js';
|
|
12
13
|
import { uploadLocalFileWithToken } from './local_upload.js';
|
|
13
14
|
import { renderCommandHelpExamples } from './help_examples.js';
|
|
14
|
-
import { generateArcubaseProjectSDK } from './dev_sdk_gen.js';
|
|
15
15
|
export function renderRootHelp(scope) {
|
|
16
16
|
const binary = scope === 'admin' ? 'arcubase-admin' : 'arcubase';
|
|
17
17
|
const modules = scope === 'admin' ? [...listModules(scope), 'dev'].sort() : listModules(scope);
|
|
@@ -1808,11 +1808,26 @@ async function executeDevSDKGen(runtimeEnv, flags, fetchImpl) {
|
|
|
1808
1808
|
ingresses.push(...entityIngresses);
|
|
1809
1809
|
}
|
|
1810
1810
|
assertSDKGenIngressesReady(ingresses);
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1811
|
+
let generated;
|
|
1812
|
+
try {
|
|
1813
|
+
generated = generateArcubaseProjectSDK({
|
|
1814
|
+
id: resolveSDKGenAppId(appId, appPayload),
|
|
1815
|
+
name: typeof appPayload.name === 'string' ? appPayload.name : undefined,
|
|
1816
|
+
ingresses,
|
|
1817
|
+
});
|
|
1818
|
+
}
|
|
1819
|
+
catch (error) {
|
|
1820
|
+
if (error instanceof ArcubaseCodeGenError) {
|
|
1821
|
+
throw new CLIError(error.code, error.message, 2, {
|
|
1822
|
+
operation: 'dev sdk-gen',
|
|
1823
|
+
suggestions: [
|
|
1824
|
+
'set stable ingress.key and field.key values in Arcubase admin before running sdk-gen',
|
|
1825
|
+
'rerun arcubase-admin dev sdk-gen after schema keys are complete',
|
|
1826
|
+
],
|
|
1827
|
+
});
|
|
1828
|
+
}
|
|
1829
|
+
throw error;
|
|
1830
|
+
}
|
|
1816
1831
|
const absoluteOutDir = path.resolve(process.cwd(), outDir);
|
|
1817
1832
|
for (const file of generated.files) {
|
|
1818
1833
|
const targetPath = path.resolve(absoluteOutDir, file.path);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carthooks/arcubase-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.27",
|
|
4
4
|
"description": "Arcubase runtime CLI for admin and user command execution",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"docs:llms": "node -e \"\""
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
+
"@arcubase/code-gen": "^0.1.1",
|
|
34
35
|
"@carthooks/client-ts": "0.8.0",
|
|
35
36
|
"zod": "^4.4.3"
|
|
36
37
|
},
|
package/src/runtime/execute.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import fs from 'fs'
|
|
2
2
|
import path from 'path'
|
|
3
|
+
import { ArcubaseCodeGenError, generateArcubaseProjectSDK } from '@arcubase/code-gen'
|
|
3
4
|
import { parseCLIArgs, hasFlag, flagValue } from './argv.js'
|
|
4
5
|
import { loadRuntimeEnv, type RuntimeEnv } from './env.js'
|
|
5
6
|
import { CLIError, type CLIErrorDetails } from './errors.js'
|
|
@@ -11,7 +12,6 @@ import { resolveArcubaseSDKPath } from './paths.js'
|
|
|
11
12
|
import { compileCSVImportMapping, compileExcelImportMapping, type CompiledEntityImportConfig } from './entity_import_mapping.js'
|
|
12
13
|
import { uploadLocalFileWithToken } from './local_upload.js'
|
|
13
14
|
import { renderCommandHelpExamples } from './help_examples.js'
|
|
14
|
-
import { generateArcubaseProjectSDK } from './dev_sdk_gen.js'
|
|
15
15
|
|
|
16
16
|
export type CommandExecutionSummary = {
|
|
17
17
|
scope: CommandScope
|
|
@@ -2228,11 +2228,25 @@ async function executeDevSDKGen(
|
|
|
2228
2228
|
ingresses.push(...entityIngresses)
|
|
2229
2229
|
}
|
|
2230
2230
|
assertSDKGenIngressesReady(ingresses)
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2231
|
+
let generated
|
|
2232
|
+
try {
|
|
2233
|
+
generated = generateArcubaseProjectSDK({
|
|
2234
|
+
id: resolveSDKGenAppId(appId, appPayload),
|
|
2235
|
+
name: typeof appPayload.name === 'string' ? appPayload.name : undefined,
|
|
2236
|
+
ingresses,
|
|
2237
|
+
})
|
|
2238
|
+
} catch (error) {
|
|
2239
|
+
if (error instanceof ArcubaseCodeGenError) {
|
|
2240
|
+
throw new CLIError(error.code, error.message, 2, {
|
|
2241
|
+
operation: 'dev sdk-gen',
|
|
2242
|
+
suggestions: [
|
|
2243
|
+
'set stable ingress.key and field.key values in Arcubase admin before running sdk-gen',
|
|
2244
|
+
'rerun arcubase-admin dev sdk-gen after schema keys are complete',
|
|
2245
|
+
],
|
|
2246
|
+
})
|
|
2247
|
+
}
|
|
2248
|
+
throw error
|
|
2249
|
+
}
|
|
2236
2250
|
const absoluteOutDir = path.resolve(process.cwd(), outDir)
|
|
2237
2251
|
|
|
2238
2252
|
for (const file of generated.files) {
|
|
@@ -4,7 +4,7 @@ import fs from 'fs'
|
|
|
4
4
|
import os from 'os'
|
|
5
5
|
import path from 'path'
|
|
6
6
|
|
|
7
|
-
import { generateArcubaseProjectSDK } from '
|
|
7
|
+
import { ArcubaseCodeGenError, generateArcubaseProjectSDK } from '@arcubase/code-gen'
|
|
8
8
|
import { executeCLI } from '../runtime/execute.js'
|
|
9
9
|
import { CLIError } from '../runtime/errors.js'
|
|
10
10
|
|
|
@@ -143,7 +143,7 @@ test('generateArcubaseProjectSDK rejects missing field keys', () => {
|
|
|
143
143
|
payload.ingresses[0].entity.fields[1].key = ''
|
|
144
144
|
|
|
145
145
|
assert.throws(() => generateArcubaseProjectSDK(payload), (error: unknown) => {
|
|
146
|
-
assert.ok(error instanceof
|
|
146
|
+
assert.ok(error instanceof ArcubaseCodeGenError)
|
|
147
147
|
assert.equal(error.code, 'SDK_GEN_FIELD_KEY_REQUIRED')
|
|
148
148
|
assert.match(error.message, /Status/)
|
|
149
149
|
return true
|
|
@@ -155,7 +155,7 @@ test('generateArcubaseProjectSDK rejects duplicate field keys within an entity',
|
|
|
155
155
|
payload.ingresses[0].entity.fields[1].key = 'notes'
|
|
156
156
|
|
|
157
157
|
assert.throws(() => generateArcubaseProjectSDK(payload), (error: unknown) => {
|
|
158
|
-
assert.ok(error instanceof
|
|
158
|
+
assert.ok(error instanceof ArcubaseCodeGenError)
|
|
159
159
|
assert.equal(error.code, 'SDK_GEN_DUPLICATE_FIELD_KEY')
|
|
160
160
|
assert.match(error.message, /notes/)
|
|
161
161
|
return true
|
|
@@ -167,7 +167,7 @@ test('generateArcubaseProjectSDK rejects missing ingress keys', () => {
|
|
|
167
167
|
payload.ingresses[0].key = ''
|
|
168
168
|
|
|
169
169
|
assert.throws(() => generateArcubaseProjectSDK(payload), (error: unknown) => {
|
|
170
|
-
assert.ok(error instanceof
|
|
170
|
+
assert.ok(error instanceof ArcubaseCodeGenError)
|
|
171
171
|
assert.equal(error.code, 'SDK_GEN_INGRESS_KEY_REQUIRED')
|
|
172
172
|
assert.match(error.message, /Public entry/)
|
|
173
173
|
return true
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export type GeneratedSDKFile = {
|
|
2
|
-
path: string;
|
|
3
|
-
contents: string;
|
|
4
|
-
};
|
|
5
|
-
export type GeneratedSDK = {
|
|
6
|
-
files: GeneratedSDKFile[];
|
|
7
|
-
};
|
|
8
|
-
export declare function generateArcubaseProjectSDK(payload: unknown): GeneratedSDK;
|
|
9
|
-
//# sourceMappingURL=dev_sdk_gen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dev_sdk_gen.d.ts","sourceRoot":"","sources":["../../src/runtime/dev_sdk_gen.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,gBAAgB,EAAE,CAAA;CAC1B,CAAA;AAqoBD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAWzE"}
|