dexie
Version:
A Minimalistic Wrapper for IndexedDB
1 lines • 140 kB
Source Map (JSON)
{"version":3,"names":["_global","globalThis","self","window","global","keys","Object","isArray","Array","extend","obj","extension","forEach","key","Promise","getProto","getPrototypeOf","_hasOwn","hasOwnProperty","hasOwn","prop","call","props","proto","Reflect","ownKeys","setProp","defineProperty","functionOrGetSet","options","get","set","configurable","value","writable","derive","Child","from","Parent","prototype","create","bind","getOwnPropertyDescriptor","getPropertyDescriptor","_slice","slice","args","start","end","override","origFunc","overridedFactory","assert","b","Error","asap$1","fn","setImmediate","setTimeout","getByKeyPath","keyPath","rv","i","l","length","val","push","period","indexOf","innerObj","substr","undefined","setByKeyPath","isFrozen","currentKeyPath","remainingKeyPath","isNaN","parseInt","splice","shallowClone","m","concat","flatten","a","apply","intrinsicTypeNames","split","map","num","t","filter","intrinsicTypes","Set","cloneSimpleObjectTree","o","k","v","has","constructor","circularRefs","deepClone","any","WeakMap","innerDeepClone","x","toString","toStringTag","iteratorSymbol","Symbol","iterator","getIteratorOf","delArrayItem","NO_CHAR_ARRAY","getArrayOf","arrayLike","it","arguments","this","next","done","isAsyncFunction","idbDomErrorNames","errorList","defaultTexts","VersionChanged","DatabaseClosed","Abort","TransactionInactive","MissingAPI","DexieError","name","msg","message","getMultiErrorMessage","failures","s","join","ModifyError","successCount","failedKeys","BulkError","pos","failuresByPos","errnames","reduce","BaseException","exceptions","fullName","msgOrInner","inner","Syntax","SyntaxError","Type","TypeError","Range","RangeError","exceptionMap","fullNameExceptions","nop","mirror","pureFunctionChain","f1","f2","callBoth","on1","on2","hookCreatingChain","res","onsuccess","onerror","res2","hookDeletingChain","hookUpdatingChain","modifications","reverseStoppableEventChain","promisableChain","then","thiz","debug","location","test","href","setDebug","INTERNAL","resolvedNativePromise","nativePromiseProto","resolvedGlobalPromise","globalP","resolve","crypto","subtle","nativeP","digest","Uint8Array","nativePromiseThen","NativePromise","patchGlobalPromise","asap","callback","microtickQueue","needsNewPhysicalTick","queueMicrotask","physicalTick","isOutsideMicroTick","unhandledErrors","rejectingErrors","rejectionMapper","globalPSD","id","ref","unhandleds","onunhandled","pgp","env","finalize","PSD","numScheduledCalls","tickFinalizers","DexiePromise","_listeners","_lib","psd","_PSD","_state","_value","handleRejection","executePromiseTask","thenProp","microTaskId","totalEchoes","onFulfilled","onRejected","possibleAwait","cleanup","decrementExpectedAwaits","reject","propagateToListener","Listener","nativeAwaitCompatibleWrap","_consoleTask","zone","promise","shouldExecuteTick","beginMicroTickScope","_then","propagateAllListeners","endMicroTickScope","ex","reason","some","p","addPossiblyUnhandledError","listeners","len","finalizePhysicalTick","listener","cb","callListener","ret","run","markErrorAsHandled","e","usePSD","wasRootExec","callbacks","item","unhandledErrs","finalizers","PromiseReject","wrap","errorCatcher","outerScope","switchToZone","catch","type","handler","err","finally","onFinally","timeout","ms","Infinity","handle","Timeout","clearTimeout","snapShot","all","values","onPossibleParallellAsync","remaining","race","newPSD","newScope","scheduler","follow","zoneProps","finalizer","run_at_end_of_this_or_next_physical_tick","allSettled","possiblePromises","results","status","AggregateError","failure","withResolvers","task","awaits","echoes","taskCounter","zoneStack","zoneEchoes","zone_id_counter","a1","a2","parent","PromiseProp","incrementExpectedAwaits","possiblePromise","rejection","zoneEnterEcho","targetZone","zoneLeaveEcho","pop","bEnteringZone","currentZone","GlobalPromise","targetEnv","a3","outerZone","execInGlobalContext","enqueueNativeMicroTask","tempTransaction","db","mode","storeNames","idbdb","openComplete","letThrough","_vip","trans","_createTransaction","_dbSchema","PR1398_maxLoop","InvalidState","isOpen","console","warn","close","disableAutoOpen","open","_promise","result","idbtrans","commit","_completion","dbOpenError","isBeingOpened","autoOpen","dbReadyPromise","DEXIE_VERSION","maxString","String","fromCharCode","minKey","INVALID_KEY_ARGUMENT","STRING_EXPECTED","DEFAULT_MAX_CONNECTIONS","DBNAMES_DB","READONLY","READWRITE","combine","filter1","filter2","AnyRange","lower","lowerOpen","upper","upperOpen","workaroundForUndefinedPrimKey","Entity","cmp","ta","tb","NaN","al","bl","compareUint8Arrays","getUint8Array","compareArrays","ArrayBuffer","isView","tsTag","buffer","byteOffset","byteLength","builtInDeletionTrigger","table","yProps","schema","numFailures","_","updatesTable","where","anyOf","delete","clear","PropModification","execute","spec","add","term","sort","Number","BigInt","remove","subtrahend","includes","prefixToReplace","replacePrefix","startsWith","substring","applyUpdateSpec","changes","keyPaths","numKeys","anythingModified","origValue","Table","_trans","writeLocked","_tx","tableName","createTask","checkTableInTransaction","NotFound","_novip","transless","trace","keyOrCrit","first","core","hook","reading","fire","indexOrCrit","WhereClause","equals","compoundIndex","indexes","primKey","ix","compound","every","_maxKey","keyPathsInValidOrder","kp","JSON","stringify","idxByName","idx","filterFunction","prevIndex","prevFilterFn","index","multi","toCollection","and","count","thenShortcut","offset","limit","numRows","each","toArray","Collection","orderBy","reverse","mapToClass","mappedClass","inheritedProps","getOwnPropertyNames","propName","readHook","unsubscribe","defineClass","content","auto","objToAdd","mutate","lastResult","upsert","existing","updates","changeSpecs","update","keyOrObject","modify","InvalidArgument","put","range","bulkGet","getMany","bulkAdd","objects","keysOrOptions","wantResults","allKeys","numObjects","objectsToAdd","bulkPut","objectsToPut","bulkUpdate","keysAndChanges","coreTable","entry","offsetMap","cache","objs","resultKeys","resultObjs","Constraint","numEntries","mappedOffset","bulkDelete","Events","ctx","evs","eventName","subscriber","subscribe","addEventType","chainFunction","defaultFunction","cfg","context","subscribers","makeClassConstructor","isPlainKeyRange","ignoreLimitFilter","algorithm","or","justLimit","replayFilter","addFilter","addReplayFilter","factory","isLimitFilter","curr","getIndexOrStore","coreSchema","isPrimKey","primaryKey","getIndexByKeyPath","Schema","openCursor","keysOnly","dir","unique","query","iter","coreTrans","union","cursor","advance","stop","fail","_iterate","iterate","valueMapper","cursorPromise","wrappedFn","c","continue","advancer","_read","_ctx","error","_write","_addAlgorithm","clone","raw","Math","min","sortBy","parts","lastPart","lastIndex","getval","order","sorter","direction","offsetLeft","rowsLeft","until","bIncludeStopEntry","last","isMatch","indexName","_ondirectionchange","desc","eachKey","eachUniqueKey","eachPrimaryKey","primaryKeys","uniqueKeys","firstKey","lastKey","distinct","strKey","found","modifyer","outbound","extractKey","modifyChunkSize","_options","totalFailures","applyMutateResult","expectedCount","isUnconditionalDelete","deleteCallback","criteria","nextChunk","keysInChunk","addValues","putValues","putKeys","deleteKeys","changeSpec","isAdditionalChunk","coreRange","simpleCompare","simpleCompareReverse","collectionOrWhereClause","T","collection","emptyCollection","whereClause","rangeEqual","nextCasing","lowerKey","upperNeedle","lowerNeedle","llp","lwrKeyChar","addIgnoreCaseAlgorithm","match","needles","suffix","compare","upperNeedles","lowerNeedles","nextKeySuffix","needlesLen","initDirection","toUpperCase","toLowerCase","upperFactory","lowerFactory","needleBounds","needle","nb","createRange","firstPossibleNeedle","lowestPossibleCasing","casing","between","includeLower","includeUpper","_cmp","above","aboveOrEqual","below","belowOrEqual","str","startsWithIgnoreCase","equalsIgnoreCase","anyOfIgnoreCase","startsWithAnyOfIgnoreCase","n","_ascending","_descending","notEqual","inAnyRange","includeLowers","includeUppers","noneOf","ranges","ascending","descending","_min","max","_max","sortDirection","rangeSorter","newRange","rangePos","keyIsBeyondCurrentEntry","keyIsBeforeCurrentEntry","checkKey","keyWithinCurrentRange","startsWithAnyOf","eventRejectHandler","event","preventDefault","target","stopPropagation","DEXIE_STORAGE_MUTATED_EVENT_NAME","STORAGE_MUTATED_DOM_EVENT_NAME","globalEvents","Transaction","_lock","_reculock","lockOwnerFor","_unlock","_blockedFuncs","_locked","fnAndPSD","shift","OpenFailed","active","transaction","durability","chromeTransactionDurability","ev","_reject","onabort","on","oncomplete","_resolve","storagemutated","bWriteLock","ReadOnly","_root","waitFor","promiseLike","root","_waitingFor","_waitingQueue","store","objectStore","spin","_spinCount","currentWaitPromise","abort","memoizedTables","_memoizedTables","tableSchema","transactionBoundTable","createIndexSpec","src","nameFromKeyPath","createTableSchema","array","extractor","nameAndValue","getMaxKey","IdbKeyRange","only","getKeyExtractor","getSinglePathKeyExtractor","arrayify","_id_counter","getKeyPathAlias","createDBCore","tmpTrans","makeIDBKeyRange","upperBound","lowerBound","bound","hasGetAll","hasIdb3Features","tables","objectStoreNames","tempStore","autoIncrement","indexByKeyPath","isPrimaryKey","indexNames","multiEntry","navigator","userAgent","extractSchema","isAddOrPut","req","reqs","errorHandler","args1","args2","keyCount","callbackCount","successHandler","_pos","request","nonInfinitLimit","source","idbKeyRange","getAll","getAllKeys","openKeyCursor","___id","_cursorContinue","_cursorContinuePrimaryKey","continuePrimaryKey","_cursorAdvance","doThrowCursorIsStopped","gotOne","iterationPromise","resolveIteration","rejectIteration","guardedCallback","createDbCoreTable","tableMap","stack","MIN_KEY","MAX_KEY","generateMiddlewareStacks","stacks","middlewares","IDBKeyRange","indexedDB","dbcore","stackImpl","down","createMiddlewareStack","createMiddlewareStacks","_middlewares","_deps","tbl","setApiOnPlace","tableNames","dbschema","propDesc","enumerable","removeTablesApi","lowerVersionFirst","_cfg","version","runUpgraders","oldVersion","idbUpgradeTrans","globalSchema","contains","$meta","parseIndexSyntax","_storeNames","rejectTransaction","metaVersion","getExistingVersion","queue","versions","_versions","buildGlobalSchema","versToRun","runQueue","oldSchema","newSchema","adjustToExistingIndexNames","diff","getSchemaDiff","tuple","createTable","change","recreate","Upgrade","addIndex","deleteIndex","del","idxName","contentUpgrade","upgradeSchema","contentUpgradeIsAsync","returnValue","promiseFollowed","decrementor","storeName","deleteObjectStore","deleteRemovedTables","ceil","createMissingTables","updateTablesAndIndexes","populate","oldDef","newDef","def","oldIndexes","newIndexes","oldIdx","newIdx","createObjectStore","createIndex","j","idbindex","_hasGetAll","dexieName","indexSpec","WorkerGlobalScope","primKeyAndIndexes","indexNum","typeSplit","trim","replace","Version","_createTableSchema","_parseIndexSyntax","_parseStoresSpec","stores","outSchema","tblSchema","storesSource","storesSpec","_allTables","upgrade","upgradeFunction","connections","FinalizationRegistry","WeakRef","_refs","_registry","deref","register","size","maxConnections","oldestRef","unregister","createConnectionsManager","getDbNamesTable","dbNamesDB","Dexie$1","addons","dbnames","hasDatabasesNative","databases","vip","idbReady","intervalId","userAgentData","tryIdb","setInterval","clearInterval","isEmptyRange","node","RangeSet","fromOrTree","to","d","addRange","left","right","r","rebalance","rightWasCutOff","mergeRanges","newSet","_addRangeSet","rangesOverlap","rangeSet1","rangeSet2","i1","getRangeSetIterator","nextResult1","i2","nextResult2","state","keyProvided","up","rootClone","oldRootRight","computeDepth","extendObservabilitySet","part","obsSetsOverlap","os1","os2","rangeSet","addKey","addKeys","hasKey","unsignaledParts","isTaskEnqueued","signalSubscribersLazily","optimistic","signalSubscribersNow","updatedParts","deleteAffectedCacheEntries","queriesToSignal","tblCache","collectTableSubscribers","exec","dbName","requery","outQueriesToSignal","updatedEntryLists","entries","queries","filteredEntries","obsSet","dexieOpen","openCanceller","nativeVerToOpen","round","verno","schemaPatchMode","throwIfCancelled","resolveDbReady","dbReadyResolve","upgradeTransaction","wasCreated","tryOpenDB","autoSchema","onblocked","_fireOnBlocked","onupgradeneeded","allowEmptyDB","delreq","deleteDatabase","NoSuchDatabase","oldVer","pow","tableChange","patchCurrentVersion","readGlobalSchema","ch","verifyInstalledSchema","onversionchange","vcFired","onclose","_onDatabaseCreated","onReadyBeingFired","ready","fireRemainders","remainders","_close","everything","awaitIterator","callNext","onSuccess","step","onError","throw","getNext","extractTransactionArgs","_tableArgs_","scopeFunc","enterTransactionScope","parentTransaction","explicit","_explicit","scopeFuncIsAsync","PrematureCommit","pad","virtualIndexMiddleware","level","indexLookup","allVirtualIndexes","addVirtualIndexes","keyTail","lowLevelIndex","keyPathAlias","indexList","keyLength","isVirtual","virtualIndex","translateRequest","virtualCursor","createVirtualCursor","getObjectDiff","prfx","ap","bp","apTypeName","getEffectiveKeys","hooksMiddleware","downCore","downTable","tableMiddleware","dxTrans","deleting","creating","updating","addPutOrDelete","deleteNextChunk","deleteRange","effectiveKeys","getExistingValues","existingValues","contexts","existingValue","generatedPrimaryKey","objectDiff","additionalChanges","requestedValue","getFromTransactionCache","cacheExistingValuesMiddleware","cachedResult","isCachableContext","subscr","isCachableRequest","observabilityMiddleware","FULL_RANGE","querier","indexesWithAutoIncPK","tableClone","mutatedParts","getRangeSet","pkRangeSet","delsRangeSet","newObjs","oldCache","oldObjs","addAffectedIndex","addKeyOrKeys","oldKey","newKey","trackAffectedIndexes","idxVals","pkPos","findIndex","getRange","readSubscribers","method","isLiveQuery","queriedIndex","queriedRanges","keysPromise","resultingKeys","pKeys","wantValues","pkey","adjustOptimisticFromFailures","numBulkOps","isWithinRange","isAboveLower","isBelowUpper","applyOptimisticOps","ops","cacheEntry","immutable","queryRange","extractPrimKey","extractIndex","extractLowLevelIndex","finalResult","op","modifedResult","includedValues","includedPKs","pk","existingKeys","keySet","keysToDelete","dirty","freeze","areRangesEqual","r1","r2","isSuperRange","lower1","lower2","lowerOpen1","lowerOpen2","compareLowers","upper1","upper2","upperOpen1","upperOpen2","compareUppers","subscribeToCacheEntry","container","signal","addEventListener","enqueForDeletion","cacheMiddleware","coreMW","ac","AbortController","endTransaction","wasCommitted","affectedSubscribers","optimisticOps","freezeResults","modRes","tableMW","adjustedReq","valueWithKey","exactMatch","reqDirection","equalEntry","find","countQuery","findCompatibleQuery","Map","vipify","vipDb","Proxy","receiver","Dexie","deps","dependencies","cancelOpen","once","bSticky","keyRangeGenerator","keyRange","whereCtx","readingHook","createTableConstructor","complete","wasActive","createTransactionConstructor","versionNumber","createVersionConstructor","orCollection","_IDBKeyRange","createWhereClauseConstructor","newVersion","use","vipDB","addon","versionInstance","_whenReady","unuse","mw","CustomEvent","closeOptions","hasInvalidArguments","doDelete","_onDatabaseDeleted","backendDB","hasBeenClosed","hasFailed","dynamicallyOpened","_transaction","onlyIfCompatible","idbMode","SubTransaction","enterTransaction","InvalidTable","symbolObservable","observable","Observable","_subscribe","domDeps","mozIndexedDB","webkitIndexedDB","msIndexedDB","webkitIDBKeyRange","liveQuery","currentValue","hasValue","observer","abortController","closed","accumMuts","currentObs","subscription","startedListening","mutationListener","doQuery","_doQuery","shouldNotify","aborted","getValue","propagateLocally","updateParts","wasMe","propagatingLocally","databaseName","exists","getDatabaseNames","infos","info","ignoreTransaction","async","generatorFn","spawn","currentTransaction","promiseOrFunction","optionalTimeout","delByKeyPath","semVer","maxKey","dispatchEvent","detail","bc","createBC","BroadcastChannel","onmessage","data","unref","changedParts","postMessage","disableBfCache","persisted","domError"],"sources":["dexie.mjs"],"mappings":"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