assentify-sdk-react-native 0.0.1

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 (195) hide show
  1. package/LICENSE +3 -0
  2. package/README.md +65 -0
  3. package/android/build.gradle +111 -0
  4. package/android/gradle.properties +9 -0
  5. package/android/src/main/AndroidManifest.xml +55 -0
  6. package/android/src/main/java/com/assentifysdk/AndroidProgressBarModule.kt +33 -0
  7. package/android/src/main/java/com/assentifysdk/AssentifySdkBaseModule.kt +39 -0
  8. package/android/src/main/java/com/assentifysdk/AssentifySdkModule.kt +432 -0
  9. package/android/src/main/java/com/assentifysdk/AssentifySdkPackage.kt +19 -0
  10. package/android/src/main/java/com/assentifysdk/FaceMatchActivity.kt +309 -0
  11. package/android/src/main/java/com/assentifysdk/ImageToBase64Converter.kt +40 -0
  12. package/android/src/main/java/com/assentifysdk/ReactApplicationContextObject.kt +14 -0
  13. package/android/src/main/java/com/assentifysdk/ScanIDActivity.kt +431 -0
  14. package/android/src/main/java/com/assentifysdk/ScanOtherActivity.kt +328 -0
  15. package/android/src/main/java/com/assentifysdk/ScanPassportActivity.kt +364 -0
  16. package/android/src/main/java/com/assentifysdk/StepsKeys.kt +91 -0
  17. package/android/src/main/res/drawable/back_icon.png +0 -0
  18. package/android/src/main/res/drawable/button_rounded_background.xml +6 -0
  19. package/android/src/main/res/drawable/card.gif +0 -0
  20. package/android/src/main/res/drawable/expire.png +0 -0
  21. package/android/src/main/res/drawable/id.gif +0 -0
  22. package/android/src/main/res/drawable/id_warning.png +0 -0
  23. package/android/src/main/res/drawable/info_icon.png +0 -0
  24. package/android/src/main/res/drawable/info_rounded_background.xml +6 -0
  25. package/android/src/main/res/drawable/passport.gif +0 -0
  26. package/android/src/main/res/drawable/rounded_background.xml +3 -0
  27. package/android/src/main/res/drawable/sending.png +0 -0
  28. package/android/src/main/res/drawable/warning.png +0 -0
  29. package/android/src/main/res/drawable/zoom_in.png +0 -0
  30. package/android/src/main/res/drawable/zoom_out.png +0 -0
  31. package/android/src/main/res/layout/activity_face_scan.xml +242 -0
  32. package/android/src/main/res/layout/activity_scan.xml +297 -0
  33. package/android/src/main/res/raw/sending_video.MP4 +0 -0
  34. package/android/src/main/res/values/colors.xml +8 -0
  35. package/android/src/main/res/values/strings.xml +3 -0
  36. package/android/src/main/res/values/styles.xml +4 -0
  37. package/assentify-sdk.podspec +43 -0
  38. package/ios/AssentifySdkBaseModule.swift +15 -0
  39. package/ios/Info.plist +27 -0
  40. package/ios/NativeAssentifySdk-Bridging-Header.h +3 -0
  41. package/ios/NativeAssentifySdk.mm +45 -0
  42. package/ios/NativeAssentifySdk.swift +460 -0
  43. package/ios/Resources/card.gif +0 -0
  44. package/ios/Resources/expire.png +0 -0
  45. package/ios/Resources/id.gif +0 -0
  46. package/ios/Resources/id_warning.png +0 -0
  47. package/ios/Resources/info_icon.png +0 -0
  48. package/ios/Resources/passport.gif +0 -0
  49. package/ios/Resources/sending.png +0 -0
  50. package/ios/Resources/warning.png +0 -0
  51. package/ios/Resources/zoom_in.png +0 -0
  52. package/ios/Resources/zoom_out.png +0 -0
  53. package/ios/UIComponents/RNIOSProgressBar.h +4 -0
  54. package/ios/UIComponents/RNIOSProgressBar.m +34 -0
  55. package/ios/UIComponents/RNPassportScanner.m +26 -0
  56. package/ios/UIComponents/RNPassportScanner.swift +245 -0
  57. package/ios/UIComponents/RNTMapManager.h +4 -0
  58. package/ios/UIComponents/RNTMapManager.m +19 -0
  59. package/ios/View/DataDecoder.swift +469 -0
  60. package/ios/View/FaceMatchController.swift +258 -0
  61. package/ios/View/IDCardController.swift +360 -0
  62. package/ios/View/OtherController.swift +283 -0
  63. package/ios/View/PassportController.swift +302 -0
  64. package/ios/View/UI.swift +298 -0
  65. package/lib/commonjs/AssentifyProvider.js +202 -0
  66. package/lib/commonjs/AssentifyProvider.js.map +1 -0
  67. package/lib/commonjs/AssentifyWrapper.js +76 -0
  68. package/lib/commonjs/AssentifyWrapper.js.map +1 -0
  69. package/lib/commonjs/Language.js +27 -0
  70. package/lib/commonjs/Language.js.map +1 -0
  71. package/lib/commonjs/helpers/index.js +2 -0
  72. package/lib/commonjs/helpers/index.js.map +1 -0
  73. package/lib/commonjs/helpers/parsers/FaceMatchParser.js +27 -0
  74. package/lib/commonjs/helpers/parsers/FaceMatchParser.js.map +1 -0
  75. package/lib/commonjs/helpers/parsers/IDCardParser.js +25 -0
  76. package/lib/commonjs/helpers/parsers/IDCardParser.js.map +1 -0
  77. package/lib/commonjs/helpers/parsers/OtherIDParser.js +29 -0
  78. package/lib/commonjs/helpers/parsers/OtherIDParser.js.map +1 -0
  79. package/lib/commonjs/helpers/parsers/PassportParser.js +25 -0
  80. package/lib/commonjs/helpers/parsers/PassportParser.js.map +1 -0
  81. package/lib/commonjs/index.js +49 -0
  82. package/lib/commonjs/index.js.map +1 -0
  83. package/lib/commonjs/types.js +42 -0
  84. package/lib/commonjs/types.js.map +1 -0
  85. package/lib/module/AssentifyProvider.js +193 -0
  86. package/lib/module/AssentifyProvider.js.map +1 -0
  87. package/lib/module/AssentifyWrapper.js +70 -0
  88. package/lib/module/AssentifyWrapper.js.map +1 -0
  89. package/lib/module/Language.js +21 -0
  90. package/lib/module/Language.js.map +1 -0
  91. package/lib/module/helpers/index.js +2 -0
  92. package/lib/module/helpers/index.js.map +1 -0
  93. package/lib/module/helpers/parsers/FaceMatchParser.js +21 -0
  94. package/lib/module/helpers/parsers/FaceMatchParser.js.map +1 -0
  95. package/lib/module/helpers/parsers/IDCardParser.js +19 -0
  96. package/lib/module/helpers/parsers/IDCardParser.js.map +1 -0
  97. package/lib/module/helpers/parsers/OtherIDParser.js +23 -0
  98. package/lib/module/helpers/parsers/OtherIDParser.js.map +1 -0
  99. package/lib/module/helpers/parsers/PassportParser.js +19 -0
  100. package/lib/module/helpers/parsers/PassportParser.js.map +1 -0
  101. package/lib/module/index.js +6 -0
  102. package/lib/module/index.js.map +1 -0
  103. package/lib/module/types.js +36 -0
  104. package/lib/module/types.js.map +1 -0
  105. package/lib/typescript/babel.config.d.ts +3 -0
  106. package/lib/typescript/babel.config.d.ts.map +1 -0
  107. package/lib/typescript/commitlint.config.d.ts +7 -0
  108. package/lib/typescript/commitlint.config.d.ts.map +1 -0
  109. package/lib/typescript/example/babel.config.d.ts +8 -0
  110. package/lib/typescript/example/babel.config.d.ts.map +1 -0
  111. package/lib/typescript/example/index.d.ts +2 -0
  112. package/lib/typescript/example/index.d.ts.map +1 -0
  113. package/lib/typescript/example/jest.config.d.ts +2 -0
  114. package/lib/typescript/example/jest.config.d.ts.map +1 -0
  115. package/lib/typescript/example/metro.config.d.ts +3 -0
  116. package/lib/typescript/example/metro.config.d.ts.map +1 -0
  117. package/lib/typescript/example/react-native.config.d.ts +6 -0
  118. package/lib/typescript/example/react-native.config.d.ts.map +1 -0
  119. package/lib/typescript/example/src/App.d.ts +3 -0
  120. package/lib/typescript/example/src/App.d.ts.map +1 -0
  121. package/lib/typescript/example/src/Home.d.ts +4 -0
  122. package/lib/typescript/example/src/Home.d.ts.map +1 -0
  123. package/lib/typescript/example/src/navigator.d.ts +4 -0
  124. package/lib/typescript/example/src/navigator.d.ts.map +1 -0
  125. package/lib/typescript/lib/commonjs/AssentifyProvider.d.ts +3 -0
  126. package/lib/typescript/lib/commonjs/AssentifyProvider.d.ts.map +1 -0
  127. package/lib/typescript/lib/commonjs/AssentifyWrapper.d.ts +11 -0
  128. package/lib/typescript/lib/commonjs/AssentifyWrapper.d.ts.map +1 -0
  129. package/lib/typescript/lib/commonjs/Language.d.ts +22 -0
  130. package/lib/typescript/lib/commonjs/Language.d.ts.map +1 -0
  131. package/lib/typescript/lib/commonjs/helpers/index.d.ts +1 -0
  132. package/lib/typescript/lib/commonjs/helpers/index.d.ts.map +1 -0
  133. package/lib/typescript/lib/commonjs/helpers/parsers/FaceMatchParser.d.ts +12 -0
  134. package/lib/typescript/lib/commonjs/helpers/parsers/FaceMatchParser.d.ts.map +1 -0
  135. package/lib/typescript/lib/commonjs/helpers/parsers/IDCardParser.d.ts +11 -0
  136. package/lib/typescript/lib/commonjs/helpers/parsers/IDCardParser.d.ts.map +1 -0
  137. package/lib/typescript/lib/commonjs/helpers/parsers/OtherIDParser.d.ts +13 -0
  138. package/lib/typescript/lib/commonjs/helpers/parsers/OtherIDParser.d.ts.map +1 -0
  139. package/lib/typescript/lib/commonjs/helpers/parsers/PassportParser.d.ts +11 -0
  140. package/lib/typescript/lib/commonjs/helpers/parsers/PassportParser.d.ts.map +1 -0
  141. package/lib/typescript/lib/commonjs/index.d.ts +2 -0
  142. package/lib/typescript/lib/commonjs/index.d.ts.map +1 -0
  143. package/lib/typescript/lib/commonjs/types.d.ts +18 -0
  144. package/lib/typescript/lib/commonjs/types.d.ts.map +1 -0
  145. package/lib/typescript/lib/module/AssentifyProvider.d.ts +3 -0
  146. package/lib/typescript/lib/module/AssentifyProvider.d.ts.map +1 -0
  147. package/lib/typescript/lib/module/AssentifyWrapper.d.ts +10 -0
  148. package/lib/typescript/lib/module/AssentifyWrapper.d.ts.map +1 -0
  149. package/lib/typescript/lib/module/Language.d.ts +21 -0
  150. package/lib/typescript/lib/module/Language.d.ts.map +1 -0
  151. package/lib/typescript/lib/module/helpers/index.d.ts +1 -0
  152. package/lib/typescript/lib/module/helpers/index.d.ts.map +1 -0
  153. package/lib/typescript/lib/module/helpers/parsers/FaceMatchParser.d.ts +11 -0
  154. package/lib/typescript/lib/module/helpers/parsers/FaceMatchParser.d.ts.map +1 -0
  155. package/lib/typescript/lib/module/helpers/parsers/IDCardParser.d.ts +10 -0
  156. package/lib/typescript/lib/module/helpers/parsers/IDCardParser.d.ts.map +1 -0
  157. package/lib/typescript/lib/module/helpers/parsers/OtherIDParser.d.ts +12 -0
  158. package/lib/typescript/lib/module/helpers/parsers/OtherIDParser.d.ts.map +1 -0
  159. package/lib/typescript/lib/module/helpers/parsers/PassportParser.d.ts +10 -0
  160. package/lib/typescript/lib/module/helpers/parsers/PassportParser.d.ts.map +1 -0
  161. package/lib/typescript/lib/module/index.d.ts +12 -0
  162. package/lib/typescript/lib/module/index.d.ts.map +1 -0
  163. package/lib/typescript/lib/module/types.d.ts +17 -0
  164. package/lib/typescript/lib/module/types.d.ts.map +1 -0
  165. package/lib/typescript/src/AssentifyProvider.d.ts +4 -0
  166. package/lib/typescript/src/AssentifyProvider.d.ts.map +1 -0
  167. package/lib/typescript/src/AssentifyWrapper.d.ts +12 -0
  168. package/lib/typescript/src/AssentifyWrapper.d.ts.map +1 -0
  169. package/lib/typescript/src/Language.d.ts +22 -0
  170. package/lib/typescript/src/Language.d.ts.map +1 -0
  171. package/lib/typescript/src/helpers/index.d.ts +1 -0
  172. package/lib/typescript/src/helpers/index.d.ts.map +1 -0
  173. package/lib/typescript/src/helpers/parsers/FaceMatchParser.d.ts +4 -0
  174. package/lib/typescript/src/helpers/parsers/FaceMatchParser.d.ts.map +1 -0
  175. package/lib/typescript/src/helpers/parsers/IDCardParser.d.ts +4 -0
  176. package/lib/typescript/src/helpers/parsers/IDCardParser.d.ts.map +1 -0
  177. package/lib/typescript/src/helpers/parsers/OtherIDParser.d.ts +4 -0
  178. package/lib/typescript/src/helpers/parsers/OtherIDParser.d.ts.map +1 -0
  179. package/lib/typescript/src/helpers/parsers/PassportParser.d.ts +4 -0
  180. package/lib/typescript/src/helpers/parsers/PassportParser.d.ts.map +1 -0
  181. package/lib/typescript/src/index.d.ts +12 -0
  182. package/lib/typescript/src/index.d.ts.map +1 -0
  183. package/lib/typescript/src/types.d.ts +308 -0
  184. package/lib/typescript/src/types.d.ts.map +1 -0
  185. package/package.json +201 -0
  186. package/src/AssentifyProvider.tsx +189 -0
  187. package/src/AssentifyWrapper.ts +142 -0
  188. package/src/Language.ts +22 -0
  189. package/src/helpers/index.ts +1 -0
  190. package/src/helpers/parsers/FaceMatchParser.ts +28 -0
  191. package/src/helpers/parsers/IDCardParser.ts +27 -0
  192. package/src/helpers/parsers/OtherIDParser.ts +31 -0
  193. package/src/helpers/parsers/PassportParser.ts +27 -0
  194. package/src/index.ts +6 -0
  195. package/src/types.ts +373 -0
