freerasp-react-native 4.5.2 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/freeraspreactnative/FreeraspReactNativeModule.kt +12 -10
  4. package/android/src/main/java/com/freeraspreactnative/events/RaspExecutionStateEvent.kt +3 -5
  5. package/android/src/main/java/com/freeraspreactnative/events/ThreatEvent.kt +23 -25
  6. package/android/src/main/java/com/freeraspreactnative/models/RNSuspiciousAppInfo.kt +1 -1
  7. package/android/src/main/java/com/freeraspreactnative/utils/Extensions.kt +22 -2
  8. package/freerasp-react-native.podspec +31 -8
  9. package/freerasp_spm.rb +88 -0
  10. package/ios/TalsecRuntime.xcframework/Info.plist +5 -5
  11. package/ios/TalsecRuntime.xcframework/_CodeSignature/CodeDirectory +0 -0
  12. package/ios/TalsecRuntime.xcframework/_CodeSignature/CodeResources +42 -42
  13. package/ios/TalsecRuntime.xcframework/_CodeSignature/CodeSignature +0 -0
  14. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/CurlWrapper.h +1 -1
  15. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/TalsecRuntime-Swift.h +1 -1
  16. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/curl.h +7 -7
  17. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/multi.h +4 -4
  18. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/options.h +1 -1
  19. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Headers/urlapi.h +1 -1
  20. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Info.plist +0 -0
  21. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/Modules/TalsecRuntime.swiftmodule/arm64-apple-ios.abi.json +345 -289
  22. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/TalsecRuntime +0 -0
  23. package/ios/TalsecRuntime.xcframework/ios-arm64/TalsecRuntime.framework/_CodeSignature/CodeResources +15 -15
  24. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/CurlWrapper.h +1 -1
  25. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/TalsecRuntime-Swift.h +2 -2
  26. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/curl.h +7 -7
  27. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/multi.h +4 -4
  28. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/options.h +1 -1
  29. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Headers/urlapi.h +1 -1
  30. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Info.plist +0 -0
  31. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Modules/TalsecRuntime.swiftmodule/arm64-apple-ios-simulator.abi.json +279 -223
  32. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/Modules/TalsecRuntime.swiftmodule/x86_64-apple-ios-simulator.abi.json +279 -223
  33. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/TalsecRuntime +0 -0
  34. package/ios/TalsecRuntime.xcframework/ios-arm64_x86_64-simulator/TalsecRuntime.framework/_CodeSignature/CodeResources +17 -17
  35. package/ios/TalsecRuntimePackage/Package.swift +19 -0
  36. package/lib/commonjs/api/methods/native.js +2 -1
  37. package/lib/commonjs/api/methods/native.js.map +1 -1
  38. package/lib/commonjs/utils/config.js +31 -0
  39. package/lib/commonjs/utils/config.js.map +1 -0
  40. package/lib/commonjs/utils/malware.js +1 -1
  41. package/lib/commonjs/utils/malware.js.map +1 -1
  42. package/lib/module/api/methods/native.js +2 -1
  43. package/lib/module/api/methods/native.js.map +1 -1
  44. package/lib/module/utils/config.js +23 -0
  45. package/lib/module/utils/config.js.map +1 -0
  46. package/lib/module/utils/malware.js +1 -1
  47. package/lib/module/utils/malware.js.map +1 -1
  48. package/lib/typescript/plugin/src/index.d.ts.map +1 -1
  49. package/lib/typescript/plugin/src/iosSpm.d.ts +8 -0
  50. package/lib/typescript/plugin/src/iosSpm.d.ts.map +1 -0
  51. package/lib/typescript/plugin/src/iosSpmProperties.d.ts +3 -0
  52. package/lib/typescript/plugin/src/iosSpmProperties.d.ts.map +1 -0
  53. package/lib/typescript/plugin/src/pluginConfig.d.ts +8 -0
  54. package/lib/typescript/plugin/src/pluginConfig.d.ts.map +1 -1
  55. package/lib/typescript/src/api/methods/native.d.ts.map +1 -1
  56. package/lib/typescript/src/types/types.d.ts +16 -8
  57. package/lib/typescript/src/types/types.d.ts.map +1 -1
  58. package/lib/typescript/src/utils/config.d.ts +4 -0
  59. package/lib/typescript/src/utils/config.d.ts.map +1 -0
  60. package/package.json +2 -1
  61. package/plugin/build/index.js +38 -0
  62. package/plugin/build/iosSpm.d.ts +7 -0
  63. package/plugin/build/iosSpm.js +136 -0
  64. package/plugin/build/iosSpmProperties.d.ts +2 -0
  65. package/plugin/build/iosSpmProperties.js +29 -0
  66. package/plugin/build/pluginConfig.d.ts +8 -0
  67. package/plugin/tests/iosSpm.test.js +126 -0
  68. package/src/api/methods/native.ts +2 -1
  69. package/src/types/types.ts +25 -9
  70. package/src/utils/config.ts +42 -0
  71. package/src/utils/malware.ts +1 -1
@@ -14,11 +14,11 @@
14
14
  </data>
15
15
  <key>Headers/CurlWrapper.h</key>
16
16
  <data>
17
- +/BZdehMbZTktyXpd1TfVf9L1TE=
17
+ 6wr8OlswVsoDXIHFSIehCZy5/WM=
18
18
  </data>
19
19
  <key>Headers/TalsecRuntime-Swift.h</key>
20
20
  <data>
21
- /hUoXGGTi7vIdiKBlqtxp5Iwz54=
21
+ iLkhsEJ2P6OlkRZ1d+X83uEJ4X8=
22
22
  </data>
23
23
  <key>Headers/TalsecRuntime_iOS.h</key>
24
24
  <data>
@@ -26,7 +26,7 @@
26
26
  </data>
27
27
  <key>Headers/curl.h</key>
28
28
  <data>
29
- LvMb8KdGM9H1BRrKId0CgKpQD/I=
29
+ E5TLp3MrkfYvnHGaoct5aqk31Xg=
30
30
  </data>
