jazz-tools 0.18.0 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.turbo/turbo-build.log +54 -40
  2. package/CHANGELOG.md +10 -0
  3. package/dist/better-auth/auth/client.d.ts +29 -0
  4. package/dist/better-auth/auth/client.d.ts.map +1 -0
  5. package/dist/better-auth/auth/client.js +127 -0
  6. package/dist/better-auth/auth/client.js.map +1 -0
  7. package/dist/better-auth/auth/react.d.ts +2170 -0
  8. package/dist/better-auth/auth/react.d.ts.map +1 -0
  9. package/dist/better-auth/auth/react.js +40 -0
  10. package/dist/better-auth/auth/react.js.map +1 -0
  11. package/dist/better-auth/auth/server.d.ts +14 -0
  12. package/dist/better-auth/auth/server.d.ts.map +1 -0
  13. package/dist/better-auth/auth/server.js +198 -0
  14. package/dist/better-auth/auth/server.js.map +1 -0
  15. package/dist/better-auth/auth/tests/client.test.d.ts +2 -0
  16. package/dist/better-auth/auth/tests/client.test.d.ts.map +1 -0
  17. package/dist/better-auth/auth/tests/server.test.d.ts +2 -0
  18. package/dist/better-auth/auth/tests/server.test.d.ts.map +1 -0
  19. package/dist/{chunk-HJ3GTGY7.js → chunk-IERUTUXB.js} +18 -1
  20. package/dist/chunk-IERUTUXB.js.map +1 -0
  21. package/dist/index.js +1 -1
  22. package/dist/react-core/index.js +17 -0
  23. package/dist/react-core/index.js.map +1 -1
  24. package/dist/testing.js +1 -1
  25. package/dist/tools/coValues/account.d.ts +1 -0
  26. package/dist/tools/coValues/account.d.ts.map +1 -1
  27. package/dist/tools/coValues/coMap.d.ts +10 -0
  28. package/dist/tools/coValues/coMap.d.ts.map +1 -1
  29. package/dist/tools/implementation/zodSchema/zodCo.d.ts +1 -1
  30. package/dist/tools/testing.d.ts.map +1 -1
  31. package/package.json +23 -4
  32. package/src/better-auth/auth/client.ts +169 -0
  33. package/src/better-auth/auth/react.tsx +105 -0
  34. package/src/better-auth/auth/server.ts +250 -0
  35. package/src/better-auth/auth/tests/client.test.ts +249 -0
  36. package/src/better-auth/auth/tests/server.test.ts +226 -0
  37. package/src/tools/coValues/account.ts +5 -0
  38. package/src/tools/coValues/coMap.ts +14 -0
  39. package/src/tools/implementation/zodSchema/zodCo.ts +1 -1
  40. package/src/tools/tests/ContextManager.test.ts +2 -2
  41. package/src/tools/tests/account.test.ts +51 -0
  42. package/src/tools/tests/coMap.test.ts +99 -0
  43. package/src/tools/tests/patterns/notifications.test.ts +1 -1
  44. package/src/tools/tests/testing.test.ts +2 -2
  45. package/tsup.config.ts +9 -0
  46. package/dist/chunk-HJ3GTGY7.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
 
2
- > jazz-tools@0.18.0 build /home/runner/_work/jazz/jazz/packages/jazz-tools
2
+ > jazz-tools@0.18.1 build /home/runner/_work/jazz/jazz/packages/jazz-tools
3
3
  > tsup && pnpm types && pnpm build:svelte
4
4
 
5
5
  CLI Building entry: {"index":"src/index.ts","testing":"src/testing.ts"}
@@ -30,6 +30,10 @@
30
30
  CLI Using tsconfig: tsconfig.json
31
31
  CLI Building entry: {"index":"src/worker/index.ts"}
32
32
  CLI Using tsconfig: tsconfig.json
33
+ CLI Building entry: {"client":"src/better-auth/auth/client.ts","server":"src/better-auth/auth/server.ts","react":"src/better-auth/auth/react.tsx"}
34
+ CLI Using tsconfig: tsconfig.json
35
+ CLI tsup v8.5.0
36
+ CLI Using tsup config: /home/runner/_work/jazz/jazz/packages/jazz-tools/tsup.config.ts
33
37
  CLI tsup v8.5.0
