@powerhousedao/reactor-browser 6.2.2-dev.6 → 6.2.2-dev.60

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 (66) hide show
  1. package/README.md +283 -0
  2. package/dist/attachment-service-DTFJRf5j.d.ts +1057 -0
  3. package/dist/attachment-service-DTFJRf5j.d.ts.map +1 -0
  4. package/dist/{client-_Gh2Uf0E.js → client-DB8gP4hz.js} +79 -13
  5. package/dist/client-DB8gP4hz.js.map +1 -0
  6. package/dist/client-DjkEpwu_.d.ts +14 -0
  7. package/dist/client-DjkEpwu_.d.ts.map +1 -0
  8. package/dist/{client-u13cr-Vg.js → client-Zz_l9QzI.js} +30 -3
  9. package/dist/client-Zz_l9QzI.js.map +1 -0
  10. package/dist/{document-by-id-dLYFX-xz.js → document-by-id-BSZqTN66.js} +81 -51
  11. package/dist/document-by-id-BSZqTN66.js.map +1 -0
  12. package/dist/document-operations-C6nce9dH.js +2928 -0
  13. package/dist/document-operations-C6nce9dH.js.map +1 -0
  14. package/dist/global-pg5gy2eZ.d.ts +400 -0
  15. package/dist/global-pg5gy2eZ.d.ts.map +1 -0
  16. package/dist/index-CxxxP14A.d.ts +144 -0
  17. package/dist/index-CxxxP14A.d.ts.map +1 -0
  18. package/dist/index-DjloxNSR.d.ts +345 -0
  19. package/dist/index-DjloxNSR.d.ts.map +1 -0
  20. package/dist/index.d.ts +305 -709
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +608 -1660
  23. package/dist/index.js.map +1 -1
  24. package/dist/{inspector-proxy-CvQDDxmT.d.ts → inspector-proxy-CaCFdEG4.d.ts} +4 -2
  25. package/dist/inspector-proxy-CaCFdEG4.d.ts.map +1 -0
  26. package/dist/{make-ph-event-functions-BHoLPif5.js → make-ph-event-functions-DBq3iWYn.js} +1 -1
  27. package/dist/{make-ph-event-functions-BHoLPif5.js.map → make-ph-event-functions-DBq3iWYn.js.map} +1 -1
  28. package/dist/{index-DS4W07Y8.d.ts → pglite-CntadC_p-BtEalg1H.d.ts} +2 -142
  29. package/dist/pglite-CntadC_p-BtEalg1H.d.ts.map +1 -0
  30. package/dist/{relational-Dj06-YkI.js → relational-C_0GdGVN.js} +2 -2
  31. package/dist/{relational-Dj06-YkI.js.map → relational-C_0GdGVN.js.map} +1 -1
  32. package/dist/renown-BZabzj4l.js +68 -0
  33. package/dist/renown-BZabzj4l.js.map +1 -0
  34. package/dist/{renown-D-1c_Bvx.js → renown-C7a1ygsj.js} +471 -57
  35. package/dist/renown-C7a1ygsj.js.map +1 -0
  36. package/dist/src/analytics/index.d.ts +1 -1
  37. package/dist/src/analytics/index.js +2 -1
  38. package/dist/src/analytics/index.js.map +1 -1
  39. package/dist/src/graphql/client.d.ts +3 -2
  40. package/dist/src/graphql/client.js +1 -1
  41. package/dist/src/graphql-client/entry.d.ts +4 -0
  42. package/dist/src/graphql-client/entry.js +3 -0
  43. package/dist/src/relational/index.d.ts +1 -1
  44. package/dist/src/relational/index.js +1 -1
  45. package/dist/src/renown/index.d.ts +2 -2
  46. package/dist/src/renown/index.js +3 -2
  47. package/dist/src/rpc/index.d.ts +6 -3
  48. package/dist/src/rpc/index.d.ts.map +1 -1
  49. package/dist/src/rpc/index.js +41 -10
  50. package/dist/src/rpc/index.js.map +1 -1
  51. package/dist/store-DAJq6vSs.js +37 -0
  52. package/dist/store-DAJq6vSs.js.map +1 -0
  53. package/dist/{client-09xv0Dq6.d.ts → types-4rfAFZQd.d.ts} +87 -19
  54. package/dist/types-4rfAFZQd.d.ts.map +1 -0
  55. package/dist/{types-CPV0Cnsy.d.ts → types-wGaiXwjh.d.ts} +1 -1
  56. package/dist/{types-CPV0Cnsy.d.ts.map → types-wGaiXwjh.d.ts.map} +1 -1
  57. package/package.json +16 -10
  58. package/dist/client-09xv0Dq6.d.ts.map +0 -1
  59. package/dist/client-_Gh2Uf0E.js.map +0 -1
  60. package/dist/client-u13cr-Vg.js.map +0 -1
  61. package/dist/document-by-id-dLYFX-xz.js.map +0 -1
  62. package/dist/index-D3bV5rcl.d.ts +0 -216
  63. package/dist/index-D3bV5rcl.d.ts.map +0 -1
  64. package/dist/index-DS4W07Y8.d.ts.map +0 -1
  65. package/dist/inspector-proxy-CvQDDxmT.d.ts.map +0 -1
  66. package/dist/renown-D-1c_Bvx.js.map +0 -1