31
31
  <key>Headers/curlver.h</key>
32
32
  <data>
@@ -46,11 +46,11 @@
46
46
  </data>
47
47
  <key>Headers/multi.h</key>
48
48
  <data>
49
- WvSLoI6h5jIKte3k+mNbUFuFVpk=
49
+ Ko0/m1T8kTNXlbTId/pXZ17V+zE=
50
50
  </data>
51
51
  <key>Headers/options.h</key>
52
52
  <data>
53
- GOKMw3bGfxoMmsny/FkGY3putw8=
53
+ bOPQbHhmMX2ezd6hVM1bewAXYqI=
54
54
  </data>
55
55
  <key>Headers/stdcheaders.h</key>
56
56
  <data>
@@ -66,7 +66,7 @@
66
66
  </data>
67
67
  <key>Headers/urlapi.h</key>
68
68
  <data>
69
- VQyVIjrt8oYo9v0Xdb8pUFMMcK8=
69
+ M+v28sJU6k2ohJY/oATOk0aofn4=
70
70
  </data>
71
71
  <key>Headers/websockets.h</key>
72
72
  <data>
@@ -74,11 +74,11 @@
74
74
  </data>
75
75
  <key>Info.plist</key>
76
76
  <data>
77
- eL5oFlB6wq1n2HB8CtBm1T2ZgRw=
77
+ C+rwNOVjD82c5I+dOxAQYEwvvbo=
78
78
  </data>
79
79
  <key>Modules/TalsecRuntime.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
80
80
  <data>
81
- pMnu+U/rFxEOr6qt1QqIToB3V+k=
81
+ PNRmP/piKLXPtWcsYCm5VVyEJl4=
82
82
  </data>
83
83
  <key>Modules/TalsecRuntime.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
84
84
  <data>
@@ -94,7 +94,7 @@
94
94
  </data>
95
95
  <key>Modules/TalsecRuntime.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
96
96
  <data>
97
- pMnu+U/rFxEOr6qt1QqIToB3V+k=
97
+ PNRmP/piKLXPtWcsYCm5VVyEJl4=
98
98
  </data>
99
99
  <key>Modules/TalsecRuntime.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
100
100
  <data>
@@ -145,14 +145,14 @@
145
145
  <dict>
146
146
  <key>hash2</key>
147
147
  <data>
148
- wPSwe3k7PIhN59OveXzb7euBGLsZpNDCe3rxi3qSacY=
148
+ tlBvZyxaTPi2iagbzloWGrPV3lMqGmUyovqjfFkUx6Y=
149
149
  </data>
150
150
  </dict>
151
151
  <key>Headers/TalsecRuntime-Swift.h</key>
152
152
  <dict>
153
153
  <key>hash2</key>
154
154
  <data>
155
- adt8Xcyxs1KLY/8S2qf012ln9H6nElyeVP+HNFcjHM4=
155
+ tzA65yDQ40zTr0zocuTMsSS4H5XKSXIoFHJ+zTsfOck=
156
156
  </data>
157
157
  </dict>
158
158
  <key>Headers/TalsecRuntime_iOS.h</key>
@@ -166,7 +166,7 @@
166
166
  <dict>
167
167
  <key>hash2</key>
168
168
  <data>
169
- u/SMN3beuzx0i2dt5e+l0JuybPQnoQxyGFOidtmUiuI=
169
+ uejrZlHZuIC8IbWQaIb5AvjvsYayIJlMEsSoStadCFI=
170
170
  </data>
171
171
  </dict>
172
172
  <key>Headers/curlver.h</key>
@@ -201,14 +201,14 @@
201
201
  <dict>
202
202
  <key>hash2</key>
203
203
  <data>
204
- yk/hky4WUCrFatYr3HMyyCgfMOytFyCTbgN8q7cxxdc=
204
+ nEbDSnR0zS8NMh0xJhVf0mL2qJAYjPu745j1rWVzyDM=
205
205
  </data>
206
206
  </dict>
207
207
  <key>Headers/options.h</key>
208
208
  <dict>
209
209
  <key>hash2</key>
210
210
  <data>
211
- cJIaFXm+hGzgpoSmWUWKB06w1VdqPmWQvY70kcfbGBg=
211
+ A6nFG3FzyNnzrrGigO7cQ8Zqjk11eg6VD8256hBXfmA=
212
212
  </data>
213
213
  </dict>
214
214
  <key>Headers/stdcheaders.h</key>
@@ -236,7 +236,7 @@
236
236
  <dict>
237
237
  <key>hash2</key>
238
238
  <data>
239
- E7gKC6f/76z3wisiOh4O5LEK4UPtG8h7qY2QGjvOctE=
239
+ MyPHVGuak9RmTpd7eXMJSpPMMfYKG/MHOxeueefqLwk=
240
240
  </data>
241
241
  </dict>
242
242
  <key>Headers/websockets.h</key>
@@ -250,7 +250,7 @@
250
250
  <dict>
251
251
  <key>hash2</key>
252
252
  <data>
253
- M2tkP6t2EGgayYHcgC1xOjoiFwWwoBeyiI8jVBJ6ya0=
253
+ /hldVvxprpH5EL/sSmJhF8ltMvsmgCXzQ4U18KMS3uI=
254
254
  </data>
255
255
  </dict>
256
256
  <key>Modules/TalsecRuntime.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
@@ -278,7 +278,7 @@
278
278
  <dict>
279
279
  <key>hash2</key>
280
280
  <data>
281
- M2tkP6t2EGgayYHcgC1xOjoiFwWwoBeyiI8jVBJ6ya0=
281
+ /hldVvxprpH5EL/sSmJhF8ltMvsmgCXzQ4U18KMS3uI=
282
282
  </data>
283
283
  </dict>
284
284
  <key>Modules/TalsecRuntime.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
