Compare commits

..

61 Commits

Author SHA1 Message Date
Benjamin S. Leveritt
7a3cfabb4c Merge pull request #2481 from garden-co/changeset-release/main
Version Packages
2025-06-11 09:49:08 +01:00
github-actions[bot]
df7101a8ee Version Packages 2025-06-11 08:47:01 +00:00
Benjamin S. Leveritt
f74b46ee2f Merge pull request #2495 from garden-co/2494-applydiff-out-of-bounds-for-strings-with-emoji
Fix: `applyDiff` out of bounds for strings with emoji
2025-06-11 09:43:30 +01:00
Benjamin S. Leveritt
9177579f53 Fixs coText applyDiff out of bounds insertion with emoji 2025-06-11 09:35:56 +01:00
Benjamin S. Leveritt
f1c00903f9 Removes unused navigator code 2025-06-11 09:34:06 +01:00
Benjamin S. Leveritt
1ca9299590 Adds grapheme split helpers for coText 2025-06-11 09:33:45 +01:00
Benjamin S. Leveritt
34082ccaf5 Merge pull request #2486 from garden-co/add-context-to-twoslash-errors
Adds more details to twoslash errors
2025-06-10 17:40:55 +01:00
Benjamin S. Leveritt
a09c417d81 Formats title and code to make is easier to spot 2025-06-10 17:36:41 +01:00
Benjamin S. Leveritt
00a188c22f Merge pull request #2484 from garden-co/2483-encryption-in-jazz-docs
2483 encryption in jazz docs
2025-06-10 16:39:31 +01:00
Benjamin S. Leveritt
dc630b0807 Update homepage/homepage/content/docs/resources/encryption.mdx
Co-authored-by: Anselm Eickhoff <anselm.eickhoff@gmail.com>
2025-06-10 16:39:20 +01:00
Benjamin S. Leveritt
484baabe22 Updates introduction sentence as per feedback 2025-06-10 16:38:16 +01:00
Benjamin S. Leveritt
f529bede7b Adds more details to twoslash errors
To make it easier to track down
2025-06-10 16:37:01 +01:00
Trisha Lim
6f637d21ab Merge pull request #2446 from garden-co/feat/analytics
feat: track create-jazz-app copy action in hero
2025-06-10 15:54:23 +01:00
Benjamin S. Leveritt
aeb96510da Adds a section to the FAQ 2025-06-10 15:31:20 +01:00
Benjamin S. Leveritt
d53cc3676d Adds Encryption reference doc 2025-06-10 15:23:13 +01:00
Guido D'Orsi
81dedb6395 Merge pull request #2448 from garden-co/fix/react-native-db-connection
fix(react-native): close db connections and keep the same instance of storage over JazzProvider renders
2025-06-10 12:24:19 +02:00
Nikos Papadopoulos
17cb04bfb1 Merge pull request #2478 from garden-co/2477-fix-mime-types-for-favicon-in-all-example-apps
fixes favicon mime type for example apps
2025-06-10 12:22:39 +02:00
Nikos Papadopoulos
a98b4e5d81 updates links to public directory 2025-06-09 23:13:47 +01:00
Nikos Papadopoulos
7eb7e2f656 reorders metadata tags for consistency across example apps 2025-06-09 20:22:36 +01:00
Nikos Papadopoulos
80703ea1cc tidy up for metadata tags 2025-06-09 20:15:49 +01:00
Nikos Papadopoulos
d46e0b9d0c fixes favicon mime type, replaces png with ico files where applicable, moves favicon to ./public for consistency 2025-06-09 20:00:45 +01:00
Nikos Papadopoulos
430a9e252a Merge pull request #2475 from garden-co/2474-fix-favicon-for-richtext-prosekit-and-organization-examples
fixes missing favicon for richtext-prosekit and organization examples
2025-06-09 16:26:19 +02:00
Nikos Papadopoulos
6f519462df fixes missing favicon for richtext-prosekit and organization examples 2025-06-09 15:13:41 +01:00
Guido D'Orsi
a0ae2811ce test: wait for Join chat to be visible 2025-06-09 15:51:01 +02:00
Guido D'Orsi
73e5a3548a fix: make chat-rn example private 2025-06-09 13:03:04 +02:00
Guido D'Orsi
c5da3a42a1 fix: remove version field from examples to exclude them from the changelog 2025-06-09 12:49:07 +02:00
Guido D'Orsi
74fa115709 Merge pull request #2455 from garden-co/changeset-release/main
Version Packages
2025-06-09 12:41:11 +02:00
github-actions[bot]
baa5278cf3 Version Packages 2025-06-09 10:33:53 +00:00
Guido D'Orsi
6852b60e72 Merge pull request #2471 from garden-co/fix/account-migration-loaded-types
Ensure the types on withMigration expect a shallowly loaded Account
2025-06-09 12:30:04 +02:00
Anselm
fc2b054fc2 Fix formatting 2025-06-09 11:13:02 +01:00
Anselm
048ac1d54f Add changeset 2025-06-09 11:10:47 +01:00
Anselm
4ed7d61ea4 Ensure the types on withMigration expect a shallowly loaded Account 2025-06-09 11:10:18 +01:00
Trisha Lim
ced325da06 Merge pull request #2470 from garden-co/docs/inspector-full-json 2025-06-09 10:23:53 +01:00
Trisha Lim
5563799a2a lint fix 2025-06-09 09:19:35 +01:00
Trisha Lim
5a783f8eac Merge pull request #2467 from joeinnes/fix-small-screen-x-overflow
Add w-full to the pagefind container div
2025-06-09 09:17:13 +01:00
Trisha Lim
0ea1530ee9 update inspector docs instruction for passing credentials 2025-06-09 09:12:56 +01:00
Trisha Lim
164579ee9c Merge pull request #2469 from timolins/paste-json-inspector
[Inspector] Allow pasting of full account JSON
2025-06-09 09:00:59 +01:00
Timo Lins
fc453e68c1 Allow pasting of full json into inspector account 2025-06-08 21:22:46 +02:00
Joe Innes
48544ca4d1 Add w-full to the pagefind container div. 2025-06-07 14:55:10 +02:00
Nikos Papadopoulos
b2e2b91dd7 Merge pull request #2461 from garden-co/nikos/ex-app-prosemirror-layout
updates richtext-prosemirror example app layout
2025-06-06 18:16:00 +02:00
Nikos Papadopoulos
36d7791326 updates richtext-prosemirror example app class names 2025-06-06 16:45:53 +01:00
Nikos Papadopoulos
707d84dea0 updates richtext-prosemirror example app layout 2025-06-06 16:22:27 +01:00
Emil Sayahi
6da8e3948c feat(docs): search (#2378)
* feat: documentation search results

Signed-off-by: Benjamin S. Leveritt <benjamin@leveritt.co.uk>
Co-authored-by: Benjamin S. Leveritt <benjamin@leveritt.co.uk>
Co-authored-by: Trisha Lim <hello@trishalim.com>
2025-06-06 15:27:55 +01:00
Sammii
225da5ca42 Merge pull request #2458 from garden-co/feat/covalues-visualisation 2025-06-06 15:14:28 +02:00
Anselm Eickhoff
3943f7fc41 Merge pull request #2460 from garden-co/fix/vercel-ingore-build-project-id
Use vercel project ID for ignore build step
2025-06-06 14:03:59 +01:00
Anselm
d982bb50db Use vercel project ID for ignore build step 2025-06-06 14:02:51 +01:00
Sammii
92de0a6683 covalues page update 2025-06-06 13:36:33 +01:00
Sammii
e10d00b444 switch refactor 2025-06-06 13:36:24 +01:00
Sammii
89b6c1cbb9 creating Switch component from radix 2025-06-06 13:34:47 +01:00
Sammii
6ec1933d65 updating schema to zod 2025-06-06 13:34:18 +01:00
Nikos Papadopoulos
854c6761a4 Merge pull request #2459 from garden-co/nikos/docs-url-updates
updates example app URLs in documentation
2025-06-06 14:19:10 +02:00
Nikos Papadopoulos
fc8acb0688 updates example app URLs in documentation 2025-06-06 13:10:50 +01:00
Trisha Lim
7a65b35ac5 Merge pull request #2437 from garden-co/chore/tailwind-v4
chore: update react starter to tailwind v4
2025-06-06 12:45:22 +01:00
Trisha Lim
2ef3938d71 update lock file 2025-06-06 12:09:16 +01:00
Trisha Lim
1e71b23779 fix(starter): wording 2025-06-06 12:08:37 +01:00
Trisha Lim
31071a4b21 chore: update react starter to tailwind v4 2025-06-06 12:08:35 +01:00
Sammii
8f53a52110 moving covalues folder into app to see components on /covalues 2025-06-06 10:04:25 +01:00
Guido D'Orsi
8ef14d4850 fix: do not create a storage adapter on each JazzProvider render 2025-06-05 18:22:00 +02:00
Guido D'Orsi
1a7b7942ad test(expo): restore the chat loading test 2025-06-05 18:22:00 +02:00
Guido D'Orsi
5f42c97184 fix: close the DB connection when the node/context is closed 2025-06-05 18:22:00 +02:00
Trisha Lim
2a2b474aa4 feat: track create-jazz-app copy action in hero 2025-06-05 16:16:06 +01:00
231 changed files with 4062 additions and 855 deletions

View File

@@ -1,5 +0,0 @@
---
"cojson": patch
---
fix: clarify `Group.addMember` error message when attempting to set roles with insufficient permissions

View File

@@ -1,5 +1,17 @@
# betterauth
## 0.1.25
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-betterauth-server-plugin@0.14.22
- jazz-inspector@0.14.22
- jazz-react@0.14.22
- jazz-react-auth-betterauth@0.14.22
- jazz-betterauth-client-plugin@0.14.22
## 0.1.24
### Patch Changes

View File

@@ -1,6 +1,5 @@
{
"name": "betterauth",
"version": "0.1.24",
"private": true,
"type": "module",
"scripts": {

View File

@@ -1,5 +1,14 @@
# chat-rn-expo-clerk
## 1.0.145
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-expo@0.14.22
- jazz-react-native-media-images@0.14.22
## 1.0.144
### Patch Changes

View File

@@ -1,7 +1,6 @@
{
"name": "chat-rn-expo-clerk",
"main": "index.js",
"version": "1.0.144",
"scripts": {
"build": "expo export -p ios",
"start": "expo start",

View File

@@ -1,5 +1,13 @@
# chat-rn-expo
## 1.0.13
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-expo@0.14.22
## 1.0.12
### Patch Changes

View File

@@ -1,6 +1,5 @@
{
"name": "chat-rn-expo",
"version": "1.0.12",
"main": "index.ts",
"scripts": {
"build": "expo prebuild",

View File

@@ -128,7 +128,11 @@ export default function ChatScreen() {
}}
testID="chat-id-input"
/>
<TouchableOpacity onPress={joinChat} style={styles.joinChatButton}>
<TouchableOpacity
testID="join-chat-button"
onPress={joinChat}
style={styles.joinChatButton}
>
<Text style={styles.newChatButtonText}>Join chat</Text>
</TouchableOpacity>
</View>

View File

@@ -41,12 +41,17 @@ appId: tools.jazz.chatrnexpo
# logout
- tapOn: "Logout"
- assertVisible: "Username"
- assertVisible: "Anonymous user"
# join chat
- extendedWaitUntil:
visible: "Anonymous user"
timeout: 10000
# join chat
## Commented because it fails on CI
# - tapOn:
# id: "chat-id-input"
# - inputText: "co_zFs6KFyhxPw4xtw83tcEMzeHUNv" # Use a static id because maestro doesn't have access to the system clipboard
# - tapOn: "Join chat"
# - tapOn:
# id: "join-chat-button"
# - assertVisible: "boorad"
# - assertVisible: "bro, low key, it do be like that tho"

View File

@@ -0,0 +1,13 @@
#!/bin/bash
# This script is necessary, because unlike ios, the android emulator action
# accepts a script, runs it as your tests, then terminates.
set -e
# run the e2e tests
export PATH="$PATH":"$HOME/.maestro/bin"
export MAESTRO_DRIVER_STARTUP_TIMEOUT=300000 # setting to 5 mins 👀
export MAESTRO_CLI_NO_ANALYTICS=1
export MAESTRO_CLI_ANALYSIS_NOTIFICATION_DISABLED=true
maestro test test/e2e/flow.yml

View File

@@ -1,5 +1,16 @@
# chat-rn
## 1.0.140
### Patch Changes
- Updated dependencies [57fb69f]
- Updated dependencies [048ac1d]
- cojson@0.14.22
- jazz-tools@0.14.22
- cojson-transport-ws@0.14.22
- jazz-react-native@0.14.22
## 1.0.139
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "chat-rn",
"version": "1.0.139",
"private": true,
"main": "index.js",
"scripts": {
"android": "react-native run-android",

View File

@@ -1,5 +1,14 @@
# chat-vue
## 0.0.120
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-browser@0.14.22
- jazz-vue@0.14.22
## 0.0.119
### Patch Changes

View File

@@ -1,9 +1,9 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="icon" href="./public/favicon.ico" type="image/png">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Chat Vue Example</title>
</head>
<body>

View File

@@ -1,6 +1,5 @@
{
"name": "chat-vue",
"version": "0.0.119",
"private": true,
"type": "module",
"scripts": {

View File

@@ -1,5 +1,14 @@
# jazz-example-chat
## 0.0.220
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-inspector@0.14.22
- jazz-react@0.14.22
## 0.0.219
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/jazz-logo.png" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<link rel="stylesheet" href="/src/index.css" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Chat Example</title>

View File

@@ -1,7 +1,6 @@
{
"name": "jazz-example-chat",
"private": true,
"version": "0.0.219",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# minimal-auth-clerk
## 0.0.119
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
- jazz-react-auth-clerk@0.14.22
## 0.0.118
### Patch Changes

View File

@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Minimal Auth Clerk Example | Jazz</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "clerk",
"private": true,
"version": "0.0.118",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# file-share-svelte
## 0.0.104
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-svelte@0.14.22
- jazz-inspector-element@0.14.22
## 0.0.103
### Patch Changes

View File

@@ -1,6 +1,5 @@
{
"name": "file-share-svelte",
"version": "0.0.103",
"private": true,
"type": "module",
"scripts": {

View File

@@ -1,8 +1,8 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
<meta charset="utf-8" />
<link rel="icon" type="image/png" href="%sveltekit.assets%/favicon.png" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
%sveltekit.head%
</head>

View File

@@ -1,5 +1,14 @@
# jazz-tailwind-demo-auth-starter
## 0.0.59
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-inspector@0.14.22
- jazz-react@0.14.22
## 0.0.58
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="./public/favicon.ico" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | React + Demo Auth + Tailwind</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "filestream",
"private": true,
"version": "0.0.58",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1,5 +1,13 @@
# form
## 0.1.60
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.1.59
### Patch Changes

View File

@@ -2,9 +2,9 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Form example</title>
<link rel="icon" type="image/png" href="./favicon.ico">
</head>
<body class="h-full flex flex-col bg-white text-stone-700 dark:text-stone-400 dark:bg-stone-925">
<div id="root" class="align-self-center flex-1"></div>

View File

@@ -1,7 +1,6 @@
{
"name": "form",
"private": true,
"version": "0.1.59",
"type": "module",
"scripts": {
"dev": "vite",
@@ -14,7 +13,6 @@
"hash-slash": "workspace:*",
"jazz-react": "workspace:*",
"jazz-tools": "workspace:*",
"jazz-inspector": "workspace:*",
"react": "19.0.0",
"react-dom": "19.0.0"
},

View File

@@ -1,13 +1,11 @@
import { useCoState } from "jazz-react";
import { LinkToHome } from "./LinkToHome.tsx";
import { OrderFormWithSaveButton } from "./OrderFormWithSaveButton.tsx";
import { OrderForm } from "./OrderForm.tsx";
import { OrderThumbnail } from "./OrderThumbnail.tsx";
import { BubbleTeaOrder } from "./schema.ts";
export function EditOrder(props: { id: string }) {
const order = useCoState(BubbleTeaOrder, props.id, {
resolve: { addOns: true, instructions: true },
});
const order = useCoState(BubbleTeaOrder, props.id);
if (!order) return;
@@ -15,17 +13,13 @@ export function EditOrder(props: { id: string }) {
<>
<LinkToHome />
<div>
<p>Saved order:</p>
<OrderThumbnail order={order} />
</div>
<OrderThumbnail order={order} />
<h1 className="text-lg">
<strong>Edit your bubble tea order 🧋</strong>
</h1>
<OrderFormWithSaveButton order={order} />
<OrderForm order={order} />
</>
);
}

View File

@@ -1,171 +0,0 @@
import { useCoState } from "jazz-react";
import { CoPlainText, Loaded } from "jazz-tools";
import { useEffect, useState } from "react";
import { OrderThumbnail } from "./OrderThumbnail.tsx";
import {
BubbleTeaAddOnTypes,
BubbleTeaBaseTeaTypes,
BubbleTeaOrder,
ListOfBubbleTeaAddOns,
} from "./schema.ts";
type LoadedBubbleTeaOrder = Loaded<
typeof BubbleTeaOrder,
{ addOns: { $each: true }; instructions: true }
>;
const useOrderForm = (order: LoadedBubbleTeaOrder) => {
const [id, setId] = useState<string | undefined>();
const value = useCoState(BubbleTeaOrder, id, {
resolve: { addOns: { $each: true }, instructions: true },
});
useEffect(() => {
// deep clone order
const cloned = BubbleTeaOrder.create({
...order,
instructions: CoPlainText.create(`${order.instructions}` || ""),
addOns: ListOfBubbleTeaAddOns.create([...order.addOns]),
});
setId(cloned.id);
}, [order.id]);
if (!value) return { value, save: () => {} };
const save = () => {
order.baseTea = value.baseTea;
value.addOns.applyDiff(order.addOns);
order.deliveryDate = value.deliveryDate;
order.withMilk = value.withMilk;
const instructions = order.instructions || CoPlainText.create("");
if (value.instructions) {
instructions.applyDiff(value.instructions.toString());
order.instructions = instructions;
}
};
return { value, save };
};
export function OrderFormWithSaveButton({
order: originalOrder,
}: {
order: LoadedBubbleTeaOrder;
}) {
const { value: order, save } = useOrderForm(originalOrder);
if (!order) return null;
const handleInstructionsChange = (
e: React.ChangeEvent<HTMLTextAreaElement>,
) => {
if (order.instructions) {
return order.instructions.applyDiff(e.target.value);
}
order.instructions = CoPlainText.create(e.target.value, order._owner);
};
const submit = (e: React.FormEvent<HTMLFormElement>) => {
console.log("submit form");
e.preventDefault();
save();
};
return (
<form onSubmit={submit} className="grid gap-5">
<div>
<p>Unsaved order:</p>
<OrderThumbnail order={order} />
</div>
<div className="flex flex-col gap-2">
<label htmlFor="baseTea">Base tea</label>
<select
name="baseTea"
id="baseTea"
value={order.baseTea || ""}
className="dark:bg-transparent"
onChange={(e) => (order.baseTea = e.target.value as any)}
required
>
<option value="" disabled>
Please select your preferred base tea
</option>
{BubbleTeaBaseTeaTypes.map((teaType) => (
<option key={teaType} value={teaType}>
{teaType}
</option>
))}
</select>
</div>
<fieldset>
<legend className="mb-2">Add-ons</legend>
{BubbleTeaAddOnTypes.map((addOn) => (
<div key={addOn} className="flex items-center gap-2">
<input
type="checkbox"
value={addOn}
name={addOn}
id={addOn}
checked={order.addOns?.includes(addOn) || false}
onChange={(e) => {
if (e.target.checked) {
order.addOns?.push(addOn);
} else {
order.addOns?.splice(order.addOns?.indexOf(addOn), 1);
}
}}
/>
<label htmlFor={addOn}>{addOn}</label>
</div>
))}
</fieldset>
<div className="flex flex-col gap-2">
<label htmlFor="deliveryDate">Delivery date</label>
<input
type="date"
name="deliveryDate"
id="deliveryDate"
className="dark:bg-transparent"
value={order.deliveryDate?.toISOString().split("T")[0] || ""}
onChange={(e) => (order.deliveryDate = new Date(e.target.value))}
required
/>
</div>
<div className="flex items-center gap-2">
<input
type="checkbox"
name="withMilk"
id="withMilk"
checked={order.withMilk}
onChange={(e) => (order.withMilk = e.target.checked)}
/>
<label htmlFor="withMilk">With milk?</label>
</div>
<div className="flex flex-col gap-2">
<label htmlFor="instructions">Special instructions</label>
<textarea
name="instructions"
id="instructions"
value={`${order.instructions}`}
className="dark:bg-transparent"
onChange={handleInstructionsChange}
></textarea>
</div>
<button
type="submit"
className="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"
>
Submit
</button>
</form>
);
}

View File

@@ -3,7 +3,6 @@ import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import App from "./App.tsx";
import "./index.css";
import { JazzInspector } from "jazz-inspector";
import { apiKey } from "./apiKey";
import { JazzAccount } from "./schema.ts";
@@ -16,7 +15,6 @@ createRoot(document.getElementById("root")!).render(
AccountSchema={JazzAccount}
>
<App />
<JazzInspector />
</JazzProvider>
</StrictMode>,
);

View File

@@ -1,5 +1,13 @@
# image-upload
## 0.0.116
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.115
### Patch Changes

View File

@@ -2,9 +2,9 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Image upload example</title>
<link rel="icon" href="./public/favicon.ico" type="image/png">
</head>
<body>
<div id="root"></div>

View File

@@ -1,7 +1,6 @@
{
"name": "image-upload",
"private": true,
"version": "0.0.115",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1,5 +1,14 @@
# jazz-example-inspector
## 0.0.169
### Patch Changes
- Updated dependencies [57fb69f]
- cojson@0.14.22
- cojson-transport-ws@0.14.22
- jazz-inspector@0.14.22
## 0.0.168
### Patch Changes

View File

@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/jazz-logo.png" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<link rel="stylesheet" href="/src/index.css" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Inspector</title>

View File

@@ -1,7 +1,6 @@
{
"name": "jazz-inspector-app",
"private": true,
"version": "0.0.168",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -27,6 +27,13 @@ interface Account {
secret: AgentSecret;
}
interface JazzLoggedInSecret {
accountID: string;
accountSecret: string;
secretSeed?: number[];
provider?: string;
}
export default function CoJsonViewerApp() {
const [accounts, setAccounts] = useState<Account[]>(() => {
const storedAccounts = localStorage.getItem("inspectorAccounts");
@@ -269,7 +276,26 @@ function AddAccountForm({
const [id, setId] = useState("");
const [secret, setSecret] = useState("");
const handleSubmit = (e: React.FormEvent) => {
const handleIdChange = (e: React.ChangeEvent<HTMLInputElement>): void => {
const value = e.target.value;
setId(value);
// Try to parse as JSON if it looks like a JSON object
if (value.trim().startsWith("{") && value.trim().endsWith("}")) {
try {
const parsed: JazzLoggedInSecret = JSON.parse(value);
if (parsed.accountID && parsed.accountSecret) {
setId(parsed.accountID);
setSecret(parsed.accountSecret);
}
} catch (error) {
// If parsing fails, just keep the raw value in the id field
console.log("Failed to parse JSON:", error);
}
}
};
const handleSubmit = (e: React.FormEvent): void => {
e.preventDefault();
addAccount(id as RawAccountID, secret as AgentSecret);
setId("");
@@ -290,13 +316,14 @@ function AddAccountForm({
jazz-logged-in-secret
</code>{" "}
local storage key from within your Jazz app for your account
credentials.
credentials. You can paste the full JSON object or enter the ID and
secret separately.
</p>
<Input
label="Account ID"
value={id}
placeholder="co_z1234567890abcdef123456789"
onChange={(e) => setId(e.target.value)}
placeholder="co_z1234567890abcdef123456789 or paste full JSON"
onChange={handleIdChange}
/>
<Input
label="Account secret"

View File

@@ -1,5 +1,13 @@
# jazz-nextjs
## 0.1.9
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.1.8
### Patch Changes

View File

@@ -1,6 +1,5 @@
{
"name": "jazz-nextjs",
"version": "0.1.8",
"private": true,
"scripts": {
"dev": "next dev --turbopack",

View File

@@ -2,8 +2,8 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" href="/favicon.ico" />
<meta name="theme-color" content="#000000" />
<meta
name="description"

View File

@@ -1,5 +1,13 @@
# multi-cursors
## 0.0.112
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.111
### Patch Changes

View File

@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/favicon.ico" />
<link rel="icon" type="image/x-icon" href="./favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Multi-cursors</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "multi-cursors",
"private": true,
"version": "0.0.111",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# multiauth
## 0.0.60
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
- jazz-react-auth-clerk@0.14.22
## 0.0.59
### Patch Changes

View File

@@ -2,6 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="./favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Multi-auth (React)</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "multiauth",
"private": true,
"version": "0.0.59",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# jazz-example-musicplayer
## 0.0.141
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-inspector@0.14.22
- jazz-react@0.14.22
## 0.0.140
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/jazz-logo.png" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz - Music Player example</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "jazz-example-music-player",
"private": true,
"version": "0.0.140",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,13 @@
# organization
## 0.0.112
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.111
### Patch Changes

View File

@@ -2,8 +2,9 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Organization example</title>
<title>Jazz - Organization example</title>
</head>
<body class="h-full flex flex-col bg-gray-50 text-stone-700 dark:text-stone-400 dark:bg-stone-925">
<div id="root" class="align-self-center flex-1"></div>

View File

@@ -1,7 +1,6 @@
{
"name": "organization",
"private": true,
"version": "0.0.111",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,13 @@
# passkey-svelte
## 0.0.106
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-svelte@0.14.22
## 0.0.105
### Patch Changes

View File

@@ -1,6 +1,5 @@
{
"name": "passkey-svelte",
"version": "0.0.105",
"type": "module",
"private": true,
"scripts": {

View File

@@ -1,5 +1,13 @@
# minimal-auth-passkey
## 0.0.117
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.116
### Patch Changes

View File

@@ -2,10 +2,9 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Minimal Auth Passkey Example</title>
<link rel="icon" href="./public/favicon.ico" type="image/png">
</head>
<body>
<div id="root"></div>

View File

@@ -1,7 +1,6 @@
{
"name": "passkey",
"private": true,
"version": "0.0.116",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1,5 +1,13 @@
# passphrase
## 0.0.114
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.113
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Minimal Auth Passphrase Example</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "passphrase",
"private": true,
"version": "0.0.113",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,13 @@
# jazz-password-manager
## 0.0.138
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.137
### Patch Changes

View File

@@ -2,9 +2,9 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="./favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Password Manager Example</title>
<link rel="icon" type="image/png" href="./public/favicon.ico">
</head>
<body>
<div id="root"></div>

View File

@@ -1,7 +1,6 @@
{
"name": "jazz-password-manager",
"private": true,
"version": "0.0.137",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1,5 +1,13 @@
# jazz-example-pets
## 0.0.236
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.235
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/jazz-logo.png" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Rate My Pet Example</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "jazz-example-pets",
"private": true,
"version": "0.0.235",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,13 @@
# reactions
## 0.0.116
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.115
### Patch Changes

View File

@@ -2,6 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz | Reactions example</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "reactions",
"private": true,
"version": "0.0.115",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,10 @@
# example-prosekit-jazz
## 0.0.1
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
- jazz-richtext-prosemirror@0.14.22

View File

@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/favicon.ico" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Rich text ProseKit example app | Jazz</title>
</head>

View File

@@ -1,6 +1,5 @@
{
"name": "example-prosekit-jazz",
"version": "0.0.0",
"private": true,
"type": "module",
"scripts": {

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# richtext
## 0.0.106
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
- jazz-richtext-prosemirror@0.14.22
## 0.0.105
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/favicon.ico" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Rich text example app | Jazz</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "richtext",
"private": true,
"version": "0.0.105",
"type": "module",
"scripts": {
"dev": "vite",

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -49,26 +49,24 @@ export function Editor() {
return (
<div className="flex flex-col">
<div className="flex-1 flex flex-col md:flex-row gap-4 p-8">
<div className="flex-1 flex flex-col gap-4 p-8">
<div className="flex-1 flex flex-col gap-2">
<label className="text-sm font-medium text-stone-600 dark:text-stone-400">
Plaintext
</label>
<textarea
className="flex-1 border border-stone-200 dark:border-stone-700 rounded shadow-sm py-2 px-3 font-mono text-sm bg-stone-50 dark:bg-stone-900 text-stone-900 dark:text-stone-100 whitespace-pre-wrap break-words resize-none"
value={`${me.profile.bio}`}
onChange={(e) => me.profile.bio?.applyDiff(e.target.value)}
rows={10}
<label className="text-sm font-medium text-stone-600">Richtext</label>
<div
ref={editorRef}
className="border border-stone-200 rounded shadow-sm h-[200px] p-2"
/>
</div>
<div className="flex-1 flex flex-col gap-2">
<label className="text-sm font-medium text-stone-600 dark:text-stone-400">
Richtext
<label className="text-sm font-medium text-stone-600">
Plaintext
</label>
<div
ref={editorRef}
className="flex-1 border border-stone-200 dark:border-stone-700 rounded shadow-sm"
<textarea
className="flex-1 border border-stone-200 rounded shadow-sm py-2 px-3 font-mono text-sm bg-stone-50 text-stone-900 whitespace-pre-wrap break-words resize-none"
value={`${me.profile.bio}`}
onChange={(e) => me.profile.bio?.applyDiff(e.target.value)}
rows={10}
/>
</div>
</div>

View File

@@ -1,5 +1,14 @@
# richtext-tiptap
## 0.1.29
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
- jazz-richtext-tiptap@0.14.22
## 0.1.28
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/favicon.ico" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Rich text Tiptap example app | Jazz</title>
</head>

View File

@@ -1,7 +1,6 @@
{
"name": "richtext-tiptap",
"private": true,
"version": "0.1.28",
"type": "module",
"scripts": {
"dev": "vite",

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,5 +1,14 @@
# todo-vue
## 0.0.118
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-browser@0.14.22
- jazz-vue@0.14.22
## 0.0.117
### Patch Changes

View File

@@ -1,10 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="icon" href="./public/favicon.ico" type="image/png">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vite App</title>
<meta charset="UTF-8" />
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Todo List Example</title>
</head>
<body>
<div id="app"></div>

View File

@@ -1,6 +1,5 @@
{
"name": "todo-vue",
"version": "0.0.117",
"private": true,
"type": "module",
"scripts": {

View File

@@ -1,5 +1,13 @@
# jazz-example-todo
## 0.0.235
### Patch Changes
- Updated dependencies [048ac1d]
- jazz-tools@0.14.22
- jazz-react@0.14.22
## 0.0.234
### Patch Changes

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/png" href="/jazz-logo.png" />
<link rel="icon" type="image/x-icon" href="./favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jazz Todo List Example</title>
</head>

Some files were not shown because too many files have changed in this diff Show More