@greensecurity/javascript-sdk 0.30.6 → 0.30.9

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 (203) hide show
  1. package/README.md +6 -0
  2. package/bin/mcp-server.js +543 -78
  3. package/bin/mcp-server.js.map +20 -12
  4. package/dist/commonjs/__tests__/vendors.test.js +48 -0
  5. package/dist/commonjs/__tests__/vendors.test.js.map +1 -1
  6. package/dist/commonjs/__tests__/webhooks.test.js +1 -1
  7. package/dist/commonjs/funcs/vendorsListVendorCredentials.js +1 -0
  8. package/dist/commonjs/funcs/vendorsListVendorCredentials.js.map +1 -1
  9. package/dist/commonjs/funcs/vendorsListVendorScrubPackages.d.ts +20 -0
  10. package/dist/commonjs/funcs/vendorsListVendorScrubPackages.d.ts.map +1 -0
  11. package/dist/commonjs/funcs/vendorsListVendorScrubPackages.js +160 -0
  12. package/dist/commonjs/funcs/vendorsListVendorScrubPackages.js.map +1 -0
  13. package/dist/commonjs/funcs/vendorsUpdateVendorScrubDetails.d.ts +17 -0
  14. package/dist/commonjs/funcs/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  15. package/dist/commonjs/funcs/vendorsUpdateVendorScrubDetails.js +122 -0
  16. package/dist/commonjs/funcs/vendorsUpdateVendorScrubDetails.js.map +1 -0
  17. package/dist/commonjs/lib/config.d.ts +3 -3
  18. package/dist/commonjs/lib/config.js +3 -3
  19. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  20. package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
  21. package/dist/commonjs/mcp-server/server.js +5 -1
  22. package/dist/commonjs/mcp-server/server.js.map +1 -1
  23. package/dist/commonjs/mcp-server/tools/vendorsListVendorScrubPackages.d.ts +8 -0
  24. package/dist/commonjs/mcp-server/tools/vendorsListVendorScrubPackages.d.ts.map +1 -0
  25. package/dist/commonjs/mcp-server/tools/vendorsListVendorScrubPackages.js +64 -0
  26. package/dist/commonjs/mcp-server/tools/vendorsListVendorScrubPackages.js.map +1 -0
  27. package/dist/commonjs/mcp-server/tools/vendorsUpdateVendorScrubDetails.d.ts +8 -0
  28. package/dist/commonjs/mcp-server/tools/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  29. package/dist/commonjs/mcp-server/tools/vendorsUpdateVendorScrubDetails.js +64 -0
  30. package/dist/commonjs/mcp-server/tools/vendorsUpdateVendorScrubDetails.js.map +1 -0
  31. package/dist/commonjs/models/components/index.d.ts +3 -1
  32. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  33. package/dist/commonjs/models/components/index.js +3 -1
  34. package/dist/commonjs/models/components/index.js.map +1 -1
  35. package/dist/commonjs/models/components/productvariant.d.ts +36 -0
  36. package/dist/commonjs/models/components/productvariant.d.ts.map +1 -0
  37. package/dist/commonjs/models/components/productvariant.js +73 -0
  38. package/dist/commonjs/models/components/productvariant.js.map +1 -0
  39. package/dist/commonjs/models/components/vendorcredentialscontainer.d.ts +41 -0
  40. package/dist/commonjs/models/components/vendorcredentialscontainer.d.ts.map +1 -0
  41. package/dist/commonjs/models/components/vendorcredentialscontainer.js +81 -0
  42. package/dist/commonjs/models/components/vendorcredentialscontainer.js.map +1 -0
  43. package/dist/commonjs/models/components/vendorcredentialsummary.d.ts +48 -0
  44. package/dist/commonjs/models/components/vendorcredentialsummary.d.ts.map +1 -0
  45. package/dist/commonjs/models/components/{vendorcredentialslim.js → vendorcredentialsummary.js} +30 -31
  46. package/dist/commonjs/models/components/vendorcredentialsummary.js.map +1 -0
  47. package/dist/commonjs/models/components/vendorrequiredcredential.d.ts +10 -10
  48. package/dist/commonjs/models/components/vendorrequiredcredential.d.ts.map +1 -1
  49. package/dist/commonjs/models/components/vendorrequiredcredential.js +10 -10
  50. package/dist/commonjs/models/components/vendorrequiredcredential.js.map +1 -1
  51. package/dist/commonjs/models/operations/index.d.ts +2 -0
  52. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  53. package/dist/commonjs/models/operations/index.js +2 -0
  54. package/dist/commonjs/models/operations/index.js.map +1 -1
  55. package/dist/commonjs/models/operations/listvendorcredentials.d.ts +22 -10
  56. package/dist/commonjs/models/operations/listvendorcredentials.d.ts.map +1 -1
  57. package/dist/commonjs/models/operations/listvendorcredentials.js +12 -10
  58. package/dist/commonjs/models/operations/listvendorcredentials.js.map +1 -1
  59. package/dist/commonjs/models/operations/listvendorscrubpackages.d.ts +111 -0
  60. package/dist/commonjs/models/operations/listvendorscrubpackages.d.ts.map +1 -0
  61. package/dist/commonjs/models/operations/listvendorscrubpackages.js +153 -0
  62. package/dist/commonjs/models/operations/listvendorscrubpackages.js.map +1 -0
  63. package/dist/commonjs/models/operations/updatevendorscrubdetails.d.ts +181 -0
  64. package/dist/commonjs/models/operations/updatevendorscrubdetails.d.ts.map +1 -0
  65. package/dist/commonjs/models/operations/updatevendorscrubdetails.js +197 -0
  66. package/dist/commonjs/models/operations/updatevendorscrubdetails.js.map +1 -0
  67. package/dist/commonjs/react-query/index.d.ts +2 -0
  68. package/dist/commonjs/react-query/index.d.ts.map +1 -1
  69. package/dist/commonjs/react-query/index.js +2 -0
  70. package/dist/commonjs/react-query/index.js.map +1 -1
  71. package/dist/commonjs/react-query/vendorsListVendorCredentials.d.ts +3 -0
  72. package/dist/commonjs/react-query/vendorsListVendorCredentials.d.ts.map +1 -1
  73. package/dist/commonjs/react-query/vendorsListVendorCredentials.js +2 -0
  74. package/dist/commonjs/react-query/vendorsListVendorCredentials.js.map +1 -1
  75. package/dist/commonjs/react-query/vendorsListVendorScrubPackages.d.ts +77 -0
  76. package/dist/commonjs/react-query/vendorsListVendorScrubPackages.d.ts.map +1 -0
  77. package/dist/commonjs/react-query/vendorsListVendorScrubPackages.js +160 -0
  78. package/dist/commonjs/react-query/vendorsListVendorScrubPackages.js.map +1 -0
  79. package/dist/commonjs/react-query/vendorsUpdateVendorScrubDetails.d.ts +23 -0
  80. package/dist/commonjs/react-query/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  81. package/dist/commonjs/react-query/vendorsUpdateVendorScrubDetails.js +51 -0
  82. package/dist/commonjs/react-query/vendorsUpdateVendorScrubDetails.js.map +1 -0
  83. package/dist/commonjs/sdk/vendors.d.ts +16 -0
  84. package/dist/commonjs/sdk/vendors.d.ts.map +1 -1
  85. package/dist/commonjs/sdk/vendors.js +20 -0
  86. package/dist/commonjs/sdk/vendors.js.map +1 -1
  87. package/dist/esm/__tests__/vendors.test.js +48 -0
  88. package/dist/esm/__tests__/vendors.test.js.map +1 -1
  89. package/dist/esm/__tests__/webhooks.test.js +1 -1
  90. package/dist/esm/funcs/vendorsListVendorCredentials.js +1 -0
  91. package/dist/esm/funcs/vendorsListVendorCredentials.js.map +1 -1
  92. package/dist/esm/funcs/vendorsListVendorScrubPackages.d.ts +20 -0
  93. package/dist/esm/funcs/vendorsListVendorScrubPackages.d.ts.map +1 -0
  94. package/dist/esm/funcs/vendorsListVendorScrubPackages.js +124 -0
  95. package/dist/esm/funcs/vendorsListVendorScrubPackages.js.map +1 -0
  96. package/dist/esm/funcs/vendorsUpdateVendorScrubDetails.d.ts +17 -0
  97. package/dist/esm/funcs/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  98. package/dist/esm/funcs/vendorsUpdateVendorScrubDetails.js +86 -0
  99. package/dist/esm/funcs/vendorsUpdateVendorScrubDetails.js.map +1 -0
  100. package/dist/esm/lib/config.d.ts +3 -3
  101. package/dist/esm/lib/config.js +3 -3
  102. package/dist/esm/mcp-server/mcp-server.js +1 -1
  103. package/dist/esm/mcp-server/server.d.ts.map +1 -1
  104. package/dist/esm/mcp-server/server.js +5 -1
  105. package/dist/esm/mcp-server/server.js.map +1 -1
  106. package/dist/esm/mcp-server/tools/vendorsListVendorScrubPackages.d.ts +8 -0
  107. package/dist/esm/mcp-server/tools/vendorsListVendorScrubPackages.d.ts.map +1 -0
  108. package/dist/esm/mcp-server/tools/vendorsListVendorScrubPackages.js +28 -0
  109. package/dist/esm/mcp-server/tools/vendorsListVendorScrubPackages.js.map +1 -0
  110. package/dist/esm/mcp-server/tools/vendorsUpdateVendorScrubDetails.d.ts +8 -0
  111. package/dist/esm/mcp-server/tools/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  112. package/dist/esm/mcp-server/tools/vendorsUpdateVendorScrubDetails.js +28 -0
  113. package/dist/esm/mcp-server/tools/vendorsUpdateVendorScrubDetails.js.map +1 -0
  114. package/dist/esm/models/components/index.d.ts +3 -1
  115. package/dist/esm/models/components/index.d.ts.map +1 -1
  116. package/dist/esm/models/components/index.js +3 -1
  117. package/dist/esm/models/components/index.js.map +1 -1
  118. package/dist/esm/models/components/productvariant.d.ts +36 -0
  119. package/dist/esm/models/components/productvariant.d.ts.map +1 -0
  120. package/dist/esm/models/components/productvariant.js +35 -0
  121. package/dist/esm/models/components/productvariant.js.map +1 -0
  122. package/dist/esm/models/components/vendorcredentialscontainer.d.ts +41 -0
  123. package/dist/esm/models/components/vendorcredentialscontainer.d.ts.map +1 -0
  124. package/dist/esm/models/components/vendorcredentialscontainer.js +43 -0
  125. package/dist/esm/models/components/vendorcredentialscontainer.js.map +1 -0
  126. package/dist/esm/models/components/vendorcredentialsummary.d.ts +48 -0
  127. package/dist/esm/models/components/vendorcredentialsummary.d.ts.map +1 -0
  128. package/dist/esm/models/components/vendorcredentialsummary.js +55 -0
  129. package/dist/esm/models/components/vendorcredentialsummary.js.map +1 -0
  130. package/dist/esm/models/components/vendorrequiredcredential.d.ts +10 -10
  131. package/dist/esm/models/components/vendorrequiredcredential.d.ts.map +1 -1
  132. package/dist/esm/models/components/vendorrequiredcredential.js +10 -10
  133. package/dist/esm/models/components/vendorrequiredcredential.js.map +1 -1
  134. package/dist/esm/models/operations/index.d.ts +2 -0
  135. package/dist/esm/models/operations/index.d.ts.map +1 -1
  136. package/dist/esm/models/operations/index.js +2 -0
  137. package/dist/esm/models/operations/index.js.map +1 -1
  138. package/dist/esm/models/operations/listvendorcredentials.d.ts +22 -10
  139. package/dist/esm/models/operations/listvendorcredentials.d.ts.map +1 -1
  140. package/dist/esm/models/operations/listvendorcredentials.js +12 -10
  141. package/dist/esm/models/operations/listvendorcredentials.js.map +1 -1
  142. package/dist/esm/models/operations/listvendorscrubpackages.d.ts +111 -0
  143. package/dist/esm/models/operations/listvendorscrubpackages.d.ts.map +1 -0
  144. package/dist/esm/models/operations/listvendorscrubpackages.js +111 -0
  145. package/dist/esm/models/operations/listvendorscrubpackages.js.map +1 -0
  146. package/dist/esm/models/operations/updatevendorscrubdetails.d.ts +181 -0
  147. package/dist/esm/models/operations/updatevendorscrubdetails.d.ts.map +1 -0
  148. package/dist/esm/models/operations/updatevendorscrubdetails.js +157 -0
  149. package/dist/esm/models/operations/updatevendorscrubdetails.js.map +1 -0
  150. package/dist/esm/react-query/index.d.ts +2 -0
  151. package/dist/esm/react-query/index.d.ts.map +1 -1
  152. package/dist/esm/react-query/index.js +2 -0
  153. package/dist/esm/react-query/index.js.map +1 -1
  154. package/dist/esm/react-query/vendorsListVendorCredentials.d.ts +3 -0
  155. package/dist/esm/react-query/vendorsListVendorCredentials.d.ts.map +1 -1
  156. package/dist/esm/react-query/vendorsListVendorCredentials.js +2 -0
  157. package/dist/esm/react-query/vendorsListVendorCredentials.js.map +1 -1
  158. package/dist/esm/react-query/vendorsListVendorScrubPackages.d.ts +77 -0
  159. package/dist/esm/react-query/vendorsListVendorScrubPackages.d.ts.map +1 -0
  160. package/dist/esm/react-query/vendorsListVendorScrubPackages.js +147 -0
  161. package/dist/esm/react-query/vendorsListVendorScrubPackages.js.map +1 -0
  162. package/dist/esm/react-query/vendorsUpdateVendorScrubDetails.d.ts +23 -0
  163. package/dist/esm/react-query/vendorsUpdateVendorScrubDetails.d.ts.map +1 -0
  164. package/dist/esm/react-query/vendorsUpdateVendorScrubDetails.js +46 -0
  165. package/dist/esm/react-query/vendorsUpdateVendorScrubDetails.js.map +1 -0
  166. package/dist/esm/sdk/vendors.d.ts +16 -0
  167. package/dist/esm/sdk/vendors.d.ts.map +1 -1
  168. package/dist/esm/sdk/vendors.js +20 -0
  169. package/dist/esm/sdk/vendors.js.map +1 -1
  170. package/jsr.json +1 -1
  171. package/package.json +1 -1
  172. package/src/__tests__/vendors.test.ts +54 -0
  173. package/src/__tests__/webhooks.test.ts +1 -1
  174. package/src/funcs/vendorsListVendorCredentials.ts +1 -0
  175. package/src/funcs/vendorsListVendorScrubPackages.ts +254 -0
  176. package/src/funcs/vendorsUpdateVendorScrubDetails.ts +177 -0
  177. package/src/lib/config.ts +3 -3
  178. package/src/mcp-server/mcp-server.ts +1 -1
  179. package/src/mcp-server/server.ts +5 -1
  180. package/src/mcp-server/tools/vendorsListVendorScrubPackages.ts +38 -0
  181. package/src/mcp-server/tools/vendorsUpdateVendorScrubDetails.ts +38 -0
  182. package/src/models/components/index.ts +3 -1
  183. package/src/models/components/productvariant.ts +73 -0
  184. package/src/models/components/vendorcredentialscontainer.ts +94 -0
  185. package/src/models/components/vendorcredentialsummary.ts +113 -0
  186. package/src/models/components/vendorrequiredcredential.ts +20 -20
  187. package/src/models/operations/index.ts +2 -0
  188. package/src/models/operations/listvendorcredentials.ts +48 -24
  189. package/src/models/operations/listvendorscrubpackages.ts +252 -0
  190. package/src/models/operations/updatevendorscrubdetails.ts +279 -0
  191. package/src/react-query/index.ts +2 -0
  192. package/src/react-query/vendorsListVendorCredentials.ts +5 -0
  193. package/src/react-query/vendorsListVendorScrubPackages.ts +346 -0
  194. package/src/react-query/vendorsUpdateVendorScrubDetails.ts +92 -0
  195. package/src/sdk/vendors.ts +38 -0
  196. package/dist/commonjs/models/components/vendorcredentialslim.d.ts +0 -44
  197. package/dist/commonjs/models/components/vendorcredentialslim.d.ts.map +0 -1
  198. package/dist/commonjs/models/components/vendorcredentialslim.js.map +0 -1
  199. package/dist/esm/models/components/vendorcredentialslim.d.ts +0 -44
  200. package/dist/esm/models/components/vendorcredentialslim.d.ts.map +0 -1
  201. package/dist/esm/models/components/vendorcredentialslim.js +0 -56
  202. package/dist/esm/models/components/vendorcredentialslim.js.map +0 -1
  203. package/src/models/components/vendorcredentialslim.ts +0 -106