@@ -0,0 +1,19 @@
1
+ // swift-tools-version:5.9
2
+ import PackageDescription
3
+
4
+ let package = Package(
5
+ name: "TalsecRuntime",
6
+ platforms: [
7
+ .iOS(.v13),
8
+ ],
9
+ products: [
10
+ .library(name: "TalsecRuntime", targets: ["TalsecRuntime"]),
11
+ ],
12
+ targets: [
13
+ .binaryTarget(
14
+ name: "TalsecRuntime",
15
+ url: "https://storage.googleapis.com/talsec-artifact-repository/freerasp/ios/react-native/7.1.0/TalsecRuntime.xcframework.zip",
16
+ checksum: "35e62f290aca44e62519794334a1933011b1611dbb21ff2b7f083c97a88df006"
17
+ ),
18
+ ]
19
+ )
@@ -6,8 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.talsecStart = exports.storeExternalId = exports.removeListenerForEvent = exports.removeExternalId = exports.onInvalidCallback = exports.isScreenCaptureBlocked = exports.getAppIcon = exports.blockScreenCapture = exports.addToWhitelist = void 0;
7
7
  var _reactNative = require("react-native");
8
8
  var _nativeModules = require("../nativeModules");
9
+ var _config = require("../../utils/config");
9
10
  const talsecStart = async options => {
10
- return _nativeModules.FreeraspReactNative.talsecStart(options);
11
+ return _nativeModules.FreeraspReactNative.talsecStart((0, _config.withDefaults)(options));
11
12
  };
12
13
  exports.talsecStart = talsecStart;