34
38
  CLI Using tsup config: /home/runner/_work/jazz/jazz/packages/jazz-tools/tsup.config.ts
35
39
  CLI tsup v8.5.0
@@ -72,6 +76,9 @@
72
76
  CLI Target: es2021
73
77
  CLI Target: es2021
74
78
  CLI Target: es2021
79
+ CLI Target: es2021
80
+ CLI Cleaning output folder
81
+ ESM Build start
75
82
  CLI Cleaning output folder
76
83
  ESM Build start
77
84
  CLI Cleaning output folder
@@ -100,84 +107,91 @@
100
107
  ESM Build start
101
108
  CLI Cleaning output folder
102
109
  ESM Build start
103
- ESM dist/tiptap/index.js 564.00 B
104
- ESM dist/tiptap/index.js.map 1.21 KB
105
- ESM ⚡️ Build success in 16ms
106
110
  ESM dist/react/ssr.js 688.00 B
107
111
  ESM dist/react/ssr.js.map 1.12 KB
108
- ESM ⚡️ Build success in 19ms
112
+ ESM ⚡️ Build success in 28ms
113
+ ESM dist/tiptap/index.js 564.00 B
114
+ ESM dist/tiptap/index.js.map 1.21 KB
115
+ ESM ⚡️ Build success in 27ms
116
+ ESM dist/worker/index.js 2.33 KB
117
+ ESM dist/worker/index.js.map 4.79 KB
118
+ ESM ⚡️ Build success in 25ms
109
119
  ESM dist/media/index.js 236.00 B
110
120
  ESM dist/media/index.browser.js 3.21 KB
111
121
  ESM dist/media/index.native.js 3.53 KB
112
122
  ESM dist/media/chunk-KR2V6X2N.js 6.42 KB
113
123
  ESM dist/media/index.js.map 71.00 B
114
- ESM dist/media/index.browser.js.map 6.02 KB
115
124
  ESM dist/media/index.native.js.map 6.52 KB
125
+ ESM dist/media/index.browser.js.map 6.02 KB
116
126
  ESM dist/media/chunk-KR2V6X2N.js.map 16.19 KB
117
- ESM ⚡️ Build success in 21ms
118
- ESM dist/worker/index.js 2.33 KB
119
- ESM dist/worker/index.js.map 4.79 KB
120
- ESM ⚡️ Build success in 20ms
127
+ ESM ⚡️ Build success in 34ms
128
+ ESM dist/better-auth/auth/server.js 5.94 KB
129
+ ESM dist/better-auth/auth/react.js 1.19 KB
130
+ ESM dist/better-auth/auth/client.js 4.36 KB
131
+ ESM dist/better-auth/auth/server.js.map 10.66 KB
132
+ ESM dist/better-auth/auth/react.js.map 3.37 KB
133
+ ESM dist/better-auth/auth/client.js.map 8.12 KB
134
+ ESM ⚡️ Build success in 26ms
121
135
  ESM dist/browser/index.js 13.44 KB
122
136
  ESM dist/browser/index.js.map 28.70 KB
123
- ESM ⚡️ Build success in 27ms
124
- ESM dist/expo/index.js 4.68 KB
125
- ESM dist/expo/testing.js 112.00 B
126
- ESM dist/expo/crypto.js 153.00 B
127
- ESM dist/expo/index.js.map 10.23 KB
128
- ESM dist/expo/testing.js.map 168.00 B
129
- ESM dist/expo/crypto.js.map 189.00 B
130
- ESM ⚡️ Build success in 31ms
131
- ESM dist/react/index.js 24.66 KB
132
- ESM dist/react/testing.js 122.00 B
133
- ESM dist/react/testing.js.map 165.00 B
134
- ESM dist/react/index.js.map 53.09 KB
135
- ESM ⚡️ Build success in 35ms
137
+ ESM ⚡️ Build success in 40ms
136
138
  ESM dist/react-native/index.js 2.53 KB
137
139
  ESM dist/react-native/testing.js 120.00 B
138
140
  ESM dist/react-native/crypto.js 161.00 B
