expo-sqlite 16.0.9-canary-20251023-4c86f95 → 16.0.9

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 (50) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/android/build.gradle +3 -3
  3. package/build/ExpoSQLite.web.d.ts.map +1 -1
  4. package/build/ExpoSQLite.web.js +1 -2
  5. package/build/ExpoSQLite.web.js.map +1 -1
  6. package/build/pathUtils.js +1 -1
  7. package/build/pathUtils.js.map +1 -1
  8. package/expo-module.config.json +1 -1
  9. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.aar +0 -0
  10. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.aar.md5 +1 -0
  11. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.aar.sha1 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.aar.sha256 +1 -0
  13. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.aar.sha512 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.module → 16.0.9/expo.modules.sqlite-16.0.9.module} +18 -18
  15. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.module.md5 +1 -0
  16. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.module.sha1 +1 -0
  17. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.module.sha256 +1 -0
  18. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.module.sha512 +1 -0
  19. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.pom → 16.0.9/expo.modules.sqlite-16.0.9.pom} +1 -1
  20. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.pom.md5 +1 -0
  21. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.pom.sha1 +1 -0
  22. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.pom.sha256 +1 -0
  23. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9/expo.modules.sqlite-16.0.9.pom.sha512 +1 -0
  24. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/maven-metadata.xml +4 -4
  25. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/maven-metadata.xml.md5 +1 -1
  26. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/maven-metadata.xml.sha1 +1 -1
  27. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/maven-metadata.xml.sha256 +1 -1
  28. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/maven-metadata.xml.sha512 +1 -1
  29. package/package.json +5 -4
  30. package/src/ExpoSQLite.web.ts +1 -2
  31. package/src/pathUtils.ts +1 -1
  32. package/web/SQLiteModule.node.ts +183 -0
  33. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar +0 -0
  34. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar.md5 +0 -1
  35. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar.sha1 +0 -1
  36. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar.sha256 +0 -1
  37. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar.sha512 +0 -1
  38. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.module.md5 +0 -1
  39. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.module.sha1 +0 -1
  40. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.module.sha256 +0 -1
  41. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.module.sha512 +0 -1
  42. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.pom.md5 +0 -1
  43. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.pom.sha1 +0 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.pom.sha256 +0 -1
  45. package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.pom.sha512 +0 -1
  46. /package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar → 16.0.9/expo.modules.sqlite-16.0.9-sources.jar} +0 -0
  47. /package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar.md5 → 16.0.9/expo.modules.sqlite-16.0.9-sources.jar.md5} +0 -0
  48. /package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar.sha1 → 16.0.9/expo.modules.sqlite-16.0.9-sources.jar.sha1} +0 -0
  49. /package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar.sha256 → 16.0.9/expo.modules.sqlite-16.0.9-sources.jar.sha256} +0 -0
  50. /package/local-maven-repo/host/exp/exponent/expo.modules.sqlite/{16.0.9-canary-20251023-4c86f95/expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar.sha512 → 16.0.9/expo.modules.sqlite-16.0.9-sources.jar.sha512} +0 -0
