@stack-spot/portal-network 0.184.0 → 0.185.0

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 (136) hide show
  1. package/CHANGELOG.md +2419 -2412
  2. package/dist/api/account.js +1 -1
  3. package/dist/api/agent-tools.js +1 -1
  4. package/dist/api/agent.js +1 -1
  5. package/dist/api/ai.js +1 -1
  6. package/dist/api/apiManagement.js +1 -1
  7. package/dist/api/apiRuntime.js +1 -1
  8. package/dist/api/cloudAccount.js +1 -1
  9. package/dist/api/cloudPlatform.js +1 -1
  10. package/dist/api/cloudPlatformHorizon.js +1 -1
  11. package/dist/api/cloudRuntimes.js +1 -1
  12. package/dist/api/cloudServices.js +1 -1
  13. package/dist/api/codeShift.d.ts +63 -4
  14. package/dist/api/codeShift.d.ts.map +1 -1
  15. package/dist/api/codeShift.js +14 -1
  16. package/dist/api/codeShift.js.map +1 -1
  17. package/dist/api/content.js +1 -1
  18. package/dist/api/dataIntegration.js +1 -1
  19. package/dist/api/discover.js +1 -1
  20. package/dist/api/genAiInference.js +1 -1
  21. package/dist/api/insights.js +1 -1
  22. package/dist/api/notification.js +1 -1
  23. package/dist/api/secrets.js +1 -1
  24. package/dist/api/serviceCatalog.js +1 -1
  25. package/dist/api/workspace-ai.js +1 -1
  26. package/dist/api/workspace.js +1 -1
  27. package/dist/api/workspaceManager.js +1 -1
  28. package/dist/api/workspaceSearchEngine.js +1 -1
  29. package/dist/client/code-shift.d.ts +22 -0
  30. package/dist/client/code-shift.d.ts.map +1 -1
  31. package/dist/client/code-shift.js +28 -1
  32. package/dist/client/code-shift.js.map +1 -1
  33. package/package.json +6 -6
  34. package/scripts/generate-apis.ts +134 -134
  35. package/src/api/account.ts +8367 -8367
  36. package/src/api/agent-tools.ts +2169 -2169
  37. package/src/api/agent.ts +1083 -1083
  38. package/src/api/ai.ts +3388 -3388
  39. package/src/api/apiManagement.ts +570 -570
  40. package/src/api/apiRuntime.ts +2103 -2103
  41. package/src/api/cloudAccount.ts +1239 -1239
  42. package/src/api/cloudPlatform.ts +927 -927
  43. package/src/api/cloudPlatformHorizon.ts +2655 -2655
  44. package/src/api/cloudRuntimes.ts +2043 -2043
  45. package/src/api/cloudServices.ts +1445 -1445
  46. package/src/api/codeShift.ts +3567 -3481
  47. package/src/api/content.ts +9785 -9785
  48. package/src/api/dataIntegration.ts +1657 -1657
  49. package/src/api/discover.ts +435 -435
  50. package/src/api/eventBus.ts +171 -171
  51. package/src/api/genAiInference.ts +603 -603
  52. package/src/api/insights.ts +310 -310
  53. package/src/api/notification.ts +334 -334
  54. package/src/api/secrets.ts +342 -342
  55. package/src/api/serviceCatalog.ts +2908 -2908
  56. package/src/api/workflows.ts +1669 -1669
  57. package/src/api/workspace-ai.ts +677 -677
  58. package/src/api/workspace.ts +5889 -5889
  59. package/src/api/workspaceManager.ts +2951 -2951
  60. package/src/api/workspaceSearchEngine.ts +153 -153
  61. package/src/api-addresses.ts +120 -120
  62. package/src/apis-itau.json +225 -225
  63. package/src/apis.json +225 -225
  64. package/src/client/account.ts +902 -902
  65. package/src/client/agent-tools.ts +210 -210
  66. package/src/client/agent.ts +81 -81
  67. package/src/client/ai.ts +395 -395
  68. package/src/client/api-management.ts +40 -40
  69. package/src/client/cloud-account.ts +70 -70
  70. package/src/client/cloud-platform-horizon.ts +113 -113
  71. package/src/client/cloud-platform.ts +163 -163
  72. package/src/client/cloud-runtimes.ts +129 -129
  73. package/src/client/cloud-services.ts +94 -94
  74. package/src/client/code-shift.ts +364 -349
  75. package/src/client/content.ts +538 -538
  76. package/src/client/data-integration.ts +191 -191
  77. package/src/client/discover.ts +89 -89
  78. package/src/client/event-bus.ts +84 -84
  79. package/src/client/gen-ai-inference.ts +65 -65
  80. package/src/client/insights.ts +28 -28
  81. package/src/client/notification.ts +32 -32
  82. package/src/client/runtime-manager.ts +76 -76
  83. package/src/client/secrets.ts +60 -60
  84. package/src/client/types.ts +377 -377
  85. package/src/client/workflow.ts +83 -83
  86. package/src/client/workspace-ai.ts +191 -191
  87. package/src/client/workspace-manager.ts +564 -564
  88. package/src/client/workspace-search.ts +39 -39
  89. package/src/client/workspace.ts +480 -480
  90. package/src/error/DefaultAPIError.ts +151 -151
  91. package/src/error/FileUploadError.ts +18 -18
  92. package/src/error/IgnoredErrorCodes.ts +3 -3
  93. package/src/error/StackspotAPIError.ts +101 -101
  94. package/src/error/StreamCanceledError.ts +10 -10
  95. package/src/error/StreamError.ts +7 -7
  96. package/src/error/StreamJsonError.ts +10 -10
  97. package/src/error/dictionary/account.ts +58 -58
  98. package/src/error/dictionary/action-details.ts +20 -20
  99. package/src/error/dictionary/action.ts +211 -211
  100. package/src/error/dictionary/agent-tools.ts +75 -75
  101. package/src/error/dictionary/ai-inference.ts +28 -28
  102. package/src/error/dictionary/base.ts +22 -22
  103. package/src/error/dictionary/cloud-platform.ts +82 -82
  104. package/src/error/dictionary/cnt-fields.ts +14 -14
  105. package/src/error/dictionary/cnt.ts +103 -103
  106. package/src/error/dictionary/code-shift.ts +12 -12
  107. package/src/error/dictionary/rte.ts +24 -24
  108. package/src/error/dictionary/rtm.ts +10 -10
  109. package/src/error/dictionary/secrets.ts +14 -14
  110. package/src/error/dictionary/workspace-ai.ts +10 -10
  111. package/src/error/dictionary/workspace-details.ts +15 -15
  112. package/src/error/dictionary/workspace-fields.ts +10 -10
  113. package/src/error/dictionary/workspace.ts +209 -209
  114. package/src/error/types.ts +21 -21
  115. package/src/index.ts +43 -43
  116. package/src/network/AutoInfiniteQuery.ts +115 -115
  117. package/src/network/AutoMutation.ts +27 -27
  118. package/src/network/AutoOperation.ts +73 -73
  119. package/src/network/AutoQuery.ts +75 -75
  120. package/src/network/ManualInfiniteQuery.ts +95 -95
  121. package/src/network/ManualMutation.ts +40 -40
  122. package/src/network/ManualOperation.ts +52 -52
  123. package/src/network/ManualQuery.ts +82 -82
  124. package/src/network/NetworkClient.ts +167 -167
  125. package/src/network/ReactQueryNetworkClient.ts +312 -312
  126. package/src/network/react-query-client.ts +14 -14
  127. package/src/network/types.ts +294 -294
  128. package/src/types.ts +1 -1
  129. package/src/utils/StreamedArray.tsx +146 -146
  130. package/src/utils/StreamedJson.tsx +166 -166
  131. package/src/utils/remove-authorization-param.ts +6 -6
  132. package/src/utils/string.ts +19 -19
  133. package/src/utils/use-extended-list.ts +80 -80
  134. package/src/utils/use-streamed-array.ts +17 -17
  135. package/tsconfig.build.json +4 -4
  136. package/tsconfig.json +10 -10
