apacuana-sdk-core 0.9.0 → 0.11.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 (56) hide show
  1. package/README.md +320 -236
  2. package/coverage/clover.xml +341 -212
  3. package/coverage/coverage-final.json +9 -7
  4. package/coverage/lcov-report/index.html +34 -19
  5. package/coverage/lcov-report/src/api/certs.js.html +493 -37
  6. package/coverage/lcov-report/src/api/faceLiveness.js.html +496 -0
  7. package/coverage/lcov-report/src/api/index.html +43 -28
  8. package/coverage/lcov-report/src/api/revocations.js.html +103 -106
  9. package/coverage/lcov-report/src/api/signatures.js.html +25 -253
  10. package/coverage/lcov-report/src/api/users.js.html +7 -13
  11. package/coverage/lcov-report/src/config/index.html +1 -1
  12. package/coverage/lcov-report/src/config/index.js.html +1 -1
  13. package/coverage/lcov-report/src/errors/index.html +1 -1
  14. package/coverage/lcov-report/src/errors/index.js.html +8 -8
  15. package/coverage/lcov-report/src/index.html +1 -1
  16. package/coverage/lcov-report/src/index.js.html +48 -3
  17. package/coverage/lcov-report/src/success/index.html +116 -0
  18. package/coverage/lcov-report/src/success/index.js.html +106 -0
  19. package/coverage/lcov-report/src/utils/constant.js.html +4 -4
  20. package/coverage/lcov-report/src/utils/helpers.js.html +1 -1
  21. package/coverage/lcov-report/src/utils/httpClient.js.html +1 -1
  22. package/coverage/lcov-report/src/utils/index.html +1 -1
  23. package/coverage/lcov.info +591 -352
  24. package/dist/api/certs.d.ts +13 -30
  25. package/dist/api/faceLiveness.d.ts +6 -0
  26. package/dist/api/revocations.d.ts +3 -42
  27. package/dist/api/signatures.d.ts +11 -153
  28. package/dist/index.d.ts +10 -0
  29. package/dist/index.js +630 -214
  30. package/dist/index.js.map +1 -1
  31. package/dist/index.mjs +630 -214
  32. package/dist/index.mjs.map +1 -1
  33. package/dist/success/index.d.ts +7 -0
  34. package/dist/types/certs.d.ts +97 -0
  35. package/dist/types/faceLiveness.d.ts +10 -0
  36. package/dist/types/revocations.d.ts +40 -0
  37. package/dist/types/signatures.d.ts +152 -0
  38. package/dist/types/users.d.ts +260 -0
  39. package/package.json +1 -1
  40. package/src/api/certs.js +175 -23
  41. package/src/api/faceLiveness.js +137 -0
  42. package/src/api/revocations.js +66 -67
  43. package/src/api/signatures.js +21 -97
  44. package/src/api/users.js +4 -6
  45. package/src/index.js +16 -1
  46. package/src/success/index.js +8 -0
  47. package/src/types/certs.js +56 -0
  48. package/src/types/faceLiveness.js +7 -0
  49. package/src/types/revocations.js +25 -0
  50. package/src/types/signatures.js +77 -0
  51. package/src/types/users.js +73 -0
  52. package/tests/api/certs.test.js +209 -4
  53. package/tests/api/faceLiveness.test.js +172 -0
  54. package/tests/api/revocations.test.js +37 -37
  55. package/tests/api/signatures.test.js +11 -5
  56. package/tests/api/users.test.js +3 -2
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">83.33% </span>
26
+ <span class="strong">89.61% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>20/24</span>
28
+ <span class='fraction'>69/77</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">63.63% </span>
33
+ <span class="strong">81.57% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>7/11</span>
35
+ <span class='fraction'>31/38</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>4/4</span>
42
+ <span class='fraction'>13/13</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">83.33% </span>
47
+ <span class="strong">89.61% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>20/24</span>
49
+ <span class='fraction'>69/77</span>
50
50
  </div>
51
51
 
52
52
 
@@ -164,7 +164,159 @@
164
164
  <a name='L99'></a><a href='#L99'>99</a>
165
165
  <a name='L100'></a><a href='#L100'>100</a>
