@stack-spot/portal-network 1.0.0-betaadp.1 → 1.0.0-betaadp.3

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.
@@ -0,0 +1,86 @@
1
+ import { getApiAddresses } from '../api-addresses'
2
+ import { ConversationResponse } from '../api/ai'
3
+ import { create, create1, create2, defaults, deleteById, deleteById1, deleteById2, getAll, getAll1, getAll2, getAllByHypothesis, getById, getById1, getById2, GetOpportunityResponse } from '../api/discover'
4
+ import { StackspotAPIError } from '../error/StackspotAPIError'
5
+ import { ReactQueryNetworkClient } from '../network/ReactQueryNetworkClient'
6
+ import { aiClient } from './ai'
7
+
8
+ export interface ChatConversionDetails extends ConversationResponse {
9
+ opportunityName?: string,
10
+ hypothesisCount?: number,
11
+ }
12
+
13
+ class DiscoverClient extends ReactQueryNetworkClient {
14
+ constructor() {
15
+ super(getApiAddresses().discover.url, defaults)
16
+ }
17
+
18
+ protected buildStackSpotError(error: any): StackspotAPIError {
19
+ return new StackspotAPIError({ status: 0, message: error?.message })
20
+ }
21
+
22
+ opportunities = this.query(getAll)
23
+
24
+ opportunity = this.query(getById)
25
+
26
+ hypotheses = this.query(getAll1)
27
+
28
+ hypothesisById = this.query(getById1)
29
+
30
+ documents = this.query(getAllByHypothesis)
31
+
32
+ document = this.query(getById2)
33
+
34
+ artifacts = this.query(getAll2)
35
+
36
+ createOpportunity = this.mutation(create)
37
+
38
+ createHypothesis = this.mutation(create1)
39
+
40
+ createDocument = this.mutation(create2)
41
+
42
+ deleteOpportunity = this.mutation(deleteById)
43
+
44
+ deleteHypothesis = this.mutation(deleteById1)
45
+
46
+ deleteDocument = this.mutation(deleteById2)
47
+
48
+ chats = this.query({
49
+ name: 'chats',
50
+ request: async (_signal, variables: { filter?: string, page?: number, size?: number }) => {
51
+ const opportunities = await this.opportunities.query({})
52
+
53
+ const opportunitiesByChatId: Record<string, any> = opportunities.content.reduce(
54
+ (acc, opp: GetOpportunityResponse) => {
55
+ if (opp.chatId) {
56
+ acc[opp.chatId] = opp
57
+ }
58
+ return acc
59
+ },
60
+ {} as Record<string, any>,
61
+ )
62
+
63
+ const chatsHistory = await aiClient.chats.query(
64
+ { ...variables, page: variables.page, size: variables.size ?? 40 },
65
+ )
66
+
67
+ const filteredItems = variables.filter
68
+ ? chatsHistory.filter((chat) => chat.title.toLowerCase().includes(variables.filter!.toLowerCase()))
69
+ : chatsHistory
70
+
71
+ const enrichedChats = filteredItems?.map(chat => {
72
+ const relatedOpportunity = opportunitiesByChatId[chat.id]
73
+
74
+ return {
75
+ ...chat,
76
+ opportunityName: relatedOpportunity?.title ?? null,
77
+ hypothesisCount: relatedOpportunity?.hypotheses?.length ?? 0,
78
+ }
79
+ })
80
+
81
+ return enrichedChats as ChatConversionDetails[]
82
+ },
83
+ })
84
+ }
85
+
86
+ export const discoverClient = new DiscoverClient()
package/src/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { CancelledError } from '@tanstack/react-query'
2
2
  export { apiAddresses, getApiAddresses, getBaseUrlWithOverride, setApisOverride } from './api-addresses'
3
3
  export { accountClient } from './client/account'
4
- export * from './client/adp-mock'
4
+ export * from './client/discover'
5
5
  export { agentClient } from './client/agent'
6
6
  export { agentToolsClient } from './client/agent-tools'
7
7
  export { aiClient } from './client/ai'
@@ -14,7 +14,7 @@ export { cloudServicesClient } from './client/cloud-services'
14
14
  export { codeShiftClient } from './client/code-shift'
15
15
  export { contentClient } from './client/content'
16
16
  export { dataIntegrationClient } from './client/data-integration'
17
- export { discoveryClient } from './client/discovery'
17
+ export { discoverClient } from './client/discover'
18
18
  export { eventBusClient } from './client/event-bus'
19
19
  export { genAiInferenceClient } from './client/gen-ai-inference'
