@carthooks/arcubase-cli 0.1.10 → 0.1.12

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 (105) hide show
  1. package/bundle/arcubase-admin.mjs +1274 -375
  2. package/bundle/arcubase.mjs +1274 -375
  3. package/dist/generated/command_registry.generated.d.ts +36 -35
  4. package/dist/generated/command_registry.generated.d.ts.map +1 -1
  5. package/dist/generated/command_registry.generated.js +37 -36
  6. package/dist/generated/type_index.generated.d.ts +23 -23
  7. package/dist/generated/type_index.generated.js +23 -23
  8. package/dist/runtime/entity_save_schema.d.ts.map +1 -1
  9. package/dist/runtime/entity_save_schema.js +30 -0
  10. package/dist/runtime/env.d.ts +2 -1
  11. package/dist/runtime/env.d.ts.map +1 -1
  12. package/dist/runtime/env.js +10 -1
  13. package/dist/runtime/errors.d.ts +2 -0
  14. package/dist/runtime/errors.d.ts.map +1 -1
  15. package/dist/runtime/execute.d.ts +4 -2
  16. package/dist/runtime/execute.d.ts.map +1 -1
  17. package/dist/runtime/execute.js +944 -134
  18. package/dist/runtime/paths.d.ts +1 -1
  19. package/dist/runtime/paths.d.ts.map +1 -1
  20. package/dist/runtime/paths.js +9 -2
  21. package/dist/runtime/upload.d.ts +1 -11
  22. package/dist/runtime/upload.d.ts.map +1 -1
  23. package/dist/runtime/upload.js +19 -133
  24. package/dist/runtime/zod_registry.d.ts +5 -3
  25. package/dist/runtime/zod_registry.d.ts.map +1 -1
  26. package/dist/runtime/zod_registry.js +108 -48
  27. package/dist/tests/bootstrap.test.js +12 -0
  28. package/dist/tests/command_registry.test.js +8 -0
  29. package/dist/tests/docs_readability.test.d.ts +2 -0
  30. package/dist/tests/docs_readability.test.d.ts.map +1 -0
  31. package/dist/tests/docs_readability.test.js +87 -0
  32. package/dist/tests/entity_save_schema.test.js +22 -0
  33. package/dist/tests/execute_validation.test.js +381 -44
  34. package/dist/tests/help.test.js +45 -8
  35. package/dist/tests/upload.test.js +30 -77
  36. package/package.json +1 -1
  37. package/sdk-dist/docs/runtime-reference/README.md +43 -29
  38. package/sdk-dist/docs/runtime-reference/access-rule.md +109 -0
  39. package/sdk-dist/docs/runtime-reference/condition.md +182 -0
  40. package/sdk-dist/docs/runtime-reference/entity-schema/README.md +6 -5
  41. package/sdk-dist/docs/runtime-reference/entity-schema/checkbox.md +1 -1
  42. package/sdk-dist/docs/runtime-reference/entity-schema/file.md +2 -2
  43. package/sdk-dist/docs/runtime-reference/entity-schema/image.md +2 -2
  44. package/sdk-dist/docs/runtime-reference/entity-schema/linkto.md +3 -3
  45. package/sdk-dist/docs/runtime-reference/entity-schema/number.md +1 -1
  46. package/sdk-dist/docs/runtime-reference/entity-schema/query.md +3 -3
  47. package/sdk-dist/docs/runtime-reference/entity-schema/relation.md +3 -3
  48. package/sdk-dist/docs/runtime-reference/entity-schema/relationfield.md +3 -3
  49. package/sdk-dist/docs/runtime-reference/entity-schema/status.md +1 -1
  50. package/sdk-dist/docs/runtime-reference/entity-schema/text.md +1 -1
  51. package/sdk-dist/docs/runtime-reference/entity-schema.md +28 -21
  52. package/sdk-dist/docs/runtime-reference/examples/README.md +1 -1
  53. package/sdk-dist/docs/runtime-reference/examples/crm-01/README.md +30 -11
  54. package/sdk-dist/docs/runtime-reference/examples/crm-01/contact.create-entity.json +1 -0
  55. package/sdk-dist/docs/runtime-reference/examples/crm-01/contact.schema.json +1 -0
  56. package/sdk-dist/docs/runtime-reference/examples/crm-01/create-app.json +1 -0
  57. package/sdk-dist/docs/runtime-reference/examples/crm-01/customer.create-entity.json +1 -0
  58. package/sdk-dist/docs/runtime-reference/examples/crm-01/customer.schema.json +1 -0
  59. package/sdk-dist/docs/runtime-reference/examples/crm-01/follow-up.create-entity.json +1 -0
  60. package/sdk-dist/docs/runtime-reference/examples/crm-01/follow-up.schema.json +1 -0
  61. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.bulk-update.json +1 -0
  62. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.create-entity.json +1 -0
  63. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.query.json +1 -0
  64. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.row.insert.json +1 -0
  65. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.schema.json +1 -0
  66. package/sdk-dist/docs/runtime-reference/examples/crm-01/lead.selection.condition.json +1 -0
  67. package/sdk-dist/docs/runtime-reference/examples/oms-01/README.md +26 -26
  68. package/sdk-dist/docs/runtime-reference/examples/oms-01/sales-order.row.insert.json +1 -1
  69. package/sdk-dist/docs/runtime-reference/examples/wms-01/README.md +26 -10
  70. package/sdk-dist/docs/runtime-reference/examples/wms-01/create-app.json +1 -0
  71. package/sdk-dist/docs/runtime-reference/examples/wms-01/goods-receipt.create-entity.json +1 -0
  72. package/sdk-dist/docs/runtime-reference/examples/wms-01/goods-receipt.schema.json +1 -0
  73. package/sdk-dist/docs/runtime-reference/examples/wms-01/inventory-snapshot.bulk-update.json +1 -0
  74. package/sdk-dist/docs/runtime-reference/examples/wms-01/inventory-snapshot.create-entity.json +1 -0
  75. package/sdk-dist/docs/runtime-reference/examples/wms-01/inventory-snapshot.query.json +1 -0
  76. package/sdk-dist/docs/runtime-reference/examples/wms-01/inventory-snapshot.schema.json +1 -0
  77. package/sdk-dist/docs/runtime-reference/examples/wms-01/inventory-snapshot.selection.condition.json +1 -0
  78. package/sdk-dist/docs/runtime-reference/examples/wms-01/item-master.create-entity.json +1 -0
  79. package/sdk-dist/docs/runtime-reference/examples/wms-01/item-master.schema.json +1 -0
  80. package/sdk-dist/docs/runtime-reference/examples/wms-01/stock-issue.create-entity.json +1 -0
  81. package/sdk-dist/docs/runtime-reference/examples/wms-01/stock-issue.schema.json +1 -0
  82. package/sdk-dist/docs/runtime-reference/row-crud.md +35 -8
  83. package/sdk-dist/docs/runtime-reference/search-and-bulk-actions.md +31 -95
  84. package/sdk-dist/docs/runtime-reference/selection.md +128 -0
  85. package/sdk-dist/docs/runtime-reference/table-lifecycle.md +113 -30
  86. package/sdk-dist/docs/runtime-reference/uploads.md +30 -59
  87. package/sdk-dist/docs/runtime-reference/workflow/README.md +129 -13
  88. package/sdk-dist/generated/command_registry.generated.ts +37 -36
  89. package/sdk-dist/generated/type_index.generated.ts +23 -23
  90. package/src/generated/command_registry.generated.ts +37 -36
  91. package/src/generated/type_index.generated.ts +23 -23
  92. package/src/runtime/entity_save_schema.ts +30 -0
  93. package/src/runtime/env.ts +14 -2
  94. package/src/runtime/errors.ts +2 -0
  95. package/src/runtime/execute.ts +1166 -134
  96. package/src/runtime/paths.ts +11 -2
  97. package/src/runtime/upload.ts +19 -178
  98. package/src/runtime/zod_registry.ts +113 -48
  99. package/src/tests/bootstrap.test.ts +16 -0
  100. package/src/tests/command_registry.test.ts +9 -0
  101. package/src/tests/docs_readability.test.ts +96 -0
  102. package/src/tests/entity_save_schema.test.ts +22 -0
  103. package/src/tests/execute_validation.test.ts +508 -47
  104. package/src/tests/help.test.ts +49 -8
  105. package/src/tests/upload.test.ts +34 -91
