dexie-cloud-addon 1.0.0-alpha.6 → 1.0.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/copydts.sh +5 -0
  2. package/dist/modern/dexie-cloud-addon.js +5954 -0
  3. package/dist/modern/dexie-cloud-addon.js.map +1 -0
  4. package/dist/modern/dexie-cloud-addon.min.js +1 -0
  5. package/dist/modern/dexie-cloud-addon.min.js.map +1 -0
  6. package/dist/modern/service-worker.js +6054 -0
  7. package/dist/modern/service-worker.js.map +1 -0
  8. package/dist/modern/service-worker.min.js +1 -0
  9. package/dist/modern/service-worker.min.js.map +1 -0
  10. package/dist/module-es5/dexie-cloud-addon.js +6908 -0
  11. package/dist/module-es5/dexie-cloud-addon.js.map +1 -0
  12. package/dist/module-es5/dexie-cloud-addon.min.js +1 -0
  13. package/dist/module-es5/dexie-cloud-addon.min.js.map +1 -0
  14. package/dist/types/DISABLE_SERVICEWORKER_STRATEGY.d.ts +1 -0
  15. package/dist/types/DXCWebSocketStatus.d.ts +1 -0
  16. package/dist/types/DexieCloudOptions.d.ts +19 -0
  17. package/dist/types/DexieCloudServerState.d.ts +5 -0
  18. package/dist/types/TSON.d.ts +17 -0
  19. package/dist/types/WSObservable.d.ts +62 -0
  20. package/dist/types/WebSocketStatus.d.ts +1 -0
  21. package/dist/types/authentication/AuthPersistedContext.d.ts +9 -0
  22. package/dist/types/authentication/TokenExpiredError.d.ts +3 -0
  23. package/dist/types/authentication/UNAUTHORIZED_USER.d.ts +2 -0
  24. package/dist/types/authentication/authenticate.d.ts +20 -0
  25. package/dist/types/authentication/currentUserObservable.d.ts +1 -0
  26. package/dist/types/authentication/interactWithUser.d.ts +18 -0
  27. package/dist/types/authentication/login.d.ts +6 -0
  28. package/dist/types/authentication/otpFetchTokenCallback.d.ts +3 -0
  29. package/dist/types/authentication/setCurrentUser.d.ts +14 -0
  30. package/dist/types/computeSyncState.d.ts +4 -0
  31. package/dist/types/db/DexieCloudDB.d.ts +58 -0
  32. package/dist/types/db/entities/BaseRevisionMapEntry.d.ts +5 -0
  33. package/dist/types/db/entities/EntityCommon.d.ts +4 -0
  34. package/dist/types/db/entities/GuardedJob.d.ts +5 -0
  35. package/dist/types/db/entities/Member.d.ts +19 -0
  36. package/dist/types/db/entities/PersistedSyncState.d.ts +14 -0
  37. package/dist/types/db/entities/Realm.d.ts +16 -0
  38. package/dist/types/db/entities/Role.d.ts +11 -0
  39. package/dist/types/db/entities/UserLogin.d.ts +18 -0
  40. package/dist/types/default-ui/Dialog.d.ts +4 -0
  41. package/dist/types/default-ui/LoginDialog.d.ts +6 -0
  42. package/dist/types/default-ui/Styles.d.ts +3 -0
  43. package/dist/types/default-ui/index.d.ts +24 -0
  44. package/dist/types/dexie-cloud-client.d.ts +8 -0
  45. package/dist/types/errors/HttpError.d.ts +5 -0
  46. package/dist/types/extend-dexie-interface.d.ts +59 -0
  47. package/dist/types/helpers/BroadcastedAndLocalEvent.d.ts +8 -0
  48. package/dist/types/helpers/BroadcastedLocalEvent.d.ts +8 -0
  49. package/dist/types/helpers/CancelToken.d.ts +4 -0
  50. package/dist/types/helpers/IS_SERVICE_WORKER.d.ts +1 -0
  51. package/dist/types/helpers/SWBroadcastChannel.d.ts +6 -0
  52. package/dist/types/helpers/allSettled.d.ts +1 -0
  53. package/dist/types/helpers/bulkUpdate.d.ts +4 -0
  54. package/dist/types/helpers/computeRealmSetHash.d.ts +2 -0
  55. package/dist/types/helpers/date-constants.d.ts +5 -0
  56. package/dist/types/helpers/dbOnClosed.d.ts +2 -0
  57. package/dist/types/helpers/getMutationTable.d.ts +1 -0
  58. package/dist/types/helpers/getSyncableTables.d.ts +4 -0
  59. package/dist/types/helpers/getTableFromMutationTable.d.ts +1 -0
  60. package/dist/types/helpers/makeArray.d.ts +1 -0
  61. package/dist/types/helpers/randomString.d.ts +1 -0
  62. package/dist/types/helpers/resolveText.d.ts +2 -0
  63. package/dist/types/helpers/throwVersionIncrementNeeded.d.ts +1 -0
  64. package/dist/types/helpers/visibilityState.d.ts +1 -0
  65. package/dist/types/helpers/visibleState.d.ts +1 -0
  66. package/dist/types/isFirefox.d.ts +1 -0
  67. package/dist/types/isSafari.d.ts +2 -0
  68. package/dist/types/middleware-helpers/guardedTable.d.ts +11 -0
  69. package/dist/types/middlewares/createIdGenerationMiddleware.d.ts +8 -0
  70. package/dist/types/middlewares/createImplicitPropSetterMiddleware.d.ts +3 -0
  71. package/dist/types/middlewares/createMutationTrackingMiddleware.d.ts +17 -0
  72. package/dist/types/middlewares/outstandingTransaction.d.ts +4 -0
  73. package/dist/types/overrideParseStoresSpec.d.ts +4 -0
  74. package/dist/types/performInitialSync.d.ts +4 -0
  75. package/dist/types/service-worker.d.ts +1 -0
  76. package/dist/types/sync/LocalSyncWorker.d.ts +7 -0
  77. package/dist/types/sync/SyncRequiredError.d.ts +3 -0
  78. package/dist/types/sync/connectWebSocket.d.ts +2 -0
  79. package/dist/types/sync/extractRealm.d.ts +2 -0
  80. package/dist/types/sync/getLatestRevisionsPerTable.d.ts +6 -0
  81. package/dist/types/sync/getTablesToSyncify.d.ts +3 -0
  82. package/dist/types/sync/isOnline.d.ts +1 -0
  83. package/dist/types/sync/isSyncNeeded.d.ts +2 -0
  84. package/dist/types/sync/listClientChanges.d.ts +9 -0
  85. package/dist/types/sync/listSyncifiedChanges.d.ts +5 -0
  86. package/dist/types/sync/messageConsumerIsReady.d.ts +2 -0
  87. package/dist/types/sync/messagesFromServerQueue.d.ts +8 -0
  88. package/dist/types/sync/modifyLocalObjectsWithNewUserId.d.ts +4 -0
  89. package/dist/types/sync/myId.d.ts +1 -0
  90. package/dist/types/sync/numUnsyncedMutations.d.ts +2 -0
  91. package/dist/types/sync/old_startSyncingClientChanges.d.ts +39 -0
  92. package/dist/types/sync/performGuardedJob.d.ts +4 -0
  93. package/dist/types/sync/registerSyncEvent.d.ts +3 -0
  94. package/dist/types/sync/sync.d.ts +17 -0
  95. package/dist/types/sync/syncIfPossible.d.ts +5 -0
  96. package/dist/types/sync/syncServerToClientOnly.d.ts +3 -0
  97. package/dist/types/sync/syncWithServer.d.ts +5 -0
  98. package/dist/types/sync/triggerSync.d.ts +2 -0
  99. package/dist/types/sync/updateBaseRevs.d.ts +5 -0
  100. package/dist/types/types/CloudConnectionStatus.d.ts +0 -0
  101. package/dist/types/types/ConnectionStatus.d.ts +0 -0
  102. package/dist/types/types/DXCAlert.d.ts +25 -0
  103. package/dist/types/types/DXCInputField.d.ts +11 -0
  104. package/dist/types/types/DXCUserInteraction.d.ts +55 -0
  105. package/dist/types/types/LoginState.d.ts +41 -0
  106. package/dist/types/types/SWMessageEvent.d.ts +3 -0
  107. package/dist/types/types/SWSyncEvent.d.ts +4 -0
  108. package/dist/types/types/SyncConnectionStatus.d.ts +1 -0
  109. package/dist/types/types/SyncFlowStatus.d.ts +6 -0
  110. package/dist/types/types/SyncState.d.ts +8 -0
  111. package/dist/types/types/SyncStatus.d.ts +6 -0
  112. package/dist/types/types/TXExpandos.d.ts +10 -0
  113. package/dist/types/updateSchemaFromOptions.d.ts +3 -0
  114. package/dist/types/userIsActive.d.ts +7 -0
  115. package/dist/types/verifyConfig.d.ts +2 -0
  116. package/dist/types/verifySchema.d.ts +2 -0
  117. package/dist/umd/dexie-cloud-addon.js +6919 -0
  118. package/dist/umd/dexie-cloud-addon.js.map +1 -0
  119. package/dist/umd/dexie-cloud-addon.min.js +1 -0
  120. package/dist/umd/dexie-cloud-addon.min.js.map +1 -0
  121. package/dist/umd/service-worker.js +6063 -0
  122. package/dist/umd/service-worker.js.map +1 -0
  123. package/dist/umd/service-worker.min.js +1 -0
  124. package/dist/umd/service-worker.min.js.map +1 -0
  125. package/dist/umd-modern/dexie-cloud-addon.js +5965 -0
  126. package/dist/umd-modern/dexie-cloud-addon.js.map +1 -0
  127. package/package.json +71 -39
  128. package/dist/dexie-cloud.d.ts +0 -27
  129. package/dist/dexie-cloud.js +0 -285
  130. package/dist/dexie-cloud.js.map +0 -1
  131. package/dist/dexie-cloud.min.js +0 -1
  132. package/dist/dexie-cloud.min.js.map +0 -1
  133. package/dist/dexie-cloud.mjs +0 -273
  134. package/dist/dexie-cloud.mjs.map +0 -1
  135. package/esnext/dexie-cloud.js +0 -278
  136. package/esnext/dexie-cloud.js.map +0 -1
  137. package/esnext/dexie-cloud.min.js +0 -1
  138. package/esnext/dexie-cloud.min.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["dist/module-es5/dexie-cloud-addon.js"],"names":["Dexie","liveQuery","BehaviorSubject","fromEvent","of$1","merge","from$1","Observable$1","Subject","Subscription$1","combineLatest","throwError$1","extendStatics$1","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends$1","TypeError","String","__","this","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","pop","push","__spreadArray","to","from","il","j","randomFillSync","crypto","getRandomValues","setByKeyPath","obj","keyPath","undefined","isFrozen","Error","assert","l","period","indexOf","currentKeyPath","substr","remainingKeyPath","isArray","isNaN","parseInt","splice","innerObj","randomString$1","self","bytes","buf","Buffer","alloc","toString","Uint8Array","btoa","fromCharCode","isValidSyncableID","id","some","key","every","isValidSyncableIDPart","part","applyOperation","target","table","tbl","type","keys","forEach","idx","val","values","changeSpec","changeSpecs","entry","_g","_h","entries","_j","propPath","mod","applyOperations","ops_1","muts_1","muts","extendStatics","__extends","isFunction","x","_enable_super_gross_mode_that_will_cause_bad_things","config","useDeprecatedSynchronousErrorHandling","stack","hostReportError","err","setTimeout","empty$1","closed","error","complete","isObject","UnsubscriptionError","UnsubscriptionErrorImpl","errors","message","map","join","name","Subscription","unsubscribe","_parentOrParents","_subscriptions","_ctorUnsubscribe","_unsubscribe","_a","remove","index","flattenUnsubscriptionErrors","len","sub","concat","add","teardown","subscription","EMPTY","tmp","subscriptions","subscriptionIndex","empty","reduce","errs","rxSubscriber","Math","random","Subscriber","_super","destinationOrNext","_this","syncErrorValue","syncErrorThrown","syncErrorThrowable","isStopped","destination","SafeSubscriber","subscriber","_next","_error","_complete","_unsubscribeAndRecycle","_parentSubscriber","observerOrNext","context","bind","_context","__tryOrSetError","__tryOrUnsub","wrappedComplete","fn","parent","observable","identity","pipeFromArray","fns","input","prev","Observable","subscribe","_isScalar","_subscribe","lift","operator","source","sink","nextOrObserver","toSubscriber","_trySubscribe","observer","closed_1","canReportError","console","warn","promiseCtor","getPromiseCtor","pipe","operations","_i","toPromise","subscribeToArray","array","getSymbolIterator","isArrayLike","isPromise","subscribeTo","obs","promise","iterable","iterator$1","item","SimpleInnerSubscriber","notifyNext","notifyError","notifyComplete","SimpleOuterSubscriber","innerValue","innerSubscribe","innerSubscriber","AsyncAction","scheduler","work","pending","schedule","state","delay","recycleAsyncId","requestAsyncId","setInterval","flush","clearInterval","execute","_execute","errored","errorValue","actions","Action","Scheduler","SchedulerAction","now","Date","async","AsyncScheduler","delegate","active","scheduled","action","shift","isScheduler","catchError","selector","CatchOperator","caught","CatchSubscriber","err2","innerSubscription","scheduleArray","fromArray","isInteropObservable","observable$1","scheduleObservable","schedulePromise","isIterable","scheduleIterable","of","args","project","MapOperator","MapSubscriber","count","mergeMap","resultSelector","concurrent","Number","POSITIVE_INFINITY","a","ii","MergeMapOperator","MergeMapSubscriber","hasCompleted","buffer","_tryNext","_innerSub","ish","mergeAll","concatAll","observables","debounceTime","dueTime","DebounceTimeOperator","DebounceTimeSubscriber","debouncedSubscription","lastValue","hasValue","clearDebounce","dispatchNext","debouncedNext","isDate","emptyScheduled","throwError","dispatch","Notification","kind","observe","do","accept","toObservable","createNext","undefinedValueNotification","createError","createComplete","completeNotification","delayFor","abs","DelayOperator","DelaySubscriber","queue","time","notification","delay_1","max","_schedule","scheduleNotification","DelayMessage","DistinctUntilChangedOperator","compare","keySelector","DistinctUntilChangedSubscriber","hasKey","ArgumentOutOfRangeError","ArgumentOutOfRangeErrorImpl","filter","predicate","FilterOperator","FilterSubscriber","take","TakeOperator","total","TakeSubscriber","skip","SkipOperator","SkipSubscriber","startWith","switchMap","SwitchMapOperator","SwitchMapSubscriber","noop","tap","DoOperator","TapSubscriber","_tapNext","_tapError","_tapComplete","TimeoutError","TimeoutErrorImpl","TimeoutWithOperator","waitFor","absoluteTimeout","withObservable","TimeoutWithSubscriber","scheduleTimeout","dispatchTimeout","timeout","due","timeoutWith","hasComplainedAboutSyncEvent","registerSyncEvent","db","purpose","sw","e_1","navigator","serviceWorker","ready","sync","register","postMessage","dbName","debug","triggerSync","cloud","usingServiceWorker","localSyncEvent","b64decode","base64","binary_string","atob","charCodeAt","b64encode","ArrayBuffer","isView","byteOffset","byteLength","interactWithUser","userInteraction","req","interactionProps","onSubmit","res","onCancel","AbortError","alertUser","title","alerts","fields","promptForEmail","emailHint","email","test","messageCode","messageParams","placeholder","promptForOTP","alert","otp","loadAccessToken","_b","currentUser","accessToken","accessTokenExpiration","refreshToken","refreshTokenExpiration","claims","refreshedLogin","getCurrentUser","getTime","Infinity","refreshAccessToken","options","databaseUrl","update","authenticate","url","fetchToken","hints","userAuthenticate","login","time_stamp","signing_algorithm","textEncoder","data","binarySignature","signature","tokenRequest","response","nonExportablePrivateKey","TextEncoder","encode","subtle","sign","grant_type","refresh_token","scopes","fetch","JSON","stringify","method","headers","Content-Type","mode","status","json","privateKey","publicKey","publicKeySPKI","publicKeyPEM","response2","error_1","generateKey","modulusLength","publicExponent","hash","exportKey","str","finalString","substring","formatAsPem","public_key","userId","catch","wm$1","WeakMap","AuthPersistedContext","userLogin","set","load","get","lastLogin","save","put","HttpError","_super_1","_this_1","statusText","httpStatus","defineProperty","enumerable","configurable","otpFetchTokenCallback","demo_user","res1","res2","errorText","errMsg","text","otp_id","setCurrentUser","user","$logins","currentUserId","transaction","tx","existingLogins","toArray","all","isLoggedIn","subscription_1","fetchTokens","UNAUTHORIZED_USER","freeze","swHolder","swContainer","document","registration","addEventListener","ev","startsWith","matchAll","includeUncontrolled","client","SWBroadcastChannel","listener","forwarder","removeEventListener","BroadcastedAndLocalEvent","bc","BroadcastChannel","onCustomEvent","detail","onMessageEvent","CustomEvent","dispatchEvent","computeRealmSetHash","realms","inviteRealms","byteArray","digestBytes","realmId","accepted","sort","digest","getSyncableTables","schema","markedForSync","getMutationTable","tableName","getTableFromMutationTable","mutationTable","exec","listClientChanges","mutationTables","since","_k","limit","_l","lastRevision","query","where","above","listSyncifiedChanges","tablesToSyncify","alreadySyncedRealms","ignoredRealms_1","Set","extractKey","dexieCloudTableSchema","unsyncedObjects","mut","core","primaryKey","generatedGlobalId","has","idPrefix","toStr","getToStringTag","slice","ObjectDef","replace","dollarKeys","i_1","l_1","clone","dollarKeys_1","k_1","TypesonSimplified","typeDefsInputs","typeDefs","c","protoMap","alternateChannel","space","realVal","typeDef","getTypeDef","parse","tson","unescapeParentKeys","$t","revive","unescapeParentKeys_1","k_2","proto","getPrototypeOf","toStringTag_1","find","typeName","function","BisonBinaryTypes","Blob","blob","toStringTag","altChannel","mimeType","numberDef","number","num","bigIntDef","bigint","BigInt","DateDef","date","toISOString","NaN","SetDef","MapDef","Map","_global","globalThis","global","TypedArraysDefs","specs","TypedArray","b64LexEncode","encoded","ENCODE_TABLE","b64ToLex","b64LexDecode","b64Lex","base64lex","DECODE_TABLE","lexToB64","-","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","Q","R","S","T","U","V","W","X","Y","Z","h","k","m","o","q","r","u","w","z","|","c_1","ArrayBufferDef","ab","ba","FakeBlob","readBlobSync","XMLHttpRequest","overrideMimeType","open","URL","createObjectURL","send","responseText","string2ArrayBuffer","i_2","BlobDef","builtin","readBlob","reader","FileReader","onabort","onerror","onload","readAsText","readBlobBinary","readAsArrayBuffer","undefinedDef","hasBigIntSupport","FakeBigInt","defs","fakeBigInt","TSON","BISON","toBinary","lenBuf","DataView","setUint32","size","binaries","binData","pos","arrayBuffers","view","getUint32","fromBinary","Bison","syncWithServer","changes","syncState","baseRevs","clientIdentity","syncRequest","Accept","Authorization","dbID","remoteDbId","lastPull","serverRevision","syncStateChangedEvent","phase","ok","modifyLocalObjectsWithNewUserId","syncifiedTables","ignoredRealms","syncifiedTables_1","toCollection","modify","member","realm","owner","bulkUpdate","objs","resultKeys","resultObjs","bulkGet","primKey","bulkPut","throwIfCancelled","cancelToken","cancelled","isOnline","onLine","updateBaseRevs","latestRevisions","serverRev","$baseRevs","clientRev","getLatestRevisionsPerTable","clientChangeSet","lastRevisions","clientChangeSet_1","lastRev","rev","syncOptions","_sync","justCheckIfNeeded","retryImmediatelyOnFetchError","$syncState","timestamp","isInitialSync","tablesToSync","persistedSyncState","doSyncify","syncIsNeeded","getPersistedSyncState","syncedTables","includes","getTablesToSyncify","idbtrans","disableChangeTracking","disableAccessControl","tables","clientChanges","syncificationInserts","addedClientChanges","_loop_1","mutationTables_1","mutTable","newSyncState","latestRev","ch","clear","delete","belowOrEqual","between","reverse","offset","deleteObjectsFromRemovedRealms","dbId","initiallySynced","applyServerChanges","filterServerChangesThroughAddedClientChanges","prevState","deletedRealms","previousRealmSet","updatedRealmSet","previousRealmSet_1","deletedRealmSet_1","tables_1","indexes","anyOf","_loop_2","changes_1","currentTransaction","_loop_3","muts_2","_o","outbound","bulkAdd","bulkDelete","serverChanges","localPostChanges","changesToSubtract","_c","mutationSet","_m","targetMut","_p","_q","_r","_s","subtractChanges","inSet","txid","mapEntry","resultEntry","_t","optype","toDBOperationSet","wm","DEXIE_CLOUD_SCHEMA","members","roles","$jobs","static_counter","DexieCloudDB","dx","syncStateChangedEvent_1","initiallySynced_1","close","helperMethods","logins","getSchema","getOptions","setInitiallySynced","reconfigure","messageConsumer","readyToServe","event","isWorking","loopWarning","loopDetection","consumeQueue","_loop_4","msg","error_2","ourRealmSetHash","filteredChanges","baseRev","realmSetHash","newRev","enqueue","MessagesFromServerConsumer","isFirefox","InstallTrigger","isSafari","userAgent","safariVersion","match","DISABLE_SERVICEWORKER_STRATEGY","IS_SERVICE_WORKER","throwVersionIncrementNeeded","SchemaError","getEffectiveKeys","consonants","createIdGenerationMiddleware","level","generateOrVerifyAtKeys","valueClones","colocatedId","shardKey","prefix","timePart","randomPart","deepClone","ConstraintError","mutate","trans","cloudTableSchema","keys_1","getMany","cache","results","randomString","counter$1","readLock","prop","writers","readers","numWriters","finally","writeLock","possiblePromises","remaining","reason","outstandingTransactions","createMutationTrackingMiddleware","currentUserObservable","mutTableMap","ordinaryTables","removeTransaction_1","txComplete_1","mutationsAdded","endsWith","mutsTable","openCursor","guardedTable","range","mutateAndLog","criteria","hasFailures","numFailures","failures","ts","overrideParseStoresSpec","origFunc","dexie","stores","dbSchema","storesClone","cloudSchema","allPrefixes","schemaSrc","orig","bits","rv","toLocaleLowerCase","i_3","l_2","toLowerCase","bitFix","upperFixed","toUpperCase","nextChar","generateTablePrefix","deleted","myId","performGuardedJob","jobName","jobsTableName","job","awaitRemoteJob","aquireLock","err_1","currentWork","jobsTable","nodeId","started","heartbeat","performInitialSync","cloudOptions","userIsActive","userIsReallyActive","isActive","visibilityStateIsChanged","documentBecomesHidden","visibilityState","documentBecomesVisible","userDoesSomething","window","USER_INACTIVITY_TIMEOUT","TokenExpiredError","WSObservable","messageProducer","webSocketStatus","token","tokenExpiration","WSConnection","counter","lastUserActivity","messageProducerSubscription","connect","disconnect","pinger","ws","reconnect","wsUrl","searchParams","lastServerActivity","pauseUntil","protocol","URLSearchParams","WebSocket","onclose","onmessage","onopen","connectWebSocket","isReady","createObservable","ms","waitAndReconnectWhenUserDoesSomething","isSyncNeeded","ongoingSyncs","syncIfPossible","ongoing","pull","hasPullTakenPlace_1","subscription_2","error_4","_syncIfPossible","LocalSyncWorker","localSyncEventSubscription","syncAndRetry","retryNum","stop","start","updateSchemaFromOptions","unsyncedTables","u$1","i$1","t$1","r$1","f$1","e$1","c$1","s$1","parentNode","removeChild","a$1","children","defaultProps","v$1","props","ref","__k","__b","__e","__d","__c","__h","__v","vnode","p$1","d$1","base","k$1","b$1","__r","debounceRendering","__P","__n","ownerSVGElement","m$1","g$1","x$1","appendChild","nextSibling","insertBefore","setProperty","style","cssText","$","setAttribute","removeAttribute","contextType","__E","render","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","j$1","diffed","localName","nodeType","createTextNode","createElementNS","createElement","is","childNodes","dangerouslySetInnerHTML","attributes","__html","innerHTML","firstChild","checked","current","unmount","componentWillUnmount","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","Styles","color","Alert","warning","info","Darken","position","top","left","opacity","backgroundColor","width","height","zIndex","webkitBackdropFilter","backdropFilter","DialogOuter","alignItems","display","justifyContent","DialogInner","padding","marginBottom","maxWidth","maxHeight","overflowY","border","borderRadius","boxShadow","Input","borderColor","outline","fontSize","Dialog","__H","requestAnimationFrame","clearTimeout","cancelAnimationFrame","LoginDialog","params","setParams","firstFieldRef","focus","WindowHeader","resolveText","preventDefault","fieldName","Label","autoComplete","autoFocus","onInput","valueTransformer","ButtonsDiv","Button","onClick","LoginGui","setupDefaultGUI","el","vip","dexieCloud","origIdbName","currentUserEmitter","localSyncWorker","on","error_5","onDbReady","throwIfClosed","DatabaseClosedError","_d","_e","_f","swRegistrations","customLoginGui","_prevStatus","lazyWebSocketStatus","prevStatus","progress","adjustedStatus","computeSyncState","getRegistrations","persistedOptions","persistedSchema","newPersistedSchema","tblSchema","newTblSchema","tryUseServiceWorker","auto","verifySchema","requireAuth","periodicSync","e_2","e_3","registerPeriodicSyncEvent","handler","origClose","dbOnClosed","version","serverState","hint","configure","dbUrl","pathname","hostname","split","wait","syncState_1","syncState_2","syncNeeded","isNeeded","Version","override","use","Cloud"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const DISABLE_SERVICEWORKER_STRATEGY: boolean;
@@ -0,0 +1 @@
1
+ export declare type DXCWebSocketStatus = "not-started" | "connecting" | "connected" | "disconnected" | "error";
@@ -0,0 +1,19 @@
1
+ import { TokenFinalResponse } from 'dexie-cloud-common';
2
+ export interface PeriodicSyncOptions {
3
+ minInterval?: number;
4
+ }
5
+ export interface DexieCloudOptions {
6
+ databaseUrl: string;
7
+ requireAuth?: boolean;
8
+ tryUseServiceWorker?: boolean;
9
+ customLoginGui?: boolean;
10
+ unsyncedTables?: string[];
11
+ periodicSync?: PeriodicSyncOptions;
12
+ fetchTokens?: (tokenParams: {
13
+ public_key: string;
14
+ hints?: {
15
+ userId?: string;
16
+ email?: string;
17
+ };
18
+ }) => Promise<TokenFinalResponse>;
19
+ }
@@ -0,0 +1,5 @@
1
+ export interface DexieCloudServerState {
2
+ idPrefixes: {
3
+ [tableName: string]: string;
4
+ };
5
+ }
@@ -0,0 +1,17 @@
1
+ export declare const hasBigIntSupport: boolean;
2
+ export declare function compareBigInts(a: bigint | FakeBigInt | string, b: bigint | FakeBigInt | string): 1 | 0 | -1;
3
+ export declare class FakeBigInt {
4
+ v: string;
5
+ toString(): string;
6
+ constructor(value: string);
7
+ }
8
+ export declare const TSON: {
9
+ stringify(value: any, alternateChannel?: any, space?: number | undefined): string;
10
+ parse(tson: string, alternateChannel?: any): any;
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
+ };
@@ -0,0 +1,62 @@
1
+ import { DBOperationsSet } from 'dexie-cloud-common';
2
+ import { BehaviorSubject, Observable, Subscriber, Subscription } from 'rxjs';
3
+ import { DXCWebSocketStatus } from './DXCWebSocketStatus';
4
+ export declare type WSClientToServerMsg = ReadyForChangesMessage;
5
+ export interface ReadyForChangesMessage {
6
+ type: 'ready';
7
+ rev: string;
8
+ }
9
+ export declare type WSConnectionMsg = RevisionChangedMessage | RealmAddedMessage | RealmRemovedMessage | RealmsChangedMessage | ChangesFromServerMessage | TokenExpiredMessage;
10
+ export interface ChangesFromServerMessage {
11
+ type: 'changes';
12
+ baseRev: string;
13
+ realmSetHash: string;
14
+ newRev: string;
15
+ changes: DBOperationsSet;
16
+ }
17
+ export interface RevisionChangedMessage {
18
+ type: 'rev';
19
+ rev: string;
20
+ }
21
+ export interface RealmAddedMessage {
22
+ type: 'realm-added';
23
+ realm: string;
24
+ }
25
+ export interface RealmRemovedMessage {
26
+ type: 'realm-removed';
27
+ realm: string;
28
+ }
29
+ export interface RealmsChangedMessage {
30
+ type: 'realms-changed';
31
+ realmsHash: string;
32
+ }
33
+ export interface TokenExpiredMessage {
34
+ type: 'token-expired';
35
+ }
36
+ export declare class WSObservable extends Observable<WSConnectionMsg> {
37
+ constructor(databaseUrl: string, rev: string, realmSetHash: string, clientIdentity: string, messageProducer: Observable<WSClientToServerMsg>, webSocketStatus: BehaviorSubject<DXCWebSocketStatus>, token?: string, tokenExpiration?: Date);
38
+ }
39
+ export declare class WSConnection extends Subscription {
40
+ ws: WebSocket | null;
41
+ lastServerActivity: Date;
42
+ lastUserActivity: Date;
43
+ lastPing: Date;
44
+ databaseUrl: string;
45
+ rev: string;
46
+ realmSetHash: string;
47
+ clientIdentity: string;
48
+ token: string | undefined;
49
+ tokenExpiration: Date | undefined;
50
+ subscriber: Subscriber<WSConnectionMsg>;
51
+ pauseUntil?: Date;
52
+ messageProducer: Observable<WSClientToServerMsg>;
53
+ webSocketStatus: BehaviorSubject<DXCWebSocketStatus>;
54
+ id: number;
55
+ private pinger;
56
+ private messageProducerSubscription;
57
+ constructor(databaseUrl: string, rev: string, realmSetHash: string, clientIdentity: string, token: string | undefined, tokenExpiration: Date | undefined, subscriber: Subscriber<WSConnectionMsg>, messageProducer: Observable<WSClientToServerMsg>, webSocketStatus: BehaviorSubject<DXCWebSocketStatus>);
58
+ private teardown;
59
+ private disconnect;
60
+ reconnect(): void;
61
+ connect(): Promise<void>;
62
+ }
@@ -0,0 +1 @@
1
+ export declare type WebSocketStatus = "not-started" | "connecting" | "connected" | "error" | "asleep";
@@ -0,0 +1,9 @@
1
+ import { DexieCloudDB } from "../db/DexieCloudDB";
2
+ import { UserLogin } from "../db/entities/UserLogin";
3
+ export interface AuthPersistedContext extends UserLogin {
4
+ save(): Promise<void>;
5
+ }
6
+ export declare class AuthPersistedContext {
7
+ constructor(db: DexieCloudDB, userLogin: UserLogin);
8
+ static load(db: DexieCloudDB, userId: string): import("dexie").PromiseExtended<AuthPersistedContext>;
9
+ }
@@ -0,0 +1,3 @@
1
+ export declare class TokenExpiredError extends Error {
2
+ name: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ import { UserLogin } from '../db/entities/UserLogin';
2
+ export declare const UNAUTHORIZED_USER: UserLogin;
@@ -0,0 +1,20 @@
1
+ import type { TokenFinalResponse } from 'dexie-cloud-common';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { DexieCloudDB } from '../db/DexieCloudDB';
4
+ import { UserLogin } from '../db/entities/UserLogin';
5
+ import { DXCUserInteraction } from '../types/DXCUserInteraction';
6
+ export declare type FetchTokenCallback = (tokenParams: {
7
+ public_key: string;
8
+ hints?: {
9
+ userId?: string;
10
+ email?: string;
11
+ grant_type?: string;
12
+ };
13
+ }) => Promise<TokenFinalResponse>;
14
+ export declare function loadAccessToken(db: DexieCloudDB): Promise<string | undefined>;
15
+ export declare function authenticate(url: string, context: UserLogin, fetchToken: FetchTokenCallback, userInteraction: BehaviorSubject<DXCUserInteraction | undefined>, hints?: {
16
+ userId?: string;
17
+ email?: string;
18
+ grant_type?: string;
19
+ }): Promise<UserLogin>;
20
+ export declare function refreshAccessToken(url: string, login: UserLogin): Promise<UserLogin>;
@@ -0,0 +1,18 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { DXCAlert } from '../types/DXCAlert';
3
+ import { DXCInputField } from '../types/DXCInputField';
4
+ import { DXCUserInteraction } from '../types/DXCUserInteraction';
5
+ export interface DXCUserInteractionRequest {
6
+ type: DXCUserInteraction['type'];
7
+ title: string;
8
+ alerts: DXCAlert[];
9
+ fields: {
10
+ [name: string]: DXCInputField;
11
+ };
12
+ }
13
+ export declare function interactWithUser<T extends DXCUserInteractionRequest>(userInteraction: BehaviorSubject<DXCUserInteraction | undefined>, req: T): Promise<{
14
+ [P in keyof T['fields']]: string;
15
+ }>;
16
+ export declare function alertUser(userInteraction: BehaviorSubject<DXCUserInteraction | undefined>, title: string, ...alerts: DXCAlert[]): Promise<{}>;
17
+ export declare function promptForEmail(userInteraction: BehaviorSubject<DXCUserInteraction | undefined>, title: string, emailHint?: string): Promise<string>;
18
+ export declare function promptForOTP(userInteraction: BehaviorSubject<DXCUserInteraction | undefined>, email: string, alert?: DXCAlert): Promise<string>;
@@ -0,0 +1,6 @@
1
+ import { DexieCloudDB } from '../db/DexieCloudDB';
2
+ export declare function login(db: DexieCloudDB, hints?: {
3
+ email?: string;
4
+ userId?: string;
5
+ grant_type?: string;
6
+ }): Promise<void>;
@@ -0,0 +1,3 @@
1
+ import { DexieCloudDB } from '../db/DexieCloudDB';
2
+ import { FetchTokenCallback } from './authenticate';
3
+ export declare function otpFetchTokenCallback(db: DexieCloudDB): FetchTokenCallback;
@@ -0,0 +1,14 @@
1
+ import { DexieCloudDB } from "../db/DexieCloudDB";
2
+ import { AuthPersistedContext } from "./AuthPersistedContext";
3
+ /** This function changes or sets the current user as requested.
4
+ *
5
+ * Use cases:
6
+ * * Initially on db.ready after reading the current user from db.$logins.
7
+ * This will make sure that any unsynced operations from the previous user is synced before
8
+ * changing the user.
9
+ * * Upon user request
10
+ *
11
+ * @param db
12
+ * @param newUser
13
+ */
14
+ export declare function setCurrentUser(db: DexieCloudDB, user: AuthPersistedContext): Promise<void>;