@stack-spot/portal-network 0.197.0 → 0.198.0-beta.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.
Files changed (104) hide show
  1. package/CHANGELOG.md +152 -0
  2. package/dist/api/agent-tools.d.ts +139 -148
  3. package/dist/api/agent-tools.d.ts.map +1 -1
  4. package/dist/api/agent-tools.js +41 -4
  5. package/dist/api/agent-tools.js.map +1 -1
  6. package/dist/api/agent.d.ts +55 -55
  7. package/dist/api/agent.d.ts.map +1 -1
  8. package/dist/api/ai.d.ts +288 -19
  9. package/dist/api/ai.d.ts.map +1 -1
  10. package/dist/api/ai.js +196 -11
  11. package/dist/api/ai.js.map +1 -1
  12. package/dist/api/cloudPlatformHorizon.d.ts +178 -9
  13. package/dist/api/cloudPlatformHorizon.d.ts.map +1 -1
  14. package/dist/api/cloudPlatformHorizon.js +69 -1
  15. package/dist/api/cloudPlatformHorizon.js.map +1 -1
  16. package/dist/api/codeShift.d.ts +316 -32
  17. package/dist/api/codeShift.d.ts.map +1 -1
  18. package/dist/api/codeShift.js +172 -8
  19. package/dist/api/codeShift.js.map +1 -1
  20. package/dist/api/dataIntegration.d.ts +291 -1
  21. package/dist/api/dataIntegration.d.ts.map +1 -1
  22. package/dist/api/dataIntegration.js +254 -0
  23. package/dist/api/dataIntegration.js.map +1 -1
  24. package/dist/api/discover.d.ts +95 -12
  25. package/dist/api/discover.d.ts.map +1 -1
  26. package/dist/api/discover.js +78 -2
  27. package/dist/api/discover.js.map +1 -1
  28. package/dist/api-addresses.d.ts.map +1 -1
  29. package/dist/client/account.d.ts +233 -233
  30. package/dist/client/account.d.ts.map +1 -1
  31. package/dist/client/agent-tools.d.ts +159 -126
  32. package/dist/client/agent-tools.d.ts.map +1 -1
  33. package/dist/client/agent-tools.js +35 -4
  34. package/dist/client/agent-tools.js.map +1 -1
  35. package/dist/client/agent.d.ts +46 -46
  36. package/dist/client/agent.d.ts.map +1 -1
  37. package/dist/client/ai.d.ts +243 -108
  38. package/dist/client/ai.d.ts.map +1 -1
  39. package/dist/client/ai.js +102 -2
  40. package/dist/client/ai.js.map +1 -1
  41. package/dist/client/api-management.d.ts +2 -2
  42. package/dist/client/cloud-account.d.ts +13 -13
  43. package/dist/client/cloud-platform-horizon.d.ts +38 -19
  44. package/dist/client/cloud-platform-horizon.d.ts.map +1 -1
  45. package/dist/client/cloud-platform-horizon.js +19 -1
  46. package/dist/client/cloud-platform-horizon.js.map +1 -1
  47. package/dist/client/cloud-platform.d.ts +50 -50
  48. package/dist/client/cloud-runtimes.d.ts +4 -4
  49. package/dist/client/cloud-services.d.ts +17 -17
  50. package/dist/client/cloud-services.d.ts.map +1 -1
  51. package/dist/client/code-shift.d.ts +379 -265
  52. package/dist/client/code-shift.d.ts.map +1 -1
  53. package/dist/client/code-shift.js +100 -1
  54. package/dist/client/code-shift.js.map +1 -1
  55. package/dist/client/content.d.ts +127 -132
  56. package/dist/client/content.d.ts.map +1 -1
  57. package/dist/client/data-integration.d.ts +85 -55
  58. package/dist/client/data-integration.d.ts.map +1 -1
  59. package/dist/client/data-integration.js +22 -2
  60. package/dist/client/data-integration.js.map +1 -1
  61. package/dist/client/discover.d.ts +29 -9
  62. package/dist/client/discover.d.ts.map +1 -1
  63. package/dist/client/discover.js +236 -1
  64. package/dist/client/discover.js.map +1 -1
  65. package/dist/client/event-bus.d.ts.map +1 -1
  66. package/dist/client/gen-ai-inference.d.ts +20 -20
  67. package/dist/client/insights.d.ts +7 -7
  68. package/dist/client/notification.d.ts +10 -10
  69. package/dist/client/runtime-manager.d.ts +8 -8
  70. package/dist/client/secrets.d.ts.map +1 -1
  71. package/dist/client/secrets.js +1 -1
  72. package/dist/client/secrets.js.map +1 -1
  73. package/dist/client/types.d.ts +14 -0
  74. package/dist/client/types.d.ts.map +1 -1
  75. package/dist/client/workflow.d.ts +10 -10
  76. package/dist/client/workspace-ai.d.ts +53 -53
  77. package/dist/client/workspace-manager.d.ts +77 -77
  78. package/dist/client/workspace-search.d.ts +2 -2
  79. package/dist/client/workspace.d.ts +58 -105
  80. package/dist/client/workspace.d.ts.map +1 -1
  81. package/dist/error/dictionary/cloud-platform.d.ts +6 -0
  82. package/dist/error/dictionary/cloud-platform.d.ts.map +1 -1
  83. package/dist/error/dictionary/cloud-platform.js +6 -0
  84. package/dist/error/dictionary/cloud-platform.js.map +1 -1
  85. package/dist/utils/StreamedJson.d.ts.map +1 -1
  86. package/dist/utils/StreamedJson.js +9 -1
  87. package/dist/utils/StreamedJson.js.map +1 -1
  88. package/package.json +2 -2
  89. package/src/api/agent-tools.ts +186 -150
  90. package/src/api/ai.ts +521 -24
  91. package/src/api/cloudPlatformHorizon.ts +412 -9
  92. package/src/api/codeShift.ts +631 -37
  93. package/src/api/dataIntegration.ts +635 -1
  94. package/src/api/discover.ts +180 -14
  95. package/src/client/agent-tools.ts +26 -4
  96. package/src/client/ai.ts +81 -10
  97. package/src/client/cloud-platform-horizon.ts +12 -4
  98. package/src/client/code-shift.ts +64 -1
  99. package/src/client/data-integration.ts +15 -1
  100. package/src/client/discover.ts +233 -3
  101. package/src/client/secrets.ts +1 -1
  102. package/src/client/types.ts +17 -2
  103. package/src/error/dictionary/cloud-platform.ts +6 -0
  104. package/src/utils/StreamedJson.tsx +9 -2