@@ -1,134 +1,134 @@
1
- /* eslint-disable no-console */
2
-
3
- import { exec } from 'child_process'
4
- import { readFile, unlink, writeFile } from 'fs/promises'
5
- import checkbox from '@inquirer/checkbox'
6
- import { Presets, SingleBar } from 'cli-progress'
7
- // @ts-ignore
8
- import list from 'inquirer-interactive-list-prompt'
9
- import apis from '../src/apis.json'
10
-
11
- const MAX_ATTEMPTS = 5
12
- const DELAY_MS = 2000
13
- const TARGET_DIR = 'src/api'
14
- const LOG_FILE = '.generate-api.failed.json'
15
- const envs = [
16
- { name: 'Production', value: 'prd', key: 'p' },
17
- { name: 'Staging', value: 'stg', key: 's' },
18
- { name: 'Development', value: 'dev', key: 'd' },
19
- ] as const
20
-
21
- function delay() {
22
- return new Promise<void>(resolve => {
23
- setTimeout(resolve, DELAY_MS)
24
- })
25
- }
26
-
27
- function generateAPICode(name: string, docsUrl: any) {
28
- return new Promise<string>((resolve, reject) => {
29
- let output = ''
30
- const child = exec(
31
- `pnpm oazapfts ${docsUrl} ${TARGET_DIR}/${name}.ts --optimistic --argumentStyle object`,
32
- (_, out, err) => output += out || err,
33
- )
34
- child.on('error', err => reject(err.message))
35
- child.on('close', code => code === 0 ? resolve(output) : reject(output))
36
- })
37
- }
38
-
39
- async function generateCodeForAPIs(apiNames: (keyof typeof apis)[], env: 'dev' | 'stg' | 'prd') {
40
- let progress = 0
41
- const progressBar = new SingleBar({ clearOnComplete: true, stopOnComplete: true }, Presets.shades_classic)
42
- progressBar.start(apiNames.length, 0)
43
- const succeeded: string[] = []
44
- const failed: string[] = []
45
- const errors: string[] = []
46
- await Promise.all(apiNames.map(async (name) => {
47
- let retries = MAX_ATTEMPTS
48
- while (retries > 0) {
49
- try {
50
- const api = apis[name]
51
- if ('docs' in api) {
52
- const docsUrl = `${api.url[env]}${api.docs}`
53
- await generateAPICode(name, docsUrl)
54
- }
55
- retries = 0
56
- succeeded.push(name)
57
- progressBar.update(++progress)
58
- } catch (error: any) {
59
- retries--
60
- await delay()
61
- if (retries === 0) {
62
- errors.push(error.message || `${error}`)
63
- failed.push(name)
64
- progressBar.update(++progress)
65
- }
66
- }
67
- }
68
- }))
69
- const succeededStr = succeeded.length ? ` Code generated successfully for ${succeeded.length} APIs.` : ''
70
- const failedStr = failed.length ? ` Failed to generate code for ${failed.length} APIs. Check the logs below.` : ''
71
- console.log(`\nFinished!${succeededStr}${failedStr}`)
72
- if (succeeded.length) {
73
- console.log('\n> Generated code for:')
74
- succeeded.forEach(api => console.log(` - ${api}`))
75
- await removeLastFailed()
76
- }
77
- if (failed.length) {
78
- console.log('\n> Failed to generate code for:')
79
- failed.forEach(api => console.log(` - ${api}`))
80
- await saveFailed(failed)
81
- }
82
- if (errors.length) throw new Error(errors.join('\n\n'))
83
- }
84
-
85
- async function getLastFailed(): Promise<(keyof typeof apis)[]> {
86
- try {
87
- const raw = await readFile(LOG_FILE, { encoding: 'utf-8' })
88
- return JSON.parse(raw)
89
- } catch {
90
- return []
91
- }
92
- }
93
-
94
- async function removeLastFailed() {
95
- try {
96
- await unlink(LOG_FILE)
97
- // eslint-disable-next-line no-empty
98
- } catch {}
99
- }
100
-
101
- async function saveFailed(failed: string[]) {
102
- try {
103
- await writeFile(LOG_FILE, JSON.stringify(failed), { encoding: 'utf-8' })
104
- // eslint-disable-next-line no-empty
105
- } catch {}
106
- }
107
-
108
- async function start() {
109
- try {
110
- const cmdEnvArg = process.argv[2]
111
- const allAPINames = Object.keys(apis) as (keyof typeof apis)[]
112
- if ((envs.map(e => e.value) as string[]).includes(cmdEnvArg?.trim() ?? '')) {
113
- await generateCodeForAPIs(allAPINames, cmdEnvArg as 'prd' | 'stg' | 'dev')
114
- } else {
115
- const lastFailed = await getLastFailed()
116
- const selectedAPIs = await checkbox({
117
- message: 'Select the APIs you wish to update',
118
- choices: allAPINames.map(api => ({ name: api, value: api, checked: !lastFailed.length || lastFailed.includes(api) })),
119
- })
120
- const env: 'prd' | 'stg' | 'dev' = await list({
121
- message: 'Select an environment',
122
- choices: envs,
123
- default: envs[0].value,
124
- })
125
- await generateCodeForAPIs(selectedAPIs, env)
126
- }
127
- process.exit(0)
128
- } catch (error: any) {
129
- console.error(error.message || `${error}`)
130
- process.exit(1)
131
- }
132
- }
133
-
134
- start()
1
+ /* eslint-disable no-console */
2
+
3
+ import { exec } from 'child_process'
4
+ import { readFile, unlink, writeFile } from 'fs/promises'
5
+ import checkbox from '@inquirer/checkbox'
6
+ import { Presets, SingleBar } from 'cli-progress'
7
+ // @ts-ignore
8
+ import list from 'inquirer-interactive-list-prompt'
9
+ import apis from '../src/apis.json'
10
+
11
+ const MAX_ATTEMPTS = 5
12
+ const DELAY_MS = 2000
13
+ const TARGET_DIR = 'src/api'
14
+ const LOG_FILE = '.generate-api.failed.json'
15
+ const envs = [
16
+ { name: 'Production', value: 'prd', key: 'p' },
17
+ { name: 'Staging', value: 'stg', key: 's' },
18
+ { name: 'Development', value: 'dev', key: 'd' },
19
+ ] as const
20
+
21
+ function delay() {
22
+ return new Promise<void>(resolve => {
23
+ setTimeout(resolve, DELAY_MS)
24
+ })
25
+ }
26
+
27
+ function generateAPICode(name: string, docsUrl: any) {
28
+ return new Promise<string>((resolve, reject) => {
29
+ let output = ''
30
+ const child = exec(
31
+ `pnpm oazapfts ${docsUrl} ${TARGET_DIR}/${name}.ts --optimistic --argumentStyle object`,
32
+ (_, out, err) => output += out || err,
33
+ )
34
+ child.on('error', err => reject(err.message))
35
+ child.on('close', code => code === 0 ? resolve(output) : reject(output))
36
+ })
37
+ }
38
+
39
+ async function generateCodeForAPIs(apiNames: (keyof typeof apis)[], env: 'dev' | 'stg' | 'prd') {
40
+ let progress = 0
41
+ const progressBar = new SingleBar({ clearOnComplete: true, stopOnComplete: true }, Presets.shades_classic)
42
+ progressBar.start(apiNames.length, 0)
43
+ const succeeded: string[] = []
44
+ const failed: string[] = []
45
+ const errors: string[] = []
46
+ await Promise.all(apiNames.map(async (name) => {
47
+ let retries = MAX_ATTEMPTS
48
+ while (retries > 0) {
49
+ try {
50
+ const api = apis[name]
51
+ if ('docs' in api) {
52
+ const docsUrl = `${api.url[env]}${api.docs}`
53
+ await generateAPICode(name, docsUrl)
54
+ }
55
+ retries = 0
56
+ succeeded.push(name)
57
+ progressBar.update(++progress)
58
+ } catch (error: any) {
59
+ retries--
60
+ await delay()
61
+ if (retries === 0) {
62
+ errors.push(error.message || `${error}`)
63
+ failed.push(name)
64
+ progressBar.update(++progress)
65
+ }
66
+ }
67
+ }
68
+ }))
69
+ const succeededStr = succeeded.length ? ` Code generated successfully for ${succeeded.length} APIs.` : ''
70
+ const failedStr = failed.length ? ` Failed to generate code for ${failed.length} APIs. Check the logs below.` : ''
71
+ console.log(`\nFinished!${succeededStr}${failedStr}`)
72
+ if (succeeded.length) {
73
+ console.log('\n> Generated code for:')
74
+ succeeded.forEach(api => console.log(` - ${api}`))
75
+ await removeLastFailed()
76
+ }
77
+ if (failed.length) {
78
+ console.log('\n> Failed to generate code for:')
79
+ failed.forEach(api => console.log(` - ${api}`))
80
+ await saveFailed(failed)
81
+ }
82
+ if (errors.length) throw new Error(errors.join('\n\n'))
83
+ }
84
+
85
+ async function getLastFailed(): Promise<(keyof typeof apis)[]> {
86
+ try {
87
+ const raw = await readFile(LOG_FILE, { encoding: 'utf-8' })
88
+ return JSON.parse(raw)
89
+ } catch {
90
+ return []
91
+ }
92
+ }
93
+
94
+ async function removeLastFailed() {
95
+ try {
96
+ await unlink(LOG_FILE)
97
+ // eslint-disable-next-line no-empty
98
+ } catch {}
99
+ }
100
+
101
+ async function saveFailed(failed: string[]) {
102
+ try {
103
+ await writeFile(LOG_FILE, JSON.stringify(failed), { encoding: 'utf-8' })
104
+ // eslint-disable-next-line no-empty
105
+ } catch {}
106
+ }
107
+
108
+ async function start() {
109
+ try {
110
+ const cmdEnvArg = process.argv[2]
111
+ const allAPINames = Object.keys(apis) as (keyof typeof apis)[]
112
+ if ((envs.map(e => e.value) as string[]).includes(cmdEnvArg?.trim() ?? '')) {
113
+ await generateCodeForAPIs(allAPINames, cmdEnvArg as 'prd' | 'stg' | 'dev')
114
+ } else {
115
+ const lastFailed = await getLastFailed()
116
+ const selectedAPIs = await checkbox({
117
+ message: 'Select the APIs you wish to update',
118
+ choices: allAPINames.map(api => ({ name: api, value: api, checked: !lastFailed.length || lastFailed.includes(api) })),
119
+ })
120
+ const env: 'prd' | 'stg' | 'dev' = await list({
121
+ message: 'Select an environment',
122
+ choices: envs,
123
+ default: envs[0].value,
124
+ })
125
+ await generateCodeForAPIs(selectedAPIs, env)
126
+ }
127
+ process.exit(0)
128
+ } catch (error: any) {
129
+ console.error(error.message || `${error}`)
130
+ process.exit(1)
131
+ }
132
+ }
133
+
134
+ start()