boldsign 1.0.3 → 2.0.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 (533) hide show
  1. package/.openapi-generator/FILES +157 -156
  2. package/.openapi-generator/VERSION +1 -1
  3. package/.openapi-generator-ignore +23 -23
  4. package/LICENSE +21 -21
  5. package/README.md +307 -306
  6. package/api/apis.ts +163 -163
  7. package/api/brandingApi.ts +1193 -1183
  8. package/api/contactsApi.ts +772 -772
  9. package/api/customFieldApi.ts +817 -817
  10. package/api/documentApi.ts +2953 -2953
  11. package/api/identityVerificationApi.ts +586 -586
  12. package/api/index.ts +36 -36
  13. package/api/planApi.ts +274 -274
  14. package/api/senderIdentitiesApi.ts +898 -898
  15. package/api/teamsApi.ts +661 -661
  16. package/api/templateApi.ts +1915 -1915
  17. package/api/userApi.ts +968 -968
  18. package/api.ts +3 -3
  19. package/boldsign-2.0.0.tgz +0 -0
  20. package/dist/api/apis.d.ts +1 -1
  21. package/dist/api/apis.js +1 -1
  22. package/dist/api/brandingApi.d.ts +2 -2
  23. package/dist/api/brandingApi.js +10 -4
  24. package/dist/api/brandingApi.js.map +1 -1
  25. package/dist/model/auditTrail.d.ts +3 -1
  26. package/dist/model/auditTrail.js +2 -0
  27. package/dist/model/auditTrail.js.map +1 -1
  28. package/dist/model/collaborationSettings.d.ts +17 -0
  29. package/dist/model/collaborationSettings.js +33 -0
  30. package/dist/model/collaborationSettings.js.map +1 -0
  31. package/dist/model/createTemplateRequest.d.ts +1 -1
  32. package/dist/model/createTemplateRequest.js +5 -5
  33. package/dist/model/createTemplateRequest.js.map +1 -1
  34. package/dist/model/documentFiles.d.ts +1 -0
  35. package/dist/model/documentFiles.js +5 -0
  36. package/dist/model/documentFiles.js.map +1 -1
  37. package/dist/model/documentFormFields.d.ts +4 -0
  38. package/dist/model/documentFormFields.js +15 -0
  39. package/dist/model/documentFormFields.js.map +1 -1
  40. package/dist/model/documentSigner.d.ts +1 -0
  41. package/dist/model/documentSigner.js +5 -0
  42. package/dist/model/documentSigner.js.map +1 -1
  43. package/dist/model/documentSignerDetails.d.ts +1 -0
  44. package/dist/model/documentSignerDetails.js +5 -0
  45. package/dist/model/documentSignerDetails.js.map +1 -1
  46. package/dist/model/embeddedCreateTemplateRequest.d.ts +1 -1
  47. package/dist/model/embeddedCreateTemplateRequest.js +5 -5
  48. package/dist/model/embeddedCreateTemplateRequest.js.map +1 -1
  49. package/dist/model/embeddedDocumentRequest.d.ts +1 -1
  50. package/dist/model/embeddedDocumentRequest.js +5 -5
  51. package/dist/model/embeddedDocumentRequest.js.map +1 -1
  52. package/dist/model/embeddedMergeTemplateFormRequest.d.ts +1 -1
  53. package/dist/model/embeddedMergeTemplateFormRequest.js +5 -5
  54. package/dist/model/embeddedMergeTemplateFormRequest.js.map +1 -1
  55. package/dist/model/embeddedSendTemplateFormRequest.d.ts +1 -1
  56. package/dist/model/embeddedSendTemplateFormRequest.js +5 -5
  57. package/dist/model/embeddedSendTemplateFormRequest.js.map +1 -1
  58. package/dist/model/formField.d.ts +2 -0
  59. package/dist/model/formField.js +5 -0
  60. package/dist/model/formField.js.map +1 -1
  61. package/dist/model/index.d.ts +2 -1
  62. package/dist/model/index.js +6 -3
  63. package/dist/model/index.js.map +1 -1
  64. package/dist/model/mergeAndSendForSignForm.d.ts +1 -1
  65. package/dist/model/mergeAndSendForSignForm.js +5 -5
  66. package/dist/model/mergeAndSendForSignForm.js.map +1 -1
  67. package/dist/model/sendForSign.d.ts +1 -1
  68. package/dist/model/sendForSign.js +5 -5
  69. package/dist/model/sendForSign.js.map +1 -1
  70. package/dist/model/sendForSignFromTemplateForm.d.ts +1 -1
  71. package/dist/model/sendForSignFromTemplateForm.js +5 -5
  72. package/dist/model/sendForSignFromTemplateForm.js.map +1 -1
  73. package/dist/model/templateFormFields.d.ts +2 -0
  74. package/dist/model/templateFormFields.js +5 -0
  75. package/dist/model/templateFormFields.js.map +1 -1
  76. package/dist/model/textTagDefinition.d.ts +2 -0
  77. package/dist/model/textTagDefinition.js +5 -0
  78. package/dist/model/textTagDefinition.js.map +1 -1
  79. package/dist/model/viewBrandDetails.d.ts +1 -0
  80. package/dist/model/viewBrandDetails.js +5 -0
  81. package/dist/model/viewBrandDetails.js.map +1 -1
  82. package/dist/tests/config.d.ts +5 -0
  83. package/dist/tests/config.js +43 -0
  84. package/dist/tests/config.js.map +1 -0
  85. package/dist/tests/integration/BrandingApiTest.spec.d.ts +1 -0
  86. package/dist/tests/integration/BrandingApiTest.spec.js +310 -0
  87. package/dist/tests/integration/BrandingApiTest.spec.js.map +1 -0
  88. package/dist/tests/integration/ContactsApiTest.spec.d.ts +1 -0
  89. package/dist/tests/integration/ContactsApiTest.spec.js +249 -0
  90. package/dist/tests/integration/ContactsApiTest.spec.js.map +1 -0
  91. package/dist/tests/integration/CustomFieldApiTest.spec.d.ts +1 -0
  92. package/dist/tests/integration/CustomFieldApiTest.spec.js +289 -0
  93. package/dist/tests/integration/CustomFieldApiTest.spec.js.map +1 -0
  94. package/dist/tests/integration/DocumentApiTest.spec.d.ts +1 -0
  95. package/dist/tests/integration/DocumentApiTest.spec.js +1710 -0
  96. package/dist/tests/integration/DocumentApiTest.spec.js.map +1 -0
  97. package/dist/tests/integration/IdentityVerificationApiTest.spec.d.ts +1 -0
  98. package/dist/tests/integration/IdentityVerificationApiTest.spec.js +160 -0
  99. package/dist/tests/integration/IdentityVerificationApiTest.spec.js.map +1 -0
  100. package/dist/tests/integration/TemplateApiTest.spec.d.ts +1 -0
  101. package/dist/tests/integration/TemplateApiTest.spec.js +1518 -0
  102. package/dist/tests/integration/TemplateApiTest.spec.js.map +1 -0
  103. package/dist/tests/integration/planApiTest.spec.d.ts +1 -0
  104. package/dist/tests/integration/planApiTest.spec.js +41 -0
  105. package/dist/tests/integration/planApiTest.spec.js.map +1 -0
  106. package/dist/tests/integration/senderIdentity.spec.d.ts +1 -0
  107. package/dist/tests/integration/senderIdentity.spec.js +481 -0
  108. package/dist/tests/integration/senderIdentity.spec.js.map +1 -0
  109. package/dist/tests/integration/teamsApiTest.spec.d.ts +1 -0
  110. package/dist/tests/integration/teamsApiTest.spec.js +230 -0
  111. package/dist/tests/integration/teamsApiTest.spec.js.map +1 -0
  112. package/dist/tests/integration/usersApiTest.spec.d.ts +1 -0
  113. package/dist/tests/integration/usersApiTest.spec.js +290 -0
  114. package/dist/tests/integration/usersApiTest.spec.js.map +1 -0
  115. package/dist/tests/performance/performanceApiTest.spec.d.ts +1 -0
  116. package/dist/tests/performance/performanceApiTest.spec.js +368 -0
  117. package/dist/tests/performance/performanceApiTest.spec.js.map +1 -0
  118. package/dist/tests/unit/brandingApi.spec.d.ts +1 -0
  119. package/dist/tests/unit/brandingApi.spec.js +174 -0
  120. package/dist/tests/unit/brandingApi.spec.js.map +1 -0
  121. package/dist/tests/unit/contactsApi.spec.d.ts +1 -0
  122. package/dist/tests/unit/contactsApi.spec.js +154 -0
  123. package/dist/tests/unit/contactsApi.spec.js.map +1 -0
  124. package/dist/tests/unit/customFieldApi.spec.d.ts +1 -0
  125. package/dist/tests/unit/customFieldApi.spec.js +140 -0
  126. package/dist/tests/unit/customFieldApi.spec.js.map +1 -0
  127. package/dist/tests/unit/documentApi.spec.d.ts +1 -0
  128. package/dist/tests/unit/documentApi.spec.js +476 -0
  129. package/dist/tests/unit/documentApi.spec.js.map +1 -0
  130. package/dist/tests/unit/planApi.spec.d.ts +1 -0
  131. package/dist/tests/unit/planApi.spec.js +69 -0
  132. package/dist/tests/unit/planApi.spec.js.map +1 -0
  133. package/dist/tests/unit/senderIdentitiesApi.spec.d.ts +1 -0
  134. package/dist/tests/unit/senderIdentitiesApi.spec.js +148 -0
  135. package/dist/tests/unit/senderIdentitiesApi.spec.js.map +1 -0
  136. package/dist/tests/unit/teamApi.spec.d.ts +1 -0
  137. package/dist/tests/unit/teamApi.spec.js +116 -0
  138. package/dist/tests/unit/teamApi.spec.js.map +1 -0
  139. package/dist/tests/unit/templateApi.spec.d.ts +1 -0
  140. package/dist/tests/unit/templateApi.spec.js +285 -0
  141. package/dist/tests/unit/templateApi.spec.js.map +1 -0
  142. package/dist/tests/unit/userApi.spec.d.ts +1 -0
  143. package/dist/tests/unit/userApi.spec.js +163 -0
  144. package/dist/tests/unit/userApi.spec.js.map +1 -0
  145. package/docs/AccessCodeDetail.md +19 -19
  146. package/docs/AccessCodeDetails.md +13 -13
  147. package/docs/Added.md +13 -13
  148. package/docs/Address.md +16 -16
  149. package/docs/AttachmentInfo.md +14 -14
  150. package/docs/AuditTrail.md +21 -21
  151. package/docs/AuthenticationSettings.md +11 -11
  152. package/docs/Base64File.md +12 -12
  153. package/docs/BehalfDocument.md +27 -27
  154. package/docs/BehalfDocumentRecords.md +12 -12
  155. package/docs/BehalfOf.md +12 -12
  156. package/docs/BillingViewModel.md +11 -11
  157. package/docs/BrandCreated.md +11 -11
  158. package/docs/BrandCustomFieldDetails.md +16 -16
  159. package/docs/BrandingApi.md +260 -258
  160. package/docs/BrandingMessage.md +11 -11
  161. package/docs/BrandingRecords.md +11 -11
  162. package/docs/ChangeRecipient.md +18 -18
  163. package/docs/CollaborationSettings.md +14 -0
  164. package/docs/ConditionalRule.md +13 -13
  165. package/docs/ContactCreated.md +12 -12
  166. package/docs/ContactDetails.md +15 -15
  167. package/docs/ContactPageDetails.md +13 -13
  168. package/docs/ContactsApi.md +176 -176
  169. package/docs/ContactsDetails.md +16 -16
  170. package/docs/ContactsList.md +12 -12
  171. package/docs/CreateContactResponse.md +11 -11
  172. package/docs/CreateSenderIdentityRequest.md +16 -16
  173. package/docs/CreateTeamRequest.md +11 -11
  174. package/docs/CreateTemplateRequest.md +35 -35
  175. package/docs/CreateUser.md +14 -14
  176. package/docs/CustomDomainSettings.md +12 -12
  177. package/docs/CustomFieldApi.md +174 -174
  178. package/docs/CustomFieldCollection.md +11 -11
  179. package/docs/CustomFieldMessage.md +12 -12
  180. package/docs/CustomFormField.md +43 -43
  181. package/docs/Date.md +13 -13
  182. package/docs/DeleteCustomFieldReply.md +11 -11
  183. package/docs/Document.md +26 -26
  184. package/docs/DocumentApi.md +756 -756
  185. package/docs/DocumentCC.md +11 -11
  186. package/docs/DocumentCcDetails.md +12 -12
  187. package/docs/DocumentCreated.md +11 -11
  188. package/docs/DocumentExpirySettings.md +16 -16
  189. package/docs/DocumentFiles.md +14 -13
  190. package/docs/DocumentFormFields.md +52 -49
  191. package/docs/DocumentInfo.md +14 -14
  192. package/docs/DocumentProperties.md +50 -50
  193. package/docs/DocumentReassign.md +13 -13
  194. package/docs/DocumentRecords.md +12 -12
  195. package/docs/DocumentSenderDetail.md +14 -14
  196. package/docs/DocumentSigner.md +32 -31
  197. package/docs/DocumentSignerDetails.md +38 -37
  198. package/docs/DocumentTags.md +12 -12
  199. package/docs/DownloadImageRequest.md +16 -16
  200. package/docs/EditSenderIdentityRequest.md +14 -14
  201. package/docs/EditTemplateRequest.md +29 -29
  202. package/docs/EditableDateFieldSettings.md +13 -13
  203. package/docs/EmbeddedCreateTemplateRequest.md +46 -46
  204. package/docs/EmbeddedCustomFieldCreated.md +11 -11
  205. package/docs/EmbeddedDocumentRequest.md +55 -55
  206. package/docs/EmbeddedFileDetails.md +16 -16
  207. package/docs/EmbeddedFileLink.md +11 -11
  208. package/docs/EmbeddedMergeTemplateFormRequest.md +56 -56
  209. package/docs/EmbeddedSendCreated.md +12 -12
  210. package/docs/EmbeddedSendTemplateFormRequest.md +53 -53
  211. package/docs/EmbeddedSigningLink.md +11 -11
  212. package/docs/EmbeddedTemplateCreated.md +12 -12
  213. package/docs/EmbeddedTemplateEditRequest.md +21 -21
  214. package/docs/EmbeddedTemplateEdited.md +11 -11
  215. package/docs/Error.md +12 -12
  216. package/docs/ErrorResult.md +11 -11
  217. package/docs/ExistingFormField.md +15 -15
  218. package/docs/ExtendExpiry.md +14 -14
  219. package/docs/FileInfo.md +14 -14
  220. package/docs/Font.md +18 -18
  221. package/docs/FormField.md +51 -50
  222. package/docs/FormGroup.md +15 -15
  223. package/docs/FormulaFieldSettings.md +12 -12
  224. package/docs/IdDocument.md +21 -21
  225. package/docs/IdReport.md +14 -14
  226. package/docs/IdVerification.md +18 -18
  227. package/docs/IdentityVerificationApi.md +109 -109
  228. package/docs/IdentityVerificationSettings.md +16 -16
  229. package/docs/ImageInfo.md +13 -13
  230. package/docs/MergeAndSendForSignForm.md +46 -46
  231. package/docs/ModificationDetails.md +12 -12
  232. package/docs/NotificationSettings.md +22 -22
  233. package/docs/PageDetails.md +16 -16
  234. package/docs/PhoneNumber.md +12 -12
  235. package/docs/PlanApi.md +38 -38
  236. package/docs/PrefillField.md +12 -12
  237. package/docs/PrefillFieldRequest.md +12 -12
  238. package/docs/ProblemDetails.md +15 -15
  239. package/docs/RecipientChangeLog.md +12 -12
  240. package/docs/RecipientNotificationSettings.md +22 -22
  241. package/docs/Rectangle.md +14 -14
  242. package/docs/ReminderMessage.md +13 -13
  243. package/docs/ReminderSettings.md +13 -13
  244. package/docs/RemoveAuthentication.md +14 -14
  245. package/docs/Removed.md +13 -13
  246. package/docs/RevokeDocument.md +12 -12
  247. package/docs/Role.md +33 -33
  248. package/docs/Roles.md +33 -33
  249. package/docs/SendForSign.md +45 -45
  250. package/docs/SendForSignFromTemplateForm.md +43 -43
  251. package/docs/SenderIdentitiesApi.md +209 -209
  252. package/docs/SenderIdentityCreated.md +11 -11
  253. package/docs/SenderIdentityList.md +12 -12
  254. package/docs/SenderIdentityViewModel.md +19 -19
  255. package/docs/SignerAuthenticationSettings.md +12 -12
  256. package/docs/Size.md +12 -12
  257. package/docs/TeamCreated.md +11 -11
  258. package/docs/TeamDocumentRecords.md +12 -12
  259. package/docs/TeamListResponse.md +12 -12
  260. package/docs/TeamPageDetails.md +12 -12
  261. package/docs/TeamResponse.md +15 -15
  262. package/docs/TeamUpdateRequest.md +12 -12
  263. package/docs/TeamUsers.md +16 -16
  264. package/docs/Teams.md +14 -14
  265. package/docs/TeamsApi.md +141 -141
  266. package/docs/Template.md +29 -29
  267. package/docs/TemplateApi.md +484 -484
  268. package/docs/TemplateCC.md +12 -12
  269. package/docs/TemplateCreated.md +11 -11
  270. package/docs/TemplateFormFields.md +51 -50
  271. package/docs/TemplateProperties.md +37 -37
  272. package/docs/TemplateRecords.md +12 -12
  273. package/docs/TemplateRole.md +28 -28
  274. package/docs/TemplateSenderDetail.md +12 -12
  275. package/docs/TemplateSenderDetails.md +13 -13
  276. package/docs/TemplateSharedTemplateDetail.md +12 -12
  277. package/docs/TemplateSignerDetails.md +27 -27
  278. package/docs/TemplateTag.md +14 -14
  279. package/docs/TextTagDefinition.md +41 -40
  280. package/docs/TextTagOffset.md +12 -12
  281. package/docs/UpdateUser.md +14 -14
  282. package/docs/UpdateUserMetaData.md +12 -12
  283. package/docs/UserApi.md +240 -240
  284. package/docs/UserPageDetails.md +12 -12
  285. package/docs/UserProperties.md +21 -21
  286. package/docs/UserRecords.md +12 -12
  287. package/docs/UsersDetails.md +21 -21
  288. package/docs/Validation.md +13 -13
  289. package/docs/VerificationDataRequest.md +15 -15
  290. package/docs/ViewBrandDetails.md +35 -34
  291. package/docs/ViewCustomFieldDetails.md +17 -17
  292. package/examples/DocumentProperties.ts +14 -14
  293. package/examples/brandCreate.ts +28 -28
  294. package/examples/brandDelete.ts +14 -14
  295. package/examples/brandGet.ts +14 -14
  296. package/examples/brandList.ts +13 -13
  297. package/examples/brandResetDefault.ts +14 -14
  298. package/examples/brandUpdate.ts +20 -20
  299. package/examples/contactCreate.ts +25 -25
  300. package/examples/contactDelete.ts +14 -14
  301. package/examples/contactGet.ts +14 -14
  302. package/examples/contactList.ts +15 -15
  303. package/examples/contactUpdate.ts +25 -25
  304. package/examples/customFieldCreate.ts +27 -27
  305. package/examples/customFieldDelete.ts +14 -14
  306. package/examples/customFieldEdit.ts +29 -29
  307. package/examples/customFieldEmbeddedCreateUrl.ts +18 -18
  308. package/examples/customFieldList.ts +14 -14
  309. package/examples/documentAddAuthentication.ts +19 -19
  310. package/examples/documentAddTags.ts +18 -18
  311. package/examples/documentChangeAccessCode.ts +19 -19
  312. package/examples/documentChangeRecipients.ts +21 -21
  313. package/examples/documentDelete.ts +15 -15
  314. package/examples/documentDeleteTags.ts +18 -18
  315. package/examples/documentDownload.ts +15 -15
  316. package/examples/documentDownloadAttachment.ts +16 -16
  317. package/examples/documentDownloadAuditTrial.ts +15 -15
  318. package/examples/documentEmbeddedRequestLink.ts +48 -48
  319. package/examples/documentEmbeddedSignLink.ts +22 -22
  320. package/examples/documentExtendExpiry.ts +19 -19
  321. package/examples/documentList.ts +18 -18
  322. package/examples/documentListBehalf.ts +14 -14
  323. package/examples/documentListTeam.ts +14 -14
  324. package/examples/documentPrefillFieldCheckBox.ts +22 -22
  325. package/examples/documentPrefillFieldDropDown.ts +22 -22
  326. package/examples/documentPrefillFieldEditableDate.ts +22 -22
  327. package/examples/documentPrefillFieldImage.ts +22 -22
  328. package/examples/documentPrefillFieldRadioButton.ts +22 -22
  329. package/examples/documentPrefillFieldTextBox.ts +22 -22
  330. package/examples/documentRemoveAuthentication.ts +18 -18
  331. package/examples/documentRevoke.ts +18 -18
  332. package/examples/documentSend.ts +46 -46
  333. package/examples/documentSendOnBehalf.ts +52 -52
  334. package/examples/documentSendReminder.ts +19 -19
  335. package/examples/embeddedManualVerification.ts +22 -22
  336. package/examples/identityVerificationImage.ts +23 -23
  337. package/examples/identityVerificationReport.ts +21 -21
  338. package/examples/listTemplate.ts +15 -15
  339. package/examples/plan.ts +13 -13
  340. package/examples/senderIdentityCreate.ts +20 -20
  341. package/examples/senderIdentityDelete.ts +14 -14
  342. package/examples/senderIdentityList.ts +15 -15
  343. package/examples/senderIdentityRerequest.ts +14 -14
  344. package/examples/senderIdentityResendInvitation.ts +14 -14
  345. package/examples/senderIdentityUpdate.ts +19 -19
  346. package/examples/teamCreate.ts +17 -17
  347. package/examples/teamGet.ts +14 -14
  348. package/examples/teamList.ts +15 -15
  349. package/examples/teamUpdate.ts +18 -18
  350. package/examples/templateAddTag.ts +19 -19
  351. package/examples/templateCreate.ts +28 -28
  352. package/examples/templateDelete.ts +14 -14
  353. package/examples/templateDeleteTag.ts +19 -19
  354. package/examples/templateDetails.ts +14 -14
  355. package/examples/templateDownload.ts +14 -14
  356. package/examples/templateEdit.ts +21 -21
  357. package/examples/templateEmbeddedCreate.ts +28 -28
  358. package/examples/templateEmbeddedEdit.ts +23 -23
  359. package/examples/templateEmbeddedRequestLink.ts +33 -33
  360. package/examples/templateMergerEmbeddedRequestUrl.ts +36 -36
  361. package/examples/templateSendDocument.ts +59 -59
  362. package/examples/templateSendDocumentUsingMultipleTemplate.ts +39 -39
  363. package/examples/userCreate.ts +19 -19
  364. package/examples/userGet.ts +14 -14
  365. package/examples/userInvitationCancel.ts +14 -14
  366. package/examples/userList.ts +15 -15
  367. package/examples/userResendInvitation.ts +14 -14
  368. package/examples/userUpdateRole.ts +18 -18
  369. package/git_push.sh +57 -57
  370. package/model/accessCodeDetail.ts +91 -91
  371. package/model/accessCodeDetails.ts +44 -44
  372. package/model/added.ts +43 -43
  373. package/model/address.ts +61 -61
  374. package/model/attachmentInfo.ts +49 -49
  375. package/model/auditTrail.ts +177 -175
  376. package/model/authenticationSettings.ts +40 -40
  377. package/model/base64File.ts +37 -37
  378. package/model/behalfDocument.ts +142 -142
  379. package/model/behalfDocumentRecords.ts +39 -39
  380. package/model/behalfOf.ts +37 -37
  381. package/model/billingViewModel.ts +31 -31
  382. package/model/brandCreated.ts +31 -31
  383. package/model/brandCustomFieldDetails.ts +62 -62
  384. package/model/brandingMessage.ts +31 -31
  385. package/model/brandingRecords.ts +32 -32
  386. package/model/changeRecipient.ts +74 -74
  387. package/model/collaborationSettings.ts +49 -0
  388. package/model/conditionalRule.ts +43 -43
  389. package/model/contactCreated.ts +37 -37
  390. package/model/contactDetails.ts +56 -56
  391. package/model/contactPageDetails.ts +43 -43
  392. package/model/contactsDetails.ts +62 -62
  393. package/model/contactsList.ts +39 -39
  394. package/model/createContactResponse.ts +32 -32
  395. package/model/createSenderIdentityRequest.ts +62 -62
  396. package/model/createTeamRequest.ts +31 -31
  397. package/model/createTemplateRequest.ts +181 -181
  398. package/model/createUser.ts +56 -56
  399. package/model/customDomainSettings.ts +37 -37
  400. package/model/customFieldCollection.ts +32 -32
  401. package/model/customFieldMessage.ts +37 -37
  402. package/model/customFormField.ts +275 -275
  403. package/model/deleteCustomFieldReply.ts +31 -31
  404. package/model/document.ts +135 -135
  405. package/model/documentCC.ts +31 -31
  406. package/model/documentCcDetails.ts +37 -37
  407. package/model/documentCreated.ts +31 -31
  408. package/model/documentExpirySettings.ts +69 -69
  409. package/model/documentFiles.ts +49 -43
  410. package/model/documentFormFields.ts +311 -292
  411. package/model/documentInfo.ts +90 -90
  412. package/model/documentProperties.ts +316 -316
  413. package/model/documentReassign.ts +43 -43
  414. package/model/documentRecords.ts +39 -39
  415. package/model/documentSenderDetail.ts +49 -49
  416. package/model/documentSigner.ts +221 -215
  417. package/model/documentSignerDetails.ts +265 -259
  418. package/model/documentTags.ts +37 -37
  419. package/model/downloadImageRequest.ts +61 -61
  420. package/model/editSenderIdentityRequest.ts +50 -50
  421. package/model/editTemplateRequest.ts +144 -144
  422. package/model/editableDateFieldSettings.ts +43 -43
  423. package/model/embeddedCreateTemplateRequest.ts +271 -271
  424. package/model/embeddedCustomFieldCreated.ts +31 -31
  425. package/model/embeddedDocumentRequest.ts +337 -337
  426. package/model/embeddedFileDetails.ts +61 -61
  427. package/model/embeddedFileLink.ts +31 -31
  428. package/model/embeddedMergeTemplateFormRequest.ts +343 -343
  429. package/model/embeddedSendCreated.ts +37 -37
  430. package/model/embeddedSendTemplateFormRequest.ts +324 -324
  431. package/model/embeddedSigningLink.ts +31 -31
  432. package/model/embeddedTemplateCreated.ts +37 -37
  433. package/model/embeddedTemplateEditRequest.ts +115 -115
  434. package/model/embeddedTemplateEdited.ts +31 -31
  435. package/model/errorResult.ts +31 -31
  436. package/model/existingFormField.ts +55 -55
  437. package/model/extendExpiry.ts +49 -49
  438. package/model/fileInfo.ts +49 -49
  439. package/model/font.ts +89 -89
  440. package/model/formField.ts +327 -320
  441. package/model/formGroup.ts +63 -63
  442. package/model/formulaFieldSettings.ts +37 -37
  443. package/model/idDocument.ts +93 -93
  444. package/model/idReport.ts +50 -50
  445. package/model/idVerification.ts +73 -73
  446. package/model/identityVerificationSettings.ts +75 -75
  447. package/model/imageInfo.ts +43 -43
  448. package/model/index.ts +546 -543
  449. package/model/mergeAndSendForSignForm.ts +261 -261
  450. package/model/modelDate.ts +43 -43
  451. package/model/modelError.ts +37 -37
  452. package/model/models.ts +244 -244
  453. package/model/modificationDetails.ts +37 -37
  454. package/model/notificationSettings.ts +97 -97
  455. package/model/pageDetails.ts +61 -61
  456. package/model/phoneNumber.ts +37 -37
  457. package/model/prefillField.ts +37 -37
  458. package/model/prefillFieldRequest.ts +38 -38
  459. package/model/problemDetails.ts +55 -55
  460. package/model/recipientChangeLog.ts +39 -39
  461. package/model/recipientNotificationSettings.ts +97 -97
  462. package/model/rectangle.ts +49 -49
  463. package/model/reminderMessage.ts +44 -44
  464. package/model/reminderSettings.ts +43 -43
  465. package/model/removeAuthentication.ts +50 -50
  466. package/model/removed.ts +43 -43
  467. package/model/revokeDocument.ts +37 -37
  468. package/model/role.ts +229 -229
  469. package/model/roles.ts +225 -225
  470. package/model/sendForSign.ts +255 -255
  471. package/model/sendForSignFromTemplateForm.ts +242 -242
  472. package/model/senderIdentityCreated.ts +31 -31
  473. package/model/senderIdentityList.ts +39 -39
  474. package/model/senderIdentityViewModel.ts +80 -80
  475. package/model/signerAuthenticationSettings.ts +37 -37
  476. package/model/size.ts +37 -37
  477. package/model/teamCreated.ts +31 -31
  478. package/model/teamDocumentRecords.ts +39 -39
  479. package/model/teamListResponse.ts +39 -39
  480. package/model/teamPageDetails.ts +37 -37
  481. package/model/teamResponse.ts +56 -56
  482. package/model/teamUpdateRequest.ts +37 -37
  483. package/model/teamUsers.ts +73 -73
  484. package/model/teams.ts +49 -49
  485. package/model/template.ts +159 -159
  486. package/model/templateCC.ts +37 -37
  487. package/model/templateCreated.ts +31 -31
  488. package/model/templateFormFields.ts +304 -297
  489. package/model/templateProperties.ts +202 -202
  490. package/model/templateRecords.ts +39 -39
  491. package/model/templateRole.ts +195 -195
  492. package/model/templateSenderDetail.ts +37 -37
  493. package/model/templateSenderDetails.ts +43 -43
  494. package/model/templateSharedTemplateDetail.ts +43 -43
  495. package/model/templateSignerDetails.ts +160 -160
  496. package/model/templateTag.ts +49 -49
  497. package/model/textTagDefinition.ts +255 -248
  498. package/model/textTagOffset.ts +37 -37
  499. package/model/updateUser.ts +60 -60
  500. package/model/updateUserMetaData.ts +37 -37
  501. package/model/userPageDetails.ts +37 -37
  502. package/model/userProperties.ts +91 -91
  503. package/model/userRecords.ts +39 -39
  504. package/model/usersDetails.ts +91 -91
  505. package/model/validation.ts +52 -52
  506. package/model/verificationDataRequest.ts +55 -55
  507. package/model/viewBrandDetails.ts +183 -177
  508. package/model/viewCustomFieldDetails.ts +68 -68
  509. package/package.json +52 -52
  510. package/tests/config.ts +20 -0
  511. package/tests/documents/agreement.pdf +0 -0
  512. package/tests/documents/logo.jpg +0 -0
  513. package/tests/integration/BrandingApiTest.spec.ts +254 -0
  514. package/tests/integration/ContactsApiTest.spec.ts +222 -0
  515. package/tests/integration/CustomFieldApiTest.spec.ts +231 -0
  516. package/tests/integration/DocumentApiTest.spec.ts +1624 -0
  517. package/tests/integration/IdentityVerificationApiTest.spec.ts +114 -0
  518. package/tests/integration/TemplateApiTest.spec.ts +1420 -0
  519. package/tests/integration/planApiTest.spec.ts +26 -0
  520. package/tests/integration/senderIdentity.spec.ts +397 -0
  521. package/tests/integration/teamsApiTest.spec.ts +226 -0
  522. package/tests/integration/usersApiTest.spec.ts +251 -0
  523. package/tests/performance/performanceApiTest.spec.ts +362 -0
  524. package/tests/unit/brandingApi.spec.ts +163 -0
  525. package/tests/unit/contactsApi.spec.ts +143 -0
  526. package/tests/unit/customFieldApi.spec.ts +123 -0
  527. package/tests/unit/documentApi.spec.ts +545 -0
  528. package/tests/unit/planApi.spec.ts +34 -0
  529. package/tests/unit/senderIdentitiesApi.spec.ts +148 -0
  530. package/tests/unit/teamApi.spec.ts +94 -0
  531. package/tests/unit/templateApi.spec.ts +307 -0
  532. package/tests/unit/userApi.spec.ts +162 -0
  533. package/tsconfig.json +24 -24
