@frankieone/one-sdk 0.1.0-poc.18 → 0.2.2-alpha

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 (437) hide show
  1. package/dist/commit.txt +1 -1
  2. package/dist/esm/modules/biometrics/constants.d.ts +2 -0
  3. package/dist/esm/modules/biometrics/constants.js +2 -0
  4. package/dist/esm/modules/biometrics/constants.js.map +1 -0
  5. package/dist/esm/modules/biometrics/index.d.ts +4 -0
  6. package/dist/esm/modules/biometrics/index.js +71 -0
  7. package/dist/esm/modules/biometrics/index.js.map +1 -0
  8. package/dist/esm/modules/biometrics/parseConfiguration.d.ts +4 -0
  9. package/dist/esm/modules/biometrics/parseConfiguration.js +9 -0
  10. package/dist/esm/modules/biometrics/parseConfiguration.js.map +1 -0
  11. package/dist/esm/modules/biometrics/types/events.d.ts +23 -0
  12. package/dist/esm/modules/biometrics/types/events.js +2 -0
  13. package/dist/esm/modules/biometrics/types/events.js.map +1 -0
  14. package/dist/esm/modules/biometrics/types/index.d.ts +3 -0
  15. package/dist/esm/modules/biometrics/types/index.js +4 -0
  16. package/dist/esm/modules/biometrics/types/index.js.map +1 -0
  17. package/dist/esm/modules/biometrics/types/module.d.ts +8 -0
  18. package/dist/esm/modules/biometrics/types/module.js +2 -0
  19. package/dist/esm/modules/biometrics/types/module.js.map +1 -0
  20. package/dist/esm/modules/biometrics/types/wrapper.d.ts +19 -0
  21. package/dist/esm/modules/biometrics/types/wrapper.js +2 -0
  22. package/dist/esm/modules/biometrics/types/wrapper.js.map +1 -0
  23. package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.d.ts +2 -0
  24. package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js +221 -0
  25. package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js.map +1 -0
  26. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.d.ts +1 -0
  27. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js +2 -0
  28. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js.map +1 -0
  29. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.d.ts +2 -0
  30. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js +98 -0
  31. package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js.map +1 -0
  32. package/dist/esm/modules/common/constants.d.ts +5 -2
  33. package/dist/esm/modules/common/constants.js +5 -1
  34. package/dist/esm/modules/common/constants.js.map +1 -1
  35. package/dist/esm/modules/common/index.d.ts +6 -3
  36. package/dist/esm/modules/common/index.js +6 -3
  37. package/dist/esm/modules/common/index.js.map +1 -1
  38. package/dist/esm/modules/common/modules/ReactiveStore.d.ts +29 -0
  39. package/dist/esm/modules/common/modules/ReactiveStore.js +98 -0
  40. package/dist/esm/modules/common/modules/ReactiveStore.js.map +1 -0
  41. package/dist/esm/modules/common/modules/UnpersistedModel.d.ts +17 -0
  42. package/dist/esm/modules/common/modules/UnpersistedModel.js +33 -0
  43. package/dist/esm/modules/common/modules/UnpersistedModel.js.map +1 -0
  44. package/dist/esm/modules/common/modules/base64.d.ts +4 -4
  45. package/dist/esm/modules/common/modules/base64.js +7 -7
  46. package/dist/esm/modules/common/modules/base64.js.map +1 -1
  47. package/dist/esm/modules/common/modules/env2url.d.ts +2 -1
  48. package/dist/esm/modules/common/modules/env2url.js +3 -0
  49. package/dist/esm/modules/common/modules/env2url.js.map +1 -1
  50. package/dist/esm/modules/common/modules/error.d.ts +3 -0
  51. package/dist/esm/modules/common/modules/error.js +8 -0
  52. package/dist/esm/modules/common/modules/error.js.map +1 -0
  53. package/dist/esm/modules/common/modules/eventHub.d.ts +30 -4
  54. package/dist/esm/modules/common/modules/eventHub.js +9 -3
  55. package/dist/esm/modules/common/modules/eventHub.js.map +1 -1
  56. package/dist/esm/modules/common/modules/objectUtils.d.ts +14 -0
  57. package/dist/esm/modules/common/modules/objectUtils.js +64 -0
  58. package/dist/esm/modules/common/modules/objectUtils.js.map +1 -0
  59. package/dist/esm/modules/common/modules/rxjsOperators.d.ts +1 -0
  60. package/dist/esm/modules/common/modules/rxjsOperators.js +5 -0
  61. package/dist/esm/modules/common/modules/rxjsOperators.js.map +1 -0
  62. package/dist/esm/modules/common/shared/KvpList.d.ts +29 -0
  63. package/dist/esm/modules/common/shared/KvpList.js +134 -0
  64. package/dist/esm/modules/common/shared/KvpList.js.map +1 -0
  65. package/dist/esm/modules/common/shared/data/aus_states.json +10 -0
  66. package/dist/esm/modules/common/shared/data/country.json +19592 -0
  67. package/dist/esm/modules/common/shared/models/Address.d.ts +67 -0
  68. package/dist/esm/modules/common/shared/models/Address.js +155 -0
  69. package/dist/esm/modules/common/shared/models/Address.js.map +1 -0
  70. package/dist/esm/modules/common/shared/models/Admin.d.ts +1295 -0
  71. package/dist/esm/modules/common/shared/models/Admin.js +6 -0
  72. package/dist/esm/modules/common/shared/models/Admin.js.map +1 -0
  73. package/dist/esm/modules/common/shared/models/AmlCheckResult.d.ts +77 -0
  74. package/dist/esm/modules/common/shared/models/AmlCheckResult.js +45 -0
  75. package/dist/esm/modules/common/shared/models/AmlCheckResult.js.map +1 -0
  76. package/dist/esm/modules/common/shared/models/AmlMatchDetails.d.ts +37 -0
  77. package/dist/esm/modules/common/shared/models/AmlMatchDetails.js +19 -0
  78. package/dist/esm/modules/common/shared/models/AmlMatchDetails.js.map +1 -0
  79. package/dist/esm/modules/common/shared/models/Applicant.d.ts +119 -0
  80. package/dist/esm/modules/common/shared/models/Applicant.js +167 -0
  81. package/dist/esm/modules/common/shared/models/Applicant.js.map +1 -0
  82. package/dist/esm/modules/common/shared/models/ApplicantSummary.d.ts +90 -0
  83. package/dist/esm/modules/common/shared/models/ApplicantSummary.js +52 -0
  84. package/dist/esm/modules/common/shared/models/ApplicantSummary.js.map +1 -0
  85. package/dist/esm/modules/common/shared/models/AssociatedParty.d.ts +42 -0
  86. package/dist/esm/modules/common/shared/models/AssociatedParty.js +39 -0
  87. package/dist/esm/modules/common/shared/models/AssociatedParty.js.map +1 -0
  88. package/dist/esm/modules/common/shared/models/AuditEntry.d.ts +81 -0
  89. package/dist/esm/modules/common/shared/models/AuditEntry.js +106 -0
  90. package/dist/esm/modules/common/shared/models/AuditEntry.js.map +1 -0
  91. package/dist/esm/modules/common/shared/models/AuditLogV2.d.ts +57 -0
  92. package/dist/esm/modules/common/shared/models/AuditLogV2.js +75 -0
  93. package/dist/esm/modules/common/shared/models/AuditLogV2.js.map +1 -0
  94. package/dist/esm/modules/common/shared/models/BiometryReport.d.ts +35 -0
  95. package/dist/esm/modules/common/shared/models/BiometryReport.js +22 -0
  96. package/dist/esm/modules/common/shared/models/BiometryReport.js.map +1 -0
  97. package/dist/esm/modules/common/shared/models/BlockListSummary.d.ts +46 -0
  98. package/dist/esm/modules/common/shared/models/BlockListSummary.js +56 -0
  99. package/dist/esm/modules/common/shared/models/BlockListSummary.js.map +1 -0
  100. package/dist/esm/modules/common/shared/models/Blueprint.d.ts +26 -0
  101. package/dist/esm/modules/common/shared/models/Blueprint.js +2 -0
  102. package/dist/esm/modules/common/shared/models/Blueprint.js.map +1 -0
  103. package/dist/esm/modules/common/shared/models/BusinessInfo.d.ts +32 -0
  104. package/dist/esm/modules/common/shared/models/BusinessInfo.js +66 -0
  105. package/dist/esm/modules/common/shared/models/BusinessInfo.js.map +1 -0
  106. package/dist/esm/modules/common/shared/models/CheckSummary.d.ts +190 -0
  107. package/dist/esm/modules/common/shared/models/CheckSummary.js +233 -0
  108. package/dist/esm/modules/common/shared/models/CheckSummary.js.map +1 -0
  109. package/dist/esm/modules/common/shared/models/Comment.d.ts +19 -0
  110. package/dist/esm/modules/common/shared/models/Comment.js +19 -0
  111. package/dist/esm/modules/common/shared/models/Comment.js.map +1 -0
  112. package/dist/esm/modules/common/shared/models/ConfigurationWrapper.d.ts +15 -0
  113. package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js +44 -0
  114. package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js.map +1 -0
  115. package/dist/esm/modules/common/shared/models/Core.d.ts +2898 -0
  116. package/dist/esm/modules/common/shared/models/Core.js +6 -0
  117. package/dist/esm/modules/common/shared/models/Core.js.map +1 -0
  118. package/dist/esm/modules/common/shared/models/Document.d.ts +124 -0
  119. package/dist/esm/modules/common/shared/models/Document.js +139 -0
  120. package/dist/esm/modules/common/shared/models/Document.js.map +1 -0
  121. package/dist/esm/modules/common/shared/models/Duplicate.d.ts +38 -0
  122. package/dist/esm/modules/common/shared/models/Duplicate.js +26 -0
  123. package/dist/esm/modules/common/shared/models/Duplicate.js.map +1 -0
  124. package/dist/esm/modules/common/shared/models/DynamicUIComponent.d.ts +52 -0
  125. package/dist/esm/modules/common/shared/models/DynamicUIComponent.js +118 -0
  126. package/dist/esm/modules/common/shared/models/DynamicUIComponent.js.map +1 -0
  127. package/dist/esm/modules/common/shared/models/Event.d.ts +16 -0
  128. package/dist/esm/modules/common/shared/models/Event.js +15 -0
  129. package/dist/esm/modules/common/shared/models/Event.js.map +1 -0
  130. package/dist/esm/modules/common/shared/models/EventFactory.d.ts +16 -0
  131. package/dist/esm/modules/common/shared/models/EventFactory.js +11 -0
  132. package/dist/esm/modules/common/shared/models/EventFactory.js.map +1 -0
  133. package/dist/esm/modules/common/shared/models/File.d.ts +24 -0
  134. package/dist/esm/modules/common/shared/models/File.js +25 -0
  135. package/dist/esm/modules/common/shared/models/File.js.map +1 -0
  136. package/dist/esm/modules/common/shared/models/FraudCheckResult.d.ts +10 -0
  137. package/dist/esm/modules/common/shared/models/FraudCheckResult.js +15 -0
  138. package/dist/esm/modules/common/shared/models/FraudCheckResult.js.map +1 -0
  139. package/dist/esm/modules/common/shared/models/FraudMatchDetail.d.ts +48 -0
  140. package/dist/esm/modules/common/shared/models/FraudMatchDetail.js +41 -0
  141. package/dist/esm/modules/common/shared/models/FraudMatchDetail.js.map +1 -0
  142. package/dist/esm/modules/common/shared/models/IChangeStamp.d.ts +11 -0
  143. package/dist/esm/modules/common/shared/models/IChangeStamp.js +7 -0
  144. package/dist/esm/modules/common/shared/models/IChangeStamp.js.map +1 -0
  145. package/dist/esm/modules/common/shared/models/KYCHostedFlow.d.ts +17 -0
  146. package/dist/esm/modules/common/shared/models/KYCHostedFlow.js +20 -0
  147. package/dist/esm/modules/common/shared/models/KYCHostedFlow.js.map +1 -0
  148. package/dist/esm/modules/common/shared/models/KvpList.d.ts +29 -0
  149. package/dist/esm/modules/common/shared/models/KvpList.js +134 -0
  150. package/dist/esm/modules/common/shared/models/KvpList.js.map +1 -0
  151. package/dist/esm/modules/common/shared/models/OCRDocumentDetail.d.ts +49 -0
  152. package/dist/esm/modules/common/shared/models/OCRDocumentDetail.js +33 -0
  153. package/dist/esm/modules/common/shared/models/OCRDocumentDetail.js.map +1 -0
  154. package/dist/esm/modules/common/shared/models/OCRReport.d.ts +20 -0
  155. package/dist/esm/modules/common/shared/models/OCRReport.js +17 -0
  156. package/dist/esm/modules/common/shared/models/OCRReport.js.map +1 -0
  157. package/dist/esm/modules/common/shared/models/Organisation.d.ts +36 -0
  158. package/dist/esm/modules/common/shared/models/Organisation.js +51 -0
  159. package/dist/esm/modules/common/shared/models/Organisation.js.map +1 -0
  160. package/dist/esm/modules/common/shared/models/OrganizationAnalytics.d.ts +14 -0
  161. package/dist/esm/modules/common/shared/models/OrganizationAnalytics.js +149 -0
  162. package/dist/esm/modules/common/shared/models/OrganizationAnalytics.js.map +1 -0
  163. package/dist/esm/modules/common/shared/models/PortalFeatureConfig.d.ts +79 -0
  164. package/dist/esm/modules/common/shared/models/PortalFeatureConfig.js +83 -0
  165. package/dist/esm/modules/common/shared/models/PortalFeatureConfig.js.map +1 -0
  166. package/dist/esm/modules/common/shared/models/Profile.d.ts +27 -0
  167. package/dist/esm/modules/common/shared/models/Profile.js +96 -0
  168. package/dist/esm/modules/common/shared/models/Profile.js.map +1 -0
  169. package/dist/esm/modules/common/shared/models/ReportAttributes.d.ts +21 -0
  170. package/dist/esm/modules/common/shared/models/ReportAttributes.js +18 -0
  171. package/dist/esm/modules/common/shared/models/ReportAttributes.js.map +1 -0
  172. package/dist/esm/modules/common/shared/models/RiskIndicator.d.ts +48 -0
  173. package/dist/esm/modules/common/shared/models/RiskIndicator.js +30 -0
  174. package/dist/esm/modules/common/shared/models/RiskIndicator.js.map +1 -0
  175. package/dist/esm/modules/common/shared/models/Session.d.ts +5 -0
  176. package/dist/esm/modules/common/shared/models/Session.js +2 -0
  177. package/dist/esm/modules/common/shared/models/Session.js.map +1 -0
  178. package/dist/esm/modules/common/shared/models/SupportingDocument.d.ts +96 -0
  179. package/dist/esm/modules/common/shared/models/SupportingDocument.js +91 -0
  180. package/dist/esm/modules/common/shared/models/SupportingDocument.js.map +1 -0
  181. package/dist/esm/modules/common/shared/models/TApplicantIssue.d.ts +12 -0
  182. package/dist/esm/modules/common/shared/models/TApplicantIssue.js +2 -0
  183. package/dist/esm/modules/common/shared/models/TApplicantIssue.js.map +1 -0
  184. package/dist/esm/modules/common/shared/models/TApplicantStatus.d.ts +7 -0
  185. package/dist/esm/modules/common/shared/models/TApplicantStatus.js +2 -0
  186. package/dist/esm/modules/common/shared/models/TApplicantStatus.js.map +1 -0
  187. package/dist/esm/modules/common/shared/models/TKycMethod.d.ts +1 -0
  188. package/dist/esm/modules/common/shared/models/TKycMethod.js +2 -0
  189. package/dist/esm/modules/common/shared/models/TKycMethod.js.map +1 -0
  190. package/dist/esm/modules/common/shared/models/TValidation.d.ts +6 -0
  191. package/dist/esm/modules/common/shared/models/TValidation.js +2 -0
  192. package/dist/esm/modules/common/shared/models/TValidation.js.map +1 -0
  193. package/dist/esm/modules/common/shared/models/TransactionDetails.d.ts +70 -0
  194. package/dist/esm/modules/common/shared/models/TransactionDetails.js +53 -0
  195. package/dist/esm/modules/common/shared/models/TransactionDetails.js.map +1 -0
  196. package/dist/esm/modules/common/shared/models/UBOData.d.ts +485 -0
  197. package/dist/esm/modules/common/shared/models/UBOData.js +618 -0
  198. package/dist/esm/modules/common/shared/models/UBOData.js.map +1 -0
  199. package/dist/esm/modules/common/shared/models/UIBlueprint.d.ts +33 -0
  200. package/dist/esm/modules/common/shared/models/UIBlueprint.js +164 -0
  201. package/dist/esm/modules/common/shared/models/UIBlueprint.js.map +1 -0
  202. package/dist/esm/modules/common/shared/models/User.d.ts +27 -0
  203. package/dist/esm/modules/common/shared/models/User.js +2 -0
  204. package/dist/esm/modules/common/shared/models/User.js.map +1 -0
  205. package/dist/esm/modules/common/shared/models/api.d.ts +124 -0
  206. package/dist/esm/modules/common/shared/models/api.js +2 -0
  207. package/dist/esm/modules/common/shared/models/api.js.map +1 -0
  208. package/dist/esm/modules/common/shared/models/general.d.ts +31 -0
  209. package/dist/esm/modules/common/shared/models/general.js +2 -0
  210. package/dist/esm/modules/common/shared/models/general.js.map +1 -0
  211. package/dist/esm/modules/common/shared/transformers/apiAlert.d.ts +4 -0
  212. package/dist/esm/modules/common/shared/transformers/apiAlert.js +104 -0
  213. package/dist/esm/modules/common/shared/transformers/apiAlert.js.map +1 -0
  214. package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.d.ts +2 -0
  215. package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.js +40 -0
  216. package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.js.map +1 -0
  217. package/dist/esm/modules/common/shared/transformers/apiState.d.ts +23 -0
  218. package/dist/esm/modules/common/shared/transformers/apiState.js +100 -0
  219. package/dist/esm/modules/common/shared/transformers/apiState.js.map +1 -0
  220. package/dist/esm/modules/common/shared/transformers/index.d.ts +3 -0
  221. package/dist/esm/modules/common/shared/transformers/index.js +4 -0
  222. package/dist/esm/modules/common/shared/transformers/index.js.map +1 -0
  223. package/dist/esm/modules/common/shared/utils/address.d.ts +2 -0
  224. package/dist/esm/modules/common/shared/utils/address.js +21 -0
  225. package/dist/esm/modules/common/shared/utils/address.js.map +1 -0
  226. package/dist/esm/modules/common/shared/utils/base64.d.ts +11 -0
  227. package/dist/esm/modules/common/shared/utils/base64.js +37 -0
  228. package/dist/esm/modules/common/shared/utils/base64.js.map +1 -0
  229. package/dist/esm/modules/common/shared/utils/buildCycleUtils.d.ts +1 -0
  230. package/dist/esm/modules/common/shared/utils/buildCycleUtils.js +28 -0
  231. package/dist/esm/modules/common/shared/utils/buildCycleUtils.js.map +1 -0
  232. package/dist/esm/modules/common/shared/utils/constants.d.ts +75 -0
  233. package/dist/esm/modules/common/shared/utils/constants.js +220 -0
  234. package/dist/esm/modules/common/shared/utils/constants.js.map +1 -0
  235. package/dist/esm/modules/common/shared/utils/date.d.ts +5 -0
  236. package/dist/esm/modules/common/shared/utils/date.js +66 -0
  237. package/dist/esm/modules/common/shared/utils/date.js.map +1 -0
  238. package/dist/esm/modules/common/shared/utils/dotNotation.d.ts +4 -0
  239. package/dist/esm/modules/common/shared/utils/dotNotation.js +12 -0
  240. package/dist/esm/modules/common/shared/utils/dotNotation.js.map +1 -0
  241. package/dist/esm/modules/common/shared/utils/getCountryDetails.d.ts +9 -0
  242. package/dist/esm/modules/common/shared/utils/getCountryDetails.js +15 -0
  243. package/dist/esm/modules/common/shared/utils/getCountryDetails.js.map +1 -0
  244. package/dist/esm/modules/common/shared/utils/getDocumentDetails.d.ts +8 -0
  245. package/dist/esm/modules/common/shared/utils/getDocumentDetails.js +6 -0
  246. package/dist/esm/modules/common/shared/utils/getDocumentDetails.js.map +1 -0
  247. package/dist/esm/modules/common/shared/utils/helper.d.ts +4 -0
  248. package/dist/esm/modules/common/shared/utils/helper.js +31 -0
  249. package/dist/esm/modules/common/shared/utils/helper.js.map +1 -0
  250. package/dist/esm/modules/common/shared/utils/index.d.ts +11 -0
  251. package/dist/esm/modules/common/shared/utils/index.js +12 -0
  252. package/dist/esm/modules/common/shared/utils/index.js.map +1 -0
  253. package/dist/esm/modules/common/shared/utils/isEmpty.d.ts +5 -0
  254. package/dist/esm/modules/common/shared/utils/isEmpty.js +23 -0
  255. package/dist/esm/modules/common/shared/utils/isEmpty.js.map +1 -0
  256. package/dist/esm/modules/common/shared/utils/sanitiser.d.ts +7 -0
  257. package/dist/esm/modules/common/shared/utils/sanitiser.js +23 -0
  258. package/dist/esm/modules/common/shared/utils/sanitiser.js.map +1 -0
  259. package/dist/esm/modules/common/shared/utils/string.d.ts +1 -0
  260. package/dist/esm/modules/common/shared/utils/string.js +3 -0
  261. package/dist/esm/modules/common/shared/utils/string.js.map +1 -0
  262. package/dist/esm/modules/common/types/Accessors.d.ts +19 -0
  263. package/dist/esm/modules/common/types/Accessors.js +2 -0
  264. package/dist/esm/modules/common/types/Accessors.js.map +1 -0
  265. package/dist/esm/modules/common/types/Configuration.d.ts +9 -8
  266. package/dist/esm/modules/common/types/Object.d.ts +3 -0
  267. package/dist/esm/modules/common/types/Object.js +2 -0
  268. package/dist/esm/modules/common/types/Object.js.map +1 -0
  269. package/dist/esm/modules/common/types/Session.d.ts +16 -0
  270. package/dist/esm/modules/common/types/Session.js +2 -0
  271. package/dist/esm/modules/common/types/Session.js.map +1 -0
  272. package/dist/esm/modules/device/index.d.ts +1 -1
  273. package/dist/esm/modules/device/index.js +23 -17
  274. package/dist/esm/modules/device/index.js.map +1 -1
  275. package/dist/esm/modules/device/parseConfiguration.d.ts +2 -2
  276. package/dist/esm/modules/device/parseConfiguration.js +2 -8
  277. package/dist/esm/modules/device/parseConfiguration.js.map +1 -1
  278. package/dist/esm/modules/device/types/events.d.ts +3 -2
  279. package/dist/esm/modules/device/types/index.d.ts +1 -1
  280. package/dist/esm/modules/device/types/index.js +1 -1
  281. package/dist/esm/modules/device/types/index.js.map +1 -1
  282. package/dist/esm/modules/device/types/module.d.ts +5 -6
  283. package/dist/esm/modules/device/types/{vendor.d.ts → wrapper.d.ts} +1 -2
  284. package/dist/esm/modules/device/types/wrapper.js +2 -0
  285. package/dist/esm/modules/device/types/wrapper.js.map +1 -0
  286. package/dist/esm/modules/device/vendors/Sardine.d.ts +3 -3
  287. package/dist/esm/modules/device/vendors/Sardine.js +63 -48
  288. package/dist/esm/modules/device/vendors/Sardine.js.map +1 -1
  289. package/dist/esm/modules/device/vendors/Threatmetrix/index.d.ts +2 -3
  290. package/dist/esm/modules/device/vendors/Threatmetrix/index.js +49 -34
  291. package/dist/esm/modules/device/vendors/Threatmetrix/index.js.map +1 -1
  292. package/dist/esm/modules/device/vendors/Threatmetrix/{fp-clientlib-v4.d.ts → nolint_fp-clientlib-v4.d.ts} +0 -0
  293. package/dist/esm/modules/device/vendors/Threatmetrix/{fp-clientlib-v4.js → nolint_fp-clientlib-v4.js} +1 -1
  294. package/dist/esm/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js.map +1 -0
  295. package/dist/esm/modules/frankie-client/ClientsDictionary.d.ts +13 -0
  296. package/dist/esm/modules/frankie-client/ClientsDictionary.js +2 -0
  297. package/dist/esm/modules/frankie-client/ClientsDictionary.js.map +1 -0
  298. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.d.ts +40 -5
  299. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js +185 -23
  300. package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js.map +1 -1
  301. package/dist/esm/modules/frankie-client/FrankieApiClient.d.ts +15 -7
  302. package/dist/esm/modules/frankie-client/FrankieApiClient.js +77 -42
  303. package/dist/esm/modules/frankie-client/FrankieApiClient.js.map +1 -1
  304. package/dist/esm/modules/frankie-client/clients/ApplicantClient.d.ts +24 -0
  305. package/dist/esm/modules/frankie-client/clients/ApplicantClient.js +102 -0
  306. package/dist/esm/modules/frankie-client/clients/ApplicantClient.js.map +1 -0
  307. package/dist/esm/modules/frankie-client/clients/BaseClient.d.ts +10 -0
  308. package/dist/esm/modules/frankie-client/clients/BaseClient.js +16 -0
  309. package/dist/esm/modules/frankie-client/clients/BaseClient.js.map +1 -0
  310. package/dist/esm/modules/frankie-client/clients/ConfigurationClient.d.ts +10 -0
  311. package/dist/esm/modules/frankie-client/clients/ConfigurationClient.js +30 -0
  312. package/dist/esm/modules/frankie-client/clients/ConfigurationClient.js.map +1 -0
  313. package/dist/esm/modules/frankie-client/clients/IDVClient.d.ts +15 -0
  314. package/dist/esm/modules/frankie-client/clients/IDVClient.js +21 -0
  315. package/dist/esm/modules/frankie-client/clients/IDVClient.js.map +1 -0
  316. package/dist/esm/modules/frankie-client/clients/OCRClient.d.ts +30 -0
  317. package/dist/esm/modules/frankie-client/clients/OCRClient.js +116 -0
  318. package/dist/esm/modules/frankie-client/clients/OCRClient.js.map +1 -0
  319. package/dist/esm/modules/frankie-client/index.d.ts +8 -13
  320. package/dist/esm/modules/frankie-client/index.js +42 -10
  321. package/dist/esm/modules/frankie-client/index.js.map +1 -1
  322. package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.d.ts +3 -0
  323. package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.js +25 -0
  324. package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.js.map +1 -0
  325. package/dist/esm/modules/frankie-client/mocks/index.d.ts +12 -0
  326. package/dist/esm/modules/frankie-client/mocks/index.js +24 -0
  327. package/dist/esm/modules/frankie-client/mocks/index.js.map +1 -0
  328. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.d.ts +8 -0
  329. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js +58 -0
  330. package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js.map +1 -0
  331. package/dist/esm/modules/frankie-client/mocks/individual/submitData.d.ts +3 -0
  332. package/dist/esm/modules/frankie-client/mocks/individual/submitData.js +28 -0
  333. package/dist/esm/modules/frankie-client/mocks/individual/submitData.js.map +1 -0
  334. package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.d.ts +2 -0
  335. package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.js +22 -0
  336. package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.js.map +1 -0
  337. package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.d.ts +2 -0
  338. package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.js +8 -0
  339. package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.js.map +1 -0
  340. package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.d.ts +15 -0
  341. package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.js +115 -0
  342. package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.js.map +1 -0
  343. package/dist/esm/modules/index.d.ts +9 -5
  344. package/dist/esm/modules/index.js +4 -2
  345. package/dist/esm/modules/index.js.map +1 -1
  346. package/dist/esm/modules/individual/actions/consents.d.ts +4 -0
  347. package/dist/esm/modules/individual/actions/consents.js +7 -0
  348. package/dist/esm/modules/individual/actions/consents.js.map +1 -0
  349. package/dist/esm/modules/individual/actions/documents.d.ts +9 -0
  350. package/dist/esm/modules/individual/actions/documents.js +21 -0
  351. package/dist/esm/modules/individual/actions/documents.js.map +1 -0
  352. package/dist/esm/modules/individual/actions/emitEvents.d.ts +6 -0
  353. package/dist/esm/modules/individual/actions/emitEvents.js +7 -0
  354. package/dist/esm/modules/individual/actions/emitEvents.js.map +1 -0
  355. package/dist/esm/modules/individual/actions/search.d.ts +17 -0
  356. package/dist/esm/modules/individual/actions/search.js +51 -0
  357. package/dist/esm/modules/individual/actions/search.js.map +1 -0
  358. package/dist/esm/modules/individual/actions/submit.d.ts +15 -0
  359. package/dist/esm/modules/individual/actions/submit.js +37 -0
  360. package/dist/esm/modules/individual/actions/submit.js.map +1 -0
  361. package/dist/esm/modules/individual/index.d.ts +2 -0
  362. package/dist/esm/modules/individual/index.js +74 -0
  363. package/dist/esm/modules/individual/index.js.map +1 -0
  364. package/dist/esm/modules/individual/types/events.d.ts +7 -0
  365. package/dist/esm/modules/individual/types/events.js +2 -0
  366. package/dist/esm/modules/individual/types/events.js.map +1 -0
  367. package/dist/esm/modules/individual/types/index.d.ts +2 -0
  368. package/dist/esm/modules/individual/types/index.js +3 -0
  369. package/dist/esm/modules/individual/types/index.js.map +1 -0
  370. package/dist/esm/modules/individual/types/module.d.ts +31 -0
  371. package/dist/esm/modules/individual/types/module.js +2 -0
  372. package/dist/esm/modules/individual/types/module.js.map +1 -0
  373. package/dist/esm/modules/ocr/actions/start.d.ts +51 -0
  374. package/dist/esm/modules/ocr/actions/start.js +268 -0
  375. package/dist/esm/modules/ocr/actions/start.js.map +1 -0
  376. package/dist/esm/modules/ocr/index.d.ts +12 -0
  377. package/dist/esm/modules/ocr/index.js +61 -0
  378. package/dist/esm/modules/ocr/index.js.map +1 -0
  379. package/dist/esm/modules/ocr/types/events.d.ts +21 -0
  380. package/dist/esm/modules/ocr/types/events.js +2 -0
  381. package/dist/esm/modules/ocr/types/events.js.map +1 -0
  382. package/dist/esm/modules/ocr/types/index.d.ts +2 -0
  383. package/dist/esm/modules/ocr/types/index.js +3 -0
  384. package/dist/esm/modules/ocr/types/index.js.map +1 -0
  385. package/dist/esm/modules/ocr/types/module.d.ts +26 -0
  386. package/dist/esm/modules/ocr/types/module.js +2 -0
  387. package/dist/esm/modules/ocr/types/module.js.map +1 -0
  388. package/dist/esm/modules/sdk/ComponentLoader.d.ts +12 -6
  389. package/dist/esm/modules/sdk/ComponentLoader.js +27 -16
  390. package/dist/esm/modules/sdk/ComponentLoader.js.map +1 -1
  391. package/dist/esm/modules/sdk/index.d.ts +3 -4
  392. package/dist/esm/modules/sdk/index.js +24 -16
  393. package/dist/esm/modules/sdk/index.js.map +1 -1
  394. package/dist/esm/modules/sdk/parseConfiguration.d.ts +3 -0
  395. package/dist/esm/modules/sdk/parseConfiguration.js +91 -0
  396. package/dist/esm/modules/sdk/parseConfiguration.js.map +1 -0
  397. package/dist/esm/modules/sdk/types/components.d.ts +25 -0
  398. package/dist/esm/modules/sdk/types/components.js +2 -0
  399. package/dist/esm/modules/sdk/types/components.js.map +1 -0
  400. package/dist/esm/modules/sdk/types/configuration.d.ts +76 -0
  401. package/dist/esm/modules/sdk/types/configuration.js +38 -0
  402. package/dist/esm/modules/sdk/types/configuration.js.map +1 -0
  403. package/dist/esm/modules/sdk/types/events.d.ts +5 -0
  404. package/dist/esm/modules/sdk/types/events.js +2 -0
  405. package/dist/esm/modules/sdk/types/events.js.map +1 -0
  406. package/dist/esm/modules/sdk/types/index.d.ts +4 -0
  407. package/dist/esm/modules/sdk/types/index.js +5 -0
  408. package/dist/esm/modules/sdk/types/index.js.map +1 -0
  409. package/dist/esm/modules/sdk/types/module.d.ts +16 -0
  410. package/dist/esm/modules/sdk/types/module.js +2 -0
  411. package/dist/esm/modules/sdk/types/module.js.map +1 -0
  412. package/dist/esm/types/Utilities.d.ts +6 -1
  413. package/dist/release.txt +1 -1
  414. package/dist/umd/727.js +3 -0
  415. package/dist/umd/727.js.LICENSE.txt +377 -0
  416. package/dist/umd/727.js.map +1 -0
  417. package/dist/umd/biometrics-dummy.js +2 -0
  418. package/dist/umd/biometrics-dummy.js.map +1 -0
  419. package/dist/umd/biometrics-ocrlabs.js +2 -0
  420. package/dist/umd/biometrics-ocrlabs.js.map +1 -0
  421. package/dist/umd/device-sardine.js +1 -1
  422. package/dist/umd/device-sardine.js.map +1 -1
  423. package/dist/umd/device-threatmetrix.js +1 -1
  424. package/dist/umd/device-threatmetrix.js.map +1 -1
  425. package/dist/umd/oneSdk.umd.js +1 -1
  426. package/dist/umd/oneSdk.umd.js.LICENSE.txt +13 -0
  427. package/dist/umd/oneSdk.umd.js.map +1 -1
  428. package/package.json +31 -11
  429. package/dist/esm/modules/device/types/vendor.js +0 -2
  430. package/dist/esm/modules/device/types/vendor.js.map +0 -1
  431. package/dist/esm/modules/device/vendors/Threatmetrix/fp-clientlib-v4.js.map +0 -1
  432. package/dist/esm/modules/sdk/onInitialisation.d.ts +0 -2
  433. package/dist/esm/modules/sdk/onInitialisation.js +0 -68
  434. package/dist/esm/modules/sdk/onInitialisation.js.map +0 -1
  435. package/dist/esm/modules/sdk/types.d.ts +0 -101
  436. package/dist/esm/modules/sdk/types.js +0 -2
  437. package/dist/esm/modules/sdk/types.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[795],{6479:(e,t,i)=>{i.r(t),i.d(t,{wrapper:()=>s});var n=i(5669),o=function(e,t,i,n){return new(i||(i=Promise))((function(o,s){function l(e){try{r(n.next(e))}catch(e){s(e)}}function d(e){try{r(n.throw(e))}catch(e){s(e)}}function r(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(l,d)}r((n=n.apply(e,t||[])).next())}))};const s={vendor:"dummy-biometrics",initialise(e){return o(this,void 0,void 0,(function*(){const{mountElement:t}=e,i=new n.B(e.frankieClient);return yield i.getToken(),t.appendChild(yield l(Object.assign(Object.assign({},e),{idvClient:i}))),{vendor:"dummy-biometrics"}}))}},l=e=>o(void 0,void 0,void 0,(function*(){const{eventHub:t,idvClient:i}=e,n=document.createElement("div");n.style.position="relative",n.style.height="480px",n.style.width="640px",n.style.margin="0 auto",n.style.overflow="hidden";const o=document.createElement("h3");o.innerText="Take a selfie!",o.style.position="relative",o.style.marginBottom="-40px",o.style.zIndex="1",o.style.color="white",n.appendChild(o);const s=document.createElement("div");s.style.height="100%",s.style.width="100%",s.style.position="absolute",s.style.display="flex",s.style.alignItems="center",s.style.justifyContent="center",s.innerHTML='<svg style=\'display: inline-block; width: 50px; margin-left: 20px;\' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" enable-background="new 0 0 64 64"><path d="M32,2C15.431,2,2,15.432,2,32c0,16.568,13.432,30,30,30c16.568,0,30-13.432,30-30C62,15.432,48.568,2,32,2z M25.025,50 l-0.02-0.02L24.988,50L11,35.6l7.029-7.164l6.977,7.184l21-21.619L53,21.199L25.025,50z" fill="#43a047"/></svg>';const l=document.createElement("video");l.autoplay=!0,l.autofocus=!0,n.appendChild(l);const r=document.createElement("img");r.src="data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%22740%22 height%3D%221800%22%3E%0D %3Cpath fill-opacity%3D%22.80%22 d%3D%22M0 1800V0h740v1800H0zm237-914.056c0 71.601 59.104 175.672 132.021 175.672s132.022-101.453 132.022-175.672c0-83.917-59.107-151.944-132.022-151.944C296.108 734 237 802.027 237 885.944z%22%2F%3E%0D %3Cpath fill%3D%22none%22 stroke%3D%22%23FFF%22 stroke-width%3D%223%22 d%3D%22M237 885.944c0 71.601 59.104 175.672 132.021 175.672s132.022-101.453 132.022-175.672c0-83.917-59.107-151.944-132.022-151.944C296.108 734 237 802.027 237 885.944z%22%2F%3E%0D%3C%2Fsvg%3E%0D",r.style.position="absolute",r.style.top="0",r.style.left="0",r.style.height="1450px",r.style.width="640px",r.style.marginTop="-500px",n.appendChild(r);const a=yield d();l.srcObject=a;const c=document.createElement("button");return c.style.position="relative",c.style.marginTop="-80px",c.style.borderRadius="50%",c.style.height="50px",c.style.width="50px",c.style.background="white",c.style.outline="2px solid white",c.style.outlineOffset="2px",c.style.zIndex="1",c.onclick=()=>{c.disabled=!0,c.style.background="lightgrey",i.initProcess().then((()=>{a.getTracks().forEach((e=>e.stop())),o.remove(),l.remove(),c.remove(),r.remove(),n.appendChild(s),t.emit("processing")}))},n.appendChild(c),n})),d=()=>o(void 0,void 0,void 0,(function*(){if(navigator.mediaDevices.getUserMedia)return navigator.mediaDevices.getUserMedia({video:{facingMode:"user"}});throw new Error("No media device")}))}}]);
