@getquip/expo-nordic-dfu 0.2.0 → 2.0.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 (145) hide show
  1. package/.eslintrc.js +2 -23
  2. package/.github/CODEOWNERS +1 -1
  3. package/.github/workflows/audit.yml +3 -6
  4. package/.github/workflows/conf-traffic.yml +102 -0
  5. package/.github/workflows/lint.yml +11 -22
  6. package/.github/workflows/test.yml +4 -8
  7. package/.nvmrc +1 -1
  8. package/.prettierignore +1 -0
  9. package/README.md +3 -5
  10. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/results.bin +1 -0
  11. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/BuildConfig.dex +0 -0
  12. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/DfuService.dex +0 -0
  13. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$1$1.dex +0 -0
  14. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$1$2.dex +0 -0
  15. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$1.dex +0 -0
  16. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$2.dex +0 -0
  17. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$3.dex +0 -0
  18. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$1.dex +0 -0
  19. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$2.dex +0 -0
  20. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$3.dex +0 -0
  21. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$4.dex +0 -0
  22. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$5.dex +0 -0
  23. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$6.dex +0 -0
  24. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$7.dex +0 -0
  25. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$8.dex +0 -0
  26. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule$dfuProgressListener$1.dex +0 -0
  27. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/ExpoNordicDfuModule.dex +0 -0
  28. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/getquip/nordic/NotificationActivity.dex +0 -0
  29. package/android/build/.transforms/576c59059c5ad48575c7ca8b06b65f9b/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  30. package/android/build/.transforms/758c7658fec337f3b4bcf2d457b86828/results.bin +1 -0
  31. package/android/build/.transforms/758c7658fec337f3b4bcf2d457b86828/transformed/classes/classes_dex/classes.dex +0 -0
  32. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  33. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
  34. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +1 -1
  35. package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +2 -0
  36. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +5 -5
  37. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/getquip-expo-nordic-dfu_debug.kotlin_module +0 -0
  38. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/DfuService.class +0 -0
  39. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$1$1.class +0 -0
  40. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$1$2.class +0 -0
  41. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$1.class +0 -0
  42. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$2.class +0 -0
  43. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$3.class +0 -0
  44. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  45. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  46. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  47. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  48. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$5.class +0 -0
  49. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$6.class +0 -0
  50. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$7.class +0 -0
  51. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$8.class +0 -0
  52. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule$dfuProgressListener$1.class +0 -0
  53. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/ExpoNordicDfuModule.class +0 -0
  54. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/getquip/nordic/NotificationActivity.class +0 -0
  55. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  56. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  57. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  58. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  59. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  60. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  61. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  62. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  63. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  64. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  65. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  66. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  67. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  68. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  69. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  70. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  71. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  72. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  73. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  74. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  75. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  76. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  77. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  78. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  79. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  80. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  81. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  82. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  83. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  84. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  85. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  86. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  87. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  88. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  89. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  90. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  91. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  92. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  93. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  94. package/android/build/tmp/kotlin-classes/debug/META-INF/getquip-expo-nordic-dfu_debug.kotlin_module +0 -0
  95. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/DfuService.class +0 -0
  96. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$1$1.class +0 -0
  97. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$1$2.class +0 -0
  98. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$1.class +0 -0
  99. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$2.class +0 -0
  100. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunction$3.class +0 -0
  101. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  102. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  103. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  104. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  105. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$5.class +0 -0
  106. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$6.class +0 -0
  107. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$7.class +0 -0
  108. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$definition$lambda$10$$inlined$AsyncFunctionWithPromise$8.class +0 -0
  109. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule$dfuProgressListener$1.class +0 -0
  110. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/ExpoNordicDfuModule.class +0 -0
  111. package/android/build/tmp/kotlin-classes/debug/com/getquip/nordic/NotificationActivity.class +0 -0
  112. package/eslint.config.mjs +34 -0
  113. package/example/.nvmrc +1 -1
  114. package/example/App.tsx +6 -4
  115. package/example/android/app/build.gradle +16 -10
  116. package/example/android/app/src/debugOptimized/AndroidManifest.xml +7 -0
  117. package/example/android/app/src/main/AndroidManifest.xml +1 -7
  118. package/example/android/app/src/main/java/expo/modules/nordicdfu/example/MainApplication.kt +15 -16
  119. package/example/android/app/src/main/res/values/styles.xml +2 -8
  120. package/example/android/build.gradle +17 -34
  121. package/example/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  122. package/example/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  123. package/example/android/gradle.properties +10 -1
  124. package/example/android/gradlew +3 -4
  125. package/example/android/gradlew.bat +2 -2
  126. package/example/android/settings.gradle +25 -24
  127. package/example/ios/Podfile +14 -20
  128. package/example/ios/Podfile.lock +909 -730
  129. package/example/ios/exponordicdfuexample/AppDelegate.swift +70 -0
  130. package/example/ios/exponordicdfuexample/Info.plist +2 -0
  131. package/example/ios/exponordicdfuexample/SplashScreen.storyboard +8 -4
  132. package/example/ios/exponordicdfuexample/exponordicdfuexample-Bridging-Header.h +1 -1
  133. package/example/ios/exponordicdfuexample.xcodeproj/project.pbxproj +88 -86
  134. package/example/package-lock.json +1930 -4350
  135. package/example/package.json +13 -7
  136. package/ios/ExpoNordicDfuModule.swift +4 -2
  137. package/package.json +18 -14
  138. package/example/ios/exponordicdfuexample/AppDelegate.h +0 -7
  139. package/example/ios/exponordicdfuexample/AppDelegate.mm +0 -62
  140. package/example/ios/exponordicdfuexample/main.m +0 -10
  141. package/example/ios/exponordicdfuexample/noop-file.swift +0 -4
  142. /package/example/ios/exponordicdfuexample/Images.xcassets/{SplashScreenLogo.imageset → SplashScreenLegacy.imageset}/Contents.json +0 -0
  143. /package/example/ios/exponordicdfuexample/Images.xcassets/{SplashScreenLogo.imageset → SplashScreenLegacy.imageset}/image.png +0 -0
  144. /package/example/ios/exponordicdfuexample/Images.xcassets/{SplashScreenLogo.imageset → SplashScreenLegacy.imageset}/image@2x.png +0 -0
  145. /package/example/ios/exponordicdfuexample/Images.xcassets/{SplashScreenLogo.imageset → SplashScreenLegacy.imageset}/image@3x.png +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-nordic-dfu-example",