139
141
  ESM dist/react-native/index.js.map 5.68 KB
140
142
  ESM dist/react-native/testing.js.map 176.00 B
141
143
  ESM dist/react-native/crypto.js.map 197.00 B
142
- ESM ⚡️ Build success in 36ms
144
+ ESM ⚡️ Build success in 46ms
145
+ ESM dist/expo/index.js 4.68 KB
146
+ ESM dist/expo/testing.js 112.00 B
147
+ ESM dist/expo/crypto.js 153.00 B
148
+ ESM dist/expo/index.js.map 10.23 KB
149
+ ESM dist/expo/crypto.js.map 189.00 B
150
+ ESM dist/expo/testing.js.map 168.00 B
151
+ ESM ⚡️ Build success in 50ms
143
152
  ESM dist/react-native-core/index.js 17.90 KB
144
153
  ESM dist/react-native-core/testing.js 119.00 B
145
154
  ESM dist/react-native-core/crypto.js 2.10 KB
155
+ ESM dist/react-native-core/index.js.map 36.66 KB
146
156
  ESM dist/react-native-core/testing.js.map 175.00 B
147
157
  ESM dist/react-native-core/crypto.js.map 4.25 KB
148
- ESM dist/react-native-core/index.js.map 36.66 KB
149
- ESM ⚡️ Build success in 37ms
158
+ ESM ⚡️ Build success in 47ms
159
+ ESM dist/react/index.js 24.66 KB
160
+ ESM dist/react/testing.js 122.00 B
161
+ ESM dist/react/index.js.map 53.09 KB
162
+ ESM dist/react/testing.js.map 165.00 B
163
+ ESM ⚡️ Build success in 61ms
150
164
  ESM dist/prosemirror/index.js 77.63 KB
151
165
  ESM dist/prosemirror/index.js.map 306.98 KB
152
- ESM ⚡️ Build success in 50ms
166
+ ESM ⚡️ Build success in 62ms
153
167
  ESM dist/inspector/index.js 61.52 KB
154
168
  ESM dist/inspector/index.js.map 109.98 KB
155
- ESM ⚡️ Build success in 58ms
156
- ESM dist/testing.js 7.17 KB
157
- ESM dist/chunk-HJ3GTGY7.js 163.41 KB
169
+ ESM ⚡️ Build success in 76ms
158
170
  ESM dist/index.js 26.13 KB
171
+ ESM dist/chunk-IERUTUXB.js 163.90 KB
172
+ ESM dist/testing.js 7.17 KB
159
173
  ESM dist/testing.js.map 14.10 KB
160
- ESM dist/chunk-HJ3GTGY7.js.map 388.20 KB
161
174
  ESM dist/index.js.map 52.92 KB
162
- ESM ⚡️ Build success in 84ms
163
- ESM dist/react-core/index.js 140.57 KB
164
- ESM dist/react-core/chunk-7DYMJ74I.js 279.00 B
175
+ ESM dist/chunk-IERUTUXB.js.map 389.03 KB
176
+ ESM ⚡️ Build success in 108ms
165
177
  ESM dist/react-core/testing.js 1.17 KB
166
- ESM dist/react-core/index.js.map 382.62 KB
167
- ESM dist/react-core/chunk-7DYMJ74I.js.map 533.00 B
178
+ ESM dist/react-core/chunk-7DYMJ74I.js 279.00 B
179
+ ESM dist/react-core/index.js 141.07 KB
168
180
  ESM dist/react-core/testing.js.map 1.82 KB
169
- ESM ⚡️ Build success in 79ms
181
+ ESM dist/react-core/chunk-7DYMJ74I.js.map 533.00 B
182
+ ESM dist/react-core/index.js.map 383.45 KB
183
+ ESM ⚡️ Build success in 107ms
170
184
  ESM dist/inspector/register-custom-element.js 218.00 B
171
185
  ESM dist/inspector/register-custom-element.js.map 314.00 B
172
186
  ESM dist/inspector/custom-element-WCY6D3QJ.js 1.53 MB
173
187
  ESM dist/inspector/custom-element-WCY6D3QJ.js.map 2.35 MB
