@greensecurity/javascript-sdk 0.43.1-beta.28 → 0.43.1-beta.30

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 (189) hide show
  1. package/README.md +6 -0
  2. package/dist/commonjs/__tests__/vendorscans.test.js +36 -0
  3. package/dist/commonjs/__tests__/vendorscans.test.js.map +1 -1
  4. package/dist/commonjs/__tests__/zones.test.js +28 -6
  5. package/dist/commonjs/__tests__/zones.test.js.map +1 -1
  6. package/dist/commonjs/funcs/vendorScansGetNextScreeningQuestion.d.ts +23 -0
  7. package/dist/commonjs/funcs/vendorScansGetNextScreeningQuestion.d.ts.map +1 -0
  8. package/dist/commonjs/funcs/vendorScansGetNextScreeningQuestion.js +133 -0
  9. package/dist/commonjs/funcs/vendorScansGetNextScreeningQuestion.js.map +1 -0
  10. package/dist/commonjs/funcs/vendorScansSubmitScreeningResponse.d.ts +22 -0
  11. package/dist/commonjs/funcs/vendorScansSubmitScreeningResponse.d.ts.map +1 -0
  12. package/dist/commonjs/funcs/vendorScansSubmitScreeningResponse.js +127 -0
  13. package/dist/commonjs/funcs/vendorScansSubmitScreeningResponse.js.map +1 -0
  14. package/dist/commonjs/lib/config.d.ts +2 -2
  15. package/dist/commonjs/lib/config.js +2 -2
  16. package/dist/commonjs/models/components/index.d.ts +3 -1
  17. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  18. package/dist/commonjs/models/components/index.js +3 -1
  19. package/dist/commonjs/models/components/index.js.map +1 -1
  20. package/dist/commonjs/models/components/screeninganswer.d.ts +4 -4
  21. package/dist/commonjs/models/components/screeninganswer.d.ts.map +1 -1
  22. package/dist/commonjs/models/components/screeninganswer.js +4 -4
  23. package/dist/commonjs/models/components/screeninganswer.js.map +1 -1
  24. package/dist/commonjs/models/components/screeningansweractionsummary.d.ts +30 -0
  25. package/dist/commonjs/models/components/screeningansweractionsummary.d.ts.map +1 -0
  26. package/dist/commonjs/models/components/{handoff.js → screeningansweractionsummary.js} +11 -20
  27. package/dist/commonjs/models/components/screeningansweractionsummary.js.map +1 -0
  28. package/dist/commonjs/models/components/screeningquestion.d.ts +4 -4
  29. package/dist/commonjs/models/components/screeningquestion.d.ts.map +1 -1
  30. package/dist/commonjs/models/components/screeningquestion.js +5 -4
  31. package/dist/commonjs/models/components/screeningquestion.js.map +1 -1
  32. package/dist/commonjs/models/components/vendorscan.d.ts +3 -0
  33. package/dist/commonjs/models/components/vendorscan.d.ts.map +1 -1
  34. package/dist/commonjs/models/components/vendorscan.js +5 -0
  35. package/dist/commonjs/models/components/vendorscan.js.map +1 -1
  36. package/dist/commonjs/models/components/vendorscanscreeninganswer.d.ts +33 -0
  37. package/dist/commonjs/models/components/vendorscanscreeninganswer.d.ts.map +1 -0
  38. package/dist/commonjs/models/components/vendorscanscreeninganswer.js +78 -0
  39. package/dist/commonjs/models/components/vendorscanscreeninganswer.js.map +1 -0
  40. package/dist/commonjs/models/components/vendorscanscreeningquestion.d.ts +55 -0
  41. package/dist/commonjs/models/components/vendorscanscreeningquestion.d.ts.map +1 -0
  42. package/dist/commonjs/models/components/vendorscanscreeningquestion.js +77 -0
  43. package/dist/commonjs/models/components/vendorscanscreeningquestion.js.map +1 -0
  44. package/dist/commonjs/models/operations/getnextscreeningquestion.d.ts +41 -0
  45. package/dist/commonjs/models/operations/getnextscreeningquestion.d.ts.map +1 -0
  46. package/dist/commonjs/models/operations/getnextscreeningquestion.js +69 -0
  47. package/dist/commonjs/models/operations/getnextscreeningquestion.js.map +1 -0
  48. package/dist/commonjs/models/operations/index.d.ts +2 -0
  49. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  50. package/dist/commonjs/models/operations/index.js +2 -0
  51. package/dist/commonjs/models/operations/index.js.map +1 -1
  52. package/dist/commonjs/models/operations/securityzonecheckin.d.ts +24 -4
  53. package/dist/commonjs/models/operations/securityzonecheckin.d.ts.map +1 -1
  54. package/dist/commonjs/models/operations/securityzonecheckin.js +31 -2
  55. package/dist/commonjs/models/operations/securityzonecheckin.js.map +1 -1
  56. package/dist/commonjs/models/operations/submitscreeningresponse.d.ts +80 -0
  57. package/dist/commonjs/models/operations/submitscreeningresponse.d.ts.map +1 -0
  58. package/dist/commonjs/models/operations/submitscreeningresponse.js +93 -0
  59. package/dist/commonjs/models/operations/submitscreeningresponse.js.map +1 -0
  60. package/dist/commonjs/react-query/index.d.ts +2 -0
  61. package/dist/commonjs/react-query/index.d.ts.map +1 -1
  62. package/dist/commonjs/react-query/index.js +2 -0
  63. package/dist/commonjs/react-query/index.js.map +1 -1
  64. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.core.d.ts +16 -0
  65. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.core.d.ts.map +1 -0
  66. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.core.js +43 -0
  67. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.core.js.map +1 -0
  68. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.d.ts +46 -0
  69. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.d.ts.map +1 -0
  70. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.js +79 -0
  71. package/dist/commonjs/react-query/vendorScansGetNextScreeningQuestion.js.map +1 -0
  72. package/dist/commonjs/react-query/vendorScansSubmitScreeningResponse.d.ts +27 -0
  73. package/dist/commonjs/react-query/vendorScansSubmitScreeningResponse.d.ts.map +1 -0
  74. package/dist/commonjs/react-query/vendorScansSubmitScreeningResponse.js +55 -0
  75. package/dist/commonjs/react-query/vendorScansSubmitScreeningResponse.js.map +1 -0
  76. package/dist/commonjs/sdk/vendorscans.d.ts +23 -0
  77. package/dist/commonjs/sdk/vendorscans.d.ts.map +1 -1
  78. package/dist/commonjs/sdk/vendorscans.js +29 -0
  79. package/dist/commonjs/sdk/vendorscans.js.map +1 -1
  80. package/dist/esm/__tests__/vendorscans.test.js +36 -0
  81. package/dist/esm/__tests__/vendorscans.test.js.map +1 -1
  82. package/dist/esm/__tests__/zones.test.js +28 -6
  83. package/dist/esm/__tests__/zones.test.js.map +1 -1
  84. package/dist/esm/funcs/vendorScansGetNextScreeningQuestion.d.ts +23 -0
  85. package/dist/esm/funcs/vendorScansGetNextScreeningQuestion.d.ts.map +1 -0
  86. package/dist/esm/funcs/vendorScansGetNextScreeningQuestion.js +97 -0
  87. package/dist/esm/funcs/vendorScansGetNextScreeningQuestion.js.map +1 -0
  88. package/dist/esm/funcs/vendorScansSubmitScreeningResponse.d.ts +22 -0
  89. package/dist/esm/funcs/vendorScansSubmitScreeningResponse.d.ts.map +1 -0
  90. package/dist/esm/funcs/vendorScansSubmitScreeningResponse.js +91 -0
  91. package/dist/esm/funcs/vendorScansSubmitScreeningResponse.js.map +1 -0
  92. package/dist/esm/lib/config.d.ts +2 -2
  93. package/dist/esm/lib/config.js +2 -2
  94. package/dist/esm/models/components/index.d.ts +3 -1
  95. package/dist/esm/models/components/index.d.ts.map +1 -1
  96. package/dist/esm/models/components/index.js +3 -1
  97. package/dist/esm/models/components/index.js.map +1 -1
  98. package/dist/esm/models/components/screeninganswer.d.ts +4 -4
  99. package/dist/esm/models/components/screeninganswer.d.ts.map +1 -1
  100. package/dist/esm/models/components/screeninganswer.js +3 -3
  101. package/dist/esm/models/components/screeninganswer.js.map +1 -1
  102. package/dist/esm/models/components/screeningansweractionsummary.d.ts +30 -0
  103. package/dist/esm/models/components/screeningansweractionsummary.d.ts.map +1 -0
  104. package/dist/esm/models/components/screeningansweractionsummary.js +22 -0
  105. package/dist/esm/models/components/screeningansweractionsummary.js.map +1 -0
  106. package/dist/esm/models/components/screeningquestion.d.ts +4 -4
  107. package/dist/esm/models/components/screeningquestion.d.ts.map +1 -1
  108. package/dist/esm/models/components/screeningquestion.js +4 -3
  109. package/dist/esm/models/components/screeningquestion.js.map +1 -1
  110. package/dist/esm/models/components/vendorscan.d.ts +3 -0
  111. package/dist/esm/models/components/vendorscan.d.ts.map +1 -1
  112. package/dist/esm/models/components/vendorscan.js +5 -0
  113. package/dist/esm/models/components/vendorscan.js.map +1 -1
  114. package/dist/esm/models/components/vendorscanscreeninganswer.d.ts +33 -0
  115. package/dist/esm/models/components/vendorscanscreeninganswer.d.ts.map +1 -0
  116. package/dist/esm/models/components/vendorscanscreeninganswer.js +41 -0
  117. package/dist/esm/models/components/vendorscanscreeninganswer.js.map +1 -0
  118. package/dist/esm/models/components/vendorscanscreeningquestion.d.ts +55 -0
  119. package/dist/esm/models/components/vendorscanscreeningquestion.d.ts.map +1 -0
  120. package/dist/esm/models/components/vendorscanscreeningquestion.js +40 -0
  121. package/dist/esm/models/components/vendorscanscreeningquestion.js.map +1 -0
  122. package/dist/esm/models/operations/getnextscreeningquestion.d.ts +41 -0
  123. package/dist/esm/models/operations/getnextscreeningquestion.d.ts.map +1 -0
  124. package/dist/esm/models/operations/getnextscreeningquestion.js +31 -0
  125. package/dist/esm/models/operations/getnextscreeningquestion.js.map +1 -0
  126. package/dist/esm/models/operations/index.d.ts +2 -0
  127. package/dist/esm/models/operations/index.d.ts.map +1 -1
  128. package/dist/esm/models/operations/index.js +2 -0
  129. package/dist/esm/models/operations/index.js.map +1 -1
  130. package/dist/esm/models/operations/securityzonecheckin.d.ts +24 -4
  131. package/dist/esm/models/operations/securityzonecheckin.d.ts.map +1 -1
  132. package/dist/esm/models/operations/securityzonecheckin.js +28 -1
  133. package/dist/esm/models/operations/securityzonecheckin.js.map +1 -1
  134. package/dist/esm/models/operations/submitscreeningresponse.d.ts +80 -0
  135. package/dist/esm/models/operations/submitscreeningresponse.d.ts.map +1 -0
  136. package/dist/esm/models/operations/submitscreeningresponse.js +54 -0
  137. package/dist/esm/models/operations/submitscreeningresponse.js.map +1 -0
  138. package/dist/esm/react-query/index.d.ts +2 -0
  139. package/dist/esm/react-query/index.d.ts.map +1 -1
  140. package/dist/esm/react-query/index.js +2 -0
  141. package/dist/esm/react-query/index.js.map +1 -1
  142. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.core.d.ts +16 -0
  143. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.core.d.ts.map +1 -0
  144. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.core.js +38 -0
  145. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.core.js.map +1 -0
  146. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.d.ts +46 -0
  147. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.d.ts.map +1 -0
  148. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.js +69 -0
  149. package/dist/esm/react-query/vendorScansGetNextScreeningQuestion.js.map +1 -0
  150. package/dist/esm/react-query/vendorScansSubmitScreeningResponse.d.ts +27 -0
  151. package/dist/esm/react-query/vendorScansSubmitScreeningResponse.d.ts.map +1 -0
  152. package/dist/esm/react-query/vendorScansSubmitScreeningResponse.js +50 -0
  153. package/dist/esm/react-query/vendorScansSubmitScreeningResponse.js.map +1 -0
  154. package/dist/esm/sdk/vendorscans.d.ts +23 -0
  155. package/dist/esm/sdk/vendorscans.d.ts.map +1 -1
  156. package/dist/esm/sdk/vendorscans.js +29 -0
  157. package/dist/esm/sdk/vendorscans.js.map +1 -1
  158. package/examples/package-lock.json +1 -1
  159. package/jsr.json +1 -1
  160. package/package.json +1 -1
  161. package/src/__tests__/vendorscans.test.ts +42 -0
  162. package/src/__tests__/zones.test.ts +28 -6
  163. package/src/funcs/vendorScansGetNextScreeningQuestion.ts +192 -0
  164. package/src/funcs/vendorScansSubmitScreeningResponse.ts +180 -0
  165. package/src/lib/config.ts +2 -2
  166. package/src/models/components/index.ts +3 -1
  167. package/src/models/components/screeninganswer.ts +9 -7
  168. package/src/models/components/screeningansweractionsummary.ts +60 -0
  169. package/src/models/components/screeningquestion.ts +10 -7
  170. package/src/models/components/vendorscan.ts +8 -0
  171. package/src/models/components/vendorscanscreeninganswer.ts +80 -0
  172. package/src/models/components/vendorscanscreeningquestion.ts +100 -0
  173. package/src/models/operations/getnextscreeningquestion.ts +91 -0
  174. package/src/models/operations/index.ts +2 -0
  175. package/src/models/operations/securityzonecheckin.ts +71 -5
  176. package/src/models/operations/submitscreeningresponse.ts +169 -0
  177. package/src/react-query/index.ts +2 -0
  178. package/src/react-query/vendorScansGetNextScreeningQuestion.core.ts +87 -0
  179. package/src/react-query/vendorScansGetNextScreeningQuestion.ts +143 -0
  180. package/src/react-query/vendorScansSubmitScreeningResponse.ts +97 -0
  181. package/src/sdk/vendorscans.ts +45 -0
  182. package/dist/commonjs/models/components/handoff.d.ts +0 -24
  183. package/dist/commonjs/models/components/handoff.d.ts.map +0 -1
  184. package/dist/commonjs/models/components/handoff.js.map +0 -1
  185. package/dist/esm/models/components/handoff.d.ts +0 -24
  186. package/dist/esm/models/components/handoff.d.ts.map +0 -1
  187. package/dist/esm/models/components/handoff.js +0 -31
  188. package/dist/esm/models/components/handoff.js.map +0 -1
  189. package/src/models/components/handoff.ts +0 -59