@@ -0,0 +1,345 @@
1
+ import { i as LOADING } from "./global-pg5gy2eZ.js";
2
+ import { CSSProperties, ReactNode } from "react";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
+ import * as _renown_sdk0 from "@renown/sdk";
5
+ import { CREDENTIAL_SCHEMA_EIP712_TYPE, CREDENTIAL_SUBJECT_TYPE, CREDENTIAL_TYPES, DOMAIN_TYPE, IRenown, ISSUER_TYPE, LoginStatus, User, VERIFIABLE_CREDENTIAL_EIP712_TYPE } from "@renown/sdk";
6
+ import { LoginMethod, WalletAdapterDescriptor, WalletSession, WalletTheme } from "@renown/sdk/wallet";
7
+
8
+ //#region src/renown/use-renown-auth.d.ts
9
+ type RenownAuthStatus = LoginStatus | "loading";
10
+ interface RenownAuth {
11
+ status: RenownAuthStatus | undefined;
12
+ user: User | undefined;
13
+ address: string | undefined;
14
+ ensName: string | undefined;
15
+ avatarUrl: string | undefined;
16
+ profileId: string | undefined;
17
+ displayName: string | undefined;
18
+ displayAddress: string | undefined;
19
+ login: (session?: WalletSession, method?: LoginMethod) => void;
20
+ pending: boolean;
21
+ error: Error | undefined;
22
+ logout: () => Promise<void>;
23
+ openProfile: () => void;
24
+ }
25
+ declare function useRenownAuth(): RenownAuth;
26
+ type RenownAuthResolution = "authenticated" | "resolving" | "unauthenticated";
27
+ interface RenownAuthAsync extends RenownAuth {
28
+ /** Collapsed routing state; "resolving" until auth is known. */
29
+ state: RenownAuthResolution;
30
+ isResolving: boolean;
31
+ }
32
+ declare function useRenownAuthAsync(): RenownAuthAsync;
33
+ //#endregion
34
+ //#region src/renown/session.d.ts
35
+ declare function openRenown(documentId?: string): void;
36
+ declare function login(userDid: string | undefined, renown: IRenown | undefined): Promise<User | undefined>;
37
+ declare function logout(): Promise<void>;
38
+ //#endregion
39
+ //#region src/hooks/renown.d.ts
40
+ /** Adds an event handler for the renown instance */
41
+ declare const addRenownEventHandler: () => void;
42
+ /** Returns the renown instance */
43
+ declare const useRenown: () => IRenown | LOADING | undefined;
44
+ /** Sets the renown instance */
45
+ declare const setRenown: (value: IRenown | LOADING | undefined) => void;
46
+ /** Returns the DID from the renown instance */
47
+ declare function useDid(): string | undefined;
48
+ /** Returns the current user from the renown instance, subscribing to user events */
49
+ declare function useUser(): User | undefined;
50
+ /** Returns the login status, subscribing to renown status events */
51
+ declare function useLoginStatus(): LoginStatus | "loading" | undefined;
52
+ //#endregion
53
+ //#region src/renown/components/RenownAuthButton.d.ts
54
+ interface RenownAuthButtonProps {
55
+ className?: string;
56
+ darkMode?: boolean;
57
+ loginContent?: ReactNode;
58
+ userContent?: ReactNode;
59
+ loadingContent?: ReactNode;
60
+ children?: (auth: RenownAuth) => ReactNode;
61
+ }
62
+ declare function RenownAuthButton({
63
+ className,
64
+ darkMode,
65
+ loginContent,
66
+ userContent,
67
+ loadingContent,
68
+ children
69
+ }: RenownAuthButtonProps): react_jsx_runtime0.JSX.Element;
70
+ //#endregion
71
+ //#region src/renown/components/RenownLoginButton.d.ts
72
+ interface RenownLoginButtonProps {
73
+ onLogin?: () => void;
74
+ darkMode?: boolean;
75
+ style?: CSSProperties;
76
+ className?: string;
77
+ asChild?: boolean;
78
+ children?: ReactNode;
79
+ }
80
+ declare function RenownLoginButton({
81
+ onLogin: onLoginProp,
82
+ style,
83
+ className,
84
+ asChild,
85
+ children
86
+ }: RenownLoginButtonProps): react_jsx_runtime0.JSX.Element;
87
+ //#endregion
88
+ //#region src/renown/components/RenownUserButton.d.ts
89
+ interface RenownUserButtonMenuItem {
90
+ label: string;
91
+ icon?: ReactNode;
92
+ onClick: () => void;
93
+ style?: CSSProperties;
94
+ }
95
+ interface RenownUserButtonProps {
96
+ address?: string;
97
+ username?: string;
98
+ avatarUrl?: string;
99
+ userId?: string;
100
+ onDisconnect?: () => void;
101
+ style?: CSSProperties;
102
+ className?: string;
103
+ asChild?: boolean;
104
+ children?: ReactNode;
105
+ menuItems?: RenownUserButtonMenuItem[];
106
+ }
107
+ declare function RenownUserButton({
108
+ address: addressProp,
109
+ username: usernameProp,
110
+ avatarUrl: avatarUrlProp,
111
+ userId: userIdProp,
112
+ onDisconnect: onDisconnectProp,
113
+ style,
114
+ className,
115
+ asChild,
116
+ children,
117
+ menuItems
118
+ }: RenownUserButtonProps): react_jsx_runtime0.JSX.Element;
119
+ //#endregion
120
+ //#region src/renown/components/icons.d.ts
121
+ interface IconProps {
122
+ size?: number;
123
+ width?: number;
124
+ height?: number;
125
+ color?: string;
126
+ style?: CSSProperties;
127
+ className?: string;
128
+ }
129
+ interface RenownLogoProps extends IconProps {
130
+ hovered?: boolean;
131
+ }
132
+ declare function RenownLogo({
133
+ width,
134
+ height,
135
+ hovered,
136
+ color,
137
+ className
138
+ }: RenownLogoProps): react_jsx_runtime0.JSX.Element;
139
+ declare function CopyIcon({
140
+ size,
141
+ color
142
+ }: IconProps): react_jsx_runtime0.JSX.Element;
143
+ declare function DisconnectIcon({
144
+ size,
145
+ color
146
+ }: IconProps): react_jsx_runtime0.JSX.Element;
147
+ declare function SpinnerIcon({
148
+ size,
149
+ color
150
+ }: IconProps): react_jsx_runtime0.JSX.Element;
151
+ declare function ChevronDownIcon({
152
+ size,
153
+ color,
154
+ style
155
+ }: IconProps): react_jsx_runtime0.JSX.Element;
156
+ declare function UserIcon({
157
+ size,
158
+ color
159
+ }: IconProps): react_jsx_runtime0.JSX.Element;
160
+ //#endregion
161
+ //#region src/renown/crypto.d.ts
162
+ /**
163
+ * @deprecated Use {@link initRenownCrypto} instead
164
+ *
165
+ * Initialize ConnectCrypto
166
+ * @returns ConnectCrypto instance
167
+ */
168
+ declare function initConnectCrypto(): Promise<_renown_sdk0.RenownCrypto>;
169
+ /**
170
+ * Initialize RenownCrypto
171
+ * @returns RenownCrypto instance
172
+ */
173
+ declare function initRenownCrypto(): Promise<_renown_sdk0.RenownCrypto>;
174
+ //#endregion
175
+ //#region src/renown/constants.d.ts
176
+ declare const RENOWN_URL = "https://www.renown.id";
177
+ declare const RENOWN_NETWORK_ID = "eip155";
178
+ declare const RENOWN_CHAIN_ID = "1";
179
+ //#endregion
180
+ //#region src/renown/initial-user.d.ts
181
+ /** Whether the first render already knows who (if anyone) is signed in. */
182
+ type RenownInitialAuth = {
183
+ state: "authenticated";
184
+ user: User;
185
+ } | {
186
+ state: "anonymous";
187
+ } | {
188
+ state: "unknown";
189
+ };
190
+ declare const RENOWN_INITIAL_UNKNOWN: RenownInitialAuth;
191
+ declare const RENOWN_INITIAL_ANONYMOUS: RenownInitialAuth;
192
+ interface RenownInitialUserProviderProps {
193
+ /** Resolved first-render auth (see `RenownProvider`). Takes precedence over `initialUser`. */
194
+ initialAuth?: RenownInitialAuth;
195
+ /** User resolved from a verified session cookie (see `verifyRenownSession`). */
196
+ initialUser?: User;
197
+ children: ReactNode;
198
+ }
199
+ declare function RenownInitialUserProvider({
200
+ initialAuth,
201
+ initialUser,
202
+ children
203
+ }: RenownInitialUserProviderProps): react_jsx_runtime0.JSX.Element;
204
+ /** First-render auth as a three-state value; use this to skip a spinner when anonymous. */
205
+ declare function useRenownInitialAuth(): RenownInitialAuth;
206
+ declare function useRenownInitialUser(): User | undefined;
207
+ //#endregion
208
+ //#region src/renown/use-renown-session-cookie.d.ts
209
+ interface RenownSessionCookieOptions {
210
+ /** Route handler that sets (POST) / clears (DELETE) the session cookie. */
211
+ endpoint?: string;
212
+ /** Bearer-token lifetime in seconds (default 7 days). */
213
+ expiresIn?: number;
214
+ /** When false the hook is inert (client-only apps with no server cookie). */
215
+ enabled?: boolean;
216
+ }
217
+ interface RenownSessionCookieState {
218
+ /** True once the cookie reflects the current authenticated user. */
219
+ synced: boolean;
220
+ }
221
+ declare function useRenownSessionCookie(options?: RenownSessionCookieOptions): RenownSessionCookieState;
222
+ declare function useRenownSessionSynced(): boolean;
223
+ //#endregion
224
+ //#region src/renown/use-renown-init.d.ts
225
+ interface RenownInitOptions {
226
+ appName: string;
227
+ /** Prefix for localStorage keys, so multiple apps can share a domain. */
228
+ namespace?: string;
229
+ url?: string;
230
+ switchboardUrl?: string;
231
+ /** Re-check the restored credential against the source (default "always"). */
232
+ revalidate?: "always" | "never";
233
+ /** Chain id credentials are issued on (default 1). It is part of the user's DID, so sign-in from a wallet on another chain is rejected. */
234
+ chainId?: number;
235
+ }
236
+ /**
237
+ * Hook that initializes the Renown SDK.
238
+ * Call once at the top of your app. Options are read only on first mount.
239
+ * Returns a promise that resolves with the Renown instance.
240
+ *
241
+ * @example
242
+ * ```tsx
243
+ * function App() {
244
+ * const renownPromise = useRenownInit({ appName: "my-app" });
245
+ * return <MyApp />;
246
+ * }
247
+ * ```
248
+ */
249
+ declare function useRenownInit({
250
+ appName,
251
+ namespace,
252
+ url,
253
+ switchboardUrl,
254
+ revalidate,
255
+ chainId
256
+ }: RenownInitOptions): Promise<IRenown>;
257
+ //#endregion
258
+ //#region src/renown/renown-init.d.ts
259
+ interface RenownProps extends RenownInitOptions {
260
+ onError?: (error: unknown) => void;
261
+ }
262
+ /**
263
+ * Side-effect component that initializes the Renown SDK.
264
+ * Renders nothing — place it alongside your app tree.
265
+ *
266
+ * @example
267
+ * ```tsx
268
+ * function App() {
269
+ * return (
270
+ * <>
271
+ * <Renown appName="my-app" onError={console.error} />
272
+ * <MyApp />
273
+ * </>
274
+ * );
275
+ * }
276
+ * ```
277
+ */
278
+ declare function Renown({
279
+ onError,
280
+ ...initOptions
281
+ }: RenownProps): null;
282
+ //#endregion
283
+ //#region src/renown/provider.d.ts
284
+ interface RenownProviderProps {
285
+ appName: string;
286
+ /** Prefix for localStorage keys, so multiple apps can share a domain. */
287
+ namespace?: string;
288
+ url?: string;
289
+ switchboardUrl?: string;
290
+ /** Wallet adapter descriptors for in-page sign-in (see {@link RenownWalletProvider}); omit for redirect-only. */
291
+ adapters?: WalletAdapterDescriptor[];
292
+ theme?: WalletTheme;
293
+ /** Re-check the restored credential against the source (default "always"). */
294
+ revalidate?: "always" | "never";
295
+ /** Chain id credentials are issued on (default 1). Keep the adapters' chains in step: it is part of the user's DID, so a wallet on another chain is rejected. */
296
+ chainId?: number;
297
+ /** Server-resolved session (SSR); its presence seeds from the cookie + enables cookie sync. Omit for client-only (seed = localStorage). */
298
+ session?: {
299
+ user?: User;
300
+ } | null;
301
+ /** Endpoint for the session-cookie sync (SSR). Default /api/renown/session. */
302
+ sessionEndpoint?: string;
303
+ onError?: (error: unknown) => void;
304
+ children: ReactNode;
305
+ }
306
+ declare function RenownProvider({
307
+ appName,
308
+ namespace,
309
+ url,
310
+ switchboardUrl,
311
+ adapters,
312
+ theme,
313
+ revalidate,
314
+ chainId,
315
+ session,
316
+ sessionEndpoint,
317
+ onError,
318
+ children
319
+ }: RenownProviderProps): react_jsx_runtime0.JSX.Element;
320
+ //#endregion
321
+ //#region src/renown/wallet-provider.d.ts
322
+ interface RenownWalletProviderProps {
323
+ /** Wallet adapter descriptors, e.g. `[privyAdapter({ appId }), rainbowAdapter({})]` from `@renown/sdk/wallet/<id>`. Each descriptor's wallet library loads lazily on first login. Keep the array stable (module scope or `useMemo`) — it is snapshotted on mount. `undefined`/empty = redirect-only. */
324
+ adapters: WalletAdapterDescriptor[] | undefined;
325
+ /** Theme handed to each adapter UI: `"light"`, `"dark"`, or `{ mode, accentColor?, accentColorForeground? }`. */
326
+ theme?: WalletTheme;
327
+ children: ReactNode;
328
+ }
329
+ /** Drop-in provider for Renown in-page wallet sign-in: registers the login activator, lazy-mounts the configured adapters on first click, and merges their controllers for {@link useRenownAuth}. Full walkthrough + examples: the `@powerhousedao/reactor-browser` README ("Renown in-page sign-in") and the Academy Renown authentication guide. Pair with {@link useRenownLoginMethods} to build the login UI. */
330
+ declare function RenownWalletProvider({
331
+ adapters: adaptersConfig,
332
+ theme,
333
+ children
334
+ }: RenownWalletProviderProps): react_jsx_runtime0.JSX.Element;
335
+ //#endregion
336
+ //#region src/renown/login-methods.d.ts
337
+ interface RenownLoginMethod {
338
+ id: LoginMethod;
339
+ label: string;
340
+ }
341
+ /** The login methods the mounted {@link RenownWalletProvider}'s adapters offer, for building a login UI. Reads each descriptor's eager metadata only — no wallet libraries load. Buttons follow the provider's descriptor array order, deduped; empty when no provider is mounted (redirect-only). Wire each to `useRenownAuth().login(undefined, id)`. Labels are overridable. See the reactor-browser README + Academy Renown auth guide. */
342
+ declare function useRenownLoginMethods(labels?: Partial<Record<LoginMethod, string>>): RenownLoginMethod[];
343
+ //#endregion
344
+ export { logout as $, VERIFIABLE_CREDENTIAL_EIP712_TYPE as A, RenownUserButtonMenuItem as B, CREDENTIAL_SUBJECT_TYPE as C, RENOWN_CHAIN_ID as D, ISSUER_TYPE as E, DisconnectIcon as F, RenownAuthButtonProps as G, RenownLoginButton as H, RenownLogo as I, useDid as J, addRenownEventHandler as K, SpinnerIcon as L, initRenownCrypto as M, ChevronDownIcon as N, RENOWN_NETWORK_ID as O, CopyIcon as P, login as Q, UserIcon as R, CREDENTIAL_SCHEMA_EIP712_TYPE as S, DOMAIN_TYPE as T, RenownLoginButtonProps as U, RenownUserButtonProps as V, RenownAuthButton as W, useRenown as X, useLoginStatus as Y, useUser as Z, RenownInitialAuth as _, RenownProvider as a, useRenownAuth as at, useRenownInitialAuth as b, RenownProps as c, RenownSessionCookieOptions as d, openRenown as et, RenownSessionCookieState as f, RENOWN_INITIAL_UNKNOWN as g, RENOWN_INITIAL_ANONYMOUS as h, RenownWalletProviderProps as i, RenownAuthStatus as it, initConnectCrypto as j, RENOWN_URL as k, RenownInitOptions as l, useRenownSessionSynced as m, useRenownLoginMethods as n, RenownAuthAsync as nt, RenownProviderProps as o, useRenownAuthAsync as ot, useRenownSessionCookie as p, setRenown as q, RenownWalletProvider as r, RenownAuthResolution as rt, Renown as s, RenownLoginMethod as t, RenownAuth as tt, useRenownInit as u, RenownInitialUserProvider as v, CREDENTIAL_TYPES as w, useRenownInitialUser as x, RenownInitialUserProviderProps as y, RenownUserButton as z };
345
+ //# sourceMappingURL=index-DjloxNSR.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DjloxNSR.d.ts","names":[],"sources":["../src/renown/use-renown-auth.ts","../src/renown/session.ts","../src/hooks/renown.ts","../src/renown/components/RenownAuthButton.tsx","../src/renown/components/RenownLoginButton.tsx","../src/renown/components/RenownUserButton.tsx","../src/renown/components/icons.tsx","../src/renown/crypto.ts","../src/renown/constants.ts","../src/renown/initial-user.tsx","../src/renown/use-renown-session-cookie.ts","../src/renown/use-renown-init.ts","../src/renown/renown-init.tsx","../src/renown/provider.tsx","../src/renown/wallet-provider.tsx","../src/renown/login-methods.ts"],"mappings":"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"}