20
20
  export { insightsClient } from './client/insights'
@@ -1,494 +0,0 @@
1
- /**
2
- * OpenAPI definition
3
- * v0
4
- * DO NOT MODIFY - This file has been generated using oazapfts.
5
- * See https://www.npmjs.com/package/oazapfts
6
- */
7
- import * as Oazapfts from "@oazapfts/runtime";
8
- export declare const defaults: Oazapfts.Defaults<Oazapfts.CustomHeaders>;
9
- export declare const servers: {
10
- generatedServerUrl: string;
11
- };
12
- export type OpportunityResponse = {
13
- id?: string;
14
- name?: string;
15
- "number": string;
16
- createdAt?: string;
17
- createdBy?: string;
18
- metadata?: {
19
- [key: string]: string;
20
- };
21
- };
22
- export type HypothesisResponse = {
23
- id?: string;
24
- opportunity: OpportunityResponse;
25
- name: string;
26
- description?: string;
27
- "number": string;
28
- status: "TO_DO" | "PRIORITIZED" | "IN_EXPERIMENTATION" | "VALIDATED" | "DISCARDED" | "CANCELED";
29
- createdAt?: string;
30
- createdBy: string;
31
- updatedAt?: string;
32
- updatedBy?: string;
33
- };
34
- export type HypothesisUpdateRequest = {
35
- name?: string;
36
- description?: string;
37
- opportunityNumber?: string;
38
- status?: string;
39
- };
40
- export type StateResponse = {
41
- value: string;
42
- description: string;
43
- };
44
- export type GetHypothesisResponseHypothesisData = {
45
- id: string;
46
- "number": string;
47
- name: string;
48
- description: string;
49
- state: StateResponse;
50
- community: string;
51
- releaseTrain: string;
52
- squad: string;
53
- agileProduct?: string;
54
- businessPortfolio: string;
55
- technologicalFront: string;
56
- frontChallenge: string;
57
- towerClassification: string;
58
- agileSprint?: string;
59
- priority?: string;
60
- impediment: boolean;
61
- openedAt: string;
62
- openedBy: string;
63
- closedAt?: string;
64
- assignedTo: string;
65
- opportunity: string;
66
- };
67
- export type GetHypothesisResponse = {
68
- data: GetHypothesisResponseHypothesisData;
69
- };
70
- export type UpdateHypothesisRequestStateRequest = {
71
- value: string;
72
- };
73
- export type UpdateHypothesisRequest = {
74
- name: string;
75
- description: string;
76
- state: UpdateHypothesisRequestStateRequest;
77
- };
78
- export type UpdateHypothesisResponseHypothesisData = {
79
- id: string;
80
- "number": string;
81
- name: string;
82
- description: string;
83
- state: StateResponse;
84
- community: string;
85
- releaseTrain: string;
86
- squad: string;
87
- agileProduct?: string;
88
- businessPortfolio: string;
89
- technologicalFront: string;
90
- frontChallenge: string;
91
- towerClassification: string;
92
- agileSprint?: string;
93
- priority?: string;
94
- impediment: boolean;
95
- openedAt: string;
96
- openedBy: string;
97
- closedAt?: string;
98
- assignedTo: string;
99
- opportunity: string;
100
- };
101
- export type UpdateHypothesisResponse = {
102
- data: UpdateHypothesisResponseHypothesisData;
103
- };
104
- export type SortResponse = {
105
- direction: string;
106
- nullHandling: string;
107
- ascending: boolean;
108
- property: string;
109
- ignoreCase: boolean;
110
- };
111
- export type PageableResponse = {
112
- offset: number;
113
- sort: SortResponse[];
114
- paged: boolean;
115
- pageSize: number;
116
- pageNumber: number;
117
- unpaged: boolean;
118
- };
119
- export type PageResponseHypothesisResponse = {
120
- totalElements: number;
121
- totalPages: number;
122
- first: boolean;
123
- last: boolean;
124
- size: number;
125
- content: HypothesisResponse[];
126
- "number": number;
127
- sort: SortResponse[];
128
- numberOfElements: number;
129
- pageable: PageableResponse;
130
- empty: boolean;
131
- };
132
- export type CreateHypothesisRequest = {
133
- opportunity: string;
134
- name: string;
135
- description: string;
136
- };
137
- export type DocumentUploadRequest = {
138
- file: Blob;
139
- description: string;
140
- name: string;
141
- typeId: string;
142
- origin: "AI" | "UPLOAD";
143
- };
144
- export type AgentResponse = {
145
- id: string;
146
- label: string;
147
- image?: string;
148
- builtIn: boolean;
149
- slug: string;
150
- createdAt?: string;
151
- };
152
- export type DocumentTypeResponse = {
153
- id: string;
154
- typeName: "PRESS_RELEASE" | "PRODUCT_VISION" | "PRODUCT_REQUIREMENTS" | "MARKET_COMPARISON";
155
- agent?: AgentResponse;
156
- description: string;
157
- createdAt?: string;
158
- };
159
- export type DocumentVersionSummaryResponse = {
160
- id: string;
161
- name: string;
162
- createdAt?: string;
163
- createdBy?: string;
164
- };
165
- export type DocumentUploadResponse = {
166
- id: string;
167
- name: string;
168
- description: string;
169
- "type": DocumentTypeResponse;
170
- origin: "AI" | "UPLOAD";
171
- createdAt?: string;
172
- createdBy: string;
173
- version: DocumentVersionSummaryResponse;
174
- };
175
- export type DocumentAttachRequest = {
176
- documentIds: string[];
177
- };
178
- export type OrchestratorCredentialsResponse = {
179
- id: number;
180
- clientId: string;
181
- hasCertificate: boolean;
182
- hasPrivateKey: boolean;
183
- createdAt?: string;
184
- createdBy?: string;
185
- updatedAt?: string;
186
- updatedBy?: string;
187
- };
188
- export type ListHypothesisResponseOpportunityData = {
189
- id: string;
190
- "number": string;
191
- };
192
- export type ListHypothesisResponseHypothesisData = {
193
- id: string;
194
- "number": string;
195
- name: string;
196
- description: string;
197
- state: StateResponse;
198
- openedAt: string;
199
- openedBy: string;
200
- opportunity: ListHypothesisResponseOpportunityData;
201
- };
202
- export type ListHypothesisResponse = {
203
- total: number;
204
- data: ListHypothesisResponseHypothesisData[];
205
- };
206
- export type CreateHypothesisResponseHypothesisData = {
207
- id: string;
208
- "number": string;
209
- name: string;
210
- description: string;
211
- state: StateResponse;
212
- community: string;
213
- releaseTrain: string;
214
- squad: string;
215
- agileProduct?: string;
216
- businessPortfolio: string;
217
- technologicalFront: string;
218
- frontChallenge: string;
219
- towerClassification: string;
220
- agileSprint?: string;
221
- priority?: string;
222
- impediment: boolean;
223
- openedAt: string;
224
- openedBy: string;
225
- closedAt?: string;
226
- assignedTo: string;
227
- };
228
- export type CreateHypothesisResponse = {
229
- data: CreateHypothesisResponseHypothesisData;
230
- };
231
- export type DocumentDetailContent = {
232
- hasPreview: boolean;
233
- content?: string;
234
- };
235
- export type DocumentVersion = {
236
- id: string;
237
- name: string;
238
- createdAt?: string;
239
- createdBy?: string;
240
- };
241
- export type DocumentDetailResponse = {
242
- id: string;
243
- name: string;
244
- description: string;
245
- "type": DocumentTypeResponse;
246
- origin: "AI" | "UPLOAD";
247
- createdAt?: string;
248
- createdBy: string;
249
- details: DocumentDetailContent;
250
- version: DocumentVersion;
251
- };
252
- export type DocumentPatchRequest = {
253
- file: Blob;
254
- description?: string;
255
- name?: string;
256
- };
257
- export type PageResponseOpportunityResponse = {
258
- totalElements: number;
259
- totalPages: number;
260
- first: boolean;
261
- last: boolean;
262
- size: number;
263
- content: OpportunityResponse[];
264
- "number": number;
265
- sort: SortResponse[];
266
- numberOfElements: number;
267
- pageable: PageableResponse;
268
- empty: boolean;
269
- };
270
- export type HypothesisSummaryResponse = {
271
- "number": string;
272
- };
273
- export type DocumentWithHypothesesResponse = {
274
- id: string;
275
- name: string;
276
- description?: string;
277
- origin: "AI" | "UPLOAD";
278
- hypotheses: HypothesisSummaryResponse[];
279
- createdAt?: string;
280
- createdBy: string;
281
- };
282
- export type PageResponseDocumentWithHypothesesResponse = {
283
- totalElements: number;
284
- totalPages: number;
285
- first: boolean;
286
- last: boolean;
287
- size: number;
288
- content: DocumentWithHypothesesResponse[];
289
- "number": number;
290
- sort: SortResponse[];
291
- numberOfElements: number;
292
- pageable: PageableResponse;
293
- empty: boolean;
294
- };
295
- export type DocumentVersionResponse = {
296
- id: string;
297
- documentId: string;
298
- versionName: string;
299
- s3VersionId: string;
300
- createdAt?: string;
301
- createdBy?: string;
302
- };
303
- export type PageResponseDocumentVersionResponse = {
304
- totalElements: number;
305
- totalPages: number;
306
- first: boolean;
307
- last: boolean;
308
- size: number;
309
- content: DocumentVersionResponse[];
310
- "number": number;
311
- sort: SortResponse[];
312
- numberOfElements: number;
313
- pageable: PageableResponse;
314
- empty: boolean;
315
- };
316
- export type DocumentSummaryResponse = {
317
- id: string;
318
- name: string;
319
- description: string;
320
- origin: "AI" | "UPLOAD";
321
- hasMultipleHypotheses: boolean;
322
- createdAt?: string;
323
- createdBy: string;
324
- };
325
- export type PageResponseDocumentSummaryResponse = {
326
- totalElements: number;
327
- totalPages: number;
328
- first: boolean;
329
- last: boolean;
330
- size: number;
331
- content: DocumentSummaryResponse[];
332
- "number": number;
333
- sort: SortResponse[];
334
- numberOfElements: number;
335
- pageable: PageableResponse;
336
- empty: boolean;
337
- };
338
- export type ListOpportunityResponseOpportunityData = {
339
- id: string;
340
- "number": string;
341
- name: string;
342
- description: string;
343
- state: StateResponse;
344
- community: string;
345
- releaseTrain: string;
346
- squad: string;
347
- };
348
- export type ListOpportunityResponse = {
349
- data: ListOpportunityResponseOpportunityData[];
350
- };
351
- export type GetOpportunityResponseOpportunityData = {
352
- id: string;
353
- "number": string;
354
- name: string;
355
- description: string;
356
- state: StateResponse;
357
- community: string;
358
- releaseTrain: string;
359
- squad: string;
360
- agileProduct: string;
361
- businessPortfolio: string;
362
- technologicalFront: string;
363
- frontChallenge: string;
364
- towerClassification: string;
365
- agileSprint: string;
366
- priority: string;
367
- impediment: boolean;
368
- openedAt: string;
369
- openedBy: string;
370
- closedAt: string;
371
- assignedTo: string;
372
- };
373
- export type GetOpportunityResponse = {
374
- data: GetOpportunityResponseOpportunityData[];
375
- };
376
- export type ListStateResponseStateData = {
377
- value: string;
378
- description: string;
379
- };
380
- export type ListStateResponse = {
381
- data: ListStateResponseStateData[];
382
- };
383
- export declare function findHypothesisByNumber({ $number }: {
384
- $number: string;
385
- }, opts?: Oazapfts.RequestOpts): Promise<HypothesisResponse>;
386
- export declare function updateHypothesis({ $number, hypothesisUpdateRequest }: {
387
- $number: string;
388
- hypothesisUpdateRequest: HypothesisUpdateRequest;
389
- }, opts?: Oazapfts.RequestOpts): Promise<never>;
390
- export declare function getByNumber({ $number }: {
391
- $number: string;
392
- }, opts?: Oazapfts.RequestOpts): Promise<GetHypothesisResponse>;
393
- export declare function update({ $number, updateHypothesisRequest }: {
394
- $number: string;
395
- updateHypothesisRequest: UpdateHypothesisRequest;
396
- }, opts?: Oazapfts.RequestOpts): Promise<UpdateHypothesisResponse>;
397
- export declare function listHypothesis({ filter, page, size, sort, direction, status }: {
398
- filter?: string;
399
- page?: number;
400
- size?: number;
401
- sort?: string;
402
- direction?: string;
403
- status?: "TO_DO" | "PRIORITIZED" | "IN_EXPERIMENTATION" | "VALIDATED" | "DISCARDED" | "CANCELED";
404
- }, opts?: Oazapfts.RequestOpts): Promise<PageResponseHypothesisResponse>;
405
- export declare function createHypothesis({ createHypothesisRequest }: {
406
- createHypothesisRequest: CreateHypothesisRequest;
407
- }, opts?: Oazapfts.RequestOpts): Promise<HypothesisResponse>;
408
- export declare function upload({ hypothesisNumber, documentUploadRequest }: {
409
- hypothesisNumber: string;
410
- documentUploadRequest?: DocumentUploadRequest;
411
- }, opts?: Oazapfts.RequestOpts): Promise<DocumentUploadResponse>;
412
- export declare function attach({ hypothesisNumber, documentAttachRequest }: {
413
- hypothesisNumber: string;
414
- documentAttachRequest: DocumentAttachRequest;
415
- }, opts?: Oazapfts.RequestOpts): Promise<never>;
416
- /**
417
- * Save orchestrator credentials with file upload
418
- */
419
- export declare function saveOrchestratorCredentials({ body }: {
420
- body?: {
421
- clientId: string;
422
- clientSecret: string;
423
- certificateFile: Blob;
424
- privateKeyFile: Blob;
425
- };
426
- }, opts?: Oazapfts.RequestOpts): Promise<OrchestratorCredentialsResponse>;
427
- export declare function list({ page, size, squad }: {
428
- page?: number;
429
- size?: number;
430
- squad?: string;
431
- }, opts?: Oazapfts.RequestOpts): Promise<ListHypothesisResponse>;
432
- export declare function create({ createHypothesisRequest }: {
433
- createHypothesisRequest: CreateHypothesisRequest;
434
- }, opts?: Oazapfts.RequestOpts): Promise<CreateHypothesisResponse>;
435
- export declare function getById({ documentId, versionId }: {
436
- documentId: string;
437
- versionId?: string;
438
- }, opts?: Oazapfts.RequestOpts): Promise<DocumentDetailResponse>;
439
- export declare function update1({ documentId, documentPatchRequest }: {
440
- documentId: string;
441
- documentPatchRequest?: DocumentPatchRequest;
442
- }, opts?: Oazapfts.RequestOpts): Promise<never>;
443
- export declare function list1({ filter, page, size, sort, direction }: {
444
- filter?: string;
445
- page?: number;
446
- size?: number;
447
- sort?: string;
448
- direction?: string;
449
- }, opts?: Oazapfts.RequestOpts): Promise<PageResponseOpportunityResponse>;
450
- export declare function listAllDocumentsWithHypotheses({ filter, page, size, sort, direction }: {
451
- filter?: string;
452
- page?: number;
453
- size?: number;
454
- sort?: string;
455
- direction?: string;
456
- }, opts?: Oazapfts.RequestOpts): Promise<PageResponseDocumentWithHypothesesResponse>;
457
- export declare function listVersions({ documentId, page, size }: {
458
- documentId: string;
459
- page?: number;
460
- size?: number;
461
- }, opts?: Oazapfts.RequestOpts): Promise<PageResponseDocumentVersionResponse>;
462
- export declare function download({ documentId }: {
463
- documentId: string;
464
- }, opts?: Oazapfts.RequestOpts): Promise<Blob>;
465
- export declare function list2({ filter, page, size, sort, direction, hypothesisNumber }: {
466
- filter?: string;
467
- page?: number;
468
- size?: number;
469
- sort?: string;
470
- direction?: string;
471
- hypothesisNumber: string;
472
- }, opts?: Oazapfts.RequestOpts): Promise<PageResponseDocumentSummaryResponse>;
473
- export declare function getAll(opts?: Oazapfts.RequestOpts): Promise<DocumentTypeResponse[]>;
474
- export declare function getHypothesis({ $number }: {
475
- $number: string;
476
- }, opts?: Oazapfts.RequestOpts): Promise<object>;
477
- export declare function systemHealth(opts?: Oazapfts.RequestOpts): Promise<{
478
- [key: string]: object;
479
- }>;
480
- export declare function health(opts?: Oazapfts.RequestOpts): Promise<{
481
- [key: string]: string;
482
- }>;
483
- export declare function list3({ squad }: {
484
- squad?: string;
485
- }, opts?: Oazapfts.RequestOpts): Promise<ListOpportunityResponse>;
486
- export declare function getOpportunityByNumber({ $number }: {
487
- $number: string;
488
- }, opts?: Oazapfts.RequestOpts): Promise<GetOpportunityResponse>;
489
- export declare function listHypothesisStates(opts?: Oazapfts.RequestOpts): Promise<ListStateResponse>;
490
- export declare function deleteV1DocumentsByDocumentIdHypothesesAndHypothesisNumber({ hypothesisNumber, documentId }: {
491
- hypothesisNumber: string;
492
- documentId: string;
493
- }, opts?: Oazapfts.RequestOpts): Promise<never>;
494
- //# sourceMappingURL=discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/api/discovery.ts"],"names":[],"mappings":"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"}