package/CHANGELOG.md CHANGED
@@ -10,6 +10,14 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 16.0.9 — 2025-11-03
14
+
15
+ ### 🐛 Bug fixes
16
+
17
+ - Throwing error when `ExpoSQLite.defaultDatabaseDirectory` returns undefined. ([#40680](https://github.com/expo/expo/pull/40680) by [@kudo](https://github.com/kudo))
18
+ - Fixed node runtime bundling error on web. ([#40739](https://github.com/expo/expo/pull/40739) by [@kudo](https://github.com/kudo))
19
+ - Fixed Android 16kb page size issue when enabling `useSQLCipher`. ([#40781](https://github.com/expo/expo/pull/40781) by [@ronickg](https://github.com/ronickg))
20
+
13
21
  ## 16.0.8 — 2025-09-10
14
22
 
15
23
  ### 🐛 Bug fixes
@@ -46,13 +46,13 @@ def reactNativeArchitectures() {
46
46
  }
47
47
 
48
48
  group = 'host.exp.exponent'
49
- version = '16.0.9-canary-20251023-4c86f95'
49
+ version = '16.0.9'
50
50
 
51
51
  android {
52
52
  namespace "expo.modules.sqlite"
53
53
  defaultConfig {
54
54
  versionCode 18
55
- versionName "16.0.9-canary-20251023-4c86f95"
55
+ versionName "16.0.9"
56
56
  buildConfigField "boolean", "USE_LIBSQL", project.ext.USE_LIBSQL.toString()
57
57
  buildConfigField "boolean", "WITH_SQLITE_VEC", project.ext.WITH_SQLITE_VEC.toString()
58
58
 
@@ -94,7 +94,7 @@ android {
94
94
 
95
95
  dependencies {
96
96
  if (project.ext.USE_SQLCIPHER) {
97
- compileOnly 'io.github.ronickg:openssl:3.3.2'
97
+ compileOnly 'io.github.ronickg:openssl:3.3.2-1'
98
98
  }
99
99
  compileOnly 'com.facebook.fbjni:fbjni:0.3.0'
100
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExpoSQLite.web.d.ts","sourceRoot":"","sources":["../src/ExpoSQLite.web.ts"],"names":[],"mappings":"AAEA,QAAA,IAAI,UAAU,KAAA,CAAC;AAWf,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ExpoSQLite.web.d.ts","sourceRoot":"","sources":["../src/ExpoSQLite.web.ts"],"names":[],"mappings":"AAEA,QAAA,IAAI,UAAU,KAAA,CAAC;AAUf,eAAe,UAAU,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { requireNativeModule } from 'expo';
2
2
  let ExpoSQLite;
3
3
  if (typeof window === 'undefined') {
4
- // expo-sqlite is not supported on server runtime.
5
- ExpoSQLite = {};
4
+ ExpoSQLite = require('../web/SQLiteModule.node').default;
6
5
  }
7
6
  else if (typeof globalThis.ExpoDomWebView !== 'undefined') {
8
7
  ExpoSQLite = requireNativeModule('ExpoSQLite');
@@ -1 +1 @@
1
- {"version":3,"file":"ExpoSQLite.web.js","sourceRoot":"","sources":["../src/ExpoSQLite.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAE3C,IAAI,UAAU,CAAC;AAEf,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IAClC,kDAAkD;IAClD,UAAU,GAAG,EAAE,CAAC;AAClB,CAAC;KAAM,IAAI,OAAO,UAAU,CAAC,cAAc,KAAK,WAAW,EAAE,CAAC;IAC5D,UAAU,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;AACjD,CAAC;KAAM,CAAC;IACN,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;AACtD,CAAC;AAED,eAAe,UAAU,CAAC","sourcesContent":["import { requireNativeModule } from 'expo';\n\nlet ExpoSQLite;\n\nif (typeof window === 'undefined') {\n // expo-sqlite is not supported on server runtime.\n ExpoSQLite = {};\n} else if (typeof globalThis.ExpoDomWebView !== 'undefined') {\n ExpoSQLite = requireNativeModule('ExpoSQLite');\n} else {\n ExpoSQLite = require('../web/SQLiteModule').default;\n}\n\nexport default ExpoSQLite;\n"]}
1
+ {"version":3,"file":"ExpoSQLite.web.js","sourceRoot":"","sources":["../src/ExpoSQLite.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAE3C,IAAI,UAAU,CAAC;AAEf,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IAClC,UAAU,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC,OAAO,CAAC;AAC3D,CAAC;KAAM,IAAI,OAAO,UAAU,CAAC,cAAc,KAAK,WAAW,EAAE,CAAC;IAC5D,UAAU,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;AACjD,CAAC;KAAM,CAAC;IACN,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;AACtD,CAAC;AAED,eAAe,UAAU,CAAC","sourcesContent":["import { requireNativeModule } from 'expo';\n\nlet ExpoSQLite;\n\nif (typeof window === 'undefined') {\n ExpoSQLite = require('../web/SQLiteModule.node').default;\n} else if (typeof globalThis.ExpoDomWebView !== 'undefined') {\n ExpoSQLite = requireNativeModule('ExpoSQLite');\n} else {\n ExpoSQLite = require('../web/SQLiteModule').default;\n}\n\nexport default ExpoSQLite;\n"]}
@@ -6,7 +6,7 @@ import ExpoSQLite from './ExpoSQLite';
6
6
  */
7
7
  function resolveDbDirectory(directory) {
8
8
  const resolvedDirectory = directory ?? ExpoSQLite.defaultDatabaseDirectory;
9
- if (resolvedDirectory === null) {
9
+ if (resolvedDirectory == null) {
10
10
  throw new Error('Both provided directory and defaultDatabaseDirectory are null.');
11
11
  }
12
12
  return resolvedDirectory;
@@ -1 +1 @@
1
- {"version":3,"file":"pathUtils.js","sourceRoot":"","sources":["../src/pathUtils.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,SAA6B;IACvD,MAAM,iBAAiB,GAAG,SAAS,IAAI,UAAU,CAAC,wBAAwB,CAAC;IAC3E,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,YAAoB,EAAE,SAAkB;IACzE,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC;IACrD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAExD,SAAS,mBAAmB,CAAC,IAAY;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,SAAS,kBAAkB,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;AACzF,CAAC","sourcesContent":["import ExpoSQLite from './ExpoSQLite';\n\n/**\n * Resolves the database directory from the given directory or the default directory.\n *\n * @hidden\n */\nfunction resolveDbDirectory(directory: string | undefined): string {\n const resolvedDirectory = directory ?? ExpoSQLite.defaultDatabaseDirectory;\n if (resolvedDirectory === null) {\n throw new Error('Both provided directory and defaultDatabaseDirectory are null.');\n }\n return resolvedDirectory;\n}\n\n/**\n * Creates a normalized database path by combining the directory and database name.\n *\n * Ensures the directory does not end with a trailing slash and the database name\n * does not start with a leading slash, preventing redundant slashes in the final path.\n *\n * @hidden\n */\nexport function createDatabasePath(databaseName: string, directory?: string): string {\n if (databaseName === ':memory:') return databaseName;\n const resolvedDirectory = resolveDbDirectory(directory);\n\n function removeTrailingSlash(path: string): string {\n return path.replace(/\\/*$/, '');\n }\n function removeLeadingSlash(path: string): string {\n return path.replace(/^\\/+/, '');\n }\n\n return `${removeTrailingSlash(resolvedDirectory)}/${removeLeadingSlash(databaseName)}`;\n}\n"]}
1
+ {"version":3,"file":"pathUtils.js","sourceRoot":"","sources":["../src/pathUtils.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,SAA6B;IACvD,MAAM,iBAAiB,GAAG,SAAS,IAAI,UAAU,CAAC,wBAAwB,CAAC;IAC3E,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,YAAoB,EAAE,SAAkB;IACzE,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC;IACrD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAExD,SAAS,mBAAmB,CAAC,IAAY;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,SAAS,kBAAkB,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;AACzF,CAAC","sourcesContent":["import ExpoSQLite from './ExpoSQLite';\n\n/**\n * Resolves the database directory from the given directory or the default directory.\n *\n * @hidden\n */\nfunction resolveDbDirectory(directory: string | undefined): string {\n const resolvedDirectory = directory ?? ExpoSQLite.defaultDatabaseDirectory;\n if (resolvedDirectory == null) {\n throw new Error('Both provided directory and defaultDatabaseDirectory are null.');\n }\n return resolvedDirectory;\n}\n\n/**\n * Creates a normalized database path by combining the directory and database name.\n *\n * Ensures the directory does not end with a trailing slash and the database name\n * does not start with a leading slash, preventing redundant slashes in the final path.\n *\n * @hidden\n */\nexport function createDatabasePath(databaseName: string, directory?: string): string {\n if (databaseName === ':memory:') return databaseName;\n const resolvedDirectory = resolveDbDirectory(directory);\n\n function removeTrailingSlash(path: string): string {\n return path.replace(/\\/*$/, '');\n }\n function removeLeadingSlash(path: string): string {\n return path.replace(/^\\/+/, '');\n }\n\n return `${removeTrailingSlash(resolvedDirectory)}/${removeLeadingSlash(databaseName)}`;\n}\n"]}
@@ -9,7 +9,7 @@
9
9
  "publication": {
10
10
  "groupId": "host.exp.exponent",
11
11
  "artifactId": "expo.modules.sqlite",
12
- "version": "16.0.9-canary-20251023-4c86f95",
12
+ "version": "16.0.9",
13
13
  "repository": "local-maven-repo"
14
14
  }
15
15
  }
@@ -0,0 +1 @@
1
+ 18d21616e5346f5be14f33f3adff444df1de8a6ab86dae235377033da8ae3f1c
@@ -0,0 +1 @@
1
+ 3bcb9e803e28cbfae22c222ffaf66a86f27b13faf48c102a1d9846b49aed54d57101f8aeef447dc34aed94f8aabc1980de5226ab57cfd003922747745e4b68f0
@@ -3,14 +3,14 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.sqlite",
6
- "version": "16.0.9-canary-20251023-4c86f95",
6
+ "version": "16.0.9",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
10
10
  },
11
11
  "createdBy": {
12
12
  "gradle": {
13
- "version": "9.0.0"
13
+ "version": "8.14.3"
14
14
  }
15
15
  },
16
16
  "variants": [
@@ -24,13 +24,13 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar",
28
- "url": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar",
29
- "size": 3782678,
30
- "sha512": "e20a679f28be9358cc61b4e502c3dc90d79f485981468fc11dbce5aff9125c26d3237d42d3f291d9225c12e406a3b5858722375d2976ab96d6403d162d30d20e",
31
- "sha256": "5225ddf54b86be8b32d8c521c6965185b5fdb4995d7d47be5d4c4b5c73c3e253",
32
- "sha1": "1014280997999953ef4012c42d073383be249006",
33
- "md5": "562d1c2dae11640fe0e5b54a957184ff"
27
+ "name": "expo.modules.sqlite-16.0.9.aar",
28
+ "url": "expo.modules.sqlite-16.0.9.aar",
29
+ "size": 3782700,
30
+ "sha512": "3bcb9e803e28cbfae22c222ffaf66a86f27b13faf48c102a1d9846b49aed54d57101f8aeef447dc34aed94f8aabc1980de5226ab57cfd003922747745e4b68f0",
31
+ "sha256": "18d21616e5346f5be14f33f3adff444df1de8a6ab86dae235377033da8ae3f1c",
32
+ "sha1": "1226a99e3c739440be935cad0d16479f3a0dc8c8",
33
+ "md5": "e1ce52e84d05a7e2e44af106bb7a9a3e"
34
34
  }
35
35
  ]
36
36
  },
@@ -53,13 +53,13 @@
53
53
  ],
54
54
  "files": [
55
55
  {
56
- "name": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar",
57
- "url": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95.aar",
58
- "size": 3782678,
59
- "sha512": "e20a679f28be9358cc61b4e502c3dc90d79f485981468fc11dbce5aff9125c26d3237d42d3f291d9225c12e406a3b5858722375d2976ab96d6403d162d30d20e",
60
- "sha256": "5225ddf54b86be8b32d8c521c6965185b5fdb4995d7d47be5d4c4b5c73c3e253",
61
- "sha1": "1014280997999953ef4012c42d073383be249006",
62
- "md5": "562d1c2dae11640fe0e5b54a957184ff"
56
+ "name": "expo.modules.sqlite-16.0.9.aar",
57
+ "url": "expo.modules.sqlite-16.0.9.aar",
58
+ "size": 3782700,
59
+ "sha512": "3bcb9e803e28cbfae22c222ffaf66a86f27b13faf48c102a1d9846b49aed54d57101f8aeef447dc34aed94f8aabc1980de5226ab57cfd003922747745e4b68f0",
60
+ "sha256": "18d21616e5346f5be14f33f3adff444df1de8a6ab86dae235377033da8ae3f1c",
61
+ "sha1": "1226a99e3c739440be935cad0d16479f3a0dc8c8",
62
+ "md5": "e1ce52e84d05a7e2e44af106bb7a9a3e"
63
63
  }
64
64
  ]
65
65
  },
@@ -73,8 +73,8 @@
73
73
  },
74
74
  "files": [
75
75
  {
76
- "name": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar",
77
- "url": "expo.modules.sqlite-16.0.9-canary-20251023-4c86f95-sources.jar",
76
+ "name": "expo.modules.sqlite-16.0.9-sources.jar",
77
+ "url": "expo.modules.sqlite-16.0.9-sources.jar",
78
78
  "size": 11312,
79
79
  "sha512": "c7d4693af5a770e04fa7f643fc207e1739fc6e5325ffbf21a224e65ca10d0c88b8d903f67daa087cc146eea06621cb22ff96ce0068218ae11d65604fda221566",
80
80
  "sha256": "a52b549e72cc8aea01cca905a5fe37290055eee4527e1d3088a0152d7c575019",
@@ -0,0 +1 @@
1
+ c9bef86b8abc67cb0e730f2101a617df3ab67c4e73384985c62d2c914fd4eb30
@@ -0,0 +1 @@
1
+ c84e955340752c9e5269c4b2abf769b6ed3693605931598bc64cf093f55bae63fc46e1a27c8fca21f9a74f61932157d13d916ea026ddb133ef9b5c5e000dac0e
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>host.exp.exponent</groupId>
11
11
  <artifactId>expo.modules.sqlite</artifactId>
12
- <version>16.0.9-canary-20251023-4c86f95</version>
12
+ <version>16.0.9</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.sqlite</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 9811ce4a288b20c44d51d8ddece0e3ba81aee7cf26afac4686143c7d3032fd09
@@ -0,0 +1 @@
1
+ 933a1f718b2c1ffbdf998155738624f8618899183b212208754731a2cfe83445f0fb2436a66e92620ed6c87e33c47f8d65f9fe634a57e7ebe61cef6cc518f1dc
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.sqlite</artifactId>
5
5
  <versioning>
6
- <latest>16.0.9-canary-20251023-4c86f95</latest>
7
- <release>16.0.9-canary-20251023-4c86f95</release>
6
+ <latest>16.0.9</latest>
7
+ <release>16.0.9</release>
8
8
  <versions>
9
- <version>16.0.9-canary-20251023-4c86f95</version>
9
+ <version>16.0.9</version>
10
10
  </versions>
11
- <lastUpdated>20251023075240</lastUpdated>
11
+ <lastUpdated>20251103211423</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 73bb5070605d030d1f8826a0b0aace11
1
+ b69b99e0e477e9d8c12ec9407d172c15
@@ -1 +1 @@
1
- 95dd92383d882612daf535f98cb7fa0babcfe0fb
1
+ 3d89fff5add9ead4b462c1262dc10245077e260e
@@ -1 +1 @@
1
- c2285978a712fa3ccd0dd2ad6c4cfd3c7a9f8a8737d4374dccd69aea14def095
1
+ d49e81a70bfe481263c071be2f3bff1abc5e2b4afdca406b4550b856734b08a2
@@ -1 +1 @@
1
- d3058881628c400db33cf7fc7538a0075d18c104720c378f15520f4c3e3da26fcad47cf20fc4f9b544399c06fe00669cf62af6b2b1719abb471f2c150279eb6e
1
+ a82acb8aa705b5a3edf6c8089391b0e768fbe0a60711b8bf7cef09411147ab8c8ef7f15a49d727d094121cd4c4051c396bfed7cf2719fdb6af6455583fac65e3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-sqlite",
3
- "version": "16.0.9-canary-20251023-4c86f95",
3
+ "version": "16.0.9",
4
4
  "description": "Provides access to a database using SQLite (https://www.sqlite.org/). The database is persisted across restarts of your app.",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -60,12 +60,13 @@
60
60
  "@testing-library/react-native": "^13.2.0",
61
61
  "@types/better-sqlite3": "^7.6.6",
62
62
  "better-sqlite3": "^11.6.0",
63
- "expo-module-scripts": "5.0.8-canary-20251023-4c86f95",
63
+ "expo-module-scripts": "^5.0.7",
64
64
  "react-error-boundary": "^4.0.11"
65
65
  },
66
66
  "peerDependencies": {
67
- "expo": "55.0.0-canary-20251023-4c86f95",
67
+ "expo": "*",
68
68
  "react": "*",
69
69
  "react-native": "*"
70
- }
70
+ },
71
+ "gitHead": "1bba12a43e14a442f2cf1c73fe21968e0ef097c1"
71
72
  }
@@ -3,8 +3,7 @@ import { requireNativeModule } from 'expo';
3
3
  let ExpoSQLite;
4
4
 
5
5
  if (typeof window === 'undefined') {
6
- // expo-sqlite is not supported on server runtime.
7
- ExpoSQLite = {};
6
+ ExpoSQLite = require('../web/SQLiteModule.node').default;
8
7
  } else if (typeof globalThis.ExpoDomWebView !== 'undefined') {
9
8
  ExpoSQLite = requireNativeModule('ExpoSQLite');
10
9
  } else {
package/src/pathUtils.ts CHANGED
@@ -7,7 +7,7 @@ import ExpoSQLite from './ExpoSQLite';
7
7
  */
8
8
  function resolveDbDirectory(directory: string | undefined): string {
9
9
  const resolvedDirectory = directory ?? ExpoSQLite.defaultDatabaseDirectory;
10
- if (resolvedDirectory === null) {
10
+ if (resolvedDirectory == null) {
11
11
  throw new Error('Both provided directory and defaultDatabaseDirectory are null.');
12
12
  }
13
13
  return resolvedDirectory;
@@ -0,0 +1,183 @@
1
+ // expo-sqlite is not supported on server runtime, this file contains a dummy implementation for the server runtime
2
+
3
+ import { registerWebModule, NativeModule } from 'expo';
4
+
5
+ import { type SQLiteOpenOptions } from '../src/NativeDatabase';
6
+ import { type Changeset } from '../src/NativeSession';
7
+ import {
8
+ type SQLiteBindBlobParams,
9
+ type SQLiteBindPrimitiveParams,
10
+ type SQLiteColumnNames,
11
+ type SQLiteColumnValues,
12
+ type SQLiteRunResult,
13
+ } from '../src/NativeStatement';
14
+
15
+ class NativeDatabase {
16
+ public readonly id: number = 0;
17
+
18
+ constructor(
19
+ public readonly databasePath: string,
20
+ public readonly options?: SQLiteOpenOptions,
21
+ private serializedData?: Uint8Array
22
+ ) {}
23
+
24
+ async initAsync(): Promise<void> {}
25
+ initSync(): void {}
26
+
27
+ async isInTransactionAsync(): Promise<boolean> {
28
+ return false;
29
+ }
30
+ isInTransactionSync(): boolean {
31
+ return false;
32
+ }
33
+
34
+ async closeAsync(): Promise<void> {}
35
+ closeSync(): void {}
36
+
37
+ async execAsync(source: string): Promise<void> {}
38
+ execSync(source: string): void {}
39
+
40
+ async serializeAsync(schemaName: string): Promise<Uint8Array> {
41
+ return new Uint8Array();
42
+ }
43
+ serializeSync(schemaName: string): Uint8Array {
44
+ return new Uint8Array();
45
+ }
46
+
47
+ async prepareAsync(nativeStatement: NativeStatement, source: string): Promise<void> {}
48
+ prepareSync(nativeStatement: NativeStatement, source: string): void {}
49
+ async createSessionAsync(nativeSession: NativeSession, dbName: string): Promise<void> {}
50
+ createSessionSync(nativeSession: NativeSession, dbName: string): void {}
51
+ async loadExtensionAsync(filePath: string, entryPoint?: string): Promise<void> {}
52
+ loadExtensionSync(filePath: string, entryPoint?: string): void {}
53
+ }
54
+
55
+ class NativeStatement {
56
+ public readonly id: number = 0;
57
+
58
+ async runAsync(
59
+ database: NativeDatabase,
60
+ bindParams: SQLiteBindPrimitiveParams,
61
+ bindBlobParams: SQLiteBindBlobParams,
62
+ shouldPassAsArray: boolean
63
+ ): Promise<SQLiteRunResult & { firstRowValues: SQLiteColumnValues }> {
64
+ return {
65
+ lastInsertRowId: 0,
66
+ changes: 0,
67
+ firstRowValues: [],
68
+ };
69
+ }
70
+ runSync(
71
+ database: NativeDatabase,
72
+ bindParams: SQLiteBindPrimitiveParams,
73
+ bindBlobParams: SQLiteBindBlobParams,
74
+ shouldPassAsArray: boolean
75
+ ): SQLiteRunResult & { firstRowValues: SQLiteColumnValues } {
76
+ return {
77
+ lastInsertRowId: 0,
78
+ changes: 0,
79
+ firstRowValues: [],
80
+ };
81
+ }
82
+
83
+ async stepAsync(database: NativeDatabase): Promise<SQLiteColumnValues | null> {
84
+ return null;
85
+ }
86
+ stepSync(database: NativeDatabase): SQLiteColumnValues | null {
87
+ return null;
88
+ }
89
+
90
+ async getAllAsync(database: NativeDatabase): Promise<SQLiteColumnValues[]> {
91
+ return [];
92
+ }
93
+ getAllSync(database: NativeDatabase): SQLiteColumnValues[] {
94
+ return [];
95
+ }
96
+
97
+ async resetAsync(database: NativeDatabase): Promise<void> {}
98
+ resetSync(database: NativeDatabase): void {}
99
+
100
+ async getColumnNamesAsync(): Promise<SQLiteColumnNames> {
101
+ return [];
102
+ }
103
+ getColumnNamesSync(): SQLiteColumnNames {
104
+ return [];
105
+ }
106
+
107
+ async finalizeAsync(database: NativeDatabase): Promise<void> {}
108
+ finalizeSync(database: NativeDatabase): void {}
109
+ }
110
+
111
+ export class NativeSession {
112
+ public readonly id: number = 0;
113
+
114
+ async attachAsync(database: NativeDatabase, table: string | null): Promise<void> {}
115
+ attachSync(database: NativeDatabase, table: string | null): void {}
116
+
117
+ async enableAsync(database: NativeDatabase, enabled: boolean): Promise<void> {}
118
+ enableSync(database: NativeDatabase, enabled: boolean): void {}
119
+
120
+ async closeAsync(database: NativeDatabase): Promise<void> {}
121
+ closeSync(database: NativeDatabase): void {}
122
+
123
+ async createChangesetAsync(database: NativeDatabase): Promise<Changeset> {
124
+ return new Uint8Array();
125
+ }
126
+ createChangesetSync(database: NativeDatabase): Changeset {
127
+ return new Uint8Array();
128
+ }
129
+
130
+ async createInvertedChangesetAsync(database: NativeDatabase): Promise<Changeset> {
131
+ return new Uint8Array();
132
+ }
133
+ createInvertedChangesetSync(database: NativeDatabase): Changeset {
134
+ return new Uint8Array();
135
+ }
136
+
137
+ async applyChangesetAsync(database: NativeDatabase, changeset: Changeset): Promise<void> {}
138
+ applyChangesetSync(database: NativeDatabase, changeset: Changeset): void {}
139
+
140
+ async invertChangesetAsync(database: NativeDatabase, changeset: Changeset): Promise<Changeset> {
141
+ return new Uint8Array();
142
+ }
143
+ invertChangesetSync(database: NativeDatabase, changeset: Changeset): Changeset {
144
+ return new Uint8Array();
145
+ }
146
+ }
147
+
148
+ export class SQLiteModule extends NativeModule {
149
+ readonly defaultDatabaseDirectory = '.';
150
+ readonly bundledExtensions = {};
151
+
152
+ async deleteDatabaseAsync(databasePath: string): Promise<void> {}
153
+ deleteDatabaseSync(databasePath: string): void {}
154
+
155
+ async ensureDatabasePathExistsAsync(databasePath: string): Promise<void> {}
156
+ ensureDatabasePathExistsSync(databasePath: string): void {}
157
+
158
+ async backupDatabaseAsync(
159
+ destDatabase: NativeDatabase,
160
+ destDatabaseName: string,
161
+ sourceDatabase: NativeDatabase,
162
+ sourceDatabaseName: string
163
+ ): Promise<void> {}
164
+ backupDatabaseSync(
165
+ destDatabase: NativeDatabase,
166
+ destDatabaseName: string,
167
+ sourceDatabase: NativeDatabase,
168
+ sourceDatabaseName: string
169
+ ): void {}
170
+
171
+ async importAssetDatabaseAsync(
172
+ databasePath: string,
173
+ assetDatabasePath: string,
174
+ forceOverwrite: boolean
175
+ ): Promise<void> {}
176
+
177
+ readonly NativeDatabase: typeof NativeDatabase = NativeDatabase;
178
+ readonly NativeStatement: typeof NativeStatement = NativeStatement;
179
+ readonly NativeSession: typeof NativeSession = NativeSession;
180
+ }
181
+
182
+ const SQLiteModuleInstance = registerWebModule(SQLiteModule, 'SQLiteModule');
183
+ export default SQLiteModuleInstance;
@@ -1 +0,0 @@
1
- e20a679f28be9358cc61b4e502c3dc90d79f485981468fc11dbce5aff9125c26d3237d42d3f291d9225c12e406a3b5858722375d2976ab96d6403d162d30d20e
@@ -1 +0,0 @@
1
- 8694ab88ca6b465724dbab1b42d69ca4c44f1b5d71a16e7a2d856a81d87cc904a927d1960a9436b96cd5ece78726fba2b142e09c3435826c25cc809d91bb5ffc
@@ -1 +0,0 @@
1
- 269e529c09169e6ee46b9f1af3a464bbd915071ce36c06efedda4c1a91e4dcdad5cf1e6148769707026a46b747799d07019ef9a953cac4bf4169b502fe3ab696