Compare commits
12 Commits
chat-rn@1.
...
jazz-tools
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
14f52dbc4e | ||
|
|
82e4256e26 | ||
|
|
5e253cc717 | ||
|
|
0c1663505c | ||
|
|
ad85703373 | ||
|
|
3a6ec3791c | ||
|
|
f9590f9120 | ||
|
|
706ebf87da | ||
|
|
00dd317a5d | ||
|
|
5ced45fb90 | ||
|
|
23daa7cdde | ||
|
|
1b9b9273e5 |
@@ -1,5 +1,28 @@
|
||||
# betterauth
|
||||
|
||||
## 0.1.19
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-betterauth-server-plugin@0.14.16
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-react@0.14.16
|
||||
- jazz-react-auth-betterauth@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-betterauth-client-plugin@0.14.16
|
||||
|
||||
## 0.1.18
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-betterauth-server-plugin@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-react-auth-betterauth@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-betterauth-client-plugin@0.14.15
|
||||
|
||||
## 0.1.17
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "betterauth",
|
||||
"version": "0.1.17",
|
||||
"version": "0.1.19",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# chat-rn-expo-clerk
|
||||
|
||||
## 1.0.139
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-expo@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-react-native-media-images@0.14.16
|
||||
|
||||
## 1.0.138
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-expo@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-react-native-media-images@0.14.15
|
||||
|
||||
## 1.0.137
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "chat-rn-expo-clerk",
|
||||
"main": "index.js",
|
||||
"version": "1.0.137",
|
||||
"version": "1.0.139",
|
||||
"scripts": {
|
||||
"build": "expo export -p ios",
|
||||
"start": "expo start",
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
# chat-rn-expo
|
||||
|
||||
## 1.0.7
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-expo@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 1.0.6
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-expo@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 1.0.5
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "chat-rn-expo",
|
||||
"version": "1.0.5",
|
||||
"version": "1.0.7",
|
||||
"main": "index.ts",
|
||||
"scripts": {
|
||||
"build": "expo prebuild",
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# chat-rn
|
||||
|
||||
## 1.0.134
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-transport-ws@0.14.16
|
||||
- jazz-react-native@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 1.0.133
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-react-native@0.14.15
|
||||
- cojson-transport-ws@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 1.0.132
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "chat-rn",
|
||||
"version": "1.0.132",
|
||||
"version": "1.0.134",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"android": "react-native run-android",
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# chat-vue
|
||||
|
||||
## 0.0.114
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-vue@0.14.16
|
||||
|
||||
## 0.0.113
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-vue@0.14.15
|
||||
|
||||
## 0.0.112
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "chat-vue",
|
||||
"version": "0.0.112",
|
||||
"version": "0.0.114",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# jazz-example-chat
|
||||
|
||||
## 0.0.214
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.213
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.212
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-example-chat",
|
||||
"private": true,
|
||||
"version": "0.0.212",
|
||||
"version": "0.0.214",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# minimal-auth-clerk
|
||||
|
||||
## 0.0.113
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-react-auth-clerk@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.112
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-react-auth-clerk@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.111
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "clerk",
|
||||
"private": true,
|
||||
"version": "0.0.111",
|
||||
"version": "0.0.113",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# file-share-svelte
|
||||
|
||||
## 0.0.98
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-svelte@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-inspector-element@0.14.16
|
||||
|
||||
## 0.0.97
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-svelte@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-inspector-element@0.14.15
|
||||
|
||||
## 0.0.96
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "file-share-svelte",
|
||||
"version": "0.0.96",
|
||||
"version": "0.0.98",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# jazz-tailwind-demo-auth-starter
|
||||
|
||||
## 0.0.53
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.52
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.51
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "filestream",
|
||||
"private": true,
|
||||
"version": "0.0.51",
|
||||
"version": "0.0.53",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# form
|
||||
|
||||
## 0.1.54
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.1.53
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.1.52
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "form",
|
||||
"private": true,
|
||||
"version": "0.1.52",
|
||||
"version": "0.1.54",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# image-upload
|
||||
|
||||
## 0.0.110
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.109
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.108
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "image-upload",
|
||||
"private": true,
|
||||
"version": "0.0.108",
|
||||
"version": "0.0.110",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# jazz-example-inspector
|
||||
|
||||
## 0.0.163
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-transport-ws@0.14.16
|
||||
- jazz-inspector@0.14.16
|
||||
|
||||
## 0.0.162
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- cojson-transport-ws@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
|
||||
## 0.0.161
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-inspector-app",
|
||||
"private": true,
|
||||
"version": "0.0.161",
|
||||
"version": "0.0.163",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# jazz-nextjs
|
||||
|
||||
## 0.1.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.1.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.1.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-nextjs",
|
||||
"version": "0.1.1",
|
||||
"version": "0.1.3",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev --turbopack",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Geist, Geist_Mono } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import { Jazz } from "./jazz";
|
||||
import { Jazz } from "../jazz";
|
||||
|
||||
const geistSans = Geist({
|
||||
variable: "--font-geist-sans",
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
import { useAccount } from "jazz-react";
|
||||
import { Account } from "jazz-tools";
|
||||
import Link from "next/link";
|
||||
|
||||
export default function Home() {
|
||||
const { me } = useAccount(Account, {
|
||||
@@ -34,6 +35,12 @@ export default function Home() {
|
||||
}}
|
||||
/>
|
||||
</label>
|
||||
<Link
|
||||
href={`/profile/${me?.profile.id}`}
|
||||
className="bg-blue-500 text-white px-4 py-2 rounded-md"
|
||||
>
|
||||
Your profile name in a Server Component
|
||||
</Link>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
23
examples/jazz-nextjs/src/app/profile/[profileId]/page.tsx
Normal file
23
examples/jazz-nextjs/src/app/profile/[profileId]/page.tsx
Normal file
@@ -0,0 +1,23 @@
|
||||
import { jazzSSR } from "@/jazzSSR";
|
||||
import { Profile } from "jazz-tools";
|
||||
|
||||
export default async function ServerSidePage(props: {
|
||||
params: Promise<{ profileId: string }>;
|
||||
}) {
|
||||
const { profileId } = await props.params;
|
||||
const profile = await Profile.load(profileId, {
|
||||
loadAs: jazzSSR,
|
||||
});
|
||||
|
||||
return (
|
||||
<div className="flex flex-col items-center justify-center h-screen gap-4">
|
||||
<h1 className="text-2xl font-bold">SSR rendering example with Jazz</h1>
|
||||
<div className="text-sm text-gray-500 w-1/2 text-center">
|
||||
This is a server component!
|
||||
</div>
|
||||
<label>
|
||||
<div className="text-sm">Your profile name "{profile?.name}"</div>
|
||||
</label>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
5
examples/jazz-nextjs/src/jazzSSR.ts
Normal file
5
examples/jazz-nextjs/src/jazzSSR.ts
Normal file
@@ -0,0 +1,5 @@
|
||||
import { createSSRJazzAgent } from "jazz-react/ssr";
|
||||
|
||||
export const jazzSSR = createSSRJazzAgent({
|
||||
peer: "wss://cloud.jazz.tools/",
|
||||
});
|
||||
@@ -1,5 +1,20 @@
|
||||
# multi-cursors
|
||||
|
||||
## 0.0.106
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.105
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.104
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "multi-cursors",
|
||||
"private": true,
|
||||
"version": "0.0.104",
|
||||
"version": "0.0.106",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# multiauth
|
||||
|
||||
## 0.0.54
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-react-auth-clerk@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.53
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-react-auth-clerk@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.52
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "multiauth",
|
||||
"private": true,
|
||||
"version": "0.0.52",
|
||||
"version": "0.0.54",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# jazz-example-musicplayer
|
||||
|
||||
## 0.0.135
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.134
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.133
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-example-music-player",
|
||||
"private": true,
|
||||
"version": "0.0.133",
|
||||
"version": "0.0.135",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# organization
|
||||
|
||||
## 0.0.106
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.105
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.104
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "organization",
|
||||
"private": true,
|
||||
"version": "0.0.104",
|
||||
"version": "0.0.106",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
# passkey-svelte
|
||||
|
||||
## 0.0.100
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-svelte@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.99
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-svelte@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.98
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "passkey-svelte",
|
||||
"version": "0.0.98",
|
||||
"version": "0.0.100",
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# minimal-auth-passkey
|
||||
|
||||
## 0.0.111
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.110
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.109
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "passkey",
|
||||
"private": true,
|
||||
"version": "0.0.109",
|
||||
"version": "0.0.111",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# passphrase
|
||||
|
||||
## 0.0.108
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.107
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.106
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "passphrase",
|
||||
"private": true,
|
||||
"version": "0.0.106",
|
||||
"version": "0.0.108",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# jazz-password-manager
|
||||
|
||||
## 0.0.132
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.131
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.130
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-password-manager",
|
||||
"private": true,
|
||||
"version": "0.0.130",
|
||||
"version": "0.0.132",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# jazz-example-pets
|
||||
|
||||
## 0.0.230
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.229
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.228
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-example-pets",
|
||||
"private": true,
|
||||
"version": "0.0.228",
|
||||
"version": "0.0.230",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# reactions
|
||||
|
||||
## 0.0.110
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.109
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.108
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "reactions",
|
||||
"private": true,
|
||||
"version": "0.0.108",
|
||||
"version": "0.0.110",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# richtext-tiptap
|
||||
|
||||
## 0.1.23
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-richtext-tiptap@0.1.21
|
||||
|
||||
## 0.1.22
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-richtext-tiptap@0.1.20
|
||||
|
||||
## 0.1.21
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "richtext-tiptap",
|
||||
"private": true,
|
||||
"version": "0.1.21",
|
||||
"version": "0.1.23",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# richtext
|
||||
|
||||
## 0.0.100
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-richtext-prosemirror@0.1.32
|
||||
|
||||
## 0.0.99
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-richtext-prosemirror@0.1.31
|
||||
|
||||
## 0.0.98
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "richtext",
|
||||
"private": true,
|
||||
"version": "0.0.98",
|
||||
"version": "0.0.100",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# todo-vue
|
||||
|
||||
## 0.0.112
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-vue@0.14.16
|
||||
|
||||
## 0.0.111
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-vue@0.14.15
|
||||
|
||||
## 0.0.110
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "todo-vue",
|
||||
"version": "0.0.110",
|
||||
"version": "0.0.112",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# jazz-example-todo
|
||||
|
||||
## 0.0.229
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.228
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.227
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "jazz-example-todo",
|
||||
"private": true,
|
||||
"version": "0.0.227",
|
||||
"version": "0.0.229",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# version-history
|
||||
|
||||
## 0.0.108
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-react@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.0.107
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [f9590f9]
|
||||
- jazz-react@0.14.15
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.0.106
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "version-history",
|
||||
"private": true,
|
||||
"version": "0.0.106",
|
||||
"version": "0.0.108",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -15,8 +15,6 @@ We're still in the process of:
|
||||
- completing all the details of this upgrade guide
|
||||
</small>
|
||||
|
||||
**Note: React Native is currently broken based on an [underlying Zod v4 issue](https://github.com/colinhacks/zod/issues/4148).**
|
||||
|
||||
If you see something broken, please let us know on [Discord](https://discord.gg/utDMjHYg42) and check back in a couple hours.
|
||||
|
||||
Thanks for your patience!
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# cojson-storage-indexeddb
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-storage@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson-storage@0.14.15
|
||||
- cojson@0.14.15
|
||||
|
||||
## 0.14.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cojson-storage-indexeddb",
|
||||
"version": "0.14.1",
|
||||
"version": "0.14.16",
|
||||
"main": "dist/index.js",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
|
||||
@@ -1,12 +1,21 @@
|
||||
import { LocalNode } from "cojson";
|
||||
import { StorageManagerAsync } from "cojson-storage";
|
||||
import { WasmCrypto } from "cojson/crypto/WasmCrypto";
|
||||
import { expect, test, vi } from "vitest";
|
||||
import { afterEach, beforeEach, expect, test, vi } from "vitest";
|
||||
import { IDBStorage } from "../index.js";
|
||||
import { toSimplifiedMessages } from "./messagesTestUtils.js";
|
||||
import { trackMessages, waitFor } from "./testUtils.js";
|
||||
|
||||
const Crypto = await WasmCrypto.create();
|
||||
let syncMessages: ReturnType<typeof trackMessages>;
|
||||
|
||||
beforeEach(() => {
|
||||
syncMessages = trackMessages();
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
syncMessages.restore();
|
||||
});
|
||||
|
||||
test("Should be able to initialize and load from empty DB", async () => {
|
||||
const agentSecret = Crypto.newRandomAgentSecret();
|
||||
@@ -33,8 +42,6 @@ test("should sync and load data from storage", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node1Sync = trackMessages(node1);
|
||||
|
||||
const peer = await IDBStorage.asPeer();
|
||||
|
||||
node1.syncManager.addPeer(peer);
|
||||
@@ -53,7 +60,7 @@ test("should sync and load data from storage", async () => {
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node1Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -64,7 +71,8 @@ test("should sync and load data from storage", async () => {
|
||||
]
|
||||
`);
|
||||
|
||||
node1Sync.restore();
|
||||
node1.gracefulShutdown();
|
||||
syncMessages.clear();
|
||||
|
||||
const node2 = new LocalNode(
|
||||
agentSecret,
|
||||
@@ -72,8 +80,6 @@ test("should sync and load data from storage", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
|
||||
const peer2 = await IDBStorage.asPeer();
|
||||
|
||||
node2.syncManager.addPeer(peer2);
|
||||
@@ -91,7 +97,7 @@ test("should sync and load data from storage", async () => {
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -100,8 +106,6 @@ test("should sync and load data from storage", async () => {
|
||||
"storage -> CONTENT Map header: true new: After: 0 New: 1",
|
||||
]
|
||||
`);
|
||||
|
||||
node2Sync.restore();
|
||||
});
|
||||
|
||||
test("should send an empty content message if there is no content", async () => {
|
||||
@@ -113,8 +117,6 @@ test("should send an empty content message if there is no content", async () =>
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node1Sync = trackMessages(node1);
|
||||
|
||||
const peer = await IDBStorage.asPeer();
|
||||
|
||||
node1.syncManager.addPeer(peer);
|
||||
@@ -131,7 +133,7 @@ test("should send an empty content message if there is no content", async () =>
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node1Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -142,7 +144,8 @@ test("should send an empty content message if there is no content", async () =>
|
||||
]
|
||||
`);
|
||||
|
||||
node1Sync.restore();
|
||||
syncMessages.clear();
|
||||
node1.gracefulShutdown();
|
||||
|
||||
const node2 = new LocalNode(
|
||||
agentSecret,
|
||||
@@ -150,8 +153,6 @@ test("should send an empty content message if there is no content", async () =>
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
|
||||
const peer2 = await IDBStorage.asPeer();
|
||||
|
||||
node2.syncManager.addPeer(peer2);
|
||||
@@ -167,7 +168,7 @@ test("should send an empty content message if there is no content", async () =>
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -176,8 +177,6 @@ test("should send an empty content message if there is no content", async () =>
|
||||
"storage -> CONTENT Map header: true new: ",
|
||||
]
|
||||
`);
|
||||
|
||||
node2Sync.restore();
|
||||
});
|
||||
|
||||
test("should load dependencies correctly (group inheritance)", async () => {
|
||||
@@ -189,8 +188,6 @@ test("should load dependencies correctly (group inheritance)", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node1Sync = trackMessages(node1);
|
||||
|
||||
const peer = await IDBStorage.asPeer();
|
||||
|
||||
node1.syncManager.addPeer(peer);
|
||||
@@ -213,7 +210,7 @@ test("should load dependencies correctly (group inheritance)", async () => {
|
||||
Group: group.core,
|
||||
ParentGroup: parentGroup.core,
|
||||
},
|
||||
node1Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -226,7 +223,8 @@ test("should load dependencies correctly (group inheritance)", async () => {
|
||||
]
|
||||
`);
|
||||
|
||||
node1Sync.restore();
|
||||
syncMessages.clear();
|
||||
node1.gracefulShutdown();
|
||||
|
||||
const node2 = new LocalNode(
|
||||
agentSecret,
|
||||
@@ -234,8 +232,6 @@ test("should load dependencies correctly (group inheritance)", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
|
||||
const peer2 = await IDBStorage.asPeer();
|
||||
|
||||
node2.syncManager.addPeer(peer2);
|
||||
@@ -253,7 +249,7 @@ test("should load dependencies correctly (group inheritance)", async () => {
|
||||
Group: group.core,
|
||||
ParentGroup: parentGroup.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -274,8 +270,6 @@ test("should not send the same dependency value twice", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node1Sync = trackMessages(node1);
|
||||
|
||||
const peer = await IDBStorage.asPeer();
|
||||
|
||||
node1.syncManager.addPeer(peer);
|
||||
@@ -293,7 +287,8 @@ test("should not send the same dependency value twice", async () => {
|
||||
|
||||
await new Promise((resolve) => setTimeout(resolve, 200));
|
||||
|
||||
node1Sync.restore();
|
||||
syncMessages.clear();
|
||||
node1.gracefulShutdown();
|
||||
|
||||
const node2 = new LocalNode(
|
||||
agentSecret,
|
||||
@@ -301,8 +296,6 @@ test("should not send the same dependency value twice", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
|
||||
const peer2 = await IDBStorage.asPeer();
|
||||
|
||||
node2.syncManager.addPeer(peer2);
|
||||
@@ -323,7 +316,7 @@ test("should not send the same dependency value twice", async () => {
|
||||
ParentGroup: parentGroup.core,
|
||||
MapFromParent: mapFromParent.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -349,8 +342,6 @@ test("should recover from data loss", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node1Sync = trackMessages(node1);
|
||||
|
||||
const peer = await IDBStorage.asPeer();
|
||||
|
||||
node1.syncManager.addPeer(peer);
|
||||
@@ -384,7 +375,7 @@ test("should recover from data loss", async () => {
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node1Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -399,7 +390,8 @@ test("should recover from data loss", async () => {
|
||||
]
|
||||
`);
|
||||
|
||||
node1Sync.restore();
|
||||
syncMessages.clear();
|
||||
node1.gracefulShutdown();
|
||||
|
||||
const node2 = new LocalNode(
|
||||
agentSecret,
|
||||
@@ -407,8 +399,6 @@ test("should recover from data loss", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
|
||||
const peer2 = await IDBStorage.asPeer();
|
||||
|
||||
node2.syncManager.addPeer(peer2);
|
||||
@@ -432,7 +422,7 @@ test("should recover from data loss", async () => {
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -491,7 +481,7 @@ test("should sync multiple sessions in a single content message", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node3Sync = trackMessages(node3);
|
||||
syncMessages.clear();
|
||||
|
||||
node3.syncManager.addPeer(await IDBStorage.asPeer());
|
||||
|
||||
@@ -508,7 +498,7 @@ test("should sync multiple sessions in a single content message", async () => {
|
||||
Map: map.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node3Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -517,8 +507,6 @@ test("should sync multiple sessions in a single content message", async () => {
|
||||
"storage -> CONTENT Map header: true new: After: 0 New: 1 | After: 0 New: 1",
|
||||
]
|
||||
`);
|
||||
|
||||
node3Sync.restore();
|
||||
});
|
||||
|
||||
test("large coValue upload streaming", async () => {
|
||||
@@ -559,7 +547,7 @@ test("large coValue upload streaming", async () => {
|
||||
Crypto,
|
||||
);
|
||||
|
||||
const node2Sync = trackMessages(node2);
|
||||
syncMessages.clear();
|
||||
|
||||
node2.syncManager.addPeer(await IDBStorage.asPeer());
|
||||
|
||||
@@ -581,7 +569,7 @@ test("large coValue upload streaming", async () => {
|
||||
Map: largeMap.core,
|
||||
Group: group.core,
|
||||
},
|
||||
node2Sync.messages,
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
@@ -598,3 +586,80 @@ test("large coValue upload streaming", async () => {
|
||||
]
|
||||
`);
|
||||
});
|
||||
|
||||
test("should sync and load accounts from storage", async () => {
|
||||
const agentSecret = Crypto.newRandomAgentSecret();
|
||||
|
||||
const { node: node1, accountID } = await LocalNode.withNewlyCreatedAccount({
|
||||
crypto: Crypto,
|
||||
initialAgentSecret: agentSecret,
|
||||
peersToLoadFrom: [await IDBStorage.asPeer()],
|
||||
creationProps: {
|
||||
name: "test",
|
||||
},
|
||||
});
|
||||
|
||||
const account1 = node1.getCoValue(accountID);
|
||||
const profile = node1.expectProfileLoaded(accountID);
|
||||
const profileGroup = profile.group;
|
||||
|
||||
await new Promise((resolve) => setTimeout(resolve, 200));
|
||||
|
||||
expect(
|
||||
toSimplifiedMessages(
|
||||
{
|
||||
Account: account1,
|
||||
Profile: profile.core,
|
||||
ProfileGroup: profileGroup.core,
|
||||
},
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
"client -> CONTENT Account header: true new: After: 0 New: 4",
|
||||
"storage -> KNOWN Account sessions: header/4",
|
||||
"client -> CONTENT ProfileGroup header: true new: After: 0 New: 5",
|
||||
"storage -> KNOWN ProfileGroup sessions: header/5",
|
||||
"client -> CONTENT Profile header: true new: After: 0 New: 1",
|
||||
"storage -> KNOWN Profile sessions: header/1",
|
||||
]
|
||||
`);
|
||||
|
||||
node1.gracefulShutdown();
|
||||
syncMessages.restore();
|
||||
syncMessages = trackMessages();
|
||||
|
||||
const node2 = await LocalNode.withLoadedAccount({
|
||||
crypto: Crypto,
|
||||
accountSecret: agentSecret,
|
||||
accountID,
|
||||
peersToLoadFrom: [await IDBStorage.asPeer()],
|
||||
sessionID: Crypto.newRandomSessionID(Crypto.getAgentID(agentSecret)),
|
||||
});
|
||||
|
||||
await new Promise((resolve) => setTimeout(resolve, 200));
|
||||
|
||||
expect(
|
||||
toSimplifiedMessages(
|
||||
{
|
||||
Account: account1,
|
||||
Profile: profile.core,
|
||||
ProfileGroup: profileGroup.core,
|
||||
},
|
||||
syncMessages.messages,
|
||||
),
|
||||
).toMatchInlineSnapshot(`
|
||||
[
|
||||
"client -> LOAD Account sessions: empty",
|
||||
"storage -> CONTENT Account header: true new: After: 0 New: 4",
|
||||
"client -> KNOWN Account sessions: header/4",
|
||||
"client -> LOAD Profile sessions: empty",
|
||||
"storage -> CONTENT ProfileGroup header: true new: After: 0 New: 5",
|
||||
"storage -> CONTENT Profile header: true new: After: 0 New: 1",
|
||||
"client -> KNOWN ProfileGroup sessions: header/5",
|
||||
"client -> KNOWN Profile sessions: header/1",
|
||||
]
|
||||
`);
|
||||
|
||||
expect(node2.getCoValue(accountID).isAvailable()).toBeTruthy();
|
||||
});
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
import type { LocalNode, SyncMessage } from "cojson";
|
||||
import { cojsonInternals } from "cojson";
|
||||
import { StorageManagerAsync } from "cojson-storage";
|
||||
import { onTestFinished } from "vitest";
|
||||
|
||||
export function trackMessages(node: LocalNode) {
|
||||
const { SyncManager } = cojsonInternals;
|
||||
|
||||
export function trackMessages() {
|
||||
const messages: {
|
||||
from: "client" | "server" | "storage";
|
||||
msg: SyncMessage;
|
||||
@@ -10,7 +13,7 @@ export function trackMessages(node: LocalNode) {
|
||||
|
||||
const originalHandleSyncMessage =
|
||||
StorageManagerAsync.prototype.handleSyncMessage;
|
||||
const originalNodeSyncMessage = node.syncManager.handleSyncMessage;
|
||||
const originalNodeSyncMessage = SyncManager.prototype.handleSyncMessage;
|
||||
|
||||
StorageManagerAsync.prototype.handleSyncMessage = async function (msg) {
|
||||
messages.push({
|
||||
@@ -20,7 +23,7 @@ export function trackMessages(node: LocalNode) {
|
||||
return originalHandleSyncMessage.call(this, msg);
|
||||
};
|
||||
|
||||
node.syncManager.handleSyncMessage = async function (msg, peer) {
|
||||
SyncManager.prototype.handleSyncMessage = async function (msg, peer) {
|
||||
messages.push({
|
||||
from: "storage",
|
||||
msg,
|
||||
@@ -30,7 +33,12 @@ export function trackMessages(node: LocalNode) {
|
||||
|
||||
const restore = () => {
|
||||
StorageManagerAsync.prototype.handleSyncMessage = originalHandleSyncMessage;
|
||||
node.syncManager.handleSyncMessage = originalNodeSyncMessage;
|
||||
SyncManager.prototype.handleSyncMessage = originalNodeSyncMessage;
|
||||
messages.length = 0;
|
||||
};
|
||||
|
||||
const clear = () => {
|
||||
messages.length = 0;
|
||||
};
|
||||
|
||||
onTestFinished(() => {
|
||||
@@ -40,6 +48,7 @@ export function trackMessages(node: LocalNode) {
|
||||
return {
|
||||
messages,
|
||||
restore,
|
||||
clear,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# cojson-storage-sqlite
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-storage@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson-storage@0.14.15
|
||||
- cojson@0.14.15
|
||||
|
||||
## 0.14.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"name": "cojson-storage-sqlite",
|
||||
"type": "module",
|
||||
"version": "0.14.1",
|
||||
"version": "0.14.16",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"better-sqlite3": "^11.7.0",
|
||||
"cojson": "workspace:0.14.1",
|
||||
"cojson": "workspace:0.14.16",
|
||||
"cojson-storage": "workspace:*"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# cojson-storage
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 23daa7c: Align the processing of the group dependencies between LocalNode and Storage.
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
|
||||
## 0.14.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cojson-storage",
|
||||
"version": "0.14.1",
|
||||
"version": "0.14.16",
|
||||
"main": "dist/index.js",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
|
||||
@@ -15,15 +15,9 @@ import type {
|
||||
StoredCoValueRow,
|
||||
StoredSessionRow,
|
||||
} from "./types.js";
|
||||
import NewContentMessage = CojsonInternalTypes.NewContentMessage;
|
||||
import KnownStateMessage = CojsonInternalTypes.KnownStateMessage;
|
||||
import RawCoID = CojsonInternalTypes.RawCoID;
|
||||
|
||||
type OutputMessageMap = Record<
|
||||
RawCoID,
|
||||
{ knownMessage: KnownStateMessage; contentMessages?: NewContentMessage[] }
|
||||
>;
|
||||
|
||||
export class StorageManagerAsync {
|
||||
private readonly toLocalNode: OutgoingSyncQueue;
|
||||
private readonly dbClient: DBClientInterfaceAsync;
|
||||
@@ -179,10 +173,10 @@ export class StorageManagerAsync {
|
||||
coValueRow: StoredCoValueRow,
|
||||
contentMessage: CojsonInternalTypes.NewContentMessage,
|
||||
) {
|
||||
const dependedOnCoValuesList = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [contentMessage],
|
||||
});
|
||||
const dependedOnCoValuesList = getDependedOnCoValues(
|
||||
coValueRow.header,
|
||||
contentMessage,
|
||||
);
|
||||
|
||||
for (const dependedOnCoValue of dependedOnCoValuesList) {
|
||||
if (this.loadedCoValues.has(dependedOnCoValue)) {
|
||||
|
||||
@@ -180,10 +180,10 @@ export class StorageManagerSync {
|
||||
coValueRow: StoredCoValueRow,
|
||||
contentMessage: CojsonInternalTypes.NewContentMessage,
|
||||
) {
|
||||
const dependedOnCoValuesList = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [contentMessage],
|
||||
});
|
||||
const dependedOnCoValuesList = getDependedOnCoValues(
|
||||
coValueRow.header,
|
||||
contentMessage,
|
||||
);
|
||||
|
||||
for (const dependedOnCoValue of dependedOnCoValuesList) {
|
||||
if (this.loadedCoValues.has(dependedOnCoValue)) {
|
||||
|
||||
@@ -5,6 +5,7 @@ import {
|
||||
type Stringified,
|
||||
cojsonInternals,
|
||||
} from "cojson";
|
||||
import type { RawCoID } from "cojson";
|
||||
import type {
|
||||
StoredCoValueRow,
|
||||
StoredSessionRow,
|
||||
@@ -42,31 +43,29 @@ export function collectNewTxs({
|
||||
sessionEntry.lastSignature = signature;
|
||||
}
|
||||
|
||||
export function getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages,
|
||||
}: {
|
||||
coValueRow: StoredCoValueRow;
|
||||
newContentMessages: CojsonInternalTypes.NewContentMessage[];
|
||||
}) {
|
||||
return coValueRow.header.ruleset.type === "group"
|
||||
? getGroupDependedOnCoValues(newContentMessages)
|
||||
: coValueRow.header.ruleset.type === "ownedByGroup"
|
||||
? getOwnedByGroupDependedOnCoValues(coValueRow, newContentMessages)
|
||||
: [];
|
||||
}
|
||||
|
||||
function getGroupDependedOnCoValues(
|
||||
newContentMessages: CojsonInternalTypes.NewContentMessage[],
|
||||
export function getDependedOnCoValues(
|
||||
header: CojsonInternalTypes.CoValueHeader,
|
||||
contentMessage: CojsonInternalTypes.NewContentMessage,
|
||||
) {
|
||||
const keys: CojsonInternalTypes.RawCoID[] = [];
|
||||
const deps = new Set<RawCoID>();
|
||||
|
||||
/**
|
||||
* Collect all the signing keys inside the transactions to list all the
|
||||
* dependencies required to correctly access the CoValue.
|
||||
*/
|
||||
for (const piece of newContentMessages) {
|
||||
for (const sessionEntry of Object.values(piece.new)) {
|
||||
for (const sessionID of Object.keys(contentMessage.new) as SessionID[]) {
|
||||
const accountId = cojsonInternals.accountOrAgentIDfromSessionID(sessionID);
|
||||
|
||||
if (
|
||||
cojsonInternals.isAccountID(accountId) &&
|
||||
accountId !== contentMessage.id
|
||||
) {
|
||||
deps.add(accountId);
|
||||
}
|
||||
}
|
||||
|
||||
if (header.ruleset.type === "group") {
|
||||
/**
|
||||
* Collect all the signing keys inside the transactions to list all the
|
||||
* dependencies required to correctly access the CoValue.
|
||||
*/
|
||||
for (const sessionEntry of Object.values(contentMessage.new)) {
|
||||
for (const tx of sessionEntry.newTransactions) {
|
||||
if (tx.privacy !== "trusting") continue;
|
||||
|
||||
@@ -83,7 +82,7 @@ function getGroupDependedOnCoValues(
|
||||
const key = cojsonInternals.getGroupDependentKey(change.key);
|
||||
|
||||
if (key) {
|
||||
keys.push(key);
|
||||
deps.add(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -91,36 +90,11 @@ function getGroupDependedOnCoValues(
|
||||
}
|
||||
}
|
||||
|
||||
return keys;
|
||||
}
|
||||
|
||||
function getOwnedByGroupDependedOnCoValues(
|
||||
coValueRow: StoredCoValueRow,
|
||||
newContentMessages: CojsonInternalTypes.NewContentMessage[],
|
||||
) {
|
||||
if (coValueRow.header.ruleset.type !== "ownedByGroup") return [];
|
||||
|
||||
const keys: CojsonInternalTypes.RawCoID[] = [coValueRow.header.ruleset.group];
|
||||
|
||||
/**
|
||||
* Collect all the signing keys inside the transactions to list all the
|
||||
* dependencies required to correctly access the CoValue.
|
||||
*/
|
||||
for (const piece of newContentMessages) {
|
||||
for (const sessionID of Object.keys(piece.new) as SessionID[]) {
|
||||
const accountId =
|
||||
cojsonInternals.accountOrAgentIDfromSessionID(sessionID);
|
||||
|
||||
if (
|
||||
cojsonInternals.isAccountID(accountId) &&
|
||||
accountId !== coValueRow.id
|
||||
) {
|
||||
keys.push(accountId);
|
||||
}
|
||||
}
|
||||
if (header.ruleset.type === "ownedByGroup") {
|
||||
deps.add(header.ruleset.group);
|
||||
}
|
||||
|
||||
return keys;
|
||||
return deps;
|
||||
}
|
||||
|
||||
function safeParseChanges(changes: Stringified<JsonValue[]>) {
|
||||
|
||||
@@ -13,7 +13,7 @@ function getMockedCoValueId() {
|
||||
function generateNewContentMessage(
|
||||
privacy: "trusting" | "private",
|
||||
changes: any[],
|
||||
accountId?: `co_z${string}`,
|
||||
accountId: `co_z${string}`,
|
||||
) {
|
||||
return {
|
||||
action: "content",
|
||||
@@ -46,18 +46,21 @@ describe("getDependedOnCoValues", () => {
|
||||
},
|
||||
} as any;
|
||||
|
||||
const result = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [
|
||||
generateNewContentMessage("trusting", [
|
||||
const accountId = getMockedCoValueId();
|
||||
const result = getDependedOnCoValues(
|
||||
coValueRow.header,
|
||||
generateNewContentMessage(
|
||||
"trusting",
|
||||
[
|
||||
{ op: "set", key: "co_zabc123", value: "test" },
|
||||
{ op: "set", key: "parent_co_zdef456", value: "test" },
|
||||
{ op: "set", key: "normal_key", value: "test" },
|
||||
]),
|
||||
],
|
||||
});
|
||||
],
|
||||
accountId,
|
||||
),
|
||||
);
|
||||
|
||||
expect(result).toEqual(["co_zabc123", "co_zdef456"]);
|
||||
expect(result).toEqual(new Set([accountId, "co_zabc123", "co_zdef456"]));
|
||||
});
|
||||
|
||||
it("should not throw on malformed JSON", () => {
|
||||
@@ -70,9 +73,12 @@ describe("getDependedOnCoValues", () => {
|
||||
},
|
||||
} as any;
|
||||
|
||||
const message = generateNewContentMessage("trusting", [
|
||||
{ op: "set", key: "co_zabc123", value: "test" },
|
||||
]);
|
||||
const accountId = getMockedCoValueId();
|
||||
const message = generateNewContentMessage(
|
||||
"trusting",
|
||||
[{ op: "set", key: "co_zabc123", value: "test" }],
|
||||
accountId,
|
||||
);
|
||||
|
||||
message.new["invalid_session" as SessionID] = {
|
||||
after: 0,
|
||||
@@ -86,12 +92,9 @@ describe("getDependedOnCoValues", () => {
|
||||
],
|
||||
};
|
||||
|
||||
const result = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [message],
|
||||
});
|
||||
const result = getDependedOnCoValues(coValueRow.header, message);
|
||||
|
||||
expect(result).toEqual(["co_zabc123"]);
|
||||
expect(result).toEqual(new Set([accountId, "co_zabc123"]));
|
||||
});
|
||||
|
||||
it("should return dependencies for ownedByGroup ruleset", () => {
|
||||
@@ -123,12 +126,9 @@ describe("getDependedOnCoValues", () => {
|
||||
newTransactions: [],
|
||||
};
|
||||
|
||||
const result = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [message],
|
||||
});
|
||||
const result = getDependedOnCoValues(coValueRow.header, message);
|
||||
|
||||
expect(result).toEqual([groupId, accountId]);
|
||||
expect(result).toEqual(new Set([groupId, accountId]));
|
||||
});
|
||||
|
||||
it("should return empty array for other ruleset types", () => {
|
||||
@@ -141,18 +141,21 @@ describe("getDependedOnCoValues", () => {
|
||||
},
|
||||
} as any;
|
||||
|
||||
const result = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [
|
||||
generateNewContentMessage("trusting", [
|
||||
const accountId = getMockedCoValueId();
|
||||
const result = getDependedOnCoValues(
|
||||
coValueRow.header,
|
||||
generateNewContentMessage(
|
||||
"trusting",
|
||||
[
|
||||
{ op: "set", key: "co_zabc123", value: "test" },
|
||||
{ op: "set", key: "parent_co_zdef456", value: "test" },
|
||||
{ op: "set", key: "normal_key", value: "test" },
|
||||
]),
|
||||
],
|
||||
});
|
||||
],
|
||||
accountId,
|
||||
),
|
||||
);
|
||||
|
||||
expect(result).toEqual([]);
|
||||
expect(result).toEqual(new Set([accountId]));
|
||||
});
|
||||
|
||||
it("should ignore non-trusting transactions in group ruleset", () => {
|
||||
@@ -165,15 +168,17 @@ describe("getDependedOnCoValues", () => {
|
||||
},
|
||||
} as any;
|
||||
|
||||
const result = getDependedOnCoValues({
|
||||
coValueRow,
|
||||
newContentMessages: [
|
||||
generateNewContentMessage("private", [
|
||||
{ op: "set", key: "co_zabc123", value: "test" },
|
||||
]),
|
||||
],
|
||||
});
|
||||
const accountId = getMockedCoValueId();
|
||||
|
||||
expect(result).toEqual([]);
|
||||
const result = getDependedOnCoValues(
|
||||
coValueRow.header,
|
||||
generateNewContentMessage(
|
||||
"private",
|
||||
[{ op: "set", key: "co_zabc123", value: "test" }],
|
||||
accountId,
|
||||
),
|
||||
);
|
||||
|
||||
expect(result).toEqual(new Set([accountId]));
|
||||
});
|
||||
});
|
||||
|
||||
@@ -21,7 +21,6 @@ import { fixtures } from "./fixtureMessages.js";
|
||||
|
||||
type RawCoID = CojsonInternalTypes.RawCoID;
|
||||
type NewContentMessage = CojsonInternalTypes.NewContentMessage;
|
||||
type Transaction = CojsonInternalTypes.Transaction;
|
||||
vi.mock("../syncUtils");
|
||||
|
||||
const coValueIdToLoad = "co_zKwG8NyfZ8GXqcjDHY4NS3SbU2m";
|
||||
@@ -58,7 +57,7 @@ describe("DB sync manager", () => {
|
||||
syncManager.sendStateMessage = vi.fn();
|
||||
|
||||
// No dependencies found
|
||||
vi.mocked(getDependedOnCoValues).mockReturnValue([]);
|
||||
vi.mocked(getDependedOnCoValues).mockReturnValue(new Set());
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
@@ -135,7 +134,7 @@ describe("DB sync manager", () => {
|
||||
|
||||
// Fetch dependencies of the current dependency for the future recursion iterations
|
||||
vi.mocked(getDependedOnCoValues).mockImplementation(
|
||||
({ coValueRow }) => dependenciesTreeWithLoop[coValueRow.id] || [],
|
||||
(_, msg) => new Set(dependenciesTreeWithLoop[msg.id] || []),
|
||||
);
|
||||
|
||||
await syncManager.handleSyncMessage(loadMsg);
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
# cojson-transport-nodejs-ws
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
|
||||
## 0.14.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "cojson-transport-ws",
|
||||
"type": "module",
|
||||
"version": "0.14.1",
|
||||
"version": "0.14.16",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -1,5 +1,17 @@
|
||||
# cojson
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 5e253cc: Version bump
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 23daa7c: Align the processing of the group dependencies between LocalNode and Storage.
|
||||
|
||||
## 0.14.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
},
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"version": "0.14.1",
|
||||
"version": "0.14.16",
|
||||
"devDependencies": {
|
||||
"@opentelemetry/sdk-metrics": "^2.0.0",
|
||||
"typescript": "catalog:"
|
||||
|
||||
@@ -72,6 +72,7 @@ import type {
|
||||
import {
|
||||
DisconnectedError,
|
||||
PingTimeoutError,
|
||||
SyncManager,
|
||||
emptyKnownState,
|
||||
} from "./sync.js";
|
||||
|
||||
@@ -102,6 +103,7 @@ export const cojsonInternals = {
|
||||
getGroupDependentKeyList,
|
||||
getGroupDependentKey,
|
||||
disablePermissionErrors,
|
||||
SyncManager,
|
||||
CO_VALUE_LOADING_CONFIG,
|
||||
setCoValueLoadingRetryDelay(delay: number) {
|
||||
CO_VALUE_LOADING_CONFIG.RETRY_DELAY = delay;
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# jazz-auth-betterauth
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
- jazz-betterauth-client-plugin@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
- jazz-betterauth-client-plugin@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-auth-betterauth",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "src/index.ts",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# jazz-auth-clerk
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"name": "jazz-auth-clerk",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"cojson": "workspace:0.14.1",
|
||||
"jazz-browser": "workspace:0.14.14",
|
||||
"jazz-tools": "workspace:0.14.14"
|
||||
"cojson": "workspace:0.14.16",
|
||||
"jazz-browser": "workspace:0.14.16",
|
||||
"jazz-tools": "workspace:0.14.16"
|
||||
},
|
||||
"scripts": {
|
||||
"format-and-lint": "biome check .",
|
||||
|
||||
@@ -1,5 +1,17 @@
|
||||
# jazz-betterauth-client-plugin
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-betterauth-server-plugin@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-betterauth-server-plugin@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-betterauth-client-plugin",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "src/index.ts",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# jazz-betterauth-server-plugin
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-betterauth-server-plugin",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "src/index.ts",
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
# jazz-browser-media-images
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-browser@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-browser-media-images",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
@@ -8,8 +8,8 @@
|
||||
"dependencies": {
|
||||
"@types/image-blob-reduce": "^4.1.1",
|
||||
"image-blob-reduce": "^4.1.0",
|
||||
"jazz-browser": "workspace:0.14.14",
|
||||
"jazz-tools": "workspace:0.14.14",
|
||||
"jazz-browser": "workspace:0.14.16",
|
||||
"jazz-tools": "workspace:0.14.16",
|
||||
"pica": "^9.0.1"
|
||||
},
|
||||
"scripts": {
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# jazz-browser
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-storage-indexeddb@0.14.16
|
||||
- cojson-transport-ws@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- cojson-storage-indexeddb@0.14.15
|
||||
- cojson-transport-ws@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-browser",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
|
||||
@@ -1,5 +1,29 @@
|
||||
# jazz-browser
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-transport-ws@0.14.16
|
||||
- jazz-auth-clerk@0.14.16
|
||||
- jazz-react-core@0.14.16
|
||||
- jazz-react-native-core@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-react-native-core@0.14.15
|
||||
- cojson-transport-ws@0.14.15
|
||||
- jazz-auth-clerk@0.14.15
|
||||
- jazz-react-core@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-expo",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "./dist/index.js",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
# jazz-inspector-element
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- jazz-inspector@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-inspector-element",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "./dist/main.js",
|
||||
"types": "./dist/main.d.ts",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# jazz-inspector
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- jazz-react-core@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- jazz-react-core@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jazz-inspector",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"type": "module",
|
||||
"main": "./dist/app.js",
|
||||
"types": "./dist/app.d.ts",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# jazz-autosub
|
||||
|
||||
## 0.14.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5e253cc]
|
||||
- cojson@0.14.16
|
||||
- cojson-transport-ws@0.14.16
|
||||
- jazz-tools@0.14.16
|
||||
|
||||
## 0.14.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [23daa7c]
|
||||
- cojson@0.14.15
|
||||
- cojson-transport-ws@0.14.15
|
||||
- jazz-tools@0.14.15
|
||||
|
||||
## 0.14.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"types": "dist/index.d.ts",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"version": "0.14.14",
|
||||
"version": "0.14.16",
|
||||
"dependencies": {
|
||||
"cojson": "workspace:*",
|
||||
"cojson-transport-ws": "workspace:*",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user