166
166
  <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
168
320
  <span class="cline-any cline-neutral">&nbsp;</span>
169
321
  <span class="cline-any cline-neutral">&nbsp;</span>
170
322
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -185,31 +337,88 @@
185
337
  <span class="cline-any cline-neutral">&nbsp;</span>
186
338
  <span class="cline-any cline-neutral">&nbsp;</span>
187
339
  <span class="cline-any cline-neutral">&nbsp;</span>
340
+ <span class="cline-any cline-yes">2x</span>
341
+ <span class="cline-any cline-yes">1x</span>
342
+ <span class="cline-any cline-yes">1x</span>
343
+ <span class="cline-any cline-neutral">&nbsp;</span>
344
+ <span class="cline-any cline-neutral">&nbsp;</span>
345
+ <span class="cline-any cline-neutral">&nbsp;</span>
346
+ <span class="cline-any cline-neutral">&nbsp;</span>
347
+ <span class="cline-any cline-yes">1x</span>
348
+ <span class="cline-any cline-yes">1x</span>
349
+ <span class="cline-any cline-no">&nbsp;</span>
188
350
  <span class="cline-any cline-neutral">&nbsp;</span>
189
351
  <span class="cline-any cline-neutral">&nbsp;</span>
190
352
  <span class="cline-any cline-neutral">&nbsp;</span>
191
353
  <span class="cline-any cline-neutral">&nbsp;</span>
192
354
  <span class="cline-any cline-neutral">&nbsp;</span>
193
355
  <span class="cline-any cline-neutral">&nbsp;</span>
194
- <span class="cline-any cline-yes">2x</span>
195
356
  <span class="cline-any cline-yes">1x</span>
357
+ <span class="cline-any cline-neutral">&nbsp;</span>
358
+ <span class="cline-any cline-neutral">&nbsp;</span>
359
+ <span class="cline-any cline-no">&nbsp;</span>
360
+ <span class="cline-any cline-no">&nbsp;</span>
361
+ <span class="cline-any cline-neutral">&nbsp;</span>
362
+ <span class="cline-any cline-no">&nbsp;</span>
363
+ <span class="cline-any cline-neutral">&nbsp;</span>
364
+ <span class="cline-any cline-neutral">&nbsp;</span>
365
+ <span class="cline-any cline-neutral">&nbsp;</span>
366
+ <span class="cline-any cline-yes">2x</span>
196
367
  <span class="cline-any cline-yes">1x</span>
197
368
  <span class="cline-any cline-neutral">&nbsp;</span>
198
369
  <span class="cline-any cline-neutral">&nbsp;</span>
199
370
  <span class="cline-any cline-neutral">&nbsp;</span>
200
371
  <span class="cline-any cline-neutral">&nbsp;</span>
372
+ <span class="cline-any cline-neutral">&nbsp;</span>
373
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
+ <span class="cline-any cline-neutral">&nbsp;</span>
375
+ <span class="cline-any cline-neutral">&nbsp;</span>
376
+ <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-neutral">&nbsp;</span>
378
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-neutral">&nbsp;</span>
380
+ <span class="cline-any cline-neutral">&nbsp;</span>
381
+ <span class="cline-any cline-yes">2x</span>
382
+ <span class="cline-any cline-yes">3x</span>
383
+ <span class="cline-any cline-yes">3x</span>
384
+ <span class="cline-any cline-yes">3x</span>
385
+ <span class="cline-any cline-yes">1x</span>
386
+ <span class="cline-any cline-neutral">&nbsp;</span>
387
+ <span class="cline-any cline-yes">2x</span>
201
388
  <span class="cline-any cline-yes">1x</span>
389
+ <span class="cline-any cline-neutral">&nbsp;</span>
390
+ <span class="cline-any cline-neutral">&nbsp;</span>
202
391
  <span class="cline-any cline-yes">1x</span>
203
- <span class="cline-any cline-no">&nbsp;</span>
204
392
  <span class="cline-any cline-neutral">&nbsp;</span>
205
393
  <span class="cline-any cline-neutral">&nbsp;</span>
206
394
  <span class="cline-any cline-neutral">&nbsp;</span>