3
- "version": "1.0.0",
3
+ "version": "2.0.0",
4
4
  "main": "index.ts",
5
5
  "scripts": {
6
6
  "start": "expo start",
@@ -9,19 +9,25 @@
9
9
  "web": "expo start --web"
10
10
  },
11
11
  "dependencies": {
12
- "expo": "~52.0.46",
13
- "react": "~18.3.1",
14
- "react-native": "~0.76.9",
12
+ "expo": "54.0.21",
13
+ "expo-document-picker": "^14.0.7",
14
+ "expo-file-system": "^19.0.16",
15
+ "react": "19.1.0",
16
+ "react-native": "0.81.5",
15
17
  "react-native-ble-manager": "^12.1.4",
16
18
  "react-native-paper": "^5.13.3",
17
- "expo-document-picker": "~13.0.3",
18
- "expo-file-system": "~18.0.12"
19
+ "react-native-safe-area-context": "^5.6.1"
19
20
  },
20
21
  "devDependencies": {
21
22
  "@babel/core": "^7.25.2",
22
- "@types/react": "~18.3.12",
23
+ "@types/react": "~19.1.10",
24
+ "expo-doctor": "^1.17.9",
23
25
  "typescript": "^5.3.3"
24
26
  },
27
+ "engines": {
28
+ "node": ">=20.19.4",
29
+ "npm": ">=10.8"
30
+ },
25
31
  "private": true,
