dexie-cloud-addon 4.3.8 → 4.4.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/dist/modern/DexieCloudAPI.d.ts +17 -0
- package/dist/modern/DexieCloudOptions.d.ts +9 -0
- package/dist/modern/TSON.d.ts +0 -6
- package/dist/modern/currentUserEmitter.d.ts +2 -1
- package/dist/modern/db/DexieCloudDB.d.ts +2 -0
- package/dist/modern/db/entities/EntityCommon.d.ts +1 -0
- package/dist/modern/db/entities/UserLogin.d.ts +1 -1
- package/dist/modern/dexie-cloud-addon.js +3701 -2361
- package/dist/modern/dexie-cloud-addon.js.map +1 -1
- package/dist/modern/dexie-cloud-addon.min.js +1 -1
- package/dist/modern/dexie-cloud-addon.min.js.map +1 -1
- package/dist/modern/middlewares/blobResolveMiddleware.d.ts +21 -0
- package/dist/modern/service-worker.js +2385 -1045
- package/dist/modern/service-worker.js.map +1 -1
- package/dist/modern/service-worker.min.js +1 -1
- package/dist/modern/service-worker.min.js.map +1 -1
- package/dist/modern/sync/BlobDownloadTracker.d.ts +33 -0
- package/dist/modern/sync/BlobSavingQueue.d.ts +35 -0
- package/dist/modern/sync/blobOffloading.d.ts +37 -0
- package/dist/modern/sync/blobProgress.d.ts +25 -0
- package/dist/modern/sync/blobResolve.d.ts +85 -0
- package/dist/modern/sync/eagerBlobDownloader.d.ts +20 -0
- package/dist/modern/sync/loadCachedAccessToken.d.ts +2 -0
- package/dist/modern/types/DXCAlert.d.ts +6 -0
- package/dist/modern/types/TXExpandos.d.ts +1 -0
- package/dist/umd/dexie-cloud-addon.js +3787 -2447
- package/dist/umd/dexie-cloud-addon.js.map +1 -1
- package/dist/umd/dexie-cloud-addon.min.js +1 -1
- package/dist/umd/dexie-cloud-addon.min.js.map +1 -1
- package/dist/umd/service-worker.js +2270 -930
- package/dist/umd/service-worker.js.map +1 -1
- package/dist/umd/service-worker.min.js +1 -1
- package/dist/umd/service-worker.min.js.map +1 -1
- package/package.json +5 -6
- package/dist/modern/default-ui/AuthProviderButton.d.ts +0 -21
- package/dist/modern/default-ui/ProviderSelectionDialog.d.ts +0 -7
- package/dist/modern/default-ui/SelectDialog.d.ts +0 -10
- package/dist/modern/dexie-cloud-addon.min.js.gz +0 -0
- package/dist/umd/DISABLE_SERVICEWORKER_STRATEGY.d.ts +0 -1
- package/dist/umd/DXCWebSocketStatus.d.ts +0 -1
- package/dist/umd/DexieCloudAPI.d.ts +0 -75
- package/dist/umd/DexieCloudOptions.d.ts +0 -27
- package/dist/umd/DexieCloudSyncOptions.d.ts +0 -4
- package/dist/umd/DexieCloudTable.d.ts +0 -18
- package/dist/umd/InvalidLicenseError.d.ts +0 -5
- package/dist/umd/Invite.d.ts +0 -8
- package/dist/umd/PermissionChecker.d.ts +0 -15
- package/dist/umd/TSON.d.ts +0 -17
- package/dist/umd/WSObservable.d.ts +0 -72
- package/dist/umd/associate.d.ts +0 -1
- package/dist/umd/authentication/AuthPersistedContext.d.ts +0 -9
- package/dist/umd/authentication/TokenErrorResponseError.d.ts +0 -10
- package/dist/umd/authentication/TokenExpiredError.d.ts +0 -3
- package/dist/umd/authentication/UNAUTHORIZED_USER.d.ts +0 -2
- package/dist/umd/authentication/authenticate.d.ts +0 -13
- package/dist/umd/authentication/interactWithUser.d.ts +0 -21
- package/dist/umd/authentication/login.d.ts +0 -3
- package/dist/umd/authentication/logout.d.ts +0 -5
- package/dist/umd/authentication/otpFetchTokenCallback.d.ts +0 -3
- package/dist/umd/authentication/setCurrentUser.d.ts +0 -14
- package/dist/umd/authentication/waitUntil.d.ts +0 -3
- package/dist/umd/computeSyncState.d.ts +0 -4
- package/dist/umd/createSharedValueObservable.d.ts +0 -3
- package/dist/umd/currentUserEmitter.d.ts +0 -3
- package/dist/umd/db/DexieCloudDB.d.ts +0 -61
- package/dist/umd/db/entities/BaseRevisionMapEntry.d.ts +0 -5
- package/dist/umd/db/entities/EntityCommon.d.ts +0 -5
- package/dist/umd/db/entities/GuardedJob.d.ts +0 -5
- package/dist/umd/db/entities/Member.d.ts +0 -19
- package/dist/umd/db/entities/PersistedSyncState.d.ts +0 -22
- package/dist/umd/db/entities/Realm.d.ts +0 -14
- package/dist/umd/db/entities/Role.d.ts +0 -11
- package/dist/umd/db/entities/UserLogin.d.ts +0 -23
- package/dist/umd/default-ui/Dialog.d.ts +0 -5
- package/dist/umd/default-ui/LoginDialog.d.ts +0 -3
- package/dist/umd/default-ui/Styles.d.ts +0 -3
- package/dist/umd/default-ui/index.d.ts +0 -24
- package/dist/umd/define-ydoc-trigger.d.ts +0 -3
- package/dist/umd/dexie-cloud-addon.d.ts +0 -3
- package/dist/umd/dexie-cloud-addon.js.gz +0 -0
- package/dist/umd/dexie-cloud-addon.min.js.gz +0 -0
- package/dist/umd/dexie-cloud-client.d.ts +0 -23
- package/dist/umd/errors/HttpError.d.ts +0 -5
- package/dist/umd/extend-dexie-interface.d.ts +0 -23
- package/dist/umd/getGlobalRolesObservable.d.ts +0 -5
- package/dist/umd/getInternalAccessControlObservable.d.ts +0 -12
- package/dist/umd/getInvitesObservable.d.ts +0 -23
- package/dist/umd/getPermissionsLookupObservable.d.ts +0 -16
- package/dist/umd/getTiedRealmId.d.ts +0 -2
- package/dist/umd/helpers/BroadcastedAndLocalEvent.d.ts +0 -8
- package/dist/umd/helpers/CancelToken.d.ts +0 -4
- package/dist/umd/helpers/IS_SERVICE_WORKER.d.ts +0 -1
- package/dist/umd/helpers/SWBroadcastChannel.d.ts +0 -12
- package/dist/umd/helpers/allSettled.d.ts +0 -1
- package/dist/umd/helpers/bulkUpdate.d.ts +0 -4
- package/dist/umd/helpers/computeRealmSetHash.d.ts +0 -2
- package/dist/umd/helpers/date-constants.d.ts +0 -5
- package/dist/umd/helpers/flatten.d.ts +0 -1
- package/dist/umd/helpers/getMutationTable.d.ts +0 -1
- package/dist/umd/helpers/getSyncableTables.d.ts +0 -4
- package/dist/umd/helpers/getTableFromMutationTable.d.ts +0 -1
- package/dist/umd/helpers/makeArray.d.ts +0 -1
- package/dist/umd/helpers/randomString.d.ts +0 -1
- package/dist/umd/helpers/resolveText.d.ts +0 -16
- package/dist/umd/helpers/throwVersionIncrementNeeded.d.ts +0 -1
- package/dist/umd/helpers/visibilityState.d.ts +0 -1
- package/dist/umd/isEagerSyncDisabled.d.ts +0 -2
- package/dist/umd/isFirefox.d.ts +0 -1
- package/dist/umd/isSafari.d.ts +0 -2
- package/dist/umd/mapValueObservable.d.ts +0 -5
- package/dist/umd/mergePermissions.d.ts +0 -2
- package/dist/umd/middleware-helpers/guardedTable.d.ts +0 -11
- package/dist/umd/middleware-helpers/idGenerationHelpers.d.ts +0 -18
- package/dist/umd/middlewares/createIdGenerationMiddleware.d.ts +0 -3
- package/dist/umd/middlewares/createImplicitPropSetterMiddleware.d.ts +0 -3
- package/dist/umd/middlewares/createMutationTrackingMiddleware.d.ts +0 -17
- package/dist/umd/middlewares/outstandingTransaction.d.ts +0 -4
- package/dist/umd/overrideParseStoresSpec.d.ts +0 -4
- package/dist/umd/performInitialSync.d.ts +0 -4
- package/dist/umd/permissions.d.ts +0 -9
- package/dist/umd/prodLog.d.ts +0 -9
- package/dist/umd/service-worker.d.ts +0 -1
- package/dist/umd/sync/DEXIE_CLOUD_SYNCER_ID.d.ts +0 -1
- package/dist/umd/sync/LocalSyncWorker.d.ts +0 -7
- package/dist/umd/sync/SyncRequiredError.d.ts +0 -3
- package/dist/umd/sync/applyServerChanges.d.ts +0 -3
- package/dist/umd/sync/connectWebSocket.d.ts +0 -2
- package/dist/umd/sync/encodeIdsForServer.d.ts +0 -4
- package/dist/umd/sync/extractRealm.d.ts +0 -2
- package/dist/umd/sync/getLatestRevisionsPerTable.d.ts +0 -6
- package/dist/umd/sync/getTablesToSyncify.d.ts +0 -3
- package/dist/umd/sync/isOnline.d.ts +0 -1
- package/dist/umd/sync/isSyncNeeded.d.ts +0 -2
- package/dist/umd/sync/listClientChanges.d.ts +0 -9
- package/dist/umd/sync/listSyncifiedChanges.d.ts +0 -5
- package/dist/umd/sync/messageConsumerIsReady.d.ts +0 -2
- package/dist/umd/sync/messagesFromServerQueue.d.ts +0 -8
- package/dist/umd/sync/modifyLocalObjectsWithNewUserId.d.ts +0 -4
- package/dist/umd/sync/myId.d.ts +0 -1
- package/dist/umd/sync/numUnsyncedMutations.d.ts +0 -2
- package/dist/umd/sync/old_startSyncingClientChanges.d.ts +0 -39
- package/dist/umd/sync/performGuardedJob.d.ts +0 -2
- package/dist/umd/sync/ratelimit.d.ts +0 -3
- package/dist/umd/sync/registerSyncEvent.d.ts +0 -3
- package/dist/umd/sync/sync.d.ts +0 -15
- package/dist/umd/sync/syncIfPossible.d.ts +0 -5
- package/dist/umd/sync/syncWithServer.d.ts +0 -6
- package/dist/umd/sync/triggerSync.d.ts +0 -2
- package/dist/umd/sync/updateBaseRevs.d.ts +0 -5
- package/dist/umd/types/DXCAlert.d.ts +0 -25
- package/dist/umd/types/DXCInputField.d.ts +0 -11
- package/dist/umd/types/DXCUserInteraction.d.ts +0 -93
- package/dist/umd/types/NewIdOptions.d.ts +0 -3
- package/dist/umd/types/SWMessageEvent.d.ts +0 -3
- package/dist/umd/types/SWSyncEvent.d.ts +0 -4
- package/dist/umd/types/SyncState.d.ts +0 -9
- package/dist/umd/types/TXExpandos.d.ts +0 -11
- package/dist/umd/updateSchemaFromOptions.d.ts +0 -3
- package/dist/umd/userIsActive.d.ts +0 -7
- package/dist/umd/verifyConfig.d.ts +0 -2
- package/dist/umd/verifySchema.d.ts +0 -2
- package/dist/umd/yjs/YDexieCloudSyncState.d.ts +0 -3
- package/dist/umd/yjs/YTable.d.ts +0 -3
- package/dist/umd/yjs/applyYMessages.d.ts +0 -9
- package/dist/umd/yjs/awareness.d.ts +0 -3
- package/dist/umd/yjs/createYClientUpdateObservable.d.ts +0 -4
- package/dist/umd/yjs/createYHandler.d.ts +0 -2
- package/dist/umd/yjs/downloadYDocsFromServer.d.ts +0 -3
- package/dist/umd/yjs/getUpdatesTable.d.ts +0 -3
- package/dist/umd/yjs/listUpdatesSince.d.ts +0 -3
- package/dist/umd/yjs/listYClientMessagesAndStateVector.d.ts +0 -26
- package/dist/umd/yjs/reopenDocSignal.d.ts +0 -10
- package/dist/umd/yjs/updateYSyncStates.d.ts +0 -6
- /package/dist/{umd/authentication/currentUserObservable.d.ts → modern/sync/blobOffloading.test.d.ts} +0 -0
|
@@ -9,6 +9,15 @@ import { PermissionChecker } from './PermissionChecker';
|
|
|
9
9
|
import { DexieCloudSyncOptions } from "./DexieCloudSyncOptions";
|
|
10
10
|
import { Invite } from './Invite';
|
|
11
11
|
import { BehaviorSubject, Observable } from 'rxjs';
|
|
12
|
+
/** Progress state for blob downloads */
|
|
13
|
+
export interface BlobProgress {
|
|
14
|
+
/** Whether blob downloads are currently in progress */
|
|
15
|
+
isDownloading: boolean;
|
|
16
|
+
/** Number of blobs remaining to download */
|
|
17
|
+
blobsRemaining: number;
|
|
18
|
+
/** Total bytes remaining to download (estimated from BlobRef.$size) */
|
|
19
|
+
bytesRemaining: number;
|
|
20
|
+
}
|
|
12
21
|
/** The API of db.cloud, where `db` is an instance of Dexie with dexie-cloud-addon active.
|
|
13
22
|
*/
|
|
14
23
|
export interface LoginHints {
|
|
@@ -33,6 +42,14 @@ export interface DexieCloudAPI {
|
|
|
33
42
|
webSocketStatus: BehaviorSubject<DXCWebSocketStatus>;
|
|
34
43
|
syncState: BehaviorSubject<SyncState>;
|
|
35
44
|
persistedSyncState: BehaviorSubject<PersistedSyncState | undefined>;
|
|
45
|
+
/** Observable of blob download progress.
|
|
46
|
+
*
|
|
47
|
+
* Shows the current state of background blob downloads (when blobMode='eager')
|
|
48
|
+
* or provides insight into unresolved blobs (when blobMode='lazy').
|
|
49
|
+
*
|
|
50
|
+
* Use this to show progress indicators or "downloading for offline" status.
|
|
51
|
+
*/
|
|
52
|
+
blobProgress: Observable<BlobProgress>;
|
|
36
53
|
events: {
|
|
37
54
|
syncComplete: Observable<void>;
|
|
38
55
|
};
|
|
@@ -41,4 +41,13 @@ export interface DexieCloudOptions {
|
|
|
41
41
|
* ```
|
|
42
42
|
*/
|
|
43
43
|
oauthRedirectUri?: string;
|
|
44
|
+
/** How to handle blob downloads from cloud storage.
|
|
45
|
+
*
|
|
46
|
+
* - 'eager' (default): Download blobs in background immediately after sync.
|
|
47
|
+
* Best for offline-first apps that need all data available offline ASAP.
|
|
48
|
+
*
|
|
49
|
+
* - 'lazy': Download blobs on-demand when accessed.
|
|
50
|
+
* Best for apps with large media that may not all be needed offline.
|
|
51
|
+
*/
|
|
52
|
+
blobMode?: 'eager' | 'lazy';
|
|
44
53
|
}
|
package/dist/modern/TSON.d.ts
CHANGED
|
@@ -9,9 +9,3 @@ export declare const TSON: {
|
|
|
9
9
|
stringify(value: any, alternateChannel?: any, space?: number): string;
|
|
10
10
|
parse(tson: string, alternateChannel?: any): any;
|
|
11
11
|
};
|
|
12
|
-
export declare const BISON: {
|
|
13
|
-
toBinary(value: any): Blob;
|
|
14
|
-
stringify(value: any): [Blob, string];
|
|
15
|
-
parse<T = any>(json: string, binData: Blob): Promise<T>;
|
|
16
|
-
fromBinary<T_1 = any>(blob: Blob): Promise<T_1>;
|
|
17
|
-
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import Dexie from "dexie";
|
|
2
2
|
import { BehaviorSubject } from "rxjs";
|
|
3
|
-
|
|
3
|
+
import { UserLogin } from "./dexie-cloud-client";
|
|
4
|
+
export declare const getCurrentUserEmitter: (x: Dexie) => BehaviorSubject<UserLogin>;
|
|
@@ -10,6 +10,7 @@ import { BroadcastedAndLocalEvent } from '../helpers/BroadcastedAndLocalEvent';
|
|
|
10
10
|
import { SyncStatePhase } from '../types/SyncState';
|
|
11
11
|
import { MessagesFromServerConsumer } from '../sync/messagesFromServerQueue';
|
|
12
12
|
import { YClientMessage } from 'dexie-cloud-common';
|
|
13
|
+
import { BlobDownloadTracker } from '../sync/BlobDownloadTracker';
|
|
13
14
|
export interface SyncStateChangedEventData {
|
|
14
15
|
phase: SyncStatePhase;
|
|
15
16
|
error?: Error;
|
|
@@ -47,6 +48,7 @@ export interface DexieCloudDB extends DexieCloudDBBase {
|
|
|
47
48
|
reconfigure(): void;
|
|
48
49
|
messageConsumer: MessagesFromServerConsumer;
|
|
49
50
|
messageProducer: Subject<YClientMessage>;
|
|
51
|
+
blobDownloadTracker: BlobDownloadTracker;
|
|
50
52
|
}
|
|
51
53
|
export declare const DEXIE_CLOUD_SCHEMA: {
|
|
52
54
|
members: string;
|