@drawnagency/primitives 0.1.75 → 0.1.77
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/dist/chunk-2G2S36SY.js +13 -0
- package/dist/{chunk-7T2WQSWF.js → chunk-63BQQNZO.js} +9 -9
- package/dist/chunk-REM2NH7K.js +44 -0
- package/dist/{chunk-U4E6S4PX.js → chunk-RO4E5UJI.js} +53 -39
- package/dist/{chunk-NKVZGPR6.js → chunk-YP7IHMC3.js} +1 -1
- package/dist/collab/provider-registry.d.ts +4 -0
- package/dist/collab/provider-registry.d.ts.map +1 -0
- package/dist/collab/provider-registry.js +9 -0
- package/dist/collab/rebase.d.ts +37 -0
- package/dist/collab/rebase.d.ts.map +1 -0
- package/dist/collab/rebase.js +64 -0
- package/dist/collab/recovery.d.ts +89 -0
- package/dist/collab/recovery.d.ts.map +1 -0
- package/dist/collab/types.d.ts +93 -0
- package/dist/collab/types.d.ts.map +1 -0
- package/dist/collab/types.js +19 -0
- package/dist/components/editor/AudienceIndicator.d.ts +3 -1
- package/dist/components/editor/AudienceIndicator.d.ts.map +1 -1
- package/dist/components/editor/ChildBlockWrapper.d.ts +7 -0
- package/dist/components/editor/ChildBlockWrapper.d.ts.map +1 -1
- package/dist/components/editor/ConflictDialog.d.ts +14 -0
- package/dist/components/editor/ConflictDialog.d.ts.map +1 -0
- package/dist/components/editor/IndicatorPill.d.ts +4 -1
- package/dist/components/editor/IndicatorPill.d.ts.map +1 -1
- package/dist/components/editor/LockBadge.d.ts +7 -0
- package/dist/components/editor/LockBadge.d.ts.map +1 -0
- package/dist/components/editor/PresenceAvatars.d.ts +9 -0
- package/dist/components/editor/PresenceAvatars.d.ts.map +1 -0
- package/dist/components/editor/SectionWrapper.d.ts +1 -1
- package/dist/components/editor/SectionWrapper.d.ts.map +1 -1
- package/dist/components/editor/StatusIndicator.d.ts +3 -1
- package/dist/components/editor/StatusIndicator.d.ts.map +1 -1
- package/dist/components/editor/index.js +92 -44
- package/dist/components/primitives/index.js +3 -3
- package/dist/components/sections/Container/Container.d.ts.map +1 -1
- package/dist/components/sections/brand-guide.js +3 -3
- package/dist/components/sections/register-schemas.js +9 -9
- package/dist/components/sections/register.js +9 -9
- package/dist/components/shell/EditorShell.d.ts +3 -1
- package/dist/components/shell/EditorShell.d.ts.map +1 -1
- package/dist/hooks/useCollabSession.d.ts +23 -0
- package/dist/hooks/useCollabSession.d.ts.map +1 -0
- package/dist/hooks/useEditorPersistence.d.ts +21 -1
- package/dist/hooks/useEditorPersistence.d.ts.map +1 -1
- package/dist/hooks/useEditorPublish.d.ts +39 -2
- package/dist/hooks/useEditorPublish.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +44 -22
- package/dist/lib/dexie.d.ts +12 -0
- package/dist/lib/dexie.d.ts.map +1 -1
- package/dist/lib/dexie.js +27 -0
- package/dist/lib/index.js +12 -12
- package/dist/lib/registry.d.ts +10 -0
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/schemas/index.js +1 -1
- package/dist/types/database.d.ts +70 -0
- package/dist/types/database.d.ts.map +1 -1
- package/package.json +13 -1
- package/src/collab/provider-registry.ts +14 -0
- package/src/collab/rebase.ts +140 -0
- package/src/collab/recovery.ts +149 -0
- package/src/collab/types.ts +96 -0
- package/src/components/editor/AudienceIndicator.tsx +4 -1
- package/src/components/editor/ChildBlockWrapper.tsx +15 -1
- package/src/components/editor/ConflictDialog.tsx +61 -0
- package/src/components/editor/IndicatorPill.tsx +12 -6
- package/src/components/editor/LockBadge.tsx +31 -0
- package/src/components/editor/PresenceAvatars.tsx +53 -0
- package/src/components/editor/SectionWrapper.tsx +60 -29
- package/src/components/editor/StatusIndicator.tsx +4 -0
- package/src/components/sections/Container/Container.tsx +6 -4
- package/src/components/shell/EditorShell.tsx +561 -18
- package/src/hooks/useCollabSession.ts +220 -0
- package/src/hooks/useEditorPersistence.ts +104 -1
- package/src/hooks/useEditorPublish.ts +205 -63
- package/src/index.ts +2 -0
- package/src/lib/dexie.ts +44 -0
- package/src/lib/registry.ts +8 -0
- package/src/types/database.ts +55 -0
- package/dist/{chunk-Q3T23HVW.js → chunk-B2DLHZKC.js} +4 -4
- package/dist/{chunk-T7MP7ANP.js → chunk-UUCOJL7O.js} +0 -0
- package/dist/{chunk-ZRWGV5O6.js → chunk-XFDEUK37.js} +3 -3
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { CollabBootstrap, CollabPeer, CollabProvider, CollabStatus, IndexUpdateMessage, SavedMessage, SectionUpdateMessage, TakeoverMessage } from "../collab/types";
|
|
2
|
+
export interface UseCollabSessionArgs {
|
|
3
|
+
provider: CollabProvider | null;
|
|
4
|
+
bootstrap: CollabBootstrap | null;
|
|
5
|
+
onRemoteSectionUpdate: (msg: SectionUpdateMessage) => void;
|
|
6
|
+
onRemoteIndexUpdate: (msg: IndexUpdateMessage) => void;
|
|
7
|
+
onRemoteSaved: (msg: SavedMessage) => void;
|
|
8
|
+
onTakenOver: (msg: TakeoverMessage) => void;
|
|
9
|
+
}
|
|
10
|
+
export interface UseCollabSessionResult {
|
|
11
|
+
status: CollabStatus;
|
|
12
|
+
peers: CollabPeer[];
|
|
13
|
+
locks: Map<string, CollabPeer>;
|
|
14
|
+
heldByMe: Set<string>;
|
|
15
|
+
requestEdit(sectionId: string): Promise<boolean>;
|
|
16
|
+
takeover(sectionId: string): Promise<boolean>;
|
|
17
|
+
setFocus(sectionId: string | null): void;
|
|
18
|
+
releaseAfterSave(sectionIds: string[]): void;
|
|
19
|
+
broadcastSectionUpdate(sectionId: string, content: unknown): void;
|
|
20
|
+
broadcastIndexUpdate(index: unknown): void;
|
|
21
|
+
}
|
|
22
|
+
export declare function useCollabSession(args: UseCollabSessionArgs): UseCollabSessionResult;
|
|
23
|
+
//# sourceMappingURL=useCollabSession.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCollabSession.d.ts","sourceRoot":"","sources":["../../src/hooks/useCollabSession.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EAAE,UAAU,EAAE,cAAc,EAAiB,YAAY,EACxE,kBAAkB,EAAE,YAAY,EAAE,oBAAoB,EAAE,eAAe,EACxE,MAAM,iBAAiB,CAAC;AAIzB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,qBAAqB,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC3D,mBAAmB,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACvD,aAAa,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACzC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7C,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAClE,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5C;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,sBAAsB,CA6LnF"}
|
|
@@ -1,13 +1,33 @@
|
|
|
1
1
|
import type { SectionContent } from "../schemas/sections";
|
|
2
2
|
import type { SiteIndex, SiteConfig } from "../schemas/site-config";
|
|
3
|
-
|
|
3
|
+
interface PersistenceOptions {
|
|
4
|
+
/** Broadcast piggyback: called after a successful debounced flush with exactly
|
|
5
|
+
* what was persisted — the flushed section entries and whether the index was
|
|
6
|
+
* part of this flush. The collaboration layer forwards held-lock section
|
|
7
|
+
* updates + index updates to peers from here. Stored in a ref so its identity
|
|
8
|
+
* can churn without recreating the debounce machinery. */
|
|
9
|
+
onFlush?: (entries: {
|
|
10
|
+
sectionId: string;
|
|
11
|
+
content: SectionContent;
|
|
12
|
+
}[], indexFlushed: boolean) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare function useEditorPersistence(siteIndexRef: React.RefObject<SiteIndex>, options?: PersistenceOptions): {
|
|
4
15
|
markSectionDirty: (sectionId: string, content: SectionContent) => void;
|
|
5
16
|
markIndexDirty: () => void;
|
|
6
17
|
removeSection: (sectionId: string) => void;
|
|
18
|
+
dropPendingSection: (sectionId: string) => void;
|
|
19
|
+
hasPendingSection: (sectionId: string) => boolean;
|
|
7
20
|
persistConfig: (config: SiteConfig) => Promise<void>;
|
|
8
21
|
flushNow: () => Promise<void>;
|
|
9
22
|
cancelPendingFlush: () => void;
|
|
10
23
|
isConfigDirty: () => boolean;
|
|
11
24
|
clearConfigDirty: () => void;
|
|
25
|
+
isIndexDirty: () => boolean;
|
|
26
|
+
hasUnsavedIndex: () => boolean;
|
|
27
|
+
clearUnsavedIndex: (upToGeneration?: number) => void;
|
|
28
|
+
noteUnsavedIndex: () => void;
|
|
29
|
+
currentGeneration: () => number;
|
|
30
|
+
sectionDirtiedAfter: (sectionId: string, generation: number) => boolean;
|
|
12
31
|
};
|
|
32
|
+
export {};
|
|
13
33
|
//# sourceMappingURL=useEditorPersistence.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEditorPersistence.d.ts","sourceRoot":"","sources":["../../src/hooks/useEditorPersistence.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"useEditorPersistence.d.ts","sourceRoot":"","sources":["../../src/hooks/useEditorPersistence.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AA2BpE,UAAU,kBAAkB;IAC1B;;;;+DAI2D;IAC3D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,cAAc,CAAA;KAAE,EAAE,EAAE,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;CACtG;AAED,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,EACxC,OAAO,CAAC,EAAE,kBAAkB;kCAwFd,MAAM,WAAW,cAAc;;+BAmBC,MAAM;oCAiBD,MAAM;mCAQ3C,MAAM;4BAI6B,UAAU;;;;;;;yCAgCH,MAAM;;;qCAWhD,MAAM,cAAc,MAAM;EAuBzC"}
|
|
@@ -10,7 +10,17 @@ interface PublishDeps {
|
|
|
10
10
|
siteConfig: SiteConfig | null;
|
|
11
11
|
sections: LoadedSection[];
|
|
12
12
|
deletedSectionIds?: string[];
|
|
13
|
-
|
|
13
|
+
/** Receives the ids that were actually committed this save (so the caller can
|
|
14
|
+
* release exactly those sections' locks), plus:
|
|
15
|
+
* - editToken: the edit-generation captured at save BEGIN. The caller's
|
|
16
|
+
* post-save clears must be guarded on it — any edit with a newer generation
|
|
17
|
+
* happened while this save was in flight and was NOT carried by it.
|
|
18
|
+
* - sentDeletedIds: the deletion ids this save actually sent, so the caller
|
|
19
|
+
* clears only those (a deletion scheduled mid-save must stay scheduled). */
|
|
20
|
+
onSuccess: (savedSectionIds: string[], meta: {
|
|
21
|
+
editToken: number;
|
|
22
|
+
sentDeletedIds: string[];
|
|
23
|
+
}) => void;
|
|
14
24
|
mediaManifest: MediaManifest;
|
|
15
25
|
manifestDirty: boolean;
|
|
16
26
|
clearManifestDirty: () => void;
|
|
@@ -20,11 +30,38 @@ interface PublishDeps {
|
|
|
20
30
|
onShasUpdated: (savedSha: string | null, mainSha: string | null) => void;
|
|
21
31
|
onPublishComplete?: () => void;
|
|
22
32
|
getBaseVersion: () => string | null;
|
|
33
|
+
/** Injected by EditorShell. On a 409 (concurrent edit) the save calls this to
|
|
34
|
+
* re-fetch the fresh draft, rebase local unsaved work on top, and refresh the
|
|
35
|
+
* optimistic-concurrency base (savedShaRef). Returns true when recovery
|
|
36
|
+
* succeeded and the save should be retried once; false (or undefined) means
|
|
37
|
+
* fall through to the honest conflict toast. */
|
|
38
|
+
recoverConflict?: () => Promise<boolean>;
|
|
39
|
+
/** Injected by EditorShell. After every successful plain save, receives the
|
|
40
|
+
* COMMITTED snapshot (sent content substituted into the previous clean
|
|
41
|
+
* baseline, plus the sent index) so the shell can re-prime the content-cache
|
|
42
|
+
* baseline that recoverConflict diffs against. Without this, the baseline
|
|
43
|
+
* dies at the first save (discardSavedChanges clears it) and later 409
|
|
44
|
+
* recoveries would silently merge local-wins. */
|
|
45
|
+
onBaselineCommitted?: (args: {
|
|
46
|
+
sha: string;
|
|
47
|
+
sections: LoadedSection[];
|
|
48
|
+
index: SiteIndex;
|
|
49
|
+
savedIds: string[];
|
|
50
|
+
}) => Promise<void>;
|
|
23
51
|
/** Test hook: overrides the per-request payload budget (default 4MB). */
|
|
24
52
|
saveChunkBudget?: number;
|
|
53
|
+
/** Injected by EditorShell. Mirrors this hook's in-flight-save state out to the
|
|
54
|
+
* shell so background collaboration handlers (e.g. the remote saved-event
|
|
55
|
+
* rebase) can defer while our own save's response path owns the state. */
|
|
56
|
+
savingRef?: React.MutableRefObject<boolean>;
|
|
57
|
+
/** Injected by EditorShell (persistence.currentGeneration). Read at save begin
|
|
58
|
+
* to mint the editToken passed back through onSuccess. Absent (tests without
|
|
59
|
+
* collab wiring): the token degrades to MAX_SAFE_INTEGER, i.e. "nothing was
|
|
60
|
+
* edited after capture" — the pre-generation wholesale-clear behavior. */
|
|
61
|
+
getEditGeneration?: () => number;
|
|
25
62
|
}
|
|
26
63
|
export type PublishAction = "idle" | "saving" | "publishing";
|
|
27
|
-
export declare function useEditorPublish({ flushNow, cancelPendingFlush, isConfigDirty, clearConfigDirty, siteIndexRef, siteConfig, sections, deletedSectionIds, onSuccess, mediaManifest, manifestDirty, clearManifestDirty, pendingMediaItems, pendingMediaDeletions, onMediaPublished, onShasUpdated, onPublishComplete, getBaseVersion, saveChunkBudget, }: PublishDeps): {
|
|
64
|
+
export declare function useEditorPublish({ flushNow, cancelPendingFlush, isConfigDirty, clearConfigDirty, siteIndexRef, siteConfig, sections, deletedSectionIds, onSuccess, mediaManifest, manifestDirty, clearManifestDirty, pendingMediaItems, pendingMediaDeletions, onMediaPublished, onShasUpdated, onPublishComplete, getBaseVersion, recoverConflict, onBaselineCommitted, saveChunkBudget, savingRef, getEditGeneration, }: PublishDeps): {
|
|
28
65
|
publishAction: PublishAction;
|
|
29
66
|
publishFeedback: string | null;
|
|
30
67
|
saveProgress: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEditorPublish.d.ts","sourceRoot":"","sources":["../../src/hooks/useEditorPublish.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"useEditorPublish.d.ts","sourceRoot":"","sources":["../../src/hooks/useEditorPublish.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAiD/D,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,OAAO,CAAC;IAC7B,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACzC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;;mFAM+E;IAC/E,SAAS,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACtG,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,iBAAiB,EAAE,SAAS,EAAE,CAAC;IAC/B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gBAAgB,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtF,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACzE,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAI/B,cAAc,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACpC;;;;qDAIiD;IACjD,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC;;;;;sDAKkD;IAClD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;QAAC,KAAK,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChI,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;+EAE2E;IAC3E,SAAS,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C;;;+EAG2E;IAC3E,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC;CAClC;AAQD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE7D,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,SAAS,EACT,iBAAiB,GAClB,EAAE,WAAW;;;;;;;EA+db"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,6 +12,19 @@ import {
|
|
|
12
12
|
verifyAudienceToken,
|
|
13
13
|
verifySessionToken
|
|
14
14
|
} from "./chunk-EM5DFHDZ.js";
|
|
15
|
+
import {
|
|
16
|
+
CollabPeerSchema,
|
|
17
|
+
HEARTBEAT_INTERVAL_MS,
|
|
18
|
+
IndexUpdateMessageSchema,
|
|
19
|
+
LOCK_STALE_MS,
|
|
20
|
+
SavedMessageSchema,
|
|
21
|
+
SectionUpdateMessageSchema,
|
|
22
|
+
TakeoverMessageSchema
|
|
23
|
+
} from "./chunk-REM2NH7K.js";
|
|
24
|
+
import {
|
|
25
|
+
getCollabProvider,
|
|
26
|
+
setCollabProvider
|
|
27
|
+
} from "./chunk-2G2S36SY.js";
|
|
15
28
|
import {
|
|
16
29
|
BAKED_MEDIA_KEYS,
|
|
17
30
|
EXT_TO_MIME,
|
|
@@ -57,29 +70,29 @@ import {
|
|
|
57
70
|
loadStaticSiteContent,
|
|
58
71
|
mergeSiteContent,
|
|
59
72
|
safeRedirect
|
|
60
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-XFDEUK37.js";
|
|
74
|
+
import {
|
|
75
|
+
createEvent,
|
|
76
|
+
darkModeEvent,
|
|
77
|
+
editModeEvent,
|
|
78
|
+
navChangeEvent
|
|
79
|
+
} from "./chunk-677NTHAZ.js";
|
|
61
80
|
import {
|
|
62
81
|
isSameOriginRequest,
|
|
63
82
|
requireSessionSecret,
|
|
64
83
|
safeNextPath
|
|
65
84
|
} from "./chunk-S2L3BPLS.js";
|
|
66
85
|
import "./chunk-75P6HWPN.js";
|
|
86
|
+
import {
|
|
87
|
+
curatedIcons,
|
|
88
|
+
getIcon
|
|
89
|
+
} from "./chunk-WDSVHKAH.js";
|
|
67
90
|
import {
|
|
68
91
|
ensureSanitizer,
|
|
69
92
|
generateNavLinks,
|
|
70
93
|
sanitizeHtml,
|
|
71
94
|
toSectionId
|
|
72
95
|
} from "./chunk-53DKVAB6.js";
|
|
73
|
-
import {
|
|
74
|
-
curatedIcons,
|
|
75
|
-
getIcon
|
|
76
|
-
} from "./chunk-WDSVHKAH.js";
|
|
77
|
-
import {
|
|
78
|
-
createEvent,
|
|
79
|
-
darkModeEvent,
|
|
80
|
-
editModeEvent,
|
|
81
|
-
navChangeEvent
|
|
82
|
-
} from "./chunk-677NTHAZ.js";
|
|
83
96
|
import {
|
|
84
97
|
cn
|
|
85
98
|
} from "./chunk-7EOSDFS3.js";
|
|
@@ -90,17 +103,6 @@ import {
|
|
|
90
103
|
getSectionContentSchema,
|
|
91
104
|
getSectionSchema
|
|
92
105
|
} from "./chunk-TZQPOR5A.js";
|
|
93
|
-
import {
|
|
94
|
-
clearRegistry,
|
|
95
|
-
createRegistry,
|
|
96
|
-
defineSection,
|
|
97
|
-
getAllSchemas,
|
|
98
|
-
getAllSections,
|
|
99
|
-
getSchema,
|
|
100
|
-
getSection,
|
|
101
|
-
registerSchema,
|
|
102
|
-
registerSection
|
|
103
|
-
} from "./chunk-VKAGMEKE.js";
|
|
104
106
|
import {
|
|
105
107
|
ChatbotConfigSchema,
|
|
106
108
|
ChatbotTaskSchema,
|
|
@@ -121,6 +123,17 @@ import {
|
|
|
121
123
|
VariantSchema,
|
|
122
124
|
normalizeSiteIndex
|
|
123
125
|
} from "./chunk-SWIHUIFT.js";
|
|
126
|
+
import {
|
|
127
|
+
clearRegistry,
|
|
128
|
+
createRegistry,
|
|
129
|
+
defineSection,
|
|
130
|
+
getAllSchemas,
|
|
131
|
+
getAllSections,
|
|
132
|
+
getSchema,
|
|
133
|
+
getSection,
|
|
134
|
+
registerSchema,
|
|
135
|
+
registerSection
|
|
136
|
+
} from "./chunk-VKAGMEKE.js";
|
|
124
137
|
import "./chunk-NSCT3AMV.js";
|
|
125
138
|
import {
|
|
126
139
|
env
|
|
@@ -145,12 +158,16 @@ export {
|
|
|
145
158
|
BAKED_MEDIA_KEYS,
|
|
146
159
|
ChatbotConfigSchema,
|
|
147
160
|
ChatbotTaskSchema,
|
|
161
|
+
CollabPeerSchema,
|
|
148
162
|
DEFAULT_LINK,
|
|
149
163
|
EXT_TO_MIME,
|
|
150
164
|
FontNameSchema,
|
|
165
|
+
HEARTBEAT_INTERVAL_MS,
|
|
151
166
|
HexColorSchema,
|
|
152
167
|
ImageManifestSchema,
|
|
153
168
|
IndexSchema,
|
|
169
|
+
IndexUpdateMessageSchema,
|
|
170
|
+
LOCK_STALE_MS,
|
|
154
171
|
LastOwnerError,
|
|
155
172
|
LinkTargetSchema,
|
|
156
173
|
LinkValueSchema,
|
|
@@ -166,13 +183,16 @@ export {
|
|
|
166
183
|
RoleSchema,
|
|
167
184
|
SESSION_COOKIE,
|
|
168
185
|
SESSION_MAX_AGE_SECONDS,
|
|
186
|
+
SavedMessageSchema,
|
|
169
187
|
SectionMetaSchema,
|
|
188
|
+
SectionUpdateMessageSchema,
|
|
170
189
|
SessionExpiredError,
|
|
171
190
|
SessionSchema,
|
|
172
191
|
SingleMediaReferenceSchema,
|
|
173
192
|
SiteConfigSchema,
|
|
174
193
|
SiteUserSchema,
|
|
175
194
|
StorageConflictError,
|
|
195
|
+
TakeoverMessageSchema,
|
|
176
196
|
TextLineSchema,
|
|
177
197
|
VariantSchema,
|
|
178
198
|
audiencePasses,
|
|
@@ -197,6 +217,7 @@ export {
|
|
|
197
217
|
generateVideoPoster,
|
|
198
218
|
getAllSchemas,
|
|
199
219
|
getAllSections,
|
|
220
|
+
getCollabProvider,
|
|
200
221
|
getIcon,
|
|
201
222
|
getMediaProvider,
|
|
202
223
|
getSchema,
|
|
@@ -223,6 +244,7 @@ export {
|
|
|
223
244
|
safeRedirect,
|
|
224
245
|
sanitizeHtml,
|
|
225
246
|
sanitizeMediaName,
|
|
247
|
+
setCollabProvider,
|
|
226
248
|
setMediaProvider,
|
|
227
249
|
setSessionCookie,
|
|
228
250
|
signAudienceToken,
|
package/dist/lib/dexie.d.ts
CHANGED
|
@@ -2,6 +2,13 @@ import type { SectionContent } from "../schemas/sections";
|
|
|
2
2
|
import type { SiteIndex, SiteConfig } from "../schemas/site-config";
|
|
3
3
|
import type { LoadedSection } from "./loader";
|
|
4
4
|
import type { MediaManifest, MediaItem } from "../media/types";
|
|
5
|
+
export interface PreservedEditRow {
|
|
6
|
+
id: string;
|
|
7
|
+
sectionId: string;
|
|
8
|
+
content: SectionContent;
|
|
9
|
+
reason: "takeover" | "conflict";
|
|
10
|
+
preservedAt: string;
|
|
11
|
+
}
|
|
5
12
|
export declare function initEditorStore(siteId: string): void;
|
|
6
13
|
export declare function checkForLocalChanges(): Promise<{
|
|
7
14
|
latestTimestamp: string;
|
|
@@ -87,4 +94,9 @@ export declare function removePendingMediaDeletion(id: string): Promise<void>;
|
|
|
87
94
|
export declare function getPendingMediaDeletions(): Promise<string[]>;
|
|
88
95
|
export declare function clearPendingMedia(): Promise<void>;
|
|
89
96
|
export declare function clearPendingMediaByIds(itemIds: string[], deletionIds: string[]): Promise<void>;
|
|
97
|
+
/** Snapshot a local edit that is about to be superseded (takeover or conflict
|
|
98
|
+
* resolution) so it is recoverable rather than silently destroyed. */
|
|
99
|
+
export declare function preserveEdit(sectionId: string, content: SectionContent, reason: "takeover" | "conflict"): Promise<string>;
|
|
100
|
+
export declare function listPreservedEdits(): Promise<PreservedEditRow[]>;
|
|
101
|
+
export declare function removePreservedEdit(id: string): Promise<void>;
|
|
90
102
|
//# sourceMappingURL=dexie.d.ts.map
|
package/dist/lib/dexie.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexie.d.ts","sourceRoot":"","sources":["../../src/lib/dexie.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAe,UAAU,EAAQ,MAAM,wBAAwB,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"dexie.d.ts","sourceRoot":"","sources":["../../src/lib/dexie.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/dexie.js
CHANGED
|
@@ -11,6 +11,7 @@ var EditorDatabase = class extends Dexie {
|
|
|
11
11
|
mediaManifest;
|
|
12
12
|
pendingMedia;
|
|
13
13
|
pendingMediaDeletions;
|
|
14
|
+
preservedEdits;
|
|
14
15
|
constructor(siteId) {
|
|
15
16
|
super(`brand-portal-${siteId}`);
|
|
16
17
|
this.version(1).stores({
|
|
@@ -89,6 +90,17 @@ var EditorDatabase = class extends Dexie {
|
|
|
89
90
|
await tx.table("siteIndex").clear();
|
|
90
91
|
await tx.table("contentCache").clear();
|
|
91
92
|
});
|
|
93
|
+
this.version(9).stores({
|
|
94
|
+
sections: "sectionId",
|
|
95
|
+
siteIndex: "key",
|
|
96
|
+
meta: "key",
|
|
97
|
+
siteConfig: "key",
|
|
98
|
+
contentCache: "key",
|
|
99
|
+
mediaManifest: "key",
|
|
100
|
+
pendingMedia: "id",
|
|
101
|
+
pendingMediaDeletions: "id",
|
|
102
|
+
preservedEdits: "id, sectionId"
|
|
103
|
+
});
|
|
92
104
|
}
|
|
93
105
|
};
|
|
94
106
|
var db = null;
|
|
@@ -363,6 +375,18 @@ async function clearPendingMediaByIds(itemIds, deletionIds) {
|
|
|
363
375
|
if (deletionIds.length > 0) await database.pendingMediaDeletions.bulkDelete(deletionIds);
|
|
364
376
|
});
|
|
365
377
|
}
|
|
378
|
+
async function preserveEdit(sectionId, content, reason) {
|
|
379
|
+
const preservedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
380
|
+
const id = `${sectionId}:${preservedAt}`;
|
|
381
|
+
await getDb().preservedEdits.put({ id, sectionId, content, reason, preservedAt });
|
|
382
|
+
return id;
|
|
383
|
+
}
|
|
384
|
+
async function listPreservedEdits() {
|
|
385
|
+
return getDb().preservedEdits.toArray();
|
|
386
|
+
}
|
|
387
|
+
async function removePreservedEdit(id) {
|
|
388
|
+
await getDb().preservedEdits.delete(id);
|
|
389
|
+
}
|
|
366
390
|
export {
|
|
367
391
|
addPendingMediaItem,
|
|
368
392
|
cacheContent,
|
|
@@ -385,13 +409,16 @@ export {
|
|
|
385
409
|
getPendingMediaLocalUrls,
|
|
386
410
|
hasLocalChanges,
|
|
387
411
|
initEditorStore,
|
|
412
|
+
listPreservedEdits,
|
|
388
413
|
markPendingMediaDeleted,
|
|
389
414
|
persistAll,
|
|
390
415
|
persistMediaManifest,
|
|
391
416
|
persistSiteConfig,
|
|
392
417
|
persistSiteIndex,
|
|
418
|
+
preserveEdit,
|
|
393
419
|
removePendingMediaDeletion,
|
|
394
420
|
removePendingMediaItem,
|
|
421
|
+
removePreservedEdit,
|
|
395
422
|
restoreLocalChanges,
|
|
396
423
|
updateBranchShas
|
|
397
424
|
};
|
package/dist/lib/index.js
CHANGED
|
@@ -7,25 +7,25 @@ import {
|
|
|
7
7
|
loadStaticSiteContent,
|
|
8
8
|
mergeSiteContent,
|
|
9
9
|
safeRedirect
|
|
10
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-XFDEUK37.js";
|
|
11
|
+
import {
|
|
12
|
+
createEvent,
|
|
13
|
+
darkModeEvent,
|
|
14
|
+
editModeEvent,
|
|
15
|
+
navChangeEvent
|
|
16
|
+
} from "../chunk-677NTHAZ.js";
|
|
11
17
|
import "../chunk-S2L3BPLS.js";
|
|
12
18
|
import "../chunk-75P6HWPN.js";
|
|
19
|
+
import {
|
|
20
|
+
curatedIcons,
|
|
21
|
+
getIcon
|
|
22
|
+
} from "../chunk-WDSVHKAH.js";
|
|
13
23
|
import {
|
|
14
24
|
ensureSanitizer,
|
|
15
25
|
generateNavLinks,
|
|
16
26
|
sanitizeHtml,
|
|
17
27
|
toSectionId
|
|
18
28
|
} from "../chunk-53DKVAB6.js";
|
|
19
|
-
import {
|
|
20
|
-
curatedIcons,
|
|
21
|
-
getIcon
|
|
22
|
-
} from "../chunk-WDSVHKAH.js";
|
|
23
|
-
import {
|
|
24
|
-
createEvent,
|
|
25
|
-
darkModeEvent,
|
|
26
|
-
editModeEvent,
|
|
27
|
-
navChangeEvent
|
|
28
|
-
} from "../chunk-677NTHAZ.js";
|
|
29
29
|
import {
|
|
30
30
|
cn
|
|
31
31
|
} from "../chunk-7EOSDFS3.js";
|
|
@@ -33,6 +33,7 @@ import {
|
|
|
33
33
|
audiencePasses
|
|
34
34
|
} from "../chunk-4YEOTFVU.js";
|
|
35
35
|
import "../chunk-TZQPOR5A.js";
|
|
36
|
+
import "../chunk-SWIHUIFT.js";
|
|
36
37
|
import {
|
|
37
38
|
clearRegistry,
|
|
38
39
|
createRegistry,
|
|
@@ -44,7 +45,6 @@ import {
|
|
|
44
45
|
registerSchema,
|
|
45
46
|
registerSection
|
|
46
47
|
} from "../chunk-VKAGMEKE.js";
|
|
47
|
-
import "../chunk-SWIHUIFT.js";
|
|
48
48
|
import "../chunk-NSCT3AMV.js";
|
|
49
49
|
import {
|
|
50
50
|
env
|
package/dist/lib/registry.d.ts
CHANGED
|
@@ -97,6 +97,16 @@ export interface WrapperProps {
|
|
|
97
97
|
mainStatus?: string | null;
|
|
98
98
|
contentDiffersFromMain?: boolean;
|
|
99
99
|
isLocalOnly?: boolean;
|
|
100
|
+
/** Collaboration: when another editor holds this section's lock, their identity.
|
|
101
|
+
* Renders a lock badge, makes content inert, and suppresses mutation chrome. */
|
|
102
|
+
lockedBy?: {
|
|
103
|
+
email: string;
|
|
104
|
+
} | null;
|
|
105
|
+
/** Collaboration: request the lock be stolen from the current holder. */
|
|
106
|
+
onTakeover?: () => void;
|
|
107
|
+
/** Collaboration: fired on focus-in to request the lock. Resolves false when
|
|
108
|
+
* denied (caller keeps the section read-only via `lockedBy`). */
|
|
109
|
+
onEditIntent?: () => Promise<boolean>;
|
|
100
110
|
children: React.ReactNode;
|
|
101
111
|
}
|
|
102
112
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas/index.js
CHANGED
|
@@ -20,7 +20,6 @@ import {
|
|
|
20
20
|
getSectionContentSchema,
|
|
21
21
|
getSectionSchema
|
|
22
22
|
} from "../chunk-TZQPOR5A.js";
|
|
23
|
-
import "../chunk-VKAGMEKE.js";
|
|
24
23
|
import {
|
|
25
24
|
ChatbotConfigSchema,
|
|
26
25
|
ChatbotTaskSchema,
|
|
@@ -41,6 +40,7 @@ import {
|
|
|
41
40
|
VariantSchema,
|
|
42
41
|
normalizeSiteIndex
|
|
43
42
|
} from "../chunk-SWIHUIFT.js";
|
|
43
|
+
import "../chunk-VKAGMEKE.js";
|
|
44
44
|
import "../chunk-NSCT3AMV.js";
|
|
45
45
|
import "../chunk-JSBRDJBE.js";
|
|
46
46
|
export {
|
package/dist/types/database.d.ts
CHANGED
|
@@ -216,6 +216,41 @@ export type Database = {
|
|
|
216
216
|
}
|
|
217
217
|
];
|
|
218
218
|
};
|
|
219
|
+
editor_locks: {
|
|
220
|
+
Row: {
|
|
221
|
+
acquired_at: string;
|
|
222
|
+
email: string;
|
|
223
|
+
heartbeat_at: string;
|
|
224
|
+
section_id: string;
|
|
225
|
+
site_id: string;
|
|
226
|
+
user_id: string;
|
|
227
|
+
};
|
|
228
|
+
Insert: {
|
|
229
|
+
acquired_at?: string;
|
|
230
|
+
email: string;
|
|
231
|
+
heartbeat_at?: string;
|
|
232
|
+
section_id: string;
|
|
233
|
+
site_id: string;
|
|
234
|
+
user_id: string;
|
|
235
|
+
};
|
|
236
|
+
Update: {
|
|
237
|
+
acquired_at?: string;
|
|
238
|
+
email?: string;
|
|
239
|
+
heartbeat_at?: string;
|
|
240
|
+
section_id?: string;
|
|
241
|
+
site_id?: string;
|
|
242
|
+
user_id?: string;
|
|
243
|
+
};
|
|
244
|
+
Relationships: [
|
|
245
|
+
{
|
|
246
|
+
foreignKeyName: "editor_locks_site_id_fkey";
|
|
247
|
+
columns: ["site_id"];
|
|
248
|
+
isOneToOne: false;
|
|
249
|
+
referencedRelation: "sites";
|
|
250
|
+
referencedColumns: ["id"];
|
|
251
|
+
}
|
|
252
|
+
];
|
|
253
|
+
};
|
|
219
254
|
github_installations: {
|
|
220
255
|
Row: {
|
|
221
256
|
created_at: string | null;
|
|
@@ -673,6 +708,21 @@ export type Database = {
|
|
|
673
708
|
[_ in never]: never;
|
|
674
709
|
};
|
|
675
710
|
Functions: {
|
|
711
|
+
acquire_section_lock: {
|
|
712
|
+
Args: {
|
|
713
|
+
p_section_id: string;
|
|
714
|
+
p_site_id: string;
|
|
715
|
+
p_steal?: boolean;
|
|
716
|
+
};
|
|
717
|
+
Returns: {
|
|
718
|
+
acquired_at: string;
|
|
719
|
+
email: string;
|
|
720
|
+
heartbeat_at: string;
|
|
721
|
+
section_id: string;
|
|
722
|
+
site_id: string;
|
|
723
|
+
user_id: string;
|
|
724
|
+
}[];
|
|
725
|
+
};
|
|
676
726
|
chat_usage_hit: {
|
|
677
727
|
Args: {
|
|
678
728
|
p_day: string;
|
|
@@ -683,12 +733,25 @@ export type Database = {
|
|
|
683
733
|
};
|
|
684
734
|
Returns: undefined;
|
|
685
735
|
};
|
|
736
|
+
collab_site_member: {
|
|
737
|
+
Args: {
|
|
738
|
+
p_site_id: string;
|
|
739
|
+
};
|
|
740
|
+
Returns: boolean;
|
|
741
|
+
};
|
|
686
742
|
get_user_id_by_email: {
|
|
687
743
|
Args: {
|
|
688
744
|
lookup_email: string;
|
|
689
745
|
};
|
|
690
746
|
Returns: string;
|
|
691
747
|
};
|
|
748
|
+
heartbeat_section_locks: {
|
|
749
|
+
Args: {
|
|
750
|
+
p_section_ids: string[];
|
|
751
|
+
p_site_id: string;
|
|
752
|
+
};
|
|
753
|
+
Returns: undefined;
|
|
754
|
+
};
|
|
692
755
|
is_site_member: {
|
|
693
756
|
Args: {
|
|
694
757
|
p_site_id: string;
|
|
@@ -743,6 +806,13 @@ export type Database = {
|
|
|
743
806
|
retry_after_ms: number;
|
|
744
807
|
}[];
|
|
745
808
|
};
|
|
809
|
+
release_section_locks: {
|
|
810
|
+
Args: {
|
|
811
|
+
p_section_ids: string[];
|
|
812
|
+
p_site_id: string;
|
|
813
|
+
};
|
|
814
|
+
Returns: undefined;
|
|
815
|
+
};
|
|
746
816
|
revoke_site_user: {
|
|
747
817
|
Args: {
|
|
748
818
|
p_site_id: string;
|