@@ -0,0 +1,545 @@
1
+ import { DocumentApi } from '../../api/documentApi';
2
+ import * as sinon from 'sinon';
3
+
4
+ describe('DocumentApi Unit Test', () => {
5
+ let documentApiStub: sinon.SinonStubbedInstance<DocumentApi> & {
6
+ sendDocumentFromTemplate: sinon.SinonStub;
7
+ };
8
+
9
+ beforeEach(() => {
10
+ documentApiStub = {
11
+ ...sinon.createStubInstance(DocumentApi),
12
+ sendDocumentFromTemplate: sinon.stub()
13
+ };
14
+ });
15
+
16
+ afterEach(() => {
17
+ sinon.restore();
18
+ });
19
+
20
+ it('should mock and verify sendDocument call with full SendForSign data', async () => {
21
+ const sendForSignData = {
22
+ document_id: "12345",
23
+ title: "Sample Document",
24
+ message: "Please sign this document.",
25
+ roles: [],
26
+ brand_id: "brand123",
27
+ labels: ["label1", "label2"],
28
+ disable_emails: false,
29
+ disable_sms: false,
30
+ hide_document_id: false,
31
+ expiry_days: 30,
32
+ expiry_date_type: "Days",
33
+ expiry_value: 60,
34
+ enable_print_and_sign: true,
35
+ enable_reassign: true,
36
+ enable_signing_order: true,
37
+ use_text_tags: false,
38
+ text_tag_definitions: [],
39
+ document_info: [],
40
+ on_behalf_of: null,
41
+ is_sandbox: false,
42
+ role_removal_indices: [],
43
+ document_download_option: "Combined",
44
+ recipient_notification_settings: null,
45
+ signers: [
46
+ {
47
+ name: "John Doe",
48
+ email: "john.doe@example.com"
49
+ }
50
+ ]
51
+ };
52
+
53
+ const mockSendResponse = {
54
+ documentId: "12345",
55
+ status: "sent",
56
+ message: "Document has been sent successfully."
57
+ };
58
+
59
+ documentApiStub.sendDocument.resolves(mockSendResponse);
60
+
61
+ const result = await documentApiStub.sendDocument(sendForSignData);
62
+
63
+ expect(result).toBeDefined();
64
+ expect(result.documentId).toBe("12345");
65
+ expect(result.status).toBe("sent");
66
+ expect(result.message).toBe("Document has been sent successfully.");
67
+
68
+ sinon.assert.calledOnceWithExactly(documentApiStub.sendDocument, sendForSignData);
69
+ });
70
+
71
+ it('should mock and verify sendDocumentFromTemplate call', async () => {
72
+ const templateId = 'template789';
73
+ const sendFromTemplateData = {
74
+ title: 'Template Based Document',
75
+ message: 'Please sign this document generated from a template.',
76
+ roles: [
77
+ {
78
+ role: 'Signer',
79
+ name: 'Alice Smith',
80
+ email: 'alice.smith@example.com'
81
+ }
82
+ ],
83
+ brand_id: 'brand123',
84
+ labels: ['template-doc'],
85
+ disable_emails: false,
86
+ disable_sms: false,
87
+ hide_document_id: false,
88
+ expiry_days: 15,
89
+ expiry_date_type: 'Days',
90
+ expiry_value: 15,
91
+ enable_print_and_sign: false,
92
+ enable_reassign: true,
93
+ enable_signing_order: false,
94
+ use_text_tags: false,
95
+ text_tag_definitions: [],
96
+ on_behalf_of: null,
97
+ is_sandbox: false,
98
+ document_download_option: 'Combined',
99
+ recipient_notification_settings: null
100
+ };
101
+
102
+ const mockSendFromTemplateResponse = {
103
+ documentId: 'generatedDocFromTemplate',
104
+ status: 'sent',
105
+ message: 'Document from template has been sent successfully.'
106
+ };
107
+
108
+ documentApiStub.sendDocumentFromTemplate.resolves(mockSendFromTemplateResponse);
109
+
110
+ const result = await documentApiStub.sendDocumentFromTemplate(templateId, sendFromTemplateData);
111
+
112
+ expect(result).toBeDefined();
113
+ expect(result.documentId).toBe('generatedDocFromTemplate');
114
+ expect(result.status).toBe('sent');
115
+ expect(result.message).toBe('Document from template has been sent successfully.');
116
+
117
+ sinon.assert.calledOnceWithExactly(documentApiStub.sendDocumentFromTemplate, templateId, sendFromTemplateData);
118
+ });
119
+
120
+ it('should mock and verify listDocuments call', async () => {
121
+ const mockListResponse = {
122
+ documents: [
123
+ {
124
+ documentId: 'doc1',
125
+ title: 'Document 1',
126
+ status: 'sent',
127
+ createdAt: '2025-05-18T10:00:00Z',
128
+ sender: 'sender@example.com',
129
+ recipient: 'recipient@example.com',
130
+ },
131
+ {
132
+ documentId: 'doc2',
133
+ title: 'Document 2',
134
+ status: 'signed',
135
+ createdAt: '2025-05-19T11:00:00Z',
136
+ sender: 'sender@example.com',
137
+ recipient: 'recipient@example.com',
138
+ },
139
+ ],
140
+ totalCount: 2,
141
+ pageSize: 10,
142
+ currentPage: 1,
143
+ };
144
+
145
+ documentApiStub.listDocuments.resolves(mockListResponse);
146
+
147
+ const result = await documentApiStub.listDocuments({ page: 1, pageSize: 10 });
148
+
149
+ expect(result).toBeDefined();
150
+ expect(result.documents.length).toBe(2);
151
+ expect(result.documents[0].documentId).toBe('doc1');
152
+ expect(result.documents[1].status).toBe('signed');
153
+ expect(result.totalCount).toBe(2);
154
+
155
+ sinon.assert.calledOnceWithExactly(documentApiStub.listDocuments, { page: 1, pageSize: 10 });
156
+ });
157
+
158
+ it('should mock and verify downloadDocument call', async () => {
159
+ const documentId = 'doc123';
160
+
161
+ const mockDownloadResponse = Buffer.from('PDF file content');
162
+
163
+ documentApiStub.downloadDocument = sinon.stub().resolves(mockDownloadResponse);
164
+
165
+ const result = await documentApiStub.downloadDocument(documentId);
166
+
167
+ expect(result).toBeDefined();
168
+ expect(result).toBeInstanceOf(Buffer);
169
+ expect(result.toString()).toBe('PDF file content');
170
+
171
+ sinon.assert.calledOnceWithExactly(documentApiStub.downloadDocument, documentId);
172
+ });
173
+
174
+ it('should mock and verify sendReminder call', async () => {
175
+ const documentId = 'doc123';
176
+ const reminderData = {
177
+ message: 'Reminder to sign the document.',
178
+ recipients: ['john.doe@example.com'],
179
+ };
180
+
181
+ const mockReminderResponse = {
182
+ success: true,
183
+ message: 'Reminder sent successfully.',
184
+ documentId: 'doc123',
185
+ };
186
+
187
+ documentApiStub.sendReminder = sinon.stub().resolves(mockReminderResponse);
188
+
189
+ const result = await documentApiStub.sendReminder(documentId, reminderData);
190
+
191
+ expect(result).toBeDefined();
192
+ expect(result.success).toBe(true);
193
+ expect(result.message).toBe('Reminder sent successfully.');
194
+ expect(result.documentId).toBe(documentId);
195
+
196
+ sinon.assert.calledOnceWithExactly(documentApiStub.sendReminder, documentId, reminderData);
197
+ });
198
+
199
+ it('should mock and verify revokeDocument call', async () => {
200
+ const documentId = 'doc123';
201
+ const revokeData = {
202
+ reason: 'Document contains incorrect information.'
203
+ };
204
+
205
+ const mockRevokeResponse = {
206
+ success: true,
207
+ message: 'Document has been revoked successfully.',
208
+ documentId: 'doc123'
209
+ };
210
+
211
+ documentApiStub.revokeDocument = sinon.stub().resolves(mockRevokeResponse);
212
+
213
+ const result = await documentApiStub.revokeDocument(documentId, revokeData);
214
+
215
+ expect(result).toBeDefined();
216
+ expect(result.success).toBe(true);
217
+ expect(result.message).toBe('Document has been revoked successfully.');
218
+ expect(result.documentId).toBe(documentId);
219
+
220
+ sinon.assert.calledOnceWithExactly(documentApiStub.revokeDocument, documentId, revokeData);
221
+ });
222
+
223
+ it('should mock and verify addDocumentTag call', async () => {
224
+ const documentId = 'doc123';
225
+ const tagData = {
226
+ tags: ['urgent', 'review']
227
+ };
228
+
229
+ const mockAddTagResponse = {
230
+ success: true,
231
+ message: 'Tags added to document successfully.',
232
+ documentId: 'doc123',
233
+ tags: ['urgent', 'review']
234
+ };
235
+
236
+ documentApiStub.addDocumentTag = sinon.stub().resolves(mockAddTagResponse);
237
+
238
+ const result = await documentApiStub.addDocumentTag(documentId, tagData);
239
+
240
+ expect(result).toBeDefined();
241
+ expect(result.success).toBe(true);
242
+ expect(result.message).toBe('Tags added to document successfully.');
243
+ expect(result.documentId).toBe(documentId);
244
+ expect(result.tags).toEqual(['urgent', 'review']);
245
+
246
+ sinon.assert.calledOnceWithExactly(documentApiStub.addDocumentTag, documentId, tagData);
247
+ });
248
+
249
+ it('should mock and verify deleteDocumentTag call', async () => {
250
+ const documentId = 'doc123';
251
+ const tagData = {
252
+ tags: ['urgent', 'review']
253
+ };
254
+
255
+ const mockDeleteTagResponse = {
256
+ success: true,
257
+ message: 'Tags deleted from document successfully.',
258
+ documentId: 'doc123',
259
+ tags: []
260
+ };
261
+
262
+ documentApiStub.deleteDocumentTag = sinon.stub().resolves(mockDeleteTagResponse);
263
+
264
+ const result = await documentApiStub.deleteDocumentTag(documentId, tagData);
265
+
266
+ expect(result).toBeDefined();
267
+ expect(result.success).toBe(true);
268
+ expect(result.message).toBe('Tags deleted from document successfully.');
269
+ expect(result.documentId).toBe(documentId);
270
+ expect(result.tags).toEqual([]);
271
+
272
+ sinon.assert.calledOnceWithExactly(documentApiStub.deleteDocumentTag, documentId, tagData);
273
+ });
274
+
275
+ it('should mock and verify prefillFormFields call', async () => {
276
+ const documentId = 'doc123';
277
+ const formData = {
278
+ title: 'Sample Document',
279
+ message: 'Please review and sign this document.',
280
+ formFields: {
281
+ 'FirstName': 'John',
282
+ 'LastName': 'Doe',
283
+ 'Email': 'john.doe@example.com',
284
+ 'Phone': '123-456-7890'
285
+ },
286
+ signers: [
287
+ {
288
+ name: 'John Doe',
289
+ email: 'john.doe@example.com',
290
+ role: 'Signer'
291
+ }
292
+ ]
293
+ };
294
+
295
+ const mockPrefillResponse = {
296
+ documentId: 'doc123',
297
+ status: 'prefilled',
298
+ message: 'Document fields have been prefilled successfully.',
299
+ prefilledFields: formData.formFields
300
+ };
301
+
302
+ documentApiStub.prefillFormFields = sinon.stub().resolves(mockPrefillResponse);
303
+
304
+ const result = await documentApiStub.prefillFormFields(documentId, formData);
305
+
306
+ expect(result).toBeDefined();
307
+ expect(result.documentId).toBe('doc123');
308
+ expect(result.status).toBe('prefilled');
309
+ expect(result.message).toBe('Document fields have been prefilled successfully.');
310
+ expect(result.prefilledFields).toEqual(formData.formFields);
311
+
312
+ sinon.assert.calledOnceWithExactly(documentApiStub.prefillFormFields, documentId, formData);
313
+ });
314
+
315
+ it('should mock and verify downloadAuditLog call', async () => {
316
+ const documentId = 'doc123';
317
+ const mockAuditLogResponse = {
318
+ documentId: 'doc123',
319
+ status: 'downloaded',
320
+ message: 'Audit log has been downloaded successfully.',
321
+ auditLogUrl: 'https://example.com/audit/logs/doc123-audit-log.pdf'
322
+ };
323
+
324
+ documentApiStub.downloadAuditLog = sinon.stub().resolves(mockAuditLogResponse);
325
+
326
+ const result = await documentApiStub.downloadAuditLog(documentId);
327
+
328
+ expect(result).toBeDefined();
329
+ expect(result.documentId).toBe('doc123');
330
+ expect(result.status).toBe('downloaded');
331
+ expect(result.message).toBe('Audit log has been downloaded successfully.');
332
+ expect(result.auditLogUrl).toBe('https://example.com/audit/logs/doc123-audit-log.pdf');
333
+
334
+ sinon.assert.calledOnceWithExactly(documentApiStub.downloadAuditLog, documentId);
335
+ });
336
+
337
+ it('should mock and verify changeAccessCode call', async () => {
338
+ const documentId = 'doc123';
339
+ const newAccessCode = 'newAccessCode123';
340
+ const mockChangeAccessCodeResponse = {
341
+ documentId: 'doc123',
342
+ status: 'access code updated',
343
+ message: 'The access code has been successfully changed.',
344
+ newAccessCode: 'newAccessCode123'
345
+ };
346
+
347
+ documentApiStub.changeAccessCode = sinon.stub().resolves(mockChangeAccessCodeResponse);
348
+
349
+ const result = await documentApiStub.changeAccessCode(documentId, newAccessCode);
350
+
351
+ expect(result).toBeDefined();
352
+ expect(result.documentId).toBe('doc123');
353
+ expect(result.status).toBe('access code updated');
354
+ expect(result.message).toBe('The access code has been successfully changed.');
355
+ expect(result.newAccessCode).toBe('newAccessCode123');
356
+
357
+ sinon.assert.calledOnceWithExactly(documentApiStub.changeAccessCode, documentId, newAccessCode);
358
+ });
359
+
360
+ it('should mock and verify changeRecipients call', async () => {
361
+ const documentId = 'doc123';
362
+ const newRecipients = [
363
+ { name: 'Alice Doe', email: 'alice.doe@example.com' },
364
+ { name: 'Bob Smith', email: 'bob.smith@example.com' }
365
+ ];
366
+
367
+ const mockChangeRecipientsResponse = {
368
+ documentId: 'doc123',
369
+ status: 'recipients updated',
370
+ message: 'Recipients have been successfully updated.',
371
+ recipients: newRecipients
372
+ };
373
+
374
+ documentApiStub.changeRecipients = sinon.stub().resolves(mockChangeRecipientsResponse);
375
+
376
+ const result = await documentApiStub.changeRecipients(documentId, newRecipients);
377
+
378
+ expect(result).toBeDefined();
379
+ expect(result.documentId).toBe('doc123');
380
+ expect(result.status).toBe('recipients updated');
381
+ expect(result.message).toBe('Recipients have been successfully updated.');
382
+ expect(result.recipients).toEqual(newRecipients);
383
+
384
+ sinon.assert.calledOnceWithExactly(documentApiStub.changeRecipients, documentId, newRecipients);
385
+ });
386
+
387
+ it('should mock and verify getEmbeddedSigningLink call', async () => {
388
+ const documentId = 'doc123';
389
+ const signerId = 'signer123';
390
+
391
+ const mockEmbeddedSigningLinkResponse = {
392
+ documentId: 'doc123',
393
+ signerId: 'signer123',
394
+ embeddedSignUrl: 'https://signing-platform.com/embed/sign/document/12345'
395
+ };
396
+
397
+ documentApiStub.getEmbeddedSigningLink = sinon.stub().resolves(mockEmbeddedSigningLinkResponse);
398
+
399
+ const result = await documentApiStub.getEmbeddedSigningLink(documentId, signerId);
400
+
401
+ expect(result).toBeDefined();
402
+ expect(result.documentId).toBe('doc123');
403
+ expect(result.signerId).toBe('signer123');
404
+ expect(result.embeddedSignUrl).toBe('https://signing-platform.com/embed/sign/document/12345');
405
+
406
+ sinon.assert.calledOnceWithExactly(documentApiStub.getEmbeddedSigningLink, documentId, signerId);
407
+ });
408
+
409
+ it('should mock and verify addAuthentication call', async () => {
410
+ const documentId = 'doc123';
411
+ const authenticationData = {
412
+ authenticationMethod: 'password',
413
+ password: 'securePassword123',
414
+ enableMFA: true,
415
+ mfaMethod: 'sms',
416
+ };
417
+
418
+ const mockAuthenticationResponse = {
419
+ documentId: 'doc123',
420
+ status: 'authentication_added',
421
+ message: 'Authentication method added successfully.'
422
+ };
423
+
424
+ documentApiStub.addAuthentication.resolves(mockAuthenticationResponse);
425
+
426
+ const result = await documentApiStub.addAuthentication(documentId, authenticationData);
427
+
428
+ expect(result).toBeDefined();
429
+ expect(result.documentId).toBe('doc123');
430
+ expect(result.status).toBe('authentication_added');
431
+ expect(result.message).toBe('Authentication method added successfully.');
432
+
433
+ sinon.assert.calledOnceWithExactly(documentApiStub.addAuthentication, documentId, authenticationData);
434
+ });
435
+
436
+ it('should mock and verify removeAuthentication call', async () => {
437
+ const documentId = 'doc123';
438
+
439
+ const mockRemoveAuthResponse = {
440
+ documentId: 'doc123',
441
+ status: 'authentication_removed',
442
+ message: 'Authentication method removed successfully.'
443
+ };
444
+
445
+ documentApiStub.removeAuthentication.resolves(mockRemoveAuthResponse);
446
+
447
+ const result = await documentApiStub.removeAuthentication(documentId);
448
+
449
+ expect(result).toBeDefined();
450
+ expect(result.documentId).toBe('doc123');
451
+ expect(result.status).toBe('authentication_removed');
452
+ expect(result.message).toBe('Authentication method removed successfully.');
453
+
454
+ sinon.assert.calledOnceWithExactly(documentApiStub.removeAuthentication, documentId);
455
+ });
456
+
457
+
458
+ it('should mock and verify extendDocumentExpiry call', async () => {
459
+ const documentId = 'doc123';
460
+ const newExpiryDate = '2025-06-01';
461
+
462
+ const mockExtendExpiryResponse = {
463
+ documentId: 'doc123',
464
+ status: 'expiry_extended',
465
+ newExpiryDate: newExpiryDate,
466
+ message: 'Document expiry extended successfully.'
467
+ };
468
+
469
+ documentApiStub.extendDocumentExpiry = sinon.stub().resolves(mockExtendExpiryResponse);
470
+
471
+ const result = await documentApiStub.extendDocumentExpiry(documentId, newExpiryDate);
472
+
473
+ expect(result).toBeDefined();
474
+ expect(result.documentId).toBe('doc123');
475
+ expect(result.status).toBe('expiry_extended');
476
+ expect(result.newExpiryDate).toBe(newExpiryDate);
477
+ expect(result.message).toBe('Document expiry extended successfully.');
478
+
479
+ sinon.assert.calledOnceWithExactly(documentApiStub.extendDocumentExpiry, documentId, newExpiryDate);
480
+ });
481
+
482
+ it('should mock and verify listBehalfDocuments call', async () => {
483
+ const onBehalfOf = 'john.doe@example.com';
484
+
485
+ const mockBehalfDocuments = [
486
+ {
487
+ documentId: 'doc123',
488
+ title: 'Sample Document 1',
489
+ status: 'signed',
490
+ onBehalfOf: 'john.doe@example.com',
491
+ },
492
+ {
493
+ documentId: 'doc124',
494
+ title: 'Sample Document 2',
495
+ status: 'pending',
496
+ onBehalfOf: 'john.doe@example.com',
497
+ },
498
+ ];
499
+
500
+ documentApiStub.listBehalfDocuments = sinon.stub().resolves(mockBehalfDocuments);
501
+
502
+ const result = await documentApiStub.listBehalfDocuments(onBehalfOf);
503
+
504
+ expect(result).toBeDefined();
505
+ expect(result.length).toBe(2);
506
+ expect(result[0].documentId).toBe('doc123');
507
+ expect(result[0].status).toBe('signed');
508
+ expect(result[1].status).toBe('pending');
509
+ expect(result[1].title).toBe('Sample Document 2');
510
+
511
+ sinon.assert.calledOnceWithExactly(documentApiStub.listBehalfDocuments, onBehalfOf);
512
+ });
513
+
514
+ it('should mock and verify listTeamDocuments call', async () => {
515
+ const teamId = 'team123';
516
+
517
+ const mockTeamDocuments = [
518
+ {
519
+ documentId: 'doc123',
520
+ title: 'Team Document 1',
521
+ status: 'signed',
522
+ teamId: 'team123',
523
+ },
524
+ {
525
+ documentId: 'doc124',
526
+ title: 'Team Document 2',
527
+ status: 'pending',
528
+ teamId: 'team123',
529
+ },
530
+ ];
531
+
532
+ documentApiStub.listTeamDocuments = sinon.stub().resolves(mockTeamDocuments);
533
+
534
+ const result = await documentApiStub.listTeamDocuments(teamId);
535
+
536
+ expect(result).toBeDefined();
537
+ expect(result.length).toBe(2);
538
+ expect(result[0].documentId).toBe('doc123');
539
+ expect(result[0].status).toBe('signed');
540
+ expect(result[1].status).toBe('pending');
541
+ expect(result[1].title).toBe('Team Document 2');
542
+
543
+ sinon.assert.calledOnceWithExactly(documentApiStub.listTeamDocuments, teamId);
544
+ });
545
+ });
@@ -0,0 +1,34 @@
1
+ import { PlanApi } from '../../api/planApi'; // Adjust path accordingly
2
+ import * as sinon from 'sinon';
3
+
4
+ describe('PlanApi Unit Test', () => {
5
+ let planApiStub: sinon.SinonStubbedInstance<PlanApi>;
6
+
7
+ beforeEach(() => {
8
+ // Create a stub instance for the PlanApi class
9
+ planApiStub = sinon.createStubInstance(PlanApi);
10
+
11
+ planApiStub.getBalanceDocumentCredits = sinon.stub().resolves({
12
+ balanceCredits: 150,
13
+ });
14
+
15
+ planApiStub.someOtherMethod = sinon.stub().resolves({ success: true });
16
+ });
17
+
18
+ afterEach(() => {
19
+ sinon.restore();
20
+ });
21
+
22
+ it('should mock and verify getBalanceDocumentCredits call', async () => {
23
+ const expectedBalance = {
24
+ balanceCredits: 150,
25
+ };
26
+
27
+ const result = await planApiStub.getBalanceDocumentCredits();
28
+
29
+ expect(result).toBeDefined();
30
+ expect(result.balanceCredits).toBe(150);
31
+
32
+ sinon.assert.calledOnce(planApiStub.getBalanceDocumentCredits);
33
+ });
34
+ });