@civitai/blocks-react 0.17.0 → 0.19.0
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.
- package/README.md +21 -1
- package/dist/hooks/useBuzzBalance.d.ts +1 -1
- package/dist/hooks/useSharedStorage.d.ts +97 -0
- package/dist/hooks/useSharedStorage.d.ts.map +1 -0
- package/dist/hooks/useSharedStorage.js +96 -0
- package/dist/hooks/useSharedStorage.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/mockHost.d.ts +95 -2
- package/dist/internal/mockHost.d.ts.map +1 -1
- package/dist/internal/mockHost.js +317 -1
- package/dist/internal/mockHost.js.map +1 -1
- package/dist/testing.d.ts +1 -1
- package/dist/testing.d.ts.map +1 -1
- package/dist/testing.js +1 -1
- package/dist/testing.js.map +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.js +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `@civitai/blocks-react`
|
|
2
2
|
|
|
3
|
-
React hooks and iframe transport for [Civitai
|
|
3
|
+
React hooks and iframe transport for [Civitai Apps](https://github.com/civitai/civitai-app-starters/blob/main/docs/build-your-first-app-block.md).
|
|
4
4
|
|
|
5
5
|
Pairs with [`@civitai/app-sdk`](https://www.npmjs.com/package/@civitai/app-sdk)'s
|
|
6
6
|
`/blocks` subpath, which carries the framework-agnostic manifest, scope, and
|
|
@@ -180,6 +180,26 @@ const { purchased, newBalance } = await openPurchaseModal(suggestedAmount);
|
|
|
180
180
|
if (purchased) { /* retry the generation */ }
|
|
181
181
|
```
|
|
182
182
|
|
|
183
|
+
### `useBuzzBalance()`
|
|
184
|
+
|
|
185
|
+
The signed-in viewer's per-pool Buzz balance (`{ blue, green, yellow }` — the
|
|
186
|
+
domain-clamped pools a block may read; never the platform-internal `red`/`purple`).
|
|
187
|
+
Host-mediated over `GET_BUZZ_BALANCE` → `BUZZ_BALANCE_RESULT`; same trust model as
|
|
188
|
+
`useBuzzWorkflow`/`useBuzzPurchase` (the host resolves the viewer from the block
|
|
189
|
+
token — the block never touches the balance API). Fetches on mount; `refetch` for
|
|
190
|
+
on-demand refreshes.
|
|
191
|
+
|
|
192
|
+
```tsx
|
|
193
|
+
const { balance, loading, error, refetch } = useBuzzBalance();
|
|
194
|
+
// `balance` is null until the first successful fetch. refetch() after a
|
|
195
|
+
// generation debits it. An anon viewer / missing scope / host failure → `error`.
|
|
196
|
+
if (!loading && balance) console.log(`Yellow: ${balance.yellow}`);
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
> Per-account Buzz: `useBuzzWorkflow().submit(body)` also takes an optional
|
|
200
|
+
> `body.accountType` (`'blue' | 'green' | 'yellow'`) — a *preference* for which
|
|
201
|
+
> pool funds the generation; the host clamps it server-side.
|
|
202
|
+
|
|
183
203
|
### `useAppStorage()`
|
|
184
204
|
|
|
185
205
|
Per-(block instance, viewer) KV datastore, host-mediated. 64 KB per value,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The viewer's per-pool Buzz balance, in the domain-clamped set
|
|
2
|
+
* The viewer's per-pool Buzz balance, in the domain-clamped set a Civitai App
|
|
3
3
|
* can read (mirrors `@civitai/app-sdk/blocks`' `BuzzAccountType`). Never
|
|
4
4
|
* includes the platform-internal pools (`red`/`purple`).
|
|
5
5
|
*/
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import type { SharedStorageValue } from '@civitai/app-sdk/blocks';
|
|
2
|
+
/**
|
|
3
|
+
* The value a viewer contributes to the SHARED store: a required `title` plus
|
|
4
|
+
* an optional long-form `body`. Re-exported from the app-sdk contract so block
|
|
5
|
+
* authors get one canonical shape.
|
|
6
|
+
*/
|
|
7
|
+
export type SharedAppendValue = SharedStorageValue;
|
|
8
|
+
/**
|
|
9
|
+
* Public shape of one SHARED entry returned by `list()`. `createdAt`/`updatedAt`
|
|
10
|
+
* are real `Date`s once the wire's ISO strings are rehydrated (mirrors
|
|
11
|
+
* `AppStorageKeyEntry.updatedAt`). `count` is the live vote total;
|
|
12
|
+
* `authorUserId` is the contributing viewer.
|
|
13
|
+
*/
|
|
14
|
+
export interface SharedListItem {
|
|
15
|
+
key: string;
|
|
16
|
+
authorUserId: number;
|
|
17
|
+
value: SharedAppendValue;
|
|
18
|
+
count: number;
|
|
19
|
+
createdAt: Date;
|
|
20
|
+
updatedAt: Date;
|
|
21
|
+
}
|
|
22
|
+
export interface SharedListResult {
|
|
23
|
+
items: SharedListItem[];
|
|
24
|
+
/** Opaque cursor — pass back as `cursor` to page forward. Absent on the last page. */
|
|
25
|
+
nextCursor?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface UseSharedStorage {
|
|
28
|
+
/**
|
|
29
|
+
* Cursor-paginated listing of the app's SHARED entries (newest-first). Each
|
|
30
|
+
* item carries its `value`, `authorUserId`, and current vote `count`.
|
|
31
|
+
*/
|
|
32
|
+
list(opts?: {
|
|
33
|
+
prefix?: string;
|
|
34
|
+
limit?: number;
|
|
35
|
+
cursor?: string;
|
|
36
|
+
}): Promise<SharedListResult>;
|
|
37
|
+
/** Current vote total for a single entry (`0` when the key isn't present). */
|
|
38
|
+
getCount(key: string): Promise<number>;
|
|
39
|
+
/**
|
|
40
|
+
* Vote totals for many entries in one round-trip. Returns a map of key →
|
|
41
|
+
* count; keys that aren't present resolve to `0`.
|
|
42
|
+
*/
|
|
43
|
+
getCounts(keys: string[]): Promise<Record<string, number>>;
|
|
44
|
+
/**
|
|
45
|
+
* Append a new entry on behalf of the viewer. Resolves with the host-minted
|
|
46
|
+
* `key`. Rejects with the host's `error` string on validation/host failure
|
|
47
|
+
* (or when the viewer is anonymous).
|
|
48
|
+
*/
|
|
49
|
+
append(value: SharedAppendValue): Promise<{
|
|
50
|
+
key: string;
|
|
51
|
+
}>;
|
|
52
|
+
/**
|
|
53
|
+
* Cast (or re-affirm) this viewer's up-vote on an entry — idempotent, one
|
|
54
|
+
* vote per viewer. Resolves with the entry's vote total AFTER the vote.
|
|
55
|
+
*/
|
|
56
|
+
vote(key: string): Promise<number>;
|
|
57
|
+
/**
|
|
58
|
+
* Remove this viewer's up-vote from an entry — idempotent. Resolves with the
|
|
59
|
+
* entry's vote total AFTER the removal.
|
|
60
|
+
*/
|
|
61
|
+
unvote(key: string): Promise<number>;
|
|
62
|
+
/**
|
|
63
|
+
* Withdraw the viewer's own entry. Resolves `{ deleted: true }` when a row
|
|
64
|
+
* was removed, `{ deleted: false }` when it was already gone (idempotent).
|
|
65
|
+
*/
|
|
66
|
+
withdraw(key: string): Promise<{
|
|
67
|
+
ok: boolean;
|
|
68
|
+
deleted: boolean;
|
|
69
|
+
}>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* App-scoped, append-only, community-votable SHARED datastore. Sibling of
|
|
73
|
+
* {@link useAppStorage} (the per-viewer KV store) — same postMessage bridge,
|
|
74
|
+
* same request/await/correlate-by-requestId mechanism — but the scope is the
|
|
75
|
+
* APP (every viewer sees the same list) and entries are structured
|
|
76
|
+
* `{ title, body? }` records that any viewer can vote on.
|
|
77
|
+
*
|
|
78
|
+
* Calls flow through the host's postMessage bridge; the block never sees the
|
|
79
|
+
* datastore credentials and never sends its block token (the host injects both
|
|
80
|
+
* the token and the viewer identity). Anonymous viewers get a read path (`list`
|
|
81
|
+
* / `getCount(s)`) and a hard reject on mutations (`append`/`vote`/`unvote`/
|
|
82
|
+
* `withdraw`).
|
|
83
|
+
*
|
|
84
|
+
* The hook is stable across renders — it returns the same object identity once
|
|
85
|
+
* the transport singleton is created, so it's safe in `useEffect`/`useMemo`
|
|
86
|
+
* dependency arrays.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* const shared = useSharedStorage();
|
|
90
|
+
* const { key } = await shared.append({ title: 'Add dark mode', body: '…' });
|
|
91
|
+
* const { items } = await shared.list({ limit: 20 }); // newest-first
|
|
92
|
+
* const count = await shared.vote(key); // idempotent up-vote
|
|
93
|
+
* await shared.unvote(key);
|
|
94
|
+
* await shared.withdraw(key); // remove my own entry
|
|
95
|
+
*/
|
|
96
|
+
export declare function useSharedStorage(): UseSharedStorage;
|
|
97
|
+
//# sourceMappingURL=useSharedStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSharedStorage.d.ts","sourceRoot":"","sources":["../../src/hooks/useSharedStorage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAKlE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE;QACV,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D;;;OAGG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAwFnD"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { getTransport } from '../internal/singleton.js';
|
|
3
|
+
import { sendTypedRequest } from '../internal/transport.js';
|
|
4
|
+
/**
|
|
5
|
+
* App-scoped, append-only, community-votable SHARED datastore. Sibling of
|
|
6
|
+
* {@link useAppStorage} (the per-viewer KV store) — same postMessage bridge,
|
|
7
|
+
* same request/await/correlate-by-requestId mechanism — but the scope is the
|
|
8
|
+
* APP (every viewer sees the same list) and entries are structured
|
|
9
|
+
* `{ title, body? }` records that any viewer can vote on.
|
|
10
|
+
*
|
|
11
|
+
* Calls flow through the host's postMessage bridge; the block never sees the
|
|
12
|
+
* datastore credentials and never sends its block token (the host injects both
|
|
13
|
+
* the token and the viewer identity). Anonymous viewers get a read path (`list`
|
|
14
|
+
* / `getCount(s)`) and a hard reject on mutations (`append`/`vote`/`unvote`/
|
|
15
|
+
* `withdraw`).
|
|
16
|
+
*
|
|
17
|
+
* The hook is stable across renders — it returns the same object identity once
|
|
18
|
+
* the transport singleton is created, so it's safe in `useEffect`/`useMemo`
|
|
19
|
+
* dependency arrays.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* const shared = useSharedStorage();
|
|
23
|
+
* const { key } = await shared.append({ title: 'Add dark mode', body: '…' });
|
|
24
|
+
* const { items } = await shared.list({ limit: 20 }); // newest-first
|
|
25
|
+
* const count = await shared.vote(key); // idempotent up-vote
|
|
26
|
+
* await shared.unvote(key);
|
|
27
|
+
* await shared.withdraw(key); // remove my own entry
|
|
28
|
+
*/
|
|
29
|
+
export function useSharedStorage() {
|
|
30
|
+
return useMemo(() => {
|
|
31
|
+
const transport = getTransport();
|
|
32
|
+
return {
|
|
33
|
+
async list(opts) {
|
|
34
|
+
const result = await sendTypedRequest(transport, {
|
|
35
|
+
type: 'SHARED_LIST',
|
|
36
|
+
payload: {
|
|
37
|
+
prefix: opts?.prefix,
|
|
38
|
+
limit: opts?.limit,
|
|
39
|
+
cursor: opts?.cursor,
|
|
40
|
+
},
|
|
41
|
+
}, 'SHARED_LIST_RESULT');
|
|
42
|
+
if (result.error)
|
|
43
|
+
throw new Error(result.error);
|
|
44
|
+
return {
|
|
45
|
+
items: result.items.map((item) => ({
|
|
46
|
+
key: item.key,
|
|
47
|
+
authorUserId: item.authorUserId,
|
|
48
|
+
value: item.value,
|
|
49
|
+
count: item.count,
|
|
50
|
+
createdAt: new Date(item.createdAt),
|
|
51
|
+
updatedAt: new Date(item.updatedAt),
|
|
52
|
+
})),
|
|
53
|
+
nextCursor: result.nextCursor,
|
|
54
|
+
};
|
|
55
|
+
},
|
|
56
|
+
async getCount(key) {
|
|
57
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_GET_COUNT', payload: { key } }, 'SHARED_GET_COUNT_RESULT');
|
|
58
|
+
if (result.error)
|
|
59
|
+
throw new Error(result.error);
|
|
60
|
+
return result.count;
|
|
61
|
+
},
|
|
62
|
+
async getCounts(keys) {
|
|
63
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_GET_COUNTS', payload: { keys } }, 'SHARED_GET_COUNTS_RESULT');
|
|
64
|
+
if (result.error)
|
|
65
|
+
throw new Error(result.error);
|
|
66
|
+
return result.counts;
|
|
67
|
+
},
|
|
68
|
+
async append(value) {
|
|
69
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_APPEND', payload: { value } }, 'SHARED_APPEND_RESULT');
|
|
70
|
+
if (result.error)
|
|
71
|
+
throw new Error(result.error);
|
|
72
|
+
return { key: result.key };
|
|
73
|
+
},
|
|
74
|
+
async vote(key) {
|
|
75
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_VOTE', payload: { key } }, 'SHARED_VOTE_RESULT');
|
|
76
|
+
if (result.error)
|
|
77
|
+
throw new Error(result.error);
|
|
78
|
+
return result.count;
|
|
79
|
+
},
|
|
80
|
+
async unvote(key) {
|
|
81
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_UNVOTE', payload: { key } }, 'SHARED_UNVOTE_RESULT');
|
|
82
|
+
if (result.error)
|
|
83
|
+
throw new Error(result.error);
|
|
84
|
+
return result.count;
|
|
85
|
+
},
|
|
86
|
+
async withdraw(key) {
|
|
87
|
+
const result = await sendTypedRequest(transport, { type: 'SHARED_WITHDRAW', payload: { key } }, 'SHARED_WITHDRAW_RESULT');
|
|
88
|
+
if (!result.ok || result.error) {
|
|
89
|
+
throw new Error(result.error ?? 'shared withdraw failed');
|
|
90
|
+
}
|
|
91
|
+
return { ok: true, deleted: result.deleted };
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
}, []);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=useSharedStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSharedStorage.js","sourceRoot":"","sources":["../../src/hooks/useSharedStorage.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `@civitai/blocks-react` — React hooks + iframe transport for Civitai
|
|
2
|
+
* `@civitai/blocks-react` — React hooks + iframe transport for Civitai Apps.
|
|
3
3
|
*
|
|
4
4
|
* Pair with `@civitai/app-sdk/blocks` (framework-agnostic contract). Hooks
|
|
5
5
|
* land in a follow-up commit; this commit ships the transport layer so the
|
|
@@ -33,4 +33,6 @@ export { SfwGate } from './hooks/SfwGate.js';
|
|
|
33
33
|
export type { SfwGateProps } from './hooks/SfwGate.js';
|
|
34
34
|
export { useAppStorage } from './hooks/useAppStorage.js';
|
|
35
35
|
export type { AppStorageKeyEntry, AppStorageListResult, AppStorageQuota, UseAppStorage, } from './hooks/useAppStorage.js';
|
|
36
|
+
export { useSharedStorage } from './hooks/useSharedStorage.js';
|
|
37
|
+
export type { SharedAppendValue, SharedListItem, SharedListResult, UseSharedStorage, } from './hooks/useSharedStorage.js';
|
|
36
38
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EACV,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,aAAa,GACd,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EACV,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,aAAa,GACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `@civitai/blocks-react` — React hooks + iframe transport for Civitai
|
|
2
|
+
* `@civitai/blocks-react` — React hooks + iframe transport for Civitai Apps.
|
|
3
3
|
*
|
|
4
4
|
* Pair with `@civitai/app-sdk/blocks` (framework-agnostic contract). Hooks
|
|
5
5
|
* land in a follow-up commit; this commit ships the transport layer so the
|
|
@@ -27,4 +27,5 @@ export { useBlockAnalytics } from './hooks/useBlockAnalytics.js';
|
|
|
27
27
|
export { useDomainMaturity } from './hooks/useDomainMaturity.js';
|
|
28
28
|
export { SfwGate } from './hooks/SfwGate.js';
|
|
29
29
|
export { useAppStorage } from './hooks/useAppStorage.js';
|
|
30
|
+
export { useSharedStorage } from './hooks/useSharedStorage.js';
|
|
30
31
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAO3D,QAAQ;AACR,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAO3D,QAAQ;AACR,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAOzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
* called). Only the postMessage bridge round-trips are exercised. Never import
|
|
38
38
|
* this from production code.
|
|
39
39
|
*/
|
|
40
|
-
import { type BlockContext, type BlockResourceInfo, type BlockResourcePickerType, type ColorDomain, type Theme, type ViewerInfo, type WorkflowBody } from '@civitai/app-sdk/blocks';
|
|
40
|
+
import { type BlockContext, type BlockResourceInfo, type BlockResourcePickerType, type BuzzAccountType, type ColorDomain, type SharedStorageValue, type Theme, type ViewerInfo, type WorkflowBody } from '@civitai/app-sdk/blocks';
|
|
41
41
|
/**
|
|
42
42
|
* How submits resolve. `'none'` = everything succeeds; `'all'` /
|
|
43
43
|
* `'insufficient'` = every submit returns an insufficient-Buzz `failed`
|
|
@@ -118,6 +118,16 @@ export interface MockBuzzScenario {
|
|
|
118
118
|
*/
|
|
119
119
|
insufficient?: boolean;
|
|
120
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* Per-pool Buzz wallet the mock host reports on `GET_BUZZ_BALANCE`. Mirrors the
|
|
123
|
+
* SDK `BuzzBalance` / block-side `isValidBuzzBalanceResult` shape (each a finite
|
|
124
|
+
* number; never the platform-internal `red`/`purple` pools).
|
|
125
|
+
*/
|
|
126
|
+
export interface MockBuzzBalance {
|
|
127
|
+
blue: number;
|
|
128
|
+
green: number;
|
|
129
|
+
yellow: number;
|
|
130
|
+
}
|
|
121
131
|
/**
|
|
122
132
|
* STORAGE scenario controls — drive the in-memory KV backend that answers the
|
|
123
133
|
* `APP_STORAGE_*` protocol, so the W4 KV apps (e.g. Prompt Library) can test
|
|
@@ -149,6 +159,33 @@ export interface MockStorageScenario {
|
|
|
149
159
|
*/
|
|
150
160
|
failNext?: number;
|
|
151
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* A seed entry for the in-memory SHARED store. `value` is the contributed
|
|
164
|
+
* `{ title, body? }` record; `authorUserId` defaults to the viewer's id;
|
|
165
|
+
* `voters` seeds the set of user-ids who've up-voted it (so `count` and the
|
|
166
|
+
* per-user one-vote invariant start populated). Newest seeds list first.
|
|
167
|
+
*/
|
|
168
|
+
export interface MockSharedSeed {
|
|
169
|
+
value: SharedStorageValue;
|
|
170
|
+
authorUserId?: number;
|
|
171
|
+
voters?: number[];
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* SHARED-storage scenario controls — drive the in-memory, app-scoped, votable
|
|
175
|
+
* backend that answers the `SHARED_*` protocol, so App-Blocks SHARED apps can
|
|
176
|
+
* develop/test against `createMockHost` directly. Sibling of
|
|
177
|
+
* {@link MockStorageScenario}.
|
|
178
|
+
*/
|
|
179
|
+
export interface MockSharedScenario {
|
|
180
|
+
/** Initial entries the store is seeded with (listed newest-first, in order). */
|
|
181
|
+
seed?: MockSharedSeed[];
|
|
182
|
+
/**
|
|
183
|
+
* Force the next N SHARED mutations (`append`/`vote`/`unvote`/`withdraw`) to
|
|
184
|
+
* fail with a generic `SHARED_UNAVAILABLE` error (counts down) — exercises the
|
|
185
|
+
* error UX.
|
|
186
|
+
*/
|
|
187
|
+
failNext?: number;
|
|
188
|
+
}
|
|
152
189
|
/**
|
|
153
190
|
* Drives `createMockHost`. Every field is optional with a sensible default so
|
|
154
191
|
* `createMockHost()` works out of the box. Each block configures SCENARIOS
|
|
@@ -198,6 +235,38 @@ export interface MockHostOptions {
|
|
|
198
235
|
* {@link MockBuzzScenario}.
|
|
199
236
|
*/
|
|
200
237
|
buzz?: MockBuzzScenario;
|
|
238
|
+
/**
|
|
239
|
+
* The viewer's per-pool Buzz WALLET ({ blue, green, yellow }) reported to a
|
|
240
|
+
* block via the host-mediated `GET_BUZZ_BALANCE` → `BUZZ_BALANCE_RESULT`
|
|
241
|
+
* bridge (what the `useBuzzBalance` hook reads). Distinct from the
|
|
242
|
+
* {@link MockBuzzScenario.balance} spendable-wallet knob, which only drives
|
|
243
|
+
* the insufficient-Buzz / top-up SUBMIT path — this is the displayable
|
|
244
|
+
* per-pool balance. Absent → {@link DEFAULT_BUZZ_BALANCE} (a plausible
|
|
245
|
+
* non-zero wallet, so a block shows a balance out of the box).
|
|
246
|
+
*/
|
|
247
|
+
buzzBalance?: MockBuzzBalance;
|
|
248
|
+
/**
|
|
249
|
+
* Force `GET_BUZZ_BALANCE` to FAIL instead of returning a wallet — exercises
|
|
250
|
+
* the block's balance-read error UI (what `useBuzzBalance().error` surfaces).
|
|
251
|
+
* `true` → a default `'balance unavailable'` message; a string → that exact
|
|
252
|
+
* message; an `Error` → its `.message`. The reply mirrors the real
|
|
253
|
+
* (`createLiveHost`) error shape exactly: `BUZZ_BALANCE_RESULT` with
|
|
254
|
+
* `{ requestId, error }` and NO `balance`. Absent → the balance read
|
|
255
|
+
* succeeds (back-compat). Live-tunable via {@link MockHost.setScenario}.
|
|
256
|
+
*/
|
|
257
|
+
buzzBalanceError?: boolean | string | Error;
|
|
258
|
+
/**
|
|
259
|
+
* Buzz pools a `SUBMIT_WORKFLOW` must REJECT when named in `body.accountType`
|
|
260
|
+
* — simulates the real backend's content-rating clamp. The real host throws a
|
|
261
|
+
* `BAD_REQUEST` at the currency-resolution boundary (before any spend) when a
|
|
262
|
+
* block picks a pool the app's maturity policy disallows; the mock mirrors
|
|
263
|
+
* that: a submit whose `accountType` is in this set resolves to a `failed`
|
|
264
|
+
* snapshot carrying {@link disallowedAccountError}'s message (checked BEFORE
|
|
265
|
+
* the insufficient-Buzz / generic-failure paths, matching the real ordering).
|
|
266
|
+
* Absent/empty → any pool is accepted (back-compat). Live-tunable via
|
|
267
|
+
* {@link MockHost.setScenario}.
|
|
268
|
+
*/
|
|
269
|
+
disallowedAccountTypes?: BuzzAccountType[];
|
|
201
270
|
/**
|
|
202
271
|
* STORAGE scenario: in-memory KV backend (seed / quota / failNext). See
|
|
203
272
|
* {@link MockStorageScenario}. When omitted, the store starts EMPTY with the
|
|
@@ -205,6 +274,13 @@ export interface MockHostOptions {
|
|
|
205
274
|
* serves storage now).
|
|
206
275
|
*/
|
|
207
276
|
storage?: MockStorageScenario;
|
|
277
|
+
/**
|
|
278
|
+
* SHARED scenario: in-memory, app-scoped, votable backend (seed / failNext).
|
|
279
|
+
* See {@link MockSharedScenario}. When omitted, the shared store starts EMPTY
|
|
280
|
+
* — the `SHARED_*` protocol is answered either way (the mock host always
|
|
281
|
+
* serves shared storage now).
|
|
282
|
+
*/
|
|
283
|
+
shared?: MockSharedScenario;
|
|
208
284
|
/** Host theme delivered in `BLOCK_INIT` + context. Default `'dark'`. */
|
|
209
285
|
theme?: Theme;
|
|
210
286
|
/**
|
|
@@ -261,7 +337,7 @@ export interface MockHostOptions {
|
|
|
261
337
|
* `context`, `theme`, and `appId` are fixed at install time — change them by
|
|
262
338
|
* re-installing.)
|
|
263
339
|
*/
|
|
264
|
-
export type MockHostScenarioPatch = Pick<MockHostOptions, 'failMode' | 'cost' | 'pollsUntilDone' | 'cannedPicks' | 'generation' | 'buzz' | 'storage'>;
|
|
340
|
+
export type MockHostScenarioPatch = Pick<MockHostOptions, 'failMode' | 'cost' | 'pollsUntilDone' | 'cannedPicks' | 'generation' | 'buzz' | 'storage' | 'shared' | 'buzzBalanceError' | 'disallowedAccountTypes'>;
|
|
265
341
|
/** Runtime Buzz-balance handle exposed on {@link MockHost.buzz}. */
|
|
266
342
|
export interface MockBuzzHandle {
|
|
267
343
|
/** Current simulated balance, or `undefined` when balance isn't simulated. */
|
|
@@ -288,6 +364,14 @@ export interface MockHost {
|
|
|
288
364
|
/** Runtime Buzz-balance control for a harness UI. */
|
|
289
365
|
buzz: MockBuzzHandle;
|
|
290
366
|
}
|
|
367
|
+
/**
|
|
368
|
+
* The error a `SUBMIT_WORKFLOW` fails with when its `body.accountType` names a
|
|
369
|
+
* pool the app's content rating disallows — byte-for-byte the message the real
|
|
370
|
+
* backend throws (civitai/civitai `blocks.router` `resolveBlockCurrenciesForAccount`,
|
|
371
|
+
* `TRPCError` `BAD_REQUEST`) so a block's error UI can assert the same copy
|
|
372
|
+
* locally. Exported for tests + block-side assertions.
|
|
373
|
+
*/
|
|
374
|
+
export declare function disallowedAccountError(accountType: BuzzAccountType): string;
|
|
291
375
|
/**
|
|
292
376
|
* Reads the URL query toggles the gen-matrix dev harness uses, so a starter's
|
|
293
377
|
* dev harness keeps working with `?viewer/?consent/?fail/?theme/?pick/?pickCkpt`.
|
|
@@ -305,6 +389,15 @@ export declare function readMockHostUrlOptions(win?: (Window & typeof globalThis
|
|
|
305
389
|
* `uninstall()` teardown (restores `window.parent`, clears timers). Safe to use
|
|
306
390
|
* from a node/jsdom/happy-dom test OR a browser dev harness.
|
|
307
391
|
*
|
|
392
|
+
* FIDELITY CAVEAT — `spentAccountType`: on a successful gen the mock stamps the
|
|
393
|
+
* PICKED pool (`body.accountType`), which equals the real backend's primary
|
|
394
|
+
* realized debit only in the common FULL-COVERAGE case. The mock's
|
|
395
|
+
* single-total-balance model cannot simulate split/fallback debits, so when a
|
|
396
|
+
* real gen would split across pools the stamped pool may DIFFER from the
|
|
397
|
+
* backend; and the mock ALWAYS stamps on success, so it cannot model the
|
|
398
|
+
* no-debit / field-OMITTED case (e.g. a credits-only gen, or picking an empty
|
|
399
|
+
* pool). Treat the mock stamp as an approximation, not a guarantee.
|
|
400
|
+
*
|
|
308
401
|
* @example
|
|
309
402
|
* const host = createMockHost({ generation: { failNext: 1, latencyMs: 1500 }, buzz: { balance: 5 } });
|
|
310
403
|
* const uninstall = host.install();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockHost.d.ts","sourceRoot":"","sources":["../../src/internal/mockHost.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mockHost.d.ts","sourceRoot":"","sources":["../../src/internal/mockHost.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,58 @@ const DEFAULT_LORA_PICK = {
|
|
|
69
69
|
const DEFAULT_VIEWER = { id: 2, username: 'dev-viewer', status: 'active' };
|
|
70
70
|
const INSUFFICIENT_BUZZ_ERROR = 'Insufficient Buzz to run this generation.';
|
|
71
71
|
const GENERIC_GEN_ERROR = 'Generation failed (simulated).';
|
|
72
|
+
/** Default message for a simulated balance-read failure ({@link MockHostOptions.buzzBalanceError}). */
|
|
73
|
+
const DEFAULT_BUZZ_BALANCE_ERROR = 'balance unavailable';
|
|
74
|
+
/**
|
|
75
|
+
* The error a `SUBMIT_WORKFLOW` fails with when its `body.accountType` names a
|
|
76
|
+
* pool the app's content rating disallows — byte-for-byte the message the real
|
|
77
|
+
* backend throws (civitai/civitai `blocks.router` `resolveBlockCurrenciesForAccount`,
|
|
78
|
+
* `TRPCError` `BAD_REQUEST`) so a block's error UI can assert the same copy
|
|
79
|
+
* locally. Exported for tests + block-side assertions.
|
|
80
|
+
*/
|
|
81
|
+
export function disallowedAccountError(accountType) {
|
|
82
|
+
return `buzz account '${accountType}' is not spendable for this app's content rating`;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Normalize a {@link MockHostOptions.buzzBalanceError} value to an error string
|
|
86
|
+
* (or `undefined` when genuinely unset — `false`/`undefined`).
|
|
87
|
+
*
|
|
88
|
+
* An intentionally-EMPTY string (or an `Error` with an empty `.message`) is
|
|
89
|
+
* coerced to {@link DEFAULT_BUZZ_BALANCE_ERROR} rather than treated as "unset":
|
|
90
|
+
* once a caller opts into the error mode, the balance read must FAIL — a blank
|
|
91
|
+
* message would otherwise silently re-enable the successful read and diverge
|
|
92
|
+
* from the `Error`-with-empty-message branch. Only `false`/`undefined` disable.
|
|
93
|
+
*/
|
|
94
|
+
function normalizeBalanceError(e) {
|
|
95
|
+
if (e === undefined || e === false)
|
|
96
|
+
return undefined;
|
|
97
|
+
if (e === true)
|
|
98
|
+
return DEFAULT_BUZZ_BALANCE_ERROR;
|
|
99
|
+
if (typeof e === 'string')
|
|
100
|
+
return e || DEFAULT_BUZZ_BALANCE_ERROR;
|
|
101
|
+
return e.message || DEFAULT_BUZZ_BALANCE_ERROR;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Default per-pool wallet reported on `GET_BUZZ_BALANCE` when
|
|
105
|
+
* {@link MockHostOptions.buzzBalance} is omitted — a plausible non-zero balance
|
|
106
|
+
* (some free/earned blue, some purchased yellow) so a block renders a real
|
|
107
|
+
* balance out of the box.
|
|
108
|
+
*/
|
|
109
|
+
const DEFAULT_BUZZ_BALANCE = { blue: 1000, green: 0, yellow: 5000 };
|
|
110
|
+
/**
|
|
111
|
+
* The pool that "funded" a mock generation — the largest wallet pool, mirroring
|
|
112
|
+
* the backend's primary-funder (largest-debit) stamp on
|
|
113
|
+
* `BlockWorkflowSnapshot.spentAccountType`. Ties resolve to the conservative
|
|
114
|
+
* free `blue` pool.
|
|
115
|
+
*/
|
|
116
|
+
function primaryFunder(balance) {
|
|
117
|
+
const { blue, green, yellow } = balance;
|
|
118
|
+
if (yellow > blue && yellow >= green)
|
|
119
|
+
return 'yellow';
|
|
120
|
+
if (green > blue && green > yellow)
|
|
121
|
+
return 'green';
|
|
122
|
+
return 'blue';
|
|
123
|
+
}
|
|
72
124
|
/** Byte size of a JSON value as the mock store would persist it. */
|
|
73
125
|
function jsonByteSize(value) {
|
|
74
126
|
try {
|
|
@@ -197,6 +249,15 @@ export function readMockHostUrlOptions(win = globalThis
|
|
|
197
249
|
* `uninstall()` teardown (restores `window.parent`, clears timers). Safe to use
|
|
198
250
|
* from a node/jsdom/happy-dom test OR a browser dev harness.
|
|
199
251
|
*
|
|
252
|
+
* FIDELITY CAVEAT — `spentAccountType`: on a successful gen the mock stamps the
|
|
253
|
+
* PICKED pool (`body.accountType`), which equals the real backend's primary
|
|
254
|
+
* realized debit only in the common FULL-COVERAGE case. The mock's
|
|
255
|
+
* single-total-balance model cannot simulate split/fallback debits, so when a
|
|
256
|
+
* real gen would split across pools the stamped pool may DIFFER from the
|
|
257
|
+
* backend; and the mock ALWAYS stamps on success, so it cannot model the
|
|
258
|
+
* no-debit / field-OMITTED case (e.g. a credits-only gen, or picking an empty
|
|
259
|
+
* pool). Treat the mock stamp as an approximation, not a guarantee.
|
|
260
|
+
*
|
|
200
261
|
* @example
|
|
201
262
|
* const host = createMockHost({ generation: { failNext: 1, latencyMs: 1500 }, buzz: { balance: 5 } });
|
|
202
263
|
* const uninstall = host.install();
|
|
@@ -214,6 +275,9 @@ export function createMockHost(options = {}) {
|
|
|
214
275
|
const win = maybeWin;
|
|
215
276
|
const viewer = options.viewer === undefined ? DEFAULT_VIEWER : options.viewer;
|
|
216
277
|
const buzzBudget = options.buzzBudget ?? 200;
|
|
278
|
+
// Per-pool wallet reported on GET_BUZZ_BALANCE (install-time, threaded like
|
|
279
|
+
// `viewer`). Defaulted so `useBuzzBalance()` resolves out of the box.
|
|
280
|
+
const buzzBalance = options.buzzBalance ?? DEFAULT_BUZZ_BALANCE;
|
|
217
281
|
const theme = options.theme ?? 'dark';
|
|
218
282
|
const blockInstanceId = options.blockInstanceId ?? 'page_mock';
|
|
219
283
|
const blockId = options.blockId ?? 'mock-block';
|
|
@@ -228,6 +292,10 @@ export function createMockHost(options = {}) {
|
|
|
228
292
|
// Legacy `cost` feeds costPerGen unless the scenario set its own.
|
|
229
293
|
let legacyCost = options.cost ?? 8;
|
|
230
294
|
let cannedPicks = options.cannedPicks ?? { Checkpoint: DEFAULT_CHECKPOINT_PICK, LORA: DEFAULT_LORA_PICK };
|
|
295
|
+
// Simulated balance-read failure (undefined = read succeeds).
|
|
296
|
+
let buzzBalanceError = normalizeBalanceError(options.buzzBalanceError);
|
|
297
|
+
// Pools a submit must reject (content-rating clamp). Normalized to a Set.
|
|
298
|
+
let disallowedAccounts = new Set(options.disallowedAccountTypes ?? []);
|
|
231
299
|
// ---- Storage scenario (in-memory KV backend) ----
|
|
232
300
|
const storageScenario = { ...(options.storage ?? {}) };
|
|
233
301
|
const store = new Map();
|
|
@@ -245,6 +313,38 @@ export function createMockHost(options = {}) {
|
|
|
245
313
|
total += jsonByteSize(row.value) + k.length;
|
|
246
314
|
return total;
|
|
247
315
|
};
|
|
316
|
+
// ---- SHARED scenario (in-memory, app-scoped, votable backend) ----
|
|
317
|
+
// The "current mock user" whose identity the host injects — every SHARED
|
|
318
|
+
// vote/append is attributed to it. A single-user mock, so the per-user
|
|
319
|
+
// one-vote set is naturally satisfied (voting twice keeps count at 1).
|
|
320
|
+
const mockUserId = viewer?.id ?? 0;
|
|
321
|
+
const sharedScenario = { ...(options.shared ?? {}) };
|
|
322
|
+
const sharedStore = new Map();
|
|
323
|
+
let sharedSeq = 0;
|
|
324
|
+
let sharedFailNext = sharedScenario.failNext ?? 0;
|
|
325
|
+
const sharedNow = new Date().toISOString();
|
|
326
|
+
// Seed newest-LAST so the last-listed seed has the highest seq (newest-first).
|
|
327
|
+
for (const s of sharedScenario.seed ?? []) {
|
|
328
|
+
sharedSeq += 1;
|
|
329
|
+
const key = `shared_${sharedSeq}`;
|
|
330
|
+
sharedStore.set(key, {
|
|
331
|
+
key,
|
|
332
|
+
seq: sharedSeq,
|
|
333
|
+
authorUserId: s.authorUserId ?? mockUserId,
|
|
334
|
+
value: s.value,
|
|
335
|
+
voters: new Set(s.voters ?? []),
|
|
336
|
+
createdAt: sharedNow,
|
|
337
|
+
updatedAt: sharedNow,
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
const sharedItemWire = (row) => ({
|
|
341
|
+
key: row.key,
|
|
342
|
+
authorUserId: row.authorUserId,
|
|
343
|
+
value: row.value,
|
|
344
|
+
count: row.voters.size,
|
|
345
|
+
createdAt: row.createdAt,
|
|
346
|
+
updatedAt: row.updatedAt,
|
|
347
|
+
});
|
|
248
348
|
// Resolve a per-gen cost from the scenario (or legacy `cost`).
|
|
249
349
|
const costFor = (body) => {
|
|
250
350
|
const spec = gen.costPerGen ?? legacyCost;
|
|
@@ -315,6 +415,17 @@ export function createMockHost(options = {}) {
|
|
|
315
415
|
status: 'succeeded',
|
|
316
416
|
cost: { total: cost },
|
|
317
417
|
imageUrls: imagesFor(workflowId, body),
|
|
418
|
+
// Pick-aware APPROXIMATION of the real backend's
|
|
419
|
+
// BlockWorkflowSnapshot.spentAccountType. The real backend stamps the
|
|
420
|
+
// LARGEST realized debit (`primaryDebitedAccountType`), and its currency
|
|
421
|
+
// resolution is preferred-first + fallback/SPLIT — so when the picked
|
|
422
|
+
// pool can't cover the cost the realized primary debit is a DIFFERENT
|
|
423
|
+
// (fallback) pool than the pick. The mock's single-total-balance model
|
|
424
|
+
// can't simulate splits, so it stamps the PICKED pool: that equals the
|
|
425
|
+
// primary debit only in the common FULL-COVERAGE case, and always stamps
|
|
426
|
+
// on success (it can't model the no-debit / field-OMITTED case). When no
|
|
427
|
+
// pool was submitted, fall back to the largest-wallet heuristic.
|
|
428
|
+
spentAccountType: body.accountType ?? primaryFunder(buzzBalance),
|
|
318
429
|
};
|
|
319
430
|
};
|
|
320
431
|
const parentMock = {
|
|
@@ -366,6 +477,25 @@ export function createMockHost(options = {}) {
|
|
|
366
477
|
submitCount += 1;
|
|
367
478
|
const body = typed.payload?.body ?? {};
|
|
368
479
|
const cost = costFor(body);
|
|
480
|
+
// Disallowed-account path (content-rating clamp): the real backend
|
|
481
|
+
// rejects a picked pool outside the app's maturity policy at the
|
|
482
|
+
// currency-resolution boundary — BEFORE any Buzz spend — so this is
|
|
483
|
+
// checked first. Surfaces as a `failed` snapshot (mirrors how a
|
|
484
|
+
// submit tRPC BAD_REQUEST becomes an errorSnapshot in createLiveHost).
|
|
485
|
+
if (body.accountType && disallowedAccounts.has(body.accountType)) {
|
|
486
|
+
dispatchToBlock({
|
|
487
|
+
type: 'WORKFLOW_SUBMITTED',
|
|
488
|
+
payload: {
|
|
489
|
+
requestId,
|
|
490
|
+
snapshot: {
|
|
491
|
+
workflowId: `wf_fail_${submitCount}`,
|
|
492
|
+
status: 'failed',
|
|
493
|
+
error: disallowedAccountError(body.accountType),
|
|
494
|
+
},
|
|
495
|
+
},
|
|
496
|
+
});
|
|
497
|
+
return;
|
|
498
|
+
}
|
|
369
499
|
// Insufficient-Buzz path: legacy failMode, the buzz scenario's
|
|
370
500
|
// force flag, OR a simulated balance that can't cover this gen.
|
|
371
501
|
const balanceSimulated = typeof buzz.balance === 'number';
|
|
@@ -478,6 +608,30 @@ export function createMockHost(options = {}) {
|
|
|
478
608
|
});
|
|
479
609
|
return;
|
|
480
610
|
}
|
|
611
|
+
case 'GET_BUZZ_BALANCE': {
|
|
612
|
+
// Reply with the synthetic per-pool wallet (what useBuzzBalance
|
|
613
|
+
// reads). Mirrors createLiveHost's BUZZ_BALANCE_RESULT reply shape
|
|
614
|
+
// exactly. Drop a request with no requestId — the block correlates
|
|
615
|
+
// the reply by it, so a reply without one is unroutable (matches
|
|
616
|
+
// the sibling request cases + createLiveHost).
|
|
617
|
+
if (typeof requestId !== 'string')
|
|
618
|
+
return;
|
|
619
|
+
// Simulated read failure: reply with the error shape
|
|
620
|
+
// (`{ requestId, error }`, no `balance`) — byte-for-byte
|
|
621
|
+
// createLiveHost's failure reply — so the block's error UI fires.
|
|
622
|
+
if (buzzBalanceError !== undefined) {
|
|
623
|
+
dispatchToBlock({
|
|
624
|
+
type: 'BUZZ_BALANCE_RESULT',
|
|
625
|
+
payload: { requestId, error: buzzBalanceError },
|
|
626
|
+
});
|
|
627
|
+
return;
|
|
628
|
+
}
|
|
629
|
+
dispatchToBlock({
|
|
630
|
+
type: 'BUZZ_BALANCE_RESULT',
|
|
631
|
+
payload: { requestId, balance: { ...buzzBalance } },
|
|
632
|
+
});
|
|
633
|
+
return;
|
|
634
|
+
}
|
|
481
635
|
case 'OPEN_CHECKPOINT_PICKER': {
|
|
482
636
|
const selected = cannedPicks.Checkpoint;
|
|
483
637
|
dispatchToBlock({
|
|
@@ -508,7 +662,7 @@ export function createMockHost(options = {}) {
|
|
|
508
662
|
});
|
|
509
663
|
return;
|
|
510
664
|
}
|
|
511
|
-
// ----
|
|
665
|
+
// ---- Civitai Apps KV datastore (W4) — in-memory backend ----
|
|
512
666
|
case 'APP_STORAGE_GET': {
|
|
513
667
|
const key = typed.payload?.key ?? '';
|
|
514
668
|
const row = store.get(key);
|
|
@@ -613,6 +767,158 @@ export function createMockHost(options = {}) {
|
|
|
613
767
|
});
|
|
614
768
|
return;
|
|
615
769
|
}
|
|
770
|
+
// ---- Civitai Apps SHARED datastore — in-memory votable backend ----
|
|
771
|
+
case 'SHARED_LIST': {
|
|
772
|
+
const prefix = typed.payload?.prefix ?? '';
|
|
773
|
+
const limit = typed.payload?.limit ?? 100;
|
|
774
|
+
const cursor = typed.payload?.cursor;
|
|
775
|
+
// Newest-first: highest seq first.
|
|
776
|
+
const all = [...sharedStore.values()]
|
|
777
|
+
.filter((r) => r.key.startsWith(prefix))
|
|
778
|
+
.sort((a, b) => b.seq - a.seq);
|
|
779
|
+
// Cursor = base64 of the last returned key (matches the hook's
|
|
780
|
+
// opaque-nextCursor contract).
|
|
781
|
+
const afterKey = cursor ? safeAtob(cursor) : undefined;
|
|
782
|
+
const startIdx = afterKey ? all.findIndex((r) => r.key === afterKey) + 1 : 0;
|
|
783
|
+
const slice = (startIdx <= 0 && afterKey ? [] : all.slice(startIdx)).slice(0, limit);
|
|
784
|
+
const items = slice.map(sharedItemWire);
|
|
785
|
+
const last = slice[slice.length - 1]?.key;
|
|
786
|
+
const hasMore = last !== undefined && all.findIndex((r) => r.key === last) < all.length - 1;
|
|
787
|
+
dispatchToBlock({
|
|
788
|
+
type: 'SHARED_LIST_RESULT',
|
|
789
|
+
payload: {
|
|
790
|
+
requestId,
|
|
791
|
+
items,
|
|
792
|
+
...(hasMore && last ? { nextCursor: safeBtoa(last) } : {}),
|
|
793
|
+
},
|
|
794
|
+
});
|
|
795
|
+
return;
|
|
796
|
+
}
|
|
797
|
+
case 'SHARED_GET_COUNT': {
|
|
798
|
+
const key = typed.payload?.key ?? '';
|
|
799
|
+
const row = sharedStore.get(key);
|
|
800
|
+
dispatchToBlock({
|
|
801
|
+
type: 'SHARED_GET_COUNT_RESULT',
|
|
802
|
+
payload: { requestId, count: row ? row.voters.size : 0 },
|
|
803
|
+
});
|
|
804
|
+
return;
|
|
805
|
+
}
|
|
806
|
+
case 'SHARED_GET_COUNTS': {
|
|
807
|
+
const keys = typed.payload?.keys ?? [];
|
|
808
|
+
const counts = {};
|
|
809
|
+
for (const k of keys)
|
|
810
|
+
counts[k] = sharedStore.get(k)?.voters.size ?? 0;
|
|
811
|
+
dispatchToBlock({
|
|
812
|
+
type: 'SHARED_GET_COUNTS_RESULT',
|
|
813
|
+
payload: { requestId, counts },
|
|
814
|
+
});
|
|
815
|
+
return;
|
|
816
|
+
}
|
|
817
|
+
case 'SHARED_APPEND': {
|
|
818
|
+
if (sharedFailNext > 0) {
|
|
819
|
+
sharedFailNext -= 1;
|
|
820
|
+
dispatchToBlock({
|
|
821
|
+
type: 'SHARED_APPEND_RESULT',
|
|
822
|
+
payload: { requestId, key: '', error: 'SHARED_UNAVAILABLE' },
|
|
823
|
+
});
|
|
824
|
+
return;
|
|
825
|
+
}
|
|
826
|
+
const value = typed.payload?.value;
|
|
827
|
+
if (!value || typeof value.title !== 'string' || value.title.length === 0) {
|
|
828
|
+
dispatchToBlock({
|
|
829
|
+
type: 'SHARED_APPEND_RESULT',
|
|
830
|
+
payload: { requestId, key: '', error: 'INVALID_VALUE' },
|
|
831
|
+
});
|
|
832
|
+
return;
|
|
833
|
+
}
|
|
834
|
+
sharedSeq += 1;
|
|
835
|
+
const key = `shared_${sharedSeq}`;
|
|
836
|
+
const now = new Date().toISOString();
|
|
837
|
+
sharedStore.set(key, {
|
|
838
|
+
key,
|
|
839
|
+
seq: sharedSeq,
|
|
840
|
+
authorUserId: mockUserId,
|
|
841
|
+
value: { title: value.title, ...(value.body !== undefined ? { body: value.body } : {}) },
|
|
842
|
+
voters: new Set(),
|
|
843
|
+
createdAt: now,
|
|
844
|
+
updatedAt: now,
|
|
845
|
+
});
|
|
846
|
+
dispatchToBlock({
|
|
847
|
+
type: 'SHARED_APPEND_RESULT',
|
|
848
|
+
payload: { requestId, key },
|
|
849
|
+
});
|
|
850
|
+
return;
|
|
851
|
+
}
|
|
852
|
+
case 'SHARED_VOTE': {
|
|
853
|
+
const key = typed.payload?.key ?? '';
|
|
854
|
+
if (sharedFailNext > 0) {
|
|
855
|
+
sharedFailNext -= 1;
|
|
856
|
+
dispatchToBlock({
|
|
857
|
+
type: 'SHARED_VOTE_RESULT',
|
|
858
|
+
payload: { requestId, count: 0, error: 'SHARED_UNAVAILABLE' },
|
|
859
|
+
});
|
|
860
|
+
return;
|
|
861
|
+
}
|
|
862
|
+
const row = sharedStore.get(key);
|
|
863
|
+
if (!row) {
|
|
864
|
+
dispatchToBlock({
|
|
865
|
+
type: 'SHARED_VOTE_RESULT',
|
|
866
|
+
payload: { requestId, count: 0, error: 'NOT_FOUND' },
|
|
867
|
+
});
|
|
868
|
+
return;
|
|
869
|
+
}
|
|
870
|
+
// Set membership → one vote per user (voting twice is a no-op).
|
|
871
|
+
row.voters.add(mockUserId);
|
|
872
|
+
row.updatedAt = new Date().toISOString();
|
|
873
|
+
dispatchToBlock({
|
|
874
|
+
type: 'SHARED_VOTE_RESULT',
|
|
875
|
+
payload: { requestId, count: row.voters.size },
|
|
876
|
+
});
|
|
877
|
+
return;
|
|
878
|
+
}
|
|
879
|
+
case 'SHARED_UNVOTE': {
|
|
880
|
+
const key = typed.payload?.key ?? '';
|
|
881
|
+
if (sharedFailNext > 0) {
|
|
882
|
+
sharedFailNext -= 1;
|
|
883
|
+
dispatchToBlock({
|
|
884
|
+
type: 'SHARED_UNVOTE_RESULT',
|
|
885
|
+
payload: { requestId, count: 0, error: 'SHARED_UNAVAILABLE' },
|
|
886
|
+
});
|
|
887
|
+
return;
|
|
888
|
+
}
|
|
889
|
+
const row = sharedStore.get(key);
|
|
890
|
+
if (!row) {
|
|
891
|
+
dispatchToBlock({
|
|
892
|
+
type: 'SHARED_UNVOTE_RESULT',
|
|
893
|
+
payload: { requestId, count: 0, error: 'NOT_FOUND' },
|
|
894
|
+
});
|
|
895
|
+
return;
|
|
896
|
+
}
|
|
897
|
+
row.voters.delete(mockUserId);
|
|
898
|
+
row.updatedAt = new Date().toISOString();
|
|
899
|
+
dispatchToBlock({
|
|
900
|
+
type: 'SHARED_UNVOTE_RESULT',
|
|
901
|
+
payload: { requestId, count: row.voters.size },
|
|
902
|
+
});
|
|
903
|
+
return;
|
|
904
|
+
}
|
|
905
|
+
case 'SHARED_WITHDRAW': {
|
|
906
|
+
const key = typed.payload?.key ?? '';
|
|
907
|
+
if (sharedFailNext > 0) {
|
|
908
|
+
sharedFailNext -= 1;
|
|
909
|
+
dispatchToBlock({
|
|
910
|
+
type: 'SHARED_WITHDRAW_RESULT',
|
|
911
|
+
payload: { requestId, ok: false, deleted: false, error: 'SHARED_UNAVAILABLE' },
|
|
912
|
+
});
|
|
913
|
+
return;
|
|
914
|
+
}
|
|
915
|
+
const had = sharedStore.delete(key);
|
|
916
|
+
dispatchToBlock({
|
|
917
|
+
type: 'SHARED_WITHDRAW_RESULT',
|
|
918
|
+
payload: { requestId, ok: true, deleted: had },
|
|
919
|
+
});
|
|
920
|
+
return;
|
|
921
|
+
}
|
|
616
922
|
default:
|
|
617
923
|
return;
|
|
618
924
|
}
|
|
@@ -685,12 +991,22 @@ export function createMockHost(options = {}) {
|
|
|
685
991
|
gen = { ...gen, ...patch.generation };
|
|
686
992
|
if (patch.buzz !== undefined)
|
|
687
993
|
buzz = { ...buzz, ...patch.buzz };
|
|
994
|
+
if (patch.buzzBalanceError !== undefined)
|
|
995
|
+
buzzBalanceError = normalizeBalanceError(patch.buzzBalanceError);
|
|
996
|
+
if (patch.disallowedAccountTypes !== undefined)
|
|
997
|
+
disallowedAccounts = new Set(patch.disallowedAccountTypes);
|
|
688
998
|
if (patch.storage !== undefined) {
|
|
689
999
|
// Only the live-tunable storage knob (`failNext`) is applied mid-session;
|
|
690
1000
|
// seed/quota are install-time (re-install to change the backing store).
|
|
691
1001
|
if (patch.storage.failNext !== undefined)
|
|
692
1002
|
storageFailNext = patch.storage.failNext;
|
|
693
1003
|
}
|
|
1004
|
+
if (patch.shared !== undefined) {
|
|
1005
|
+
// Only `failNext` is live-tunable; `seed` is install-time (re-install to
|
|
1006
|
+
// change the backing store).
|
|
1007
|
+
if (patch.shared.failNext !== undefined)
|
|
1008
|
+
sharedFailNext = patch.shared.failNext;
|
|
1009
|
+
}
|
|
694
1010
|
}
|
|
695
1011
|
const buzzHandle = {
|
|
696
1012
|
getBalance: () => buzz.balance,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockHost.js","sourceRoot":"","sources":["../../src/internal/mockHost.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mockHost.js","sourceRoot":"","sources":["../../src/internal/mockHost.ts"],"names":[],"mappings":"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"}
|
package/dist/testing.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ import { type ReactNode } from 'react';
|
|
|
16
16
|
import { __resetTransport } from './internal/singleton.js';
|
|
17
17
|
import { type MockHostOptions } from './internal/mockHost.js';
|
|
18
18
|
export { __resetTransport as resetTransport };
|
|
19
|
-
export { createMockHost, readMockHostUrlOptions, type MockHost, type MockHostOptions, type MockHostFailMode, type MockHostScenarioPatch, type MockGenerationScenario, type MockBuzzScenario, type MockBuzzHandle, type MockStorageScenario, type CostSpec, type ImageSpec, type CannedPick, } from './internal/mockHost.js';
|
|
19
|
+
export { createMockHost, readMockHostUrlOptions, disallowedAccountError, type MockHost, type MockHostOptions, type MockHostFailMode, type MockHostScenarioPatch, type MockGenerationScenario, type MockBuzzScenario, type MockBuzzBalance, type MockBuzzHandle, type MockStorageScenario, type MockSharedScenario, type MockSharedSeed, type CostSpec, type ImageSpec, type CannedPick, } from './internal/mockHost.js';
|
|
20
20
|
export { createLiveHost, decodeBlockTokenPayload, type LiveHostOptions, } from './internal/liveHost.js';
|
|
21
21
|
export { buildCatalogUrl, fetchCatalog, modelToCard, responseToPage, edgeThumb, cardToCheckpoint, cardToResource, filterCardsByFamily, CATALOG_API_BASE, CATALOG_API_BASE_BLOCKS, DEFAULT_LIMIT, type CatalogQuery, type CatalogCard, type CatalogPage, type CatalogResult, type CatalogModelType, } from './internal/catalog.js';
|
|
22
22
|
export { openPickerOverlay, type PickerOverlayHandle, type PickerSelection, type OpenPickerOptions, } from './internal/pickerOverlay.js';
|
package/dist/testing.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,IAAI,cAAc,EAAE,CAAC;AAE9C,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,eAAe,EACf,YAAY,EACZ,WAAW,EACX,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,6BAA6B,CAAC;AAErC;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CAE7E;AAOD;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,sDAAsD;IACtD,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,OAAO,CAAC,EACtB,QAAQ,EACR,eAAsB,EACtB,OAAc,EACd,GAAG,OAAO,EACX,EAAE,YAAY,2CAkEd;AAED,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,gBAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,IAAI,cAAc,EAAE,CAAC;AAE9C,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,eAAe,EACf,YAAY,EACZ,WAAW,EACX,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,6BAA6B,CAAC;AAErC;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CAE7E;AAOD;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,sDAAsD;IACtD,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,OAAO,CAAC,EACtB,QAAQ,EACR,eAAsB,EACtB,OAAc,EACd,GAAG,OAAO,EACX,EAAE,YAAY,2CAkEd;AAED,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,gBAAU,CAAC"}
|
package/dist/testing.js
CHANGED
|
@@ -17,7 +17,7 @@ import { useEffect, useRef, useState } from 'react';
|
|
|
17
17
|
import { __resetTransport } from './internal/singleton.js';
|
|
18
18
|
import { createMockHost, readMockHostUrlOptions, } from './internal/mockHost.js';
|
|
19
19
|
export { __resetTransport as resetTransport };
|
|
20
|
-
export { createMockHost, readMockHostUrlOptions, } from './internal/mockHost.js';
|
|
20
|
+
export { createMockHost, readMockHostUrlOptions, disallowedAccountError, } from './internal/mockHost.js';
|
|
21
21
|
export { createLiveHost, decodeBlockTokenPayload, } from './internal/liveHost.js';
|
|
22
22
|
export { buildCatalogUrl, fetchCatalog, modelToCard, responseToPage, edgeThumb, cardToCheckpoint, cardToResource, filterCardsByFamily, CATALOG_API_BASE, CATALOG_API_BASE_BLOCKS, DEFAULT_LIMIT, } from './internal/catalog.js';
|
|
23
23
|
export { openPickerOverlay, } from './internal/pickerOverlay.js';
|
package/dist/testing.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,IAAI,cAAc,EAAE,CAAC;AAE9C,OAAO,EACL,cAAc,EACd,sBAAsB,
|
|
1
|
+
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.tsx"],"names":[],"mappings":"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"}
|
package/dist/ui/index.d.ts
CHANGED
package/dist/ui/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@civitai/blocks-react",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "React hooks and iframe transport for Civitai
|
|
3
|
+
"version": "0.19.0",
|
|
4
|
+
"description": "React hooks and iframe transport for Civitai Apps. Pairs with @civitai/app-sdk/blocks.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"react-dom": "^19.0.0",
|
|
44
44
|
"typescript": "^5.9.2",
|
|
45
45
|
"vitest": "^4.1.7",
|
|
46
|
-
"@civitai/app-sdk": "^0.
|
|
46
|
+
"@civitai/app-sdk": "^0.15.0"
|
|
47
47
|
},
|
|
48
48
|
"publishConfig": {
|
|
49
49
|
"access": "public"
|