207
395
  <span class="cline-any cline-neutral">&nbsp;</span>
208
396
  <span class="cline-any cline-neutral">&nbsp;</span>
209
397
  <span class="cline-any cline-neutral">&nbsp;</span>
398
+ <span class="cline-any cline-neutral">&nbsp;</span>
399
+ <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-yes">2x</span>
210
404
  <span class="cline-any cline-yes">1x</span>
405
+ <span class="cline-any cline-yes">1x</span>
406
+ <span class="cline-any cline-neutral">&nbsp;</span>
211
407
  <span class="cline-any cline-neutral">&nbsp;</span>
212
408
  <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-yes">1x</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-yes">2x</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">1x</span>
415
+ <span class="cline-any cline-neutral">&nbsp;</span>
416
+ <span class="cline-any cline-neutral">&nbsp;</span>
417
+ <span class="cline-any cline-neutral">&nbsp;</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-neutral">&nbsp;</span>
420
+ <span class="cline-any cline-yes">1x</span>
421
+ <span class="cline-any cline-neutral">&nbsp;</span>
213
422
  <span class="cline-any cline-no">&nbsp;</span>
214
423
  <span class="cline-any cline-no">&nbsp;</span>
215
424
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -231,11 +440,9 @@
231
440
  <span class="cline-any cline-neutral">&nbsp;</span>
232
441
  <span class="cline-any cline-neutral">&nbsp;</span>
233
442
  <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
235
443
  <span class="cline-any cline-yes">2x</span>
236
444
  <span class="cline-any cline-yes">3x</span>
237
445
  <span class="cline-any cline-yes">3x</span>
238
- <span class="cline-any cline-yes">3x</span>
239
446
  <span class="cline-any cline-yes">1x</span>
240
447
  <span class="cline-any cline-neutral">&nbsp;</span>
241
448
  <span class="cline-any cline-yes">2x</span>
@@ -249,46 +456,137 @@
249
456
  <span class="cline-any cline-neutral">&nbsp;</span>
250
457
  <span class="cline-any cline-neutral">&nbsp;</span>
251
458
  <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-yes">2x</span>
460
+ <span class="cline-any cline-yes">2x</span>
461
+ <span class="cline-any cline-yes">2x</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
+ <span class="cline-any cline-neutral">&nbsp;</span>
467
+ <span class="cline-any cline-yes">1x</span>
468
+ <span class="cline-any cline-neutral">&nbsp;</span>
469
+ <span class="cline-any cline-yes">1x</span>
470
+ <span class="cline-any cline-no">&nbsp;</span>
471
+ <span class="cline-any cline-neutral">&nbsp;</span>
472
+ <span class="cline-any cline-yes">1x</span>
473
+ <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-neutral">&nbsp;</span>
475
+ <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-yes">2x</span>
477
+ <span class="cline-any cline-yes">1x</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-neutral">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-neutral">&nbsp;</span>
486
+ <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-neutral">&nbsp;</span>
490
+ <span class="cline-any cline-neutral">&nbsp;</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-yes">2x</span>
493
+ <span class="cline-any cline-yes">7x</span>
494
+ <span class="cline-any cline-yes">3x</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-yes">4x</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-yes">4x</span>
501
+ <span class="cline-any cline-yes">4x</span>
502
+ <span class="cline-any cline-yes">2x</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-yes">2x</span>
505
+ <span class="cline-any cline-yes">1x</span>
506
+ <span class="cline-any cline-neutral">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-yes">1x</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-yes">2x</span>
516
+ <span class="cline-any cline-yes">3x</span>
517
+ <span class="cline-any cline-yes">3x</span>
252
518
  <span class="cline-any cline-neutral">&nbsp;</span>
253
519
  <span class="cline-any cline-neutral">&nbsp;</span>
254
520
  <span class="cline-any cline-neutral">&nbsp;</span>
255
521
  <span class="cline-any cline-neutral">&nbsp;</span>
256
522
  <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-yes">1x</span>
524
+ <span class="cline-any cline-neutral">&nbsp;</span>
257
525
  <span class="cline-any cline-yes">2x</span>