@@ -0,0 +1,298 @@
1
+
2
+
3
+ protocol ChildViewControllerDelegate: AnyObject {
4
+ func dismissParentViewController()
5
+ }
6
+
7
+
8
+ func showNavigationBarWithBackArrow(view: UIView, target: Any?, action: Selector?, initialTextColorHex: String, initialBackgroundColorHex: String, title: String ){
9
+ let navigationBar = UINavigationBar(frame: CGRect(x: 0, y: 35, width: view.frame.size.width, height: 50))
10
+ navigationBar.setBackgroundImage(UIImage(), for: .default)
11
+ navigationBar.shadowImage = UIImage()
12
+ navigationBar.isTranslucent = true
13
+ navigationBar.backgroundColor = .clear
14
+
15
+ let navigationItem = UINavigationItem()
16
+ let backButton = UIButton(type: .custom)
17
+ backButton.setImage(UIImage(systemName: "chevron.left"), for: .normal)
18
+ backButton.tintColor = UIColor(hexString: initialTextColorHex)
19
+ backButton.contentHorizontalAlignment = .center
20
+ backButton.addTarget(target, action: action!, for: .touchUpInside)
21
+
22
+ let buttonSize: CGFloat = 40
23
+ backButton.frame = CGRect(x: 0, y: 0, width: buttonSize, height: buttonSize)
24
+
25
+ backButton.backgroundColor = UIColor(hexString: initialBackgroundColorHex)
26
+ backButton.layer.cornerRadius = buttonSize / 2
27
+ backButton.layer.masksToBounds = true
28
+
29
+ let backButtonItem = UIBarButtonItem(customView: backButton)
30
+ navigationItem.leftBarButtonItem = backButtonItem
31
+
32
+ navigationItem.title = title
33
+ let titleAttributes: [NSAttributedString.Key: Any] = [
34
+ .foregroundColor: UIColor(hexString: initialTextColorHex),
35
+ .font: UIFont.systemFont(ofSize: 22)
36
+
37
+ ]
38
+ navigationBar.titleTextAttributes = titleAttributes
39
+
40
+ navigationBar.items = [navigationItem]
41
+ view.addSubview(navigationBar)
42
+ }
43
+
44
+
45
+
46
+
47
+ func showInfo(view: UIView, text: String, initialTextColorHex: String, initialBackgroundColorHex: String, initialImageName: String) -> (UILabel, UIImageView) {
48
+
49
+ let containerView = UIView()
50
+ containerView.translatesAutoresizingMaskIntoConstraints = false
51
+ containerView.backgroundColor = UIColor(hexString: initialBackgroundColorHex)
52
+ containerView.layer.cornerRadius = 20
53
+ containerView.layer.masksToBounds = true
54
+
55
+ let label = UILabel()
56
+ label.text = text
57
+ label.numberOfLines = 2
58
+ label.font = UIFont.boldSystemFont(ofSize:16)
59
+ label.textColor = UIColor(hexString: initialTextColorHex)
60
+ label.translatesAutoresizingMaskIntoConstraints = false
61
+
62
+ let imageView = UIImageView()
63
+ imageView.image = UIImage(named: initialImageName)
64
+ imageView.contentMode = .scaleAspectFit
65
+ imageView.translatesAutoresizingMaskIntoConstraints = false
66
+
67
+ containerView.addSubview(imageView)
68
+ containerView.addSubview(label)
69
+
70
+
71
+ view.addSubview(containerView)
72
+
73
+ NSLayoutConstraint.activate([
74
+ label.topAnchor.constraint(equalTo: containerView.topAnchor, constant: 12),
75
+ label.leadingAnchor.constraint(equalTo: containerView.leadingAnchor, constant: 50),
76
+ label.trailingAnchor.constraint(equalTo: containerView.trailingAnchor, constant: -20),
77
+ label.bottomAnchor.constraint(equalTo: containerView.bottomAnchor, constant: -12)
78
+ ])
79
+
80
+ NSLayoutConstraint.activate([
81
+ imageView.centerYAnchor.constraint(equalTo: label.centerYAnchor),
82
+ imageView.leadingAnchor.constraint(equalTo: containerView.leadingAnchor, constant: 10),
83
+ imageView.widthAnchor.constraint(equalToConstant: 30),
84
+ imageView.heightAnchor.constraint(equalToConstant: 30)
85
+ ])
86
+
87
+ NSLayoutConstraint.activate([
88
+ containerView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
89
+ containerView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: -20),
90
+ ])
91
+
92
+ return (label, imageView)
93
+ }
94
+
95
+
96
+
97
+ func showPopUpMessage(view: UIView, title: String, subTitle: String, initialTextColorHex: String, initialBackgroundColorHex: String, iconName: String, isGif: Bool, target: Any?, action: Selector?) -> UIView {
98
+ let containerView = UIView()
99
+ containerView.translatesAutoresizingMaskIntoConstraints = false
100
+ containerView.backgroundColor = UIColor(hexString: initialBackgroundColorHex)
101
+ containerView.layer.cornerRadius = 20
102
+ containerView.layer.masksToBounds = true
103
+
104
+ let stackView = UIStackView()
105
+ stackView.axis = .vertical
106
+ stackView.alignment = .center
107
+ stackView.spacing = 8
108
+ stackView.translatesAutoresizingMaskIntoConstraints = false
109
+
110
+ let imageView = UIImageView()
111
+ if isGif, let gifImage = UIImage.gifImageWithName(iconName) {
112
+ imageView.image = gifImage
113
+ } else {
114
+ imageView.image = UIImage(named: iconName)
115
+ }
116
+ imageView.contentMode = .scaleAspectFit
117
+ imageView.translatesAutoresizingMaskIntoConstraints = false
118
+
119
+ let titleLabel = UILabel()
120
+ titleLabel.text = title
121
+ titleLabel.font = UIFont.boldSystemFont(ofSize: 16)
122
+ titleLabel.textColor = UIColor(hexString: initialTextColorHex)
123
+ titleLabel.textAlignment = .center
124
+ titleLabel.translatesAutoresizingMaskIntoConstraints = false
125
+
126
+ let subtitleLabel = UILabel()
127
+ subtitleLabel.text = subTitle
128
+ subtitleLabel.font = UIFont.systemFont(ofSize: 14)
129
+ subtitleLabel.textColor = UIColor(hexString: initialTextColorHex)
130
+ subtitleLabel.textAlignment = .center
131
+ subtitleLabel.translatesAutoresizingMaskIntoConstraints = false
132
+
133
+ let retryButton = UIButton(type: .system)
134
+ retryButton.setTitle("RETRY ?", for: .normal)
135
+ retryButton.titleLabel?.font = UIFont.boldSystemFont(ofSize: 12)
136
+ retryButton.setTitleColor(UIColor(hexString: initialBackgroundColorHex), for: .normal)
137
+ retryButton.backgroundColor = UIColor(hexString: initialTextColorHex)
138
+ retryButton.layer.cornerRadius = 20
139
+ retryButton.clipsToBounds = true
140
+ retryButton.translatesAutoresizingMaskIntoConstraints = false
141
+ let retryButtonTopPadding: CGFloat = 3
142
+ let paddingView = UIView()
143
+ paddingView.translatesAutoresizingMaskIntoConstraints = false
144
+ paddingView.heightAnchor.constraint(equalToConstant: retryButtonTopPadding).isActive = true
145
+ if let action = action {
146
+ retryButton.addTarget(target, action: action, for: .touchUpInside)
147
+ }
148
+
149
+ stackView.addArrangedSubview(imageView)
150
+ stackView.addArrangedSubview(titleLabel)
151
+ stackView.addArrangedSubview(subtitleLabel)
152
+ if(!isGif && iconName != "sending"){
153
+ stackView.addArrangedSubview(paddingView)
154
+ stackView.addArrangedSubview(retryButton)
155
+ }
156
+
157
+ containerView.addSubview(stackView)
158
+ view.addSubview(containerView)
159
+
160
+ NSLayoutConstraint.activate([
161
+ stackView.leadingAnchor.constraint(equalTo: containerView.leadingAnchor, constant: 20),
162
+ stackView.trailingAnchor.constraint(equalTo: containerView.trailingAnchor, constant: -20),
163
+ stackView.topAnchor.constraint(equalTo: containerView.topAnchor, constant: 20),
164
+ stackView.bottomAnchor.constraint(equalTo: containerView.bottomAnchor, constant: -20)
165
+ ])
166
+
167
+ NSLayoutConstraint.activate([
168
+ imageView.widthAnchor.constraint(equalToConstant: 90),
169
+ imageView.heightAnchor.constraint(equalToConstant: 70)
170
+ ])
171
+
172
+ NSLayoutConstraint.activate([
173
+ retryButton.widthAnchor.constraint(equalToConstant: 100),
174
+ retryButton.heightAnchor.constraint(equalToConstant: 40)
175
+ ])
176
+
177
+ NSLayoutConstraint.activate([
178
+ containerView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
179
+ containerView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
180
+ containerView.widthAnchor.constraint(lessThanOrEqualTo: view.widthAnchor, multiplier: 0.8),
181
+ containerView.heightAnchor.constraint(lessThanOrEqualTo: view.heightAnchor, multiplier: 0.5)
182
+ ])
183
+
184
+ let tapGesture = UITapGestureRecognizer(target: target, action: action)
185
+ containerView.addGestureRecognizer(tapGesture)
186
+ containerView.isUserInteractionEnabled = true
187
+
188
+ return containerView
189
+ }
190
+
191
+
192
+ func showFlippingCard(view: UIView) -> UIView {
193
+ let containerView = UIView()
194
+ containerView.translatesAutoresizingMaskIntoConstraints = false
195
+ containerView.backgroundColor = UIColor.clear // Set to clear or any desired background color
196
+ containerView.layer.cornerRadius = 20
197
+ containerView.layer.masksToBounds = true
198
+
199
+ let imageView = UIImageView()
200
+ let gifImage = UIImage.gifImageWithName("card")
201
+ imageView.image = gifImage
202
+
203
+ imageView.contentMode = .scaleAspectFit
204
+ imageView.translatesAutoresizingMaskIntoConstraints = false
205
+
206
+ containerView.addSubview(imageView)
207
+ view.addSubview(containerView)
208
+
209
+ NSLayoutConstraint.activate([
210
+ imageView.leadingAnchor.constraint(equalTo: containerView.leadingAnchor),
211
+ imageView.trailingAnchor.constraint(equalTo: containerView.trailingAnchor),
212
+ imageView.topAnchor.constraint(equalTo: containerView.topAnchor),
213
+ imageView.bottomAnchor.constraint(equalTo: containerView.bottomAnchor),
214
+ imageView.widthAnchor.constraint(equalToConstant: 400),
215
+ imageView.heightAnchor.constraint(equalToConstant: 400)
216
+ ])
217
+
218
+ NSLayoutConstraint.activate([
219
+ containerView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
220
+ containerView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
221
+ containerView.widthAnchor.constraint(equalTo: imageView.widthAnchor),
222
+ containerView.heightAnchor.constraint(equalTo: imageView.heightAnchor)
223
+ ])
224
+
225
+ containerView.isUserInteractionEnabled = true
226
+
227
+ return containerView
228
+ }
229
+
230
+
231
+
232
+
233
+ extension UIColor {
234
+ convenience init?(hexString: String) {
235
+ var hexFormatted: String = hexString.trimmingCharacters(in: .whitespacesAndNewlines).uppercased()
236
+
237
+ if hexFormatted.hasPrefix("#") {
238
+ hexFormatted = String(hexFormatted.dropFirst())
239
+ }
240
+
241
+ if hexFormatted.count == 6 {
242
+ var rgbValue: UInt64 = 0
243
+ Scanner(string: hexFormatted).scanHexInt64(&rgbValue)
244
+
245
+ let red = CGFloat((rgbValue & 0xFF0000) >> 16) / 255.0
246
+ let green = CGFloat((rgbValue & 0x00FF00) >> 8) / 255.0
247
+ let blue = CGFloat(rgbValue & 0x0000FF) / 255.0
248
+
249
+ self.init(red: red, green: green, blue: blue, alpha: 1.0)
250
+ return
251
+ }
252
+
253
+ return nil
254
+ }
255
+ }
256
+ extension UIImage {
257
+ class func gifImageWithName(_ name: String) -> UIImage? {
258
+ guard let bundleURL = Bundle.main.url(forResource: name, withExtension: "gif") else {
259
+ return nil
260
+ }
261
+ guard let imageData = try? Data(contentsOf: bundleURL) else {
262
+ return nil
263
+ }
264
+ return UIImage.gifImageWithData(imageData)
265
+ }
266
+
267
+ class func gifImageWithData(_ data: Data) -> UIImage? {
268
+ guard let source = CGImageSourceCreateWithData(data as CFData, nil) else {
269
+ return nil
270
+ }
271
+ return UIImage.animatedImageWithSource(source)
272
+ }
273
+
274
+ class func animatedImageWithSource(_ source: CGImageSource) -> UIImage? {
275
+ let count = CGImageSourceGetCount(source)
276
+ var images = [UIImage]()
277
+ var duration = 0.0
278
+
279
+ for i in 0..<count {
280
+ guard let image = CGImageSourceCreateImageAtIndex(source, i, nil) else {
281
+ continue
282
+ }
283
+ guard let properties = CGImageSourceCopyPropertiesAtIndex(source, i, nil) as? [String: Any] else {
284
+ continue
285
+ }
286
+ guard let gifDictionary = properties[kCGImagePropertyGIFDictionary as String] as? [String: Any] else {
287
+ continue
288
+ }
289
+ guard let gifDelayTime = gifDictionary[kCGImagePropertyGIFDelayTime as String] as? Double else {
290
+ continue
291
+ }
292
+ duration += gifDelayTime
293
+ images.append(UIImage(cgImage: image, scale: UIScreen.main.scale, orientation: .up))
294
+ }
295
+
296
+ return UIImage.animatedImage(with: images, duration: duration)
297
+ }
298
+ }
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AssentifyProvider = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _PassportParser = _interopRequireDefault(require("./helpers/parsers/PassportParser"));
10
+ var _FaceMatchParser = _interopRequireDefault(require("./helpers/parsers/FaceMatchParser"));
11
+ var _IDCardParser = _interopRequireDefault(require("./helpers/parsers/IDCardParser"));
12
+ var _OtherIDParser = _interopRequireDefault(require("./helpers/parsers/OtherIDParser"));
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ const {
17
+ NativeAssentifySdk
18
+ } = _reactNative.NativeModules;
19
+ const AssentifyContext = /*#__PURE__*/(0, _react.createContext)(undefined);
20
+ _reactNative.LogBox.ignoreAllLogs();
21
+ const AssentifyProvider = () => {
22
+ (0, _react.useEffect)(() => {
23
+ const emitter = new _reactNative.NativeEventEmitter(NativeAssentifySdk);
24
+
25
+ /// Initialize
26
+ const assentifySdkInit = emitter.addListener('AppResult', result => {
27
+ if ((result === null || result === void 0 ? void 0 : result.assentifySdkInitSuccess) != null) {
28
+ if (result !== null && result !== void 0 && result.assentifySdkInitSuccess) {
29
+ const templates = JSON.parse(result === null || result === void 0 ? void 0 : result.AssentifySdkHasTemplates);
30
+ _reactNative.DeviceEventEmitter.emit('assentifySdkInit', {
31
+ "status": true,
32
+ "templates": templates
33
+ });
34
+ } else {
35
+ _reactNative.DeviceEventEmitter.emit('assentifySdkInit', {
36
+ "status": false
37
+ });
38
+ }
39
+ }
40
+ });
41
+
42
+ /// onComplete
43
+ const onComplete = emitter.addListener('onComplete', result => {
44
+ if (result !== null && result !== void 0 && result.PassportDataModel) {
45
+ const response = (0, _PassportParser.default)(result === null || result === void 0 ? void 0 : result.PassportDataModel);
46
+ _reactNative.DeviceEventEmitter.emit('onCompletePassport', {
47
+ "passportExtractedModel": response
48
+ });
49
+ } else if (result !== null && result !== void 0 && result.FaceMatchDataModel) {
50
+ const response = (0, _FaceMatchParser.default)(result === null || result === void 0 ? void 0 : result.FaceMatchDataModel);
51
+ _reactNative.DeviceEventEmitter.emit('onCompleteFaceMatch', {
52
+ "faceExtractedModel": response
53
+ });
54
+ } else if (result !== null && result !== void 0 && result.IdDataModel) {
55
+ const response = (0, _IDCardParser.default)(result === null || result === void 0 ? void 0 : result.IdDataModel);
56
+ _reactNative.DeviceEventEmitter.emit('onCompleteIDCard', {
57
+ "iDExtractedModel": response
58
+ });
59
+ } else if (result !== null && result !== void 0 && result.OtherDataModel) {
60
+ const response = (0, _OtherIDParser.default)(result === null || result === void 0 ? void 0 : result.OtherDataModel);
61
+ _reactNative.DeviceEventEmitter.emit('onCompleteOther', {
62
+ "otherExtractedModel": response
63
+ });
64
+ }
65
+ });
66
+
67
+ // General
68
+ const onSendEvent = emitter.addListener('onSend', _result => {
69
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
70
+ "eventName": "onSend"
71
+ });
72
+ });
73
+ const onRetryEvent = emitter.addListener('onRetry', _result => {
74
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
75
+ "eventName": "onRetry"
76
+ });
77
+ });
78
+ const onClipPreparationCompleteEvent = emitter.addListener('onClipPreparationComplete', _result => {
79
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
80
+ "eventName": "onClipPreparationComplete"
81
+ });
82
+ });
83
+ const onStatusUpdatedEvent = emitter.addListener('onStatusUpdated', _result => {
84
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
85
+ "eventName": "onStatusUpdated"
86
+ });
87
+ });
88
+ const onUpdatedEvent = emitter.addListener('onUpdated', _result => {
89
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
90
+ "eventName": "onUpdated"
91
+ });
92
+ });
93
+ const onLivenessUpdateEvent = emitter.addListener('onLivenessUpdate', _result => {
94
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
95
+ "eventName": "onLivenessUpdate"
96
+ });
97
+ });
98
+ const onCardDetectedEvent = emitter.addListener('onCardDetected', _result => {
99
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
100
+ "eventName": "onCardDetected"
101
+ });
102
+ });
103
+ const onMrzExtractedEvent = emitter.addListener('onMrzExtracted', _result => {
104
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
105
+ "eventName": "onMrzExtracted"
106
+ });
107
+ });
108
+ const onMrzDetectedEvent = emitter.addListener('onMrzDetected', _result => {
109
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
110
+ "eventName": "onMrzDetected"
111
+ });
112
+ });
113
+ const onNoMrzDetectedEvent = emitter.addListener('onNoMrzDetected', _result => {
114
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
115
+ "eventName": "onNoMrzDetected"
116
+ });
117
+ });
118
+ const onFaceDetectedEvent = emitter.addListener('onFaceDetected', _result => {
119
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
120
+ "eventName": "onFaceDetected"
121
+ });
122
+ });
123
+ const onNoFaceDetectedEvent = emitter.addListener('onNoFaceDetected', _result => {
124
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
125
+ "eventName": "onNoFaceDetected"
126
+ });
127
+ });
128
+ const onFaceExtractedEvent = emitter.addListener('onFaceExtracted', _result => {
129
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
130
+ "eventName": "onFaceExtracted"
131
+ });
132
+ });
133
+ const onQualityCheckAvailableEvent = emitter.addListener('onQualityCheckAvailable', _result => {
134
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
135
+ "eventName": "onQualityCheckAvailable"
136
+ });
137
+ });
138
+ const onDocumentCapturedEvent = emitter.addListener('onDocumentCaptured', _result => {
139
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
140
+ "eventName": "onDocumentCaptured"
141
+ });
142
+ });
143
+ const onDocumentCroppedEvent = emitter.addListener('onDocumentCropped', _result => {
144
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
145
+ "eventName": "onDocumentCropped"
146
+ });
147
+ });
148
+ const onUploadFailedEvent = emitter.addListener('onUploadFailed', _result => {
149
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
150
+ "eventName": "onUploadFailed"
151
+ });
152
+ });
153
+ const onWrongTemplate = emitter.addListener('onWrongTemplate', _result => {
154
+ _reactNative.DeviceEventEmitter.emit('EventResult', {
155
+ "eventName": "onWrongTemplate"
156
+ });
157
+ });
158
+
159
+ /// SubmitResult
160
+ const submitResult = emitter.addListener('SubmitResult', result => {
161
+ if (result != null) {
162
+ if (result !== null && result !== void 0 && result.success) {
163
+ _reactNative.DeviceEventEmitter.emit('SubmitDataEvents', {
164
+ "Success": true
165
+ });
166
+ } else {
167
+ _reactNative.DeviceEventEmitter.emit('SubmitDataEvents', {
168
+ "Success": false
169
+ });
170
+ }
171
+ }
172
+ });
173
+ return () => {
174
+ assentifySdkInit.remove();
175
+ onComplete.remove();
176
+ onSendEvent.remove();
177
+ onRetryEvent.remove();
178
+ onClipPreparationCompleteEvent.remove();
179
+ onStatusUpdatedEvent.remove();
180
+ onUpdatedEvent.remove();
181
+ onLivenessUpdateEvent.remove();
182
+ onCardDetectedEvent.remove();
183
+ onMrzExtractedEvent.remove();
184
+ onMrzDetectedEvent.remove();
185
+ onNoMrzDetectedEvent.remove();
186
+ onFaceDetectedEvent.remove();
187
+ onNoFaceDetectedEvent.remove();
188
+ onFaceExtractedEvent.remove();
189
+ onQualityCheckAvailableEvent.remove();
190
+ onDocumentCapturedEvent.remove();
191
+ onDocumentCroppedEvent.remove();
192
+ onUploadFailedEvent.remove();
193
+ onWrongTemplate.remove();
194
+ submitResult.remove();
195
+ };
196
+ }, []);
197
+ return /*#__PURE__*/_react.default.createElement(AssentifyContext.Provider, {
198
+ value: undefined
199
+ });
200
+ };
201
+ exports.AssentifyProvider = AssentifyProvider;
202
+ //# sourceMappingURL=AssentifyProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_PassportParser","_interopRequireDefault","_FaceMatchParser","_IDCardParser","_OtherIDParser","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","NativeAssentifySdk","NativeModules","AssentifyContext","createContext","undefined","LogBox","ignoreAllLogs","AssentifyProvider","useEffect","emitter","NativeEventEmitter","assentifySdkInit","addListener","result","assentifySdkInitSuccess","templates","JSON","parse","AssentifySdkHasTemplates","DeviceEventEmitter","emit","onComplete","PassportDataModel","response","JsonParserPassport","FaceMatchDataModel","JsonParserFaceMatch","IdDataModel","JsonParserIdCard","OtherDataModel","JsonParserOtherID","onSendEvent","_result","onRetryEvent","onClipPreparationCompleteEvent","onStatusUpdatedEvent","onUpdatedEvent","onLivenessUpdateEvent","onCardDetectedEvent","onMrzExtractedEvent","onMrzDetectedEvent","onNoMrzDetectedEvent","onFaceDetectedEvent","onNoFaceDetectedEvent","onFaceExtractedEvent","onQualityCheckAvailableEvent","onDocumentCapturedEvent","onDocumentCroppedEvent","onUploadFailedEvent","onWrongTemplate","submitResult","success","remove","createElement","Provider","value","exports"],"sourceRoot":"..\\..\\src","sources":["AssentifyProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _reactNativePermissions = require("react-native-permissions");
9
+ const LINKING_ERROR = `The package 'assentify-sdk-react-native-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
10
+ ios: "- You have run 'pod install'\n",
11
+ default: ''
12
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
13
+ const {
14
+ NativeAssentifySdk
15
+ } = _reactNative.NativeModules;
16
+ const AssentifySdk = _reactNative.NativeModules.NativeAssentifySdk ? _reactNative.NativeModules.NativeAssentifySdk : new Proxy({}, {
17
+ get() {
18
+ throw new Error(LINKING_ERROR);
19
+ }
20
+ });
21
+ const AssentifyWrapper = {
22
+ /// Initialize
23
+ initialize: function (apiKey, tenantIdentifier, instanceHash, processMrz, storeCapturedDocument, performLivenessDocument, performLivenessFace, storeImageStream, saveCapturedVideoID, saveCapturedVideoFace, ENV_CustomColor, enableDetect, enableGuide) {
24
+ (0, _reactNativePermissions.request)(_reactNative.Platform.select({
25
+ android: _reactNativePermissions.PERMISSIONS.ANDROID.CAMERA,
26
+ ios: _reactNativePermissions.PERMISSIONS.IOS.CAMERA,
27
+ default: _reactNativePermissions.PERMISSIONS.ANDROID.CAMERA
28
+ })).then(result => {
29
+ if (result === _reactNativePermissions.RESULTS.GRANTED) {
30
+ AssentifySdk.initialize(apiKey, tenantIdentifier, instanceHash, processMrz ?? true, storeCapturedDocument ?? true, performLivenessDocument ?? false, performLivenessFace ?? false, storeImageStream ?? true, saveCapturedVideoID ?? true, saveCapturedVideoFace ?? true, ENV_CustomColor ?? '#f5a103', enableDetect ?? true, enableGuide ?? true);
31
+ } else if (result === _reactNativePermissions.RESULTS.UNAVAILABLE || result === _reactNativePermissions.RESULTS.DENIED || result === _reactNativePermissions.RESULTS.BLOCKED) {
32
+ _reactNative.Alert.alert('Warning!', 'Please allow your camera permission in order to proceed further', [{
33
+ text: 'Open Settings',
34
+ onPress: () => {
35
+ _reactNative.Linking.openSettings();
36
+ }
37
+ }, {
38
+ text: 'Cancel',
39
+ onPress: () => {}
40
+ }]);
41
+ }
42
+ }, () => {
43
+ _reactNative.Alert.alert('Warning!', 'Please allow your camera permission in order to proceed further', [{
44
+ text: 'Open Settings',
45
+ onPress: () => {
46
+ _reactNative.Linking.openSettings();
47
+ }
48
+ }, {
49
+ text: 'Cancel',
50
+ onPress: () => {}
51
+ }]);
52
+ });
53
+ },
54
+ /// Passport
55
+ startScanPassport: function (language) {
56
+ AssentifySdk.startScanPassport(language);
57
+ },
58
+ /// Other
59
+ startScanOther: function (language) {
60
+ AssentifySdk.startScanOtherIDPage(language);
61
+ },
62
+ /// ID
63
+ startScanIDCard: function (kycDocumentDetailsList, language, flippingCard) {
64
+ AssentifySdk.startScanIDPage(JSON.stringify(kycDocumentDetailsList), language, flippingCard);
65
+ },
66
+ /// Face Match
67
+ startFaceMatch: function (imageUrl, showCountDown) {
68
+ AssentifySdk.startFaceMatch(imageUrl, showCountDown);
69
+ },
70
+ /// Submit Data
71
+ submitData: function (dataMap) {
72
+ AssentifySdk.submitData(dataMap);
73
+ }
74
+ };
75
+ var _default = exports.default = AssentifyWrapper;
76
+ //# sourceMappingURL=AssentifyWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_reactNativePermissions","LINKING_ERROR","Platform","select","ios","default","NativeAssentifySdk","NativeModules","AssentifySdk","Proxy","get","Error","AssentifyWrapper","initialize","apiKey","tenantIdentifier","instanceHash","processMrz","storeCapturedDocument","performLivenessDocument","performLivenessFace","storeImageStream","saveCapturedVideoID","saveCapturedVideoFace","ENV_CustomColor","enableDetect","enableGuide","request","android","PERMISSIONS","ANDROID","CAMERA","IOS","then","result","RESULTS","GRANTED","UNAVAILABLE","DENIED","BLOCKED","Alert","alert","text","onPress","Linking","openSettings","startScanPassport","language","startScanOther","startScanOtherIDPage","startScanIDCard","kycDocumentDetailsList","flippingCard","startScanIDPage","JSON","stringify","startFaceMatch","imageUrl","showCountDown","submitData","dataMap","_default","exports"],"sourceRoot":"..\\..\\src","sources":["AssentifyWrapper.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Language = void 0;
7
+ const Language = exports.Language = {
8
+ English: "en",
9
+ Arabic: "ar",
10
+ Azerbaijani: "az",
11
+ Belarusian: "be",
12
+ Georgian: "ka",
13
+ Korean: "ko",
14
+ Latvian: "lv",
15
+ Lithuanian: "lt",
16
+ Punjabi: "pa",
17
+ Russian: "ru",
18
+ Sanskrit: "sa",
19
+ Sindhi: "sd",
20
+ Thai: "th",
21
+ Turkish: "tr",
22
+ Ukrainian: "uk",
23
+ Urdu: "ur",
24
+ Uyghur: "ug",
25
+ NON: "NON"
26
+ };
27
+ //# sourceMappingURL=Language.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Language","exports","English","Arabic","Azerbaijani","Belarusian","Georgian","Korean","Latvian","Lithuanian","Punjabi","Russian","Sanskrit","Sindhi","Thai","Turkish","Ukrainian","Urdu","Uyghur","NON"],"sourceRoot":"..\\..\\src","sources":["Language.ts"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACtBE,OAAO,EAAE,IAAI;EACbC,MAAM,EAAE,IAAI;EACZC,WAAW,EAAE,IAAI;EACjBC,UAAU,EAAE,IAAI;EAChBC,QAAQ,EAAE,IAAI;EACdC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAE,IAAI;EACbC,UAAU,EAAE,IAAI;EAChBC,OAAO,EAAE,IAAI;EACbC,OAAO,EAAE,IAAI;EACbC,QAAQ,EAAE,IAAI;EACdC,MAAM,EAAE,IAAI;EACZC,IAAI,EAAE,IAAI;EACVC,OAAO,EAAE,IAAI;EACbC,SAAS,EAAE,IAAI;EACfC,IAAI,EAAE,IAAI;EACVC,MAAM,EAAE,IAAI;EACZC,GAAG,EAAE;AACP,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\..\\src","sources":["helpers/index.ts"],"mappings":"","ignoreList":[]}