UNPKG

@wordpress/core-data

Version:
62 lines (61 loc) 1.4 kB
// packages/core-data/src/sync.ts import { privateApis as syncPrivateApis } from "@wordpress/sync"; import { unlock } from "./lock-unlock.mjs"; var { ConnectionErrorCode, createSyncManager, Delta, CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY, LOCAL_EDITOR_ORIGIN, LOCAL_UNDO_IGNORED_ORIGIN, retrySyncConnection } = unlock(syncPrivateApis); var CRDT_AUTOSAVE_SNAPSHOT_KEY = "crdt_snapshot"; var syncManager; function getSyncManager() { if (syncManager) { return syncManager; } syncManager = createSyncManager(); return syncManager; } function hasSyncManager() { return Boolean(syncManager); } function getEntitySnapshot(kind, name, recordId) { if (!hasSyncManager()) { return void 0; } return getSyncManager()?.getEntitySnapshot( `${kind}/${name}`, `${recordId}` ); } function entityContainsSnapshot(kind, name, recordId, encodedSnapshot) { if (!hasSyncManager()) { return false; } return getSyncManager()?.entityContainsSnapshot( `${kind}/${name}`, `${recordId}`, encodedSnapshot ) ?? false; } export { CRDT_AUTOSAVE_SNAPSHOT_KEY, CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY, ConnectionErrorCode, Delta, LOCAL_EDITOR_ORIGIN, LOCAL_UNDO_IGNORED_ORIGIN, entityContainsSnapshot, getEntitySnapshot, getSyncManager, hasSyncManager, retrySyncConnection }; //# sourceMappingURL=sync.mjs.map