258
526
  <span class="cline-any cline-yes">1x</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-yes">1x</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</span>
532
+ <span class="cline-any cline-yes">2x</span>
259
533
  <span class="cline-any cline-yes">1x</span>
260
534
  <span class="cline-any cline-neutral">&nbsp;</span>
261
535
  <span class="cline-any cline-neutral">&nbsp;</span>
262
536
  <span class="cline-any cline-neutral">&nbsp;</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-neutral">&nbsp;</span>
540
+ <span class="cline-any cline-neutral">&nbsp;</span>
541
+ <span class="cline-any cline-neutral">&nbsp;</span>
542
+ <span class="cline-any cline-neutral">&nbsp;</span>
543
+ <span class="cline-any cline-neutral">&nbsp;</span>
544
+ <span class="cline-any cline-neutral">&nbsp;</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-neutral">&nbsp;</span>
547
+ <span class="cline-any cline-yes">2x</span>
548
+ <span class="cline-any cline-yes">8x</span>
549
+ <span class="cline-any cline-neutral">&nbsp;</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-neutral">&nbsp;</span>
552
+ <span class="cline-any cline-neutral">&nbsp;</span>
553
+ <span class="cline-any cline-yes">3x</span>
554
+ <span class="cline-any cline-neutral">&nbsp;</span>
555
+ <span class="cline-any cline-neutral">&nbsp;</span>
556
+ <span class="cline-any cline-neutral">&nbsp;</span>
557
+ <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-yes">5x</span>
559
+ <span class="cline-any cline-yes">5x</span>
560
+ <span class="cline-any cline-yes">3x</span>
561
+ <span class="cline-any cline-neutral">&nbsp;</span>
562
+ <span class="cline-any cline-yes">2x</span>
263
563
  <span class="cline-any cline-yes">1x</span>
264
564
  <span class="cline-any cline-neutral">&nbsp;</span>
265
565
  <span class="cline-any cline-neutral">&nbsp;</span>
566
+ <span class="cline-any cline-yes">1x</span>
567
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
+ <span class="cline-any cline-neutral">&nbsp;</span>
569
+ <span class="cline-any cline-neutral">&nbsp;</span>
266
570
  <span class="cline-any cline-neutral">&nbsp;</span>
267
571
  <span class="cline-any cline-neutral">&nbsp;</span>
268
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { getConfig } from "../config/index";
572
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/**
573
+ * @typedef {import('../types/users').UserData} UserData
574
+ * @typedef {import('../types/certs').GenerateCertResponse} GenerateCertResponse
575
+ * @typedef {import('../types/certs').GetCertStatusResponse} GetCertStatusResponse
576
+ * @typedef {import('../types/certs').EncryptedCSRObject} EncryptedCSRObject
577
+ * @typedef {import('../types/certs').GetCertTypesResponse} GetCertTypesResponse
578
+ * @typedef {import('../types/certs').GetRequirementsResponse} GetRequirementsResponse
579
+ * @typedef {import('../types/certs').CertificateRequestParams} CertificateRequestParams
580
+ * @typedef {import('../types/certs').RequestCertificateResponse} RequestCertificateResponse
581
+ */
582
+ &nbsp;
583
+ import { getConfig } from "../config/index";
269
584
  import { httpRequest } from "../utils/httpClient";
270
585
  import helpers from "../utils/helpers";
271
586
  import { ApacuanaAPIError } from "../errors";
587
+ import ApacuanaSuccess from "../success";
272
588
  import { INTEGRATION_TYPE } from "../utils/constant";
273
589
  &nbsp;
274
- /**
275
- * @typedef {object} GenerateCertResponse
276
- * @property {string} cert - El certificado generado en formato string.
277
- * @property {string} certifiedid - El ID del certificado generado.
278
- * @property {boolean} success - Indica si la operación fue exitosa.
279
- */
280
- &nbsp;
281
- /**
282
- * @typedef {object} GetCertStatusResponse
283
- * @property {string} status - El estado actual del certificado del usuario.
284
- * @property {boolean} success - Indica si la operación fue exitosa.
285
- */
286
- &nbsp;
287
- /**
288
- * @typedef {object} EncryptedCSRObject
289
- * @property {string} csr - The encrypted Certificate Signing Request.
290
- */
291
- &nbsp;
292
590
  /**
293
591
  * @param {EncryptedCSRObject} encryptedCSR
294
592
  */
