@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.
Files changed (159) hide show
  1. package/REACT_QUERY.md +68 -30
  2. package/README.md +43 -0
  3. package/bin/mcp-server.js +694 -51
  4. package/bin/mcp-server.js.map +28 -19
  5. package/funcs/organizationsListOrSearchFacilities.d.ts +4 -1
  6. package/funcs/organizationsListOrSearchFacilities.d.ts.map +1 -1
  7. package/funcs/organizationsListOrSearchFacilities.js +46 -9
  8. package/funcs/organizationsListOrSearchFacilities.js.map +1 -1
  9. package/funcs/supportArticlesGetSupportArticle.js +1 -1
  10. package/funcs/supportArticlesGetSupportArticle.js.map +1 -1
  11. package/funcs/supportArticlesListOrSearchSupportArticles.d.ts +4 -1
  12. package/funcs/supportArticlesListOrSearchSupportArticles.d.ts.map +1 -1
  13. package/funcs/supportArticlesListOrSearchSupportArticles.js +42 -7
  14. package/funcs/supportArticlesListOrSearchSupportArticles.js.map +1 -1
  15. package/funcs/vendorsExpediteTimeRemaining.d.ts +17 -0
  16. package/funcs/vendorsExpediteTimeRemaining.d.ts.map +1 -0
  17. package/funcs/vendorsExpediteTimeRemaining.js +120 -0
  18. package/funcs/vendorsExpediteTimeRemaining.js.map +1 -0
  19. package/funcs/vendorsListVendorInvoices.d.ts +24 -0
  20. package/funcs/vendorsListVendorInvoices.d.ts.map +1 -0
  21. package/funcs/vendorsListVendorInvoices.js +166 -0
  22. package/funcs/vendorsListVendorInvoices.js.map +1 -0
  23. package/funcs/vendorsListVendorJobTitles.d.ts +4 -1
  24. package/funcs/vendorsListVendorJobTitles.d.ts.map +1 -1
  25. package/funcs/vendorsListVendorJobTitles.js +39 -6
  26. package/funcs/vendorsListVendorJobTitles.js.map +1 -1
  27. package/jsr.json +1 -1
  28. package/lib/config.d.ts +2 -2
  29. package/lib/config.js +2 -2
  30. package/mcp-server/mcp-server.js +1 -1
  31. package/mcp-server/server.d.ts.map +1 -1
  32. package/mcp-server/server.js +5 -1
  33. package/mcp-server/server.js.map +1 -1
  34. package/mcp-server/tools/organizationsListOrSearchFacilities.js +1 -1
  35. package/mcp-server/tools/organizationsListOrSearchFacilities.js.map +1 -1
  36. package/mcp-server/tools/supportArticlesListOrSearchSupportArticles.js +1 -1
  37. package/mcp-server/tools/supportArticlesListOrSearchSupportArticles.js.map +1 -1
  38. package/mcp-server/tools/vendorsExpediteTimeRemaining.d.ts +8 -0
  39. package/mcp-server/tools/vendorsExpediteTimeRemaining.d.ts.map +1 -0
  40. package/mcp-server/tools/vendorsExpediteTimeRemaining.js +64 -0
  41. package/mcp-server/tools/vendorsExpediteTimeRemaining.js.map +1 -0
  42. package/mcp-server/tools/vendorsListVendorInvoices.d.ts +8 -0
  43. package/mcp-server/tools/vendorsListVendorInvoices.d.ts.map +1 -0
  44. package/mcp-server/tools/vendorsListVendorInvoices.js +68 -0
  45. package/mcp-server/tools/vendorsListVendorInvoices.js.map +1 -0
  46. package/mcp-server/tools/vendorsListVendorJobTitles.js +1 -1
  47. package/mcp-server/tools/vendorsListVendorJobTitles.js.map +1 -1
  48. package/models/components/expand.d.ts +3 -0
  49. package/models/components/expand.d.ts.map +1 -1
  50. package/models/components/expand.js +1 -0
  51. package/models/components/expand.js.map +1 -1
  52. package/models/components/index.d.ts +2 -0
  53. package/models/components/index.d.ts.map +1 -1
  54. package/models/components/index.js +2 -0
  55. package/models/components/index.js.map +1 -1
  56. package/models/components/invoice.d.ts +43 -0
  57. package/models/components/invoice.d.ts.map +1 -0
  58. package/models/components/invoice.js +91 -0
  59. package/models/components/invoice.js.map +1 -0
  60. package/models/components/invoiceitem.d.ts +40 -0
  61. package/models/components/invoiceitem.d.ts.map +1 -0
  62. package/models/components/invoiceitem.js +94 -0
  63. package/models/components/invoiceitem.js.map +1 -0
  64. package/models/operations/expeditetimeremaining.d.ts +60 -0
  65. package/models/operations/expeditetimeremaining.d.ts.map +1 -0
  66. package/models/operations/expeditetimeremaining.js +113 -0
  67. package/models/operations/expeditetimeremaining.js.map +1 -0
  68. package/models/operations/index.d.ts +2 -0
  69. package/models/operations/index.d.ts.map +1 -1
  70. package/models/operations/index.js +2 -0
  71. package/models/operations/index.js.map +1 -1
  72. package/models/operations/listorsearchfacilities.d.ts +25 -0
  73. package/models/operations/listorsearchfacilities.d.ts.map +1 -1
  74. package/models/operations/listorsearchfacilities.js +36 -1
  75. package/models/operations/listorsearchfacilities.js.map +1 -1
  76. package/models/operations/listorsearchsupportarticles.d.ts +25 -0
  77. package/models/operations/listorsearchsupportarticles.d.ts.map +1 -1
  78. package/models/operations/listorsearchsupportarticles.js +36 -1
  79. package/models/operations/listorsearchsupportarticles.js.map +1 -1
  80. package/models/operations/listvendorinvoices.d.ts +116 -0
  81. package/models/operations/listvendorinvoices.d.ts.map +1 -0
  82. package/models/operations/listvendorinvoices.js +155 -0
  83. package/models/operations/listvendorinvoices.js.map +1 -0
  84. package/models/operations/listvendorjobtitles.d.ts +25 -0
  85. package/models/operations/listvendorjobtitles.d.ts.map +1 -1
  86. package/models/operations/listvendorjobtitles.js +36 -1
  87. package/models/operations/listvendorjobtitles.js.map +1 -1
  88. package/package.json +1 -1
  89. package/react-query/index.d.ts +2 -0
  90. package/react-query/index.d.ts.map +1 -1
  91. package/react-query/index.js +2 -0
  92. package/react-query/index.js.map +1 -1
  93. package/react-query/organizationsListOrSearchFacilities.d.ts +54 -3
  94. package/react-query/organizationsListOrSearchFacilities.d.ts.map +1 -1
  95. package/react-query/organizationsListOrSearchFacilities.js +89 -0
  96. package/react-query/organizationsListOrSearchFacilities.js.map +1 -1
  97. package/react-query/supportArticlesListOrSearchSupportArticles.d.ts +28 -3
  98. package/react-query/supportArticlesListOrSearchSupportArticles.d.ts.map +1 -1
  99. package/react-query/supportArticlesListOrSearchSupportArticles.js +58 -0
  100. package/react-query/supportArticlesListOrSearchSupportArticles.js.map +1 -1
  101. package/react-query/vendorsExpediteTimeRemaining.d.ts +30 -0
  102. package/react-query/vendorsExpediteTimeRemaining.d.ts.map +1 -0
  103. package/react-query/vendorsExpediteTimeRemaining.js +96 -0
  104. package/react-query/vendorsExpediteTimeRemaining.js.map +1 -0
  105. package/react-query/vendorsListVendorInvoices.d.ts +96 -0
  106. package/react-query/vendorsListVendorInvoices.d.ts.map +1 -0
  107. package/react-query/vendorsListVendorInvoices.js +178 -0
  108. package/react-query/vendorsListVendorInvoices.js.map +1 -0
  109. package/react-query/vendorsListVendorJobTitles.d.ts +28 -3
  110. package/react-query/vendorsListVendorJobTitles.d.ts.map +1 -1
  111. package/react-query/vendorsListVendorJobTitles.js +59 -0
  112. package/react-query/vendorsListVendorJobTitles.js.map +1 -1
  113. package/sdk/organizations.d.ts +4 -1
  114. package/sdk/organizations.d.ts.map +1 -1
  115. package/sdk/organizations.js +2 -1
  116. package/sdk/organizations.js.map +1 -1
  117. package/sdk/supportarticles.d.ts +4 -1
  118. package/sdk/supportarticles.d.ts.map +1 -1
  119. package/sdk/supportarticles.js +2 -1
  120. package/sdk/supportarticles.js.map +1 -1
  121. package/sdk/vendors.d.ts +24 -1
  122. package/sdk/vendors.d.ts.map +1 -1
  123. package/sdk/vendors.js +26 -1
  124. package/sdk/vendors.js.map +1 -1
  125. package/src/__tests__/supportarticles.test.ts +2 -1
  126. package/src/__tests__/vendors.test.ts +58 -1
  127. package/src/funcs/organizationsListOrSearchFacilities.ts +116 -42
  128. package/src/funcs/supportArticlesGetSupportArticle.ts +1 -1
  129. package/src/funcs/supportArticlesListOrSearchSupportArticles.ts +100 -31
  130. package/src/funcs/vendorsExpediteTimeRemaining.ts +171 -0
  131. package/src/funcs/vendorsListVendorInvoices.ts +255 -0
  132. package/src/funcs/vendorsListVendorJobTitles.ts +101 -33
  133. package/src/lib/config.ts +2 -2
  134. package/src/mcp-server/mcp-server.ts +1 -1
  135. package/src/mcp-server/server.ts +5 -1
  136. package/src/mcp-server/tools/organizationsListOrSearchFacilities.ts +1 -1
  137. package/src/mcp-server/tools/supportArticlesListOrSearchSupportArticles.ts +1 -1
  138. package/src/mcp-server/tools/vendorsExpediteTimeRemaining.ts +37 -0
  139. package/src/mcp-server/tools/vendorsListVendorInvoices.ts +41 -0
  140. package/src/mcp-server/tools/vendorsListVendorJobTitles.ts +1 -1
  141. package/src/models/components/expand.ts +1 -0
  142. package/src/models/components/index.ts +2 -0
  143. package/src/models/components/invoice.ts +99 -0
  144. package/src/models/components/invoiceitem.ts +98 -0
  145. package/src/models/operations/expeditetimeremaining.ts +152 -0
  146. package/src/models/operations/index.ts +2 -0
  147. package/src/models/operations/listorsearchfacilities.ts +72 -0
  148. package/src/models/operations/listorsearchsupportarticles.ts +75 -0
  149. package/src/models/operations/listvendorinvoices.ts +252 -0
  150. package/src/models/operations/listvendorjobtitles.ts +68 -0
  151. package/src/react-query/index.ts +2 -0
  152. package/src/react-query/organizationsListOrSearchFacilities.ts +179 -1
  153. package/src/react-query/supportArticlesListOrSearchSupportArticles.ts +149 -1
  154. package/src/react-query/vendorsExpediteTimeRemaining.ts +165 -0
  155. package/src/react-query/vendorsListVendorInvoices.ts +364 -0
  156. package/src/react-query/vendorsListVendorJobTitles.ts +149 -1
  157. package/src/sdk/organizations.ts +5 -2
  158. package/src/sdk/supportarticles.ts +8 -2
  159. package/src/sdk/vendors.ts +47 -2
