Dexie v4.2.0
New Stable Packages
- dexie@4.2.0
- y-dexie@4.2.0
- dexie-react-hooks@4.2.0
- dexie-cloud-addon@4.2.0
What's Changed since Latest Stable (dexie@4.0.11)
- New add-on "y-dexie" that integrates the powerful Y.js library with dexie.
- Support "y-dexie" and Y.js in dexie-cloud-addon
- New hook
useDocument()in dexie-react-hooks for Y.js integration. - Fix Named Export 'Dexie' Not Found in Production with Vite/Vinxi by @thijssmudde in https://github.com/dexie/Dexie.js/pull/2155
- fix: 'Dexie' Not Found in Production with Vite/Vinxi dexie-react-hooks by @Contraboi in https://github.com/dexie/Dexie.js/pull/2162
New Contributors
- @thijssmudde made their first contribution in https://github.com/dexie/Dexie.js/pull/2155
- @davbl made their first contribution in https://github.com/dexie/Dexie.js/pull/2165
- @Contraboi made their first contribution in https://github.com/dexie/Dexie.js/pull/2162
Migration from 4.1.x-beta
Dexie 4.1.x has been tagged @next and contained experimental Y.js support. The Y.js support has since been moved into its own add-on 'y-dexie'.
If the built-in Y.js support in dexie@4.1.x has been used, a migration is needed:
npm install y-dexie- Instead of
import { DexieYProvider } from 'dexie'-->import { DexieYProvider } from 'y-dexie' - Instead of
DexieyYProvider<Y.Doc>-->DexieYProvider. - No need to pass
Yto Dexie constructor, but instead, pass theyDexieaddon:
With dexieCloud addon, make sure to pass yDexie first:import yDexie from 'y-dexie'; ... const db = new Dexie('foo', { addons: [yDexie] });{ addons: [yDexie, dexieCloud] } - Declare Y.Doc properties as
prop:Y.Docinstead of justprop:Ydb.version(1).stores({ friends: ` ++id, name, age, friendNotes: Y.Doc` // where friendNotes holds the Y.Doc instance });
If you need a sample PR of these changes, have a look at https://github.com/dexie/dexie-cloud-starter/pull/8
Full Changelog: https://github.com/dexie/Dexie.js/compare/b415d926b033494e01e1f5e8c99374e3b7a7e1a5...a978fc0ca9d63ccb4f7f02cb7cf9d4b92c0858cd