2
+ //# sourceMappingURL=biometrics-dummy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biometrics-dummy.js","mappings":"ibAIO,MAAMA,EAAyB,CACpCC,OAAQ,mBACFC,WAAWC,G,yCACf,MAAM,aAAEC,GAAiBD,EACnBE,EAAY,IAAIC,EAAA,EAAUH,EAAQI,eAGxC,aAFMF,EAAUG,WAChBJ,EAAaK,kBAAkBC,EAAkB,OAAD,wBAAMP,GAAO,CAAEE,gBACxD,CACLJ,OAAQ,yBAIRS,EAA2BP,GAAsD,OAAD,6BACpF,MAAM,SAAEQ,EAAQ,UAAEN,GAAcF,EAE1BS,EAAQC,SAASC,cAAc,OACrCF,EAAMG,MAAMC,SAAW,WACvBJ,EAAMG,MAAME,OAAS,QACrBL,EAAMG,MAAMG,MAAQ,QACpBN,EAAMG,MAAMI,OAAS,SACrBP,EAAMG,MAAMK,SAAW,SAEvB,MAAMC,EAAQR,SAASC,cAAc,MACrCO,EAAMC,UAAY,iBAClBD,EAAMN,MAAMC,SAAW,WACvBK,EAAMN,MAAMQ,aAAe,QAC3BF,EAAMN,MAAMS,OAAS,IACrBH,EAAMN,MAAMU,MAAQ,QACpBb,EAAMH,YAAYY,GAElB,MAAMK,EAAWb,SAASC,cAAc,OACxCY,EAASX,MAAME,OAAS,OACxBS,EAASX,MAAMG,MAAQ,OACvBQ,EAASX,MAAMC,SAAW,WAC1BU,EAASX,MAAMY,QAAU,OACzBD,EAASX,MAAMa,WAAa,SAC5BF,EAASX,MAAMc,eAAiB,SAChCH,EAASI,UCxCT,2YD0CA,MAAMC,EAAQlB,SAASC,cAAc,SACrCiB,EAAMC,UAAW,EACjBD,EAAME,WAAY,EAClBrB,EAAMH,YAAYsB,GAElB,MAAMG,EAAUrB,SAASC,cAAc,OACvCoB,EAAQC,IACN,mnBACFD,EAAQnB,MAAMC,SAAW,WACzBkB,EAAQnB,MAAMqB,IAAM,IACpBF,EAAQnB,MAAMsB,KAAO,IACrBH,EAAQnB,MAAME,OAAS,SACvBiB,EAAQnB,MAAMG,MAAQ,QACtBgB,EAAQnB,MAAMuB,UAAY,SAC1B1B,EAAMH,YAAYyB,GAElB,MAAMK,QAAeC,IACrBT,EAAMU,UAAYF,EAElB,MAAMG,EAAS7B,SAASC,cAAc,UAyBtC,OAxBA4B,EAAO3B,MAAMC,SAAW,WACxB0B,EAAO3B,MAAMuB,UAAY,QACzBI,EAAO3B,MAAM4B,aAAe,MAC5BD,EAAO3B,MAAME,OAAS,OACtByB,EAAO3B,MAAMG,MAAQ,OACrBwB,EAAO3B,MAAM6B,WAAa,QAC1BF,EAAO3B,MAAM8B,QAAU,kBACvBH,EAAO3B,MAAM+B,cAAgB,MAC7BJ,EAAO3B,MAAMS,OAAS,IACtBkB,EAAOK,QAAU,KACfL,EAAOM,UAAW,EAClBN,EAAO3B,MAAM6B,WAAa,YAC1BvC,EAAU4C,cAAcC,MAAK,KAC3BX,EAAOY,YAAYC,SAASC,GAAUA,EAAMC,SAC5CjC,EAAMkC,SACNxB,EAAMwB,SACNb,EAAOa,SACPrB,EAAQqB,SACR3C,EAAMH,YAAYiB,GAClBf,EAAS6C,KAAK,kBAGlB5C,EAAMH,YAAYiC,GAEX9B,KAGH4B,EAAqB,IAAY,OAAD,6BACpC,GAAIiB,UAAUC,aAAaC,aACzB,OAAOF,UAAUC,aAAaC,aAAa,CAAE5B,MAAO,CAAE6B,WAAY,UAC7D,MAAM,IAAIC,MAAM","sources":["webpack://OneSdk/./modules/biometrics/wrappers/dummy-biometrics/index.ts","webpack://OneSdk/./modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.ts"],"sourcesContent":["import { IDVClient } from \"../../../frankie-client/clients/IDVClient\";\nimport { VendorOptions, VendorWrapper } from \"../../types\";\nimport { svg as greentick } from \"./green-tick-svg\";\n\nexport const wrapper: VendorWrapper = {\n vendor: \"dummy-biometrics\",\n async initialise(options: VendorOptions) {\n const { mountElement } = options;\n const idvClient = new IDVClient(options.frankieClient);\n await idvClient.getToken();\n mountElement.appendChild(await BiometricsCapture({ ...options, idvClient }));\n return {\n vendor: \"dummy-biometrics\",\n };\n },\n};\nconst BiometricsCapture = async (options: VendorOptions & { idvClient: IDVClient }) => {\n const { eventHub, idvClient } = options;\n\n const frame = document.createElement(\"div\");\n frame.style.position = \"relative\";\n frame.style.height = \"480px\";\n frame.style.width = \"640px\";\n frame.style.margin = \"0 auto\";\n frame.style.overflow = \"hidden\";\n\n const title = document.createElement(\"h3\");\n title.innerText = \"Take a selfie!\";\n title.style.position = \"relative\";\n title.style.marginBottom = \"-40px\";\n title.style.zIndex = \"1\";\n title.style.color = \"white\";\n frame.appendChild(title);\n\n const complete = document.createElement(\"div\");\n complete.style.height = \"100%\";\n complete.style.width = \"100%\";\n complete.style.position = \"absolute\";\n complete.style.display = \"flex\";\n complete.style.alignItems = \"center\";\n complete.style.justifyContent = \"center\";\n complete.innerHTML = greentick(\"style='display: inline-block; width: 50px; margin-left: 20px;'\");\n\n const video = document.createElement(\"video\");\n video.autoplay = true;\n video.autofocus = true;\n frame.appendChild(video);\n\n const overlay = document.createElement(\"img\");\n overlay.src =\n \"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%22740%22 height%3D%221800%22%3E%0D %3Cpath fill-opacity%3D%22.80%22 d%3D%22M0 1800V0h740v1800H0zm237-914.056c0 71.601 59.104 175.672 132.021 175.672s132.022-101.453 132.022-175.672c0-83.917-59.107-151.944-132.022-151.944C296.108 734 237 802.027 237 885.944z%22%2F%3E%0D %3Cpath fill%3D%22none%22 stroke%3D%22%23FFF%22 stroke-width%3D%223%22 d%3D%22M237 885.944c0 71.601 59.104 175.672 132.021 175.672s132.022-101.453 132.022-175.672c0-83.917-59.107-151.944-132.022-151.944C296.108 734 237 802.027 237 885.944z%22%2F%3E%0D%3C%2Fsvg%3E%0D\";\n overlay.style.position = \"absolute\";\n overlay.style.top = \"0\";\n overlay.style.left = \"0\";\n overlay.style.height = \"1450px\";\n overlay.style.width = \"640px\";\n overlay.style.marginTop = \"-500px\";\n frame.appendChild(overlay);\n\n const stream = await requestVideoStream();\n video.srcObject = stream;\n\n const button = document.createElement(\"button\");\n button.style.position = \"relative\";\n button.style.marginTop = \"-80px\";\n button.style.borderRadius = \"50%\";\n button.style.height = \"50px\";\n button.style.width = \"50px\";\n button.style.background = \"white\";\n button.style.outline = \"2px solid white\";\n button.style.outlineOffset = \"2px\";\n button.style.zIndex = \"1\";\n button.onclick = () => {\n button.disabled = true;\n button.style.background = \"lightgrey\";\n idvClient.initProcess().then(() => {\n stream.getTracks().forEach((track) => track.stop());\n title.remove();\n video.remove();\n button.remove();\n overlay.remove();\n frame.appendChild(complete);\n eventHub.emit(\"processing\");\n });\n };\n frame.appendChild(button);\n\n return frame;\n};\n\nconst requestVideoStream = async () => {\n if (navigator.mediaDevices.getUserMedia) {\n return navigator.mediaDevices.getUserMedia({ video: { facingMode: \"user\" } });\n } else throw new Error(\"No media device\");\n};\n","export const svg = (style: string) =>\n `<svg ${style} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 64 64\" enable-background=\"new 0 0 64 64\"><path d=\"M32,2C15.431,2,2,15.432,2,32c0,16.568,13.432,30,30,30c16.568,0,30-13.432,30-30C62,15.432,48.568,2,32,2z M25.025,50 l-0.02-0.02L24.988,50L11,35.6l7.029-7.164l6.977,7.184l21-21.619L53,21.199L25.025,50z\" fill=\"#43a047\"/></svg>`;\n"],"names":["wrapper","vendor","initialise","options","mountElement","idvClient","IDVClient","frankieClient","getToken","appendChild","BiometricsCapture","eventHub","frame","document","createElement","style","position","height","width","margin","overflow","title","innerText","marginBottom","zIndex","color","complete","display","alignItems","justifyContent","innerHTML","video","autoplay","autofocus","overlay","src","top","left","marginTop","stream","requestVideoStream","srcObject","button","borderRadius","background","outline","outlineOffset","onclick","disabled","initProcess","then","getTracks","forEach","track","stop","remove","emit","navigator","mediaDevices","getUserMedia","facingMode","Error"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[295],{4711:(e,t,n)=>{n.r(t),n.d(t,{wrapper:()=>d});var i=n(9727),s=n.n(i),o=n(5669),r=function(e,t,n,i){return new(n||(n=Promise))((function(s,o){function r(e){try{d(i.next(e))}catch(e){o(e)}}function l(e){try{d(i.throw(e))}catch(e){o(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(r,l)}d((i=i.apply(e,t||[])).next())}))};const l=(e="#fff")=>`\n<svg viewBox="0 0 747 730" preserveAspectRatio="xMinYMin slice" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">\n <defs>\n <filter x="-8.0%" y="-9.3%" width="116.1%" height="122.5%" filterUnits="objectBoundingBox" id="filter-1">\n <feOffset dx="0" dy="17" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>\n <feGaussianBlur stdDeviation="30" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>\n <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.274448208 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>\n <feMerge>\n <feMergeNode in="shadowMatrixOuter1"></feMergeNode>\n <feMergeNode in="SourceGraphic"></feMergeNode>\n </feMerge>\n </filter>\n </defs>\n <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" opacity="0.75">\n <g fill="#000000">\n <g filter="url(#filter-1)" transform="translate(-224.000000, -250.000000)">\n <path d="M222,60 L1200,60 L1200,1200 L222,1200 L222,60 Z M596,740 C684.917845,740 757,615.657619 757,494.431116 C757,373.204614 684.917845,301 596,301 C507.082155,301 435,373.204614 435,494.431116 C435,615.657619 507.082155,740 596,740 Z"></path>\n </g>\n </g>\n </g>\n <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round">\n <g transform="translate(0.000000, -170.000000)" stroke="${e}" stroke-width="2.2">\n <g transform="translate(-224.000000, -80.000000)">\n <path d="M596,740 C684.917845,740 757,615.657619 757,494.431116 C757,373.204614 684.917845,301 596,301 C507.082155,301 435,373.204614 435,494.431116 C435,615.657619 507.082155,740 596,740 Z"></path>\n </g>\n </g>\n </g>\n</svg>`,d={vendor:"ocrlabs",initialise(e){return r(this,void 0,void 0,(function*(){return a(e),{vendor:"ocrlabs"}}))}},a=e=>{const{mountElement:t}=e;t.style.height="100%",t.style.minHeight="50px",t.style.width="100%",t.style.position="relative",t.style.overflow="hidden";const n=document.createElement("div");n.id="onesdk_idv_loader",n.style.color="black",n.style.position="absolute",n.style.top="20px",n.style.left="50%",n.style.transform="translate(-50%, 0)",n.style.fontSize="20px",n.innerText="Loading...",t.appendChild(n);const i=document.createElement("video");i.id="onesdk_idv_video",i.autoplay=!0,i.muted=!0,i.playsInline=!0,i.style.height="100%",i.style.width="100%",i.style.display="none",t.appendChild(i);const s=document.createElement("div");s.id="onesdk_idv_overlay",s.innerHTML=l(),s.style.position="absolute",s.style.top="0",s.style.left="0",s.style.height="100%",s.style.width="100%",s.style.display="none",t.appendChild(s);const o=document.createElement("div");return o.id="onesdk_idv_instructions",o.style.position="absolute",o.style.bottom="20px",o.style.left="50%",o.style.transform="translate(-50%, 0)",o.style.color="white",o.style.fontSize="20px",t.appendChild(o),f(e),i},c=e=>{const{eventHub:t,mountElement:n}=e;for(;n.firstChild;)n.removeChild(n.firstChild);try{s().close(),t.emit("session_closed")}catch(e){const{message:n}=e;t.emit("error",{message:"Error from vendor SDK 'OcrLabs'",payload:{message:n}})}},f=e=>r(void 0,void 0,void 0,(function*(){const t=new o.B(e.frankieClient),{eventHub:n,recipe:i}=e,{token:r}=yield t.getToken(),l={session_id:r,tx_id:i.biometrics.provider.tx_id};n.emit("session_data_generated",{session:l});const d=document.getElementById("onesdk_idv_video"),a=document.getElementById("onesdk_idv_loader"),f=document.getElementById("onesdk_idv_instructions");s().observer.on("error",(t=>{const{message:i}=t;n.emit("error",{message:"Error from vendor SDK 'OcrLabs'",payload:{message:i}}),c(e)}));try{yield s().createSession("wss://engine.au.v3.liveness.idkit.io",{videoElement:d,auth:l}),a.style.display="none",d.style.display="block",f.style.display="block",n.emit("ready"),u(e,t)}catch(t){n.emit("session_data_failed_loading",{code:t.code||null,message:t.message}),c(e)}})),u=(e,t)=>r(void 0,void 0,void 0,(function*(){const{eventHub:n}=e,i=document.getElementById("onesdk_idv_overlay"),o=document.getElementById("onesdk_idv_instructions");i.style.display="block",o.style.display="block";const d=(t,d)=>r(void 0,void 0,void 0,(function*(){const a=s().delay||2e3;return new Promise(((f,u)=>r(void 0,void 0,void 0,(function*(){o.innerText=d,i.innerHTML=l("#fff");try{yield s().detect(t,{retry:!0,timeout:7500}),setTimeout((()=>{o.innerText="Thanks!",i.innerHTML=l("#14ffc0"),setTimeout((()=>{f(!0)}),a)}),a)}catch(t){setTimeout((()=>{o.innerText="Something went wrong",i.innerHTML=l("#ff4747"),n.emit("detection_failed",{message:t&&t.message?t.message:null}),setTimeout((()=>{c(e),f(!1)}),a)}),a)}}))))}));yield d("face","Position your face within the frame"),yield d("smile","Please give us a BIG Smile!");try{yield t.initProcess(),n.emit("processing")}catch(e){const{message:t}=e;n.emit("error",{message:"Error calling initProcess",payload:{message:t}})}c(e)}))}}]);
2
+ //# sourceMappingURL=biometrics-ocrlabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biometrics-ocrlabs.js","mappings":"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","sources":["webpack://OneSdk/./modules/biometrics/wrappers/OcrLabs/index.ts"],"sourcesContent":["import Liveness from \"liveness\";\n\nimport { IDVClient } from \"../../../frankie-client/clients/IDVClient\";\nimport { VendorContext, VendorOptions, VendorWrapper } from \"../../types\";\n\ntype DetectActions = \"face\" | \"smile\";\n\ntype SessionData = {\n session_id: string;\n tx_id: string;\n};\n\nconst createOverlay = (strokeColour = \"#fff\"): string => `\n<svg viewBox=\"0 0 747 730\" preserveAspectRatio=\"xMinYMin slice\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n <filter x=\"-8.0%\" y=\"-9.3%\" width=\"116.1%\" height=\"122.5%\" filterUnits=\"objectBoundingBox\" id=\"filter-1\">\n <feOffset dx=\"0\" dy=\"17\" in=\"SourceAlpha\" result=\"shadowOffsetOuter1\"></feOffset>\n <feGaussianBlur stdDeviation=\"30\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"></feGaussianBlur>\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.274448208 0\" type=\"matrix\" in=\"shadowBlurOuter1\" result=\"shadowMatrixOuter1\"></feColorMatrix>\n <feMerge>\n <feMergeNode in=\"shadowMatrixOuter1\"></feMergeNode>\n <feMergeNode in=\"SourceGraphic\"></feMergeNode>\n </feMerge>\n </filter>\n </defs>\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" opacity=\"0.75\">\n <g fill=\"#000000\">\n <g filter=\"url(#filter-1)\" transform=\"translate(-224.000000, -250.000000)\">\n <path d=\"M222,60 L1200,60 L1200,1200 L222,1200 L222,60 Z M596,740 C684.917845,740 757,615.657619 757,494.431116 C757,373.204614 684.917845,301 596,301 C507.082155,301 435,373.204614 435,494.431116 C435,615.657619 507.082155,740 596,740 Z\"></path>\n </g>\n </g>\n </g>\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"round\">\n <g transform=\"translate(0.000000, -170.000000)\" stroke=\"${strokeColour}\" stroke-width=\"2.2\">\n <g transform=\"translate(-224.000000, -80.000000)\">\n <path d=\"M596,740 C684.917845,740 757,615.657619 757,494.431116 C757,373.204614 684.917845,301 596,301 C507.082155,301 435,373.204614 435,494.431116 C435,615.657619 507.082155,740 596,740 Z\"></path>\n </g>\n </g>\n </g>\n</svg>`;\n\nexport const wrapper: VendorWrapper = {\n vendor: \"ocrlabs\",\n async initialise(options: VendorOptions): Promise<VendorContext> {\n // prematurely mount our ui to the dom before sdk session initialisation.\n mountUserInterface(options);\n\n return {\n vendor: \"ocrlabs\",\n };\n },\n};\n\nconst mountUserInterface = (options: VendorOptions): HTMLVideoElement => {\n const { mountElement } = options;\n\n mountElement.style.height = \"100%\";\n mountElement.style.minHeight = \"50px\";\n mountElement.style.width = \"100%\";\n mountElement.style.position = \"relative\";\n mountElement.style.overflow = \"hidden\";\n\n const loader = document.createElement(\"div\");\n loader.id = \"onesdk_idv_loader\";\n loader.style.color = \"black\";\n loader.style.position = \"absolute\";\n loader.style.top = \"20px\";\n loader.style.left = \"50%\";\n loader.style.transform = \"translate(-50%, 0)\";\n loader.style.fontSize = \"20px\";\n loader.innerText = \"Loading...\";\n mountElement.appendChild(loader);\n\n const videoElement = document.createElement(\"video\");\n videoElement.id = \"onesdk_idv_video\";\n videoElement.autoplay = true;\n videoElement.muted = true;\n videoElement.playsInline = true;\n videoElement.style.height = \"100%\";\n videoElement.style.width = \"100%\";\n videoElement.style.display = \"none\";\n mountElement.appendChild(videoElement);\n\n const overlayContainer = document.createElement(\"div\");\n overlayContainer.id = \"onesdk_idv_overlay\";\n overlayContainer.innerHTML = createOverlay();\n overlayContainer.style.position = \"absolute\";\n overlayContainer.style.top = \"0\";\n overlayContainer.style.left = \"0\";\n overlayContainer.style.height = \"100%\";\n overlayContainer.style.width = \"100%\";\n overlayContainer.style.display = \"none\";\n mountElement.appendChild(overlayContainer);\n\n const instructions = document.createElement(\"div\");\n instructions.id = \"onesdk_idv_instructions\";\n instructions.style.position = \"absolute\";\n instructions.style.bottom = \"20px\";\n instructions.style.left = \"50%\";\n instructions.style.transform = \"translate(-50%, 0)\";\n instructions.style.color = \"white\";\n instructions.style.fontSize = \"20px\";\n mountElement.appendChild(instructions);\n\n loadOcrLabs(options);\n\n return videoElement;\n};\n\n// remove any dom nodes we added, then close the ocrlabs session.\nconst cleanup = (options: VendorOptions): void => {\n const { eventHub, mountElement } = options;\n\n while (mountElement.firstChild) {\n mountElement.removeChild(mountElement.firstChild);\n }\n\n try {\n Liveness.close();\n eventHub.emit(\"session_closed\");\n } catch (error) {\n const { message } = error;\n eventHub.emit(\"error\", {\n message: \"Error from vendor SDK 'OcrLabs'\",\n payload: { message },\n });\n }\n};\n\nconst loadOcrLabs = async (options: VendorOptions): Promise<void> => {\n const idvClient = new IDVClient(options.frankieClient);\n const { eventHub, recipe } = options;\n\n // fetch session data for ocrlabs initialisation.\n const { token: session_id } = await idvClient.getToken();\n\n const sessionData: SessionData = {\n session_id,\n tx_id: recipe.biometrics.provider.tx_id,\n };\n eventHub.emit(\"session_data_generated\", {\n session: sessionData,\n });\n\n // initialise ocrlabs session, then run liveness checks.\n const videoElement = document.getElementById(\"onesdk_idv_video\") as unknown as HTMLVideoElement;\n const loader = document.getElementById(\"onesdk_idv_loader\");\n const overlayContainer = document.getElementById(\"onesdk_idv_instructions\");\n\n // handle process errors such as network issues.\n /* istanbul ignore next */\n Liveness.observer.on(\"error\", (error) => {\n const { message } = error;\n eventHub.emit(\"error\", {\n message: \"Error from vendor SDK 'OcrLabs'\",\n payload: { message },\n });\n cleanup(options);\n });\n\n // initialise ocrlabs session.\n try {\n await Liveness.createSession(\"wss://engine.au.v3.liveness.idkit.io\", {\n videoElement,\n auth: sessionData,\n });\n\n // update ui and broadcast event in case the consumer is providing their own initialisation ui.\n loader.style.display = \"none\";\n videoElement.style.display = \"block\";\n overlayContainer.style.display = \"block\";\n eventHub.emit(\"ready\");\n\n runLivenessChecks(options, idvClient);\n } catch (error) {\n eventHub.emit(\"session_data_failed_loading\", {\n code: error.code || null,\n message: error.message,\n });\n cleanup(options);\n }\n};\n\nconst runLivenessChecks = async (options: VendorOptions, idvClient: IDVClient) => {\n const { eventHub } = options;\n const overlayContainer = document.getElementById(\"onesdk_idv_overlay\");\n const instructions = document.getElementById(\"onesdk_idv_instructions\");\n\n overlayContainer.style.display = \"block\";\n instructions.style.display = \"block\";\n\n // manage the timing of ui changes during each detection step.\n const handleDetection = async (type: DetectActions, instructionCopy: string) => {\n const MIN_INSTRUCTION_DISPLAY_TIME = Liveness.delay || 2000;\n\n const detection = async (resolve, reject) => {\n instructions.innerText = instructionCopy;\n overlayContainer.innerHTML = createOverlay(\"#fff\");\n\n try {\n await Liveness.detect(type, {\n retry: true,\n timeout: 7500,\n });\n\n setTimeout(() => {\n instructions.innerText = \"Thanks!\";\n overlayContainer.innerHTML = createOverlay(\"#14ffc0\");\n\n setTimeout(() => {\n resolve(true);\n }, MIN_INSTRUCTION_DISPLAY_TIME);\n }, MIN_INSTRUCTION_DISPLAY_TIME);\n } catch (error) {\n setTimeout(() => {\n instructions.innerText = \"Something went wrong\";\n overlayContainer.innerHTML = createOverlay(\"#ff4747\");\n eventHub.emit(\"detection_failed\", {\n message: error && error.message ? error.message : null,\n });\n\n setTimeout(() => {\n cleanup(options);\n resolve(false);\n }, MIN_INSTRUCTION_DISPLAY_TIME);\n }, MIN_INSTRUCTION_DISPLAY_TIME);\n }\n };\n\n return new Promise(detection);\n };\n\n await handleDetection(\"face\", \"Position your face within the frame\");\n await handleDetection(\"smile\", \"Please give us a BIG Smile!\");\n\n try {\n await idvClient.initProcess();\n eventHub.emit(\"processing\");\n } catch (error) {\n const { message } = error;\n eventHub.emit(\"error\", {\n message: \"Error calling initProcess\",\n payload: { message },\n });\n }\n\n cleanup(options);\n};\n"],"names":["createOverlay","strokeColour","wrapper","vendor","initialise","options","mountUserInterface","mountElement","style","height","minHeight","width","position","overflow","loader","document","createElement","id","color","top","left","transform","fontSize","innerText","appendChild","videoElement","autoplay","muted","playsInline","display","overlayContainer","innerHTML","instructions","bottom","loadOcrLabs","cleanup","eventHub","firstChild","removeChild","emit","error","message","payload","idvClient","frankieClient","recipe","token","session_id","getToken","sessionData","tx_id","biometrics","provider","session","getElementById","auth","runLivenessChecks","code","handleDetection","type","instructionCopy","MIN_INSTRUCTION_DISPLAY_TIME","Promise","resolve","reject","retry","timeout","setTimeout","initProcess"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[513],{8167:(e,n,t)=>{t.r(n),t.d(n,{wrapper:()=>r});var o=t(2773),s=t(4586);const r={vendor:"sardine",async initialise(e){const n=await async function(e){return{customerID:e.session.customerChildID??e.session.customerID,frankieClientID:e.recipe.device.provider.clientID,vendorSessionID:(0,s.Z)()}}(e);e.eventHub.emit("session_data_generated",{session:n});const t=await async function(e){const{mode:n}=e.module,t="production"===n,s=`https://${t?"api.sardine.ai":"api.dev.sardine.ai"}/assets/loader.min.js`;await(0,o.loadAsyncAsset)(s);const r=window._Sardine.createContext({clientId:e.session.frankieClientID,partnerID:e.session.customerID,sessionKey:e.session.vendorSessionID,parentElement:document.body,environment:t?"production":"development",onDeviceResponse:function(n){e.module.eventHub.emit("device_details_extracted",{device:n})}});return{vendor:"sardine",set(n,t){const o=i[n];o&&(r.updateConfig({[o]:t}),e.module.eventHub.emit("value_set",{key:n,value:t}))}}}({module:e,session:n});return t}},i={entityId:"userIdHash",activityType:"flow"}},4586:(e,n,t)=>{var o;t.d(n,{Z:()=>c});var s=new Uint8Array(16);function r(){if(!o&&!(o="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return o(s)}const i=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,a=function(e){return"string"==typeof e&&i.test(e)};for(var d=[],u=0;u<256;++u)d.push((u+256).toString(16).substr(1));const c=function(e,n,t){var o=(e=e||{}).random||(e.rng||r)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,n){t=t||0;for(var s=0;s<16;++s)n[t+s]=o[s];return n}return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=(d[e[n+0]]+d[e[n+1]]+d[e[n+2]]+d[e[n+3]]+"-"+d[e[n+4]]+d[e[n+5]]+"-"+d[e[n+6]]+d[e[n+7]]+"-"+d[e[n+8]]+d[e[n+9]]+"-"+d[e[n+10]]+d[e[n+11]]+d[e[n+12]]+d[e[n+13]]+d[e[n+14]]+d[e[n+15]]).toLowerCase();if(!a(t))throw TypeError("Stringified UUID is invalid");return t}(o)}}}]);
1
+ "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[513],{8167:(e,n,t)=>{t.r(n),t.d(n,{wrapper:()=>r});var i=t(5192),s=t(4586),o=function(e,n,t,i){return new(t||(t=Promise))((function(s,o){function r(e){try{c(i.next(e))}catch(e){o(e)}}function d(e){try{c(i.throw(e))}catch(e){o(e)}}function c(e){var n;e.done?s(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(r,d)}c((i=i.apply(e,n||[])).next())}))};const r={vendor:"sardine",initialise(e){return o(this,void 0,void 0,(function*(){const n=yield function(e){var n;return o(this,void 0,void 0,(function*(){return{customerID:null!==(n=e.session.customerChildID)&&void 0!==n?n:e.session.customerID,frankieClientID:e.recipe.device.provider.clientID,vendorSessionID:(0,s.Z)()}}))}(e);e.eventHub.emit("session_data_generated",{session:n});const t=yield function(e){return o(this,void 0,void 0,(function*(){const{mode:n}=e.module,t="production"===n,s=`https://${t?"api.sardine.ai":"api.dev.sardine.ai"}/assets/loader.min.js`;yield(0,i.loadAsyncAsset)(s);const o=window._Sardine.createContext({clientId:e.session.frankieClientID,partnerID:e.session.customerID,sessionKey:e.session.vendorSessionID,parentElement:document.body,environment:t?"production":"development",onDeviceResponse:function(n){e.module.eventHub.emit("device_details_extracted",{device:n})}});return{vendor:"sardine",set(n,t){const i=d[n];i&&(o.updateConfig({[i]:t}),e.module.eventHub.emit("value_set",{key:n,value:t}))}}}))}({module:e,session:n});return t}))}},d={entityId:"userIdHash",activityType:"flow"}}}]);
2
2
  //# sourceMappingURL=device-sardine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device-sardine.js","mappings":"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","sources":["webpack://OneSdk/./modules/device/vendors/Sardine.ts","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/rng.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/regex.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/validate.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/stringify.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/v4.js"],"sourcesContent":["import { SessionData, VendorContext, VendorLoaderOptions, VendorOptions, VendorWrapper } from \"../types/vendor\";\nimport { loadAsyncAsset } from \"@module/common\";\nimport { v4 as uuid } from \"uuid\";\n\nconst wrapper: VendorWrapper = {\n vendor: \"sardine\",\n async initialise(options: VendorOptions): Promise<VendorContext> {\n // create session with backend\n const sessionData = await initialiseSardineSession(options);\n options.eventHub.emit(\"session_data_generated\", {\n session: sessionData,\n });\n // initialise sardine sdk\n const sardineContext = await asyncLoadSardine({\n module: options,\n session: sessionData,\n });\n // listen for events, if there are any in the frontend\n // maybe we should implement our own events by websockets, if no frontend events are emitted\n return sardineContext;\n },\n};\n\nexport { wrapper };\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nasync function initialiseSardineSession(options: VendorOptions): Promise<SessionData> {\n return {\n customerID: options.session.customerChildID ?? options.session.customerID,\n frankieClientID: options.recipe.device.provider.clientID,\n vendorSessionID: uuid(), // will come from a backend call\n };\n}\nasync function asyncLoadSardine(options: VendorLoaderOptions): Promise<VendorContext> {\n const { mode } = options.module;\n const isProd = mode === \"production\";\n const sardineHost = isProd ? \"api.sardine.ai\" : \"api.dev.sardine.ai\";\n\n const url = `https://${sardineHost}/assets/loader.min.js`;\n await loadAsyncAsset(url);\n const sardineContext = window._Sardine.createContext({\n clientId: options.session.frankieClientID,\n partnerID: options.session.customerID,\n sessionKey: options.session.vendorSessionID,\n parentElement: document.body,\n environment: isProd ? \"production\" : \"development\",\n onDeviceResponse: function (data: Record<string, string | number | object>) {\n options.module.eventHub.emit(\"device_details_extracted\", {\n device: data,\n });\n },\n });\n return {\n vendor: \"sardine\",\n set(key, value) {\n const mappedKey = mapF2S[key];\n if (mappedKey) {\n sardineContext.updateConfig({ [mappedKey]: value });\n options.module.eventHub.emit(\"value_set\", { key, value });\n }\n },\n };\n}\nconst mapF2S = {\n entityId: \"userIdHash\",\n activityType: \"flow\",\n};\n\n// Sardine specific types\n// Initialisation options that Sardine SDK expects (not all required)\ninterface SardineSdkOptions {\n clientId: string;\n userIdHash: string;\n flow: string;\n partnerID: string;\n sessionKey: string;\n}\ndeclare global {\n interface Window {\n _Sardine: {\n createContext(...args: unknown[]): {\n updateConfig(config: Partial<SardineSdkOptions>): void;\n };\n };\n }\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;"],"names":["wrapper","vendor","async","options","sessionData","customerID","session","customerChildID","frankieClientID","recipe","device","provider","clientID","vendorSessionID","initialiseSardineSession","eventHub","emit","sardineContext","mode","module","isProd","url","loadAsyncAsset","window","_Sardine","createContext","clientId","partnerID","sessionKey","parentElement","document","body","environment","onDeviceResponse","data","set","key","value","mappedKey","mapF2S","updateConfig","asyncLoadSardine","entityId","activityType","getRandomValues","rnds8","Uint8Array","rng","crypto","bind","msCrypto","Error","uuid","byteToHex","i","push","toString","substr","buf","offset","rnds","random","arr","arguments","length","undefined","toLowerCase","TypeError"],"sourceRoot":""}
