@greensecurity/javascript-sdk 0.16.0 → 0.17.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.
- package/REACT_QUERY.md +68 -30
- package/README.md +43 -0
- package/bin/mcp-server.js +694 -51
- package/bin/mcp-server.js.map +28 -19
- package/funcs/organizationsListOrSearchFacilities.d.ts +4 -1
- package/funcs/organizationsListOrSearchFacilities.d.ts.map +1 -1
- package/funcs/organizationsListOrSearchFacilities.js +46 -9
- package/funcs/organizationsListOrSearchFacilities.js.map +1 -1
- package/funcs/supportArticlesGetSupportArticle.js +1 -1
- package/funcs/supportArticlesGetSupportArticle.js.map +1 -1
- package/funcs/supportArticlesListOrSearchSupportArticles.d.ts +4 -1
- package/funcs/supportArticlesListOrSearchSupportArticles.d.ts.map +1 -1
- package/funcs/supportArticlesListOrSearchSupportArticles.js +42 -7
- package/funcs/supportArticlesListOrSearchSupportArticles.js.map +1 -1
- package/funcs/vendorsExpediteTimeRemaining.d.ts +17 -0
- package/funcs/vendorsExpediteTimeRemaining.d.ts.map +1 -0
- package/funcs/vendorsExpediteTimeRemaining.js +120 -0
- package/funcs/vendorsExpediteTimeRemaining.js.map +1 -0
- package/funcs/vendorsListVendorInvoices.d.ts +24 -0
- package/funcs/vendorsListVendorInvoices.d.ts.map +1 -0
- package/funcs/vendorsListVendorInvoices.js +166 -0
- package/funcs/vendorsListVendorInvoices.js.map +1 -0
- package/funcs/vendorsListVendorJobTitles.d.ts +4 -1
- package/funcs/vendorsListVendorJobTitles.d.ts.map +1 -1
- package/funcs/vendorsListVendorJobTitles.js +39 -6
- package/funcs/vendorsListVendorJobTitles.js.map +1 -1
- package/jsr.json +1 -1
- package/lib/config.d.ts +2 -2
- package/lib/config.js +2 -2
- package/mcp-server/mcp-server.js +1 -1
- package/mcp-server/server.d.ts.map +1 -1
- package/mcp-server/server.js +5 -1
- package/mcp-server/server.js.map +1 -1
- package/mcp-server/tools/organizationsListOrSearchFacilities.js +1 -1
- package/mcp-server/tools/organizationsListOrSearchFacilities.js.map +1 -1
- package/mcp-server/tools/supportArticlesListOrSearchSupportArticles.js +1 -1
- package/mcp-server/tools/supportArticlesListOrSearchSupportArticles.js.map +1 -1
- package/mcp-server/tools/vendorsExpediteTimeRemaining.d.ts +8 -0
- package/mcp-server/tools/vendorsExpediteTimeRemaining.d.ts.map +1 -0
- package/mcp-server/tools/vendorsExpediteTimeRemaining.js +64 -0
- package/mcp-server/tools/vendorsExpediteTimeRemaining.js.map +1 -0
- package/mcp-server/tools/vendorsListVendorInvoices.d.ts +8 -0
- package/mcp-server/tools/vendorsListVendorInvoices.d.ts.map +1 -0
- package/mcp-server/tools/vendorsListVendorInvoices.js +68 -0
- package/mcp-server/tools/vendorsListVendorInvoices.js.map +1 -0
- package/mcp-server/tools/vendorsListVendorJobTitles.js +1 -1
- package/mcp-server/tools/vendorsListVendorJobTitles.js.map +1 -1
- package/models/components/expand.d.ts +3 -0
- package/models/components/expand.d.ts.map +1 -1
- package/models/components/expand.js +1 -0
- package/models/components/expand.js.map +1 -1
- package/models/components/index.d.ts +2 -0
- package/models/components/index.d.ts.map +1 -1
- package/models/components/index.js +2 -0
- package/models/components/index.js.map +1 -1
- package/models/components/invoice.d.ts +43 -0
- package/models/components/invoice.d.ts.map +1 -0
- package/models/components/invoice.js +91 -0
- package/models/components/invoice.js.map +1 -0
- package/models/components/invoiceitem.d.ts +40 -0
- package/models/components/invoiceitem.d.ts.map +1 -0
- package/models/components/invoiceitem.js +94 -0
- package/models/components/invoiceitem.js.map +1 -0
- package/models/operations/expeditetimeremaining.d.ts +60 -0
- package/models/operations/expeditetimeremaining.d.ts.map +1 -0
- package/models/operations/expeditetimeremaining.js +113 -0
- package/models/operations/expeditetimeremaining.js.map +1 -0
- package/models/operations/index.d.ts +2 -0
- package/models/operations/index.d.ts.map +1 -1
- package/models/operations/index.js +2 -0
- package/models/operations/index.js.map +1 -1
- package/models/operations/listorsearchfacilities.d.ts +25 -0
- package/models/operations/listorsearchfacilities.d.ts.map +1 -1
- package/models/operations/listorsearchfacilities.js +36 -1
- package/models/operations/listorsearchfacilities.js.map +1 -1
- package/models/operations/listorsearchsupportarticles.d.ts +25 -0
- package/models/operations/listorsearchsupportarticles.d.ts.map +1 -1
- package/models/operations/listorsearchsupportarticles.js +36 -1
- package/models/operations/listorsearchsupportarticles.js.map +1 -1
- package/models/operations/listvendorinvoices.d.ts +116 -0
- package/models/operations/listvendorinvoices.d.ts.map +1 -0
- package/models/operations/listvendorinvoices.js +155 -0
- package/models/operations/listvendorinvoices.js.map +1 -0
- package/models/operations/listvendorjobtitles.d.ts +25 -0
- package/models/operations/listvendorjobtitles.d.ts.map +1 -1
- package/models/operations/listvendorjobtitles.js +36 -1
- package/models/operations/listvendorjobtitles.js.map +1 -1
- package/package.json +1 -1
- package/react-query/index.d.ts +2 -0
- package/react-query/index.d.ts.map +1 -1
- package/react-query/index.js +2 -0
- package/react-query/index.js.map +1 -1
- package/react-query/organizationsListOrSearchFacilities.d.ts +54 -3
- package/react-query/organizationsListOrSearchFacilities.d.ts.map +1 -1
- package/react-query/organizationsListOrSearchFacilities.js +89 -0
- package/react-query/organizationsListOrSearchFacilities.js.map +1 -1
- package/react-query/supportArticlesListOrSearchSupportArticles.d.ts +28 -3
- package/react-query/supportArticlesListOrSearchSupportArticles.d.ts.map +1 -1
- package/react-query/supportArticlesListOrSearchSupportArticles.js +58 -0
- package/react-query/supportArticlesListOrSearchSupportArticles.js.map +1 -1
- package/react-query/vendorsExpediteTimeRemaining.d.ts +30 -0
- package/react-query/vendorsExpediteTimeRemaining.d.ts.map +1 -0
- package/react-query/vendorsExpediteTimeRemaining.js +96 -0
- package/react-query/vendorsExpediteTimeRemaining.js.map +1 -0
- package/react-query/vendorsListVendorInvoices.d.ts +96 -0
- package/react-query/vendorsListVendorInvoices.d.ts.map +1 -0
- package/react-query/vendorsListVendorInvoices.js +178 -0
- package/react-query/vendorsListVendorInvoices.js.map +1 -0
- package/react-query/vendorsListVendorJobTitles.d.ts +28 -3
- package/react-query/vendorsListVendorJobTitles.d.ts.map +1 -1
- package/react-query/vendorsListVendorJobTitles.js +59 -0
- package/react-query/vendorsListVendorJobTitles.js.map +1 -1
- package/sdk/organizations.d.ts +4 -1
- package/sdk/organizations.d.ts.map +1 -1
- package/sdk/organizations.js +2 -1
- package/sdk/organizations.js.map +1 -1
- package/sdk/supportarticles.d.ts +4 -1
- package/sdk/supportarticles.d.ts.map +1 -1
- package/sdk/supportarticles.js +2 -1
- package/sdk/supportarticles.js.map +1 -1
- package/sdk/vendors.d.ts +24 -1
- package/sdk/vendors.d.ts.map +1 -1
- package/sdk/vendors.js +26 -1
- package/sdk/vendors.js.map +1 -1
- package/src/__tests__/supportarticles.test.ts +2 -1
- package/src/__tests__/vendors.test.ts +58 -1
- package/src/funcs/organizationsListOrSearchFacilities.ts +116 -42
- package/src/funcs/supportArticlesGetSupportArticle.ts +1 -1
- package/src/funcs/supportArticlesListOrSearchSupportArticles.ts +100 -31
- package/src/funcs/vendorsExpediteTimeRemaining.ts +171 -0
- package/src/funcs/vendorsListVendorInvoices.ts +255 -0
- package/src/funcs/vendorsListVendorJobTitles.ts +101 -33
- package/src/lib/config.ts +2 -2
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +5 -1
- package/src/mcp-server/tools/organizationsListOrSearchFacilities.ts +1 -1
- package/src/mcp-server/tools/supportArticlesListOrSearchSupportArticles.ts +1 -1
- package/src/mcp-server/tools/vendorsExpediteTimeRemaining.ts +37 -0
- package/src/mcp-server/tools/vendorsListVendorInvoices.ts +41 -0
- package/src/mcp-server/tools/vendorsListVendorJobTitles.ts +1 -1
- package/src/models/components/expand.ts +1 -0
- package/src/models/components/index.ts +2 -0
- package/src/models/components/invoice.ts +99 -0
- package/src/models/components/invoiceitem.ts +98 -0
- package/src/models/operations/expeditetimeremaining.ts +152 -0
- package/src/models/operations/index.ts +2 -0
- package/src/models/operations/listorsearchfacilities.ts +72 -0
- package/src/models/operations/listorsearchsupportarticles.ts +75 -0
- package/src/models/operations/listvendorinvoices.ts +252 -0
- package/src/models/operations/listvendorjobtitles.ts +68 -0
- package/src/react-query/index.ts +2 -0
- package/src/react-query/organizationsListOrSearchFacilities.ts +179 -1
- package/src/react-query/supportArticlesListOrSearchSupportArticles.ts +149 -1
- package/src/react-query/vendorsExpediteTimeRemaining.ts +165 -0
- package/src/react-query/vendorsListVendorInvoices.ts +364 -0
- package/src/react-query/vendorsListVendorJobTitles.ts +149 -1
- package/src/sdk/organizations.ts +5 -2
- package/src/sdk/supportarticles.ts +8 -2
- package/src/sdk/vendors.ts +47 -2
package/REACT_QUERY.md
CHANGED
|
@@ -22,7 +22,11 @@ import { GreenSecurityCore } from "@greensecurity/javascript-sdk";
|
|
|
22
22
|
import { GreenSecurityProvider } from "@greensecurity/javascript-sdk/react-query";
|
|
23
23
|
|
|
24
24
|
const queryClient = new QueryClient();
|
|
25
|
-
const greenSecurity = new GreenSecurityCore(
|
|
25
|
+
const greenSecurity = new GreenSecurityCore({
|
|
26
|
+
security: {
|
|
27
|
+
token: process.env["GREEN_SECURITY_TOKEN"] ?? "",
|
|
28
|
+
},
|
|
29
|
+
});
|
|
26
30
|
|
|
27
31
|
// Retries are handled by the underlying SDK.
|
|
28
32
|
queryClient.setQueryDefaults(["@greensecurity/javascript-sdk"], { retry: false });
|
|
@@ -48,14 +52,11 @@ from TanStack Query.
|
|
|
48
52
|
[use-query]: https://tanstack.com/query/v5/docs/framework/react/reference/useQuery
|
|
49
53
|
|
|
50
54
|
```tsx
|
|
51
|
-
import {
|
|
55
|
+
import { useVendorsListVendorCredentials } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorCredentials.js";
|
|
52
56
|
|
|
53
57
|
export function Example() {
|
|
54
|
-
const { data, error, status } =
|
|
55
|
-
|
|
56
|
-
desc: true,
|
|
57
|
-
itemsPerPage: 25,
|
|
58
|
-
jobLike: "job",
|
|
58
|
+
const { data, error, status } = useVendorsListVendorCredentials({
|
|
59
|
+
vendorId: 327408,
|
|
59
60
|
});
|
|
60
61
|
|
|
61
62
|
// Render the UI here...
|
|
@@ -69,16 +70,13 @@ more options provided by the query hooks to control these behaviors.
|
|
|
69
70
|
|
|
70
71
|
```tsx
|
|
71
72
|
import { useState } from "react";
|
|
72
|
-
import {
|
|
73
|
+
import { useVendorsListVendorCredentials } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorCredentials.js";
|
|
73
74
|
|
|
74
75
|
export function ExampleWithOptions() {
|
|
75
76
|
const [enabled, setEnabled] = useState(true);
|
|
76
|
-
const { data, error, status } =
|
|
77
|
+
const { data, error, status } = useVendorsListVendorCredentials(
|
|
77
78
|
{
|
|
78
|
-
|
|
79
|
-
desc: true,
|
|
80
|
-
itemsPerPage: 25,
|
|
81
|
-
jobLike: "job",
|
|
79
|
+
vendorId: 327408,
|
|
82
80
|
},
|
|
83
81
|
{
|
|
84
82
|
// TanStack Query options:
|
|
@@ -186,7 +184,7 @@ query hook there are two functions that help invalidate cached data:
|
|
|
186
184
|
|
|
187
185
|
```tsx
|
|
188
186
|
import { useQueryClient } from "@tanstack/react-query";
|
|
189
|
-
import {
|
|
187
|
+
import { invalidateVendorsListVendorCredentials, invalidateAllVendorsListVendorCredentials } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorCredentials.js";
|
|
190
188
|
// Replace this with a real mutation
|
|
191
189
|
import { useExampleMutation } from "@greensecurity/javascript-sdk/react-query/example.js";
|
|
192
190
|
|
|
@@ -204,9 +202,9 @@ export function Example() {
|
|
|
204
202
|
mutate(formData, {
|
|
205
203
|
onSuccess: () => {
|
|
206
204
|
// Invalidate a single cache entry:
|
|
207
|
-
|
|
205
|
+
invalidateVendorsListVendorCredentials(queryClient, /* ... arguments ... */);
|
|
208
206
|
// OR, invalidate all cache entries for the query targets:
|
|
209
|
-
|
|
207
|
+
invalidateAllVendorsListVendorCredentials(queryClient);
|
|
210
208
|
},
|
|
211
209
|
});
|
|
212
210
|
}}
|
|
@@ -220,6 +218,44 @@ export function Example() {
|
|
|
220
218
|
```
|
|
221
219
|
|
|
222
220
|
|
|
221
|
+
## Pagination
|
|
222
|
+
|
|
223
|
+
Certain queries may have pagination enabled if the underlying API supports it.
|
|
224
|
+
In these cases, additional "infinite" query hooks are exposed to help build
|
|
225
|
+
infinite scrolling and "load more" user interfaces.
|
|
226
|
+
|
|
227
|
+
> [!NOTE]
|
|
228
|
+
>
|
|
229
|
+
> The original query hooks will still be available and if you are building a
|
|
230
|
+
> more explicit pagination UI with page numbers and next/previous buttons then
|
|
231
|
+
> those hooks may be more suitable.
|
|
232
|
+
|
|
233
|
+
```tsx
|
|
234
|
+
import { useVendorsListVendorJobTitlesInfinite } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorJobTitles.js";
|
|
235
|
+
|
|
236
|
+
export function Example() {
|
|
237
|
+
const { data, error, status, fetchNextPage, hasNextPage } = useVendorsListVendorJobTitlesInfinite({
|
|
238
|
+
sort: "job",
|
|
239
|
+
desc: true,
|
|
240
|
+
itemsPerPage: 25,
|
|
241
|
+
jobLike: "job",
|
|
242
|
+
});
|
|
243
|
+
|
|
244
|
+
return (
|
|
245
|
+
<div>
|
|
246
|
+
{/* Render pages here... */}
|
|
247
|
+
|
|
248
|
+
{hasNextPage ? (
|
|
249
|
+
<div>
|
|
250
|
+
<button onClick={() => fetchNextPage()}>Load more</button>
|
|
251
|
+
</div>
|
|
252
|
+
) : null}
|
|
253
|
+
</div>
|
|
254
|
+
);
|
|
255
|
+
}
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
|
|
223
259
|
## Integration with React Suspense
|
|
224
260
|
|
|
225
261
|
TanStack Query predates React Suspense and out of the box it does a great job at
|
|
@@ -234,10 +270,14 @@ import { ErrorBoundary } from "react-error-boundary";
|
|
|
234
270
|
|
|
235
271
|
import { GreenSecurityCore } from "@greensecurity/javascript-sdk";
|
|
236
272
|
import { GreenSecurityProvider } from "@greensecurity/javascript-sdk/react-query";
|
|
237
|
-
import {
|
|
273
|
+
import { useVendorsListVendorCredentialsSuspense } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorCredentials.js";
|
|
238
274
|
|
|
239
275
|
const queryClient = new QueryClient();
|
|
240
|
-
const greenSecurity = new GreenSecurityCore(
|
|
276
|
+
const greenSecurity = new GreenSecurityCore({
|
|
277
|
+
security: {
|
|
278
|
+
token: process.env["GREEN_SECURITY_TOKEN"] ?? "",
|
|
279
|
+
},
|
|
280
|
+
});
|
|
241
281
|
|
|
242
282
|
export function App() {
|
|
243
283
|
return (
|
|
@@ -267,11 +307,8 @@ export function App() {
|
|
|
267
307
|
}
|
|
268
308
|
|
|
269
309
|
function Example() {
|
|
270
|
-
const { data } =
|
|
271
|
-
|
|
272
|
-
desc: true,
|
|
273
|
-
itemsPerPage: 25,
|
|
274
|
-
jobLike: "job",
|
|
310
|
+
const { data } = useVendorsListVendorCredentialsSuspense({
|
|
311
|
+
vendorId: 327408,
|
|
275
312
|
});
|
|
276
313
|
|
|
277
314
|
// Render the UI here...
|
|
@@ -292,17 +329,18 @@ import {
|
|
|
292
329
|
QueryClient,
|
|
293
330
|
} from "@tanstack/react-query";
|
|
294
331
|
import { GreenSecurityCore } from "@greensecurity/javascript-sdk";
|
|
295
|
-
import {
|
|
332
|
+
import { prefetchVendorsListVendorCredentials } from "@greensecurity/javascript-sdk/react-query/vendorsListVendorCredentials.js";
|
|
296
333
|
|
|
297
334
|
export default async function Page() {
|
|
298
335
|
const queryClient = new QueryClient();
|
|
299
|
-
const greenSecurity = new GreenSecurityCore(
|
|
336
|
+
const greenSecurity = new GreenSecurityCore({
|
|
337
|
+
security: {
|
|
338
|
+
token: process.env["GREEN_SECURITY_TOKEN"] ?? "",
|
|
339
|
+
},
|
|
340
|
+
});
|
|
300
341
|
|
|
301
|
-
await
|
|
302
|
-
|
|
303
|
-
desc: true,
|
|
304
|
-
itemsPerPage: 25,
|
|
305
|
-
jobLike: "job",
|
|
342
|
+
await prefetchVendorsListVendorCredentials(queryClient, greenSecurity, {
|
|
343
|
+
vendorId: 327408,
|
|
306
344
|
});
|
|
307
345
|
|
|
308
346
|
return (
|
package/README.md
CHANGED
|
@@ -40,6 +40,7 @@ Some useful links:
|
|
|
40
40
|
* [Available Resources and Operations](#available-resources-and-operations)
|
|
41
41
|
* [Standalone functions](#standalone-functions)
|
|
42
42
|
* [React hooks with TanStack Query](#react-hooks-with-tanstack-query)
|
|
43
|
+
* [Pagination](#pagination)
|
|
43
44
|
* [Retries](#retries)
|
|
44
45
|
* [Error Handling](#error-handling)
|
|
45
46
|
* [Server Selection](#server-selection)
|
|
@@ -252,6 +253,8 @@ run();
|
|
|
252
253
|
* [createVendorRegistration](docs/sdks/vendors/README.md#createvendorregistration) - Create vendor registration
|
|
253
254
|
* [listVendorJobTitles](docs/sdks/vendors/README.md#listvendorjobtitles) - List vendor job titles
|
|
254
255
|
* [listVendorCredentials](docs/sdks/vendors/README.md#listvendorcredentials) - List Vendor Credentials
|
|
256
|
+
* [expediteTimeRemaining](docs/sdks/vendors/README.md#expeditetimeremaining) - Expedite time remaining
|
|
257
|
+
* [listVendorInvoices](docs/sdks/vendors/README.md#listvendorinvoices) - List vendor invoices
|
|
255
258
|
|
|
256
259
|
</details>
|
|
257
260
|
<!-- End Available Resources and Operations [operations] -->
|
|
@@ -282,7 +285,9 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|
|
282
285
|
- [`usersPassword`](docs/sdks/users/README.md#password) - Password reset
|
|
283
286
|
- [`usersPasswordResetRequest`](docs/sdks/users/README.md#passwordresetrequest) - Password reset request
|
|
284
287
|
- [`vendorsCreateVendorRegistration`](docs/sdks/vendors/README.md#createvendorregistration) - Create vendor registration
|
|
288
|
+
- [`vendorsExpediteTimeRemaining`](docs/sdks/vendors/README.md#expeditetimeremaining) - Expedite time remaining
|
|
285
289
|
- [`vendorsListVendorCredentials`](docs/sdks/vendors/README.md#listvendorcredentials) - List Vendor Credentials
|
|
290
|
+
- [`vendorsListVendorInvoices`](docs/sdks/vendors/README.md#listvendorinvoices) - List vendor invoices
|
|
286
291
|
- [`vendorsListVendorJobTitles`](docs/sdks/vendors/README.md#listvendorjobtitles) - List vendor job titles
|
|
287
292
|
|
|
288
293
|
</details>
|
|
@@ -321,12 +326,50 @@ To learn about this feature and how to get started, check
|
|
|
321
326
|
- [`useUsersPasswordMutation`](docs/sdks/users/README.md#password) - Password reset
|
|
322
327
|
- [`useUsersPasswordResetRequestMutation`](docs/sdks/users/README.md#passwordresetrequest) - Password reset request
|
|
323
328
|
- [`useVendorsCreateVendorRegistrationMutation`](docs/sdks/vendors/README.md#createvendorregistration) - Create vendor registration
|
|
329
|
+
- [`useVendorsExpediteTimeRemaining`](docs/sdks/vendors/README.md#expeditetimeremaining) - Expedite time remaining
|
|
324
330
|
- [`useVendorsListVendorCredentials`](docs/sdks/vendors/README.md#listvendorcredentials) - List Vendor Credentials
|
|
331
|
+
- [`useVendorsListVendorInvoices`](docs/sdks/vendors/README.md#listvendorinvoices) - List vendor invoices
|
|
325
332
|
- [`useVendorsListVendorJobTitles`](docs/sdks/vendors/README.md#listvendorjobtitles) - List vendor job titles
|
|
326
333
|
|
|
327
334
|
</details>
|
|
328
335
|
<!-- End React hooks with TanStack Query [react-query] -->
|
|
329
336
|
|
|
337
|
+
<!-- Start Pagination [pagination] -->
|
|
338
|
+
## Pagination
|
|
339
|
+
|
|
340
|
+
Some of the endpoints in this SDK support pagination. To use pagination, you
|
|
341
|
+
make your SDK calls as usual, but the returned response object will also be an
|
|
342
|
+
async iterable that can be consumed using the [`for await...of`][for-await-of]
|
|
343
|
+
syntax.
|
|
344
|
+
|
|
345
|
+
[for-await-of]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of
|
|
346
|
+
|
|
347
|
+
Here's an example of one such pagination call:
|
|
348
|
+
|
|
349
|
+
```typescript
|
|
350
|
+
import { GreenSecurity } from "@greensecurity/javascript-sdk";
|
|
351
|
+
|
|
352
|
+
const greenSecurity = new GreenSecurity();
|
|
353
|
+
|
|
354
|
+
async function run() {
|
|
355
|
+
const result = await greenSecurity.vendors.listVendorJobTitles({
|
|
356
|
+
sort: "job",
|
|
357
|
+
desc: true,
|
|
358
|
+
itemsPerPage: 25,
|
|
359
|
+
jobLike: "job",
|
|
360
|
+
});
|
|
361
|
+
|
|
362
|
+
for await (const page of result) {
|
|
363
|
+
// Handle the page
|
|
364
|
+
console.log(page);
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
run();
|
|
369
|
+
|
|
370
|
+
```
|
|
371
|
+
<!-- End Pagination [pagination] -->
|
|
372
|
+
|
|
330
373
|
<!-- Start Retries [retries] -->
|
|
331
374
|
## Retries
|
|
332
375
|
|