@@ -0,0 +1,100 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import * as openEnums from "../../types/enums.js";
9
+ import { OpenEnum } from "../../types/enums.js";
10
+ import { Result as SafeParseResult } from "../../types/fp.js";
11
+ import * as types from "../../types/primitives.js";
12
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
13
+ import {
14
+ VendorScanScreeningAnswer,
15
+ VendorScanScreeningAnswer$inboundSchema,
16
+ } from "./vendorscanscreeninganswer.js";
17
+
18
+ /**
19
+ * The display format for presenting this question.
20
+ */
21
+ export const PresetDisplayAs = {
22
+ FloatingButtons: "floating buttons",
23
+ LineButtons: "line buttons",
24
+ Radio: "radio",
25
+ Select: "select",
26
+ Checkbox: "checkbox",
27
+ Checkbox2Column: "checkbox (2-column)",
28
+ } as const;
29
+ /**
30
+ * The display format for presenting this question.
31
+ */
32
+ export type PresetDisplayAs = OpenEnum<typeof PresetDisplayAs>;
33
+
34
+ /**
35
+ * Reduced set of attributes for a screening question, used in vendor_scan context. Contains only the fields required for rendering the next question in the vendor screening workflow.
36
+ *
37
+ * @remarks
38
+ */
39
+ export type VendorScanScreeningQuestion = {
40
+ /**
41
+ * The unique ID of the screening question.
42
+ */
43
+ id: number;
44
+ /**
45
+ * The text of the screening question.
46
+ */
47
+ question?: string | null | undefined;
48
+ /**
49
+ * The display format for presenting this question.
50
+ */
51
+ presetDisplayAs?: PresetDisplayAs | null | undefined;
52
+ /**
53
+ * The ID of the screening answer selected by default, if any.
54
+ *
55
+ * @remarks
56
+ */
57
+ screeningAnswerId?: number | null | undefined;
58
+ /**
59
+ * The list of possible answers for this question.
60
+ */
61
+ screeningAnswers?: Array<VendorScanScreeningAnswer> | undefined;
62
+ };
63
+
64
+ /** @internal */
65
+ export const PresetDisplayAs$inboundSchema: z.ZodType<
66
+ PresetDisplayAs,
67
+ z.ZodTypeDef,
68
+ unknown
69
+ > = openEnums.inboundSchema(PresetDisplayAs);
70
+
71
+ /** @internal */
72
+ export const VendorScanScreeningQuestion$inboundSchema: z.ZodType<
73
+ VendorScanScreeningQuestion,
74
+ z.ZodTypeDef,
75
+ unknown
76
+ > = z.object({
77
+ id: types.number(),
78
+ question: z.nullable(types.string()).optional(),
79
+ preset_display_as: z.nullable(PresetDisplayAs$inboundSchema).optional(),
80
+ screening_answer_id: z.nullable(types.number()).optional(),
81
+ screening_answers: types.optional(
82
+ z.array(VendorScanScreeningAnswer$inboundSchema),
83
+ ),
84
+ }).transform((v) => {
85
+ return remap$(v, {
86
+ "preset_display_as": "presetDisplayAs",
87
+ "screening_answer_id": "screeningAnswerId",
88
+ "screening_answers": "screeningAnswers",
89
+ });
90
+ });
91
+
92
+ export function vendorScanScreeningQuestionFromJSON(
93
+ jsonString: string,
94
+ ): SafeParseResult<VendorScanScreeningQuestion, SDKValidationError> {
95
+ return safeParse(
96
+ jsonString,
97
+ (x) => VendorScanScreeningQuestion$inboundSchema.parse(JSON.parse(x)),
98
+ `Failed to parse 'VendorScanScreeningQuestion' from JSON`,
99
+ );
100
+ }
@@ -0,0 +1,91 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import * as types from "../../types/primitives.js";
10
+ import * as components from "../components/index.js";
11
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
12
+
13
+ export type GetNextScreeningQuestionRequest = {
14
+ /**
15
+ * The identifier of the object
16
+ */
17
+ id: number;
18
+ /**
19
+ * An array-style parameter to identify which sections of an object to expand. See documentation for the endpoint for a list of valid expansion values.
20
+ */
21
+ expand?: Array<components.Expand> | undefined;
22
+ /**
23
+ * Vendor ID to use when a company manager is making the request.
24
+ *
25
+ * @remarks
26
+ * If omitted, the system falls back to the logged-in vendor.
27
+ */
28
+ vendorId?: number | undefined;
29
+ };
30
+
31
+ /**
32
+ * The request was successful, and the server has returned the requested resource in the response body.
33
+ */
34
+ export type GetNextScreeningQuestionResponseBody = {
35
+ success?: boolean | undefined;
36
+ question?: components.VendorScanScreeningQuestion | null | undefined;
37
+ };
38
+
39
+ /** @internal */
40
+ export type GetNextScreeningQuestionRequest$Outbound = {
41
+ id: number;
42
+ expand?: Array<string> | undefined;
43
+ vendor_id?: number | undefined;
44
+ };
45
+
46
+ /** @internal */
47
+ export const GetNextScreeningQuestionRequest$outboundSchema: z.ZodType<
48
+ GetNextScreeningQuestionRequest$Outbound,
49
+ z.ZodTypeDef,
50
+ GetNextScreeningQuestionRequest
51
+ > = z.object({
52
+ id: z.number().int(),
53
+ expand: z.array(components.Expand$outboundSchema).optional(),
54
+ vendorId: z.number().int().optional(),
55
+ }).transform((v) => {
56
+ return remap$(v, {
57
+ vendorId: "vendor_id",
58
+ });
59
+ });
60
+
61
+ export function getNextScreeningQuestionRequestToJSON(
62
+ getNextScreeningQuestionRequest: GetNextScreeningQuestionRequest,
63
+ ): string {
64
+ return JSON.stringify(
65
+ GetNextScreeningQuestionRequest$outboundSchema.parse(
66
+ getNextScreeningQuestionRequest,
67
+ ),
68
+ );
69
+ }
70
+
71
+ /** @internal */
72
+ export const GetNextScreeningQuestionResponseBody$inboundSchema: z.ZodType<
73
+ GetNextScreeningQuestionResponseBody,
74
+ z.ZodTypeDef,
75
+ unknown
76
+ > = z.object({
77
+ success: types.optional(types.boolean()),
78
+ question: z.nullable(components.VendorScanScreeningQuestion$inboundSchema)
79
+ .optional(),
80
+ });
81
+
82
+ export function getNextScreeningQuestionResponseBodyFromJSON(
83
+ jsonString: string,
84
+ ): SafeParseResult<GetNextScreeningQuestionResponseBody, SDKValidationError> {
85
+ return safeParse(
86
+ jsonString,
87
+ (x) =>
88
+ GetNextScreeningQuestionResponseBody$inboundSchema.parse(JSON.parse(x)),
89
+ `Failed to parse 'GetNextScreeningQuestionResponseBody' from JSON`,
90
+ );
91
+ }
@@ -28,6 +28,7 @@ export * from "./deletevendormanagedbycompany.js";
28
28
  export * from "./expeditetimeremaining.js";