@@ -1,94 +1,94 @@
1
1
  export declare const typeIndex: {
2
2
  readonly AppCreateByTenantsReqVO: {
3
- readonly file: "/opt/arcubase-sdk/types/app.ts";
3
+ readonly file: "types/app.ts";
4
4
  readonly dependencies: readonly [];
5
5
  };
6
6
  readonly AppCreateEntityReqVO: {
7
- readonly file: "/opt/arcubase-sdk/types/app.ts";
7
+ readonly file: "types/app.ts";
8
8
  readonly dependencies: readonly [];
9
9
  };
10
10
  readonly AppIngressCreateReqVO: {
11
- readonly file: "/opt/arcubase-sdk/types/ingress.ts";
11
+ readonly file: "types/ingress.ts";
12
12
  readonly dependencies: readonly [];
13
13
  };
14
14
  readonly AppIngressUpdateReqVO: {
15
- readonly file: "/opt/arcubase-sdk/types/ingress.ts";
15
+ readonly file: "types/ingress.ts";
16
16
  readonly dependencies: readonly [];
17
17
  };
18
18
  readonly AppUpdateAppReqVO: {
19
- readonly file: "/opt/arcubase-sdk/types/app.ts";
19
+ readonly file: "types/app.ts";
20
20
  readonly dependencies: readonly [];
21
21
  };
22
22
  readonly EntityBulkUpdateReqVO: {
23
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
23
+ readonly file: "types/user-action.ts";
24
24
  readonly dependencies: readonly [];
25
25
  };
26
26
  readonly EntityDoActionReqVO: {
27
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
27
+ readonly file: "types/user-action.ts";
28
28
  readonly dependencies: readonly [];
29
29
  };
30
30
  readonly EntityQueryRelationReqVO: {
31
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
31
+ readonly file: "types/user-action.ts";
32
32
  readonly dependencies: readonly [];
33
33
  };
34
34
  readonly EntityQueryReqVO: {
35
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
35
+ readonly file: "types/user-action.ts";
36
36
  readonly dependencies: readonly [];
37
37
  };
38
38
  readonly EntityResolveWorkflowReqVO: {
39
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
39
+ readonly file: "types/user-action.ts";
40
40
  readonly dependencies: readonly [];
41
41
  };
42
42
  readonly EntitySaveNameReqVO: {
43
- readonly file: "/opt/arcubase-sdk/types/entity.ts";
43
+ readonly file: "types/entity.ts";
44
44
  readonly dependencies: readonly [];
45
45
  };
46
46
  readonly EntitySaveReqVO: {
47
- readonly file: "/opt/arcubase-sdk/types/entity.ts";
47
+ readonly file: "types/entity.ts";
48
48
  readonly dependencies: readonly [];
49
49
  };
50
50
  readonly EntitySelectionActionReqVO: {
51
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
51
+ readonly file: "types/user-action.ts";
52
52
  readonly dependencies: readonly [];
53
53
  };
54
54
  readonly EntityUpdateReqVO: {
55
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
55
+ readonly file: "types/user-action.ts";
56
56
  readonly dependencies: readonly [];
57
57
  };
58
58
  readonly EntityWorkflowApproveUsersReqVO: {
59
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
59
+ readonly file: "types/user-action.ts";
60
60
  readonly dependencies: readonly [];
61
61
  };
62
62
  readonly EntityWorkflowDeployReqVO: {
63
- readonly file: "/opt/arcubase-sdk/types/workflow.ts";
63
+ readonly file: "types/workflow.ts";
64
64
  readonly dependencies: readonly [];
65
65
  };
66
66
  readonly EntityWorkflowUpdateReqVO: {
67
- readonly file: "/opt/arcubase-sdk/types/workflow.ts";
67
+ readonly file: "types/workflow.ts";
68
68
  readonly dependencies: readonly [];
69
69
  };
70
70
  readonly GetUploadTokenReqVO: {
71
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
71
+ readonly file: "types/user-action.ts";
72
72
  readonly dependencies: readonly [];
73
73
  };
74
74
  readonly InsertReqVO: {
75
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
75
+ readonly file: "types/user-action.ts";
76
76
  readonly dependencies: readonly [];
77
77
  };
78
78
  readonly MobileUploadCheckReqVO: {
79
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
79
+ readonly file: "types/user-action.ts";
80
80
  readonly dependencies: readonly [];
81
81
  };
82
82
  readonly MobileUploadReqVO: {
83
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
83
+ readonly file: "types/user-action.ts";
84
84
  readonly dependencies: readonly [];
85
85
  };
86
86
  readonly UploadPreviewReqVO: {
87
- readonly file: "/opt/arcubase-sdk/types/common.ts";
87
+ readonly file: "types/common.ts";
88
88
  readonly dependencies: readonly [];
89
89
  };
90
90
  readonly UserProfileUpdateReqVO: {
91
- readonly file: "/opt/arcubase-sdk/types/user-action.ts";
91
+ readonly file: "types/user-action.ts";
92
92
  readonly dependencies: readonly [];
93
93
  };
94
94
  };
