react-native-nitro-storage 0.7.0 → 0.8.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/CHANGELOG.md +32 -0
- package/README.md +20 -9
- package/SECURITY.md +2 -2
- package/docs/api-reference.md +11 -1
- package/docs/batch-transactions-migrations.md +8 -2
- package/docs/benchmarks.md +19 -15
- package/docs/web-backends.md +18 -1
- package/ios/IOSStorageAdapterCpp.mm +162 -17
- package/lib/commonjs/capabilities.js +26 -0
- package/lib/commonjs/capabilities.js.map +1 -0
- package/lib/commonjs/core/durability.js +137 -0
- package/lib/commonjs/core/durability.js.map +1 -0
- package/lib/commonjs/core/metrics.js +91 -0
- package/lib/commonjs/core/metrics.js.map +1 -0
- package/lib/commonjs/index.js +47 -22
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +118 -66
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/indexeddb-backend.js +73 -23
- package/lib/commonjs/indexeddb-backend.js.map +1 -1
- package/lib/commonjs/internal.js +27 -4
- package/lib/commonjs/internal.js.map +1 -1
- package/lib/commonjs/shared.js +2 -2
- package/lib/commonjs/shared.js.map +1 -1
- package/lib/commonjs/storage-core.js +217 -233
- package/lib/commonjs/storage-core.js.map +1 -1
- package/lib/commonjs/storage-events.js.map +1 -1
- package/lib/commonjs/storage-platform.js +6 -0
- package/lib/commonjs/storage-platform.js.map +1 -0
- package/lib/commonjs/storage-runtime.js +3 -21
- package/lib/commonjs/storage-runtime.js.map +1 -1
- package/lib/commonjs/testing.js +19 -4
- package/lib/commonjs/testing.js.map +1 -1
- package/lib/commonjs/web-backend-contract.js +27 -0
- package/lib/commonjs/web-backend-contract.js.map +1 -0
- package/lib/module/capabilities.js +21 -0
- package/lib/module/capabilities.js.map +1 -0
- package/lib/module/core/durability.js +133 -0
- package/lib/module/core/durability.js.map +1 -0
- package/lib/module/core/metrics.js +87 -0
- package/lib/module/core/metrics.js.map +1 -0
- package/lib/module/index.js +48 -23
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +103 -64
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/indexeddb-backend.js +73 -23
- package/lib/module/indexeddb-backend.js.map +1 -1
- package/lib/module/internal.js +24 -3
- package/lib/module/internal.js.map +1 -1
- package/lib/module/shared.js +2 -2
- package/lib/module/shared.js.map +1 -1
- package/lib/module/storage-core.js +218 -234
- package/lib/module/storage-core.js.map +1 -1
- package/lib/module/storage-events.js.map +1 -1
- package/lib/module/storage-platform.js +4 -0
- package/lib/module/storage-platform.js.map +1 -0
- package/lib/module/storage-runtime.js +3 -21
- package/lib/module/storage-runtime.js.map +1 -1
- package/lib/module/testing.js +5 -3
- package/lib/module/testing.js.map +1 -1
- package/lib/module/web-backend-contract.js +22 -0
- package/lib/module/web-backend-contract.js.map +1 -0
- package/lib/typescript/capabilities.d.ts +11 -0
- package/lib/typescript/capabilities.d.ts.map +1 -0
- package/lib/typescript/core/durability.d.ts +27 -0
- package/lib/typescript/core/durability.d.ts.map +1 -0
- package/lib/typescript/core/metrics.d.ts +12 -0
- package/lib/typescript/core/metrics.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +8 -4
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/lib/typescript/indexeddb-backend.d.ts.map +1 -1
- package/lib/typescript/internal.d.ts +3 -0
- package/lib/typescript/internal.d.ts.map +1 -1
- package/lib/typescript/shared.d.ts +2 -1
- package/lib/typescript/shared.d.ts.map +1 -1
- package/lib/typescript/storage-core.d.ts +3 -3
- package/lib/typescript/storage-core.d.ts.map +1 -1
- package/lib/typescript/storage-events.d.ts +2 -2
- package/lib/typescript/storage-events.d.ts.map +1 -1
- package/lib/typescript/storage-platform.d.ts +12 -0
- package/lib/typescript/storage-platform.d.ts.map +1 -0
- package/lib/typescript/storage-runtime.d.ts.map +1 -1
- package/lib/typescript/testing.d.ts +5 -1
- package/lib/typescript/testing.d.ts.map +1 -1
- package/lib/typescript/web-backend-contract.d.ts +10 -0
- package/lib/typescript/web-backend-contract.d.ts.map +1 -0
- package/lib/typescript/web-storage-backend.d.ts +1 -1
- package/lib/typescript/web-storage-backend.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/capabilities.ts +36 -0
- package/src/core/durability.ts +170 -0
- package/src/core/metrics.ts +133 -0
- package/src/index.ts +66 -40
- package/src/index.web.ts +158 -86
- package/src/indexeddb-backend.ts +91 -20
- package/src/internal.ts +50 -4
- package/src/shared.ts +7 -6
- package/src/storage-core.ts +317 -285
- package/src/storage-events.ts +2 -1
- package/src/storage-platform.ts +16 -0
- package/src/storage-runtime.ts +13 -47
- package/src/testing.ts +14 -7
- package/src/web-backend-contract.ts +34 -0
- package/src/web-storage-backend.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_shared","require","_Storage","_internal","_storageEvents","EMPTY_KEYS","Object","freeze","asInternal","item","createStorageCore","buildAdapter","registeredMigrations","Map","itemGroups","registeredKeyCounts","memoryStore","memoryListeners","scopedListeners","StorageScope","Disk","Secure","scopedRawCache","pendingDiskWrites","diskFlushScheduled","diskWritesAsync","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","AccessControl","WhenUnlocked","metricsObserver","eventObserver","eventObserverRedactSecureValues","metricsCounters","storageEvents","StorageEventRegistry","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","now","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","readCachedRawValue","clearScopeRawCache","clear","addKeyListener","registry","listener","listeners","Set","add","keyListeners","delete","size","getEventRawValue","Memory","undefined","getRawValue","shouldReadPreviousEventValues","hasListeners","eventForGlobalObserver","event","type","redactSecureKeyChange","changes","map","emitKeyChange","oldValue","newValue","source","adapter","onWillEmitChanges","createKeyChange","emitKey","emitBatchChange","length","change","emitBatch","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","has","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","writes","Array","from","values","keysToSet","valuesToSet","keysToRemove","forEach","push","backend","setBatch","removeBatch","flushSecureWrites","groupedSetWrites","accessControl","resolvedAccessControl","existingGroup","group","keys","setSecureAccessControl","scheduleDiskWrite","runMicrotask","scheduleSecureWrite","pendingWrite","assertValidScope","setRawValue","notifyKeyListeners","changeSource","applyAccessControlOnSecureRawWrite","removeRawValue","remove","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","internals","clearAllPendingDiskWrites","clearAllPendingSecureWrites","hasEventObserver","hasScopeEventListeners","getSecureDefaultAccessControl","setSecureDefaultAccessControl","level","resolveKeyRef","ref","clearScopeExcept","exceptRefs","keep","removeKeys","filter","previousValues","index","getAllKeys","getBatch","storage","subscribe","ensureScopeSubscription","unsubscribe","maybeCleanupScopeSubscription","subscribeKey","subscribePrefix","prefix","subscribeNamespace","namespace","prefixKey","setEventObserver","observer","options","redactSecureValues","except","getAll","notifyAllListeners","clearAll","clearGroup","items","byScope","scoped","groupItems","getGroupItems","subscribeExpired","findDuplicateKeys","duplicates","registryKey","separatorIndex","indexOf","slice","getRegisteredKeys","result","_count","clearNamespace","affectedKeys","isNamespaced","keyPrefix","getByPrefix","scopeCache","removeByPrefix","clearBiometric","clearSecureBiometric","getKeysByPrefix","startsWith","idx","val","export","includeSecureValues","Error","exportSecureUnsafe","setDiskWritesAsync","enabled","setMetricsObserver","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getSecureMetadata","profile","getSecureMetadataProfile","biometricProtected","hasSecureBiometric","exists","kind","encrypted","hardwareBacked","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","flushDiskWritesOnImport","createStorageItem","config","storageKey","serialize","defaultSerialize","deserialize","defaultDeserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometricLevel","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","renameFromKeys","renameFrom","fallbackToCacheOnReadError","onReadError","renamesMigrated","assertBiometricLevel","assertAccessControlLevel","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","Date","expiredRaw","migrateRenamesIfNeeded","pending","cache","cached","readBackendRaw","getSecureBiometric","read","error","writeStoredRaw","rawValue","setSecureBiometricWithLevel","hasCurrent","legacyKey","deleteSecureBiometric","legacyRaw","isKeychainLockedError","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","valueOrFn","isUpdater","setIfVersion","currentVersion","deleteItem","merge","partial","prev","reset","setOrDelete","hasItem","subscribeSelector","selector","isEqual","is","currentValue","fireImmediately","nextValue","previousValue","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_hasValidation","_hasExpiration","_readCacheEnabled","_isBiometric","_biometricLevel","_defaultValue","_secureAccessControl","_group","groupSet","assertBatchScope","useRawBatchPath","every","canUseSecureRawBatchPath","canUseRawBatchPath","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","needsIndividualSets","some","internal","secureEntries","canUseSecureBatchPath","oldValues","groupedByAccessControl","entry","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","NOT_SET","Symbol","rollback","rememberRollback","tx","getItem","setItem","removeItem","rollbackEntries","entries","reverse","record","groupedKeysToSet","createSecureAuthStorage","ns","typedKeys","itemConfig","expirationConfig","memoryItem","diskItem","secureItem","createSetItem","rest","initial","id","deleteId","current","next","toggle"],"sourceRoot":"../../src","sources":["storage-core.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_durability","require","_metrics","_internal","_shared","_storageEvents","_Storage","EMPTY_KEYS","Object","freeze","asInternal","item","createStorageCore","buildAdapter","registeredMigrations","Map","itemGroups","registeredKeyCounts","memoryStore","memoryListeners","scopedListeners","StorageScope","Disk","Secure","scopedRawCache","secureDefaultAccessControl","AccessControl","WhenUnlocked","eventObserver","eventObserverRedactSecureValues","storageEvents","StorageEventRegistry","metrics","createMetricsRegistry","durability","createDurabilityCoordinator","backend","setBatch","keys","values","scope","adapter","removeBatch","setSecureAccessControl","level","resolveSecureDefaultAccessControl","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","set","readCachedRawValue","get","clearScopeRawCache","clear","addKeyListener","registry","listener","listeners","Set","add","keyListeners","delete","size","getEventRawValue","Memory","unescapeCollidingRawValue","undefined","getRawValue","shouldReadPreviousEventValues","hasListeners","eventForGlobalObserver","event","type","redactSecureKeyChange","changes","map","emitKeyChange","oldValue","newValue","operation","source","onWillEmitChanges","createKeyChange","emitKey","emitBatchChange","length","change","emitBatch","measureOperation","fn","keysCount","measure","recordMetric","durationMs","record","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","flushSecureWrites","scheduleDiskWrite","scheduleSecureWrite","accessControl","setDiskWritesAsyncMode","enabled","setDiskWritesAsync","isDiskWritesAsync","getStoredRawValue","assertValidScope","pending","raw","setRawValue","storedValue","escapeCollidingRawValue","notifyKeyListeners","changeSource","applyAccessControlOnSecureRawWrite","removeRawValue","remove","readMigrationVersion","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","internals","clearAllPendingDiskWrites","clearAllPendingSecureWrites","hasEventObserver","hasScopeEventListeners","getSecureDefaultAccessControl","setSecureDefaultAccessControl","resolveKeyRef","ref","clearScopeExcept","exceptRefs","keep","removeKeys","Array","from","filter","has","previousValues","forEach","index","getAllKeys","getBatch","storage","subscribe","ensureScopeSubscription","unsubscribe","maybeCleanupScopeSubscription","subscribeKey","subscribePrefix","prefix","subscribeNamespace","namespace","prefixKey","setEventObserver","observer","options","redactSecureValues","except","getAll","notifyAllListeners","clearAll","clearGroup","group","items","byScope","scoped","push","groupItems","getGroupItems","subscribeExpired","findDuplicateKeys","duplicates","count","registryKey","separatorIndex","indexOf","slice","getRegisteredKeys","result","_count","clearNamespace","affectedKeys","isNamespaced","keyPrefix","getByPrefix","scopeCache","removeByPrefix","clearBiometric","clearSecureBiometric","getKeysByPrefix","startsWith","idx","val","export","includeSecureValues","Error","exportSecureUnsafe","setMetricsObserver","setObserver","getMetricsSnapshot","getSnapshot","getScopedMetricsSnapshot","getScopedSnapshot","resetMetrics","reset","getSecureMetadata","profile","getSecureMetadataProfile","biometricProtected","hasSecureBiometric","exists","kind","encrypted","hardwareBacked","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","storedValues","createStorageItem","config","storageKey","serialize","defaultSerialize","deserialize","defaultDeserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometricLevel","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","renameFromKeys","renameFrom","fallbackToCacheOnReadError","onReadError","renamesMigrated","assertBiometricLevel","assertAccessControlLevel","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","resolveNonMemoryScope","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","expiredRaw","memoryStored","migrateRenamesIfNeeded","cache","cached","readBackendRaw","getSecureBiometric","read","error","writeStoredRaw","rawValue","setSecureBiometricWithLevel","hasCurrent","legacyKey","deleteSecureBiometric","legacyRaw","isKeychainLockedError","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","version","valueOrFn","isUpdater","setIfVersion","currentVersion","deleteItem","merge","partial","prev","setOrDelete","hasItem","subscribeSelector","selector","isEqual","is","currentValue","fireImmediately","nextValue","previousValue","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_deleteMemoryEntry","_hasValidation","_hasExpiration","_readCacheEnabled","_isBiometric","_biometricLevel","_defaultValue","_secureAccessControl","_group","groupSet","assertBatchScope","useRawBatchPath","every","canUseSecureRawBatchPath","canUseRawBatchPath","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","needsIndividualSets","some","internal","secureEntries","canUseSecureBatchPath","oldValues","groupedByAccessControl","existingGroup","entry","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","runTransaction","tx","setRaw","String","transaction","NOT_SET","Symbol","rollback","rememberRollback","getRaw","removeRaw","getItem","setItem","removeItem","rollbackEntries","entries","reverse","rollbackSource","preRollbackValues","groupedKeysToSet","keysToRemove","createSecureAuthStorage","ns","typedKeys","itemConfig","expirationConfig","memoryItem","diskItem","secureItem","createSetItem","rest","initial","id","deleteId","current","next","toggle"],"sourceRoot":"../../src","sources":["storage-core.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["addListener","registry","scope","listener","listeners","get","Set","set","add","scopedListeners","delete","size","StorageEventRegistry","scopeListeners","Map","keyListeners","prefixListeners","subscribe","hasListeners","subscribeKey","key","currentScopedListeners","currentKeyListeners","subscribePrefix","prefix","entry","emitKey","event","emitToScope","emitToKey","emitToPrefixes","emitBatch","changes","forEach","change","emitBatchToPrefixes","startsWith","filter","length","exports"],"sourceRoot":"../../src","sources":["storage-events.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["addListener","registry","scope","listener","listeners","get","Set","set","add","scopedListeners","delete","size","StorageEventRegistry","scopeListeners","Map","keyListeners","prefixListeners","subscribe","hasListeners","subscribeKey","key","currentScopedListeners","currentKeyListeners","subscribePrefix","prefix","entry","emitKey","event","emitToScope","emitToKey","emitToPrefixes","emitBatch","changes","forEach","change","emitBatchToPrefixes","startsWith","filter","length","exports"],"sourceRoot":"../../src","sources":["storage-events.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["storage-platform.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -6,33 +6,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.getStorageErrorCode = getStorageErrorCode;
|
|
7
7
|
exports.isLockedStorageErrorCode = isLockedStorageErrorCode;
|
|
8
8
|
const STORAGE_ERROR_TAG_PATTERN = /\[nitro-error:([a-z_]+)\]/;
|
|
9
|
+
const STORAGE_ERROR_CODES = new Set(["keychain_locked", "authentication_required", "key_invalidated", "storage_corruption", "biometric_unavailable", "unsupported"]);
|
|
9
10
|
function getStorageErrorCode(err) {
|
|
10
11
|
if (!(err instanceof Error)) {
|
|
11
12
|
return undefined;
|
|
12
13
|
}
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
if (taggedCode === "keychain_locked" || taggedCode === "authentication_required" || taggedCode === "key_invalidated" || taggedCode === "storage_corruption" || taggedCode === "biometric_unavailable" || taggedCode === "unsupported") {
|
|
14
|
+
const taggedCode = err.message.match(STORAGE_ERROR_TAG_PATTERN)?.[1];
|
|
15
|
+
if (taggedCode !== undefined && STORAGE_ERROR_CODES.has(taggedCode)) {
|
|
16
16
|
return taggedCode;
|
|
17
17
|
}
|
|
18
|
-
if (message.includes("errSecInteractionNotAllowed")) {
|
|
19
|
-
return "keychain_locked";
|
|
20
|
-
}
|
|
21
|
-
if (message.includes("UserNotAuthenticatedException") || message.includes("KeyStoreException") || message.includes("android.security.keystore")) {
|
|
22
|
-
return "authentication_required";
|
|
23
|
-
}
|
|
24
|
-
if (message.includes("KeyPermanentlyInvalidatedException") || message.includes("InvalidKeyException")) {
|
|
25
|
-
return "key_invalidated";
|
|
26
|
-
}
|
|
27
|
-
if (message.includes("AEADBadTagException") || message.toLowerCase().includes("storage corruption") || message.toLowerCase().includes("corrupted storage")) {
|
|
28
|
-
return "storage_corruption";
|
|
29
|
-
}
|
|
30
|
-
if (message.toLowerCase().includes("biometric storage unavailable") || message.toLowerCase().includes("biometric storage is not available")) {
|
|
31
|
-
return "biometric_unavailable";
|
|
32
|
-
}
|
|
33
|
-
if (message.toLowerCase().includes("unsupported")) {
|
|
34
|
-
return "unsupported";
|
|
35
|
-
}
|
|
36
18
|
return undefined;
|
|
37
19
|
}
|
|
38
20
|
function isLockedStorageErrorCode(code) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["STORAGE_ERROR_TAG_PATTERN","getStorageErrorCode","err","Error","undefined","
|
|
1
|
+
{"version":3,"names":["STORAGE_ERROR_TAG_PATTERN","STORAGE_ERROR_CODES","Set","getStorageErrorCode","err","Error","undefined","taggedCode","message","match","has","isLockedStorageErrorCode","code"],"sourceRoot":"../../src","sources":["storage-runtime.ts"],"mappings":";;;;;;;AAwDA,MAAMA,yBAAyB,GAAG,2BAA2B;AAE7D,MAAMC,mBAAmB,GAAG,IAAIC,GAAG,CAAmB,CACpD,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,aAAa,CACd,CAAC;AAEK,SAASC,mBAAmBA,CACjCC,GAAY,EACkB;EAC9B,IAAI,EAAEA,GAAG,YAAYC,KAAK,CAAC,EAAE;IAC3B,OAAOC,SAAS;EAClB;EAEA,MAAMC,UAAU,GAAGH,GAAG,CAACI,OAAO,CAACC,KAAK,CAACT,yBAAyB,CAAC,GAAG,CAAC,CAAC;EAEpE,IACEO,UAAU,KAAKD,SAAS,IACxBL,mBAAmB,CAACS,GAAG,CAACH,UAA8B,CAAC,EACvD;IACA,OAAOA,UAAU;EACnB;EAEA,OAAOD,SAAS;AAClB;AAEO,SAASK,wBAAwBA,CACtCC,IAAkC,EACzB;EACT,OACEA,IAAI,KAAK,iBAAiB,IAC1BA,IAAI,KAAK,yBAAyB,IAClCA,IAAI,KAAK,iBAAiB;AAE9B","ignoreList":[]}
|
package/lib/commonjs/testing.js
CHANGED
|
@@ -28,13 +28,26 @@ Object.defineProperty(exports, "createIndexedDBBackend", {
|
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
exports.createNitroStorageMock = createNitroStorageMock;
|
|
31
|
-
exports.
|
|
31
|
+
exports.createStorageItem = exports.createSetItem = exports.createSecureAuthStorage = void 0;
|
|
32
|
+
Object.defineProperty(exports, "describeWebBackendCapabilities", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () {
|
|
35
|
+
return _webBackendContract.describeWebBackendCapabilities;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
exports.getBatch = exports.diskItem = void 0;
|
|
32
39
|
Object.defineProperty(exports, "getStorageErrorCode", {
|
|
33
40
|
enumerable: true,
|
|
34
41
|
get: function () {
|
|
35
42
|
return _storageRuntime.getStorageErrorCode;
|
|
36
43
|
}
|
|
37
44
|
});
|
|
45
|
+
Object.defineProperty(exports, "isIndexedDBWebBackend", {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function () {
|
|
48
|
+
return _webBackendContract.isIndexedDBWebBackend;
|
|
49
|
+
}
|
|
50
|
+
});
|
|
38
51
|
Object.defineProperty(exports, "isKeychainLockedError", {
|
|
39
52
|
enumerable: true,
|
|
40
53
|
get: function () {
|
|
@@ -81,12 +94,13 @@ Object.defineProperty(exports, "useStorageValue", {
|
|
|
81
94
|
return _storageHooks.useStorageValue;
|
|
82
95
|
}
|
|
83
96
|
});
|
|
84
|
-
var _Storage = require("./Storage.types");
|
|
85
97
|
var _shared = require("./shared");
|
|
86
98
|
var _storageCore = require("./storage-core");
|
|
99
|
+
var _Storage = require("./Storage.types");
|
|
87
100
|
var _migration = require("./migration");
|
|
88
101
|
var _storageRuntime = require("./storage-runtime");
|
|
89
102
|
var _indexeddbBackend = require("./indexeddb-backend");
|
|
103
|
+
var _webBackendContract = require("./web-backend-contract");
|
|
90
104
|
var _storageHooks = require("./storage-hooks");
|
|
91
105
|
const TEST_SECURE_BACKEND = "in-memory-test";
|
|
92
106
|
function createInMemoryBackend() {
|
|
@@ -152,7 +166,9 @@ function createInMemoryBackend() {
|
|
|
152
166
|
biometricStore.clear();
|
|
153
167
|
},
|
|
154
168
|
resetState: () => {
|
|
155
|
-
stores.forEach(store =>
|
|
169
|
+
stores.forEach(store => {
|
|
170
|
+
store.clear();
|
|
171
|
+
});
|
|
156
172
|
biometricStore.clear();
|
|
157
173
|
}
|
|
158
174
|
};
|
|
@@ -163,7 +179,6 @@ function buildTestingModule() {
|
|
|
163
179
|
backend,
|
|
164
180
|
changeSource: "native",
|
|
165
181
|
applyAccessControlOnSecureRawWrite: true,
|
|
166
|
-
flushDiskWritesOnImport: false,
|
|
167
182
|
ensureScopeSubscription: _scope => {},
|
|
168
183
|
maybeCleanupScopeSubscription: _scope => {},
|
|
169
184
|
onWillEmitChanges: () => {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_shared","require","_storageCore","_Storage","_migration","_storageRuntime","_indexeddbBackend","_webBackendContract","_storageHooks","TEST_SECURE_BACKEND","createInMemoryBackend","stores","Map","StorageScope","Disk","Secure","biometricStore","storeFor","scope","store","get","Error","key","set","value","remove","delete","clear","has","getAllKeys","Array","from","keys","getKeysByPrefix","prefix","filter","startsWith","size","setBatch","values","forEach","index","undefined","getBatch","map","removeBatch","removeByPrefix","setSecureAccessControl","getSecureBiometric","setSecureBiometricWithLevel","deleteSecureBiometric","hasSecureBiometric","clearSecureBiometric","resetState","buildTestingModule","backend","buildAdapter","_internals","changeSource","applyAccessControlOnSecureRawWrite","ensureScopeSubscription","_scope","maybeCleanupScopeSubscription","onWillEmitChanges","getSecureMetadataProfile","encrypted","hardwareBacked","core","createStorageCore","internals","storage","setAccessControl","level","assertAccessControlLevel","setSecureDefaultAccessControl","setSecureWritesAsync","_enabled","setKeychainAccessGroup","_group","getCapabilities","platform","disk","secure","writeBuffering","errorClassification","getSecurityCapabilities","secureStorage","accessControl","keychainAccessGroup","biometric","prompt","biometryOnly","biometryOrPasscode","metadata","perKey","listsWithoutValues","persistsTimestamps","reset","setEventObserver","setMetricsObserver","resetMetrics","clearAll","AccessControl","WhenUnlocked","createStorageItem","memoryItem","diskItem","secureItem","createSetItem","registerMigration","migrateToLatest","runTransaction","createSecureAuthStorage","defaultModule","exports","resetNitroStorageMock","createNitroStorageMock"],"sourceRoot":"../../src","sources":["testing.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.describeWebBackendCapabilities = describeWebBackendCapabilities;
|
|
7
|
+
exports.isIndexedDBWebBackend = isIndexedDBWebBackend;
|
|
8
|
+
function describeWebBackendCapabilities(backend) {
|
|
9
|
+
if (!backend) {
|
|
10
|
+
return {
|
|
11
|
+
buffered: false,
|
|
12
|
+
flushable: false,
|
|
13
|
+
closable: false,
|
|
14
|
+
subscribable: false
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
buffered: backend.name?.startsWith("indexeddb:") ?? false,
|
|
19
|
+
flushable: typeof backend.flush === "function",
|
|
20
|
+
closable: typeof backend.close === "function",
|
|
21
|
+
subscribable: typeof backend.subscribe === "function"
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function isIndexedDBWebBackend(backend) {
|
|
25
|
+
return backend?.name?.startsWith("indexeddb:") ?? false;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=web-backend-contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describeWebBackendCapabilities","backend","buffered","flushable","closable","subscribable","name","startsWith","flush","close","subscribe","isIndexedDBWebBackend"],"sourceRoot":"../../src","sources":["web-backend-contract.ts"],"mappings":";;;;;;;AASO,SAASA,8BAA8BA,CAC5CC,OAAsC,EACd;EACxB,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO;MACLC,QAAQ,EAAE,KAAK;MACfC,SAAS,EAAE,KAAK;MAChBC,QAAQ,EAAE,KAAK;MACfC,YAAY,EAAE;IAChB,CAAC;EACH;EAEA,OAAO;IACLH,QAAQ,EAAED,OAAO,CAACK,IAAI,EAAEC,UAAU,CAAC,YAAY,CAAC,IAAI,KAAK;IACzDJ,SAAS,EAAE,OAAOF,OAAO,CAACO,KAAK,KAAK,UAAU;IAC9CJ,QAAQ,EAAE,OAAOH,OAAO,CAACQ,KAAK,KAAK,UAAU;IAC7CJ,YAAY,EAAE,OAAOJ,OAAO,CAACS,SAAS,KAAK;EAC7C,CAAC;AACH;AAEO,SAASC,qBAAqBA,CACnCV,OAAsC,EAC7B;EACT,OAAOA,OAAO,EAAEK,IAAI,EAAEC,UAAU,CAAC,YAAY,CAAC,IAAI,KAAK;AACzD","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function resolveWebWriteBuffering(diskBackendName, secureBackendName) {
|
|
4
|
+
return {
|
|
5
|
+
disk: isIndexedDBWebBackendByName(diskBackendName),
|
|
6
|
+
secure: isIndexedDBWebBackendByName(secureBackendName)
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function isIndexedDBWebBackendByName(backendName) {
|
|
10
|
+
if (!backendName) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
return backendName.startsWith("indexeddb:");
|
|
14
|
+
}
|
|
15
|
+
export function resolveNativeWriteBuffering(platform, secureWritesAsync) {
|
|
16
|
+
return {
|
|
17
|
+
disk: true,
|
|
18
|
+
secure: platform === "android" ? secureWritesAsync : false
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveWebWriteBuffering","diskBackendName","secureBackendName","disk","isIndexedDBWebBackendByName","secure","backendName","startsWith","resolveNativeWriteBuffering","platform","secureWritesAsync"],"sourceRoot":"../../src","sources":["capabilities.ts"],"mappings":";;AAUA,OAAO,SAASA,wBAAwBA,CACtCC,eAAmC,EACnCC,iBAAqC,EACrB;EAChB,OAAO;IACLC,IAAI,EAAEC,2BAA2B,CAACH,eAAe,CAAC;IAClDI,MAAM,EAAED,2BAA2B,CAACF,iBAAiB;EACvD,CAAC;AACH;AAEA,SAASE,2BAA2BA,CAACE,WAA+B,EAAW;EAC7E,IAAI,CAACA,WAAW,EAAE;IAChB,OAAO,KAAK;EACd;EACA,OAAOA,WAAW,CAACC,UAAU,CAAC,YAAY,CAAC;AAC7C;AAEA,OAAO,SAASC,2BAA2BA,CACzCC,QAA2B,EAC3BC,iBAA0B,EACV;EAChB,OAAO;IACLP,IAAI,EAAE,IAAI;IACVE,MAAM,EAAEI,QAAQ,KAAK,SAAS,GAAGC,iBAAiB,GAAG;EACvD,CAAC;AACH","ignoreList":[]}
|