@@ -308,7 +606,7 @@ const generateCertOnBoarding = async (encryptedCSR) =&gt; {
308
606
  );
309
607
  }
310
608
  &nbsp;
311
- return { cert, certifiedid, success: true };
609
+ return new ApacuanaSuccess({ cert, certifiedid });
312
610
  } catch (error) {
313
611
  // The captured error is re-thrown, which will already be of type ApacuanaAPIError or a native Error.
314
612
  <span class="cstat-no" title="statement not covered" > if (error instanceof ApacuanaAPIError) {</span>
@@ -361,10 +659,168 @@ export const getCertStatus = (isCertificateInDevice = <span class="branch-0 cbra
361
659
  config.userData,
362
660
  isCertificateInDevice
363
661
  );
364
- return {
365
- status,
366
- success: true,
367
- };
662
+ return new ApacuanaSuccess({ status });
663
+ };
664
+ &nbsp;
665
+ const getCertTypesOnBoarding = async () =&gt; {
666
+ try {
667
+ const response = await httpRequest(
668
+ "services/api/customer/typeusers",
669
+ {},
670
+ "GET"
671
+ );
672
+ &nbsp;
673
+ return new ApacuanaSuccess(response);
674
+ } catch (error) {
675
+ <span class="cstat-no" title="statement not covered" > if (error instanceof ApacuanaAPIError) {</span>
676
+ <span class="cstat-no" title="statement not covered" > throw error;</span>
677
+ }
678
+ <span class="cstat-no" title="statement not covered" > throw new Error(`Failed to get certificate types: ${error.message}`);</span>
679
+ }
680
+ };
681
+ &nbsp;
682
+ const getCertTypesOnPremise = async () =&gt; {
683
+ throw new ApacuanaAPIError(
684
+ "Getting certificate types is not supported for integration type: ONPREMISE",
685
+ 501,
686
+ "NOT_IMPLEMENTED"
687
+ );
688
+ };
689
+ &nbsp;
690
+ /**
691
+ * Gets the available certificate types.
692
+ * @returns {Promise&lt;GetCertTypesResponse&gt;} Object with the list of certificate types and a success indicator.
693
+ * @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
694
+ * @throws {Error} If the request fails for another reason.
695
+ */
696
+ export const getCertTypes = async () =&gt; {
697
+ const { integrationType } = getConfig();
698
+ if (integrationType === INTEGRATION_TYPE.ONBOARDING) {
699
+ return getCertTypesOnBoarding();
700
+ }
701
+ if (integrationType === INTEGRATION_TYPE.ONPREMISE) {
702
+ return getCertTypesOnPremise();
703
+ }
704
+ &nbsp;
705
+ throw new ApacuanaAPIError(
706
+ `Unsupported integration type: ${integrationType}`,
707
+ 400,
708
+ "UNSUPPORTED_INTEGRATION_TYPE"
709
+ );
710
+ };
711
+ &nbsp;
712
+ const getRequerimentsByTypeUserOnBoarding = async (type) =&gt; {
713
+ try {
714
+ const response = await httpRequest(
715
+ `services/api/customer/documentspref?typeuser=${type}`,
716
+ {},
717
+ "GET"
718
+ );
719
+ &nbsp;
720
+ return new ApacuanaSuccess(response);
721
+ } catch (error) {
722
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (error instanceof ApacuanaAPIError) {
723
+ <span class="cstat-no" title="statement not covered" > throw error;</span>
724
+ }
725
+ throw new Error(`Failed to get requirements: ${error.message}`);
726
+ }
727
+ };
728
+ &nbsp;
729
+ const getRequerimentsByTypeUserOnPremise = async () =&gt; {
730
+ throw new ApacuanaAPIError(
731
+ "Getting requirements by user type is not supported for integration type: ONPREMISE",
732
+ 501,
733
+ "NOT_IMPLEMENTED"
734
+ );
735
+ };
736
+ &nbsp;
737
+ /**
738
+ * Gets the requirements for a given user type.
739
+ * @param {object} params - The parameters.
740
+ * @param {number} params.type - The user type to get requirements for.
741
+ * @returns {Promise&lt;GetRequirementsResponse&gt;} Object with the list of requirements and a success indicator.
742
+ * @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
743
+ * @throws {Error} If the request fails for another reason or the type is invalid.
744
+ */
745
+ export const getRequerimentsByTypeUser = async (params) =&gt; {
746
+ if (!params || typeof params.type !== "number") {
747
+ throw new Error(
748
+ 'The "params" object with a numeric "type" property is required.'
749
+ );
750
+ }
751
+ const { type } = params;
752
+ &nbsp;
753
+ const { integrationType } = getConfig();
754
+ if (integrationType === INTEGRATION_TYPE.ONBOARDING) {
755
+ return getRequerimentsByTypeUserOnBoarding(type);
756
+ }
757
+ if (integrationType === INTEGRATION_TYPE.ONPREMISE) {
758
+ return getRequerimentsByTypeUserOnPremise();
759
+ }
760
+ &nbsp;
761
+ throw new ApacuanaAPIError(
762
+ `Unsupported integration type: ${integrationType}`,
763
+ 400,
764
+ "UNSUPPORTED_INTEGRATION_TYPE"
765
+ );
766
+ };
767
+ &nbsp;
768
+ const requestCertificateOnBoarding = async (params) =&gt; {
769
+ try {
770
+ const response = await httpRequest(
771
+ "services/api/customer/request-certificate",
772
+ params,
773
+ "POST"
774
+ );
775
+ &nbsp;
776
+ return new ApacuanaSuccess(response);
777
+ } catch (error) {
778
+ if (error instanceof ApacuanaAPIError) {
779
+ throw error;
780
+ }
781
+ throw new Error(`Failed to request certificate: ${error.message}`);
782
+ }
783
+ };
784
+ &nbsp;
785
+ const requestCertificateOnPremise = async () =&gt; {
786
+ throw new ApacuanaAPIError(
787
+ "Requesting a certificate is not supported for integration type: ONPREMISE",
788
+ 501,
789
+ "NOT_IMPLEMENTED"
790
+ );
791
+ };
792
+ &nbsp;
793
+ /**
794
+ * Requests a certificate for the user.
795
+ * @param {CertificateRequestParams} params - The parameters for the certificate request.
796
+ * @returns {Promise&lt;RequestCertificateResponse&gt;} Object with a confirmation message and a success indicator.
797
+ * @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
798
+ * @throws {Error} If the request fails for another reason or the params are invalid.
799
+ */
800
+ export const requestCertificate = async (params) =&gt; {
801
+ if (
802
+ !params ||
803
+ typeof params.type !== "number" ||
804
+ !Array.isArray(params.documents)
805
+ ) {
806
+ throw new Error(
807
+ 'The "params" object with a numeric "type" property and a "documents" array is required.'
808
+ );
809
+ }
810
+ &nbsp;
811
+ const { integrationType } = getConfig();
812
+ if (integrationType === INTEGRATION_TYPE.ONBOARDING) {
813
+ return requestCertificateOnBoarding(params);
814
+ }
815
+ if (integrationType === INTEGRATION_TYPE.ONPREMISE) {
816
+ return requestCertificateOnPremise();
817
+ }
818
+ &nbsp;
819
+ throw new ApacuanaAPIError(
820
+ `Unsupported integration type: ${integrationType}`,
821
+ 400,
822
+ "UNSUPPORTED_INTEGRATION_TYPE"
823
+ );
368
824
  };
369
825
  &nbsp;</pre></td></tr></table></pre>
370
826
 
@@ -373,7 +829,7 @@ export const getCertStatus = (isCertificateInDevice = <span class="branch-0 cbra
373
829
  <div class='footer quiet pad2 space-top1 center small'>
374
830
  Code coverage generated by
375
831
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
376
- at 2025-09-05T13:42:51.598Z
832
+ at 2025-09-11T22:20:22.994Z
377
833
  </div>
378
834
  <script src="../../prettify.js"></script>
379
835
  <script>