Adapter that wraps the newer expo-sqlite (SDK 51+) to behave like the legacy WebSQL-compatible API removed in Expo SDK 52. Version 0.2.0 is the latest and only stable release. This package enables legacy libraries (e.g., IndexedDBShim) that depend on WebSQL to continue functioning on modern Expo SDKs. Unlike the original expo-sqlite/legacy which was deprecated, this adapter is a community-maintained shim with 100% feature coverage for common WebSQL patterns as demonstrated by test results. It requires expo-sqlite as a peer dependency and is compatible with Expo SDK 51 and above.
npm install expo-sqlite-legacy-adapterNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Shows how to create a WebSQL-compatible database wrapper and run a transaction with SQL statements.
Upgrade to Expo SDK 51+ or use the original expo-sqlite/legacy (deprecated).
Refer to test output for known divergences (e.g., Test#4 about write in readTransaction).
Use `const { openDatabase } = createWebSQLWrapper(ExpoSQLite);`.Do not rely on specific error codes; check error messages instead.
Use named import: `import { createWebSQLWrapper } from 'expo-sqlite-legacy-adapter';`Run `npm install expo-sqlite` (or `expo install expo-sqlite`).
Call createWebSQLWrapper first: `const { openDatabase } = createWebSQLWrapper(ExpoSQLite);`Ensure your project is set up with React Native and Metro can resolve the path.