174
- ESM ⚡️ Build success in 115ms
188
+ ESM ⚡️ Build success in 147ms
175
189
 
176
- > jazz-tools@0.18.0 types /home/runner/_work/jazz/jazz/packages/jazz-tools
190
+ > jazz-tools@0.18.1 types /home/runner/_work/jazz/jazz/packages/jazz-tools
177
191
  > tsc --outDir dist
178
192
 
179
193
 
180
- > jazz-tools@0.18.0 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
194
+ > jazz-tools@0.18.1 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
181
195
  > rm -rf dist/svelte && svelte-package -i src/svelte -o dist/svelte --tsconfig tsconfig.svelte.json
182
196
 
183
197
  src/svelte -> dist/svelte
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # jazz-tools
2
2
 
3
+ ## 0.18.1
4
+
5
+ ### Patch Changes
6
+
7
+ - af5fbe7: New BetterAuth plugins to store Jazz's credentials
8
+ - 9837459: Add `CoMap.$jazz.has` and `Account.$jazz.has` method to check for property existance without loading referenced CoValues or checking permissions
9
+ - cojson@0.18.1
10
+ - cojson-storage-indexeddb@0.18.1
11
+ - cojson-transport-ws@0.18.1
12
+
3
13
  ## 0.18.0
4
14
 
5
15
  ### Minor Changes