1
+ {"version":3,"file":"device-sardine.js","mappings":"2bAIO,MAAMA,EAAyB,CACpCC,OAAQ,UACFC,WAAWC,G,yCAEf,MAAMC,QAgBV,SAAwCD,G,+CACtC,MAAO,CACLE,WAA2C,QAA/B,EAAAF,EAAQG,QAAQC,uBAAe,QAAIJ,EAAQG,QAAQD,WAC/DG,gBAAiBL,EAAQM,OAAOC,OAAOC,SAASC,SAChDC,iBAAiB,aApBSC,CAAyBX,GACnDA,EAAQY,SAASC,KAAK,yBAA0B,CAC9CV,QAASF,IAGX,MAAMa,QAkBV,SAAgCd,G,yCAC9B,MAAM,KAAEe,GAASf,EAAQgB,OACnBC,EAAkB,eAATF,EAGTG,EAAM,WAFQD,EAAS,iBAAmB,kDAG1C,IAAAE,gBAAeD,GACrB,MAAMJ,EAAiBM,OAAOC,SAASC,cAAc,CACnDC,SAAUvB,EAAQG,QAAQE,gBAC1BmB,UAAWxB,EAAQG,QAAQD,WAC3BuB,WAAYzB,EAAQG,QAAQO,gBAC5BgB,cAAeC,SAASC,KACxBC,YAAaZ,EAAS,aAAe,cACrCa,iBAAkB,SAAUC,GAC1B/B,EAAQgB,OAAOJ,SAASC,KAAK,2BAA4B,CACvDN,OAAQwB,OAId,MAAO,CACLjC,OAAQ,UACRkC,IAAIC,EAAKC,GACP,MAAMC,EAAYC,EAAOH,GACrBE,IACFrB,EAAeuB,aAAa,CAAE,CAACF,GAAYD,IAC3ClC,EAAQgB,OAAOJ,SAASC,KAAK,YAAa,CAAEoB,MAAKC,gBA3CxBI,CAAiB,CAC5CtB,OAAQhB,EACRG,QAASF,IAIX,OAAOa,OA0CLsB,EAAS,CACbG,SAAU,aACVC,aAAc","sources":["webpack://OneSdk/./modules/device/vendors/Sardine.ts"],"sourcesContent":["import { SessionData, VendorContext, VendorLoaderOptions, VendorOptions, VendorWrapper } from \"../types\";\nimport { loadAsyncAsset } from \"@module/common\";\nimport { v4 as uuid } from \"uuid\";\n\nexport const wrapper: VendorWrapper = {\n vendor: \"sardine\",\n async initialise(options: VendorOptions): Promise<VendorContext> {\n // create session with backend\n const sessionData = await initialiseSardineSession(options);\n options.eventHub.emit(\"session_data_generated\", {\n session: sessionData,\n });\n // initialise sardine sdk\n const sardineContext = await asyncLoadSardine({\n module: options,\n session: sessionData,\n });\n // listen for events, if there are any in the frontend\n // maybe we should implement our own events by websockets, if no frontend events are emitted\n return sardineContext;\n },\n};\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nasync function initialiseSardineSession(options: VendorOptions): Promise<SessionData> {\n return {\n customerID: options.session.customerChildID ?? options.session.customerID,\n frankieClientID: options.recipe.device.provider.clientID,\n vendorSessionID: uuid(), // will come from a backend call\n };\n}\nasync function asyncLoadSardine(options: VendorLoaderOptions): Promise<VendorContext> {\n const { mode } = options.module;\n const isProd = mode === \"production\";\n const sardineHost = isProd ? \"api.sardine.ai\" : \"api.dev.sardine.ai\";\n\n const url = `https://${sardineHost}/assets/loader.min.js`;\n await loadAsyncAsset(url);\n const sardineContext = window._Sardine.createContext({\n clientId: options.session.frankieClientID,\n partnerID: options.session.customerID,\n sessionKey: options.session.vendorSessionID,\n parentElement: document.body,\n environment: isProd ? \"production\" : \"development\",\n onDeviceResponse: function (data: Record<string, string | number | object>) {\n options.module.eventHub.emit(\"device_details_extracted\", {\n device: data,\n });\n },\n });\n return {\n vendor: \"sardine\",\n set(key, value) {\n const mappedKey = mapF2S[key];\n if (mappedKey) {\n sardineContext.updateConfig({ [mappedKey]: value });\n options.module.eventHub.emit(\"value_set\", { key, value });\n }\n },\n };\n}\nconst mapF2S = {\n entityId: \"userIdHash\",\n activityType: \"flow\",\n};\n\n// Sardine specific types\n// Initialisation options that Sardine SDK expects (not all required)\ninterface SardineSdkOptions {\n clientId: string;\n userIdHash: string;\n flow: string;\n partnerID: string;\n sessionKey: string;\n}\ndeclare global {\n interface Window {\n _Sardine: {\n createContext(...args: unknown[]): {\n updateConfig(config: Partial<SardineSdkOptions>): void;\n };\n };\n }\n}\n"],"names":["wrapper","vendor","initialise","options","sessionData","customerID","session","customerChildID","frankieClientID","recipe","device","provider","clientID","vendorSessionID","initialiseSardineSession","eventHub","emit","sardineContext","mode","module","isProd","url","loadAsyncAsset","window","_Sardine","createContext","clientId","partnerID","sessionKey","parentElement","document","body","environment","onDeviceResponse","data","set","key","value","mappedKey","mapF2S","updateConfig","asyncLoadSardine","entityId","activityType"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[632],{1671:(e,n,t)=>{t.r(n),t.d(n,{wrapper:()=>c});var r=t(4586),o=o||{};o.version=4,o.create_url=function(e,n,t,r,c){function i(){return Math.floor(2742745743359*Math.random())}function s(){return a(i())}function a(e){return(e+78364164096).toString(36)}var u=i(),l=i(),d=885187064159;l=((l=l-l%256+o.version)+u)%2742745743359,d=(d+u)%2742745743359;var p="https://"+e+"/"+(u=s()+a(u))+n,f=[(l=a(d)+a(l))+"="+t,s()+s()+"="+r];return void 0!==c&&c.length>0&&f.push(s()+s()+"="+c),p+"?"+f.join("&")},o.beacon=function(e,n,t){var r="turn:aa.online-metrix.net?transport=",o="1:"+n+":"+t,c={iceServers:[{urls:r+"tcp",username:o,credential:t},{urls:r+"udp",username:o,credential:t}]};try{var i=new RTCPeerConnection(c);i.createDataChannel(Math.random().toString());var s=function(){},a=function(e){i.setLocalDescription(e,s,s)};"undefined"==typeof Promise||i.createOffer.length>0?i.createOffer(a,s):i.createOffer().then(a,s),setInterval((function(){i.close()}),1e4)}catch(e){console.error(n)}},o.load_tags=function(e,n,t,r){o.beacon(e,n,t,r);var c=document.getElementsByTagName("head").item(0),i=document.createElement("script");i.id="tmx_tags_js",i.setAttribute("type","text/javascript");var s=o.create_url(e,".js",n,t,r);i.setAttribute("src",s),o.set_csp_nonce(i),c.appendChild(i)},o.csp_nonce=null,o.register_csp_nonce=function(e){if(void 0!==e.currentScript&&null!==e.currentScript){var n=e.currentScript.getAttribute("nonce");null!=n&&""!==n?o.csp_nonce=n:void 0!==e.currentScript.nonce&&null!==e.currentScript.nonce&&""!==e.currentScript.nonce&&(o.csp_nonce=e.currentScript.nonce)}},o.set_csp_nonce=function(e){null!==o.csp_nonce&&(e.setAttribute("nonce",o.csp_nonce),e.getAttribute("nonce")!==o.csp_nonce&&(e.nonce=o.csp_nonce))},o.cleanup=function(){let e,n,t;for(;null!==(e=document.getElementById("tdz_ifrm"));)e.parentElement.removeChild(e);for(;null!==(n=document.getElementById("tmx_tags_iframe"));)n.parentElement.removeChild(n);for(;null!==(t=document.getElementById("tmx_tags_js"));)t.parentElement.removeChild(t)},o.profile=function(e,n,t,r){void 0!==e&&void 0!==n&&void 0!==t&&8===n.length&&(o.cleanup(),o.register_csp_nonce(document),o.load_tags(e,n,t,r))};const c={vendor:"threatmetrix",async initialise(e){const n=await async function(e){return{customerID:e.session.customerChildID??e.session.customerID,frankieClientID:e.recipe.device.provider.clientID,vendorSessionID:(0,r.Z)()}}(e);e.eventHub.emit("session_data_generated",{session:n});const t=await async function(e){const{frankieClientID:n,vendorSessionID:t}=e.session;return o.profile("h.online-metrix.net",n,t),{vendor:"threatmetrix",set(e,n){}}}({module:e,session:n});return t}}},4586:(e,n,t)=>{var r;t.d(n,{Z:()=>l});var o=new Uint8Array(16);function c(){if(!r&&!(r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return r(o)}const i=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,s=function(e){return"string"==typeof e&&i.test(e)};for(var a=[],u=0;u<256;++u)a.push((u+256).toString(16).substr(1));const l=function(e,n,t){var r=(e=e||{}).random||(e.rng||c)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,n){t=t||0;for(var o=0;o<16;++o)n[t+o]=r[o];return n}return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=(a[e[n+0]]+a[e[n+1]]+a[e[n+2]]+a[e[n+3]]+"-"+a[e[n+4]]+a[e[n+5]]+"-"+a[e[n+6]]+a[e[n+7]]+"-"+a[e[n+8]]+a[e[n+9]]+"-"+a[e[n+10]]+a[e[n+11]]+a[e[n+12]]+a[e[n+13]]+a[e[n+14]]+a[e[n+15]]).toLowerCase();if(!s(t))throw TypeError("Stringified UUID is invalid");return t}(r)}}}]);
1
+ "use strict";(self.webpackChunkOneSdk=self.webpackChunkOneSdk||[]).push([[632],{5793:(e,n,t)=>{t.r(n),t.d(n,{wrapper:()=>i});var r=t(4586),o=o||{};o.version=4,o.create_url=function(e,n,t,r,c){function i(){return Math.floor(2742745743359*Math.random())}function s(){return u(i())}function u(e){return(e+78364164096).toString(36)}var a=i(),l=i(),d=885187064159;l=((l=l-l%256+o.version)+a)%2742745743359,d=(d+a)%2742745743359;var f="https://"+e+"/"+(a=s()+u(a))+n,p=[(l=u(d)+u(l))+"="+t,s()+s()+"="+r];return void 0!==c&&c.length>0&&p.push(s()+s()+"="+c),f+"?"+p.join("&")},o.beacon=function(e,n,t){var r="turn:aa.online-metrix.net?transport=",o="1:"+n+":"+t,c={iceServers:[{urls:r+"tcp",username:o,credential:t},{urls:r+"udp",username:o,credential:t}]};try{var i=new RTCPeerConnection(c);i.createDataChannel(Math.random().toString());var s=function(){},u=function(e){i.setLocalDescription(e,s,s)};"undefined"==typeof Promise||i.createOffer.length>0?i.createOffer(u,s):i.createOffer().then(u,s),setInterval((function(){i.close()}),1e4)}catch(e){console.error(n)}},o.load_tags=function(e,n,t,r){o.beacon(e,n,t,r);var c=document.getElementsByTagName("head").item(0),i=document.createElement("script");i.id="tmx_tags_js",i.setAttribute("type","text/javascript");var s=o.create_url(e,".js",n,t,r);i.setAttribute("src",s),o.set_csp_nonce(i),c.appendChild(i)},o.csp_nonce=null,o.register_csp_nonce=function(e){if(void 0!==e.currentScript&&null!==e.currentScript){var n=e.currentScript.getAttribute("nonce");null!=n&&""!==n?o.csp_nonce=n:void 0!==e.currentScript.nonce&&null!==e.currentScript.nonce&&""!==e.currentScript.nonce&&(o.csp_nonce=e.currentScript.nonce)}},o.set_csp_nonce=function(e){null!==o.csp_nonce&&(e.setAttribute("nonce",o.csp_nonce),e.getAttribute("nonce")!==o.csp_nonce&&(e.nonce=o.csp_nonce))},o.cleanup=function(){let e,n,t;for(;null!==(e=document.getElementById("tdz_ifrm"));)e.parentElement.removeChild(e);for(;null!==(n=document.getElementById("tmx_tags_iframe"));)n.parentElement.removeChild(n);for(;null!==(t=document.getElementById("tmx_tags_js"));)t.parentElement.removeChild(t)},o.profile=function(e,n,t,r){void 0!==e&&void 0!==n&&void 0!==t&&8===n.length&&(o.cleanup(),o.register_csp_nonce(document),o.load_tags(e,n,t,r))};var c=function(e,n,t,r){return new(t||(t=Promise))((function(o,c){function i(e){try{u(r.next(e))}catch(e){c(e)}}function s(e){try{u(r.throw(e))}catch(e){c(e)}}function u(e){var n;e.done?o(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(i,s)}u((r=r.apply(e,n||[])).next())}))};const i={vendor:"threatmetrix",initialise(e){return c(this,void 0,void 0,(function*(){const n=yield function(e){var n;return c(this,void 0,void 0,(function*(){return{customerID:null!==(n=e.session.customerChildID)&&void 0!==n?n:e.session.customerID,frankieClientID:e.recipe.device.provider.clientID,vendorSessionID:(0,r.Z)()}}))}(e);e.eventHub.emit("session_data_generated",{session:n});const t=yield function(e){return c(this,void 0,void 0,(function*(){const{frankieClientID:n,vendorSessionID:t}=e.session;return o.profile("h.online-metrix.net",n,t),{vendor:"threatmetrix",set(e,n){}}}))}({module:e,session:n});return t}))}}}}]);
2
2
  //# sourceMappingURL=device-threatmetrix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device-threatmetrix.js","mappings":"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","sources":["webpack://OneSdk/./modules/device/vendors/Threatmetrix/fp-clientlib-v4.js","webpack://OneSdk/./modules/device/vendors/Threatmetrix/index.ts","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/rng.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/regex.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/validate.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/stringify.js","webpack://OneSdk/./node_modules/uuid/dist/esm-browser/v4.js"],"sourcesContent":["/**\n * We're advised to download and host this file ourselves.\n *\n * Docs: https://portal.threatmetrix.com/kb/index.htm#t=implementation%2Fprofiling%2Fprofiling%20introduction%20and%20integration%2Fadvanced_profiling_integration.htm&rhsearch=advanced&rhhlterm=advanced\n * From: https://portal.threatmetrix.com/kb/downloads/js/fp-clientlib-v4.js\n */\n\nvar threatmetrix = threatmetrix || {};\n(threatmetrix.version = 4),\n (threatmetrix.create_url = function (t, e, r, n, c) {\n function i() {\n return Math.floor(2742745743359 * Math.random());\n }\n function a() {\n return o(i());\n }\n function o(t) {\n return (t + 78364164096).toString(36);\n }\n var m = i(),\n u = i(),\n l = 885187064159;\n (u = ((u = u - (u % 256) + threatmetrix.version) + m) % 2742745743359), (l = (l + m) % 2742745743359);\n var s = \"https://\" + t + \"/\" + (m = a() + o(m)) + e,\n h = [(u = o(l) + o(u)) + \"=\" + r, a() + a() + \"=\" + n];\n return void 0 !== c && c.length > 0 && h.push(a() + a() + \"=\" + c), s + \"?\" + h.join(\"&\");\n }),\n (threatmetrix.beacon = function (t, e, r) {\n var c = \"turn:aa.online-metrix.net?transport=\",\n i = \"1:\" + e + \":\" + r,\n a = {\n iceServers: [\n { urls: c + \"tcp\", username: i, credential: r },\n { urls: c + \"udp\", username: i, credential: r },\n ],\n };\n try {\n var o = new RTCPeerConnection(a);\n o.createDataChannel(Math.random().toString());\n var m = function () {},\n u = function (t) {\n o.setLocalDescription(t, m, m);\n };\n \"undefined\" == typeof Promise || o.createOffer.length > 0 ? o.createOffer(u, m) : o.createOffer().then(u, m),\n setInterval(function () {\n o.close();\n }, 1e4);\n } catch (t) {\n console.error(e);\n }\n }),\n (threatmetrix.load_tags = function (t, e, r, n) {\n threatmetrix.beacon(t, e, r, n);\n var c = document.getElementsByTagName(\"head\").item(0),\n i = document.createElement(\"script\");\n (i.id = \"tmx_tags_js\"), i.setAttribute(\"type\", \"text/javascript\");\n var a = threatmetrix.create_url(t, \".js\", e, r, n);\n i.setAttribute(\"src\", a), threatmetrix.set_csp_nonce(i), c.appendChild(i);\n }),\n (threatmetrix.csp_nonce = null),\n (threatmetrix.register_csp_nonce = function (t) {\n if (void 0 !== t.currentScript && null !== t.currentScript) {\n var e = t.currentScript.getAttribute(\"nonce\");\n null != e && \"\" !== e\n ? (threatmetrix.csp_nonce = e)\n : void 0 !== t.currentScript.nonce &&\n null !== t.currentScript.nonce &&\n \"\" !== t.currentScript.nonce &&\n (threatmetrix.csp_nonce = t.currentScript.nonce);\n }\n }),\n (threatmetrix.set_csp_nonce = function (t) {\n null !== threatmetrix.csp_nonce &&\n (t.setAttribute(\"nonce\", threatmetrix.csp_nonce),\n t.getAttribute(\"nonce\") !== threatmetrix.csp_nonce && (t.nonce = threatmetrix.csp_nonce));\n }),\n (threatmetrix.cleanup = function () {\n let hp_frame, tmx_frame, tmx_script;\n for (; null !== (hp_frame = document.getElementById(\"tdz_ifrm\")); ) hp_frame.parentElement.removeChild(hp_frame);\n for (; null !== (tmx_frame = document.getElementById(\"tmx_tags_iframe\")); )\n tmx_frame.parentElement.removeChild(tmx_frame);\n for (; null !== (tmx_script = document.getElementById(\"tmx_tags_js\")); )\n tmx_script.parentElement.removeChild(tmx_script);\n }),\n (threatmetrix.profile = function (t, e, r, n) {\n void 0 !== t &&\n void 0 !== e &&\n void 0 !== r &&\n 8 === e.length &&\n (threatmetrix.cleanup(), threatmetrix.register_csp_nonce(document), threatmetrix.load_tags(t, e, r, n));\n });\n\nexport { threatmetrix };\n","import {\n SessionData,\n SetOptions,\n VendorContext,\n VendorLoaderOptions,\n VendorOptions,\n VendorWrapper,\n} from \"../../types/vendor\";\nimport { v4 as uuid } from \"uuid\";\nimport { threatmetrix as threatmetrixSdk } from \"./fp-clientlib-v4.js\";\n\nconst wrapper: VendorWrapper = {\n vendor: \"threatmetrix\",\n async initialise(options: VendorOptions): Promise<VendorContext> {\n // create session with backend\n const sessionData = await initialiseThreatMetrixSession(options);\n options.eventHub.emit(\"session_data_generated\", {\n session: sessionData,\n });\n // initialise threatMetrix sdk\n const threatmetrixContext = await asyncLoadThreatMetrix({\n module: options,\n session: sessionData,\n });\n // listen for events, if there are any in the frontend\n // maybe we should implement our own events by websockets, if no frontend events are emitted\n return threatmetrixContext;\n },\n};\n\nexport { wrapper };\n\nasync function initialiseThreatMetrixSession(options: VendorOptions): Promise<SessionData> {\n return {\n customerID: options.session.customerChildID ?? options.session.customerID,\n frankieClientID: options.recipe.device.provider.clientID,\n vendorSessionID: uuid(),\n };\n}\nasync function asyncLoadThreatMetrix(options: VendorLoaderOptions): Promise<VendorContext> {\n // threatmetrix prefers us to ugligy their interface\n // to hide the fact threatmetrix is being used\n // that means that we might need to convert the file below into a module and stactically import it\n const { frankieClientID, vendorSessionID } = options.session;\n threatmetrixSdk.profile(\"h.online-metrix.net\", frankieClientID, vendorSessionID);\n return {\n vendor: \"threatmetrix\",\n set(key, value) {\n // Not sure what goes here for threatmetrix\n },\n };\n}\nfunction emitEventForConfigurationUpdate<Key extends keyof SetOptions>(\n key: Key,\n value: SetOptions[Key] | \"NO_CHANGE\",\n { module: { eventHub } }: VendorLoaderOptions\n) {\n eventHub.emit(\"value_set\", { key, value });\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;"],"names":["threatmetrix","version","create_url","t","e","r","n","c","i","Math","floor","random","a","o","toString","m","u","l","s","h","length","push","join","beacon","iceServers","urls","username","credential","RTCPeerConnection","createDataChannel","setLocalDescription","Promise","createOffer","then","setInterval","close","console","error","load_tags","document","getElementsByTagName","item","createElement","id","setAttribute","set_csp_nonce","appendChild","csp_nonce","register_csp_nonce","currentScript","getAttribute","nonce","cleanup","hp_frame","tmx_frame","tmx_script","getElementById","parentElement","removeChild","profile","wrapper","vendor","async","options","sessionData","customerID","session","customerChildID","frankieClientID","recipe","device","provider","clientID","vendorSessionID","initialiseThreatMetrixSession","eventHub","emit","threatmetrixContext","set","key","value","asyncLoadThreatMetrix","module","getRandomValues","rnds8","Uint8Array","rng","crypto","bind","msCrypto","Error","uuid","byteToHex","substr","buf","offset","rnds","arr","arguments","undefined","toLowerCase","TypeError"],"sourceRoot":""}
1
+ {"version":3,"file":"device-threatmetrix.js","mappings":"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","sources":["webpack://OneSdk/./modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js","webpack://OneSdk/./modules/device/vendors/Threatmetrix/index.ts"],"sourcesContent":["/**\n * We're advised to download and host this file ourselves.\n *\n * Docs: https://portal.threatmetrix.com/kb/index.htm#t=implementation%2Fprofiling%2Fprofiling%20introduction%20and%20integration%2Fadvanced_profiling_integration.htm&rhsearch=advanced&rhhlterm=advanced\n * From: https://portal.threatmetrix.com/kb/downloads/js/fp-clientlib-v4.js\n */\n\nvar threatmetrix = threatmetrix || {};\n(threatmetrix.version = 4),\n (threatmetrix.create_url = function (t, e, r, n, c) {\n function i() {\n return Math.floor(2742745743359 * Math.random());\n }\n function a() {\n return o(i());\n }\n function o(t) {\n return (t + 78364164096).toString(36);\n }\n var m = i(),\n u = i(),\n l = 885187064159;\n (u = ((u = u - (u % 256) + threatmetrix.version) + m) % 2742745743359), (l = (l + m) % 2742745743359);\n var s = \"https://\" + t + \"/\" + (m = a() + o(m)) + e,\n h = [(u = o(l) + o(u)) + \"=\" + r, a() + a() + \"=\" + n];\n return void 0 !== c && c.length > 0 && h.push(a() + a() + \"=\" + c), s + \"?\" + h.join(\"&\");\n }),\n (threatmetrix.beacon = function (t, e, r) {\n var c = \"turn:aa.online-metrix.net?transport=\",\n i = \"1:\" + e + \":\" + r,\n a = {\n iceServers: [\n { urls: c + \"tcp\", username: i, credential: r },\n { urls: c + \"udp\", username: i, credential: r },\n ],\n };\n try {\n var o = new RTCPeerConnection(a);\n o.createDataChannel(Math.random().toString());\n var m = function () {},\n u = function (t) {\n o.setLocalDescription(t, m, m);\n };\n \"undefined\" == typeof Promise || o.createOffer.length > 0 ? o.createOffer(u, m) : o.createOffer().then(u, m),\n setInterval(function () {\n o.close();\n }, 1e4);\n } catch (t) {\n console.error(e);\n }\n }),\n (threatmetrix.load_tags = function (t, e, r, n) {\n threatmetrix.beacon(t, e, r, n);\n var c = document.getElementsByTagName(\"head\").item(0),\n i = document.createElement(\"script\");\n (i.id = \"tmx_tags_js\"), i.setAttribute(\"type\", \"text/javascript\");\n var a = threatmetrix.create_url(t, \".js\", e, r, n);\n i.setAttribute(\"src\", a), threatmetrix.set_csp_nonce(i), c.appendChild(i);\n }),\n (threatmetrix.csp_nonce = null),\n (threatmetrix.register_csp_nonce = function (t) {\n if (void 0 !== t.currentScript && null !== t.currentScript) {\n var e = t.currentScript.getAttribute(\"nonce\");\n null != e && \"\" !== e\n ? (threatmetrix.csp_nonce = e)\n : void 0 !== t.currentScript.nonce &&\n null !== t.currentScript.nonce &&\n \"\" !== t.currentScript.nonce &&\n (threatmetrix.csp_nonce = t.currentScript.nonce);\n }\n }),\n (threatmetrix.set_csp_nonce = function (t) {\n null !== threatmetrix.csp_nonce &&\n (t.setAttribute(\"nonce\", threatmetrix.csp_nonce),\n t.getAttribute(\"nonce\") !== threatmetrix.csp_nonce && (t.nonce = threatmetrix.csp_nonce));\n }),\n (threatmetrix.cleanup = function () {\n let hp_frame, tmx_frame, tmx_script;\n for (; null !== (hp_frame = document.getElementById(\"tdz_ifrm\")); ) hp_frame.parentElement.removeChild(hp_frame);\n for (; null !== (tmx_frame = document.getElementById(\"tmx_tags_iframe\")); )\n tmx_frame.parentElement.removeChild(tmx_frame);\n for (; null !== (tmx_script = document.getElementById(\"tmx_tags_js\")); )\n tmx_script.parentElement.removeChild(tmx_script);\n }),\n (threatmetrix.profile = function (t, e, r, n) {\n void 0 !== t &&\n void 0 !== e &&\n void 0 !== r &&\n 8 === e.length &&\n (threatmetrix.cleanup(), threatmetrix.register_csp_nonce(document), threatmetrix.load_tags(t, e, r, n));\n });\n\nexport { threatmetrix };\n","import { v4 as uuid } from \"uuid\";\nimport { SessionData, SetOptions, VendorContext, VendorLoaderOptions, VendorOptions, VendorWrapper } from \"../../types\";\nimport { threatmetrix as threatmetrixSdk } from \"./nolint_fp-clientlib-v4.js\";\n\nexport const wrapper: VendorWrapper = {\n vendor: \"threatmetrix\",\n async initialise(options: VendorOptions): Promise<VendorContext> {\n // create session with backend\n const sessionData = await initialiseThreatMetrixSession(options);\n options.eventHub.emit(\"session_data_generated\", {\n session: sessionData,\n });\n // initialise threatMetrix sdk\n const threatmetrixContext = await asyncLoadThreatMetrix({\n module: options,\n session: sessionData,\n });\n // listen for events, if there are any in the frontend\n // maybe we should implement our own events by websockets, if no frontend events are emitted\n return threatmetrixContext;\n },\n};\n\nasync function initialiseThreatMetrixSession(options: VendorOptions): Promise<SessionData> {\n return {\n customerID: options.session.customerChildID ?? options.session.customerID,\n frankieClientID: options.recipe.device.provider.clientID,\n vendorSessionID: uuid(),\n };\n}\nasync function asyncLoadThreatMetrix(options: VendorLoaderOptions): Promise<VendorContext> {\n // threatmetrix prefers us to ugligy their interface\n // to hide the fact threatmetrix is being used\n // that means that we might need to convert the file below into a module and stactically import it\n const { frankieClientID, vendorSessionID } = options.session;\n threatmetrixSdk.profile(\"h.online-metrix.net\", frankieClientID, vendorSessionID);\n return {\n vendor: \"threatmetrix\",\n set(key, value) {\n // Not sure what goes here for threatmetrix\n },\n };\n}\nfunction emitEventForConfigurationUpdate<Key extends keyof SetOptions>(\n key: Key,\n value: SetOptions[Key] | \"NO_CHANGE\",\n { module: { eventHub } }: VendorLoaderOptions\n) {\n eventHub.emit(\"value_set\", { key, value });\n}\n"],"names":["threatmetrix","version","create_url","t","e","r","n","c","i","Math","floor","random","a","o","toString","m","u","l","s","h","length","push","join","beacon","iceServers","urls","username","credential","RTCPeerConnection","createDataChannel","setLocalDescription","Promise","createOffer","then","setInterval","close","console","error","load_tags","document","getElementsByTagName","item","createElement","id","setAttribute","set_csp_nonce","appendChild","csp_nonce","register_csp_nonce","currentScript","getAttribute","nonce","cleanup","hp_frame","tmx_frame","tmx_script","getElementById","parentElement","removeChild","profile","wrapper","vendor","initialise","options","sessionData","customerID","session","customerChildID","frankieClientID","recipe","device","provider","clientID","vendorSessionID","initialiseThreatMetrixSession","eventHub","emit","threatmetrixContext","set","key","value","asyncLoadThreatMetrix","module"],"sourceRoot":""}