@privateid/ultrapass-web-sdk 1.3.1 → 1.3.2-1300478

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 (216) hide show
  1. package/README.md +75 -75
  2. package/dist/apiUtils.d.ts +46 -46
  3. package/dist/apiUtils.js +922 -922
  4. package/dist/application/index.d.ts +7 -7
  5. package/dist/application/index.js +27 -27
  6. package/dist/application/modules/core/document/DocumentService.d.ts +22 -22
  7. package/dist/application/modules/core/document/DocumentService.js +254 -254
  8. package/dist/application/modules/core/document/document.constants.d.ts +15 -15
  9. package/dist/application/modules/core/document/document.constants.js +21 -21
  10. package/dist/application/modules/core/document/document.domain.d.ts +7 -7
  11. package/dist/application/modules/core/document/document.domain.js +1 -1
  12. package/dist/application/modules/core/document/document.types.d.ts +17 -17
  13. package/dist/application/modules/core/document/document.types.js +1 -1
  14. package/dist/application/modules/core/document/document.utils.d.ts +3 -3
  15. package/dist/application/modules/core/document/document.utils.js +58 -58
  16. package/dist/application/modules/core/document/index.d.ts +3 -3
  17. package/dist/application/modules/core/document/index.js +1 -1
  18. package/dist/application/modules/core/face/FaceService.d.ts +33 -33
  19. package/dist/application/modules/core/face/FaceService.js +228 -221
  20. package/dist/application/modules/core/face/FaceService.js.map +1 -1
  21. package/dist/application/modules/core/face/face.constants.d.ts +53 -53
  22. package/dist/application/modules/core/face/face.constants.js +53 -53
  23. package/dist/application/modules/core/face/face.domain.d.ts +10 -10
  24. package/dist/application/modules/core/face/face.domain.js +1 -1
  25. package/dist/application/modules/core/face/face.types.d.ts +41 -38
  26. package/dist/application/modules/core/face/face.types.js +1 -1
  27. package/dist/application/modules/core/face/face.utils.d.ts +15 -15
  28. package/dist/application/modules/core/face/face.utils.js +101 -101
  29. package/dist/application/modules/core/face/index.d.ts +3 -3
  30. package/dist/application/modules/core/face/index.js +1 -1
  31. package/dist/application/modules/global/shared.constants.d.ts +2 -2
  32. package/dist/application/modules/global/shared.constants.js +2 -2
  33. package/dist/application/modules/global/shared.utils.d.ts +25 -25
  34. package/dist/application/modules/global/shared.utils.js +100 -100
  35. package/dist/application/modules/global/shared.utils.js.map +1 -1
  36. package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.d.ts +9 -0
  37. package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.js +32 -0
  38. package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.js.map +1 -0
  39. package/dist/application/modules/internal/feature-flag/feature-flag-init.d.ts +11 -0
  40. package/dist/application/modules/internal/feature-flag/feature-flag-init.js +24 -0
  41. package/dist/application/modules/internal/feature-flag/feature-flag-init.js.map +1 -0
  42. package/dist/application/modules/internal/feature-flag/feature-flag.domain.d.ts +10 -0
  43. package/dist/application/modules/internal/feature-flag/feature-flag.domain.js +7 -0
  44. package/dist/application/modules/internal/feature-flag/feature-flag.domain.js.map +1 -0
  45. package/dist/application/modules/internal/feature-flag/featureFlagInit.d.ts +11 -0
  46. package/dist/application/modules/internal/feature-flag/featureFlagInit.js +44 -0
  47. package/dist/application/modules/internal/feature-flag/featureFlagInit.js.map +1 -0
  48. package/dist/application/modules/internal/feature-flag/index.d.ts +2 -0
  49. package/dist/application/modules/internal/feature-flag/index.js +3 -0
  50. package/dist/application/modules/internal/feature-flag/index.js.map +1 -0
  51. package/dist/application/modules/internal/shared/index.d.ts +2 -0
  52. package/dist/application/modules/internal/shared/index.js +3 -0
  53. package/dist/application/modules/internal/shared/index.js.map +1 -0
  54. package/dist/application/modules/internal/shared/shared.constants.d.ts +2 -0
  55. package/dist/application/modules/internal/shared/shared.constants.js +3 -0
  56. package/dist/application/modules/internal/shared/shared.constants.js.map +1 -0
  57. package/dist/application/modules/internal/shared/shared.utils.d.ts +44 -0
  58. package/dist/application/modules/internal/shared/shared.utils.js +204 -0
  59. package/dist/application/modules/internal/shared/shared.utils.js.map +1 -0
  60. package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.d.ts +28 -0
  61. package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.js +380 -0
  62. package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.js.map +1 -0
  63. package/dist/application/modules/internal/wasm-orchestrator/index.d.ts +6 -0
  64. package/dist/application/modules/internal/wasm-orchestrator/index.js +9 -0
  65. package/dist/application/modules/internal/wasm-orchestrator/index.js.map +1 -0
  66. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.d.ts +28 -0
  67. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.js +35 -0
  68. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.js.map +1 -0
  69. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.d.ts +51 -0
  70. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.js +2 -0
  71. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.js.map +1 -0
  72. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.d.ts +142 -0
  73. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.js +2 -0
  74. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.js.map +1 -0
  75. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.d.ts +86 -0
  76. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.js +201 -0
  77. package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.js.map +1 -0
  78. package/dist/application/modules/support/camera/CameraServiceFactory.d.ts +10 -10
  79. package/dist/application/modules/support/camera/CameraServiceFactory.js +33 -33
  80. package/dist/application/modules/support/camera/CameraServiceFactory.js.map +1 -1
  81. package/dist/application/modules/support/camera/camera.constants.d.ts +9 -9
  82. package/dist/application/modules/support/camera/camera.constants.js +48 -48
  83. package/dist/application/modules/support/camera/camera.domain.d.ts +15 -15
  84. package/dist/application/modules/support/camera/camera.domain.js +1 -1
  85. package/dist/application/modules/support/camera/camera.types.d.ts +42 -42
  86. package/dist/application/modules/support/camera/camera.types.js +10 -10
  87. package/dist/application/modules/support/camera/camera.utils.d.ts +157 -157
  88. package/dist/application/modules/support/camera/camera.utils.js +623 -623
  89. package/dist/application/modules/support/camera/index.d.ts +24 -24
  90. package/dist/application/modules/support/camera/index.js +27 -27
  91. package/dist/application/modules/support/camera/services/BaseCameraService.d.ts +41 -41
  92. package/dist/application/modules/support/camera/services/BaseCameraService.js +278 -278
  93. package/dist/application/modules/support/camera/services/DesktopCameraService.d.ts +5 -5
  94. package/dist/application/modules/support/camera/services/DesktopCameraService.js +46 -46
  95. package/dist/application/modules/support/camera/services/FirefoxCameraService.d.ts +5 -5
  96. package/dist/application/modules/support/camera/services/FirefoxCameraService.js +46 -46
  97. package/dist/application/modules/support/camera/services/MacSafariCameraService.d.ts +5 -5
  98. package/dist/application/modules/support/camera/services/MacSafariCameraService.js +47 -47
  99. package/dist/application/modules/support/camera/services/MobileCameraService.d.ts +5 -5
  100. package/dist/application/modules/support/camera/services/MobileCameraService.js +133 -133
  101. package/dist/application/modules/support/engine/EngineService.d.ts +15 -0
  102. package/dist/application/modules/support/engine/EngineService.js +106 -0
  103. package/dist/application/modules/support/engine/EngineService.js.map +1 -0
  104. package/dist/application/modules/support/engine/engine.constants.d.ts +33 -0
  105. package/dist/application/modules/support/engine/engine.constants.js +35 -0
  106. package/dist/application/modules/support/engine/engine.constants.js.map +1 -0
  107. package/dist/application/modules/support/engine/engine.domain.d.ts +23 -0
  108. package/dist/application/modules/support/engine/engine.domain.js +2 -0
  109. package/dist/application/modules/support/engine/engine.domain.js.map +1 -0
  110. package/dist/application/modules/support/engine/engine.types.d.ts +32 -0
  111. package/dist/application/modules/support/engine/engine.types.js +2 -0
  112. package/dist/application/modules/support/engine/engine.types.js.map +1 -0
  113. package/dist/application/modules/support/engine/engine.utils.d.ts +65 -0
  114. package/dist/application/modules/support/engine/engine.utils.js +135 -0
  115. package/dist/application/modules/support/engine/engine.utils.js.map +1 -0
  116. package/dist/application/modules/support/engine/index.d.ts +3 -0
  117. package/dist/application/modules/support/engine/index.js +2 -0
  118. package/dist/application/modules/support/engine/index.js.map +1 -0
  119. package/dist/application/modules/support/permissions/PermissionsService.d.ts +55 -55
  120. package/dist/application/modules/support/permissions/PermissionsService.js +183 -183
  121. package/dist/application/modules/support/permissions/index.d.ts +4 -4
  122. package/dist/application/modules/support/permissions/index.js +2 -2
  123. package/dist/application/modules/support/permissions/permission.utils.d.ts +6 -6
  124. package/dist/application/modules/support/permissions/permission.utils.js +33 -33
  125. package/dist/application/modules/support/permissions/permissions.domain.d.ts +6 -6
  126. package/dist/application/modules/support/permissions/permissions.domain.js +1 -1
  127. package/dist/application/modules/support/permissions/permissions.types.d.ts +9 -9
  128. package/dist/application/modules/support/permissions/permissions.types.js +1 -1
  129. package/dist/application/modules/support/wasm/WasmService.d.ts +25 -25
  130. package/dist/application/modules/support/wasm/WasmService.js +156 -155
  131. package/dist/application/modules/support/wasm/WasmService.js.map +1 -1
  132. package/dist/application/modules/support/wasm/index.d.ts +6 -6
  133. package/dist/application/modules/support/wasm/index.js +8 -8
  134. package/dist/application/modules/support/wasm/wasm.constants.d.ts +78 -78
  135. package/dist/application/modules/support/wasm/wasm.constants.js +86 -86
  136. package/dist/application/modules/support/wasm/wasm.domain.d.ts +52 -52
  137. package/dist/application/modules/support/wasm/wasm.domain.js +1 -1
  138. package/dist/application/modules/support/wasm/wasm.types.d.ts +119 -118
  139. package/dist/application/modules/support/wasm/wasm.types.js +1 -1
  140. package/dist/application/modules/support/wasm/wasm.utils.d.ts +88 -88
  141. package/dist/application/modules/support/wasm/wasm.utils.js +243 -243
  142. package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.d.ts +28 -0
  143. package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.js +324 -0
  144. package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.js.map +1 -0
  145. package/dist/application/modules/support/wasm-orchestrator/index.d.ts +6 -0
  146. package/dist/application/modules/support/wasm-orchestrator/index.js +9 -0
  147. package/dist/application/modules/support/wasm-orchestrator/index.js.map +1 -0
  148. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.d.ts +36 -0
  149. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.js +44 -0
  150. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.js.map +1 -0
  151. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.d.ts +47 -0
  152. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.js +2 -0
  153. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.js.map +1 -0
  154. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.d.ts +136 -0
  155. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.js +2 -0
  156. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.js.map +1 -0
  157. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.d.ts +91 -0
  158. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.js +250 -0
  159. package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.js.map +1 -0
  160. package/dist/application/workers/index.d.ts +42 -42
  161. package/dist/application/workers/index.js +8 -8
  162. package/dist/application/workers/wasm/WasmWorkerService.d.ts +66 -0
  163. package/dist/application/workers/wasm/WasmWorkerService.js +801 -0
  164. package/dist/application/workers/wasm/WasmWorkerService.js.map +1 -0
  165. package/dist/application/workers/wasm/index.d.ts +4 -0
  166. package/dist/application/workers/wasm/index.js +9 -0
  167. package/dist/application/workers/wasm/index.js.map +1 -0
  168. package/dist/application/workers/wasm/wasm-worker.constants.d.ts +5 -0
  169. package/dist/application/workers/wasm/wasm-worker.constants.js +6 -0
  170. package/dist/application/workers/wasm/wasm-worker.constants.js.map +1 -0
  171. package/dist/application/workers/wasm/wasm-worker.domain.d.ts +99 -0
  172. package/dist/application/workers/wasm/wasm-worker.domain.js +2 -0
  173. package/dist/application/workers/wasm/wasm-worker.domain.js.map +1 -0
  174. package/dist/application/workers/wasm/wasm-worker.types.d.ts +88 -0
  175. package/dist/application/workers/wasm/wasm-worker.types.js +2 -0
  176. package/dist/application/workers/wasm/wasm-worker.types.js.map +1 -0
  177. package/dist/application/workers/wasm/wasm-worker.utils.d.ts +10 -0
  178. package/dist/application/workers/wasm/wasm-worker.utils.js +130 -0
  179. package/dist/application/workers/wasm/wasm-worker.utils.js.map +1 -0
  180. package/dist/buildConfig.d.ts +3 -0
  181. package/dist/buildConfig.js +7 -0
  182. package/dist/buildConfig.js.map +1 -0
  183. package/dist/cameraUtils.d.ts +77 -77
  184. package/dist/cameraUtils.js +361 -361
  185. package/dist/constants.d.ts +9 -9
  186. package/dist/constants.js +13 -13
  187. package/dist/createCallback.d.ts +56 -56
  188. package/dist/createCallback.js +332 -331
  189. package/dist/createCallback.js.map +1 -1
  190. package/dist/dbUtils.d.ts +14 -14
  191. package/dist/dbUtils.js +148 -148
  192. package/dist/envUtils.d.ts +4 -4
  193. package/dist/envUtils.js +16 -16
  194. package/dist/faceModule.d.ts +196 -196
  195. package/dist/faceModule.js +978 -978
  196. package/dist/featureFlagInit.d.ts +11 -0
  197. package/dist/featureFlagInit.js +44 -0
  198. package/dist/featureFlagInit.js.map +1 -0
  199. package/dist/index.d.ts +38 -38
  200. package/dist/index.js +82 -82
  201. package/dist/main.d.ts +30 -30
  202. package/dist/main.js +84 -84
  203. package/dist/types.d.ts +139 -139
  204. package/dist/types.js +77 -77
  205. package/dist/utils.d.ts +84 -84
  206. package/dist/utils.js +580 -580
  207. package/package.json +102 -102
  208. package/wasm/ultra/nosimd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.js +18 -18
  209. package/wasm/ultra/nosimd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.wasm +0 -0
  210. package/wasm/ultra/nosimd/version.json +2 -2
  211. package/wasm/ultra/simd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.js +18 -18
  212. package/wasm/ultra/simd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.wasm +0 -0
  213. package/wasm/ultra/simd/version.json +2 -2
  214. package/workers/comlink.min.js +7 -7
  215. package/workers/comlink.min.js.map +1 -1
  216. package/workers/wasm.worker.js +936 -924