26
32
  "expo": {
27
33
  "autolinking": {
@@ -49,8 +49,10 @@ public class ExpoNordicDfuModule: Module, DFUProgressDelegate, DFUServiceDelegat
49
49
 
50
50
  Self.logger.info("Starting DFU on device \(uuid)")
51
51
 
52
- let path = fileUri.replacingOccurrences(of: "file://", with: "")
53
- let url = URL(fileURLWithPath: path)
52
+ let filePath = fileUri.replacingOccurrences(of: "file://", with: "")
53
+ // If the file path contains percent encoding, URL will fail to parse it correctly.
54
+ let decodedPath = filePath.removingPercentEncoding ?? filePath
55
+ let url = URL(fileURLWithPath: decodedPath)
54
56
  let firmware = try DFUFirmware(urlToZipFile: url)
55
57
  let initiator = DFUServiceInitiator().with(firmware: firmware)
56
58
  initiator.logger = self
package/package.json CHANGED
@@ -5,16 +5,20 @@
5
5
  },
6
6
  "description": "Nordic DFU for Expo",
7
7
  "devDependencies": {
8
- "@types/react": "~18.3.12",
9
- "eslint-config-expo": "~8.0.1",
8
+ "@types/react": "~19.1.10",
9
+ "eslint-config-expo": "~10.0.0",
10
10
  "eslint-config-prettier": "^10.0.1",
11
- "eslint-plugin-jest": "^28.11.0",
12
- "eslint-plugin-prettier": "^5.2.3",
13
- "expo": "~52.0.46",
14
- "expo-doctor": "^1.12.5",
15
- "expo-module-scripts": "^4.0.5",
11
+ "eslint-plugin-jest": "^29.0.1",
12
+ "eslint-plugin-prettier": "^5.5.4",
13
+ "expo": "54.0.21",
14
+ "expo-doctor": "^1.17.9",
15
+ "expo-module-scripts": "^5.0.7",
16
16
  "prettier": "^3.4.2",
17
- "react-native": "^0.76.9"
17
+ "react-native": "0.81.5"
18
+ },
19
+ "engines": {
20
+ "node": ">=20.19.4",
21
+ "npm": ">=10.8"
18
22
  },
19
23
  "expo-module": {
20
24
  "platforms": [
@@ -36,9 +40,9 @@
36
40
  "main": "build/index.js",
37
41
  "name": "@getquip/expo-nordic-dfu",
38
42
  "peerDependencies": {
39
- "expo": "^52.0.0",
40
- "react": "^18.0.0",
41
- "react-native": "^0.76.0"
43
+ "expo": "^54.0.0",
44
+ "react": "^19.1.0",
45
+ "react-native": "^0.81.4"
42
46
  },
43
47
  "publishConfig": {
44
48
  "access": "public"
@@ -56,8 +60,8 @@
56
60
  "build": "expo-module build",
57
61
  "clean": "expo-module clean",
58
62
  "expo-module": "expo-module",
59
- "eslint:check": "eslint . --max-warnings 0",
60
- "eslint:fix": "eslint . --fix",
63
+ "eslint:check": "eslint . --config eslint.config.mjs --max-warnings 0",
64
+ "eslint:fix": "eslint . --config eslint.config.mjs --fix",
61
65
  "open:android": "open -a \"Android Studio\" example/android",
62
66
  "open:ios": "xed example/ios",
63
67
  "prettier:check": "prettier --config .prettierrc --check '**/*.{ts,tsx,js,jsx}'",
@@ -68,5 +72,5 @@
68
72
  },
69
73
  "types": "build/index.d.ts",
70
74
  "url": "https://github.com/getquip/expo-nordic-dfu",
71
- "version": "0.2.0"
75
+ "version": "2.0.0"
72
76
  }
@@ -1,7 +0,0 @@
1
- #import <RCTAppDelegate.h>
2
- #import <UIKit/UIKit.h>
3
- #import <Expo/Expo.h>
4
-
5
- @interface AppDelegate : EXAppDelegateWrapper
6
-
7
- @end
@@ -1,62 +0,0 @@
1
- #import "AppDelegate.h"
2
-
3
- #import <React/RCTBundleURLProvider.h>
4
- #import <React/RCTLinkingManager.h>
5
-
6
- @implementation AppDelegate
7
-
8
- - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
9
- {
10
- self.moduleName = @"main";
11
-
12
- // You can add your custom initial props in the dictionary below.
13
- // They will be passed down to the ViewController used by React Native.
14
- self.initialProps = @{};
15
-
16
- return [super application:application didFinishLaunchingWithOptions:launchOptions];
17
- }
18
-
19
- - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
20
- {
21
- return [self bundleURL];
22
- }
23
-
24
- - (NSURL *)bundleURL
25
- {
26
- #if DEBUG
27
- return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@".expo/.virtual-metro-entry"];
28
- #else
29
- return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
30
- #endif
31
- }
32
-
33
- // Linking API
34
- - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
35
- return [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options];
36
- }
37
-
38
- // Universal Links
39
- - (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
40
- BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];
41
- return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result;
42
- }
43
-
44
- // Explicitly define remote notification delegates to ensure compatibility with some third-party libraries
45
- - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
46
- {
47
- return [super application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
48
- }
49
-
50
- // Explicitly define remote notification delegates to ensure compatibility with some third-party libraries
51
- - (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
52
- {
53
- return [super application:application didFailToRegisterForRemoteNotificationsWithError:error];
54
- }
55
-
56
- // Explicitly define remote notification delegates to ensure compatibility with some third-party libraries
57
- - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
58
- {
59
- return [super application:application didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
60
- }
61
-
62
- @end
@@ -1,10 +0,0 @@
1
- #import <UIKit/UIKit.h>
2
-
3
- #import "AppDelegate.h"
4
-
5
- int main(int argc, char * argv[]) {
6
- @autoreleasepool {
7
- return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
8
- }
9
- }
10
-
@@ -1,4 +0,0 @@
1
- //
2
- // @generated
3
- // A blank Swift file must be created for native modules with Swift files to work correctly.
4
- //