13
14
  const addToWhitelist = async packageName => {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_nativeModules","talsecStart","options","FreeraspReactNative","exports","addToWhitelist","packageName","Platform","OS","Promise","reject","blockScreenCapture","enable","isScreenCaptureBlocked","storeExternalId","data","removeExternalId","getAppIcon","onInvalidCallback","removeListenerForEvent","channel"],"sourceRoot":"../../../../src","sources":["api/methods/native.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAGO,MAAME,WAAW,GAAG,MAAOC,OAAqB,IAAsB;EAC3E,OAAOC,kCAAmB,CAACF,WAAW,CAACC,OAAO,CAAC;AACjD,CAAC;AAACE,OAAA,CAAAH,WAAA,GAAAA,WAAA;AAEK,MAAMI,cAAc,GAAG,MAAOC,WAAmB,IAAuB;EAC7E,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CAAC,wCAAwC,CAAC;EACjE;EACA,OAAOP,kCAAmB,CAACE,cAAc,CAACC,WAAW,CAAC;AACxD,CAAC;AAACF,OAAA,CAAAC,cAAA,GAAAA,cAAA;AAEK,MAAMM,kBAAkB,GAAIC,MAAe,IAAsB;EACtE,OAAOT,kCAAmB,CAACQ,kBAAkB,CAACC,MAAM,CAAC;AACvD,CAAC;AAACR,OAAA,CAAAO,kBAAA,GAAAA,kBAAA;AAEK,MAAME,sBAAsB,GAAGA,CAAA,KAAwB;EAC5D,OAAOV,kCAAmB,CAACU,sBAAsB,CAAC,CAAC;AACrD,CAAC;AAACT,OAAA,CAAAS,sBAAA,GAAAA,sBAAA;AAEK,MAAMC,eAAe,GAAIC,IAAY,IAAsB;EAChE,OAAOZ,kCAAmB,CAACW,eAAe,CAACC,IAAI,CAAC;AAClD,CAAC;AAACX,OAAA,CAAAU,eAAA,GAAAA,eAAA;AAEK,MAAME,gBAAgB,GAAGA,CAAA,KAAuB;EACrD,OAAOb,kCAAmB,CAACa,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAACZ,OAAA,CAAAY,gBAAA,GAAAA,gBAAA;AAEK,MAAMC,UAAU,GAAIX,WAAmB,IAAsB;EAClE,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CACnB,+DACF,CAAC;EACH;EACA,OAAOP,kCAAmB,CAACc,UAAU,CAACX,WAAW,CAAC;AACpD,CAAC;AAACF,OAAA,CAAAa,UAAA,GAAAA,UAAA;AAEK,MAAMC,iBAAiB,GAAGA,CAAA,KAAY;EAC3Cf,kCAAmB,CAACe,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAACd,OAAA,CAAAc,iBAAA,GAAAA,iBAAA;AAEK,MAAMC,sBAAsB,GAAIC,OAAe,IAAsB;EAC1E,OAAOjB,kCAAmB,CAACgB,sBAAsB,CAACC,OAAO,CAAC;AAC5D,CAAC;AAAChB,OAAA,CAAAe,sBAAA,GAAAA,sBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_nativeModules","_config","talsecStart","options","FreeraspReactNative","withDefaults","exports","addToWhitelist","packageName","Platform","OS","Promise","reject","blockScreenCapture","enable","isScreenCaptureBlocked","storeExternalId","data","removeExternalId","getAppIcon","onInvalidCallback","removeListenerForEvent","channel"],"sourceRoot":"../../../../src","sources":["api/methods/native.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAEO,MAAMG,WAAW,GAAG,MAAOC,OAAqB,IAAsB;EAC3E,OAAOC,kCAAmB,CAACF,WAAW,CAAC,IAAAG,oBAAY,EAACF,OAAO,CAAC,CAAC;AAC/D,CAAC;AAACG,OAAA,CAAAJ,WAAA,GAAAA,WAAA;AAEK,MAAMK,cAAc,GAAG,MAAOC,WAAmB,IAAuB;EAC7E,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CAAC,wCAAwC,CAAC;EACjE;EACA,OAAOR,kCAAmB,CAACG,cAAc,CAACC,WAAW,CAAC;AACxD,CAAC;AAACF,OAAA,CAAAC,cAAA,GAAAA,cAAA;AAEK,MAAMM,kBAAkB,GAAIC,MAAe,IAAsB;EACtE,OAAOV,kCAAmB,CAACS,kBAAkB,CAACC,MAAM,CAAC;AACvD,CAAC;AAACR,OAAA,CAAAO,kBAAA,GAAAA,kBAAA;AAEK,MAAME,sBAAsB,GAAGA,CAAA,KAAwB;EAC5D,OAAOX,kCAAmB,CAACW,sBAAsB,CAAC,CAAC;AACrD,CAAC;AAACT,OAAA,CAAAS,sBAAA,GAAAA,sBAAA;AAEK,MAAMC,eAAe,GAAIC,IAAY,IAAsB;EAChE,OAAOb,kCAAmB,CAACY,eAAe,CAACC,IAAI,CAAC;AAClD,CAAC;AAACX,OAAA,CAAAU,eAAA,GAAAA,eAAA;AAEK,MAAME,gBAAgB,GAAGA,CAAA,KAAuB;EACrD,OAAOd,kCAAmB,CAACc,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAACZ,OAAA,CAAAY,gBAAA,GAAAA,gBAAA;AAEK,MAAMC,UAAU,GAAIX,WAAmB,IAAsB;EAClE,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CACnB,+DACF,CAAC;EACH;EACA,OAAOR,kCAAmB,CAACe,UAAU,CAACX,WAAW,CAAC;AACpD,CAAC;AAACF,OAAA,CAAAa,UAAA,GAAAA,UAAA;AAEK,MAAMC,iBAAiB,GAAGA,CAAA,KAAY;EAC3ChB,kCAAmB,CAACgB,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAACd,OAAA,CAAAc,iBAAA,GAAAA,iBAAA;AAEK,MAAMC,sBAAsB,GAAIC,OAAe,IAAsB;EAC1E,OAAOlB,kCAAmB,CAACiB,sBAAsB,CAACC,OAAO,CAAC;AAC5D,CAAC;AAAChB,OAAA,CAAAe,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.withDefaults = exports.normalizeAndroidConfig = void 0;
7
+ const DEFAULT_SCAN_SCOPE = {
8
+ scopeType: 'SIDELOADED_ONLY'
9
+ };
10
+ const DEFAULT_REASON_MODE = 'HIGHEST_CONFIDENCE';
11
+ const withDetectionDefaults = config => ({
12
+ ...config,
13
+ scanScope: config.scanScope ?? DEFAULT_SCAN_SCOPE,
14
+ reasonMode: config.reasonMode ?? DEFAULT_REASON_MODE
15
+ });
16
+ const normalizeAndroidConfig = androidConfig => {
17
+ if (!androidConfig.suspiciousAppDetectionConfig) {
18
+ return androidConfig;
19
+ }
20
+ return {
21
+ ...androidConfig,
22
+ suspiciousAppDetectionConfig: withDetectionDefaults(androidConfig.suspiciousAppDetectionConfig)
23
+ };
24
+ };
25
+ exports.normalizeAndroidConfig = normalizeAndroidConfig;
26
+ const withDefaults = options => ({
27
+ ...options,
28
+ androidConfig: options.androidConfig ? normalizeAndroidConfig(options.androidConfig) : undefined
29
+ });
30
+ exports.withDefaults = withDefaults;
31
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DEFAULT_SCAN_SCOPE","scopeType","DEFAULT_REASON_MODE","withDetectionDefaults","config","scanScope","reasonMode","normalizeAndroidConfig","androidConfig","suspiciousAppDetectionConfig","exports","withDefaults","options","undefined"],"sourceRoot":"../../../src","sources":["utils/config.ts"],"mappings":";;;;;;AAQA,MAAMA,kBAA6B,GAAG;EACpCC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,mBAA+B,GAAG,oBAAoB;AAE5D,MAAMC,qBAAqB,GACzBC,MAAoC,KACF;EAClC,GAAGA,MAAM;EACTC,SAAS,EAAED,MAAM,CAACC,SAAS,IAAIL,kBAAkB;EACjDM,UAAU,EAAEF,MAAM,CAACE,UAAU,IAAIJ;AACnC,CAAC,CAAC;AAEK,MAAMK,sBAAsB,GACjCC,aAAkC,IACV;EACxB,IAAI,CAACA,aAAa,CAACC,4BAA4B,EAAE;IAC/C,OAAOD,aAAa;EACtB;EACA,OAAO;IACL,GAAGA,aAAa;IAChBC,4BAA4B,EAAEN,qBAAqB,CACjDK,aAAa,CAACC,4BAChB;EACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAH,sBAAA,GAAAA,sBAAA;AAEK,MAAMI,YAAY,GAAIC,OAAqB,KAAoB;EACpE,GAAGA,OAAO;EACVJ,aAAa,EAAEI,OAAO,CAACJ,aAAa,GAChCD,sBAAsB,CAACK,OAAO,CAACJ,aAAa,CAAC,GAC7CK;AACN,CAAC,CAAC;AAACH,OAAA,CAAAC,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -20,7 +20,7 @@ const toSuspiciousAppInfo = base64Value => {
20
20
  const packageInfo = data.packageInfo;
21
21
  return {
22
22
  packageInfo,
23
- reason: data.reason,
23
+ reasons: data.reasons,
24
24
  permissions: data.permissions
25
25
  };
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_buffer","require","parseMalwareData","data","Promise","resolve","reject","map","entry","toSuspiciousAppInfo","error","exports","base64Value","JSON","parse","Buffer","from","toString","packageInfo","reason","permissions"],"sourceRoot":"../../../src","sources":["utils/malware.ts"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAEO,MAAMC,gBAAgB,GAAG,MAC9BC,IAAc,IACmB;EACjC,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAI;MACFD,OAAO,CAACF,IAAI,CAACI,GAAG,CAAEC,KAAK,IAAKC,mBAAmB,CAACD,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,OAAOE,KAAU,EAAE;MACnBJ,MAAM,CAAE,iCAAgCI,KAAM,EAAC,CAAC;IAClD;EACF,CAAC,CAAC;AACJ,CAAC;AAACC,OAAA,CAAAT,gBAAA,GAAAA,gBAAA;AAEK,MAAMO,mBAAmB,GAAIG,WAAmB,IAAwB;EAC7E,MAAMT,IAAI,GAAGU,IAAI,CAACC,KAAK,CAACC,cAAM,CAACC,IAAI,CAACJ,WAAW,EAAE,QAAQ,CAAC,CAACK,QAAQ,CAAC,MAAM,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGf,IAAI,CAACe,WAA0B;EACnD,OAAO;IACLA,WAAW;IACXC,MAAM,EAAEhB,IAAI,CAACgB,MAAM;IACnBC,WAAW,EAAEjB,IAAI,CAACiB;EACpB,CAAC;AACH,CAAC;AAACT,OAAA,CAAAF,mBAAA,GAAAA,mBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_buffer","require","parseMalwareData","data","Promise","resolve","reject","map","entry","toSuspiciousAppInfo","error","exports","base64Value","JSON","parse","Buffer","from","toString","packageInfo","reasons","permissions"],"sourceRoot":"../../../src","sources":["utils/malware.ts"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAEO,MAAMC,gBAAgB,GAAG,MAC9BC,IAAc,IACmB;EACjC,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAI;MACFD,OAAO,CAACF,IAAI,CAACI,GAAG,CAAEC,KAAK,IAAKC,mBAAmB,CAACD,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,OAAOE,KAAU,EAAE;MACnBJ,MAAM,CAAE,iCAAgCI,KAAM,EAAC,CAAC;IAClD;EACF,CAAC,CAAC;AACJ,CAAC;AAACC,OAAA,CAAAT,gBAAA,GAAAA,gBAAA;AAEK,MAAMO,mBAAmB,GAAIG,WAAmB,IAAwB;EAC7E,MAAMT,IAAI,GAAGU,IAAI,CAACC,KAAK,CAACC,cAAM,CAACC,IAAI,CAACJ,WAAW,EAAE,QAAQ,CAAC,CAACK,QAAQ,CAAC,MAAM,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGf,IAAI,CAACe,WAA0B;EACnD,OAAO;IACLA,WAAW;IACXC,OAAO,EAAEhB,IAAI,CAACgB,OAAO;IACrBC,WAAW,EAAEjB,IAAI,CAACiB;EACpB,CAAC;AACH,CAAC;AAACT,OAAA,CAAAF,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import { Platform } from 'react-native';
2
2
  import { FreeraspReactNative } from '../nativeModules';
3
+ import { withDefaults } from '../../utils/config';
3
4
  export const talsecStart = async options => {
4
- return FreeraspReactNative.talsecStart(options);
5
+ return FreeraspReactNative.talsecStart(withDefaults(options));
5
6
  };
6
7
  export const addToWhitelist = async packageName => {
7
8
  if (Platform.OS === 'ios') {
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","FreeraspReactNative","talsecStart","options","addToWhitelist","packageName","OS","Promise","reject","blockScreenCapture","enable","isScreenCaptureBlocked","storeExternalId","data","removeExternalId","getAppIcon","onInvalidCallback","removeListenerForEvent","channel"],"sourceRoot":"../../../../src","sources":["api/methods/native.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,mBAAmB,QAAQ,kBAAkB;AAGtD,OAAO,MAAMC,WAAW,GAAG,MAAOC,OAAqB,IAAsB;EAC3E,OAAOF,mBAAmB,CAACC,WAAW,CAACC,OAAO,CAAC;AACjD,CAAC;AAED,OAAO,MAAMC,cAAc,GAAG,MAAOC,WAAmB,IAAuB;EAC7E,IAAIL,QAAQ,CAACM,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CAAC,wCAAwC,CAAC;EACjE;EACA,OAAOP,mBAAmB,CAACG,cAAc,CAACC,WAAW,CAAC;AACxD,CAAC;AAED,OAAO,MAAMI,kBAAkB,GAAIC,MAAe,IAAsB;EACtE,OAAOT,mBAAmB,CAACQ,kBAAkB,CAACC,MAAM,CAAC;AACvD,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAwB;EAC5D,OAAOV,mBAAmB,CAACU,sBAAsB,CAAC,CAAC;AACrD,CAAC;AAED,OAAO,MAAMC,eAAe,GAAIC,IAAY,IAAsB;EAChE,OAAOZ,mBAAmB,CAACW,eAAe,CAACC,IAAI,CAAC;AAClD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAuB;EACrD,OAAOb,mBAAmB,CAACa,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,UAAU,GAAIV,WAAmB,IAAsB;EAClE,IAAIL,QAAQ,CAACM,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CACnB,+DACF,CAAC;EACH;EACA,OAAOP,mBAAmB,CAACc,UAAU,CAACV,WAAW,CAAC;AACpD,CAAC;AAED,OAAO,MAAMW,iBAAiB,GAAGA,CAAA,KAAY;EAC3Cf,mBAAmB,CAACe,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAIC,OAAe,IAAsB;EAC1E,OAAOjB,mBAAmB,CAACgB,sBAAsB,CAACC,OAAO,CAAC;AAC5D,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Platform","FreeraspReactNative","withDefaults","talsecStart","options","addToWhitelist","packageName","OS","Promise","reject","blockScreenCapture","enable","isScreenCaptureBlocked","storeExternalId","data","removeExternalId","getAppIcon","onInvalidCallback","removeListenerForEvent","channel"],"sourceRoot":"../../../../src","sources":["api/methods/native.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,mBAAmB,QAAQ,kBAAkB;AAEtD,SAASC,YAAY,QAAQ,oBAAoB;AAEjD,OAAO,MAAMC,WAAW,GAAG,MAAOC,OAAqB,IAAsB;EAC3E,OAAOH,mBAAmB,CAACE,WAAW,CAACD,YAAY,CAACE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED,OAAO,MAAMC,cAAc,GAAG,MAAOC,WAAmB,IAAuB;EAC7E,IAAIN,QAAQ,CAACO,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CAAC,wCAAwC,CAAC;EACjE;EACA,OAAOR,mBAAmB,CAACI,cAAc,CAACC,WAAW,CAAC;AACxD,CAAC;AAED,OAAO,MAAMI,kBAAkB,GAAIC,MAAe,IAAsB;EACtE,OAAOV,mBAAmB,CAACS,kBAAkB,CAACC,MAAM,CAAC;AACvD,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAAwB;EAC5D,OAAOX,mBAAmB,CAACW,sBAAsB,CAAC,CAAC;AACrD,CAAC;AAED,OAAO,MAAMC,eAAe,GAAIC,IAAY,IAAsB;EAChE,OAAOb,mBAAmB,CAACY,eAAe,CAACC,IAAI,CAAC;AAClD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAuB;EACrD,OAAOd,mBAAmB,CAACc,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,UAAU,GAAIV,WAAmB,IAAsB;EAClE,IAAIN,QAAQ,CAACO,EAAE,KAAK,KAAK,EAAE;IACzB,OAAOC,OAAO,CAACC,MAAM,CACnB,+DACF,CAAC;EACH;EACA,OAAOR,mBAAmB,CAACe,UAAU,CAACV,WAAW,CAAC;AACpD,CAAC;AAED,OAAO,MAAMW,iBAAiB,GAAGA,CAAA,KAAY;EAC3ChB,mBAAmB,CAACgB,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAIC,OAAe,IAAsB;EAC1E,OAAOlB,mBAAmB,CAACiB,sBAAsB,CAACC,OAAO,CAAC;AAC5D,CAAC","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ const DEFAULT_SCAN_SCOPE = {
2
+ scopeType: 'SIDELOADED_ONLY'
3
+ };
4
+ const DEFAULT_REASON_MODE = 'HIGHEST_CONFIDENCE';
5
+ const withDetectionDefaults = config => ({
6
+ ...config,
7
+ scanScope: config.scanScope ?? DEFAULT_SCAN_SCOPE,
8
+ reasonMode: config.reasonMode ?? DEFAULT_REASON_MODE
9
+ });
10
+ export const normalizeAndroidConfig = androidConfig => {
11
+ if (!androidConfig.suspiciousAppDetectionConfig) {
12
+ return androidConfig;
13
+ }
14
+ return {
15
+ ...androidConfig,
16
+ suspiciousAppDetectionConfig: withDetectionDefaults(androidConfig.suspiciousAppDetectionConfig)
17
+ };
18
+ };
19
+ export const withDefaults = options => ({
20
+ ...options,
21
+ androidConfig: options.androidConfig ? normalizeAndroidConfig(options.androidConfig) : undefined
22
+ });
23
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DEFAULT_SCAN_SCOPE","scopeType","DEFAULT_REASON_MODE","withDetectionDefaults","config","scanScope","reasonMode","normalizeAndroidConfig","androidConfig","suspiciousAppDetectionConfig","withDefaults","options","undefined"],"sourceRoot":"../../../src","sources":["utils/config.ts"],"mappings":"AAQA,MAAMA,kBAA6B,GAAG;EACpCC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,mBAA+B,GAAG,oBAAoB;AAE5D,MAAMC,qBAAqB,GACzBC,MAAoC,KACF;EAClC,GAAGA,MAAM;EACTC,SAAS,EAAED,MAAM,CAACC,SAAS,IAAIL,kBAAkB;EACjDM,UAAU,EAAEF,MAAM,CAACE,UAAU,IAAIJ;AACnC,CAAC,CAAC;AAEF,OAAO,MAAMK,sBAAsB,GACjCC,aAAkC,IACV;EACxB,IAAI,CAACA,aAAa,CAACC,4BAA4B,EAAE;IAC/C,OAAOD,aAAa;EACtB;EACA,OAAO;IACL,GAAGA,aAAa;IAChBC,4BAA4B,EAAEN,qBAAqB,CACjDK,aAAa,CAACC,4BAChB;EACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,YAAY,GAAIC,OAAqB,KAAoB;EACpE,GAAGA,OAAO;EACVH,aAAa,EAAEG,OAAO,CAACH,aAAa,GAChCD,sBAAsB,CAACI,OAAO,CAACH,aAAa,CAAC,GAC7CI;AACN,CAAC,CAAC","ignoreList":[]}
@@ -13,7 +13,7 @@ export const toSuspiciousAppInfo = base64Value => {
13
13
  const packageInfo = data.packageInfo;
14
14
  return {
15
15
  packageInfo,
16
- reason: data.reason,
16
+ reasons: data.reasons,
17
17
  permissions: data.permissions
18
18
  };
19
19
  };
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","parseMalwareData","data","Promise","resolve","reject","map","entry","toSuspiciousAppInfo","error","base64Value","JSON","parse","from","toString","packageInfo","reason","permissions"],"sourceRoot":"../../../src","sources":["utils/malware.ts"],"mappings":"AACA,SAASA,MAAM,QAAQ,QAAQ;AAE/B,OAAO,MAAMC,gBAAgB,GAAG,MAC9BC,IAAc,IACmB;EACjC,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAI;MACFD,OAAO,CAACF,IAAI,CAACI,GAAG,CAAEC,KAAK,IAAKC,mBAAmB,CAACD,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,OAAOE,KAAU,EAAE;MACnBJ,MAAM,CAAE,iCAAgCI,KAAM,EAAC,CAAC;IAClD;EACF,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMD,mBAAmB,GAAIE,WAAmB,IAAwB;EAC7E,MAAMR,IAAI,GAAGS,IAAI,CAACC,KAAK,CAACZ,MAAM,CAACa,IAAI,CAACH,WAAW,EAAE,QAAQ,CAAC,CAACI,QAAQ,CAAC,MAAM,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGb,IAAI,CAACa,WAA0B;EACnD,OAAO;IACLA,WAAW;IACXC,MAAM,EAAEd,IAAI,CAACc,MAAM;IACnBC,WAAW,EAAEf,IAAI,CAACe;EACpB,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","parseMalwareData","data","Promise","resolve","reject","map","entry","toSuspiciousAppInfo","error","base64Value","JSON","parse","from","toString","packageInfo","reasons","permissions"],"sourceRoot":"../../../src","sources":["utils/malware.ts"],"mappings":"AACA,SAASA,MAAM,QAAQ,QAAQ;AAE/B,OAAO,MAAMC,gBAAgB,GAAG,MAC9BC,IAAc,IACmB;EACjC,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAI;MACFD,OAAO,CAACF,IAAI,CAACI,GAAG,CAAEC,KAAK,IAAKC,mBAAmB,CAACD,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,OAAOE,KAAU,EAAE;MACnBJ,MAAM,CAAE,iCAAgCI,KAAM,EAAC,CAAC;IAClD;EACF,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMD,mBAAmB,GAAIE,WAAmB,IAAwB;EAC7E,MAAMR,IAAI,GAAGS,IAAI,CAACC,KAAK,CAACZ,MAAM,CAACa,IAAI,CAACH,WAAW,EAAE,QAAQ,CAAC,CAACI,QAAQ,CAAC,MAAM,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGb,IAAI,CAACa,WAA0B;EACnD,OAAO;IACLA,WAAW;IACXC,OAAO,EAAEd,IAAI,CAACc,OAAO;IACrBC,WAAW,EAAEf,IAAI,CAACe;EACpB,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugin/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;;AAmHvD,wBAA2E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugin/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;;AAiKvD,wBAA2E"}
@@ -0,0 +1,8 @@
1
+ export interface PodfileMutationResult {
2
+ contents: string;
3
+ changed: boolean;
4
+ missingAnchors: string[];
5
+ }
6
+ declare const mutatePodfileForFreeraspSpm: (contents: string, enabled?: boolean) => PodfileMutationResult;
7
+ export default mutatePodfileForFreeraspSpm;
8
+ //# sourceMappingURL=iosSpm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iosSpm.d.ts","sourceRoot":"","sources":["../../../../plugin/src/iosSpm.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AA2ED,QAAA,MAAM,2BAA2B,aACrB,MAAM,wBAEf,qBAsFF,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const configureIosSpmProperties: (properties: Record<string, string>, spmEnabled: boolean) => Record<string, string>;
2
+ export default configureIosSpmProperties;
3
+ //# sourceMappingURL=iosSpmProperties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iosSpmProperties.d.ts","sourceRoot":"","sources":["../../../../plugin/src/iosSpmProperties.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,yBAAyB,eACjB,OAAO,MAAM,EAAE,MAAM,CAAC,cACtB,OAAO,KAClB,OAAO,MAAM,EAAE,MAAM,CAoBvB,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -2,12 +2,20 @@
2
2
  * Interface representing base build properties configuration.
3
3
  */
4
4
  export interface PluginConfigType {
5
+ ios?: PluginConfigTypeIos;
5
6
  /**
6
7
  * Interface representing available configuration for Android native build properties.
7
8
  * @platform android
8
9
  */
9
10
  android?: PluginConfigTypeAndroid;
10
11
  }
12
+ /** @platform ios */
13
+ export interface PluginConfigTypeIos {
14
+ /**
15
+ * Use Swift Package Manager to deliver TalsecRuntime. Defaults to `true`.
16
+ */
17
+ useSpm?: boolean;
18
+ }
11
19
  /**
12
20
  * Interface representing available configuration for Android native build properties.
13
21
  * @platform android
@@ -1 +1 @@
1
- {"version":3,"file":"pluginConfig.d.ts","sourceRoot":"","sources":["../../../../plugin/src/pluginConfig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;SAEK;IACL,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"pluginConfig.d.ts","sourceRoot":"","sources":["../../../../plugin/src/pluginConfig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAE1B;;;OAGG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED,oBAAoB;AACpB,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;SAEK;IACL,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../../../src/api/methods/native.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,eAAO,MAAM,WAAW,YAAmB,YAAY,KAAG,QAAQ,MAAM,CAEvE,CAAC;AAEF,eAAO,MAAM,cAAc,gBAAuB,MAAM,KAAG,QAAQ,OAAO,CAKzE,CAAC;AAEF,eAAO,MAAM,kBAAkB,WAAY,OAAO,KAAG,QAAQ,MAAM,CAElE,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAAO,QAAQ,OAAO,CAExD,CAAC;AAEF,eAAO,MAAM,eAAe,SAAU,MAAM,KAAG,QAAQ,MAAM,CAE5D,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,QAAQ,MAAM,CAEjD,CAAC;AAEF,eAAO,MAAM,UAAU,gBAAiB,MAAM,KAAG,QAAQ,MAAM,CAO9D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,IAEpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,YAAa,MAAM,KAAG,QAAQ,MAAM,CAEtE,CAAC"}
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../../../src/api/methods/native.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,eAAO,MAAM,WAAW,YAAmB,YAAY,KAAG,QAAQ,MAAM,CAEvE,CAAC;AAEF,eAAO,MAAM,cAAc,gBAAuB,MAAM,KAAG,QAAQ,OAAO,CAKzE,CAAC;AAEF,eAAO,MAAM,kBAAkB,WAAY,OAAO,KAAG,QAAQ,MAAM,CAElE,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAAO,QAAQ,OAAO,CAExD,CAAC;AAEF,eAAO,MAAM,eAAe,SAAU,MAAM,KAAG,QAAQ,MAAM,CAE5D,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,QAAQ,MAAM,CAEjD,CAAC;AAEF,eAAO,MAAM,UAAU,gBAAiB,MAAM,KAAG,QAAQ,MAAM,CAO9D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,IAEpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,YAAa,MAAM,KAAG,QAAQ,MAAM,CAEtE,CAAC"}
@@ -5,25 +5,33 @@ export type TalsecConfig = {
5
5
  isProd?: boolean;
6
6
  killOnBypass?: boolean;
7
7
  };
8
+ export type ScopeType = 'SIDELOADED_ONLY' | 'SIDELOADED_AND_SYSTEM_EXCLUDE_OEM' | 'SIDELOADED_AND_OEM' | 'SIDELOADED_AND_SYSTEM_AND_OEM' | 'ALL';
9
+ export type ReasonMode = 'ALL' | 'HIGHEST_CONFIDENCE';
10
+ export type ScanScope = {
11
+ scopeType: ScopeType;
12
+ trustedInstallSources?: string[];
13
+ };
14
+ export type SuspiciousAppDetectionConfig = {
15
+ packageNames?: string[];
16
+ hashes?: string[];
17
+ requestedPermissions?: string[][];
18
+ grantedPermissions?: string[][];
19
+ scanScope: ScanScope;
20
+ reasonMode: ReasonMode;
21
+ };
8
22
  export type TalsecAndroidConfig = {
9
23
  packageName: string;
10
24
  certificateHashes: string[];
11
25
  supportedAlternativeStores?: string[];
12
- malwareConfig?: TalsecMalwareConfig;
26
+ suspiciousAppDetectionConfig?: SuspiciousAppDetectionConfig;
13
27
  };
14
28
  export type TalsecIosConfig = {
15
29
  appBundleId: string;
16
30
  appTeamId: string;
17
31
  };
18
- export type TalsecMalwareConfig = {
19
- blacklistedHashes?: string[];
20
- blacklistedPackageNames?: string[];
21
- suspiciousPermissions?: string[][];
22
- whitelistedInstallationSources?: string[];
23
- };
24
32
  export type SuspiciousAppInfo = {
25
33
  packageInfo: PackageInfo;
26
- reason: string;
34
+ reasons: string[];
27
35
  permissions?: string[];
28
36
  };
29
37
  export type PackageInfo = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,qBAAqB,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnC,8BAA8B,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,GAAG,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC;IACrB,0BAA0B,CAAC,EAAE,MAAM,GAAG,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,GAAG,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,KAAK,GAAG,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;CAAE,CAAC;AAE3E,MAAM,MAAM,8BAA8B,GAAG;IAC3C,iBAAiB,CAAC,EAAE,MAAM,GAAG,CAAC;CAC/B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { TalsecAndroidConfig, TalsecConfig } from '../types/types';
2
+ export declare const normalizeAndroidConfig: (androidConfig: TalsecAndroidConfig) => TalsecAndroidConfig;
3
+ export declare const withDefaults: (options: TalsecConfig) => TalsecConfig;
4
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,mBAAmB,EACnB,YAAY,EACb,MAAM,gBAAgB,CAAC;AAgBxB,eAAO,MAAM,sBAAsB,kBAClB,mBAAmB,KACjC,mBAUF,CAAC;AAEF,eAAO,MAAM,YAAY,YAAa,YAAY,KAAG,YAKnD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "freerasp-react-native",
3
- "version": "4.5.2",
3
+ "version": "5.1.0",
4
4
  "description": "React Native plugin for improving app security and threat monitoring on Android and iOS mobile devices.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -14,6 +14,7 @@
14
14
  "prettier": "prettier \"**/*.{ts,js}\"",
15
15
  "prepack": "bob build && yarn build:plugin",
16
16
  "build": "bob build",
17
+ "test:plugin": "yarn build:plugin && node plugin/tests/iosSpm.test.js",
17
18
  "example": "yarn --cwd example",
18
19
  "bootstrap": "yarn example && yarn install && yarn example pods",
19
20
  "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build",
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  const config_plugins_1 = require("@expo/config-plugins");
7
+ const fs_1 = require("fs");
8
+ const path_1 = require("path");
9
+ const iosSpm_1 = __importDefault(require("./iosSpm"));
10
+ const iosSpmProperties_1 = __importDefault(require("./iosSpmProperties"));
4
11
  const { createBuildGradlePropsConfigPlugin } = config_plugins_1.AndroidConfig.BuildProperties;
5
12
  const urlFreerasp = 'https://europe-west3-maven.pkg.dev/talsec-artifact-repository/freerasp';
6
13
  const urlJitpack = 'https://www.jitpack.io';
@@ -71,10 +78,41 @@ const withAndroidR8Version = (expoConfig, props) => {
71
78
  return config;
72
79
  });
73
80
  };
81
+ const withFreeraspIosFrameworks = (config, spmEnabled) => {
82
+ return (0, config_plugins_1.withPodfileProperties)(config, (cfg) => {
83
+ (0, iosSpmProperties_1.default)(cfg.modResults, spmEnabled);
84
+ return cfg;
85
+ });
86
+ };
87
+ const withFreeraspIosPodfile = (config, props) => {
88
+ return (0, config_plugins_1.withDangerousMod)(config, [
89
+ 'ios',
90
+ (cfg) => {
91
+ const podfilePath = (0, path_1.join)(cfg.modRequest.platformProjectRoot, 'Podfile');
92
+ const contents = (0, fs_1.readFileSync)(podfilePath, 'utf-8');
93
+ const result = (0, iosSpm_1.default)(contents, props?.spmEnabled ?? true);
94
+ if (result.missingAnchors.length > 0) {
95
+ config_plugins_1.WarningAggregator.addWarningIOS('freerasp-react-native', 'Could not configure TalsecRuntime delivery because the Podfile is missing: ' +
96
+ result.missingAnchors.join(', '));
97
+ }
98
+ else if (result.changed) {
99
+ (0, fs_1.writeFileSync)(podfilePath, result.contents);
100
+ }
101
+ return cfg;
102
+ },
103
+ ]);
104
+ };
105
+ const withRnTalsecIos = (config, props) => {
106
+ const spmEnabled = props?.ios?.useSpm !== false && process.env.FREERASP_USE_SPM !== '0';
107
+ config = withFreeraspIosFrameworks(config, spmEnabled);
108
+ config = withFreeraspIosPodfile(config, { spmEnabled });
109
+ return config;
110
+ };
74
111
  const withRnTalsecApp = (config, props) => {
75
112
  config = withBuildscriptDependency(config);
76
113
  config = withAndroidMinSdkVersion(config, props);
77
114
  config = withAndroidR8Version(config, props);
115
+ config = withRnTalsecIos(config, props);
78
116
  return config;
79
117
  };
80
118
  let pkg = {
@@ -0,0 +1,7 @@
1
+ export interface PodfileMutationResult {
2
+ contents: string;
3
+ changed: boolean;
4
+ missingAnchors: string[];
5
+ }
6
+ declare const mutatePodfileForFreeraspSpm: (contents: string, enabled?: boolean) => PodfileMutationResult;
7
+ export default mutatePodfileForFreeraspSpm;