@@ -0,0 +1,106 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ /* eslint-disable lines-between-class-members */
11
+ /* eslint-disable import/prefer-default-export */
12
+ import { detect } from 'detect-browser';
13
+ import { printLogs } from '../../internal/shared/shared.utils';
14
+ import { checkAndroidSupport, checkBrowserCompatibility, checkIOSSupport, checkMacOSSupport, checkWebBrowsersSupport, handleCacheContent, } from './engine.utils';
15
+ export class EngineService {
16
+ constructor(wasmOrchestratorService) {
17
+ this.wasmOrchestratorService = wasmOrchestratorService;
18
+ const { name, os, version } = detect();
19
+ this.browserName = name;
20
+ this.browserOS = os;
21
+ this.browserVersion = version;
22
+ }
23
+ loadModule(params) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ printLogs('[EngineService] loadModule params', params);
26
+ const compatibility = checkBrowserCompatibility();
27
+ printLogs('[EngineService] loadModule compatibility', compatibility);
28
+ if (!compatibility.support) {
29
+ return compatibility;
30
+ }
31
+ const cacheContent = yield handleCacheContent();
32
+ try {
33
+ return yield this.wasmOrchestratorService.loadModule(Object.assign(Object.assign({}, params), { cacheContent }));
34
+ }
35
+ catch (error) {
36
+ printLogs('[EngineService] loadModule error', error, 'ERROR');
37
+ return { support: false, message: error.message };
38
+ }
39
+ });
40
+ }
41
+ checkModelsAreLoaded() {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ try {
44
+ return yield this.wasmOrchestratorService.checkIfModelsLoaded();
45
+ }
46
+ catch (error) {
47
+ printLogs('[EngineService] checkModelsAreLoaded error', error, 'ERROR');
48
+ return false;
49
+ }
50
+ });
51
+ }
52
+ freeMemory() {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ printLogs('[EngineService] freeMemory', '');
55
+ try {
56
+ return yield this.wasmOrchestratorService.freeWasmMemory();
57
+ }
58
+ catch (error) {
59
+ printLogs('[EngineService] freeMemory error', error, 'ERROR');
60
+ return false;
61
+ }
62
+ });
63
+ }
64
+ encryptData(payload) {
65
+ var _a;
66
+ return __awaiter(this, void 0, void 0, function* () {
67
+ printLogs('[EngineService] encryptData payload', payload);
68
+ try {
69
+ const result = yield this.wasmOrchestratorService.pkiEncrypt(payload);
70
+ printLogs('[EngineService] encryptData result', result);
71
+ return (_a = result === null || result === void 0 ? void 0 : result.operation_result) === null || _a === void 0 ? void 0 : _a.request;
72
+ }
73
+ catch (error) {
74
+ printLogs('[EngineService] encryptData error', error, 'ERROR');
75
+ return null;
76
+ }
77
+ });
78
+ }
79
+ checkPackageSupport() {
80
+ printLogs('[EngineService] checkPackageSupport', {
81
+ browserName: this.browserName,
82
+ browserVersion: this.browserVersion,
83
+ browserOS: this.browserOS,
84
+ });
85
+ let result = {
86
+ isSupported: false,
87
+ };
88
+ switch (this.browserOS) {
89
+ case 'Mac OS':
90
+ result = checkMacOSSupport(this.browserName, this.browserVersion);
91
+ break;
92
+ case 'iOS':
93
+ result = checkIOSSupport(this.browserName, this.browserVersion);
94
+ break;
95
+ case 'Android OS':
96
+ case 'android':
97
+ result = checkAndroidSupport(this.browserName, this.browserVersion);
98
+ break;
99
+ default:
100
+ result = checkWebBrowsersSupport(this.browserName, this.browserVersion);
101
+ }
102
+ printLogs('[EngineService] checkPackageSupport result', result);
103
+ return result;
104
+ }
105
+ }
106
+ //# sourceMappingURL=EngineService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EngineService.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/EngineService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ export declare const BROWSER_COMPATIBILITY_MESSAGES: {
2
+ readonly OPERA_MOBILE_NOT_SUPPORTED: "Opera mobile version 72 and below is not support WASM";
3
+ readonly OPERA_NOT_SUPPORTED: "Opera version 43 and below is not support WASM";
4
+ readonly CHROME_NOT_SUPPORTED: "Chrome version 57 and below is not support WASM";
5
+ readonly FIREFOX_NOT_SUPPORTED: "Firefox version 52 and below is not support WASM";
6
+ readonly ANDROID_BROWSER_NOT_SUPPORTED: "Android Browser version 96 and below is not supported.";
7
+ readonly UNABLE_TO_LOAD_WASM: "Unable to load wasm";
8
+ };
9
+ export declare const PACKAGE_COMPATIBILITY_MESSAGES: {
10
+ readonly SAFARI_NOT_SUPPORTED: "Safari version 10 and below is not supported.";
11
+ readonly OPERA_MOBILE_NOT_SUPPORTED: "Opera mobile version 72 and below is not support WASM";
12
+ readonly ANDROID_CHROME_NOT_SUPPORTED: "Android Chrome version 96 and below is not supported.";
13
+ readonly SAMSUNG_BROWSER_NOT_SUPPORTED: "Samsung browser version 6 and below is not supported.";
14
+ readonly FIREFOX_MOBILE_NOT_SUPPORTED: "Firefox mobile version 94 and below is not supported.";
15
+ readonly ANDROID_BROWSER_NOT_SUPPORTED: "Android Browser version 96 and below is not supported.";
16
+ readonly IE_NOT_SUPPORTED: "Internet Explorer is not supported.";
17
+ readonly EDGE_NOT_SUPPORTED: "Edge version 78 and below is not supported.";
18
+ readonly CHROME_NOT_SUPPORTED: "Chrome version 57 and below is not support WASM";
19
+ readonly FIREFOX_NOT_SUPPORTED: "Firefox version 52 and below is not supported.";
20
+ readonly OPERA_NOT_SUPPORTED: "Opera version 43 and below is not support WASM";
21
+ };
22
+ export declare const PACKAGE_COMPATIBILITY_MIN_VERSIONS: {
23
+ readonly SAFARI: 10;
24
+ readonly OPERA_MOBILE: 72;
25
+ readonly ANDROID_CHROME: 96;
26
+ readonly SAMSUNG_BROWSER: 6.2;
27
+ readonly FIREFOX_MOBILE: 94;
28
+ readonly ANDROID_BROWSER: 96;
29
+ readonly EDGE: 78;
30
+ readonly CHROME: 57;
31
+ readonly FIREFOX: 52;
32
+ readonly OPERA: 43;
33
+ };
@@ -0,0 +1,35 @@
1
+ // Browser compatibility messages
2
+ export const BROWSER_COMPATIBILITY_MESSAGES = {
3
+ OPERA_MOBILE_NOT_SUPPORTED: 'Opera mobile version 72 and below is not support WASM',
4
+ OPERA_NOT_SUPPORTED: 'Opera version 43 and below is not support WASM',
5
+ CHROME_NOT_SUPPORTED: 'Chrome version 57 and below is not support WASM',
6
+ FIREFOX_NOT_SUPPORTED: 'Firefox version 52 and below is not support WASM',
7
+ ANDROID_BROWSER_NOT_SUPPORTED: 'Android Browser version 96 and below is not supported.',
8
+ UNABLE_TO_LOAD_WASM: 'Unable to load wasm',
9
+ };
10
+ export const PACKAGE_COMPATIBILITY_MESSAGES = {
11
+ SAFARI_NOT_SUPPORTED: 'Safari version 10 and below is not supported.',
12
+ OPERA_MOBILE_NOT_SUPPORTED: 'Opera mobile version 72 and below is not support WASM',
13
+ ANDROID_CHROME_NOT_SUPPORTED: 'Android Chrome version 96 and below is not supported.',
14
+ SAMSUNG_BROWSER_NOT_SUPPORTED: 'Samsung browser version 6 and below is not supported.',
15
+ FIREFOX_MOBILE_NOT_SUPPORTED: 'Firefox mobile version 94 and below is not supported.',
16
+ ANDROID_BROWSER_NOT_SUPPORTED: 'Android Browser version 96 and below is not supported.',
17
+ IE_NOT_SUPPORTED: 'Internet Explorer is not supported.',
18
+ EDGE_NOT_SUPPORTED: 'Edge version 78 and below is not supported.',
19
+ CHROME_NOT_SUPPORTED: 'Chrome version 57 and below is not support WASM',
20
+ FIREFOX_NOT_SUPPORTED: 'Firefox version 52 and below is not supported.',
21
+ OPERA_NOT_SUPPORTED: 'Opera version 43 and below is not support WASM',
22
+ };
23
+ export const PACKAGE_COMPATIBILITY_MIN_VERSIONS = {
24
+ SAFARI: 10,
25
+ OPERA_MOBILE: 72,
26
+ ANDROID_CHROME: 96,
27
+ SAMSUNG_BROWSER: 6.2,
28
+ FIREFOX_MOBILE: 94,
29
+ ANDROID_BROWSER: 96,
30
+ EDGE: 78,
31
+ CHROME: 57,
32
+ FIREFOX: 52,
33
+ OPERA: 43,
34
+ };
35
+ //# sourceMappingURL=engine.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.constants.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/engine.constants.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,0BAA0B,EAAE,uDAAuD;IACnF,mBAAmB,EAAE,gDAAgD;IACrE,oBAAoB,EAAE,iDAAiD;IACvE,qBAAqB,EAAE,kDAAkD;IACzE,6BAA6B,EAAE,wDAAwD;IACvF,mBAAmB,EAAE,qBAAqB;CAClC,CAAC;AAEX,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,oBAAoB,EAAE,+CAA+C;IACrE,0BAA0B,EAAE,uDAAuD;IACnF,4BAA4B,EAAE,uDAAuD;IACrF,6BAA6B,EAAE,uDAAuD;IACtF,4BAA4B,EAAE,uDAAuD;IACrF,6BAA6B,EAAE,wDAAwD;IACvF,gBAAgB,EAAE,qCAAqC;IACvD,kBAAkB,EAAE,6CAA6C;IACjE,oBAAoB,EAAE,iDAAiD;IACvE,qBAAqB,EAAE,gDAAgD;IACvE,mBAAmB,EAAE,gDAAgD;CAC7D,CAAC;AAEX,MAAM,CAAC,MAAM,kCAAkC,GAAG;IAChD,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,EAAE;IAChB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,GAAG;IACpB,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;CACD,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { LoadModuleParams, LoadModuleResult, PackageSupportResult } from './engine.types';
2
+ export interface Engine {
3
+ /**
4
+ * Load the WASM modules with the given options
5
+ */
6
+ loadModule(options: LoadModuleParams): Promise<LoadModuleResult>;
7
+ /**
8
+ * Check if The AI models used on the WASM are loaded
9
+ */
10
+ checkModelsAreLoaded(): Promise<boolean>;
11
+ /**
12
+ * Free WASM Engine memory
13
+ */
14
+ freeMemory(): Promise<boolean>;
15
+ /**
16
+ * Encrypt data using PKI encryption
17
+ */
18
+ encryptData(payload: unknown): Promise<(string | null)[]>;
19
+ /**
20
+ * Check if the current browser supports the package
21
+ */
22
+ checkPackageSupport(): PackageSupportResult;
23
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=engine.domain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.domain.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/engine.domain.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ type ApiUrl = {
2
+ collections: {
3
+ default: {
4
+ named_urls: {
5
+ base_url: string;
6
+ predict?: string;
7
+ enroll?: string;
8
+ validate_api_key?: string;
9
+ };
10
+ };
11
+ };
12
+ };
13
+ export type LoadModuleParams = {
14
+ apiUrl: ApiUrl;
15
+ sessionToken: string;
16
+ publicKey: string;
17
+ timeout?: number;
18
+ useCdn?: boolean;
19
+ usageScenario?: string;
20
+ shouldRegenerateSession?: boolean;
21
+ wasmFailureCallback?: (result: any) => void;
22
+ skipSimdCheck?: boolean;
23
+ };
24
+ export type LoadModuleResult = {
25
+ support: boolean;
26
+ message?: string;
27
+ };
28
+ export type PackageSupportResult = {
29
+ isSupported: boolean;
30
+ message?: string;
31
+ };
32
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=engine.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.types.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/engine.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,65 @@
1
+ import { LoadModuleResult } from './engine.types';
2
+ /**
3
+ * Check if the current browser supports WASM Engine
4
+ */
5
+ export declare function checkBrowserCompatibility(): LoadModuleResult;
6
+ export declare function handleCacheContent(): Promise<string>;
7
+ /**
8
+ * Get URL parameter
9
+ */
10
+ export declare function getUrlParameter(sParam: string, defaultValue: string): string;
11
+ export declare function checkMacOSSupport(browserName: string, version: string): {
12
+ isSupported: boolean;
13
+ message: "Safari version 10 and below is not supported.";
14
+ } | {
15
+ isSupported: boolean;
16
+ message?: undefined;
17
+ };
18
+ export declare function checkIOSSupport(browserName: string, version: string): {
19
+ isSupported: boolean;
20
+ message: "Safari version 10 and below is not supported.";
21
+ } | {
22
+ isSupported: boolean;
23
+ message: "Opera mobile version 72 and below is not support WASM";
24
+ } | {
25
+ isSupported: boolean;
26
+ message?: undefined;
27
+ };
28
+ export declare function checkAndroidSupport(browserName: string, version: string): {
29
+ isSupported: boolean;
30
+ message: "Android Chrome version 96 and below is not supported.";
31
+ } | {
32
+ isSupported: boolean;
33
+ message: "Samsung browser version 6 and below is not supported.";
34
+ } | {
35
+ isSupported: boolean;
36
+ message: "Firefox mobile version 94 and below is not supported.";
37
+ } | {
38
+ isSupported: boolean;
39
+ message: "Opera mobile version 72 and below is not support WASM";
40
+ } | {
41
+ isSupported: boolean;
42
+ message: "Android Browser version 96 and below is not supported.";
43
+ } | {
44
+ isSupported: boolean;
45
+ message?: undefined;
46
+ };
47
+ export declare function checkWebBrowsersSupport(browserName: string, version: string): {
48
+ isSupported: boolean;
49
+ message: "Internet Explorer is not supported.";
50
+ } | {
51
+ isSupported: boolean;
52
+ message: "Edge version 78 and below is not supported.";
53
+ } | {
54
+ isSupported: boolean;
55
+ message: "Chrome version 57 and below is not support WASM";
56
+ } | {
57
+ isSupported: boolean;
58
+ message: "Firefox version 52 and below is not supported.";
59
+ } | {
60
+ isSupported: boolean;
61
+ message: "Opera version 43 and below is not support WASM";
62
+ } | {
63
+ isSupported: boolean;
64
+ message?: undefined;
65
+ };
@@ -0,0 +1,135 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { detect } from 'detect-browser';
11
+ import { clearDB } from '../../../../dbUtils';
12
+ import { iOS, printLogs } from '../../internal/shared/shared.utils';
13
+ import { BROWSER_COMPATIBILITY_MESSAGES, PACKAGE_COMPATIBILITY_MESSAGES, PACKAGE_COMPATIBILITY_MIN_VERSIONS, } from './engine.constants';
14
+ /**
15
+ * Check if the current browser supports WASM Engine
16
+ */
17
+ export function checkBrowserCompatibility() {
18
+ const { name: browserName, version, os } = detect();
19
+ // Mobile checks
20
+ if (os === 'iOS' || iOS()) {
21
+ if (browserName === 'opera' && parseInt(version.split('.')[0], 10) <= 72) {
22
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.OPERA_MOBILE_NOT_SUPPORTED };
23
+ }
24
+ }
25
+ if (os === 'Android OS') {
26
+ if (browserName === 'opera' && parseInt(version.split('.')[0], 10) <= 72) {
27
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.OPERA_MOBILE_NOT_SUPPORTED };
28
+ }
29
+ if (browserName === 'android' && parseInt(version.split('.')[0], 10) <= 96) {
30
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.ANDROID_BROWSER_NOT_SUPPORTED };
31
+ }
32
+ }
33
+ // Desktop browser checks
34
+ if (browserName === 'chrome' && parseInt(version.split('.')[0], 10) <= 57) {
35
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.CHROME_NOT_SUPPORTED };
36
+ }
37
+ if (browserName === 'firefox' && parseInt(version.split('.')[0], 10) <= 52) {
38
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.FIREFOX_NOT_SUPPORTED };
39
+ }
40
+ if (browserName === 'opera' && parseInt(version.split('.')[0], 10) <= 43) {
41
+ return { support: false, message: BROWSER_COMPATIBILITY_MESSAGES.OPERA_NOT_SUPPORTED };
42
+ }
43
+ return { support: true };
44
+ }
45
+ export function handleCacheContent() {
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ const clearCacheParam = getUrlParameter('clear_cache', 'false');
48
+ const cacheAge = localStorage.getItem('cacheAge');
49
+ const cacheContent = localStorage.getItem('cache_content') || '';
50
+ if (!cacheAge) {
51
+ localStorage.setItem('cacheAge', Date.now().toString());
52
+ }
53
+ if ((cacheAge && Date.now() - Number(cacheAge) > 24 * 60 * 60 * 1000) || clearCacheParam === 'true') {
54
+ printLogs('ClearingCache', '');
55
+ yield clearDB();
56
+ localStorage.clear();
57
+ localStorage.setItem('cacheAge', Date.now().toString());
58
+ }
59
+ return cacheContent;
60
+ });
61
+ }
62
+ /**
63
+ * Get URL parameter
64
+ */
65
+ export function getUrlParameter(sParam, defaultValue) {
66
+ const sPageURL = window.location.search.substring(1);
67
+ const sURLVariables = sPageURL.split('&');
68
+ let sParameterName;
69
+ let i;
70
+ for (i = 0; i < sURLVariables.length; i++) {
71
+ sParameterName = sURLVariables[i].split('=');
72
+ if (sParameterName[0] === sParam) {
73
+ return typeof sParameterName[1] === undefined ? defaultValue : decodeURIComponent(sParameterName[1]);
74
+ }
75
+ }
76
+ return defaultValue;
77
+ }
78
+ export function checkMacOSSupport(browserName, version) {
79
+ if (browserName === 'safari' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.SAFARI) {
80
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.SAFARI_NOT_SUPPORTED };
81
+ }
82
+ return { isSupported: true };
83
+ }
84
+ export function checkIOSSupport(browserName, version) {
85
+ if (browserName === 'safari' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.SAFARI) {
86
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.SAFARI_NOT_SUPPORTED };
87
+ }
88
+ if (browserName === 'opera' &&
89
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.OPERA_MOBILE) {
90
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.OPERA_MOBILE_NOT_SUPPORTED };
91
+ }
92
+ return { isSupported: true };
93
+ }
94
+ export function checkAndroidSupport(browserName, version) {
95
+ if (browserName === 'chrome' &&
96
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.ANDROID_CHROME) {
97
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.ANDROID_CHROME_NOT_SUPPORTED };
98
+ }
99
+ if (browserName === 'samsung' &&
100
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.SAMSUNG_BROWSER) {
101
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.SAMSUNG_BROWSER_NOT_SUPPORTED };
102
+ }
103
+ if (browserName === 'firefox' &&
104
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.FIREFOX_MOBILE) {
105
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.FIREFOX_MOBILE_NOT_SUPPORTED };
106
+ }
107
+ if (browserName === 'opera' &&
108
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.OPERA_MOBILE) {
109
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.OPERA_MOBILE_NOT_SUPPORTED };
110
+ }
111
+ if (browserName === 'android' &&
112
+ parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.ANDROID_BROWSER) {
113
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.ANDROID_BROWSER_NOT_SUPPORTED };
114
+ }
115
+ return { isSupported: true };
116
+ }
117
+ export function checkWebBrowsersSupport(browserName, version) {
118
+ if (browserName === 'ie') {
119
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.IE_NOT_SUPPORTED };
120
+ }
121
+ if (browserName === 'edge' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.EDGE) {
122
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.EDGE_NOT_SUPPORTED };
123
+ }
124
+ if (browserName === 'chrome' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.CHROME) {
125
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.CHROME_NOT_SUPPORTED };
126
+ }
127
+ if (browserName === 'firefox' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.FIREFOX) {
128
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.FIREFOX_NOT_SUPPORTED };
129
+ }
130
+ if (browserName === 'opera' && parseInt(version.split('.')[0], 10) <= PACKAGE_COMPATIBILITY_MIN_VERSIONS.OPERA) {
131
+ return { isSupported: false, message: PACKAGE_COMPATIBILITY_MESSAGES.OPERA_NOT_SUPPORTED };
132
+ }
133
+ return { isSupported: true };
134
+ }
135
+ //# sourceMappingURL=engine.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.utils.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/engine.utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { EngineService } from './EngineService';
2
+ export { Engine } from './engine.domain';
3
+ export { LoadModuleParams, LoadModuleResult } from './engine.types';
@@ -0,0 +1,2 @@
1
+ export { EngineService } from './EngineService';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/application/modules/support/engine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,55 +1,55 @@
1
- import { PermissionDataState, PermissionListener } from './permissions.types';
2
- import { IPermissionService } from './permissions.domain';
3
- /**
4
- * Singleton class to manage camera permissions across the application.
5
- * Provides a single source of truth for camera permission state.
6
- */
7
- declare class PermissionService implements IPermissionService {
8
- private static instance;
9
- private permissionGranted;
10
- private permissionState;
11
- private listeners;
12
- private userMediaTimeout;
13
- static getInstance(): PermissionService;
14
- /**
15
- * Adds a listener for permission state changes.
16
- * Returns an unsubscribe function to remove the listener.
17
- */
18
- addListener(listener: PermissionListener): () => void;
19
- /**
20
- * Notifies all listeners about state changes
21
- */
22
- private notifyListeners;
23
- /**
24
- * Requests camera permission via browser flow and returns the permission state.
25
- * This is the simplified method for UI consumption.
26
- * If permission is already granted, returns immediately without triggering browser flow.
27
- */
28
- requestCameraPermissions(): Promise<PermissionDataState>;
29
- /**
30
- * Checks camera permission status and returns a boolean.
31
- * This is the simplified method for UI consumption.
32
- */
33
- checkCameraPermissions(): Promise<PermissionDataState>;
34
- /**
35
- * Requests camera permission and returns permission status.
36
- * Internal method used by camera services.
37
- */
38
- private requestBrowserCameraPermission;
39
- /**
40
- * Checks permission against Permission API and requests via getUserMedia if needed.
41
- * If permission is denied, avoids making getUserMedia call.
42
- * If permission is 'prompt' or 'granted', proceeds with getUserMedia.
43
- * @returns boolean indicating if permission was granted.
44
- */
45
- private grantPermission;
46
- /**
47
- * Checks permission against Permission API, if supported
48
- * @returns boolean indicating if permission request should proceed.
49
- */
50
- private checkPermissionShouldBeRequested;
51
- private getUserMediaWithTimeout;
52
- private getPermissionStateData;
53
- private setPermissionStateData;
54
- }
55
- export { PermissionService };
1
+ import { PermissionDataState, PermissionListener } from './permissions.types';
2
+ import { IPermissionService } from './permissions.domain';
3
+ /**
4
+ * Singleton class to manage camera permissions across the application.
5
+ * Provides a single source of truth for camera permission state.
6
+ */
7
+ declare class PermissionService implements IPermissionService {
8
+ private static instance;
9
+ private permissionGranted;
10
+ private permissionState;
11
+ private listeners;
12
+ private userMediaTimeout;
13
+ static getInstance(): PermissionService;
14
+ /**
15
+ * Adds a listener for permission state changes.
16
+ * Returns an unsubscribe function to remove the listener.
17
+ */
18
+ addListener(listener: PermissionListener): () => void;
19
+ /**
20
+ * Notifies all listeners about state changes
21
+ */
22
+ private notifyListeners;
23
+ /**
24
+ * Requests camera permission via browser flow and returns the permission state.
25
+ * This is the simplified method for UI consumption.
26
+ * If permission is already granted, returns immediately without triggering browser flow.
27
+ */
28
+ requestCameraPermissions(): Promise<PermissionDataState>;
29
+ /**
30
+ * Checks camera permission status and returns a boolean.
31
+ * This is the simplified method for UI consumption.
32
+ */
33
+ checkCameraPermissions(): Promise<PermissionDataState>;
34
+ /**
35
+ * Requests camera permission and returns permission status.
36
+ * Internal method used by camera services.
37
+ */
38
+ private requestBrowserCameraPermission;
39
+ /**
40
+ * Checks permission against Permission API and requests via getUserMedia if needed.
41
+ * If permission is denied, avoids making getUserMedia call.
42
+ * If permission is 'prompt' or 'granted', proceeds with getUserMedia.
43
+ * @returns boolean indicating if permission was granted.
44
+ */
45
+ private grantPermission;
46
+ /**
47
+ * Checks permission against Permission API, if supported
48
+ * @returns boolean indicating if permission request should proceed.
49
+ */
50
+ private checkPermissionShouldBeRequested;
51
+ private getUserMediaWithTimeout;
52
+ private getPermissionStateData;
53
+ private setPermissionStateData;
54
+ }
55
+ export { PermissionService };