@@ -8,6 +8,7 @@ const supportArticlesGetSupportArticle_js_1 = require("../funcs/supportArticlesG
8
8
  const supportArticlesListOrSearchSupportArticles_js_1 = require("../funcs/supportArticlesListOrSearchSupportArticles.js");
9
9
  const sdks_js_1 = require("../lib/sdks.js");
10
10
  const fp_js_1 = require("../types/fp.js");
11
+ const operations_js_1 = require("../types/operations.js");
11
12
  class SupportArticles extends sdks_js_1.ClientSDK {
12
13
  /**
13
14
  * List or search support articles
@@ -16,7 +17,7 @@ class SupportArticles extends sdks_js_1.ClientSDK {
16
17
  * List or search support articles for FAQ.
17
18
  */
18
19
  async listOrSearchSupportArticles(request, options) {
19
- return (0, fp_js_1.unwrapAsync)((0, supportArticlesListOrSearchSupportArticles_js_1.supportArticlesListOrSearchSupportArticles)(this, request, options));
20
+ return (0, operations_js_1.unwrapResultIterator)((0, supportArticlesListOrSearchSupportArticles_js_1.supportArticlesListOrSearchSupportArticles)(this, request, options));
20
21
  }
21
22
  /**
22
23
  * Get support article
@@ -1 +1 @@
1
- {"version":3,"file":"supportarticles.js","sourceRoot":"","sources":["../src/sdk/supportarticles.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,sGAAgG;AAChG,0HAAoH;AACpH,4CAA2D;AAG3D,0CAA6C;AAE7C,MAAa,eAAgB,SAAQ,mBAAS;IAC5C;;;;;OAKG;IACH,KAAK,CAAC,2BAA2B,CAC/B,OAAsD,EACtD,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,0FAA0C,EAC3D,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAA4C,EAC5C,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,sEAAgC,EACjD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF;AAzCD,0CAyCC"}
1
+ {"version":3,"file":"supportarticles.js","sourceRoot":"","sources":["../src/sdk/supportarticles.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,sGAAgG;AAChG,0HAAoH;AACpH,4CAA2D;AAG3D,0CAA6C;AAC7C,0DAA4E;AAE5E,MAAa,eAAgB,SAAQ,mBAAS;IAC5C;;;;;OAKG;IACH,KAAK,CAAC,2BAA2B,CAC/B,OAAsD,EACtD,OAAwB;QAOxB,OAAO,IAAA,oCAAoB,EAAC,IAAA,0FAA0C,EACpE,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAA4C,EAC5C,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,sEAAgC,EACjD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF;AA9CD,0CA8CC"}
package/sdk/vendors.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ClientSDK, RequestOptions } from "../lib/sdks.js";
2
2
  import * as operations from "../models/operations/index.js";
3
+ import { PageIterator } from "../types/operations.js";
3
4
  export declare class Vendors extends ClientSDK {
4
5
  /**
5
6
  * Create vendor registration
@@ -14,7 +15,9 @@ export declare class Vendors extends ClientSDK {
14
15
  * @remarks
15
16
  * List valid job titles for Vendors. This can be used during sign up or in a filter.
16
17
  */
17
- listVendorJobTitles(request: operations.ListVendorJobTitlesRequest, options?: RequestOptions): Promise<operations.ListVendorJobTitlesListVendorJobTitlesOk>;
18
+ listVendorJobTitles(request: operations.ListVendorJobTitlesRequest, options?: RequestOptions): Promise<PageIterator<operations.ListVendorJobTitlesResponse, {
19
+ page: number;
20
+ }>>;
18
21
  /**
19
22
  * List Vendor Credentials
20
23
  *
@@ -22,5 +25,25 @@ export declare class Vendors extends ClientSDK {
22
25
  * Lists vendor credentials, required credentials, and company credentials. Utilized in Vendor Dashboard.
23
26
  */
24
27
  listVendorCredentials(request: operations.ListVendorCredentialsRequest, options?: RequestOptions): Promise<operations.ListVendorCredentialsResponseBody>;
28
+ /**
29
+ * Expedite time remaining
30
+ *
31
+ * @remarks
32
+ * For vendors who have a paid 24-hour expedite credentials invoice, get the remaining time (in seconds) for which submitted credentials will be expedited.
33
+ */
34
+ expediteTimeRemaining(request: operations.ExpediteTimeRemainingRequest, options?: RequestOptions): Promise<operations.ExpediteTimeRemainingResponseBody>;
35
+ /**
36
+ * List vendor invoices
37
+ *
38
+ * @remarks
39
+ * List invoices for Vendors
40
+ *
41
+ * Available `expand` scopes are:
42
+ *
43
+ * invoice.line_items
44
+ */
45
+ listVendorInvoices(request: operations.ListVendorInvoicesRequest, options?: RequestOptions): Promise<PageIterator<operations.ListVendorInvoicesResponse, {
46
+ page: number;
47
+ }>>;
25
48
  }
26
49
  //# sourceMappingURL=vendors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vendors.d.ts","sourceRoot":"","sources":["../src/sdk/vendors.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAG5D,qBAAa,OAAQ,SAAQ,SAAS;IACpC;;;;;OAKG;IACG,wBAAwB,CAC5B,OAAO,EAAE,UAAU,CAAC,mCAAmC,EACvD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CACR,UAAU,CAAC,uDAAuD,CACnE;IAQD;;;;;OAKG;IACG,mBAAmB,CACvB,OAAO,EAAE,UAAU,CAAC,0BAA0B,EAC9C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,wCAAwC,CAAC;IAQ/D;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC;CAOzD"}
1
+ {"version":3,"file":"vendors.d.ts","sourceRoot":"","sources":["../src/sdk/vendors.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAwB,MAAM,wBAAwB,CAAC;AAE5E,qBAAa,OAAQ,SAAQ,SAAS;IACpC;;;;;OAKG;IACG,wBAAwB,CAC5B,OAAO,EAAE,UAAU,CAAC,mCAAmC,EACvD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CACR,UAAU,CAAC,uDAAuD,CACnE;IAQD;;;;;OAKG;IACG,mBAAmB,CACvB,OAAO,EAAE,UAAU,CAAC,0BAA0B,EAC9C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CACR,YAAY,CAAC,UAAU,CAAC,2BAA2B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CACvE;IAQD;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC;IAQxD;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC;IAQxD;;;;;;;;;OASG;IACG,kBAAkB,CACtB,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CACR,YAAY,CAAC,UAAU,CAAC,0BAA0B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CACtE;CAOF"}
package/sdk/vendors.js CHANGED
@@ -5,10 +5,13 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Vendors = void 0;
7
7
  const vendorsCreateVendorRegistration_js_1 = require("../funcs/vendorsCreateVendorRegistration.js");
8
+ const vendorsExpediteTimeRemaining_js_1 = require("../funcs/vendorsExpediteTimeRemaining.js");
8
9
  const vendorsListVendorCredentials_js_1 = require("../funcs/vendorsListVendorCredentials.js");
10
+ const vendorsListVendorInvoices_js_1 = require("../funcs/vendorsListVendorInvoices.js");
9
11
  const vendorsListVendorJobTitles_js_1 = require("../funcs/vendorsListVendorJobTitles.js");
10
12
  const sdks_js_1 = require("../lib/sdks.js");
11
13
  const fp_js_1 = require("../types/fp.js");
14
+ const operations_js_1 = require("../types/operations.js");
12
15
  class Vendors extends sdks_js_1.ClientSDK {
13
16
  /**
14
17
  * Create vendor registration
@@ -26,7 +29,7 @@ class Vendors extends sdks_js_1.ClientSDK {
26
29
  * List valid job titles for Vendors. This can be used during sign up or in a filter.
27
30
  */
28
31
  async listVendorJobTitles(request, options) {
29
- return (0, fp_js_1.unwrapAsync)((0, vendorsListVendorJobTitles_js_1.vendorsListVendorJobTitles)(this, request, options));
32
+ return (0, operations_js_1.unwrapResultIterator)((0, vendorsListVendorJobTitles_js_1.vendorsListVendorJobTitles)(this, request, options));
30
33
  }
31
34
  /**
32
35
  * List Vendor Credentials
@@ -37,6 +40,28 @@ class Vendors extends sdks_js_1.ClientSDK {
37
40
  async listVendorCredentials(request, options) {
38
41
  return (0, fp_js_1.unwrapAsync)((0, vendorsListVendorCredentials_js_1.vendorsListVendorCredentials)(this, request, options));
39
42
  }
43
+ /**
44
+ * Expedite time remaining
45
+ *
46
+ * @remarks
47
+ * For vendors who have a paid 24-hour expedite credentials invoice, get the remaining time (in seconds) for which submitted credentials will be expedited.
48
+ */
49
+ async expediteTimeRemaining(request, options) {
50
+ return (0, fp_js_1.unwrapAsync)((0, vendorsExpediteTimeRemaining_js_1.vendorsExpediteTimeRemaining)(this, request, options));
51
+ }
52
+ /**
53
+ * List vendor invoices
54
+ *
55
+ * @remarks
56
+ * List invoices for Vendors
57
+ *
58
+ * Available `expand` scopes are:
59
+ *
60
+ * invoice.line_items
61
+ */
62
+ async listVendorInvoices(request, options) {
63
+ return (0, operations_js_1.unwrapResultIterator)((0, vendorsListVendorInvoices_js_1.vendorsListVendorInvoices)(this, request, options));
64
+ }
40
65
  }
41
66
  exports.Vendors = Vendors;
42
67
  //# sourceMappingURL=vendors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vendors.js","sourceRoot":"","sources":["../src/sdk/vendors.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,oGAA8F;AAC9F,8FAAwF;AACxF,0FAAoF;AACpF,4CAA2D;AAE3D,0CAA6C;AAE7C,MAAa,OAAQ,SAAQ,mBAAS;IACpC;;;;;OAKG;IACH,KAAK,CAAC,wBAAwB,CAC5B,OAAuD,EACvD,OAAwB;QAIxB,OAAO,IAAA,mBAAW,EAAC,IAAA,oEAA+B,EAChD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,OAA8C,EAC9C,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,0DAA0B,EAC3C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAgD,EAChD,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,8DAA4B,EAC7C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF;AArDD,0BAqDC"}
1
+ {"version":3,"file":"vendors.js","sourceRoot":"","sources":["../src/sdk/vendors.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,oGAA8F;AAC9F,8FAAwF;AACxF,8FAAwF;AACxF,wFAAkF;AAClF,0FAAoF;AACpF,4CAA2D;AAE3D,0CAA6C;AAC7C,0DAA4E;AAE5E,MAAa,OAAQ,SAAQ,mBAAS;IACpC;;;;;OAKG;IACH,KAAK,CAAC,wBAAwB,CAC5B,OAAuD,EACvD,OAAwB;QAIxB,OAAO,IAAA,mBAAW,EAAC,IAAA,oEAA+B,EAChD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CACvB,OAA8C,EAC9C,OAAwB;QAIxB,OAAO,IAAA,oCAAoB,EAAC,IAAA,0DAA0B,EACpD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAgD,EAChD,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,8DAA4B,EAC7C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAgD,EAChD,OAAwB;QAExB,OAAO,IAAA,mBAAW,EAAC,IAAA,8DAA4B,EAC7C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAA6C,EAC7C,OAAwB;QAIxB,OAAO,IAAA,oCAAoB,EAAC,IAAA,wDAAyB,EACnD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF;AA/FD,0BA+FC"}
@@ -24,7 +24,8 @@ test("Support Articles List Or Search Support Articles", async () => {
24
24
  itemsPerPage: 25,
25
25
  });
26
26
  expect(result).toBeDefined();
27
- expect(result).toEqual({
27
+ expect(result.result).toBeDefined();
28
+ expect(result.result).toEqual({
28
29
  pager: {
29
30
  baseUrl: "api/vendors/job_titles",
30
31
  sort: "job,title",
@@ -55,7 +55,8 @@ test("Vendors List Vendor Job Titles", async () => {
55
55
  jobLike: "job",
56
56
  });
57
57
  expect(result).toBeDefined();
58
- expect(result).toEqual({
58
+ expect(result.result).toBeDefined();
59
+ expect(result.result).toEqual({
59
60
  pager: {
60
61
  baseUrl: "api/vendors/job_titles",
61
62
  sort: "job,title",
@@ -73,3 +74,59 @@ test("Vendors List Vendor Job Titles", async () => {
73
74
  ],
74
75
  });
75
76
  });
77
+
78
+ test("Vendors Expedite Time Remaining", async () => {
79
+ const testHttpClient = createTestHTTPClient("expediteTimeRemaining");
80
+
81
+ const greenSecurity = new GreenSecurity({
82
+ serverURL: "https://dev.repconnex.com:3000/api",
83
+ security: {
84
+ bearerJwt: "",
85
+ },
86
+ httpClient: testHttpClient,
87
+ });
88
+
89
+ const result = await greenSecurity.vendors.expediteTimeRemaining({
90
+ vendorIdOrMe: "<value>",
91
+ });
92
+ expect(result).toBeDefined();
93
+ expect(result).toEqual({
94
+ secondsRemaining: 664512,
95
+ });
96
+ });
97
+
98
+ test("Vendors List Vendor Invoices", async () => {
99
+ const testHttpClient = createTestHTTPClient("listVendorInvoices");
100
+
101
+ const greenSecurity = new GreenSecurity({
102
+ serverURL: "https://dev.repconnex.com:3000/api",
103
+ security: {
104
+ bearerJwt: "",
105
+ },
106
+ httpClient: testHttpClient,
107
+ });
108
+
109
+ const result = await greenSecurity.vendors.listVendorInvoices({
110
+ sort: "job",
111
+ desc: 1,
112
+ itemsPerPage: 25,
113
+ expand: [
114
+ "facility.system",
115
+ ],
116
+ vendorIdOrMe: "<value>",
117
+ });
118
+ expect(result).toBeDefined();
119
+ expect(result.result).toBeDefined();
120
+ expect(result.result).toEqual({
121
+ items: [],
122
+ pager: {
123
+ baseUrl: "api/vendors/job_titles",
124
+ sort: "name",
125
+ desc: 1,
126
+ itemCount: 228,
127
+ itemsPerPage: 746654,
128
+ page: 1,
129
+ useUrlParams: true,
130
+ },
131
+ });
132
+ });
@@ -3,7 +3,8 @@
3
3
  */
4
4
 
5
5
  import { GreenSecurityCore } from "../core.js";
6
- import { encodeFormQuery } from "../lib/encodings.js";
6
+ import { dlv } from "../lib/dlv.js";
7
+ import { encodeFormQuery, queryJoin } from "../lib/encodings.js";
7
8
  import * as M from "../lib/matchers.js";
8
9
  import { compactMap } from "../lib/primitives.js";
9
10
  import { safeParse } from "../lib/schemas.js";
@@ -22,6 +23,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
22
23
  import * as operations from "../models/operations/index.js";
23
24
  import { APICall, APIPromise } from "../types/async.js";
24
25
  import { Result } from "../types/fp.js";
26
+ import {
27
+ createPageIterator,
28
+ haltIterator,
29
+ PageIterator,
30
+ Paginator,
31
+ } from "../types/operations.js";
25
32
 
26
33
  /**
27
34
  * List or search facilities
@@ -47,15 +54,18 @@ export function organizationsListOrSearchFacilities(
47
54
  request: operations.ListOrSearchFacilitiesRequest,
48
55
  options?: RequestOptions,
49
56
  ): APIPromise<
50
- Result<
51
- operations.ListOrSearchFacilitiesListOrSearchFacilitiesOk,
52
- | APIError
53
- | SDKValidationError
54
- | UnexpectedClientError
55
- | InvalidRequestError
56
- | RequestAbortedError
57
- | RequestTimeoutError
58
- | ConnectionError
57
+ PageIterator<
58
+ Result<
59
+ operations.ListOrSearchFacilitiesResponse,
60
+ | APIError
61
+ | SDKValidationError
62
+ | UnexpectedClientError
63
+ | InvalidRequestError
64
+ | RequestAbortedError
65
+ | RequestTimeoutError
66
+ | ConnectionError
67
+ >,
68
+ { page: number }
59
69
  >
60
70
  > {
61
71
  return new APIPromise($do(
@@ -71,15 +81,18 @@ async function $do(
71
81
  options?: RequestOptions,
72
82
  ): Promise<
73
83
  [
74
- Result<
75
- operations.ListOrSearchFacilitiesListOrSearchFacilitiesOk,
76
- | APIError
77
- | SDKValidationError
78
- | UnexpectedClientError
79
- | InvalidRequestError
80
- | RequestAbortedError
81
- | RequestTimeoutError
82
- | ConnectionError
84
+ PageIterator<
85
+ Result<
86
+ operations.ListOrSearchFacilitiesResponse,
87
+ | APIError
88
+ | SDKValidationError
89
+ | UnexpectedClientError
90
+ | InvalidRequestError
91
+ | RequestAbortedError
92
+ | RequestTimeoutError
93
+ | ConnectionError
94
+ >,
95
+ { page: number }
83
96
  >,
84
97
  APICall,
85
98
  ]
@@ -91,24 +104,28 @@ async function $do(
91
104
  "Input validation failed",
92
105
  );
93
106
  if (!parsed.ok) {
94
- return [parsed, { status: "invalid" }];
107
+ return [haltIterator(parsed), { status: "invalid" }];
95
108
  }
96
109
  const payload = parsed.value;
97
110
  const body = null;
98
111
 
99
112
  const path = pathToFunc("/facilities")();
100
113
 
101
- const query = encodeFormQuery({
102
- "active_status": payload.active_status,
103
- "desc": payload.desc,
104
- "expand": payload.expand,
105
- "items_per_page": payload.items_per_page,
106
- "name_like": payload.name_like,
107
- "page": payload.page,
108
- "sort": payload.sort,
109
- "state_like": payload.state_like,
110
- "system_id": payload.system_id,
111
- });
114
+ const query = queryJoin(
115
+ encodeFormQuery({
116
+ "expand": payload.expand,
117
+ }, { explode: false }),
118
+ encodeFormQuery({
119
+ "active_status": payload.active_status,
120
+ "desc": payload.desc,
121
+ "items_per_page": payload.items_per_page,
122
+ "name_like": payload.name_like,
123
+ "page": payload.page,
124
+ "sort": payload.sort,
125
+ "state_like": payload.state_like,
126
+ "system_id": payload.system_id,
127
+ }),
128
+ );
112
129
 
113
130
  const headers = new Headers(compactMap({
114
131
  Accept: "application/json",
@@ -142,7 +159,7 @@ async function $do(
142
159
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
143
160
  }, options);
144
161
  if (!requestRes.ok) {
145
- return [requestRes, { status: "invalid" }];
162
+ return [haltIterator(requestRes), { status: "invalid" }];
146
163
  }
147
164
  const req = requestRes.value;
148
165
 
@@ -153,12 +170,16 @@ async function $do(
153
170
  retryCodes: context.retryCodes,
154
171
  });
155
172
  if (!doResult.ok) {
156
- return [doResult, { status: "request-error", request: req }];
173
+ return [haltIterator(doResult), { status: "request-error", request: req }];
157
174
  }
158
175
  const response = doResult.value;
159
176
 
160
- const [result] = await M.match<
161
- operations.ListOrSearchFacilitiesListOrSearchFacilitiesOk,
177
+ const responseFields = {
178
+ HttpMeta: { Response: response, Request: req },
179
+ };
180
+
181
+ const [result, raw] = await M.match<
182
+ operations.ListOrSearchFacilitiesResponse,
162
183
  | APIError
163
184
  | SDKValidationError
164
185
  | UnexpectedClientError
@@ -167,16 +188,69 @@ async function $do(
167
188
  | RequestTimeoutError
168
189
  | ConnectionError
169
190
  >(
170
- M.json(
171
- 200,
172
- operations.ListOrSearchFacilitiesListOrSearchFacilitiesOk$inboundSchema,
173
- ),
191
+ M.json(200, operations.ListOrSearchFacilitiesResponse$inboundSchema, {
192
+ key: "Result",
193
+ }),
174
194
  M.fail("4XX"),
175
195
  M.fail("5XX"),
176
- )(response);
196
+ )(response, { extraFields: responseFields });
177
197
  if (!result.ok) {
178
- return [result, { status: "complete", request: req, response }];
198
+ return [haltIterator(result), {
199
+ status: "complete",
200
+ request: req,
201
+ response,
202
+ }];
179
203
  }
180
204
 
181
- return [result, { status: "complete", request: req, response }];
205
+ const nextFunc = (
206
+ responseData: unknown,
207
+ ): {
208
+ next: Paginator<
209
+ Result<
210
+ operations.ListOrSearchFacilitiesResponse,
211
+ | APIError
212
+ | SDKValidationError
213
+ | UnexpectedClientError
214
+ | InvalidRequestError
215
+ | RequestAbortedError
216
+ | RequestTimeoutError
217
+ | ConnectionError
218
+ >
219
+ >;
220
+ "~next"?: { page: number };
221
+ } => {
222
+ const page = request?.page ?? 1;
223
+ const nextPage = page + 1;
224
+
225
+ if (!responseData) {
226
+ return { next: () => null };
227
+ }
228
+ const results = dlv(responseData, "items");
229
+ if (!Array.isArray(results) || !results.length) {
230
+ return { next: () => null };
231
+ }
232
+ const limit = request?.itemsPerPage ?? 0;
233
+ if (results.length < limit) {
234
+ return { next: () => null };
235
+ }
236
+
237
+ const nextVal = () =>
238
+ organizationsListOrSearchFacilities(
239
+ client,
240
+ {
241
+ ...request,
242
+ page: nextPage,
243
+ },
244
+ options,
245
+ );
246
+
247
+ return { next: nextVal, "~next": { page: nextPage } };
248
+ };
249
+
250
+ const page = { ...result, ...nextFunc(raw) };
251
+ return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, {
252
+ status: "complete",
253
+ request: req,
254
+ response,
255
+ }];
182
256
  }
@@ -104,7 +104,7 @@ async function $do(
104
104
 
105
105
  const query = encodeFormQuery({
106
106
  "expand": payload.expand,
107
- });
107
+ }, { explode: false });
108
108
 
109
109
  const headers = new Headers(compactMap({
110
110
  Accept: "application/json",
@@ -3,6 +3,7 @@
3
3
  */
4
4
 
5
5
  import { GreenSecurityCore } from "../core.js";
6
+ import { dlv } from "../lib/dlv.js";
6
7
  import { encodeFormQuery } from "../lib/encodings.js";
7
8
  import * as M from "../lib/matchers.js";
8
9
  import { compactMap } from "../lib/primitives.js";
@@ -22,6 +23,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
22
23
  import * as operations from "../models/operations/index.js";
23
24
  import { APICall, APIPromise } from "../types/async.js";
24
25
  import { Result } from "../types/fp.js";
26
+ import {
27
+ createPageIterator,
28
+ haltIterator,
29
+ PageIterator,
30
+ Paginator,
31
+ } from "../types/operations.js";
25
32
 
26
33
  /**
27
34
  * List or search support articles
@@ -34,15 +41,18 @@ export function supportArticlesListOrSearchSupportArticles(
34
41
  request: operations.ListOrSearchSupportArticlesRequest,
35
42
  options?: RequestOptions,
36
43
  ): APIPromise<
37
- Result<
38
- operations.ListOrSearchSupportArticlesListOrSearchArticlesOk,
39
- | APIError
40
- | SDKValidationError
41
- | UnexpectedClientError
42
- | InvalidRequestError
43
- | RequestAbortedError
44
- | RequestTimeoutError
45
- | ConnectionError
44
+ PageIterator<
45
+ Result<
46
+ operations.ListOrSearchSupportArticlesResponse,
47
+ | APIError
48
+ | SDKValidationError
49
+ | UnexpectedClientError
50
+ | InvalidRequestError
51
+ | RequestAbortedError
52
+ | RequestTimeoutError
53
+ | ConnectionError
54
+ >,
55
+ { page: number }
46
56
  >
47
57
  > {
48
58
  return new APIPromise($do(
@@ -58,15 +68,18 @@ async function $do(
58
68
  options?: RequestOptions,
59
69
  ): Promise<
60
70
  [
61
- Result<
62
- operations.ListOrSearchSupportArticlesListOrSearchArticlesOk,
63
- | APIError
64
- | SDKValidationError
65
- | UnexpectedClientError
66
- | InvalidRequestError
67
- | RequestAbortedError
68
- | RequestTimeoutError
69
- | ConnectionError
71
+ PageIterator<
72
+ Result<
73
+ operations.ListOrSearchSupportArticlesResponse,
74
+ | APIError
75
+ | SDKValidationError
76
+ | UnexpectedClientError
77
+ | InvalidRequestError
78
+ | RequestAbortedError
79
+ | RequestTimeoutError
80
+ | ConnectionError
81
+ >,
82
+ { page: number }
70
83
  >,
71
84
  APICall,
72
85
  ]
@@ -78,7 +91,7 @@ async function $do(
78
91
  "Input validation failed",
79
92
  );
80
93
  if (!parsed.ok) {
81
- return [parsed, { status: "invalid" }];
94
+ return [haltIterator(parsed), { status: "invalid" }];
82
95
  }
83
96
  const payload = parsed.value;
84
97
  const body = null;
@@ -124,7 +137,7 @@ async function $do(
124
137
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
125
138
  }, options);
126
139
  if (!requestRes.ok) {
127
- return [requestRes, { status: "invalid" }];
140
+ return [haltIterator(requestRes), { status: "invalid" }];
128
141
  }
129
142
  const req = requestRes.value;
130
143
 
@@ -135,12 +148,16 @@ async function $do(
135
148
  retryCodes: context.retryCodes,
136
149
  });
137
150
  if (!doResult.ok) {
138
- return [doResult, { status: "request-error", request: req }];
151
+ return [haltIterator(doResult), { status: "request-error", request: req }];
139
152
  }
140
153
  const response = doResult.value;
141
154
 
142
- const [result] = await M.match<
143
- operations.ListOrSearchSupportArticlesListOrSearchArticlesOk,
155
+ const responseFields = {
156
+ HttpMeta: { Response: response, Request: req },
157
+ };
158
+
159
+ const [result, raw] = await M.match<
160
+ operations.ListOrSearchSupportArticlesResponse,
144
161
  | APIError
145
162
  | SDKValidationError
146
163
  | UnexpectedClientError
@@ -149,17 +166,69 @@ async function $do(
149
166
  | RequestTimeoutError
150
167
  | ConnectionError
151
168
  >(
152
- M.json(
153
- 200,
154
- operations
155
- .ListOrSearchSupportArticlesListOrSearchArticlesOk$inboundSchema,
156
- ),
169
+ M.json(200, operations.ListOrSearchSupportArticlesResponse$inboundSchema, {
170
+ key: "Result",
171
+ }),
157
172
  M.fail("4XX"),
158
173
  M.fail("5XX"),
159
- )(response);
174
+ )(response, { extraFields: responseFields });
160
175
  if (!result.ok) {
161
- return [result, { status: "complete", request: req, response }];
176
+ return [haltIterator(result), {
177
+ status: "complete",
178
+ request: req,
179
+ response,
180
+ }];
162
181
  }
163
182
 
164
- return [result, { status: "complete", request: req, response }];
183
+ const nextFunc = (
184
+ responseData: unknown,
185
+ ): {
186
+ next: Paginator<
187
+ Result<
188
+ operations.ListOrSearchSupportArticlesResponse,
189
+ | APIError
190
+ | SDKValidationError
191
+ | UnexpectedClientError
192
+ | InvalidRequestError
193
+ | RequestAbortedError
194
+ | RequestTimeoutError
195
+ | ConnectionError
196
+ >
197
+ >;
198
+ "~next"?: { page: number };
199
+ } => {
200
+ const page = request?.page ?? 1;
201
+ const nextPage = page + 1;
202
+
203
+ if (!responseData) {
204
+ return { next: () => null };
205
+ }
206
+ const results = dlv(responseData, "items");
207
+ if (!Array.isArray(results) || !results.length) {
208
+ return { next: () => null };
209
+ }
210
+ const limit = request?.itemsPerPage ?? 0;
211
+ if (results.length < limit) {
212
+ return { next: () => null };
213
+ }
214
+
215
+ const nextVal = () =>
216
+ supportArticlesListOrSearchSupportArticles(
217
+ client,
218
+ {
219
+ ...request,
220
+ page: nextPage,
221
+ },
222
+ options,
223
+ );
224
+
225
+ return { next: nextVal, "~next": { page: nextPage } };
226
+ };
227
+
228
+ const page = { ...result, ...nextFunc(raw) };
229
+ return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, {
230
+ status: "complete",
231
+ request: req,
232
+ response,
233
+ }];
165
234
  }