@carthooks/arcubase-cli 0.1.21 → 0.1.23
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 +1430 -83
- package/bundle/arcubase.mjs +1430 -83
- package/dist/generated/command_registry.generated.d.ts +300 -0
- package/dist/generated/command_registry.generated.d.ts.map +1 -1
- package/dist/generated/command_registry.generated.js +416 -0
- package/dist/generated/help_examples.generated.d.ts +116 -0
- package/dist/generated/help_examples.generated.d.ts.map +1 -1
- package/dist/generated/help_examples.generated.js +184 -0
- package/dist/generated/type_index.generated.d.ts +40 -1
- package/dist/generated/type_index.generated.d.ts.map +1 -1
- package/dist/generated/type_index.generated.js +42 -1
- package/dist/generated/zod_registry.generated.d.ts +29 -1
- package/dist/generated/zod_registry.generated.d.ts.map +1 -1
- package/dist/generated/zod_registry.generated.js +37 -0
- package/dist/runtime/dev_sdk_gen.d.ts +9 -0
- package/dist/runtime/dev_sdk_gen.d.ts.map +1 -0
- package/dist/runtime/dev_sdk_gen.js +319 -0
- package/dist/runtime/execute.d.ts.map +1 -1
- package/dist/runtime/execute.js +326 -1
- package/dist/runtime/zod_registry.d.ts.map +1 -1
- package/dist/runtime/zod_registry.js +58 -0
- package/package.json +1 -1
- package/sdk-dist/api/admin/index.ts +1 -0
- package/sdk-dist/api/admin/public-link.ts +48 -0
- package/sdk-dist/api/shared-link/form.ts +42 -1
- package/sdk-dist/api/user/index.ts +0 -1
- package/sdk-dist/docs/runtime-reference/dashboard.md +22 -0
- package/sdk-dist/docs/runtime-reference/dev-sdk-gen.md +41 -0
- package/sdk-dist/docs/runtime-reference/help-examples/admin/dashboard/update-layout.json +16 -0
- package/sdk-dist/docs/runtime-reference/help-examples/admin/widget/create.json +33 -0
- package/sdk-dist/docs/runtime-reference/help-examples/admin/widget/preview-data.json +66 -0
- package/sdk-dist/docs/runtime-reference/help-examples/admin/widget/update-ingress-options.json +21 -0
- package/sdk-dist/docs/runtime-reference/widgets.md +64 -0
- package/sdk-dist/generated/command_registry.generated.ts +416 -0
- package/sdk-dist/generated/help_examples.generated.ts +184 -0
- package/sdk-dist/generated/type_index.generated.ts +42 -1
- package/sdk-dist/generated/zod_registry.generated.ts +56 -0
- package/sdk-dist/types/app.ts +37 -1
- package/sdk-dist/types/common.ts +77 -35
- package/sdk-dist/types/index.ts +1 -1
- package/sdk-dist/types/public-link.ts +10 -0
- package/sdk-dist/types/shared-link.ts +16 -1
- package/sdk-dist/types/user-action.ts +1 -43
- package/src/generated/command_registry.generated.ts +416 -0
- package/src/generated/help_examples.generated.ts +184 -0
- package/src/generated/type_index.generated.ts +42 -1
- package/src/generated/zod_registry.generated.ts +56 -0
- package/src/runtime/dev_sdk_gen.ts +360 -0
- package/src/runtime/execute.ts +371 -1
- package/src/runtime/zod_registry.ts +58 -0
- package/src/tests/command_registry.test.ts +21 -2
- package/src/tests/dev_sdk_gen.test.ts +226 -0
- package/src/tests/docs_readability.test.ts +15 -0
- package/src/tests/execute_validation.test.ts +226 -0
- package/src/tests/help.test.ts +86 -0
- package/sdk-dist/api/user/copilot.ts +0 -20
- package/sdk-dist/types/copilot.ts +0 -34
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Dev SDK Gen
|
|
2
|
+
|
|
3
|
+
Use `arcubase-admin dev sdk-gen` to generate typed TypeScript source for a Web project.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
arcubase-admin dev sdk-gen \
|
|
7
|
+
--app-id <app_id> \
|
|
8
|
+
--out src/arcubase
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
The command reads the app schema from Arcubase through the normal `arcubase-admin` runtime auth and writes project-local source files under `--out`.
|
|
12
|
+
|
|
13
|
+
Generated code is key based. Application code uses stable `field.key` names, while generated runtime code converts those keys to internal numeric field ids.
|
|
14
|
+
If a field is missing `field.key`, the command initializes it through `PUT /api/apps/:app_id/entity/:entity_id/custom-keys` with a stable `field<id>` fallback before generation.
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import { createArcubaseSdk } from './arcubase'
|
|
18
|
+
|
|
19
|
+
const sdk = createArcubaseSdk({
|
|
20
|
+
baseURL: 'https://team.example.arcubase.co/api',
|
|
21
|
+
accessToken,
|
|
22
|
+
refreshToken,
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
await sdk.story.create({
|
|
26
|
+
story: 'Once upon a time',
|
|
27
|
+
})
|
|
28
|
+
|
|
29
|
+
await sdk.story.update(rowId, {
|
|
30
|
+
story: 'Updated story',
|
|
31
|
+
})
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Rules:
|
|
35
|
+
|
|
36
|
+
- missing `field.key` values are initialized through admin auth as `field<id>`
|
|
37
|
+
- existing `field.key` values must be stable unique TypeScript identifiers
|
|
38
|
+
- `field.key` is a developer API contract and should not track display labels
|
|
39
|
+
- entity property names use `entity.key` when available, otherwise a stable `entity<id>` fallback
|
|
40
|
+
- row create/update/query code should use generated types, not raw field ids
|
|
41
|
+
- rerun the command after schema changes and commit the regenerated source with the Web project
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"scope": "admin",
|
|
3
|
+
"command": ["dashboard", "update-layout"],
|
|
4
|
+
"examples": [
|
|
5
|
+
{
|
|
6
|
+
"title": "place one dashboard widget in the top-left area",
|
|
7
|
+
"body": [
|
|
8
|
+
{"id": 2188892001, "x": 0, "y": 0, "w": 12, "h": 6}
|
|
9
|
+
],
|
|
10
|
+
"notes": [
|
|
11
|
+
"the request body is a top-level array",
|
|
12
|
+
"do not wrap the array as {\"layout\":[...]}"
|
|
13
|
+
]
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"scope": "admin",
|
|
3
|
+
"command": ["widget", "create"],
|
|
4
|
+
"examples": [
|
|
5
|
+
{
|
|
6
|
+
"title": "create a dashboard chart widget",
|
|
7
|
+
"body": {
|
|
8
|
+
"type": "chart",
|
|
9
|
+
"options": {
|
|
10
|
+
"dashboard_id": 2188892001
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"notes": [
|
|
14
|
+
"do not set options.type by hand",
|
|
15
|
+
"dashboard_id selects a dashboard widget",
|
|
16
|
+
"use widget update next to save chart options"
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"title": "create an ingress list widget",
|
|
21
|
+
"body": {
|
|
22
|
+
"type": "list",
|
|
23
|
+
"options": {
|
|
24
|
+
"ingress_id": 2188893001
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"notes": [
|
|
28
|
+
"ingress_id selects an ingress widget",
|
|
29
|
+
"do not place ingress widgets with dashboard update-layout"
|
|
30
|
+
]
|
|
31
|
+
}
|
|
32
|
+
]
|
|
33
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"scope": "admin",
|
|
3
|
+
"command": ["widget", "preview-data"],
|
|
4
|
+
"examples": [
|
|
5
|
+
{
|
|
6
|
+
"title": "preview dashboard chart data from a table",
|
|
7
|
+
"body": {
|
|
8
|
+
"dataSource": 2188891001,
|
|
9
|
+
"dataSourceType": "entity",
|
|
10
|
+
"dimensions": [
|
|
11
|
+
{"IsField": true, "FieldID": 1004, "Name": "Source"}
|
|
12
|
+
],
|
|
13
|
+
"measures": [
|
|
14
|
+
{"FieldID": 1005, "Aggregate": "sum", "Name": "Total Amount"}
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
"notes": [
|
|
18
|
+
"preview-data does not accept --widget-id",
|
|
19
|
+
"do not send widget_id or id in the request body",
|
|
20
|
+
"copy dimensions and measures from the chart query you want to preview"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"title": "preview count and distinct_count in one grouped chart",
|
|
25
|
+
"body": {
|
|
26
|
+
"dataSource": 2188891001,
|
|
27
|
+
"dataSourceType": "entity",
|
|
28
|
+
"dimensions": [
|
|
29
|
+
{"IsField": true, "FieldID": 1004, "Name": "Source"}
|
|
30
|
+
],
|
|
31
|
+
"measures": [
|
|
32
|
+
{"Aggregate": "count", "Name": "Lead Count"},
|
|
33
|
+
{"FieldID": 1002, "Aggregate": "distinct_count", "Name": "Distinct Customers"}
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"notes": [
|
|
37
|
+
"supported Aggregate values are sum, avg, max, min, count, and distinct_count",
|
|
38
|
+
"unsupported aggregate names fail local body validation before the request is sent"
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"title": "preview filtered distinct_count grouped by source",
|
|
43
|
+
"body": {
|
|
44
|
+
"dataSource": 2188891001,
|
|
45
|
+
"dataSourceType": "entity",
|
|
46
|
+
"dimensions": [
|
|
47
|
+
{"IsField": true, "FieldID": 1004, "Name": "Source"}
|
|
48
|
+
],
|
|
49
|
+
"conditions": {
|
|
50
|
+
"mode": "and",
|
|
51
|
+
"conditions": [
|
|
52
|
+
{"column": ":1006", "operator": "$eq", "value": "yes"}
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
"measures": [
|
|
56
|
+
{"FieldID": 1002, "Aggregate": "distinct_count", "Name": "Distinct Customers"}
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
"notes": [
|
|
60
|
+
"use conditions, not filters, for chart data filtering",
|
|
61
|
+
"for saved charts put the same condition set under options.charts.conditions",
|
|
62
|
+
"do not remove the condition and hand-calculate filtered statistics from row query results"
|
|
63
|
+
]
|
|
64
|
+
}
|
|
65
|
+
]
|
|
66
|
+
}
|
package/sdk-dist/docs/runtime-reference/help-examples/admin/widget/update-ingress-options.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"scope": "admin",
|
|
3
|
+
"command": ["widget", "update-ingress-options"],
|
|
4
|
+
"examples": [
|
|
5
|
+
{
|
|
6
|
+
"title": "adjust an ingress list widget display configuration",
|
|
7
|
+
"body": {
|
|
8
|
+
"options": {
|
|
9
|
+
"cond_follow": true,
|
|
10
|
+
"cond_follow_tab": true,
|
|
11
|
+
"cond_follow_cols": [":1001", ":1002"]
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"notes": [
|
|
15
|
+
"use this only for widgets created with options.ingress_id",
|
|
16
|
+
"do not use dashboard update-layout for ingress widgets",
|
|
17
|
+
"verify with widget get after updating ingress options"
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Widgets
|
|
2
|
+
|
|
3
|
+
Use `arcubase-admin widget list --app-id <app_id> --type dashboard --dashboard-id <dashboard_id>` to list dashboard widgets.
|
|
4
|
+
|
|
5
|
+
Use `arcubase-admin widget get`, `arcubase-admin widget create`, `arcubase-admin widget update`, `arcubase-admin widget update-ingress-options`, `arcubase-admin widget preview-data`, and `arcubase-admin widget delete` to manage widgets.
|
|
6
|
+
|
|
7
|
+
Use `arcubase widget data --app-id <app_id> --body-json '<FetchWidgetsDataReqVO>'` to fetch user-visible widget data.
|
|
8
|
+
|
|
9
|
+
Create dashboard widgets with `{"type":"chart","options":{"dashboard_id":<dashboard_id>}}`. Do not set `options.type` by hand; the backend derives dashboard versus ingress widget type from `dashboard_id` or `ingress_id`.
|
|
10
|
+
|
|
11
|
+
Create ingress list widgets with `{"type":"list","options":{"ingress_id":<ingress_id>}}`, where `ingress_id` is the entry/access-rule id. Do not put `entity_id` at the top level or under `options` when creating a widget. After creation, adjust entry list display settings with `widget update-ingress-options`, then verify with `widget get`. Ingress widgets have `dashboard_id:0` and must not be placed with `dashboard update-layout`.
|
|
12
|
+
|
|
13
|
+
If ingress/list display settings such as `ingress_id`, `list`, `default_cols`, or `page_size` are rejected by `widget update`, switch to `widget update-ingress-options`; do not retry `widget update` with empty options.
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{"options":{"cond_follow":true,"cond_follow_tab":true,"cond_follow_cols":[":1001",":1002"]}}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Most widget commands use `--widget-id`; `widget preview-data` is the exception. Preview data does not read a saved widget by id and does not accept `--widget-id`, `widget_id`, or `id`. Its body is the chart query itself:
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{"dataSource":2188891001,"dataSourceType":"entity","dimensions":[{"IsField":true,"FieldID":1004,"Name":"Source"}],"measures":[{"FieldID":1005,"Aggregate":"sum","Name":"Total Amount"}]}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Field dimensions must set `IsField:true`. If `IsField` is omitted or false while `FieldID` is present, the CLI rejects the chart request before sending it. A saved chart returned by `widget get` or `widget list` with `FieldID` and `IsField:false` is not grouped by that field; update the chart before reading grouped statistics.
|
|
26
|
+
|
|
27
|
+
Fastfail rule: `widget preview-data` accepts only the chart query body. If validation reports unrecognized keys such as `id`, `entity_id`, or `options`, do not retry with a saved widget object. Retry with `dataSource`, `dataSourceType`, `dimensions`, `measures`, and optional `conditions` only.
|
|
28
|
+
|
|
29
|
+
After `widget update`, verify persistence with `widget get` or `widget list`. The saved widget must contain non-null `options.charts`; an update response alone is not enough evidence that the chart configuration was persisted.
|
|
30
|
+
|
|
31
|
+
## Chart conditions
|
|
32
|
+
|
|
33
|
+
Use `conditions`, not `filters`, to filter dashboard chart statistics. The condition set shape is:
|
|
34
|
+
|
|
35
|
+
```json
|
|
36
|
+
{"mode":"and","conditions":[{"column":":1006","operator":"$eq","value":"yes"}]}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
For saved widgets, place this under `options.charts.conditions`. For `widget preview-data`, place it at top level beside `dataSource`, `dimensions`, and `measures`.
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{"dataSource":2188891001,"dataSourceType":"entity","dimensions":[{"IsField":true,"FieldID":1004,"Name":"Source"}],"conditions":{"mode":"and","conditions":[{"column":":1006","operator":"$eq","value":"yes"}]},"measures":[{"FieldID":1002,"Aggregate":"distinct_count","Name":"Distinct Customers"}]}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Fastfail rule: if a chart statistic requires filtering and validation rejects a guessed key such as `filters`, retry with `conditions`. Do not remove the filter and then hand-calculate filtered statistics from row data.
|
|
46
|
+
|
|
47
|
+
## Chart measures
|
|
48
|
+
|
|
49
|
+
Dashboard chart widgets use `ChartOption.measures[]` to define statistics. Supported `Aggregate` values are:
|
|
50
|
+
|
|
51
|
+
| Aggregate | Meaning |
|
|
52
|
+
| --- | --- |
|
|
53
|
+
| `sum` | Sum the selected numeric field. |
|
|
54
|
+
| `avg` | Average the selected numeric field. |
|
|
55
|
+
| `max` | Return the maximum selected field value. |
|
|
56
|
+
| `min` | Return the minimum selected field value. |
|
|
57
|
+
| `count` | Count selected field values; if `FieldID` is omitted, count rows. |
|
|
58
|
+
| `distinct_count` | Count distinct selected field values. |
|
|
59
|
+
|
|
60
|
+
Multiple measures are allowed in one chart widget. Use stable `Name` aliases so the returned data can be read without guessing.
|
|
61
|
+
|
|
62
|
+
Fastfail rule: unsupported aggregate names are invalid request bodies. Do not silently rewrite them to `count`, do not retry with a guessed aggregate, and do not save the widget until the `Aggregate` value is one of the supported values above.
|
|
63
|
+
|
|
64
|
+
Grouped-statistics evidence must include the requested dimension column in returned rows. If `widget preview-data` or user-side `widget data` returns only measure columns such as totals and counts, that is total-only data, not grouped data.
|
|
@@ -167,6 +167,148 @@ export const adminCommands = [
|
|
|
167
167
|
"queryParams": [],
|
|
168
168
|
"responseType": "boolean"
|
|
169
169
|
},
|
|
170
|
+
{
|
|
171
|
+
"scope": "admin",
|
|
172
|
+
"module": "dashboard",
|
|
173
|
+
"functionName": "getDashboardList",
|
|
174
|
+
"commandPath": [
|
|
175
|
+
"dashboard",
|
|
176
|
+
"list"
|
|
177
|
+
],
|
|
178
|
+
"method": "GET",
|
|
179
|
+
"endpoint": "/api/apps/:app_id/dashboard",
|
|
180
|
+
"pathParams": [
|
|
181
|
+
{
|
|
182
|
+
"param": "app_id",
|
|
183
|
+
"flag": "app-id"
|
|
184
|
+
}
|
|
185
|
+
],
|
|
186
|
+
"controller": "Dashboard.GetList",
|
|
187
|
+
"requestType": null,
|
|
188
|
+
"queryParams": [],
|
|
189
|
+
"responseType": "DashboardGetListRespVO"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"scope": "admin",
|
|
193
|
+
"module": "dashboard",
|
|
194
|
+
"functionName": "createDashboard",
|
|
195
|
+
"commandPath": [
|
|
196
|
+
"dashboard",
|
|
197
|
+
"create"
|
|
198
|
+
],
|
|
199
|
+
"method": "POST",
|
|
200
|
+
"endpoint": "/api/apps/:app_id/dashboard",
|
|
201
|
+
"pathParams": [
|
|
202
|
+
{
|
|
203
|
+
"param": "app_id",
|
|
204
|
+
"flag": "app-id"
|
|
205
|
+
}
|
|
206
|
+
],
|
|
207
|
+
"controller": "Dashboard.Create",
|
|
208
|
+
"requestType": "DashboardCreateReqVO",
|
|
209
|
+
"queryParams": [],
|
|
210
|
+
"responseType": "DashboardCreateRespVO"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"scope": "admin",
|
|
214
|
+
"module": "dashboard",
|
|
215
|
+
"functionName": "getDashboardOptions",
|
|
216
|
+
"commandPath": [
|
|
217
|
+
"dashboard",
|
|
218
|
+
"get-options"
|
|
219
|
+
],
|
|
220
|
+
"method": "GET",
|
|
221
|
+
"endpoint": "/api/apps/:app_id/dashboard/:dashboard_id/options",
|
|
222
|
+
"pathParams": [
|
|
223
|
+
{
|
|
224
|
+
"param": "app_id",
|
|
225
|
+
"flag": "app-id"
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"param": "dashboard_id",
|
|
229
|
+
"flag": "dashboard-id"
|
|
230
|
+
}
|
|
231
|
+
],
|
|
232
|
+
"controller": "Dashboard.FetchOptions",
|
|
233
|
+
"requestType": null,
|
|
234
|
+
"queryParams": [],
|
|
235
|
+
"responseType": "DashboardFetchOptionsRespVO"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"scope": "admin",
|
|
239
|
+
"module": "dashboard",
|
|
240
|
+
"functionName": "updateDashboardOptions",
|
|
241
|
+
"commandPath": [
|
|
242
|
+
"dashboard",
|
|
243
|
+
"update-options"
|
|
244
|
+
],
|
|
245
|
+
"method": "PUT",
|
|
246
|
+
"endpoint": "/api/apps/:app_id/dashboard/:dashboard_id/options",
|
|
247
|
+
"pathParams": [
|
|
248
|
+
{
|
|
249
|
+
"param": "app_id",
|
|
250
|
+
"flag": "app-id"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"param": "dashboard_id",
|
|
254
|
+
"flag": "dashboard-id"
|
|
255
|
+
}
|
|
256
|
+
],
|
|
257
|
+
"controller": "Dashboard.UpdateOptions",
|
|
258
|
+
"requestType": "DashboardUpdateOptionsReqVO",
|
|
259
|
+
"queryParams": [],
|
|
260
|
+
"responseType": "DashboardUpdateOptionsRespVO"
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"scope": "admin",
|
|
264
|
+
"module": "dashboard",
|
|
265
|
+
"functionName": "updateDashboardLayout",
|
|
266
|
+
"commandPath": [
|
|
267
|
+
"dashboard",
|
|
268
|
+
"update-layout"
|
|
269
|
+
],
|
|
270
|
+
"method": "PUT",
|
|
271
|
+
"endpoint": "/api/apps/:app_id/dashboard/:dashboard_id/layout",
|
|
272
|
+
"pathParams": [
|
|
273
|
+
{
|
|
274
|
+
"param": "app_id",
|
|
275
|
+
"flag": "app-id"
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"param": "dashboard_id",
|
|
279
|
+
"flag": "dashboard-id"
|
|
280
|
+
}
|
|
281
|
+
],
|
|
282
|
+
"controller": "Dashboard.UpdateLayout",
|
|
283
|
+
"requestType": "DashboardUpdateLayoutReqVO",
|
|
284
|
+
"queryParams": [],
|
|
285
|
+
"responseType": "DashboardUpdateLayoutRespVO"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"scope": "admin",
|
|
289
|
+
"module": "dashboard",
|
|
290
|
+
"functionName": "updateDashboardTitle",
|
|
291
|
+
"commandPath": [
|
|
292
|
+
"dashboard",
|
|
293
|
+
"rename"
|
|
294
|
+
],
|
|
295
|
+
"method": "PUT",
|
|
296
|
+
"endpoint": "/api/apps/:app_id/dashboard/:dashboard_id/label",
|
|
297
|
+
"pathParams": [
|
|
298
|
+
{
|
|
299
|
+
"param": "app_id",
|
|
300
|
+
"flag": "app-id"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"param": "dashboard_id",
|
|
304
|
+
"flag": "dashboard-id"
|
|
305
|
+
}
|
|
306
|
+
],
|
|
307
|
+
"controller": "Dashboard.UpdateTitle",
|
|
308
|
+
"requestType": "DashboardUpdateTitleReqVO",
|
|
309
|
+
"queryParams": [],
|
|
310
|
+
"responseType": "DashboardUpdateTitleRespVO"
|
|
311
|
+
},
|
|
170
312
|
{
|
|
171
313
|
"scope": "admin",
|
|
172
314
|
"module": "table",
|
|
@@ -602,6 +744,188 @@ export const adminCommands = [
|
|
|
602
744
|
"requestType": "EntityWorkflowUpdateReqVO",
|
|
603
745
|
"queryParams": [],
|
|
604
746
|
"responseType": "EntityWorkflowUpdateRespVO"
|
|
747
|
+
},
|
|
748
|
+
{
|
|
749
|
+
"scope": "admin",
|
|
750
|
+
"module": "widget",
|
|
751
|
+
"functionName": "widgetsList",
|
|
752
|
+
"commandPath": [
|
|
753
|
+
"widget",
|
|
754
|
+
"list"
|
|
755
|
+
],
|
|
756
|
+
"method": "GET",
|
|
757
|
+
"endpoint": "/api/apps/:app_id/widgets",
|
|
758
|
+
"pathParams": [
|
|
759
|
+
{
|
|
760
|
+
"param": "app_id",
|
|
761
|
+
"flag": "app-id"
|
|
762
|
+
}
|
|
763
|
+
],
|
|
764
|
+
"controller": "App.WidgetsList",
|
|
765
|
+
"requestType": null,
|
|
766
|
+
"queryParams": [
|
|
767
|
+
{
|
|
768
|
+
"key": "type",
|
|
769
|
+
"flag": "type",
|
|
770
|
+
"type": "string",
|
|
771
|
+
"hasDefault": true
|
|
772
|
+
},
|
|
773
|
+
{
|
|
774
|
+
"key": "dashboard_id",
|
|
775
|
+
"flag": "dashboard-id",
|
|
776
|
+
"type": "number",
|
|
777
|
+
"hasDefault": true
|
|
778
|
+
},
|
|
779
|
+
{
|
|
780
|
+
"key": "ingress_id",
|
|
781
|
+
"flag": "ingress-id",
|
|
782
|
+
"type": "number",
|
|
783
|
+
"hasDefault": true
|
|
784
|
+
}
|
|
785
|
+
],
|
|
786
|
+
"responseType": "AppWidgetsListRespVO"
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
"scope": "admin",
|
|
790
|
+
"module": "widget",
|
|
791
|
+
"functionName": "getWidgets",
|
|
792
|
+
"commandPath": [
|
|
793
|
+
"widget",
|
|
794
|
+
"get"
|
|
795
|
+
],
|
|
796
|
+
"method": "GET",
|
|
797
|
+
"endpoint": "/api/apps/:app_id/widgets/:widgets_id",
|
|
798
|
+
"pathParams": [
|
|
799
|
+
{
|
|
800
|
+
"param": "app_id",
|
|
801
|
+
"flag": "app-id"
|
|
802
|
+
},
|
|
803
|
+
{
|
|
804
|
+
"param": "widgets_id",
|
|
805
|
+
"flag": "widget-id"
|
|
806
|
+
}
|
|
807
|
+
],
|
|
808
|
+
"controller": "App.GetWidgets",
|
|
809
|
+
"requestType": null,
|
|
810
|
+
"queryParams": [],
|
|
811
|
+
"responseType": "AppGetWidgetsRespVO"
|
|
812
|
+
},
|
|
813
|
+
{
|
|
814
|
+
"scope": "admin",
|
|
815
|
+
"module": "widget",
|
|
816
|
+
"functionName": "newWidgets",
|
|
817
|
+
"commandPath": [
|
|
818
|
+
"widget",
|
|
819
|
+
"create"
|
|
820
|
+
],
|
|
821
|
+
"method": "POST",
|
|
822
|
+
"endpoint": "/api/apps/:app_id/widgets",
|
|
823
|
+
"pathParams": [
|
|
824
|
+
{
|
|
825
|
+
"param": "app_id",
|
|
826
|
+
"flag": "app-id"
|
|
827
|
+
}
|
|
828
|
+
],
|
|
829
|
+
"controller": "App.NewWidgets",
|
|
830
|
+
"requestType": "AppNewWidgetsReqVO",
|
|
831
|
+
"queryParams": [],
|
|
832
|
+
"responseType": "AppNewWidgetsRespVO"
|
|
833
|
+
},
|
|
834
|
+
{
|
|
835
|
+
"scope": "admin",
|
|
836
|
+
"module": "widget",
|
|
837
|
+
"functionName": "updateWidgets",
|
|
838
|
+
"commandPath": [
|
|
839
|
+
"widget",
|
|
840
|
+
"update"
|
|
841
|
+
],
|
|
842
|
+
"method": "PUT",
|
|
843
|
+
"endpoint": "/api/apps/:app_id/widgets/:widgets_id",
|
|
844
|
+
"pathParams": [
|
|
845
|
+
{
|
|
846
|
+
"param": "app_id",
|
|
847
|
+
"flag": "app-id"
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
"param": "widgets_id",
|
|
851
|
+
"flag": "widget-id"
|
|
852
|
+
}
|
|
853
|
+
],
|
|
854
|
+
"controller": "App.UpdateWidgets",
|
|
855
|
+
"requestType": "AppUpdateWidgetsReqVO",
|
|
856
|
+
"queryParams": [],
|
|
857
|
+
"responseType": "AppUpdateWidgetsRespVO"
|
|
858
|
+
},
|
|
859
|
+
{
|
|
860
|
+
"scope": "admin",
|
|
861
|
+
"module": "widget",
|
|
862
|
+
"functionName": "updateWidgetsIngressOptions",
|
|
863
|
+
"commandPath": [
|
|
864
|
+
"widget",
|
|
865
|
+
"update-ingress-options"
|
|
866
|
+
],
|
|
867
|
+
"method": "PUT",
|
|
868
|
+
"endpoint": "/api/apps/:app_id/widgets/:widgets_id/ingress-options",
|
|
869
|
+
"pathParams": [
|
|
870
|
+
{
|
|
871
|
+
"param": "app_id",
|
|
872
|
+
"flag": "app-id"
|
|
873
|
+
},
|
|
874
|
+
{
|
|
875
|
+
"param": "widgets_id",
|
|
876
|
+
"flag": "widget-id"
|
|
877
|
+
}
|
|
878
|
+
],
|
|
879
|
+
"controller": "App.UpdateWidgetsIngressOptions",
|
|
880
|
+
"requestType": "AppUpdateWidgetsIngressOptionsReqVO",
|
|
881
|
+
"queryParams": [],
|
|
882
|
+
"responseType": "AppUpdateWidgetsIngressOptionsRespVO"
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
"scope": "admin",
|
|
886
|
+
"module": "widget",
|
|
887
|
+
"functionName": "previewWidgetsData",
|
|
888
|
+
"commandPath": [
|
|
889
|
+
"widget",
|
|
890
|
+
"preview-data"
|
|
891
|
+
],
|
|
892
|
+
"method": "POST",
|
|
893
|
+
"endpoint": "/api/apps/:app_id/widgets-preview",
|
|
894
|
+
"pathParams": [
|
|
895
|
+
{
|
|
896
|
+
"param": "app_id",
|
|
897
|
+
"flag": "app-id"
|
|
898
|
+
}
|
|
899
|
+
],
|
|
900
|
+
"controller": "App.PreviewWidgetsData",
|
|
901
|
+
"requestType": "AppPreviewWidgetsDataReqVO",
|
|
902
|
+
"queryParams": [],
|
|
903
|
+
"responseType": "AppPreviewWidgetsDataRespVO"
|
|
904
|
+
},
|
|
905
|
+
{
|
|
906
|
+
"scope": "admin",
|
|
907
|
+
"module": "widget",
|
|
908
|
+
"functionName": "deleteWidgets",
|
|
909
|
+
"commandPath": [
|
|
910
|
+
"widget",
|
|
911
|
+
"delete"
|
|
912
|
+
],
|
|
913
|
+
"method": "DELETE",
|
|
914
|
+
"endpoint": "/api/apps/:app_id/widgets/:widgets_id",
|
|
915
|
+
"pathParams": [
|
|
916
|
+
{
|
|
917
|
+
"param": "app_id",
|
|
918
|
+
"flag": "app-id"
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
"param": "widgets_id",
|
|
922
|
+
"flag": "widget-id"
|
|
923
|
+
}
|
|
924
|
+
],
|
|
925
|
+
"controller": "App.DeleteWidgets",
|
|
926
|
+
"requestType": null,
|
|
927
|
+
"queryParams": [],
|
|
928
|
+
"responseType": "boolean"
|
|
605
929
|
}
|
|
606
930
|
] as const
|
|
607
931
|
|
|
@@ -629,6 +953,77 @@ export const userCommands = [
|
|
|
629
953
|
],
|
|
630
954
|
"responseType": "GlobalActionEntryRespVO"
|
|
631
955
|
},
|
|
956
|
+
{
|
|
957
|
+
"scope": "user",
|
|
958
|
+
"module": "app",
|
|
959
|
+
"functionName": "getAppDetail",
|
|
960
|
+
"commandPath": [
|
|
961
|
+
"app",
|
|
962
|
+
"get"
|
|
963
|
+
],
|
|
964
|
+
"method": "GET",
|
|
965
|
+
"endpoint": "/api/apps/:id",
|
|
966
|
+
"pathParams": [
|
|
967
|
+
{
|
|
968
|
+
"param": "id",
|
|
969
|
+
"flag": "app-id"
|
|
970
|
+
}
|
|
971
|
+
],
|
|
972
|
+
"controller": "UserAction.AppDetail",
|
|
973
|
+
"requestType": null,
|
|
974
|
+
"queryParams": [],
|
|
975
|
+
"responseType": "AppDetailRespVO"
|
|
976
|
+
},
|
|
977
|
+
{
|
|
978
|
+
"scope": "user",
|
|
979
|
+
"module": "dashboard",
|
|
980
|
+
"functionName": "getDashboard",
|
|
981
|
+
"commandPath": [
|
|
982
|
+
"dashboard",
|
|
983
|
+
"get"
|
|
984
|
+
],
|
|
985
|
+
"method": "GET",
|
|
986
|
+
"endpoint": "/api/dashboard/:app_id/:dashboard_id",
|
|
987
|
+
"pathParams": [
|
|
988
|
+
{
|
|
989
|
+
"param": "app_id",
|
|
990
|
+
"flag": "app-id"
|
|
991
|
+
},
|
|
992
|
+
{
|
|
993
|
+
"param": "dashboard_id",
|
|
994
|
+
"flag": "dashboard-id"
|
|
995
|
+
}
|
|
996
|
+
],
|
|
997
|
+
"controller": "UserAction.DashboardGet",
|
|
998
|
+
"requestType": null,
|
|
999
|
+
"queryParams": [],
|
|
1000
|
+
"responseType": "DashboardGetRespVO"
|
|
1001
|
+
},
|
|
1002
|
+
{
|
|
1003
|
+
"scope": "user",
|
|
1004
|
+
"module": "dashboard",
|
|
1005
|
+
"functionName": "getDashboardWidgets",
|
|
1006
|
+
"commandPath": [
|
|
1007
|
+
"dashboard",
|
|
1008
|
+
"widgets"
|
|
1009
|
+
],
|
|
1010
|
+
"method": "GET",
|
|
1011
|
+
"endpoint": "/api/dashboard/:app_id/:dashboard_id/widgets",
|
|
1012
|
+
"pathParams": [
|
|
1013
|
+
{
|
|
1014
|
+
"param": "app_id",
|
|
1015
|
+
"flag": "app-id"
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
"param": "dashboard_id",
|
|
1019
|
+
"flag": "dashboard-id"
|
|
1020
|
+
}
|
|
1021
|
+
],
|
|
1022
|
+
"controller": "UserAction.DashboardWidgets",
|
|
1023
|
+
"requestType": null,
|
|
1024
|
+
"queryParams": [],
|
|
1025
|
+
"responseType": "DashboardWidgets[]"
|
|
1026
|
+
},
|
|
632
1027
|
{
|
|
633
1028
|
"scope": "user",
|
|
634
1029
|
"module": "table",
|
|
@@ -1050,6 +1445,27 @@ export const userCommands = [
|
|
|
1050
1445
|
"queryParams": [],
|
|
1051
1446
|
"responseType": "MobileUploadCheckRespVO"
|
|
1052
1447
|
},
|
|
1448
|
+
{
|
|
1449
|
+
"scope": "user",
|
|
1450
|
+
"module": "widget",
|
|
1451
|
+
"functionName": "fetchWidgetsData",
|
|
1452
|
+
"commandPath": [
|
|
1453
|
+
"widget",
|
|
1454
|
+
"data"
|
|
1455
|
+
],
|
|
1456
|
+
"method": "POST",
|
|
1457
|
+
"endpoint": "/api/apps/:app_id/widgets-data",
|
|
1458
|
+
"pathParams": [
|
|
1459
|
+
{
|
|
1460
|
+
"param": "app_id",
|
|
1461
|
+
"flag": "app-id"
|
|
1462
|
+
}
|
|
1463
|
+
],
|
|
1464
|
+
"controller": "UserAction.FetchWidgetsData",
|
|
1465
|
+
"requestType": "FetchWidgetsDataReqVO",
|
|
1466
|
+
"queryParams": [],
|
|
1467
|
+
"responseType": "FetchWidgetsDataRespVO"
|
|
1468
|
+
},
|
|
1053
1469
|
{
|
|
1054
1470
|
"scope": "user",
|
|
1055
1471
|
"module": "profile",
|