@@ -8,11 +8,11 @@ import * as Oazapfts from "@oazapfts/runtime";
8
8
  import * as QS from "@oazapfts/runtime/query";
9
9
  export const defaults: Oazapfts.Defaults<Oazapfts.CustomHeaders> = {
10
10
  headers: {},
11
- baseUrl: "https://discover-discover-core.stg.stackspot.com",
11
+ baseUrl: "https://discover-discover-core.dev.stackspot.com",
12
12
  };
13
13
  const oazapfts = Oazapfts.runtime(defaults);
14
14
  export const servers = {
15
- generatedServerUrl: "https://discover-discover-core.stg.stackspot.com"
15
+ generatedServerUrl: "https://discover-discover-core.dev.stackspot.com"
16
16
  };
17
17
  export type GetOpportunityResponseHypothesisResponse = {
18
18
  id: string;
@@ -28,7 +28,7 @@ export type GetOpportunityResponse = {
28
28
  hypotheses: GetOpportunityResponseHypothesisResponse[];
29
29
  updatedBy?: string;
30
30
  updatedAt?: string;
31
- chatId?: string;
31
+ chatId: string;
32
32
  };
33
33
  export type UpdateOpportunityRequest = {
34
34
  title?: string;
@@ -42,7 +42,7 @@ export type UpdateOpportunityResponse = {
42
42
  createdAt?: string;
43
43
  updatedBy?: string;
44
44
  updatedAt?: string;
45
- chatId?: string;
45
+ chatId: string;
46
46
  };
47
47
  export type GetHypothesisResponseDocumentResponse = {
48
48
  id: string;
@@ -59,7 +59,7 @@ export type GetHypothesisResponse = {
59
59
  createdAt?: string;
60
60
  updatedBy?: string;
61
61
  updatedAt?: string;
62
- chatId?: string;
62
+ chatId: string;
63
63
  };
64
64
  export type UpdateHypothesisRequest = {
65
65
  title?: string;
@@ -74,7 +74,7 @@ export type UpdateHypothesisResponse = {
74
74
  createdAt?: string;
75
75
  updatedBy?: string;
76
76
  updatedAt?: string;
77
- chatId?: string;
77
+ chatId: string;
78
78
  };
79
79
  export type GetDocumentResponse = {
80
80
  id: string;
@@ -85,7 +85,7 @@ export type GetDocumentResponse = {
85
85
  createdAt?: string;
86
86
  updatedBy?: string;
87
87
  updatedAt?: string;
88
- chatId?: string;
88
+ chatId: string;
89
89
  };
90
90
  export type UpdateDocumentRequest = {
91
91
  title?: string;
@@ -101,7 +101,7 @@ export type UpdateDocumentResponse = {
101
101
  createdAt?: string;
102
102
  updatedBy?: string;
103
103
  updatedAt?: string;
104
- chatId?: string;
104
+ chatId: string;
105
105
  };
106
106
  export type SortResponse = {
107
107
  direction: string;
@@ -134,7 +134,7 @@ export type PageResponseGetOpportunityResponse = {
134
134
  export type CreateOpportunityRequest = {
135
135
  title?: string;
136
136
  description?: string;
137
- chatId?: string;
137
+ chatId: string;
138
138
  };
139
139
  export type CreateOpportunityResponse = {
140
140
  id: string;
@@ -144,13 +144,24 @@ export type CreateOpportunityResponse = {
144
144
  createdAt?: string;
145
145
  updatedBy?: string;
146
146
  updatedAt?: string;
147
- chatId?: string;
147
+ chatId: string;
148
+ };
149
+ export type InsightResponseInsightData = {
150
+ id: string;
151
+ title: string;
152
+ summary: string;
153
+ badge: string;
154
+ chartUrl: string;
155
+ };
156
+ export type InsightResponse = {
157
+ insights: InsightResponseInsightData[];
158
+ generatedAt: string;
148
159
  };
149
160
  export type CreateHypothesisRequest = {
150
161
  opportunityId?: string;
151
162
  title?: string;
152
163
  description?: string;
153
- chatId?: string;
164
+ chatId: string;
154
165
  };
155
166
  export type CreateHypothesisResponse = {
156
167
  id: string;
@@ -161,14 +172,14 @@ export type CreateHypothesisResponse = {
161
172
  createdAt?: string;
162
173
  updatedBy?: string;
163
174
  updatedAt?: string;
164
- chatId?: string;
175
+ chatId: string;
165
176
  };
166
177
  export type CreateDocumentRequest = {
167
178
  hypothesisId?: string;
168
179
  title?: string;
169
180
  description?: string;
170
181
  content?: string;
171
- chatId?: string;
182
+ chatId: string;
172
183
  };
173
184
  export type CreateDocumentResponse = {
174
185
  id: string;
@@ -179,7 +190,34 @@ export type CreateDocumentResponse = {
179
190
  createdAt?: string;
180
191
  updatedBy?: string;
181
192
  updatedAt?: string;
182
- chatId?: string;
193
+ chatId: string;
194
+ };
195
+ export type MessageRequest = {
196
+ prompt: string;
197
+ conversationId: string;
198
+ };
199
+ export type SseEmitter = {
200
+ timeout?: number;
201
+ };
202
+ export type AdminAgentCreateRequest = {
203
+ agentId: string;
204
+ name: string;
205
+ description: string;
206
+ schema: string;
207
+ };
208
+ export type AdminAgentResponse = {
209
+ id: string;
210
+ name: string;
211
+ description: string;
212
+ active: boolean;
213
+ createdAt: string;
214
+ updatedAt?: string;
215
+ };
216
+ export type GetInsightResponse = {
217
+ id: string;
218
+ title: string;
219
+ content: string;
220
+ chartUrl: string;
183
221
  };
184
222
  export type GetArtifactResponse = {
185
223
  "type": "OPPORTUNITY" | "HYPOTHESIS" | "DOCUMENT";
@@ -187,6 +225,9 @@ export type GetArtifactResponse = {
187
225
  title: string;
188
226
  description: string;
189
227
  };
228
+ export type AdminHelloResponse = {
229
+ message: string;
230
+ };
190
231
  /**
191
232
  * Get specific Opportunity
192
233
  */
@@ -345,6 +386,30 @@ export function create({ createOpportunityRequest }: {
345
386
  body: createOpportunityRequest
346
387
  })));
347
388
  }
389
+ /**
390
+ * Fetch Insights
391
+ */
392
+ export function fetchInsights(opts?: Oazapfts.RequestOpts) {
393
+ return oazapfts.ok(oazapfts.fetchJson<{
394
+ status: 200;
395
+ data: InsightResponse;
396
+ }>("/v2/insights", {
397
+ ...opts,
398
+ method: "POST"
399
+ }));
400
+ }
401
+ /**
402
+ * Refresh Insights
403
+ */
404
+ export function refreshInsights(opts?: Oazapfts.RequestOpts) {
405
+ return oazapfts.ok(oazapfts.fetchJson<{
406
+ status: 200;
407
+ data: InsightResponse;
408
+ }>("/v2/insights/refresh", {
409
+ ...opts,
410
+ method: "POST"
411
+ }));
412
+ }
348
413
  /**
349
414
  * Get all Hypotheses
350
415
  */
@@ -405,6 +470,80 @@ export function create2({ createDocumentRequest }: {
405
470
  body: createDocumentRequest
406
471
  })));
407
472
  }
473
+ export function chat({ authorization, messageRequest }: {
474
+ authorization: string;
475
+ messageRequest: MessageRequest;
476
+ }, opts?: Oazapfts.RequestOpts) {
477
+ return oazapfts.ok(oazapfts.fetchJson<{
478
+ status: 200;
479
+ data: SseEmitter;
480
+ }>("/v2/ai/chat", oazapfts.json({
481
+ ...opts,
482
+ method: "POST",
483
+ body: messageRequest,
484
+ headers: oazapfts.mergeHeaders(opts?.headers, {
485
+ Authorization: authorization
486
+ })
487
+ })));
488
+ }
489
+ export function createAgent({ adminAgentCreateRequest }: {
490
+ adminAgentCreateRequest: AdminAgentCreateRequest;
491
+ }, opts?: Oazapfts.RequestOpts) {
492
+ return oazapfts.ok(oazapfts.fetchJson<{
493
+ status: 200;
494
+ data: AdminAgentResponse;
495
+ }>("/v2/admin/agents", oazapfts.json({
496
+ ...opts,
497
+ method: "POST",
498
+ body: adminAgentCreateRequest
499
+ })));
500
+ }
501
+ export function deactivateAgent({ schema, agentId }: {
502
+ schema: string;
503
+ agentId: string;
504
+ }, opts?: Oazapfts.RequestOpts) {
505
+ return oazapfts.ok(oazapfts.fetchText(`/v2/admin/agents/${encodeURIComponent(schema)}/${encodeURIComponent(agentId)}/deactivate`, {
506
+ ...opts,
507
+ method: "PATCH"
508
+ }));
509
+ }
510
+ export function activateAgent({ schema, agentId }: {
511
+ schema: string;
512
+ agentId: string;
513
+ }, opts?: Oazapfts.RequestOpts) {
514
+ return oazapfts.ok(oazapfts.fetchJson<{
515
+ status: 200;
516
+ data: AdminAgentResponse;
517
+ }>(`/v2/admin/agents/${encodeURIComponent(schema)}/${encodeURIComponent(agentId)}/activate`, {
518
+ ...opts,
519
+ method: "PATCH"
520
+ }));
521
+ }
522
+ export function getAndCacheData({ key }: {
523
+ key: string;
524
+ }, opts?: Oazapfts.RequestOpts) {
525
+ return oazapfts.ok(oazapfts.fetchJson<{
526
+ status: 200;
527
+ data: {
528
+ [key: string]: object;
529
+ };
530
+ }>(`/v2/redis/hello-world-persist-redis/${encodeURIComponent(key)}`, {
531
+ ...opts
532
+ }));
533
+ }
534
+ /**
535
+ * Get specific Insight
536
+ */
537
+ export function getInsightById({ insightId }: {
538
+ insightId: string;
539
+ }, opts?: Oazapfts.RequestOpts) {
540
+ return oazapfts.ok(oazapfts.fetchJson<{
541
+ status: 200;
542
+ data: GetInsightResponse;
543
+ }>(`/v2/insights/${encodeURIComponent(insightId)}`, {
544
+ ...opts
545
+ }));
546
+ }
408
547
  /**
409
548
  * Get specific Document content
410
549
  */
@@ -433,3 +572,30 @@ export function getAll2({ chatId }: {
433
572
  ...opts
434
573
  }));
435
574
  }
575
+ export function hello(opts?: Oazapfts.RequestOpts) {
576
+ return oazapfts.ok(oazapfts.fetchJson<{
577
+ status: 200;
578
+ data: AdminHelloResponse;
579
+ }>("/v2/admin/hello", {
580
+ ...opts
581
+ }));
582
+ }
583
+ export function listAgents({ schema }: {
584
+ schema: string;
585
+ }, opts?: Oazapfts.RequestOpts) {
586
+ return oazapfts.ok(oazapfts.fetchJson<{
587
+ status: 200;
588
+ data: AdminAgentResponse[];
589
+ }>(`/v2/admin/agents/${encodeURIComponent(schema)}`, {
590
+ ...opts
591
+ }));
592
+ }
593
+ export function deleteAgent({ schema, agentId }: {
594
+ schema: string;
595
+ agentId: string;
596
+ }, opts?: Oazapfts.RequestOpts) {
597
+ return oazapfts.ok(oazapfts.fetchText(`/v2/admin/agents/${encodeURIComponent(schema)}/${encodeURIComponent(agentId)}`, {
598
+ ...opts,
599
+ method: "DELETE"
600
+ }));
601
+ }
@@ -1,6 +1,6 @@
1
1
  import { HttpError } from '@oazapfts/runtime'
2
2
  import { getApiAddresses } from '../api-addresses'
3
- import { addFavoriteV1AgentsAgentIdFavoritePost, AgentVisibilityLevelEnum, createAgentV1AgentsPost, createToolkitToolsV1ToolkitsToolkitIdToolsPost, createToolkitV1ToolkitsPost, defaults, deleteAgentV1AgentsAgentIdDelete, deleteFavoriteV1AgentsAgentIdFavoriteDelete, deleteToolkitToolsV1ToolkitsToolkitIdToolsDelete, deleteToolkitV1ToolkitsToolkitIdDelete, editToolkitToolV1ToolkitsToolkitIdToolsToolIdPut, forkAgentV1AgentsAgentIdForkPost, forkToolkitV1ToolkitsToolkitIdForkPost, getAgentV1AgentsAgentIdGet, getPublicToolKitsV1BuiltinToolkitGet, getToolkitToolV1ToolkitsToolkitIdToolsToolIdGet, getToolkitV1ToolkitsToolkitIdGet, listAgentsUsingToolsV1ToolkitsToolkitIdToolsAgentsPost, listAgentsV1AgentsGet, listAgentsV3AgentsGet, listMultiAgentsV1AgentsMultiAgentsGet, listToolkitsV1ToolkitsGet, publishAgentV1AgentsAgentIdPublishPost, searchAgentsV1AgentsSearchPost, shareV1AgentsAgentIdSharePost, updateAgentV1AgentsAgentIdPatch, updateToolkitV1ToolkitsToolkitIdPatch, VisibilityLevelEnum } from '../api/agent-tools'
3
+ import { addFavoriteV1AgentsAgentIdFavoritePost, AgentVisibilityLevelEnum, createAgentV1AgentsPost, createToolkitToolsV1ToolkitsToolkitIdToolsPost, createToolkitV1ToolkitsPost, defaults, deleteAgentV1AgentsAgentIdDelete, deleteFavoriteV1AgentsAgentIdFavoriteDelete, deleteToolkitToolsV1ToolkitsToolkitIdToolsDelete, deleteToolkitV1ToolkitsToolkitIdDelete, editToolkitToolV1ToolkitsToolkitIdToolsToolIdPut, forkAgentV1AgentsAgentIdForkPost, forkToolkitV1ToolkitsToolkitIdForkPost, getAgentV1AgentsAgentIdGet, getPublicToolKitsV1BuiltinToolkitGet, getToolkitToolV1ToolkitsToolkitIdToolsToolIdGet, getToolkitV1ToolkitsToolkitIdGet, listAgentsUsingToolsV1ToolkitsToolkitIdToolsAgentsPost, listAgentsV1AgentsGet, listAgentsV3AgentsGet, listMcpToolsV1McpToolsToolkitIdGet, listMultiAgentsV1AgentsMultiAgentsGet, listToolkitsV1ToolkitsGet, listToolkitsV2ToolkitsGet, publishAgentV1AgentsAgentIdPublishPost, searchAgentsV1AgentsSearchPost, shareV1AgentsAgentIdSharePost, updateAgentV1AgentsAgentIdPatch, updateToolkitV1ToolkitsToolkitIdPatch, VisibilityLevelEnum } from '../api/agent-tools'
4
4
  import { DefaultAPIError } from '../error/DefaultAPIError'
5
5
  import { agentToolsDictionary } from '../error/dictionary/agent-tools'
6
6
  import { StackspotAPIError } from '../error/StackspotAPIError'
@@ -12,6 +12,7 @@ import { AgentResponseWithBuiltIn, AgentToolsOpenAPIPreview, AgentVisibilityLeve
12
12
  import { workspaceAiClient } from './workspace-ai'
13
13
 
14
14
  const AGENT_DEFAULT_SLUG = 'stk_flex'
15
+ const listAgentsV3AgentsWithoutAuthorization = removeAuthorizationParam(listAgentsV3AgentsGet)
15
16
 
16
17
  class AgentToolsClient extends ReactQueryNetworkClient {
17
18
  constructor() {
@@ -22,6 +23,9 @@ class AgentToolsClient extends ReactQueryNetworkClient {
22
23
  return new DefaultAPIError(error.data, error.status, agentToolsDictionary, error.headers)
23
24
  }
24
25
 
26
+ /**
27
+ * Lists all public toolkits.
28
+ */
25
29
  tools = this.query(removeAuthorizationParam(getPublicToolKitsV1BuiltinToolkitGet))
26
30
 
27
31
  /**
@@ -57,7 +61,15 @@ class AgentToolsClient extends ReactQueryNetworkClient {
57
61
  /**
58
62
  * List agents with support for multiple filters
59
63
  */
60
- agentsMultipleFilters = this.infiniteQuery(removeAuthorizationParam(listAgentsV3AgentsGet), { pageParamName: 'filters.page' })
64
+ agentsMultipleFilters = this.infiniteQuery(listAgentsV3AgentsWithoutAuthorization, {
65
+ pageParamName: 'filters.page',
66
+ accumulator: 'items',
67
+ getNextPageParam: ({ variables, lastPage, lastPageParam }) => {
68
+ const size = variables.filters.size ?? 1
69
+ const parsedLastPageParam = (lastPageParam as number) ?? variables.filters.page ?? 1
70
+ return lastPage.items && lastPage.items.length < size ? undefined : parsedLastPageParam + 1
71
+ },
72
+ })
61
73
 
62
74
  /**
63
75
  * List agents available to be added to other agents
@@ -131,9 +143,18 @@ class AgentToolsClient extends ReactQueryNetworkClient {
131
143
  },
132
144
  })
133
145
 
134
- /* Get list of Toolkits
135
- */
146
+ /**
147
+ * Lists all custom toolkits.
148
+ */
136
149
  toolkits = this.query(removeAuthorizationParam(listToolkitsV1ToolkitsGet))
150
+ /**
151
+ * Get list of Toolkits V2
152
+ */
153
+ toolkitsV2 = this.query(removeAuthorizationParam(listToolkitsV2ToolkitsGet))
154
+ /**
155
+ * Lists all tools of an MCP toolkit.
156
+ */
157
+ mcpTools = this.query(removeAuthorizationParam(listMcpToolsV1McpToolsToolkitIdGet))
137
158
  /**
138
159
  * Get a toolkit by Id
139
160
  */
@@ -166,6 +187,7 @@ class AgentToolsClient extends ReactQueryNetworkClient {
166
187
  * Delete tool from Toolkit
167
188
  */
168
189
  deleteToolFromToolkit = this.mutation(removeAuthorizationParam(deleteToolkitToolsV1ToolkitsToolkitIdToolsDelete))
190
+
169
191
  /**
170
192
  * Previews an uploaded open api file as a stream where each array item is an OpenAPI operation.
171
193
  */
package/src/client/ai.ts CHANGED
@@ -7,26 +7,33 @@ import {
7
7
  calculateNextStepV1QuickCommandsSlugStepsStepSlugCalculateNextStepPost,
8
8
  callbackV1QuickCommandsCallbackExecutionIdGet,
9
9
  conversationHistoryV1ConversationsConversationIdGet,
10
+ createAnswerForReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersPost,
10
11
  createExecutionV1QuickCommandsCreateExecutionSlugPost,
12
+ createResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsPost,
11
13
  currentV1TokensUsageCurrentGet,
12
- currentV1TokensUsageTotalGet,
13
14
  defaults,
14
15
  deleteConversationV1ConversationsConversationIdDelete,
15
16
  deleteFavoriteV1AiStacksStackIdFavoriteDelete,
16
17
  deleteFavoriteV1QuickCommandsSlugFavoriteDelete,
17
18
  deleteKnowledgeObjectByCustomIdV1KnowledgeSourcesSlugObjectsCustomIdDelete,
19
+ deleteResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdDelete,
20
+ deleteReviewCommentV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersAnswerIdDelete,
18
21
  downloadConversationV1ConversationsConversationIdDownloadGet,
19
22
  findKnowledgeObjectByCustomIdV1KnowledgeSourcesSlugObjectsCustomIdGet,
20
23
  findKnowledgeSourceV1KnowledgeSourcesSlugGet,
21
24
  formatFetchStepV1QuickCommandsSlugStepsStepSlugFetchFormatPost,
22
25
  formatResultV1QuickCommandsSlugResultFormatPost,
23
26
  getContentDependenciesV1ContentContentTypeContentIdDependenciesGet,
27
+ getFlagsV1FlagsGet,
24
28
  getQuickCommandV1QuickCommandsSlugGet,
29
+ getReviewsByResourceV1ResourcesResourceTypeSlugResourceSlugReviewsGet,
30
+ getScriptExecutionStatusV1QuickCommandsScriptExecutionsScriptExecutionIdGet,
25
31
  getUploadFormV1FileUploadFormPost,
26
32
  HttpValidationError,
27
33
  listAiStacksV1AiStacksGet,
28
34
  listAllV1QuickCommandsAllGet,
29
35
  listAllV2QuickCommandsAllGet,
36
+ listAllV3QuickCommandsGet,
30
37
  listAssociationV1WorkspaceWorkspaceIdGet,
31
38
  listConversationsV1ConversationsGet,
32
39
  listKnowledgeSourcesV1KnowledgeSourcesGet,
@@ -38,10 +45,16 @@ import {
38
45
  resetKnowledgeObjectsV1KnowledgeSourcesSlugObjectsDelete,
39
46
  runFetchStepV1QuickCommandsSlugStepsStepSlugFetchRunPost,
40
47
  searchKnowledgeSourcesV1KnowledgeSourcesSearchPost,
48
+ startScriptStepV1QuickCommandsSlugStepsStepSlugStartScriptPost,
49
+ totalV1TokensUsageTotalGet,
41
50
  updateQuickCommandV1QuickCommandsSlugPatch,
51
+ updateResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdPatch,
52
+ updateReviewCommentV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersAnswerIdPatch,
42
53
  updateTitleV1ConversationsConversationIdPatch,
43
54
  vectorizeCustomKnowledgeSourceV1KnowledgeSourcesSlugCustomPost,
44
55
  } from '../api/ai'
56
+
57
+
45
58
  import { StackspotAPIError } from '../error/StackspotAPIError'
46
59
  import { ReactQueryNetworkClient } from '../network/ReactQueryNetworkClient'
47
60
  import { removeAuthorizationParam } from '../utils/remove-authorization-param'
@@ -59,6 +72,8 @@ import {
59
72
  StepChatStep,
60
73
  } from './types'
61
74
 
75
+ const listQAV3WithoutAuthorization = removeAuthorizationParam(listAllV3QuickCommandsGet)
76
+
62
77
  class AIClient extends ReactQueryNetworkClient {
63
78
  constructor() {
64
79
  super(getApiAddresses().ai.url, defaults)
@@ -106,7 +121,7 @@ class AIClient extends ReactQueryNetworkClient {
106
121
  /**
107
122
  * Gets total tokens usage
108
123
  */
109
- totalTokensUsage = this.query(removeAuthorizationParam(currentV1TokensUsageTotalGet))
124
+ totalTokensUsage = this.query(removeAuthorizationParam(totalV1TokensUsageTotalGet))
110
125
  /**
111
126
  * Gets current tokens usage
112
127
  */
@@ -124,6 +139,10 @@ class AIClient extends ReactQueryNetworkClient {
124
139
  * Lists all the quick commands according to filters passed as parameter (including QC with secrets).
125
140
  */
126
141
  allQuickCommands = this.query(removeAuthorizationParam(listAllV2QuickCommandsAllGet))
142
+ /**
143
+ * Lists all the quick commands according to filters passed as parameter (including QC with secrets) with pagination.
144
+ */
145
+ allQuickCommandsV3 = this.infiniteQuery(listQAV3WithoutAuthorization, { accumulator: 'items' })
127
146
  /**
128
147
  * Gets a quick command by its slug.
129
148
  */
@@ -257,6 +276,58 @@ class AIClient extends ReactQueryNetworkClient {
257
276
  * Removes the resource of type Quick Command from the list of favorites.
258
277
  */
259
278
  removeFavoriteQuickCommand = this.mutation(removeAuthorizationParam(deleteFavoriteV1QuickCommandsSlugFavoriteDelete))
279
+ /**
280
+ * Lists all the feature flags for this user.
281
+ */
282
+ flags = this.query(getFlagsV1FlagsGet)
283
+ /**
284
+ * Starts the execution of a script step
285
+ */
286
+ startScriptStep = this.mutation(removeAuthorizationParam(startScriptStepV1QuickCommandsSlugStepsStepSlugStartScriptPost))
287
+ /**
288
+ * Gets the status of the execution of a script step
289
+ */
290
+ getStatusScriptStep = this.query(removeAuthorizationParam(getScriptExecutionStatusV1QuickCommandsScriptExecutionsScriptExecutionIdGet))
291
+
292
+ /**
293
+ * Get reviews by resource
294
+ */
295
+ getReviewsByResource = this.query(removeAuthorizationParam(getReviewsByResourceV1ResourcesResourceTypeSlugResourceSlugReviewsGet))
296
+
297
+ /**
298
+ * Create a resource review
299
+ */
300
+ createResourceReview = this.mutation(removeAuthorizationParam(createResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsPost))
301
+
302
+ /**
303
+ * Create an answer for a review
304
+ */
305
+ createAnswerForReview = this.mutation(
306
+ removeAuthorizationParam(createAnswerForReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersPost))
307
+
308
+ /**
309
+ * Update a resource review
310
+ */
311
+ updateResourceReview = this.mutation(
312
+ removeAuthorizationParam(updateResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdPatch))
313
+
314
+ /**
315
+ * Delete a resource review
316
+ */
317
+ deleteResourceReview = this.mutation(
318
+ removeAuthorizationParam(deleteResourceReviewV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdDelete))
319
+
320
+ /**
321
+ * Update a review comment (answer)
322
+ */
323
+ updateReviewComment = this.mutation(
324
+ removeAuthorizationParam(updateReviewCommentV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersAnswerIdPatch))
325
+
326
+ /**
327
+ * Delete a review comment (answer)
328
+ */
329
+ deleteReviewComment = this.mutation(
330
+ removeAuthorizationParam(deleteReviewCommentV1ResourcesResourceTypeSlugResourceSlugReviewsReviewIdAnswersAnswerIdDelete))
260
331
 
261
332
  private static async toolsOfAgent(agentId?: string) {
262
333
  try {
@@ -308,7 +379,7 @@ class AIClient extends ReactQueryNetworkClient {
308
379
  steps: info.data?.steps?.map(s => s.goal) ?? [],
309
380
  goal: info.data?.plan_goal ?? '',
310
381
  })
311
-
382
+
312
383
  info.data?.steps.forEach(s => data.steps?.push({
313
384
  id: s.id,
314
385
  type: 'step',
@@ -368,7 +439,7 @@ class AIClient extends ReactQueryNetworkClient {
368
439
  }
369
440
 
370
441
  if (info.type === 'tool' && info.action === 'awaiting_approval') {
371
- const tool = tools.find(({ id }) => id === info.data?.tool_id)
442
+ const tool = tools.find(({ id }) => id === info.data?.tool_id)
372
443
  data.steps.push({
373
444
  id: info.id,
374
445
  type: 'tool',
@@ -392,7 +463,7 @@ class AIClient extends ReactQueryNetworkClient {
392
463
  if (info.type === 'tool' && info.action === 'start') {
393
464
  const currentStep = data.steps.find(s => s.status === 'running') as StepChatStep
394
465
  if (!info.data) return
395
-
466
+
396
467
  //There might be a tool with status awaiting_approval, so we want to inform tool has already started
397
468
  if (!currentStep || !currentStep.attempts[0].tools) {
398
469
  const input = formatJson(info.data.input)
@@ -405,7 +476,7 @@ class AIClient extends ReactQueryNetworkClient {
405
476
  input: info.data?.input,
406
477
  user_question: info.data?.user_question,
407
478
  attempts: [{
408
- tools:[{ ...tool, executionId: info.id, input }],
479
+ tools: [{ ...tool, executionId: info.id, input }],
409
480
  }],
410
481
  })
411
482
  } else {
@@ -415,7 +486,7 @@ class AIClient extends ReactQueryNetworkClient {
415
486
  if (!toolInFirstAttempt) {
416
487
  const input = formatJson(info.data.input)
417
488
  const tool = tools?.find(({ id }) => id === info.data?.tool_id) ?? { id: info.data?.tool_id, name: info.data?.tool_id }
418
- currentStep.attempts[info.data.attempt-1].tools?.push({
489
+ currentStep.attempts[info.data.attempt - 1].tools?.push({
419
490
  ...tool,
420
491
  executionId: info.id,
421
492
  input,
@@ -426,8 +497,8 @@ class AIClient extends ReactQueryNetworkClient {
426
497
  toolInFirstAttempt.input = input
427
498
  } else {
428
499
  const tool = tools.find(({ id }) => id === info.data?.tool_id) ?? { id: info.data?.tool_id, name: info.data?.tool_id }
429
- currentStep.attempts[info.data.attempt-1] ??= { tools: [] }
430
- currentStep.attempts[info.data.attempt-1].tools?.push({
500
+ currentStep.attempts[info.data.attempt - 1] ??= { tools: [] }
501
+ currentStep.attempts[info.data.attempt - 1].tools?.push({
431
502
  ...tool,
432
503
  executionId: info.id,
433
504
  input,
@@ -440,7 +511,7 @@ class AIClient extends ReactQueryNetworkClient {
440
511
  if (info.type === 'tool' && info.action === 'end') {
441
512
  const currentStep = data.steps.find(s => s.status === 'running') as StepChatStep
442
513
  if (!currentStep || !info.data) return
443
- const tool = currentStep.attempts[info.data.attempt-1]?.tools?.find(t => t.executionId === info.id)
514
+ const tool = currentStep.attempts[info.data.attempt - 1]?.tools?.find(t => t.executionId === info.id)
444
515
  if (tool) {
445
516
  tool.output = formatJson(info.data.output)
446
517
  tool.duration = info.duration
@@ -4,7 +4,7 @@ import { DefaultAPIError } from '../error/DefaultAPIError'
4
4
  import { StackspotAPIError } from '../error/StackspotAPIError'
5
5
  import { ReactQueryNetworkClient } from '../network/ReactQueryNetworkClient'
6
6
  import { removeAuthorizationParam } from '../utils/remove-authorization-param'
7
- import { associateWithWorkspaceEnvironment, createAddon, createDeployTemplate, createOrganization, createRuntime1, createTenant1, defaults, deploy, findApplicationDeploymentById, getApplicationDeploymentHealth, getApplicationDeploymentLogs, getAssociationWorkspaceEnvironmentByRuntimeId, getOrganizationById, getOrganizations, getRuntime1, getTenant1, listAddon, listApplicationDeployments, listAssociations, listDeployTemplate, listRuntimes, listRuntimes1, listTenants, listTenants1 } from '../api/cloudPlatformHorizon'
7
+ import { associateWithWorkspaceEnvironment, createAddon, createDeployTemplate, createOrganization, createRuntime1, createTenant1, defaults, deploy, findApplicationDeploymentById, getApplicationDeploymentHealth, getApplicationDeploymentLogs, getAssociationWorkspaceEnvironmentByRuntimeId, getOrganizationById, getOrganizations, getRuntime1, getTenant1, listAddon, listApplicationDeploymentRollouts, listApplicationDeployments, listAssociations, listDeployTemplate, listRuntimes, listRuntimes1, listTenants, listTenants1, postApplicationDeploymentRolloutAction } from '../api/cloudPlatformHorizon'
8
8
  import { baseDictionary } from '../error/dictionary/base'
9
9
  import { getApiAddresses } from '../api-addresses'
10
10
 
@@ -19,7 +19,7 @@ class CloudPlatformHorizonClient extends ReactQueryNetworkClient {
19
19
  /**
20
20
  * Get a list of organizations
21
21
  */
22
- listOrganizations= this.query(removeAuthorizationParam(getOrganizations))
22
+ listOrganizations = this.query(removeAuthorizationParam(getOrganizations))
23
23
  /**
24
24
  * Get organization by id
25
25
  */
@@ -27,11 +27,11 @@ class CloudPlatformHorizonClient extends ReactQueryNetworkClient {
27
27
  /**
28
28
  * Get details of an tenant
29
29
  */
30
- getTenantById= this.query(removeAuthorizationParam(getTenant1))
30
+ getTenantById = this.query(removeAuthorizationParam(getTenant1))
31
31
  /**
32
32
  * Get details of an runtime
33
33
  */
34
- getRuntimeById= this.query(removeAuthorizationParam(getRuntime1))
34
+ getRuntimeById = this.query(removeAuthorizationParam(getRuntime1))
35
35
  /**
36
36
  * Create an tenant
37
37
  */
@@ -108,6 +108,14 @@ class CloudPlatformHorizonClient extends ReactQueryNetworkClient {
108
108
  * List runtime associations to workspace's environment
109
109
  */
110
110
  listRuntimeAssociationsToEnv = this.query(removeAuthorizationParam(listAssociations))
111
+ /**
112
+ * List of application deployments rollout
113
+ */
114
+ listApplicationDeploymentRollouts = this.query(removeAuthorizationParam(listApplicationDeploymentRollouts))
115
+ /**
116
+ * Set an action to application deployment rollout
117
+ */
118
+ deployApplicationRolloutAction = this.mutation(removeAuthorizationParam(postApplicationDeploymentRolloutAction))
111
119
  }
112
120
 
113
121
  export const cloudPlatformHorizonClient = new CloudPlatformHorizonClient()