@@ -0,0 +1,254 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { GreenSecurityCore } from "../core.js";
6
+ import { dlv } from "../lib/dlv.js";
7
+ import { encodeFormQuery, encodeSimple } from "../lib/encodings.js";
8
+ import * as M from "../lib/matchers.js";
9
+ import { compactMap } from "../lib/primitives.js";
10
+ import { safeParse } from "../lib/schemas.js";
11
+ import { RequestOptions } from "../lib/sdks.js";
12
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
13
+ import { pathToFunc } from "../lib/url.js";
14
+ import { APIError } from "../models/errors/apierror.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/httpclienterrors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import * as operations from "../models/operations/index.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
26
+ import { Result } from "../types/fp.js";
27
+ import {
28
+ createPageIterator,
29
+ haltIterator,
30
+ PageIterator,
31
+ Paginator,
32
+ } from "../types/operations.js";
33
+
34
+ /**
35
+ * List vendor scrub packages
36
+ *
37
+ * @remarks
38
+ * List vendor scrub packages
39
+ */
40
+ export function vendorsListVendorScrubPackages(
41
+ client: GreenSecurityCore,
42
+ request: operations.ListVendorScrubPackagesRequest,
43
+ options?: RequestOptions,
44
+ ): APIPromise<
45
+ PageIterator<
46
+ Result<
47
+ operations.ListVendorScrubPackagesResponse,
48
+ | errors.ApiErrorResponse
49
+ | errors.ApiErrorResponse
50
+ | APIError
51
+ | SDKValidationError
52
+ | UnexpectedClientError
53
+ | InvalidRequestError
54
+ | RequestAbortedError
55
+ | RequestTimeoutError
56
+ | ConnectionError
57
+ >,
58
+ { page: number }
59
+ >
60
+ > {
61
+ return new APIPromise($do(
62
+ client,
63
+ request,
64
+ options,
65
+ ));
66
+ }
67
+
68
+ async function $do(
69
+ client: GreenSecurityCore,
70
+ request: operations.ListVendorScrubPackagesRequest,
71
+ options?: RequestOptions,
72
+ ): Promise<
73
+ [
74
+ PageIterator<
75
+ Result<
76
+ operations.ListVendorScrubPackagesResponse,
77
+ | errors.ApiErrorResponse
78
+ | errors.ApiErrorResponse
79
+ | APIError
80
+ | SDKValidationError
81
+ | UnexpectedClientError
82
+ | InvalidRequestError
83
+ | RequestAbortedError
84
+ | RequestTimeoutError
85
+ | ConnectionError
86
+ >,
87
+ { page: number }
88
+ >,
89
+ APICall,
90
+ ]
91
+ > {
92
+ const parsed = safeParse(
93
+ request,
94
+ (value) =>
95
+ operations.ListVendorScrubPackagesRequest$outboundSchema.parse(value),
96
+ "Input validation failed",
97
+ );
98
+ if (!parsed.ok) {
99
+ return [haltIterator(parsed), { status: "invalid" }];
100
+ }
101
+ const payload = parsed.value;
102
+ const body = null;
103
+
104
+ const pathParams = {
105
+ vendor_id_or_me: encodeSimple("vendor_id_or_me", payload.vendor_id_or_me, {
106
+ explode: false,
107
+ charEncoding: "percent",
108
+ }),
109
+ };
110
+
111
+ const path = pathToFunc("/vendors/{vendor_id_or_me}/scrub_packages")(
112
+ pathParams,
113
+ );
114
+
115
+ const query = encodeFormQuery({
116
+ "desc": payload.desc,
117
+ "items_per_page": payload.items_per_page,
118
+ "page": payload.page,
119
+ "sort": payload.sort,
120
+ });
121
+
122
+ const headers = new Headers(compactMap({
123
+ Accept: "application/json",
124
+ }));
125
+
126
+ const securityInput = await extractSecurity(client._options.security);
127
+ const requestSecurity = resolveGlobalSecurity(securityInput);
128
+
129
+ const context = {
130
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
131
+ operationID: "listVendorScrubPackages",
132
+ oAuth2Scopes: [],
133
+
134
+ resolvedSecurity: requestSecurity,
135
+
136
+ securitySource: client._options.security,
137
+ retryConfig: options?.retries
138
+ || client._options.retryConfig
139
+ || { strategy: "none" },
140
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
141
+ };
142
+
143
+ const requestRes = client._createRequest(context, {
144
+ security: requestSecurity,
145
+ method: "GET",
146
+ baseURL: options?.serverURL,
147
+ path: path,
148
+ headers: headers,
149
+ query: query,
150
+ body: body,
151
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
152
+ }, options);
153
+ if (!requestRes.ok) {
154
+ return [haltIterator(requestRes), { status: "invalid" }];
155
+ }
156
+ const req = requestRes.value;
157
+
158
+ const doResult = await client._do(req, {
159
+ context,
160
+ errorCodes: ["400", "401", "403", "4XX", "500", "5XX"],
161
+ retryConfig: context.retryConfig,
162
+ retryCodes: context.retryCodes,
163
+ });
164
+ if (!doResult.ok) {
165
+ return [haltIterator(doResult), { status: "request-error", request: req }];
166
+ }
167
+ const response = doResult.value;
168
+
169
+ const responseFields = {
170
+ HttpMeta: { Response: response, Request: req },
171
+ };
172
+
173
+ const [result, raw] = await M.match<
174
+ operations.ListVendorScrubPackagesResponse,
175
+ | errors.ApiErrorResponse
176
+ | errors.ApiErrorResponse
177
+ | APIError
178
+ | SDKValidationError
179
+ | UnexpectedClientError
180
+ | InvalidRequestError
181
+ | RequestAbortedError
182
+ | RequestTimeoutError
183
+ | ConnectionError
184
+ >(
185
+ M.json(200, operations.ListVendorScrubPackagesResponse$inboundSchema, {
186
+ key: "Result",
187
+ }),
188
+ M.jsonErr([400, 401, 403], errors.ApiErrorResponse$inboundSchema),
189
+ M.jsonErr(500, errors.ApiErrorResponse$inboundSchema),
190
+ M.fail("4XX"),
191
+ M.fail("5XX"),
192
+ )(response, { extraFields: responseFields });
193
+ if (!result.ok) {
194
+ return [haltIterator(result), {
195
+ status: "complete",
196
+ request: req,
197
+ response,
198
+ }];
199
+ }
200
+
201
+ const nextFunc = (
202
+ responseData: unknown,
203
+ ): {
204
+ next: Paginator<
205
+ Result<
206
+ operations.ListVendorScrubPackagesResponse,
207
+ | errors.ApiErrorResponse
208
+ | errors.ApiErrorResponse
209
+ | APIError
210
+ | SDKValidationError
211
+ | UnexpectedClientError
212
+ | InvalidRequestError
213
+ | RequestAbortedError
214
+ | RequestTimeoutError
215
+ | ConnectionError
216
+ >
217
+ >;
218
+ "~next"?: { page: number };
219
+ } => {
220
+ const page = request?.page ?? 1;
221
+ const nextPage = page + 1;
222
+
223
+ if (!responseData) {
224
+ return { next: () => null };
225
+ }
226
+ const results = dlv(responseData, "items");
227
+ if (!Array.isArray(results) || !results.length) {
228
+ return { next: () => null };
229
+ }
230
+ const limit = request?.itemsPerPage ?? 0;
231
+ if (results.length < limit) {
232
+ return { next: () => null };
233
+ }
234
+
235
+ const nextVal = () =>
236
+ vendorsListVendorScrubPackages(
237
+ client,
238
+ {
239
+ ...request,
240
+ page: nextPage,
241
+ },
242
+ options,
243
+ );
244
+
245
+ return { next: nextVal, "~next": { page: nextPage } };
246
+ };
247
+
248
+ const page = { ...result, ...nextFunc(raw) };
249
+ return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, {
250
+ status: "complete",
251
+ request: req,
252
+ response,
253
+ }];
254
+ }
@@ -0,0 +1,177 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import { GreenSecurityCore } from "../core.js";
7
+ import { encodeJSON, encodeSimple } from "../lib/encodings.js";
8
+ import * as M from "../lib/matchers.js";
9
+ import { compactMap } from "../lib/primitives.js";
10
+ import { safeParse } from "../lib/schemas.js";
11
+ import { RequestOptions } from "../lib/sdks.js";
12
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
13
+ import { pathToFunc } from "../lib/url.js";
14
+ import { APIError } from "../models/errors/apierror.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/httpclienterrors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import * as operations from "../models/operations/index.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
26
+ import { Result } from "../types/fp.js";
27
+
28
+ /**
29
+ * Update vendor scrub details
30
+ *
31
+ * @remarks
32
+ * Update vendor scrub details
33
+ */
34
+ export function vendorsUpdateVendorScrubDetails(
35
+ client: GreenSecurityCore,
36
+ request: operations.UpdateVendorScrubDetailsRequest,
37
+ options?: RequestOptions,
38
+ ): APIPromise<
39
+ Result<
40
+ boolean,
41
+ | errors.ApiErrorResponse
42
+ | errors.ApiErrorResponse
43
+ | APIError
44
+ | SDKValidationError
45
+ | UnexpectedClientError
46
+ | InvalidRequestError
47
+ | RequestAbortedError
48
+ | RequestTimeoutError
49
+ | ConnectionError
50
+ >
51
+ > {
52
+ return new APIPromise($do(
53
+ client,
54
+ request,
55
+ options,
56
+ ));
57
+ }
58
+
59
+ async function $do(
60
+ client: GreenSecurityCore,
61
+ request: operations.UpdateVendorScrubDetailsRequest,
62
+ options?: RequestOptions,
63
+ ): Promise<
64
+ [
65
+ Result<
66
+ boolean,
67
+ | errors.ApiErrorResponse
68
+ | errors.ApiErrorResponse
69
+ | APIError
70
+ | SDKValidationError
71
+ | UnexpectedClientError
72
+ | InvalidRequestError
73
+ | RequestAbortedError
74
+ | RequestTimeoutError
75
+ | ConnectionError
76
+ >,
77
+ APICall,
78
+ ]
79
+ > {
80
+ const parsed = safeParse(
81
+ request,
82
+ (value) =>
83
+ operations.UpdateVendorScrubDetailsRequest$outboundSchema.parse(value),
84
+ "Input validation failed",
85
+ );
86
+ if (!parsed.ok) {
87
+ return [parsed, { status: "invalid" }];
88
+ }
89
+ const payload = parsed.value;
90
+ const body = encodeJSON("body", payload.RequestBody, { explode: true });
91
+
92
+ const pathParams = {
93
+ vendor_id_or_me: encodeSimple("vendor_id_or_me", payload.vendor_id_or_me, {
94
+ explode: false,
95
+ charEncoding: "percent",
96
+ }),
97
+ };
98
+
99
+ const path = pathToFunc("/vendors/{vendor_id_or_me}/scrub_details")(
100
+ pathParams,
101
+ );
102
+
103
+ const headers = new Headers(compactMap({
104
+ "Content-Type": "application/json",
105
+ Accept: "application/json",
106
+ }));
107
+
108
+ const securityInput = await extractSecurity(client._options.security);
109
+ const requestSecurity = resolveGlobalSecurity(securityInput);
110
+
111
+ const context = {
112
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
113
+ operationID: "updateVendorScrubDetails",
114
+ oAuth2Scopes: [],
115
+
116
+ resolvedSecurity: requestSecurity,
117
+
118
+ securitySource: client._options.security,
119
+ retryConfig: options?.retries
120
+ || client._options.retryConfig
121
+ || { strategy: "none" },
122
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
123
+ };
124
+
125
+ const requestRes = client._createRequest(context, {
126
+ security: requestSecurity,
127
+ method: "PUT",
128
+ baseURL: options?.serverURL,
129
+ path: path,
130
+ headers: headers,
131
+ body: body,
132
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
133
+ }, options);
134
+ if (!requestRes.ok) {
135
+ return [requestRes, { status: "invalid" }];
136
+ }
137
+ const req = requestRes.value;
138
+
139
+ const doResult = await client._do(req, {
140
+ context,
141
+ errorCodes: ["400", "401", "403", "404", "4XX", "500", "5XX"],
142
+ retryConfig: context.retryConfig,
143
+ retryCodes: context.retryCodes,
144
+ });
145
+ if (!doResult.ok) {
146
+ return [doResult, { status: "request-error", request: req }];
147
+ }
148
+ const response = doResult.value;
149
+
150
+ const responseFields = {
151
+ HttpMeta: { Response: response, Request: req },
152
+ };
153
+
154
+ const [result] = await M.match<
155
+ boolean,
156
+ | errors.ApiErrorResponse
157
+ | errors.ApiErrorResponse
158
+ | APIError
159
+ | SDKValidationError
160
+ | UnexpectedClientError
161
+ | InvalidRequestError
162
+ | RequestAbortedError
163
+ | RequestTimeoutError
164
+ | ConnectionError
165
+ >(
166
+ M.json(200, z.boolean()),
167
+ M.jsonErr([400, 401, 403, 404], errors.ApiErrorResponse$inboundSchema),
168
+ M.jsonErr(500, errors.ApiErrorResponse$inboundSchema),
169
+ M.fail("4XX"),
170
+ M.fail("5XX"),
171
+ )(response, { extraFields: responseFields });
172
+ if (!result.ok) {
173
+ return [result, { status: "complete", request: req, response }];
174
+ }
175
+
176
+ return [result, { status: "complete", request: req, response }];
177
+ }
package/src/lib/config.ts CHANGED
@@ -72,8 +72,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
72
72
  export const SDK_METADATA = {
73
73
  language: "typescript",
74
74
  openapiDocVersion: "0.0.3",
75
- sdkVersion: "0.30.6",
76
- genVersion: "2.562.3",
75
+ sdkVersion: "0.30.9",
76
+ genVersion: "2.563.1",
77
77
  userAgent:
78
- "speakeasy-sdk/typescript 0.30.6 2.562.3 0.0.3 @greensecurity/javascript-sdk",
78
+ "speakeasy-sdk/typescript 0.30.9 2.563.1 0.0.3 @greensecurity/javascript-sdk",
79
79
  } as const;
