@burdenoff/bigconsole-cli 2026.802.1
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/LICENSE +9 -0
- package/README.md +235 -0
- package/dist/auth/device-code.d.ts +66 -0
- package/dist/auth/device-code.js +239 -0
- package/dist/auth/store.d.ts +46 -0
- package/dist/auth/store.js +90 -0
- package/dist/cli.d.ts +5 -0
- package/dist/cli.js +126 -0
- package/dist/commands/auth.d.ts +5 -0
- package/dist/commands/auth.js +352 -0
- package/dist/commands/base.d.ts +47 -0
- package/dist/commands/base.js +100 -0
- package/dist/commands/cli-config.d.ts +6 -0
- package/dist/commands/cli-config.js +79 -0
- package/dist/commands/dashboard.d.ts +5 -0
- package/dist/commands/dashboard.js +220 -0
- package/dist/commands/datasink.d.ts +5 -0
- package/dist/commands/datasink.js +175 -0
- package/dist/commands/drilldown.d.ts +9 -0
- package/dist/commands/drilldown.js +47 -0
- package/dist/commands/index.d.ts +13 -0
- package/dist/commands/index.js +13 -0
- package/dist/commands/parser.d.ts +5 -0
- package/dist/commands/parser.js +181 -0
- package/dist/commands/pipeline.d.ts +5 -0
- package/dist/commands/pipeline.js +142 -0
- package/dist/commands/prompt.d.ts +5 -0
- package/dist/commands/prompt.js +84 -0
- package/dist/commands/share.d.ts +8 -0
- package/dist/commands/share.js +50 -0
- package/dist/commands/template.d.ts +5 -0
- package/dist/commands/template.js +62 -0
- package/dist/commands/widget.d.ts +5 -0
- package/dist/commands/widget.js +164 -0
- package/dist/commands/workflow.d.ts +9 -0
- package/dist/commands/workflow.js +54 -0
- package/dist/commands/workspace.d.ts +9 -0
- package/dist/commands/workspace.js +95 -0
- package/dist/config/index.d.ts +72 -0
- package/dist/config/index.js +151 -0
- package/dist/graphql/client.d.ts +26 -0
- package/dist/graphql/client.js +274 -0
- package/dist/graphql/operations.d.ts +48 -0
- package/dist/graphql/operations.js +654 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +6 -0
- package/dist/types/index.d.ts +30 -0
- package/dist/types/index.js +7 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/output.d.ts +62 -0
- package/dist/utils/output.js +186 -0
- package/package.json +116 -0
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL client for CLI operations.
|
|
3
|
+
* Dual-endpoint: workspace gateway (bigconsole ops) + global gateway (auth ops).
|
|
4
|
+
* Auto-injects auth headers, auto-refreshes both platform and workspace tokens.
|
|
5
|
+
*/
|
|
6
|
+
import { GraphQLClient } from 'graphql-request';
|
|
7
|
+
import { readConfig } from '../config/index.js';
|
|
8
|
+
import { readAuth, writeAuth, isTokenExpiringSoon, isWorkspaceTokenExpiringSoon, } from '../auth/store.js';
|
|
9
|
+
import { issueWorkspaceToken, clientCredentialsFlow } from '../auth/device-code.js';
|
|
10
|
+
import { printError } from '../utils/output.js';
|
|
11
|
+
const DEFAULT_TIMEOUT = 30000;
|
|
12
|
+
const MAX_RETRIES = 3;
|
|
13
|
+
const INITIAL_RETRY_DELAY_MS = 1000;
|
|
14
|
+
function sleep(ms) {
|
|
15
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
16
|
+
}
|
|
17
|
+
function isNetworkOrServerError(error) {
|
|
18
|
+
if (error instanceof TypeError)
|
|
19
|
+
return true;
|
|
20
|
+
if (error && typeof error === 'object' && 'response' in error) {
|
|
21
|
+
const resp = error.response;
|
|
22
|
+
if (resp && typeof resp.status === 'number' && resp.status >= 500)
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Trim a backend-provided error message to something safe + readable.
|
|
29
|
+
* Subgraph errors can carry stack fragments, multi-line traces, or very
|
|
30
|
+
* long strings; for user-facing CLI output we only want the first line
|
|
31
|
+
* and a reasonable length cap. Returns undefined if the input isn't a
|
|
32
|
+
* usable string so callers can fall through to the next source.
|
|
33
|
+
*/
|
|
34
|
+
function sanitizeBackendMessage(raw) {
|
|
35
|
+
if (typeof raw !== 'string' || raw.length === 0)
|
|
36
|
+
return undefined;
|
|
37
|
+
const firstLine = raw.split(/\r?\n/)[0].trim();
|
|
38
|
+
if (!firstLine)
|
|
39
|
+
return undefined;
|
|
40
|
+
const MAX = 500;
|
|
41
|
+
return firstLine.length > MAX ? `${firstLine.slice(0, MAX)}…` : firstLine;
|
|
42
|
+
}
|
|
43
|
+
function extractErrorMessage(error) {
|
|
44
|
+
if (error && typeof error === 'object' && 'response' in error) {
|
|
45
|
+
const resp = error;
|
|
46
|
+
const firstError = resp.response?.errors?.[0];
|
|
47
|
+
// Federated subgraph errors land under extensions.originalError.message;
|
|
48
|
+
// the top-level message is usually "Unexpected error." and useless.
|
|
49
|
+
const original = sanitizeBackendMessage(firstError?.extensions?.originalError?.message);
|
|
50
|
+
if (original)
|
|
51
|
+
return original;
|
|
52
|
+
const wrapper = sanitizeBackendMessage(firstError?.message);
|
|
53
|
+
if (wrapper)
|
|
54
|
+
return wrapper;
|
|
55
|
+
if (resp.message)
|
|
56
|
+
return resp.message;
|
|
57
|
+
}
|
|
58
|
+
if (error instanceof Error)
|
|
59
|
+
return error.message;
|
|
60
|
+
return String(error);
|
|
61
|
+
}
|
|
62
|
+
let workspaceClient = null;
|
|
63
|
+
let globalClient = null;
|
|
64
|
+
function getHeaders(auth) {
|
|
65
|
+
const headers = {};
|
|
66
|
+
if (auth?.accessToken) {
|
|
67
|
+
headers['Authorization'] = `Bearer ${auth.accessToken}`;
|
|
68
|
+
}
|
|
69
|
+
return headers;
|
|
70
|
+
}
|
|
71
|
+
function getWorkspaceHeaders(auth) {
|
|
72
|
+
const headers = getHeaders(auth);
|
|
73
|
+
if (auth?.workspaceToken) {
|
|
74
|
+
headers['X-Workspace-Authorization'] = `Bearer ${auth.workspaceToken}`;
|
|
75
|
+
}
|
|
76
|
+
if (auth?.organizationId) {
|
|
77
|
+
headers['x-org-id'] = auth.organizationId;
|
|
78
|
+
}
|
|
79
|
+
return headers;
|
|
80
|
+
}
|
|
81
|
+
function initClients() {
|
|
82
|
+
const config = readConfig();
|
|
83
|
+
const auth = readAuth();
|
|
84
|
+
workspaceClient = new GraphQLClient(config.workspaceEndpoint);
|
|
85
|
+
workspaceClient.setHeaders(getWorkspaceHeaders(auth));
|
|
86
|
+
globalClient = new GraphQLClient(config.globalEndpoint);
|
|
87
|
+
globalClient.setHeaders(getHeaders(auth));
|
|
88
|
+
return { workspace: workspaceClient, global: globalClient };
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Refresh the platform access token.
|
|
92
|
+
* For client_credentials: re-authenticate with stored credentials.
|
|
93
|
+
* For device_code/api_key: use the stored refresh token.
|
|
94
|
+
*/
|
|
95
|
+
async function refreshPlatformToken() {
|
|
96
|
+
const auth = readAuth();
|
|
97
|
+
if (!auth)
|
|
98
|
+
return;
|
|
99
|
+
if (auth.authMethod === 'client_credentials' && auth.clientId && auth.clientSecret) {
|
|
100
|
+
const config = readConfig();
|
|
101
|
+
try {
|
|
102
|
+
const result = await clientCredentialsFlow(config.globalEndpoint, auth.clientId, auth.clientSecret);
|
|
103
|
+
writeAuth({
|
|
104
|
+
...auth,
|
|
105
|
+
accessToken: result.accessToken,
|
|
106
|
+
expiresAt: Date.now() + result.expiresIn * 1000,
|
|
107
|
+
});
|
|
108
|
+
workspaceClient = null;
|
|
109
|
+
globalClient = null;
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
printError(`App token refresh failed: ${extractErrorMessage(error)}`);
|
|
113
|
+
}
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
if (!auth.refreshToken)
|
|
117
|
+
return;
|
|
118
|
+
const config = readConfig();
|
|
119
|
+
const client = new GraphQLClient(config.globalEndpoint);
|
|
120
|
+
client.setHeaders({ Authorization: `Bearer ${auth.accessToken}` });
|
|
121
|
+
const REFRESH_MUTATION = `
|
|
122
|
+
mutation RefreshToken($token: String!) {
|
|
123
|
+
refreshToken(token: $token) {
|
|
124
|
+
accessToken
|
|
125
|
+
refreshToken
|
|
126
|
+
expiresIn
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
`;
|
|
130
|
+
try {
|
|
131
|
+
const data = await client.request(REFRESH_MUTATION, {
|
|
132
|
+
token: auth.refreshToken,
|
|
133
|
+
});
|
|
134
|
+
const result = data.refreshToken;
|
|
135
|
+
const expiresAt = Date.now() + result.expiresIn * 1000;
|
|
136
|
+
writeAuth({
|
|
137
|
+
...auth,
|
|
138
|
+
accessToken: result.accessToken,
|
|
139
|
+
refreshToken: result.refreshToken,
|
|
140
|
+
expiresAt,
|
|
141
|
+
});
|
|
142
|
+
workspaceClient = null;
|
|
143
|
+
globalClient = null;
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
printError(`Token refresh failed: ${extractErrorMessage(error)}`);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Refresh the workspace token using the current platform token.
|
|
151
|
+
*/
|
|
152
|
+
async function refreshWorkspaceToken() {
|
|
153
|
+
const auth = readAuth();
|
|
154
|
+
if (!auth?.accessToken || !auth.workspaceId || !auth.organizationId)
|
|
155
|
+
return;
|
|
156
|
+
const config = readConfig();
|
|
157
|
+
try {
|
|
158
|
+
const result = await issueWorkspaceToken(config.workspaceEndpoint, auth.accessToken, auth.workspaceId, auth.organizationId);
|
|
159
|
+
writeAuth({
|
|
160
|
+
...auth,
|
|
161
|
+
workspaceToken: result.token,
|
|
162
|
+
workspaceTokenExpiresAt: new Date(result.expiresAt).getTime(),
|
|
163
|
+
});
|
|
164
|
+
workspaceClient = null;
|
|
165
|
+
}
|
|
166
|
+
catch (error) {
|
|
167
|
+
printError(`Workspace token refresh failed: ${extractErrorMessage(error)}`);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
export async function ensureFreshTokens() {
|
|
171
|
+
const auth = readAuth();
|
|
172
|
+
if (!auth)
|
|
173
|
+
return;
|
|
174
|
+
if (isTokenExpiringSoon(auth)) {
|
|
175
|
+
await refreshPlatformToken();
|
|
176
|
+
}
|
|
177
|
+
const freshAuth = readAuth();
|
|
178
|
+
if (freshAuth && freshAuth.workspaceToken && isWorkspaceTokenExpiringSoon(freshAuth)) {
|
|
179
|
+
await refreshWorkspaceToken();
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Inspect a GraphQL document to decide whether it is safe to retry.
|
|
184
|
+
* Mutations are NOT retried — a transient error may land the write
|
|
185
|
+
* server-side even if the client observed a timeout, so blindly
|
|
186
|
+
* retrying create/update/delete could create duplicates. Queries are
|
|
187
|
+
* always retryable.
|
|
188
|
+
*/
|
|
189
|
+
function isRetryableDocument(document) {
|
|
190
|
+
const text = typeof document === 'string'
|
|
191
|
+
? document
|
|
192
|
+
: typeof document?.loc?.source?.body ===
|
|
193
|
+
'string'
|
|
194
|
+
? document.loc.source.body
|
|
195
|
+
: '';
|
|
196
|
+
const m = text.match(/\b(query|mutation|subscription)\b/i);
|
|
197
|
+
return !m || m[1].toLowerCase() === 'query';
|
|
198
|
+
}
|
|
199
|
+
async function executeWithRetry(client, document, variables) {
|
|
200
|
+
const retryable = isRetryableDocument(document);
|
|
201
|
+
const maxAttempts = retryable ? MAX_RETRIES : 1;
|
|
202
|
+
let lastError;
|
|
203
|
+
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
204
|
+
try {
|
|
205
|
+
const controller = new AbortController();
|
|
206
|
+
const timer = setTimeout(() => controller.abort(), DEFAULT_TIMEOUT);
|
|
207
|
+
try {
|
|
208
|
+
return await client.request({
|
|
209
|
+
document,
|
|
210
|
+
variables,
|
|
211
|
+
signal: controller.signal,
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
finally {
|
|
215
|
+
clearTimeout(timer);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
catch (error) {
|
|
219
|
+
lastError = error;
|
|
220
|
+
if (error && typeof error === 'object' && 'response' in error) {
|
|
221
|
+
const resp = error.response;
|
|
222
|
+
if (resp && typeof resp.status === 'number' && resp.status >= 400 && resp.status < 500) {
|
|
223
|
+
break;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
if (retryable && isNetworkOrServerError(error) && attempt < maxAttempts - 1) {
|
|
227
|
+
const delay = INITIAL_RETRY_DELAY_MS * Math.pow(2, attempt);
|
|
228
|
+
await sleep(delay);
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
break;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
throw new Error(extractErrorMessage(lastError));
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Execute a GraphQL request against the workspace gateway.
|
|
238
|
+
* Auto-refreshes both platform and workspace tokens when they are about to expire.
|
|
239
|
+
*/
|
|
240
|
+
export async function workspaceRequest(document, variables) {
|
|
241
|
+
await ensureFreshTokens();
|
|
242
|
+
const { workspace } = workspaceClient ? { workspace: workspaceClient } : initClients();
|
|
243
|
+
const auth = readAuth();
|
|
244
|
+
workspace.setHeaders(getWorkspaceHeaders(auth));
|
|
245
|
+
return executeWithRetry(workspace, document, variables);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Execute a GraphQL request against the global gateway (auth operations).
|
|
249
|
+
* Does NOT auto-refresh tokens (to prevent loops during refresh itself).
|
|
250
|
+
*/
|
|
251
|
+
export async function globalRequest(document, variables) {
|
|
252
|
+
const { global: client } = globalClient ? { global: globalClient } : initClients();
|
|
253
|
+
const auth = readAuth();
|
|
254
|
+
client.setHeaders(getHeaders(auth));
|
|
255
|
+
return executeWithRetry(client, document, variables);
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Execute a request against the workspace gateway with ONLY the platform auth token.
|
|
259
|
+
* Used for IssueWorkspaceToken which does not require an existing workspace token.
|
|
260
|
+
*/
|
|
261
|
+
export async function workspaceAuthOnlyRequest(document, variables) {
|
|
262
|
+
const config = readConfig();
|
|
263
|
+
const auth = readAuth();
|
|
264
|
+
const client = new GraphQLClient(config.workspaceEndpoint);
|
|
265
|
+
client.setHeaders(getHeaders(auth));
|
|
266
|
+
return executeWithRetry(client, document, variables);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Reset cached clients (useful after auth changes).
|
|
270
|
+
*/
|
|
271
|
+
export function resetClients() {
|
|
272
|
+
workspaceClient = null;
|
|
273
|
+
globalClient = null;
|
|
274
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL operations for bigconsole-cli.
|
|
3
|
+
* All queries/mutations match the real wspace-bigconsole-svc schema
|
|
4
|
+
* (see ~/products/wspace/bigconsole/wspace-bigconsole-svc/.hive-schema.graphql).
|
|
5
|
+
*/
|
|
6
|
+
export declare const SIGN_OUT = "\n mutation SignOut {\n signOut\n }\n";
|
|
7
|
+
export declare const REFRESH_TOKEN = "\n mutation RefreshToken($token: String!) {\n refreshToken(token: $token) {\n accessToken\n refreshToken\n expiresIn\n }\n }\n";
|
|
8
|
+
export declare const MY_WORKSPACES = "\n query MyWorkspaces($limit: Int) {\n myWorkspaces(limit: $limit) {\n items { id name slug tenantId organizationId }\n }\n }\n";
|
|
9
|
+
export declare const LIST_DASHBOARDS = "\n query ListDashboards(\n $first: Int\n $after: String\n $search: String\n $visibility: DashboardVisibility\n $category: DashboardCategory\n $includeArchived: Boolean\n $sortBy: DashboardSortField\n $sortOrder: SortOrder\n ) {\n listDashboards(\n first: $first\n after: $after\n search: $search\n visibility: $visibility\n category: $category\n includeArchived: $includeArchived\n sortBy: $sortBy\n sortOrder: $sortOrder\n ) {\n edges {\n node {\n id\n name\n description\n status\n visibility\n category\n ownerId\n createdAt\n updatedAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
10
|
+
export declare const GET_DASHBOARD = "\n query GetDashboard($id: ID!) {\n getDashboard(id: $id) {\n id\n name\n description\n status\n visibility\n category\n ownerId\n definitionVersion\n createdAt\n updatedAt\n }\n }\n";
|
|
11
|
+
export declare const ARCHIVE_DASHBOARD = "\n mutation ArchiveDashboard($id: ID!) {\n archiveDashboard(id: $id) {\n id\n name\n status\n }\n }\n";
|
|
12
|
+
export declare const DELETE_DASHBOARD = "\n mutation DeleteDashboard($id: ID!) {\n deleteBigConsoleDashboard(id: $id)\n }\n";
|
|
13
|
+
export declare const LIST_WIDGETS = "\n query ListWidgets($pageId: ID!, $first: Int, $after: String, $type: WidgetType) {\n listWidgets(pageId: $pageId, first: $first, after: $after, type: $type) {\n edges {\n node {\n id\n pageId\n dashboardId\n type\n title\n dataSinkId\n lastRefreshedAt\n createdAt\n updatedAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
14
|
+
export declare const GET_WIDGET = "\n query GetWidget($id: ID!) {\n getWidget(id: $id) {\n id\n pageId\n dashboardId\n type\n title\n config\n dataSinkId\n datasetId\n lastRefreshedAt\n cacheTTL\n createdAt\n updatedAt\n }\n }\n";
|
|
15
|
+
export declare const DELETE_WIDGET = "\n mutation DeleteWidget($id: ID!) {\n deleteBigConsoleWidget(id: $id)\n }\n";
|
|
16
|
+
export declare const LIST_DATASINKS = "\n query ListDataSinks(\n $first: Int\n $after: String\n $search: String\n $status: DataSinkStatus\n $setupState: DataSinkSetupState\n $isActive: Boolean\n ) {\n listDataSinks(\n first: $first\n after: $after\n search: $search\n status: $status\n setupState: $setupState\n isActive: $isActive\n ) {\n edges {\n node {\n id\n name\n key\n description\n status\n setupState\n isActive\n createdAt\n updatedAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
17
|
+
export declare const GET_DATASINK = "\n query GetDataSink($id: ID, $key: String) {\n getDataSink(id: $id, key: $key) {\n id\n name\n key\n description\n status\n setupState\n isActive\n createdAt\n updatedAt\n }\n }\n";
|
|
18
|
+
export declare const GET_DATASINK_DATA = "\n query GetDataSinkData($id: ID, $key: String, $dataPath: String, $forceRefresh: Boolean) {\n getDataSinkData(id: $id, key: $key, dataPath: $dataPath, forceRefresh: $forceRefresh)\n }\n";
|
|
19
|
+
export declare const DELETE_DATASINK = "\n mutation DeleteDataSink($id: ID!) {\n deleteDataSink(id: $id)\n }\n";
|
|
20
|
+
export declare const LIST_PARSERS = "\n query ListParsers($first: Int, $after: String, $filter: ParserFilterInput) {\n listParsers(first: $first, after: $after, filter: $filter) {\n edges {\n node {\n id\n name\n description\n type\n status\n inputSinkKey\n outputKey\n outputWidgetId\n ttl\n version\n createdAt\n updatedAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
21
|
+
export declare const GET_PARSER = "\n query GetParser($id: ID!) {\n parser(id: $id) {\n id\n name\n description\n type\n status\n expression\n inputSinkKey\n outputKey\n outputWidgetId\n ttl\n version\n createdAt\n updatedAt\n }\n }\n";
|
|
22
|
+
export declare const DELETE_PARSER = "\n mutation DeleteParser($id: ID!) {\n deleteParser(id: $id)\n }\n";
|
|
23
|
+
export declare const LIST_PIPELINES = "\n query ListPipelines($first: Int, $after: String, $filter: PipelineFilterInput) {\n listPipelines(first: $first, after: $after, filter: $filter) {\n edges {\n node {\n id\n name\n description\n status\n version\n lastExecutedAt\n createdAt\n updatedAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
24
|
+
export declare const GET_PIPELINE = "\n query GetPipeline($id: ID!) {\n pipeline(id: $id) {\n id\n name\n description\n status\n version\n lastExecutedAt\n stages {\n id\n position\n inputKey\n outputKey\n enabled\n parserName\n parserType\n }\n createdAt\n updatedAt\n }\n }\n";
|
|
25
|
+
export declare const DELETE_PIPELINE = "\n mutation DeletePipeline($id: ID!) {\n deletePipeline(id: $id)\n }\n";
|
|
26
|
+
export declare const CREATE_DASHBOARD = "\n mutation CreateDashboard($input: BigConsoleCreateDashboardInput!) {\n createBigConsoleDashboard(input: $input) {\n id\n name\n status\n visibility\n category\n createdAt\n }\n }\n";
|
|
27
|
+
export declare const UPDATE_DASHBOARD = "\n mutation UpdateDashboard($input: BigConsoleUpdateDashboardInput!) {\n updateBigConsoleDashboard(input: $input) {\n id\n name\n status\n visibility\n category\n updatedAt\n }\n }\n";
|
|
28
|
+
export declare const IMPORT_DASHBOARD = "\n mutation ImportDashboard($input: ImportDashboardInput!) {\n importDashboard(input: $input) {\n id\n name\n status\n visibility\n category\n createdAt\n }\n }\n";
|
|
29
|
+
export declare const EXPORT_DASHBOARD = "\n query ExportDashboard($id: ID!, $includeComments: Boolean, $options: ExportDashboardOptions) {\n exportDashboard(id: $id, includeComments: $includeComments, options: $options)\n }\n";
|
|
30
|
+
export declare const CREATE_WIDGET = "\n mutation CreateWidget($input: BigConsoleCreateWidgetInput!) {\n createBigConsoleWidget(input: $input) {\n id\n pageId\n type\n title\n createdAt\n }\n }\n";
|
|
31
|
+
export declare const UPDATE_WIDGET = "\n mutation UpdateWidget($input: BigConsoleUpdateWidgetInput!) {\n updateBigConsoleWidget(input: $input) {\n id\n pageId\n type\n title\n updatedAt\n }\n }\n";
|
|
32
|
+
export declare const CREATE_DATASINK = "\n mutation CreateDataSink($input: CreateDataSinkInput!) {\n createDataSink(input: $input) {\n id\n name\n key\n status\n setupState\n isActive\n createdAt\n }\n }\n";
|
|
33
|
+
export declare const UPDATE_DATASINK = "\n mutation UpdateDataSink($input: UpdateDataSinkInput!) {\n updateDataSink(input: $input) {\n id\n name\n key\n status\n isActive\n updatedAt\n }\n }\n";
|
|
34
|
+
export declare const CREATE_PARSER = "\n mutation CreateParser($input: CreateParserInput!) {\n createParser(input: $input) {\n id\n name\n type\n status\n inputSinkKey\n outputKey\n version\n createdAt\n }\n }\n";
|
|
35
|
+
export declare const UPDATE_PARSER = "\n mutation UpdateParser($id: ID!, $version: Int!, $input: UpdateParserInput!) {\n updateParser(id: $id, version: $version, input: $input) {\n id\n name\n type\n status\n version\n updatedAt\n }\n }\n";
|
|
36
|
+
export declare const CREATE_PIPELINE = "\n mutation CreatePipeline($input: CreatePipelineInput!) {\n createPipeline(input: $input) {\n id\n name\n status\n version\n createdAt\n }\n }\n";
|
|
37
|
+
export declare const UPDATE_PIPELINE = "\n mutation UpdatePipeline($id: ID!, $version: Int!, $input: UpdatePipelineInput!) {\n updatePipeline(id: $id, version: $version, input: $input) {\n id\n name\n status\n version\n updatedAt\n }\n }\n";
|
|
38
|
+
export declare const GET_WIDGET_ACTIONS = "\n query GetWidgetActions($widgetId: ID!) {\n getWidgetActions(widgetId: $widgetId) {\n id\n widgetId\n type\n label\n config\n createdAt\n }\n }\n";
|
|
39
|
+
export declare const DELETE_WIDGET_DRILLDOWN = "\n mutation DeleteWidgetDrilldown($widgetId: ID!) {\n deleteWidgetDrilldown(widgetId: $widgetId)\n }\n";
|
|
40
|
+
export declare const LIST_DASHBOARD_SHARES = "\n query ListDashboardShares(\n $dashboardId: ID!\n $first: Int\n $after: String\n $isActive: Boolean\n $permission: SharePermission\n $recipientType: ShareRecipientType\n ) {\n listDashboardShares(\n dashboardId: $dashboardId\n first: $first\n after: $after\n isActive: $isActive\n permission: $permission\n recipientType: $recipientType\n ) {\n edges {\n node {\n id\n dashboardId\n permission\n isActive\n expiresAt\n createdAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
41
|
+
export declare const LIST_TEMPLATES = "\n query ListTemplates(\n $first: Int\n $after: String\n $category: DashboardCategory\n $search: String\n $isFeatured: Boolean\n ) {\n listTemplates(\n first: $first\n after: $after\n category: $category\n search: $search\n isFeatured: $isFeatured\n ) {\n edges {\n node {\n id\n name\n description\n category\n isFeatured\n status\n createdAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
42
|
+
export declare const GET_TEMPLATE = "\n query GetTemplate($id: ID!) {\n getTemplate(id: $id) {\n id\n name\n description\n category\n isFeatured\n status\n createdAt\n }\n }\n";
|
|
43
|
+
export declare const GENERATE_DASHBOARD_FROM_PROMPT = "\n mutation GenerateDashboardFromPrompt($input: GenerateDashboardFromPromptInput!) {\n generateDashboardFromPrompt(input: $input) {\n id\n status\n prompt\n createdAt\n }\n }\n";
|
|
44
|
+
export declare const LIST_PROMPT_GENERATIONS = "\n query ListPromptGenerations($first: Int, $after: String, $status: PromptGenerationStatus) {\n listPromptGenerations(first: $first, after: $after, status: $status) {\n edges {\n node {\n id\n status\n prompt\n createdAt\n }\n }\n pageInfo { hasNextPage endCursor }\n totalCount\n }\n }\n";
|
|
45
|
+
export declare const GET_PROMPT_GENERATION = "\n query GetPromptGeneration($id: ID!) {\n getPromptGeneration(id: $id) {\n id\n status\n prompt\n createdAt\n }\n }\n";
|
|
46
|
+
export declare const CANCEL_PROMPT_GENERATION = "\n mutation CancelPromptGeneration($id: ID!) {\n cancelPromptGeneration(id: $id) {\n id\n status\n }\n }\n";
|
|
47
|
+
export declare const LIST_WORKFLOWS = "\n query ListWorkflows($filter: FluidGridsWorkflowFilterInput) {\n workflows(filter: $filter) {\n id\n name\n key\n description\n status\n executionCount\n linkedDataSinkCount\n lastExecutedAt\n createdAt\n updatedAt\n }\n }\n";
|
|
48
|
+
export declare const GET_WORKFLOW = "\n query GetWorkflow($id: ID!) {\n workflow(id: $id) {\n id\n name\n key\n description\n status\n executionCount\n linkedDataSinkCount\n externalWorkflowId\n lastExecutionId\n lastExecutedAt\n webhookUrl\n createdAt\n updatedAt\n }\n }\n";
|