29
29
  export * from "./getfacility.js";
30
30
  export * from "./getfhirconfig.js";
31
+ export * from "./getnextscreeningquestion.js";
31
32
  export * from "./getnextunansweredscreeningquestion.js";
32
33
  export * from "./getsecurityzone.js";
33
34
  export * from "./getsubscription.js";
@@ -78,6 +79,7 @@ export * from "./purchasescrubcredits.js";
78
79
  export * from "./rotateapikey.js";
79
80
  export * from "./securityzonecheckin.js";
80
81
  export * from "./senddownloadcode.js";
82
+ export * from "./submitscreeningresponse.js";
81
83
  export * from "./submitvendorcredential.js";
82
84
  export * from "./updatedatarequest.js";
83
85
  export * from "./updateevent.js";
@@ -81,6 +81,25 @@ export const Requires = {
81
81
  } as const;
82
82
  export type Requires = ClosedEnum<typeof Requires>;
83
83
 
84
+ /**
85
+ * Reduced list of attributes of Handoff record
86
+ */
87
+ export type HandoffHandoff = {
88
+ id?: number | undefined;
89
+ /**
90
+ * Reduced list of attributes of Zone record
91
+ */
92
+ zone?: components.Zone | undefined;
93
+ qrCode?: string | null | undefined;
94
+ dateCreated?: string | null | undefined;
95
+ dateReceived?: string | null | undefined;
96
+ dateCompleted?: string | null | undefined;
97
+ status?: string | null | undefined;
98
+ gpsCheckin?: boolean | undefined;
99
+ };
100
+
101
+ export type Handoff = HandoffHandoff | number;
102
+
84
103
  export type Results = {
85
104
  hasValidPaymentProfile?: boolean | undefined;
86
105
  subscriptionExpires?: string | null | undefined;
@@ -110,10 +129,7 @@ export type Results = {
110
129
  export type SecurityZoneCheckinSecurityZoneCheckinOk = {
111
130
  success?: boolean | undefined;
112
131
  requires?: Requires | undefined;
113
- /**
114
- * Reduced list of attributes of Handoff record
115
- */
116
- handoff?: components.Handoff | null | undefined;
132
+ handoff?: HandoffHandoff | number | null | undefined;
117
133
  results?: Results | undefined;
118
134
  };
119
135
 
@@ -278,6 +294,54 @@ export function securityZoneCheckinRequestBodyToJSON(
278
294
  export const Requires$inboundSchema: z.ZodNativeEnum<typeof Requires> = z
279
295
  .nativeEnum(Requires);
280
296
 
297
+ /** @internal */
298
+ export const HandoffHandoff$inboundSchema: z.ZodType<
299
+ HandoffHandoff,
300
+ z.ZodTypeDef,
301
+ unknown
302
+ > = z.object({
303
+ id: types.optional(types.number()),
304
+ zone: types.optional(components.Zone$inboundSchema),
305
+ qr_code: z.nullable(types.string()).optional(),
306
+ date_created: z.nullable(types.string()).optional(),
307
+ date_received: z.nullable(types.string()).optional(),
308
+ date_completed: z.nullable(types.string()).optional(),
309
+ status: z.nullable(types.string()).optional(),
310
+ gps_checkin: types.optional(types.boolean()),
311
+ }).transform((v) => {
312
+ return remap$(v, {
313
+ "qr_code": "qrCode",
314
+ "date_created": "dateCreated",
315
+ "date_received": "dateReceived",
316
+ "date_completed": "dateCompleted",
317
+ "gps_checkin": "gpsCheckin",
318
+ });
319
+ });
320
+
321
+ export function handoffHandoffFromJSON(
322
+ jsonString: string,
323
+ ): SafeParseResult<HandoffHandoff, SDKValidationError> {
324
+ return safeParse(
325
+ jsonString,
326
+ (x) => HandoffHandoff$inboundSchema.parse(JSON.parse(x)),
327
+ `Failed to parse 'HandoffHandoff' from JSON`,
328
+ );
329
+ }
330
+
331
+ /** @internal */
332
+ export const Handoff$inboundSchema: z.ZodType<Handoff, z.ZodTypeDef, unknown> =
333
+ smartUnion([z.lazy(() => HandoffHandoff$inboundSchema), types.number()]);
334
+
335
+ export function handoffFromJSON(
336
+ jsonString: string,
337
+ ): SafeParseResult<Handoff, SDKValidationError> {
338
+ return safeParse(
339
+ jsonString,
340
+ (x) => Handoff$inboundSchema.parse(JSON.parse(x)),
341
+ `Failed to parse 'Handoff' from JSON`,
342
+ );
343
+ }
344
+
281
345
  /** @internal */
282
346
  export const Results$inboundSchema: z.ZodType<Results, z.ZodTypeDef, unknown> =
283
347
  z.object({
@@ -334,7 +398,9 @@ export const SecurityZoneCheckinSecurityZoneCheckinOk$inboundSchema: z.ZodType<
334
398
  > = z.object({
335
399
  success: types.optional(types.boolean()),
336
400
  requires: types.optional(Requires$inboundSchema),
337
- handoff: z.nullable(components.Handoff$inboundSchema).optional(),
401
+ handoff: z.nullable(
402
+ smartUnion([z.lazy(() => HandoffHandoff$inboundSchema), types.number()]),
403
+ ).optional(),
338
404
  results: types.optional(z.lazy(() => Results$inboundSchema)),
339
405
  });
340
406
 
@@ -0,0 +1,169 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import * as types from "../../types/primitives.js";
10
+ import * as components from "../components/index.js";
11
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
12
+
13
+ export type SubmitScreeningResponseRequestBody = {
14
+ /**
15
+ * ID of the screening question being answered.
16
+ */
17
+ screeningQuestionId: number;
18
+ /**
19
+ * ID of the selected screening answer for single-select questions.
20
+ */
21
+ screeningAnswerId?: number | null | undefined;
22
+ /**
23
+ * IDs of the selected screening answers for multi-select questions.
24
+ *
25
+ * @remarks
26
+ */
27
+ multipleScreeningAnswerIds?: Array<number> | null | undefined;
28
+ /**
29
+ * Optional vendor ID. Used when the authenticated user is a company manager submitting a response on behalf of a vendor
30
+ *
31
+ * @remarks
32
+ */
33
+ vendorId?: number | null | undefined;
34
+ /**
35
+ * Custom free-text answer for questions that accept typed input.
36
+ */
37
+ customAnswer?: string | null | undefined;
38
+ };
39
+
40
+ export type SubmitScreeningResponseRequest = {
41
+ /**
42
+ * The identifier of the object
43
+ */
44
+ id: number;
45
+ requestBody: SubmitScreeningResponseRequestBody;
46
+ };
47
+
48
+ /**
49
+ * Response returned after a screening question answer is submitted.
50
+ *
51
+ * @remarks
52
+ */
53
+ export type SubmitScreeningResponseResponseBody = {
54
+ success?: boolean | undefined;
55
+ /**
56
+ * Indicates whether there is another unanswered screening question available, assuming triggered actions do not stop the flow.
57
+ *
58
+ * @remarks
59
+ */
60
+ hasNextQuestion?: boolean | undefined;
61
+ /**
62
+ * List of actions triggered by this screening response. Present only when there is no next question (i.e., `has_next_question` is false).
63
+ *
64
+ * @remarks
65
+ */
66
+ triggeredActions?:
67
+ | Array<components.ScreeningAnswerActionSummary>
68
+ | null
69
+ | undefined;
70
+ };
71
+
72
+ /** @internal */
73
+ export type SubmitScreeningResponseRequestBody$Outbound = {
74
+ screening_question_id: number;
75
+ screening_answer_id?: number | null | undefined;
76
+ multiple_screening_answer_ids?: Array<number> | null | undefined;
77
+ vendor_id?: number | null | undefined;
78
+ custom_answer?: string | null | undefined;
79
+ };
80
+
81
+ /** @internal */
82
+ export const SubmitScreeningResponseRequestBody$outboundSchema: z.ZodType<
83
+ SubmitScreeningResponseRequestBody$Outbound,
84
+ z.ZodTypeDef,
85
+ SubmitScreeningResponseRequestBody
86
+ > = z.object({
87
+ screeningQuestionId: z.number().int(),
88
+ screeningAnswerId: z.nullable(z.number().int()).optional(),
89
+ multipleScreeningAnswerIds: z.nullable(z.array(z.number().int())).optional(),
90
+ vendorId: z.nullable(z.number().int()).optional(),
91
+ customAnswer: z.nullable(z.string()).optional(),
92
+ }).transform((v) => {
93
+ return remap$(v, {
94
+ screeningQuestionId: "screening_question_id",
95
+ screeningAnswerId: "screening_answer_id",
96
+ multipleScreeningAnswerIds: "multiple_screening_answer_ids",
97
+ vendorId: "vendor_id",
98
+ customAnswer: "custom_answer",
99
+ });
100
+ });
101
+
102
+ export function submitScreeningResponseRequestBodyToJSON(
103
+ submitScreeningResponseRequestBody: SubmitScreeningResponseRequestBody,
104
+ ): string {
105
+ return JSON.stringify(
106
+ SubmitScreeningResponseRequestBody$outboundSchema.parse(
107
+ submitScreeningResponseRequestBody,
108
+ ),
109
+ );
110
+ }
111
+
112
+ /** @internal */
113
+ export type SubmitScreeningResponseRequest$Outbound = {
114
+ id: number;
115
+ RequestBody: SubmitScreeningResponseRequestBody$Outbound;
116
+ };
117
+
118
+ /** @internal */
119
+ export const SubmitScreeningResponseRequest$outboundSchema: z.ZodType<
120
+ SubmitScreeningResponseRequest$Outbound,
121
+ z.ZodTypeDef,
122
+ SubmitScreeningResponseRequest
123
+ > = z.object({
124
+ id: z.number().int(),
125
+ requestBody: z.lazy(() => SubmitScreeningResponseRequestBody$outboundSchema),
126
+ }).transform((v) => {
127
+ return remap$(v, {
128
+ requestBody: "RequestBody",
129
+ });
130
+ });
131
+
132
+ export function submitScreeningResponseRequestToJSON(
133
+ submitScreeningResponseRequest: SubmitScreeningResponseRequest,
134
+ ): string {
135
+ return JSON.stringify(
136
+ SubmitScreeningResponseRequest$outboundSchema.parse(
137
+ submitScreeningResponseRequest,
138
+ ),
139
+ );
140
+ }
141
+
142
+ /** @internal */
143
+ export const SubmitScreeningResponseResponseBody$inboundSchema: z.ZodType<
144
+ SubmitScreeningResponseResponseBody,
145
+ z.ZodTypeDef,
146
+ unknown
147
+ > = z.object({
148
+ success: types.optional(types.boolean()),
149
+ has_next_question: types.optional(types.boolean()),
150
+ triggered_actions: z.nullable(
151
+ z.array(components.ScreeningAnswerActionSummary$inboundSchema),
152
+ ).optional(),
153
+ }).transform((v) => {
154
+ return remap$(v, {
155
+ "has_next_question": "hasNextQuestion",
156
+ "triggered_actions": "triggeredActions",
157
+ });
158
+ });
159
+
160
+ export function submitScreeningResponseResponseBodyFromJSON(
161
+ jsonString: string,
162
+ ): SafeParseResult<SubmitScreeningResponseResponseBody, SDKValidationError> {
163
+ return safeParse(
164
+ jsonString,
165
+ (x) =>
166
+ SubmitScreeningResponseResponseBody$inboundSchema.parse(JSON.parse(x)),
167
+ `Failed to parse 'SubmitScreeningResponseResponseBody' from JSON`,
168
+ );
169
+ }
@@ -49,6 +49,8 @@ export * from "./vendorsAcceptVendorCredential.js";
49
49
  export * from "./vendorsAddVendorCredentialFile.js";
50
50
  export * from "./vendorsAddVendorManagedByCompany.js";
51
51
  export * from "./vendorsCalculateSubscriptionPrice.js";
52
+ export * from "./vendorScansGetNextScreeningQuestion.js";
53
+ export * from "./vendorScansSubmitScreeningResponse.js";
52
54
  export * from "./vendorScansVendorScanOut.js";
53
55
  export * from "./vendorsChangeSubscription.js";
54
56
  export * from "./vendorsCheckDownloadCode.js";
@@ -0,0 +1,87 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import {
6
+ QueryClient,
7
+ QueryFunctionContext,
8
+ QueryKey,
9
+ } from "@tanstack/react-query";
10
+ import { GreenSecurityCore } from "../core.js";
11
+ import { vendorScansGetNextScreeningQuestion } from "../funcs/vendorScansGetNextScreeningQuestion.js";
12
+ import { combineSignals } from "../lib/primitives.js";
13
+ import { RequestOptions } from "../lib/sdks.js";
14
+ import * as components from "../models/components/index.js";
15
+ import * as operations from "../models/operations/index.js";
16
+ import { unwrapAsync } from "../types/fp.js";
17
+ export type VendorScansGetNextScreeningQuestionQueryData =
18
+ operations.GetNextScreeningQuestionResponseBody;
19
+
20
+ export function prefetchVendorScansGetNextScreeningQuestion(
21
+ queryClient: QueryClient,
22
+ client$: GreenSecurityCore,
23
+ request: operations.GetNextScreeningQuestionRequest,
24
+ options?: RequestOptions,
25
+ ): Promise<void> {
26
+ return queryClient.prefetchQuery({
27
+ ...buildVendorScansGetNextScreeningQuestionQuery(
28
+ client$,
29
+ request,
30
+ options,
31
+ ),
32
+ });
33
+ }
34
+
35
+ export function buildVendorScansGetNextScreeningQuestionQuery(
36
+ client$: GreenSecurityCore,
37
+ request: operations.GetNextScreeningQuestionRequest,
38
+ options?: RequestOptions,
39
+ ): {
40
+ queryKey: QueryKey;
41
+ queryFn: (
42
+ context: QueryFunctionContext,
43
+ ) => Promise<VendorScansGetNextScreeningQuestionQueryData>;
44
+ } {
45
+ return {
46
+ queryKey: queryKeyVendorScansGetNextScreeningQuestion(request.id, {
47
+ expand: request.expand,
48
+ vendorId: request.vendorId,
49
+ }),
50
+ queryFn: async function vendorScansGetNextScreeningQuestionQueryFn(
51
+ ctx,
52
+ ): Promise<VendorScansGetNextScreeningQuestionQueryData> {
53
+ const sig = combineSignals(
54
+ ctx.signal,
55
+ options?.signal,
56
+ options?.fetchOptions?.signal,
57
+ );
58
+ const mergedOptions = {
59
+ ...options?.fetchOptions,
60
+ ...options,
61
+ signal: sig,
62
+ };
63
+
64
+ return unwrapAsync(vendorScansGetNextScreeningQuestion(
65
+ client$,
66
+ request,
67
+ mergedOptions,
68
+ ));
69
+ },
70
+ };
71
+ }
72
+
73
+ export function queryKeyVendorScansGetNextScreeningQuestion(
74
+ id: number,
75
+ parameters: {
76
+ expand?: Array<components.Expand> | undefined;
77
+ vendorId?: number | undefined;
78
+ },
79
+ ): QueryKey {
80
+ return [
81
+ "@greensecurity/javascript-sdk",
82
+ "vendor_scans",
83
+ "getNextScreeningQuestion",
84
+ id,
85
+ parameters,
86
+ ];
87
+ }