@@ -19,7 +19,7 @@ const routes = buildRouteMap({
19
19
  export const app = buildApplication(routes, {
20
20
  name: "mcp",
21
21
  versionInfo: {
22
- currentVersion: "0.30.6",
22
+ currentVersion: "0.30.9",
23
23
  },
24
24
  });
25
25
 
@@ -38,8 +38,10 @@ import { tool$vendorsListVendorFacilityStatuses } from "./tools/vendorsListVendo
38
38
  import { tool$vendorsListVendorInvoices } from "./tools/vendorsListVendorInvoices.js";
39
39
  import { tool$vendorsListVendorManagedByCompanies } from "./tools/vendorsListVendorManagedByCompanies.js";
40
40
  import { tool$vendorsListVendorScrubDetails } from "./tools/vendorsListVendorScrubDetails.js";
41
+ import { tool$vendorsListVendorScrubPackages } from "./tools/vendorsListVendorScrubPackages.js";
41
42
  import { tool$vendorsListVendorScrubPurchases } from "./tools/vendorsListVendorScrubPurchases.js";
42
43
  import { tool$vendorsUpdateVendorManagedByCompany } from "./tools/vendorsUpdateVendorManagedByCompany.js";
44
+ import { tool$vendorsUpdateVendorScrubDetails } from "./tools/vendorsUpdateVendorScrubDetails.js";
43
45
  import { tool$webhooksGetWebhookEndpoint } from "./tools/webhooksGetWebhookEndpoint.js";
44
46
  import { tool$webhooksListAllWebhookEndpoints } from "./tools/webhooksListAllWebhookEndpoints.js";
45
47
 
@@ -53,7 +55,7 @@ export function createMCPServer(deps: {
53
55
  }) {
54
56
  const server = new McpServer({
55
57
  name: "GreenSecurity",
56
- version: "0.30.6",
58
+ version: "0.30.9",
57
59
  });
58
60
 
59
61
  const client = new GreenSecurityCore({
@@ -91,6 +93,8 @@ export function createMCPServer(deps: {
91
93
  tool(tool$vendorsListVendorFacilityStatuses);
92
94
  tool(tool$vendorsListVendorScrubPurchases);
93
95
  tool(tool$vendorsListVendorScrubDetails);
96
+ tool(tool$vendorsUpdateVendorScrubDetails);
97
+ tool(tool$vendorsListVendorScrubPackages);
94
98
  tool(tool$vendorsGetVendorsDetails);
95
99
  tool(tool$vendorsListVendorCredits);
96
100
  tool(tool$vendorsListVendorAdditionalFacilityFields);
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { vendorsListVendorScrubPackages } from "../../funcs/vendorsListVendorScrubPackages.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.ListVendorScrubPackagesRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$vendorsListVendorScrubPackages: ToolDefinition<typeof args> =
14
+ {
15
+ name: "vendors-list-vendor-scrub-packages",
16
+ description: `List vendor scrub packages
17
+
18
+ List vendor scrub packages`,
19
+ args,
20
+ tool: async (client, args, ctx) => {
21
+ const [result, apiCall] = await vendorsListVendorScrubPackages(
22
+ client,
23
+ args.request,
24
+ { fetchOptions: { signal: ctx.signal } },
25
+ ).$inspect();
26
+
27
+ if (!result.ok) {
28
+ return {
29
+ content: [{ type: "text", text: result.error.message }],
30
+ isError: true,
31
+ };
32
+ }
33
+
34
+ const value = result.value.result;
35
+
36
+ return formatResult(value, apiCall);
37
+ },
38
+ };
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { vendorsUpdateVendorScrubDetails } from "../../funcs/vendorsUpdateVendorScrubDetails.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.UpdateVendorScrubDetailsRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$vendorsUpdateVendorScrubDetails: ToolDefinition<typeof args> =
14
+ {
15
+ name: "vendors-update-vendor-scrub-details",
16
+ description: `Update vendor scrub details
17
+
18
+ Update vendor scrub details`,
19
+ args,
20
+ tool: async (client, args, ctx) => {
21
+ const [result, apiCall] = await vendorsUpdateVendorScrubDetails(
22
+ client,
23
+ args.request,
24
+ { fetchOptions: { signal: ctx.signal } },
25
+ ).$inspect();
26
+
27
+ if (!result.ok) {
28
+ return {
29
+ content: [{ type: "text", text: result.error.message }],
30
+ isError: true,
31
+ };
32
+ }
33
+
34
+ const value = result.value;
35
+
36
+ return formatResult(value, apiCall);
37
+ },
38
+ };
@@ -22,6 +22,7 @@ export * from "./loginrequirementsfromemail.js";
22
22
  export * from "./mfarequiredresponse.js";
23
23
  export * from "./pager.js";
24
24
  export * from "./passwordrequiredresponse.js";
25
+ export * from "./productvariant.js";
25
26
  export * from "./samlloginrequiredresponse.js";
26
27
  export * from "./scantype.js";
27
28
  export * from "./security.js";
@@ -32,7 +33,8 @@ export * from "./user.js";
32
33
  export * from "./userlocation.js";
33
34
  export * from "./vendor.js";
34
35
  export * from "./vendoradditionalfacilityfields.js";
35
- export * from "./vendorcredentialslim.js";
36
+ export * from "./vendorcredentialscontainer.js";
37
+ export * from "./vendorcredentialsummary.js";
36
38
  export * from "./vendorfacilitystatusview.js";
37
39
  export * from "./vendorjobtitle.js";
38
40
  export * from "./vendormanagedbycompany.js";
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ /**
11
+ * Reduced list of attributes of Variant record
12
+ */
13
+ export type ProductVariant = {
14
+ id?: number | undefined;
15
+ amount?: number | undefined;
16
+ total?: number | undefined;
17
+ };
18
+
19
+ /** @internal */
20
+ export const ProductVariant$inboundSchema: z.ZodType<
21
+ ProductVariant,
22
+ z.ZodTypeDef,
23
+ unknown
24
+ > = z.object({
25
+ id: z.number().int().optional(),
26
+ amount: z.number().int().optional(),
27
+ total: z.number().int().optional(),
28
+ });
29
+
30
+ /** @internal */
31
+ export type ProductVariant$Outbound = {
32
+ id?: number | undefined;
33
+ amount?: number | undefined;
34
+ total?: number | undefined;
35
+ };
36
+
37
+ /** @internal */
38
+ export const ProductVariant$outboundSchema: z.ZodType<
39
+ ProductVariant$Outbound,
40
+ z.ZodTypeDef,
41
+ ProductVariant
42
+ > = z.object({
43
+ id: z.number().int().optional(),
44
+ amount: z.number().int().optional(),
45
+ total: z.number().int().optional(),
46
+ });
47
+
48
+ /**
49
+ * @internal
50
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
51
+ */
52
+ export namespace ProductVariant$ {
53
+ /** @deprecated use `ProductVariant$inboundSchema` instead. */
54
+ export const inboundSchema = ProductVariant$inboundSchema;
55
+ /** @deprecated use `ProductVariant$outboundSchema` instead. */
56
+ export const outboundSchema = ProductVariant$outboundSchema;
57
+ /** @deprecated use `ProductVariant$Outbound` instead. */
58
+ export type Outbound = ProductVariant$Outbound;
59
+ }
60
+
61
+ export function productVariantToJSON(productVariant: ProductVariant): string {
62
+ return JSON.stringify(ProductVariant$outboundSchema.parse(productVariant));
63
+ }
64
+
65
+ export function productVariantFromJSON(
66
+ jsonString: string,
67
+ ): SafeParseResult<ProductVariant, SDKValidationError> {
68
+ return safeParse(
69
+ jsonString,
70
+ (x) => ProductVariant$inboundSchema.parse(JSON.parse(x)),
71
+ `Failed to parse 'ProductVariant' from JSON`,
72
+ );
73
+ }