@@ -0,0 +1,29 @@
1
+ import type { AuthSecretStorage, Account, JazzContextType } from "jazz-tools";
2
+ import type { jazzPlugin } from "./server.js";
3
+ /**
4
+ * @example
5
+ * ```ts
6
+ * const auth = betterAuth({
7
+ * plugins: [jazzPluginClient()],
8
+ * });
9
+ * ```
10
+ */
11
+ export declare const jazzPluginClient: () => {
12
+ id: "jazz-plugin";
13
+ $InferServerPlugin: ReturnType<typeof jazzPlugin>;
14
+ getActions: ($fetch: import("@better-fetch/fetch").BetterFetch, $store: import("better-auth").Store) => {
15
+ jazz: {
16
+ setJazzContext: (context: JazzContextType<Account>) => void;
17
+ setAuthSecretStorage: (storage: AuthSecretStorage) => void;
18
+ };
19
+ };
20
+ fetchPlugins: {
21
+ id: string;
22
+ name: string;
23
+ hooks: {
24
+ onRequest<T extends Record<string, any>>(context: import("@better-fetch/fetch").RequestContext<T>): Promise<void>;
25
+ onSuccess(context: import("@better-fetch/fetch").SuccessContext<any>): Promise<void>;
26
+ };
27
+ }[];
28
+ };
29
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/better-auth/auth/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EAEjB,OAAO,EACP,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB;;wBAmBC,UAAU,CAAC,OAAO,UAAU,CAAC;;;sCAIvB,eAAe,CAAC,OAAO,CAAC;4CAGlB,iBAAiB;;;;;;;;;;;CA6H1D,CAAC"}
@@ -0,0 +1,127 @@
1
+ // src/better-auth/auth/client.ts
2
+ var jazzPluginClient = () => {
3
+ let jazzContext;
4
+ let authSecretStorage;
5
+ let signOutUnsubscription;
6
+ const authenticateOnJazz = async (jazzAuth) => {
7
+ const parsedJazzAuth = {
8
+ ...jazzAuth,
9
+ secretSeed: jazzAuth.secretSeed ? Uint8Array.from(jazzAuth.secretSeed) : void 0
10
+ };
11
+ await jazzContext.authenticate(parsedJazzAuth);
12
+ await authSecretStorage.set(parsedJazzAuth);
13
+ };
14
+ return {
15
+ id: "jazz-plugin",
16
+ $InferServerPlugin: {},
17
+ getActions: ($fetch, $store) => {
18
+ return {
19
+ jazz: {
20
+ setJazzContext: (context) => {
21
+ jazzContext = context;
22
+ },
23
+ setAuthSecretStorage: (storage) => {
24
+ authSecretStorage = storage;
25
+ if (signOutUnsubscription) signOutUnsubscription();
26
+ signOutUnsubscription = authSecretStorage.onUpdate(
27
+ (isAuthenticated) => {
28
+ if (isAuthenticated === false) {
29
+ const session = $store.atoms.session?.get();
30
+ if (!session) return;
31
+ if (session.isPending || session.isRefetching) {
32
+ const unsub = $store.atoms.session?.listen((session2) => {
33
+ unsub?.();
34
+ if (session2.data !== null) {
35
+ $fetch("/sign-out", { method: "POST" });
36
+ }
37
+ });
38
+ } else {
39
+ $fetch("/sign-out", { method: "POST" });
40
+ }
41
+ }
42
+ }
43
+ );
44
+ }
45
+ }
46
+ };
47
+ },
48
+ fetchPlugins: [
49
+ {
50
+ id: "jazz-plugin",
51
+ name: "jazz-plugin",
52
+ hooks: {
53
+ async onRequest(context) {
54
+ if (context.url.toString().includes("/sign-up") || context.url.toString().includes("/sign-in/social")) {
55
+ const credentials = await authSecretStorage.get();
56
+ if (!credentials) {
57
+ throw new Error("Jazz credentials not found");
58
+ }
59
+ context.headers.set(
60
+ "x-jazz-auth",
61
+ JSON.stringify({
62
+ accountID: credentials.accountID,
63
+ secretSeed: credentials.secretSeed,
64
+ accountSecret: credentials.accountSecret
65
+ })
66
+ );
67
+ }
68
+ },
69
+ async onSuccess(context) {
70
+ if (context.request.url.toString().includes("/sign-up")) {
71
+ await authenticateOnJazz(context.data.jazzAuth);
72
+ return;
73
+ }
74
+ if (context.request.url.toString().includes("/sign-in/email")) {
75
+ await authenticateOnJazz(context.data.jazzAuth);
76
+ return;
77
+ }
78
+ if (context.request.url.toString().includes("/get-session")) {
79
+ if (context.data === null) {
80
+ if (authSecretStorage.isAuthenticated === true) {
81
+ console.warn(
82
+ "Jazz is authenticated, but the session is null"
83
+ );
84
+ }
85
+ return;
86
+ }
87
+ if (!context.data?.user) {
88
+ return;
89
+ }
90
+ if (authSecretStorage.isAuthenticated === false) {
91
+ console.info(
92
+ "Jazz is not authenticated, using Better Auth stored credentials"
93
+ );
94
+ await authenticateOnJazz(context.data.jazzAuth);
95
+ return;
96
+ }
97
+ const sessionAccountID = context.data.user.accountID;
98
+ const credentials = await authSecretStorage.get();
99
+ if (!credentials) {
100
+ throw new Error("Jazz credentials not found");
101
+ }
102
+ if (credentials.accountID !== sessionAccountID) {
103
+ console.info(
104
+ "Jazz credentials mismatch, using Better Auth stored credentials"
105
+ );
106
+ await authenticateOnJazz(context.data.jazzAuth);
107
+ }
108
+ return;
109
+ }
110
+ if (context.request.url.toString().includes("/sign-out")) {
111
+ await jazzContext.logOut();
112
+ return;
113
+ }
114
+ if (context.request.url.toString().includes("/delete-user")) {
115
+ await jazzContext.logOut();
116
+ return;
117
+ }
118
+ }
119
+ }
120
+ }
121
+ ]
122
+ };
123
+ };
124
+ export {
125
+ jazzPluginClient
126
+ };
127
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/better-auth/auth/client.ts"],"sourcesContent":["import type { BetterAuthClientPlugin } from \"better-auth\";\nimport type {\n AuthSecretStorage,\n AuthSetPayload,\n Account,\n JazzContextType,\n} from \"jazz-tools\";\nimport type { jazzPlugin } from \"./server.js\";\n\n/**\n * @example\n * ```ts\n * const auth = betterAuth({\n * plugins: [jazzPluginClient()],\n * });\n * ```\n */\nexport const jazzPluginClient = () => {\n let jazzContext: JazzContextType<Account>;\n let authSecretStorage: AuthSecretStorage;\n let signOutUnsubscription: () => void;\n\n const authenticateOnJazz = async (jazzAuth: AuthSetPayload) => {\n const parsedJazzAuth = {\n ...jazzAuth,\n secretSeed: jazzAuth.secretSeed\n ? Uint8Array.from(jazzAuth.secretSeed)\n : undefined,\n };\n\n await jazzContext.authenticate(parsedJazzAuth);\n await authSecretStorage.set(parsedJazzAuth);\n };\n\n return {\n id: \"jazz-plugin\",\n $InferServerPlugin: {} as ReturnType<typeof jazzPlugin>,\n getActions: ($fetch, $store) => {\n return {\n jazz: {\n setJazzContext: (context: JazzContextType<Account>) => {\n jazzContext = context;\n },\n setAuthSecretStorage: (storage: AuthSecretStorage) => {\n authSecretStorage = storage;\n if (signOutUnsubscription) signOutUnsubscription();\n\n // This is a workaround to logout from Better Auth when user logs out directly from Jazz\n signOutUnsubscription = authSecretStorage.onUpdate(\n (isAuthenticated) => {\n if (isAuthenticated === false) {\n const session = $store.atoms.session?.get();\n if (!session) return;\n\n // if the user logs out from Better Auth, the get session is immediately called\n // so we must wait the next fetched session to understand if we need to call sign-out\n if (session.isPending || session.isRefetching) {\n // listen once for next session's data\n const unsub = $store.atoms.session?.listen((session) => {\n unsub?.();\n // if the session is null, user has been already logged out from Better Auth\n if (session.data !== null) {\n $fetch(\"/sign-out\", { method: \"POST\" });\n }\n });\n }\n // if the session is not pending, it means user logged out from Jazz only\n // so we call the sign-out api\n else {\n $fetch(\"/sign-out\", { method: \"POST\" });\n }\n }\n },\n );\n },\n },\n };\n },\n fetchPlugins: [\n {\n id: \"jazz-plugin\",\n name: \"jazz-plugin\",\n hooks: {\n async onRequest(context) {\n if (\n context.url.toString().includes(\"/sign-up\") ||\n context.url.toString().includes(\"/sign-in/social\")\n ) {\n const credentials = await authSecretStorage.get();\n\n if (!credentials) {\n throw new Error(\"Jazz credentials not found\");\n }\n\n context.headers.set(\n \"x-jazz-auth\",\n JSON.stringify({\n accountID: credentials.accountID,\n secretSeed: credentials.secretSeed,\n accountSecret: credentials.accountSecret,\n }),\n );\n }\n },\n async onSuccess(context) {\n if (context.request.url.toString().includes(\"/sign-up\")) {\n await authenticateOnJazz(context.data.jazzAuth);\n return;\n }\n\n if (context.request.url.toString().includes(\"/sign-in/email\")) {\n await authenticateOnJazz(context.data.jazzAuth);\n return;\n }\n\n if (context.request.url.toString().includes(\"/get-session\")) {\n if (context.data === null) {\n if (authSecretStorage.isAuthenticated === true) {\n console.warn(\n \"Jazz is authenticated, but the session is null\",\n );\n }\n return;\n }\n\n if (!context.data?.user) {\n return;\n }\n\n if (authSecretStorage.isAuthenticated === false) {\n console.info(\n \"Jazz is not authenticated, using Better Auth stored credentials\",\n );\n await authenticateOnJazz(context.data.jazzAuth);\n return;\n }\n\n const sessionAccountID = context.data.user.accountID;\n\n const credentials = await authSecretStorage.get();\n\n if (!credentials) {\n throw new Error(\"Jazz credentials not found\");\n }\n\n if (credentials.accountID !== sessionAccountID) {\n console.info(\n \"Jazz credentials mismatch, using Better Auth stored credentials\",\n );\n await authenticateOnJazz(context.data.jazzAuth);\n }\n return;\n }\n\n if (context.request.url.toString().includes(\"/sign-out\")) {\n await jazzContext.logOut();\n return;\n }\n\n if (context.request.url.toString().includes(\"/delete-user\")) {\n await jazzContext.logOut();\n return;\n }\n },\n },\n },\n ],\n } satisfies BetterAuthClientPlugin;\n};\n"],"mappings":"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","names":["session"]}