@@ -1,95 +1,95 @@
1
1
  // Generated by scripts/generate-type-index.mjs. Do not edit by hand.
2
2
  export const typeIndex = {
3
3
  "AppCreateByTenantsReqVO": {
4
- "file": "/opt/arcubase-sdk/types/app.ts",
4
+ "file": "types/app.ts",
5
5
  "dependencies": []
6
6
  },
7
7
  "AppCreateEntityReqVO": {
8
- "file": "/opt/arcubase-sdk/types/app.ts",
8
+ "file": "types/app.ts",
9
9
  "dependencies": []
10
10
  },
11
11
  "AppIngressCreateReqVO": {
12
- "file": "/opt/arcubase-sdk/types/ingress.ts",
12
+ "file": "types/ingress.ts",
13
13
  "dependencies": []
14
14
  },
15
15
  "AppIngressUpdateReqVO": {
16
- "file": "/opt/arcubase-sdk/types/ingress.ts",
16
+ "file": "types/ingress.ts",
17
17
  "dependencies": []
18
18
  },
19
19
  "AppUpdateAppReqVO": {
20
- "file": "/opt/arcubase-sdk/types/app.ts",
20
+ "file": "types/app.ts",
21
21
  "dependencies": []
22
22
  },
23
23
  "EntityBulkUpdateReqVO": {
24
- "file": "/opt/arcubase-sdk/types/user-action.ts",
24
+ "file": "types/user-action.ts",
25
25
  "dependencies": []
26
26
  },
27
27
  "EntityDoActionReqVO": {
28
- "file": "/opt/arcubase-sdk/types/user-action.ts",
28
+ "file": "types/user-action.ts",
29
29
  "dependencies": []
30
30
  },
31
31
  "EntityQueryRelationReqVO": {
32
- "file": "/opt/arcubase-sdk/types/user-action.ts",
32
+ "file": "types/user-action.ts",
33
33
  "dependencies": []
34
34
  },
35
35
  "EntityQueryReqVO": {
36
- "file": "/opt/arcubase-sdk/types/user-action.ts",
36
+ "file": "types/user-action.ts",
37
37
  "dependencies": []
38
38
  },
39
39
  "EntityResolveWorkflowReqVO": {
40
- "file": "/opt/arcubase-sdk/types/user-action.ts",
40
+ "file": "types/user-action.ts",
41
41
  "dependencies": []
42
42
  },
43
43
  "EntitySaveNameReqVO": {
44
- "file": "/opt/arcubase-sdk/types/entity.ts",
44
+ "file": "types/entity.ts",
45
45
  "dependencies": []
46
46
  },
47
47
  "EntitySaveReqVO": {
48
- "file": "/opt/arcubase-sdk/types/entity.ts",
48
+ "file": "types/entity.ts",
49
49
  "dependencies": []
50
50
  },
51
51
  "EntitySelectionActionReqVO": {
52
- "file": "/opt/arcubase-sdk/types/user-action.ts",
52
+ "file": "types/user-action.ts",
53
53
  "dependencies": []
54
54
  },
55
55
  "EntityUpdateReqVO": {
56
- "file": "/opt/arcubase-sdk/types/user-action.ts",
56
+ "file": "types/user-action.ts",
57
57
  "dependencies": []
58
58
  },
59
59
  "EntityWorkflowApproveUsersReqVO": {
60
- "file": "/opt/arcubase-sdk/types/user-action.ts",
60
+ "file": "types/user-action.ts",
61
61
  "dependencies": []
62
62
  },
63
63
  "EntityWorkflowDeployReqVO": {
64
- "file": "/opt/arcubase-sdk/types/workflow.ts",
64
+ "file": "types/workflow.ts",
65
65
  "dependencies": []
66
66
  },
67
67
  "EntityWorkflowUpdateReqVO": {
68
- "file": "/opt/arcubase-sdk/types/workflow.ts",
68
+ "file": "types/workflow.ts",
69
69
  "dependencies": []
70
70
  },
71
71
  "GetUploadTokenReqVO": {
72
- "file": "/opt/arcubase-sdk/types/user-action.ts",
72
+ "file": "types/user-action.ts",
73
73
  "dependencies": []
74
74
  },
75
75
  "InsertReqVO": {
76
- "file": "/opt/arcubase-sdk/types/user-action.ts",
76
+ "file": "types/user-action.ts",
77
77
  "dependencies": []
78
78
  },
79
79
  "MobileUploadCheckReqVO": {
80
- "file": "/opt/arcubase-sdk/types/user-action.ts",
80
+ "file": "types/user-action.ts",
81
81
  "dependencies": []
82
82
  },
83
83
  "MobileUploadReqVO": {
84
- "file": "/opt/arcubase-sdk/types/user-action.ts",
84
+ "file": "types/user-action.ts",
85
85
  "dependencies": []
86
86
  },
87
87
  "UploadPreviewReqVO": {
88
- "file": "/opt/arcubase-sdk/types/common.ts",
88
+ "file": "types/common.ts",
89
89
  "dependencies": []
90
90
  },
91
91
  "UserProfileUpdateReqVO": {
92
- "file": "/opt/arcubase-sdk/types/user-action.ts",
92
+ "file": "types/user-action.ts",
93
93
  "dependencies": []
94
94
  }
95
95
  };
