apacuana-sdk-core 1.22.0 → 1.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -27
- package/coverage/clover.xml +195 -214
- package/coverage/coverage-final.json +5 -5
- package/coverage/lcov-report/index.html +33 -33
- package/coverage/lcov-report/src/api/certs.js.html +1 -1
- package/coverage/lcov-report/src/api/faceLiveness.js.html +35 -269
- package/coverage/lcov-report/src/api/index.html +18 -18
- package/coverage/lcov-report/src/api/revocations.js.html +1 -1
- package/coverage/lcov-report/src/api/signatures.js.html +1 -1
- package/coverage/lcov-report/src/api/users.js.html +1 -1
- package/coverage/lcov-report/src/config/index.html +1 -1
- package/coverage/lcov-report/src/config/index.js.html +1 -1
- package/coverage/lcov-report/src/errors/index.html +1 -1
- package/coverage/lcov-report/src/errors/index.js.html +8 -8
- package/coverage/lcov-report/src/index.html +15 -15
- package/coverage/lcov-report/src/index.js.html +12 -42
- package/coverage/lcov-report/src/success/index.html +1 -1
- package/coverage/lcov-report/src/success/index.js.html +5 -5
- package/coverage/lcov-report/src/utils/constant.js.html +1 -1
- package/coverage/lcov-report/src/utils/helpers.js.html +59 -8
- package/coverage/lcov-report/src/utils/httpClient.js.html +1 -1
- package/coverage/lcov-report/src/utils/index.html +12 -12
- package/coverage/lcov.info +398 -434
- package/dist/api/faceLiveness.d.ts +3 -4
- package/dist/index.d.ts +1 -2
- package/dist/index.js +61 -165
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +61 -165
- package/dist/index.mjs.map +1 -1
- package/dist/types/faceLiveness.d.ts +0 -10
- package/dist/utils/helpers.d.ts +2 -0
- package/package.json +3 -2
- package/src/api/faceLiveness.js +20 -98
- package/src/index.js +4 -14
- package/src/types/faceLiveness.js +1 -12
- package/src/utils/helpers.js +17 -0
- package/tests/api/faceLiveness.test.js +54 -115
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">53.46% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>301/563</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">30.02% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>124/413</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">50% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>46/92</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">53.65% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>301/561</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -80,32 +80,32 @@
|
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
82
|
<td class="file low" data-value="src"><a href="src/index.html">src</a></td>
|
|
83
|
-
<td data-value="
|
|
84
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
83
|
+
<td data-value="27.27" class="pic low">
|
|
84
|
+
<div class="chart"><div class="cover-fill" style="width: 27%"></div><div class="cover-empty" style="width: 73%"></div></div>
|
|
85
85
|
</td>
|
|
86
|
-
<td data-value="
|
|
87
|
-
<td data-value="
|
|
86
|
+
<td data-value="27.27" class="pct low">27.27%</td>
|
|
87
|
+
<td data-value="55" class="abs low">15/55</td>
|
|
88
88
|
<td data-value="20" class="pct low">20%</td>
|
|
89
89
|
<td data-value="15" class="abs low">3/15</td>
|
|
90
|
-
<td data-value="5" class="pct low">5%</td>
|
|
91
|
-
<td data-value="
|
|
92
|
-
<td data-value="
|
|
93
|
-
<td data-value="
|
|
90
|
+
<td data-value="5.26" class="pct low">5.26%</td>
|
|
91
|
+
<td data-value="19" class="abs low">1/19</td>
|
|
92
|
+
<td data-value="27.27" class="pct low">27.27%</td>
|
|
93
|
+
<td data-value="55" class="abs low">15/55</td>
|
|
94
94
|
</tr>
|
|
95
95
|
|
|
96
96
|
<tr>
|
|
97
97
|
<td class="file high" data-value="src/api"><a href="src/api/index.html">src/api</a></td>
|
|
98
|
-
<td data-value="
|
|
99
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
98
|
+
<td data-value="84" class="pic high">
|
|
99
|
+
<div class="chart"><div class="cover-fill" style="width: 84%"></div><div class="cover-empty" style="width: 16%"></div></div>
|
|
100
100
|
</td>
|
|
101
|
-
<td data-value="
|
|
102
|
-
<td data-value="
|
|
103
|
-
<td data-value="
|
|
104
|
-
<td data-value="
|
|
105
|
-
<td data-value="93.
|
|
106
|
-
<td data-value="
|
|
107
|
-
<td data-value="
|
|
108
|
-
<td data-value="
|
|
101
|
+
<td data-value="84" class="pct high">84%</td>
|
|
102
|
+
<td data-value="300" class="abs high">252/300</td>
|
|
103
|
+
<td data-value="68.82" class="pct medium">68.82%</td>
|
|
104
|
+
<td data-value="170" class="abs medium">117/170</td>
|
|
105
|
+
<td data-value="93.47" class="pct high">93.47%</td>
|
|
106
|
+
<td data-value="46" class="abs high">43/46</td>
|
|
107
|
+
<td data-value="84" class="pct high">84%</td>
|
|
108
|
+
<td data-value="300" class="abs high">252/300</td>
|
|
109
109
|
</tr>
|
|
110
110
|
|
|
111
111
|
<tr>
|
|
@@ -155,17 +155,17 @@
|
|
|
155
155
|
|
|
156
156
|
<tr>
|
|
157
157
|
<td class="file low" data-value="src/utils"><a href="src/utils/index.html">src/utils</a></td>
|
|
158
|
-
<td data-value="9.
|
|
158
|
+
<td data-value="9.78" class="pic low">
|
|
159
159
|
<div class="chart"><div class="cover-fill" style="width: 9%"></div><div class="cover-empty" style="width: 91%"></div></div>
|
|
160
160
|
</td>
|
|
161
|
-
<td data-value="9.
|
|
162
|
-
<td data-value="
|
|
161
|
+
<td data-value="9.78" class="pct low">9.78%</td>
|
|
162
|
+
<td data-value="184" class="abs low">18/184</td>
|
|
163
163
|
<td data-value="0" class="pct low">0%</td>
|
|
164
164
|
<td data-value="214" class="abs low">0/214</td>
|
|
165
165
|
<td data-value="0" class="pct low">0%</td>
|
|
166
|
-
<td data-value="
|
|
167
|
-
<td data-value="9.
|
|
168
|
-
<td data-value="
|
|
166
|
+
<td data-value="22" class="abs low">0/22</td>
|
|
167
|
+
<td data-value="9.83" class="pct low">9.83%</td>
|
|
168
|
+
<td data-value="183" class="abs low">18/183</td>
|
|
169
169
|
</tr>
|
|
170
170
|
|
|
171
171
|
</tbody>
|
|
@@ -176,7 +176,7 @@
|
|
|
176
176
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
177
177
|
Code coverage generated by
|
|
178
178
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
179
|
-
at
|
|
179
|
+
at 2026-01-21T17:38:55.537Z
|
|
180
180
|
</div>
|
|
181
181
|
<script src="prettify.js"></script>
|
|
182
182
|
<script>
|
|
@@ -1018,7 +1018,7 @@ export const requestCertificate = async (params) => {
|
|
|
1018
1018
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1019
1019
|
Code coverage generated by
|
|
1020
1020
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1021
|
-
at
|
|
1021
|
+
at 2026-01-21T17:38:55.537Z
|
|
1022
1022
|
</div>
|
|
1023
1023
|
<script src="../../prettify.js"></script>
|
|
1024
1024
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">94.73% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>18/19</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">90
|
|
33
|
+
<span class="strong">90% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>9/10</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'>
|
|
42
|
+
<span class='fraction'>3/3</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">94.73% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>18/19</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -131,93 +131,7 @@
|
|
|
131
131
|
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
132
|
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
133
|
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
-
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
-
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
-
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
-
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
-
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
-
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
-
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
-
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
-
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
-
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
-
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
-
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
-
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
-
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
-
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
-
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
-
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
|
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></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
213
|
-
<span class="cline-any cline-neutral"> </span>
|
|
214
|
-
<span class="cline-any cline-neutral"> </span>
|
|
215
|
-
<span class="cline-any cline-neutral"> </span>
|
|
216
|
-
<span class="cline-any cline-neutral"> </span>
|
|
217
|
-
<span class="cline-any cline-neutral"> </span>
|
|
218
|
-
<span class="cline-any cline-neutral"> </span>
|
|
219
|
-
<span class="cline-any cline-neutral"> </span>
|
|
220
|
-
<span class="cline-any cline-neutral"> </span>
|
|
134
|
+
<a name='L69'></a><a href='#L69'>69</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
221
135
|
<span class="cline-any cline-neutral"> </span>
|
|
222
136
|
<span class="cline-any cline-neutral"> </span>
|
|
223
137
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -226,70 +140,21 @@
|
|
|
226
140
|
<span class="cline-any cline-neutral"> </span>
|
|
227
141
|
<span class="cline-any cline-neutral"> </span>
|
|
228
142
|
<span class="cline-any cline-yes">2x</span>
|
|
229
|
-
<span class="cline-any cline-yes">4x</span>
|
|
230
|
-
<span class="cline-any cline-yes">4x</span>
|
|
231
|
-
<span class="cline-any cline-neutral"> </span>
|
|
232
|
-
<span class="cline-any cline-neutral"> </span>
|
|
233
|
-
<span class="cline-any cline-neutral"> </span>
|
|
234
|
-
<span class="cline-any cline-neutral"> </span>
|
|
235
143
|
<span class="cline-any cline-yes">2x</span>
|
|
236
|
-
<span class="cline-any cline-yes">1x</span>
|
|
237
|
-
<span class="cline-any cline-neutral"> </span>
|
|
238
|
-
<span class="cline-any cline-neutral"> </span>
|
|
239
|
-
<span class="cline-any cline-neutral"> </span>
|
|
240
|
-
<span class="cline-any cline-neutral"> </span>
|
|
241
|
-
<span class="cline-any cline-neutral"> </span>
|
|
242
|
-
<span class="cline-any cline-neutral"> </span>
|
|
243
|
-
<span class="cline-any cline-yes">1x</span>
|
|
244
|
-
<span class="cline-any cline-neutral"> </span>
|
|
245
|
-
<span class="cline-any cline-neutral"> </span>
|
|
246
|
-
<span class="cline-any cline-neutral"> </span>
|
|
247
|
-
<span class="cline-any cline-yes">3x</span>
|
|
248
144
|
<span class="cline-any cline-yes">2x</span>
|
|
249
145
|
<span class="cline-any cline-neutral"> </span>
|
|
250
|
-
<span class="cline-any cline-yes">1x</span>
|
|
251
|
-
<span class="cline-any cline-neutral"> </span>
|
|
252
|
-
<span class="cline-any cline-neutral"> </span>
|
|
253
|
-
<span class="cline-any cline-neutral"> </span>
|
|
254
146
|
<span class="cline-any cline-neutral"> </span>
|
|
255
147
|
<span class="cline-any cline-neutral"> </span>
|
|
256
148
|
<span class="cline-any cline-yes">2x</span>
|
|
257
|
-
<span class="cline-any cline-yes">1x</span>
|
|
258
|
-
<span class="cline-any cline-neutral"> </span>
|
|
259
149
|
<span class="cline-any cline-neutral"> </span>
|
|
260
150
|
<span class="cline-any cline-neutral"> </span>
|
|
261
151
|
<span class="cline-any cline-neutral"> </span>
|
|
262
152
|
<span class="cline-any cline-neutral"> </span>
|
|
263
|
-
<span class="cline-any cline-neutral"> </span>
|
|
264
|
-
<span class="cline-any cline-yes">2x</span>
|
|
265
|
-
<span class="cline-any cline-yes">6x</span>
|
|
266
|
-
<span class="cline-any cline-yes">6x</span>
|
|
267
|
-
<span class="cline-any cline-neutral"> </span>
|
|
268
|
-
<span class="cline-any cline-neutral"> </span>
|
|
269
|
-
<span class="cline-any cline-neutral"> </span>
|
|
270
|
-
<span class="cline-any cline-neutral"> </span>
|
|
271
|
-
<span class="cline-any cline-yes">1x</span>
|
|
272
|
-
<span class="cline-any cline-neutral"> </span>
|
|
273
|
-
<span class="cline-any cline-yes">5x</span>
|
|
274
|
-
<span class="cline-any cline-neutral"> </span>
|
|
275
|
-
<span class="cline-any cline-yes">5x</span>
|
|
276
|
-
<span class="cline-any cline-neutral"> </span>
|
|
277
|
-
<span class="cline-any cline-yes">1x</span>
|
|
278
|
-
<span class="cline-any cline-yes">1x</span>
|
|
279
|
-
<span class="cline-any cline-neutral"> </span>
|
|
280
|
-
<span class="cline-any cline-yes">1x</span>
|
|
281
|
-
<span class="cline-any cline-yes">1x</span>
|
|
282
|
-
<span class="cline-any cline-neutral"> </span>
|
|
283
|
-
<span class="cline-any cline-yes">1x</span>
|
|
284
153
|
<span class="cline-any cline-yes">1x</span>
|
|
285
154
|
<span class="cline-any cline-neutral"> </span>
|
|
286
155
|
<span class="cline-any cline-yes">1x</span>
|
|
287
156
|
<span class="cline-any cline-yes">1x</span>
|
|
288
157
|
<span class="cline-any cline-neutral"> </span>
|
|
289
|
-
<span class="cline-any cline-yes">1x</span>
|
|
290
|
-
<span class="cline-any cline-neutral"> </span>
|
|
291
|
-
<span class="cline-any cline-yes">4x</span>
|
|
292
|
-
<span class="cline-any cline-neutral"> </span>
|
|
293
158
|
<span class="cline-any cline-no"> </span>
|
|
294
159
|
<span class="cline-any cline-neutral"> </span>
|
|
295
160
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -308,179 +173,80 @@
|
|
|
308
173
|
<span class="cline-any cline-neutral"> </span>
|
|
309
174
|
<span class="cline-any cline-neutral"> </span>
|
|
310
175
|
<span class="cline-any cline-neutral"> </span>
|
|
311
|
-
<span class="cline-any cline-yes">2x</span>
|
|
312
|
-
<span class="cline-any cline-yes">6x</span>
|
|
313
176
|
<span class="cline-any cline-neutral"> </span>
|
|
314
|
-
<span class="cline-any cline-yes">6x</span>
|
|
315
|
-
<span class="cline-any cline-yes">4x</span>
|
|
316
177
|
<span class="cline-any cline-neutral"> </span>
|
|
317
178
|
<span class="cline-any cline-yes">2x</span>
|
|
179
|
+
<span class="cline-any cline-yes">5x</span>
|
|
318
180
|
<span class="cline-any cline-yes">1x</span>
|
|
319
181
|
<span class="cline-any cline-neutral"> </span>
|
|
320
182
|
<span class="cline-any cline-neutral"> </span>
|
|
321
|
-
<span class="cline-any cline-yes">1x</span>
|
|
322
|
-
<span class="cline-any cline-neutral"> </span>
|
|
323
|
-
<span class="cline-any cline-neutral"> </span>
|
|
324
|
-
<span class="cline-any cline-neutral"> </span>
|
|
325
|
-
<span class="cline-any cline-neutral"> </span>
|
|
326
|
-
<span class="cline-any cline-neutral"> </span>
|
|
327
|
-
<span class="cline-any cline-neutral"> </span>
|
|
328
183
|
<span class="cline-any cline-neutral"> </span>
|
|
329
184
|
<span class="cline-any cline-neutral"> </span>
|
|
330
185
|
<span class="cline-any cline-neutral"> </span>
|
|
331
186
|
<span class="cline-any cline-neutral"> </span>
|
|
187
|
+
<span class="cline-any cline-yes">4x</span>
|
|
332
188
|
<span class="cline-any cline-neutral"> </span>
|
|
189
|
+
<span class="cline-any cline-yes">4x</span>
|
|
190
|
+
<span class="cline-any cline-yes">2x</span>
|
|
333
191
|
<span class="cline-any cline-neutral"> </span>
|
|
334
192
|
<span class="cline-any cline-yes">2x</span>
|
|
335
|
-
<span class="cline-any cline-yes">8x</span>
|
|
336
193
|
<span class="cline-any cline-yes">1x</span>
|
|
337
194
|
<span class="cline-any cline-neutral"> </span>
|
|
338
195
|
<span class="cline-any cline-neutral"> </span>
|
|
339
|
-
<span class="cline-any cline-neutral"> </span>
|
|
340
|
-
<span class="cline-any cline-neutral"> </span>
|
|
341
|
-
<span class="cline-any cline-neutral"> </span>
|
|
342
|
-
<span class="cline-any cline-neutral"> </span>
|
|
343
|
-
<span class="cline-any cline-yes">7x</span>
|
|
344
|
-
<span class="cline-any cline-neutral"> </span>
|
|
345
|
-
<span class="cline-any cline-yes">7x</span>
|
|
346
|
-
<span class="cline-any cline-yes">6x</span>
|
|
347
|
-
<span class="cline-any cline-neutral"> </span>
|
|
348
196
|
<span class="cline-any cline-yes">1x</span>
|
|
349
|
-
<span class="cline-any cline-yes">1x</span>
|
|
350
|
-
<span class="cline-any cline-neutral"> </span>
|
|
351
|
-
<span class="cline-any cline-neutral"> </span>
|
|
352
|
-
<span class="cline-any cline-no"> </span>
|
|
353
197
|
<span class="cline-any cline-neutral"> </span>
|
|
354
198
|
<span class="cline-any cline-neutral"> </span>
|
|
355
199
|
<span class="cline-any cline-neutral"> </span>
|
|
356
200
|
<span class="cline-any cline-neutral"> </span>
|
|
357
201
|
<span class="cline-any cline-neutral"> </span>
|
|
358
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
359
|
-
* @typedef {import('../types/faceLiveness').CreateFaceLivenessSessionResponse} CreateFaceLivenessSessionResponse
|
|
360
|
-
*/
|
|
361
|
-
|
|
202
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">/* eslint-disable import/prefer-default-export */
|
|
362
203
|
import { getConfig } from "../config/index";
|
|
363
204
|
import { httpRequest } from "../utils/httpClient";
|
|
364
205
|
import { ApacuanaAPIError } from "../errors";
|
|
365
206
|
import ApacuanaSuccess from "../success";
|
|
366
207
|
import { INTEGRATION_TYPE } from "../utils/constant";
|
|
208
|
+
import helpers from "../utils/helpers";
|
|
367
209
|
|
|
368
|
-
|
|
369
|
-
* Creates a new Face Liveness session.
|
|
370
|
-
* @returns {Promise<CreateFaceLivenessSessionResponse>} Object with the session ID and a success indicator.
|
|
371
|
-
* @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
|
|
372
|
-
* @throws {Error} If the request fails for another reason.
|
|
373
|
-
*/
|
|
374
|
-
const createFaceLivenessSessionOnBoarding = async () => {
|
|
210
|
+
const sendFaceLivenessOnBoarding = async (faceliveness, documentprefid) => {
|
|
375
211
|
try {
|
|
376
|
-
const
|
|
377
|
-
|
|
378
|
-
{}
|
|
379
|
-
"POST"
|
|
380
|
-
);
|
|
381
|
-
if (!response.sessionid) {
|
|
382
|
-
throw new ApacuanaAPIError(
|
|
383
|
-
"The API response does not contain the session ID.",
|
|
384
|
-
response.status,
|
|
385
|
-
"INVALID_API_RESPONSE"
|
|
386
|
-
);
|
|
387
|
-
}
|
|
388
|
-
|
|
389
|
-
return new ApacuanaSuccess({
|
|
390
|
-
sessionId: response.sessionid,
|
|
391
|
-
});
|
|
392
|
-
} catch (error) {
|
|
393
|
-
if (error instanceof ApacuanaAPIError) {
|
|
394
|
-
throw error;
|
|
395
|
-
}
|
|
396
|
-
throw new ApacuanaAPIError(
|
|
397
|
-
`Failed to create Face Liveness session: ${error.message}`
|
|
212
|
+
const file = helpers.base64ToFile(
|
|
213
|
+
faceliveness,
|
|
214
|
+
`liveness_capture_${Date.now()}.png`
|
|
398
215
|
);
|
|
399
|
-
}
|
|
400
|
-
};
|
|
401
|
-
|
|
402
|
-
const createFaceLivenessSessionOnPremise = async () => {
|
|
403
|
-
throw new ApacuanaAPIError(
|
|
404
|
-
"Creating a Face Liveness session is not supported for integration type: ONPREMISE",
|
|
405
|
-
501,
|
|
406
|
-
"NOT_IMPLEMENTED"
|
|
407
|
-
);
|
|
408
|
-
};
|
|
409
|
-
|
|
410
|
-
const validateFaceLivenessOnBoarding = async (sessionId) => {
|
|
411
|
-
try {
|
|
412
216
|
const response = await httpRequest(
|
|
413
|
-
"services/api/faceliveness/
|
|
414
|
-
{
|
|
217
|
+
"services/api/faceliveness/uploadfaceliveness",
|
|
218
|
+
{ faceliveness: file, documentprefid },
|
|
415
219
|
"POST"
|
|
416
220
|
);
|
|
417
221
|
return new ApacuanaSuccess({ status: "verified", ...response });
|
|
418
222
|
} catch (error) {
|
|
419
223
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (error instanceof ApacuanaAPIError) {
|
|
420
|
-
|
|
421
|
-
switch (error.statusCode) {
|
|
422
|
-
case 402:
|
|
423
|
-
status = "waitingForScan";
|
|
424
|
-
break;
|
|
425
|
-
case 403:
|
|
426
|
-
status = "rejected";
|
|
427
|
-
break;
|
|
428
|
-
case 406:
|
|
429
|
-
status = "processing";
|
|
430
|
-
break;
|
|
431
|
-
case 408:
|
|
432
|
-
status = "expired";
|
|
433
|
-
break;
|
|
434
|
-
default:
|
|
435
|
-
throw error;
|
|
436
|
-
}
|
|
437
|
-
return new ApacuanaSuccess({ status });
|
|
224
|
+
throw error;
|
|
438
225
|
}
|
|
439
|
-
<span class="cstat-no" title="statement not covered" > throw error;</span>
|
|
226
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`Failed to send faceliveness: ${error.message}`);</span>
|
|
440
227
|
}
|
|
441
228
|
};
|
|
442
229
|
|
|
443
|
-
const
|
|
230
|
+
const sendFaceLivenessOnPremise = async () => {
|
|
444
231
|
throw new ApacuanaAPIError(
|
|
445
|
-
"
|
|
232
|
+
"Send a Face Liveness is not supported for integration type: ONPREMISE",
|
|
446
233
|
501,
|
|
447
234
|
"NOT_IMPLEMENTED"
|
|
448
235
|
);
|
|
449
236
|
};
|
|
450
237
|
|
|
451
|
-
/**
|
|
452
|
-
* Creates a new Face Liveness session.
|
|
453
|
-
* @returns {Promise<CreateFaceLivenessSessionResponse>} Object with the session ID and a success indicator.
|
|
454
|
-
* @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
|
|
455
|
-
* @throws {Error} If the request fails for another reason.
|
|
456
|
-
*/
|
|
457
|
-
export const createFaceLivenessSession = async () => {
|
|
458
|
-
const { integrationType } = getConfig();
|
|
459
|
-
|
|
460
|
-
if (integrationType === INTEGRATION_TYPE.ONBOARDING) {
|
|
461
|
-
return createFaceLivenessSessionOnBoarding();
|
|
462
|
-
}
|
|
463
|
-
if (integrationType === INTEGRATION_TYPE.ONPREMISE) {
|
|
464
|
-
return createFaceLivenessSessionOnPremise();
|
|
465
|
-
}
|
|
466
|
-
|
|
467
|
-
throw new ApacuanaAPIError(
|
|
468
|
-
`Unsupported integration type: ${integrationType}`,
|
|
469
|
-
400,
|
|
470
|
-
"UNSUPPORTED_INTEGRATION_TYPE"
|
|
471
|
-
);
|
|
472
|
-
};
|
|
473
|
-
|
|
474
238
|
/**
|
|
475
239
|
* Validates a Face Liveness session and returns its status.
|
|
476
|
-
* @param {
|
|
240
|
+
* @param {object} params - Parámetros para la solicitud.
|
|
241
|
+
* @param {string} params.faceLiveness - El faceLiveness.
|
|
242
|
+
* @param {string} params.documentprefid - El documentprefid.
|
|
477
243
|
* @returns {Promise<ApacuanaSuccess>} Object with the validation status.
|
|
478
244
|
* @throws {ApacuanaAPIError} If the API response is invalid or the integration type is not supported.
|
|
479
245
|
*/
|
|
480
|
-
export const
|
|
481
|
-
if (!
|
|
246
|
+
export const sendFaceLiveness = async ({ faceLiveness, documentprefid }) => {
|
|
247
|
+
if (!faceLiveness || !documentprefid) {
|
|
482
248
|
throw new ApacuanaAPIError(
|
|
483
|
-
"
|
|
249
|
+
"faceLiveness and documentprefid is a required parameter.",
|
|
484
250
|
400,
|
|
485
251
|
"INVALID_PARAMETER"
|
|
486
252
|
);
|
|
@@ -489,13 +255,13 @@ export const validateFaceLiveness = async ({ sessionId }) => {
|
|
|
489
255
|
const { integrationType } = getConfig();
|
|
490
256
|
|
|
491
257
|
if (integrationType === INTEGRATION_TYPE.ONBOARDING) {
|
|
492
|
-
return
|
|
258
|
+
return sendFaceLivenessOnBoarding(faceLiveness, documentprefid);
|
|
493
259
|
}
|
|
494
|
-
|
|
495
|
-
return
|
|
260
|
+
if (integrationType === INTEGRATION_TYPE.ONPREMISE) {
|
|
261
|
+
return sendFaceLivenessOnPremise();
|
|
496
262
|
}
|
|
497
263
|
|
|
498
|
-
|
|
264
|
+
throw new ApacuanaAPIError(
|
|
499
265
|
`Unsupported integration type: ${integrationType}`,
|
|
500
266
|
400,
|
|
501
267
|
"UNSUPPORTED_INTEGRATION_TYPE"
|
|
@@ -508,7 +274,7 @@ export const validateFaceLiveness = async ({ sessionId }) => {
|
|
|
508
274
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
509
275
|
Code coverage generated by
|
|
510
276
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
511
|
-
at
|
|
277
|
+
at 2026-01-21T17:38:55.537Z
|
|
512
278
|
</div>
|
|
513
279
|
<script src="../../prettify.js"></script>
|
|
514
280
|
<script>
|