@@ -1 +1 @@
1
- {"version":3,"file":"entity_save_schema.d.ts","sourceRoot":"","sources":["../../src/runtime/entity_save_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAoRvB,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,UAA6C,CAAA;AAE7E,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,UAQlC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,UAK7B,CAAA;AAoKD,eAAO,MAAM,6BAA6B,EAAE,CAAC,CAAC,UAA8E,CAAA;AAO5H,eAAO,MAAM,qCAAqC,EAAE,CAAC,CAAC,UAI3C,CAAA;AAEX,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,UASpC,CAAA;AAEX,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,UAaxC,CAAA;AAEF,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,UA4B9C,CAAA;AA4EF,eAAO,MAAM,wCAAwC,EAAE,CAAC,CAAC,UAOxD,CAAA;AAwED,eAAO,MAAM,mCAAmC,EAAE,CAAC,CAAC,UAOzC,CAAA;AAEX,eAAO,MAAM,sCAAsC,EAAE,CAAC,CAAC,UAG5C,CAAA;AAEX,eAAO,MAAM,kCAAkC,EAAE,CAAC,CAAC,UAIxC,CAAA;AAEX,eAAO,MAAM,4CAA4C,EAAE,CAAC,CAAC,UAQlD,CAAA"}
1
+ {"version":3,"file":"entity_save_schema.d.ts","sourceRoot":"","sources":["../../src/runtime/entity_save_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AA+SvB,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,UAA6C,CAAA;AAE7E,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,UAQlC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,UAK7B,CAAA;AAuKD,eAAO,MAAM,6BAA6B,EAAE,CAAC,CAAC,UAA8E,CAAA;AAO5H,eAAO,MAAM,qCAAqC,EAAE,CAAC,CAAC,UAI3C,CAAA;AAEX,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,UASpC,CAAA;AAEX,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,UAaxC,CAAA;AAEF,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,UA4B9C,CAAA;AA4EF,eAAO,MAAM,wCAAwC,EAAE,CAAC,CAAC,UAOxD,CAAA;AAwED,eAAO,MAAM,mCAAmC,EAAE,CAAC,CAAC,UAOzC,CAAA;AAEX,eAAO,MAAM,sCAAsC,EAAE,CAAC,CAAC,UAG5C,CAAA;AAEX,eAAO,MAAM,kCAAkC,EAAE,CAAC,CAAC,UAIxC,CAAA;AAEX,eAAO,MAAM,4CAA4C,EAAE,CAAC,CAAC,UAQlD,CAAA"}
@@ -142,6 +142,33 @@ function isRecord(value) {
142
142
  function cloneJSON(value) {
143
143
  return JSON.parse(JSON.stringify(value));
144
144
  }
145
+ function normalizeFieldVO(value) {
146
+ if (!isRecord(value)) {
147
+ return value;
148
+ }
149
+ const field = { ...value };
150
+ field.unique ?? (field.unique = false);
151
+ field.editable ?? (field.editable = true);
152
+ field.visible ?? (field.visible = true);
153
+ field.show_label ?? (field.show_label = true);
154
+ field.scannable ?? (field.scannable = false);
155
+ field.default_value_mode ?? (field.default_value_mode = 0);
156
+ field.description ?? (field.description = '');
157
+ field.value ?? (field.value = null);
158
+ field.number_decimal ?? (field.number_decimal = 0);
159
+ field.depends ?? (field.depends = []);
160
+ field.code_index ?? (field.code_index = false);
161
+ field.transfers ?? (field.transfers = null);
162
+ if (field.type === 'subform') {
163
+ if (Array.isArray(field.children)) {
164
+ field.children = field.children.map((child) => normalizeFieldVO(child));
165
+ }
166
+ }
167
+ else {
168
+ field.children ?? (field.children = null);
169
+ }
170
+ return field;
171
+ }
145
172
  function makeSimpleFieldSchema(type) {
146
173
  return z.object({
147
174
  ...fieldCommonShape,
@@ -287,6 +314,9 @@ function normalizeEntitySaveInput(value) {
287
314
  }
288
315
  }
289
316
  }
317
+ if (Array.isArray(entity.fields)) {
318
+ entity.fields = entity.fields.map((field) => normalizeFieldVO(field));
319
+ }
290
320
  return entity;
291
321
  }
292
322
  function collectAllFieldIds(fields) {
@@ -1,6 +1,7 @@
1
- export type RuntimeEnv = {
1
+ export type RuntimeEnv = Record<string, string | undefined> & {
2
2
  ARCUBASE_BASE_URL: string;
3
3
  ARCUBASE_ACCESS_TOKEN: string;
4
+ ARCUBASE_SDK_ROOT: string;
4
5
  ARCUBASE_TRACE_ID?: string;
5
6
  ARCUBASE_SUBJECT_TYPE?: string;
6
7
  ARCUBASE_SUBJECT_ID?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/runtime/env.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,yBAAyB,CAAC,EAAE,MAAM,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAqClD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,GAAE,QAAsB,GAAG,UAAU,CAS9F"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/runtime/env.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAC5D,iBAAiB,EAAE,MAAM,CAAA;IACzB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,yBAAyB,CAAC,EAAE,MAAM,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AA6ClD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,GAAE,QAAsB,GAAG,UAAU,CAU9F"}
@@ -1,3 +1,4 @@
1
+ import { CLIError } from './errors.js';
1
2
  const PREFIX_BY_SCOPE = {
2
3
  admin: 'ARCUBASE_ADMIN_',
3
4
  user: 'ARCUBASE_USER_',
@@ -18,10 +19,17 @@ function envValue(env, scope, key) {
18
19
  function requiredValue(env, scope, key) {
19
20
  const value = envValue(env, scope, key);
20
21
  if (!value || value.trim() === '') {
21
- throw new Error(`${key} is required`);
22
+ throw new CLIError('RUNTIME_ENV_REQUIRED', `${key} is required`, 2);
22
23
  }
23
24
  return value;
24
25
  }
26
+ function requiredDirectValue(env, key) {
27
+ const value = env[key];
28
+ if (!value || value.trim() === '') {
29
+ throw new CLIError('RUNTIME_ENV_REQUIRED', `${key} is required`, 2);
30
+ }
31
+ return value.trim();
32
+ }
25
33
  function optionalValue(env, scope, key) {
26
34
  const value = envValue(env, scope, key);
27
35
  if (!value || value.trim() === '') {
@@ -33,6 +41,7 @@ export function loadRuntimeEnv(scope, env = process.env) {
33
41
  return {
34
42
  ARCUBASE_BASE_URL: requiredValue(env, scope, 'ARCUBASE_BASE_URL'),
35
43
  ARCUBASE_ACCESS_TOKEN: requiredValue(env, scope, 'ARCUBASE_ACCESS_TOKEN'),
44
+ ARCUBASE_SDK_ROOT: requiredDirectValue(env, 'ARCUBASE_SDK_ROOT'),
36
45
  ARCUBASE_TRACE_ID: optionalValue(env, scope, 'ARCUBASE_TRACE_ID'),
37
46
  ARCUBASE_SUBJECT_TYPE: optionalValue(env, scope, 'ARCUBASE_SUBJECT_TYPE'),
38
47
  ARCUBASE_SUBJECT_ID: optionalValue(env, scope, 'ARCUBASE_SUBJECT_ID'),
@@ -22,6 +22,8 @@ export type CLIErrorDetails = {
22
22
  hint?: string;
23
23
  endpoint?: string;
24
24
  method?: string;
25
+ status?: number;
26
+ responseBody?: string;
25
27
  traceId?: string;
26
28
  upstreamError?: unknown;
27
29
  suggestions?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAED,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;gBAEtB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI,EAAE,OAAO,CAAC,EAAE,eAAe;IAQlF,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CASlC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAED,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAA;gBAEtB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI,EAAE,OAAO,CAAC,EAAE,eAAe;IAQlF,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CASlC"}
@@ -10,8 +10,10 @@ export type CommandExecutionSummary = {
10
10
  queryFlags: readonly string[];
11
11
  };
12
12
  export declare function renderRootHelp(scope: CommandScope): string;
13
- export declare function renderModuleHelp(scope: CommandScope, moduleName: string): string;
14
- export declare function renderCommandHelp(scope: CommandScope, moduleName: string, commandName?: string): string;
13
+ export declare function renderModuleHelp(scope: CommandScope, moduleName: string, env?: EnvInput): string;
14
+ type EnvInput = Record<string, string | undefined>;
15
+ export declare function renderCommandHelp(scope: CommandScope, moduleName: string, commandName?: string, env?: EnvInput): string;
15
16
  export declare function summarizeCommand(scope: CommandScope, moduleName: string, commandName: string): CommandExecutionSummary;
16
17
  export declare function executeCLI(scope: CommandScope, argv: string[], env?: RuntimeEnv, fetchImpl?: typeof fetch): Promise<any>;
18
+ export {};
17
19
  //# sourceMappingURL=execute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/runtime/execute.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1D,OAAO,EAAwE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAK/H,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;AAYD,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAa1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAkBhF;AAOD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAkDvG;AA6bD,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,CAkLrI"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/runtime/execute.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1D,OAAO,EAAwE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAK/H,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,CAc1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,QAAsB,GAAG,MAAM,CAoB7G;AAOD,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAMlD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,QAAsB,GAAG,MAAM,CAkFpI;AAu5CD,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,CAiMrI"}