react-native-nitro-storage 0.5.0 → 0.5.1
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/README.md +40 -6
- package/docs/api-reference.md +95 -31
- package/docs/batch-transactions-migrations.md +23 -9
- package/docs/recipes.md +30 -9
- package/docs/secure-storage.md +19 -0
- package/lib/commonjs/index.js +214 -13
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +166 -11
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/storage-events.js +117 -0
- package/lib/commonjs/storage-events.js.map +1 -0
- package/lib/module/index.js +214 -13
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +166 -11
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/storage-events.js +112 -0
- package/lib/module/storage-events.js.map +1 -0
- package/lib/typescript/index.d.ts +14 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +14 -0
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/lib/typescript/storage-events.d.ts +37 -0
- package/lib/typescript/storage-events.d.ts.map +1 -0
- package/package.json +5 -4
- package/src/index.ts +534 -13
- package/src/index.web.ts +459 -22
- package/src/storage-events.ts +184 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Storage","require","_internal","_webStorageBackend","_storageRuntime","_migration","_storageHooks","_indexeddbBackend","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","now","performance","Date","memoryStore","memoryListeners","webScopeListeners","StorageScope","Disk","Secure","scopedRawCache","webScopeKeyIndex","Set","hydratedWebScopeKeyIndex","pendingDiskWrites","diskFlushScheduled","diskWritesAsync","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","AccessControl","WhenUnlocked","SECURE_WEB_PREFIX","BIOMETRIC_WEB_PREFIX","hasWarnedAboutWebBiometricFallback","hasWindowStorageEventSubscription","metricsObserver","metricsCounters","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","createDefaultDiskBackend","createLocalStorageWebBackend","name","includeKey","key","startsWith","createDefaultSecureBackend","webDiskStorageBackend","webSecureStorageBackend","externalSyncUnsubscribers","getBackendName","backend","scopeName","getWebSecureEncryptionStatus","createWebStorageError","error","backendName","message","Error","String","withWebBackendOperation","ensureExternalSyncSubscriptions","getWebBackend","toSecureStorageKey","fromSecureStorageKey","slice","length","toBiometricStorageKey","fromBiometricStorageKey","getWebScopeKeyIndex","hydrateWebScopeKeyIndex","has","keyIndex","clear","getAllKeys","add","ensureWebScopeKeyIndex","applyExternalChangeEvent","newValue","clearScopeRawCache","notifyAllListeners","getScopedListeners","plainKey","delete","cacheRawValue","undefined","notifyKeyListeners","getItem","handleWebStorageEvent","event","subscribeToBackendChanges","subscribe","unsubscribe","resetBackendChangeSubscription","window","addEventListener","getScopeRawCache","value","readCachedRawValue","hasCachedRawValue","registry","listeners","listener","values","addKeyListener","scopedListeners","size","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","writes","Array","from","keysToSet","valuesToSet","keysToRemove","forEach","push","WebStorage","setBatch","removeBatch","flushSecureWrites","groupedSetWrites","accessControl","resolvedAccessControl","existingGroup","group","setSecureAccessControl","scheduleDiskWrite","scheduleSecureWrite","pendingWrite","equals","other","dispose","storageKey","setItem","remove","removeMany","removeItem","entries","index","setMany","getBatch","map","storageKeys","getMany","flatMap","removeByPrefix","prefix","filter","addOnChange","_scope","_callback","getKeysByPrefix","setSecureWritesAsync","_enabled","setKeychainAccessGroup","setSecureBiometric","setSecureBiometricWithLevel","BiometricLevel","BiometryOnly","_level","__DEV__","console","warn","getSecureBiometric","deleteSecureBiometric","hasSecureBiometric","clearSecureBiometric","keysToNotify","biometricKeys","getRawValue","assertValidScope","Memory","setRawValue","removeRawValue","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","storage","exports","clearAll","clearNamespace","namespace","isNamespaced","keyPrefix","prefixKey","scopeCache","clearBiometric","getByPrefix","result","getAll","val","setAccessControl","level","setDiskWritesAsync","enabled","_group","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getCapabilities","platform","disk","secure","writeBuffering","errorClassification","getSecurityCapabilities","secureBackend","secureStorage","encrypted","keychainAccessGroup","hardwareBacked","biometric","prompt","biometryOnly","biometryOrPasscode","metadata","perKey","listsWithoutValues","persistsTimestamps","getSecureMetadata","biometricProtected","exists","kind","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","setWebSecureStorageBackend","getWebSecureStorageBackend","setWebDiskStorageBackend","getWebDiskStorageBackend","flushWebStorageBackends","flushes","diskFlush","flush","secureFlush","all","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","pending","cache","cached","writeStoredRaw","rawValue","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","setIfVersion","currentVersion","deleteItem","hasItem","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_readCacheEnabled","_defaultValue","items","assertBatchScope","useRawBatchPath","every","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","needsIndividualSets","some","internal","secureEntries","canUseSecureBatchPath","groupedByAccessControl","entry","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","NOT_SET","Symbol","rollback","rememberRollback","tx","rollbackEntries","reverse","previousValue","createSecureAuthStorage","options","ns","itemConfig","expirationConfig","isKeychainLockedError","err","isLockedStorageErrorCode","getStorageErrorCode"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_Storage","require","_internal","_webStorageBackend","_storageRuntime","_storageEvents","_migration","_storageHooks","_indexeddbBackend","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","now","performance","Date","memoryStore","memoryListeners","webScopeListeners","StorageScope","Disk","Secure","scopedRawCache","webScopeKeyIndex","Set","hydratedWebScopeKeyIndex","pendingDiskWrites","diskFlushScheduled","diskWritesAsync","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","AccessControl","WhenUnlocked","SECURE_WEB_PREFIX","BIOMETRIC_WEB_PREFIX","hasWarnedAboutWebBiometricFallback","hasWindowStorageEventSubscription","metricsObserver","eventObserver","metricsCounters","storageEvents","StorageEventRegistry","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","createDefaultDiskBackend","createLocalStorageWebBackend","name","includeKey","key","startsWith","createDefaultSecureBackend","webDiskStorageBackend","webSecureStorageBackend","externalSyncUnsubscribers","getBackendName","backend","scopeName","getWebSecureEncryptionStatus","createWebStorageError","error","backendName","message","Error","String","withWebBackendOperation","ensureExternalSyncSubscriptions","getWebBackend","toSecureStorageKey","fromSecureStorageKey","slice","length","toBiometricStorageKey","fromBiometricStorageKey","getWebScopeKeyIndex","hydrateWebScopeKeyIndex","has","keyIndex","clear","getAllKeys","add","ensureWebScopeKeyIndex","applyExternalChangeEvent","newValue","clearScopeRawCache","notifyAllListeners","getScopedListeners","plainKey","oldValue","readCachedRawValue","delete","cacheRawValue","undefined","notifyKeyListeners","emitKeyChange","getItem","handleWebStorageEvent","event","subscribeToBackendChanges","subscribe","unsubscribe","resetBackendChangeSubscription","window","addEventListener","getScopeRawCache","value","hasCachedRawValue","registry","listeners","listener","values","addKeyListener","scopedListeners","size","getEventRawValue","Memory","getRawValue","createKeyChange","source","type","hasStorageChangeObservers","hasListeners","emitKey","emitBatchChange","changes","emitBatch","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","writes","Array","from","keysToSet","valuesToSet","keysToRemove","forEach","push","WebStorage","setBatch","removeBatch","flushSecureWrites","groupedSetWrites","accessControl","resolvedAccessControl","existingGroup","group","setSecureAccessControl","scheduleDiskWrite","scheduleSecureWrite","pendingWrite","equals","other","dispose","storageKey","setItem","remove","removeMany","removeItem","entries","index","setMany","getBatch","map","storageKeys","getMany","flatMap","removeByPrefix","prefix","filter","addOnChange","_scope","_callback","getKeysByPrefix","setSecureWritesAsync","_enabled","setKeychainAccessGroup","setSecureBiometric","setSecureBiometricWithLevel","BiometricLevel","BiometryOnly","_level","__DEV__","console","warn","getSecureBiometric","deleteSecureBiometric","hasSecureBiometric","clearSecureBiometric","keysToNotify","biometricKeys","assertValidScope","setRawValue","removeRawValue","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","storage","exports","subscribeKey","subscribePrefix","subscribeNamespace","namespace","prefixKey","setEventObserver","observer","previousValues","getAll","clearAll","clearNamespace","affectedKeys","isNamespaced","keyPrefix","getByPrefix","scopeCache","clearBiometric","result","val","export","setAccessControl","level","setDiskWritesAsync","enabled","_group","setMetricsObserver","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getCapabilities","platform","disk","secure","writeBuffering","errorClassification","getSecurityCapabilities","secureBackend","secureStorage","encrypted","keychainAccessGroup","hardwareBacked","biometric","prompt","biometryOnly","biometryOrPasscode","metadata","perKey","listsWithoutValues","persistsTimestamps","getSecureMetadata","biometricProtected","exists","kind","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","setWebSecureStorageBackend","getWebSecureStorageBackend","setWebDiskStorageBackend","getWebDiskStorageBackend","flushWebStorageBackends","flushes","diskFlush","flush","secureFlush","all","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","pending","cache","cached","writeStoredRaw","rawValue","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","setIfVersion","currentVersion","deleteItem","hasItem","subscribeSelector","selector","options","isEqual","is","currentValue","fireImmediately","nextValue","previousValue","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_readCacheEnabled","_defaultValue","items","assertBatchScope","useRawBatchPath","every","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","rollbackEntries","reverse","createSecureAuthStorage","ns","itemConfig","expirationConfig","isKeychainLockedError","err","isLockedStorageErrorCode","getStorageErrorCode"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StorageEventRegistry = void 0;
|
|
7
|
+
function addListener(registry, scope, listener) {
|
|
8
|
+
let listeners = registry.get(scope);
|
|
9
|
+
if (!listeners) {
|
|
10
|
+
listeners = new Set();
|
|
11
|
+
registry.set(scope, listeners);
|
|
12
|
+
}
|
|
13
|
+
listeners.add(listener);
|
|
14
|
+
return () => {
|
|
15
|
+
const scopedListeners = registry.get(scope);
|
|
16
|
+
if (!scopedListeners) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
scopedListeners.delete(listener);
|
|
20
|
+
if (scopedListeners.size === 0) {
|
|
21
|
+
registry.delete(scope);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
class StorageEventRegistry {
|
|
26
|
+
scopeListeners = new Map();
|
|
27
|
+
keyListeners = new Map();
|
|
28
|
+
prefixListeners = new Map();
|
|
29
|
+
subscribe(scope, listener) {
|
|
30
|
+
return addListener(this.scopeListeners, scope, listener);
|
|
31
|
+
}
|
|
32
|
+
hasListeners(scope) {
|
|
33
|
+
return (this.scopeListeners.get(scope)?.size ?? 0) > 0 || (this.keyListeners.get(scope)?.size ?? 0) > 0 || (this.prefixListeners.get(scope)?.size ?? 0) > 0;
|
|
34
|
+
}
|
|
35
|
+
subscribeKey(scope, key, listener) {
|
|
36
|
+
let scopedListeners = this.keyListeners.get(scope);
|
|
37
|
+
if (!scopedListeners) {
|
|
38
|
+
scopedListeners = new Map();
|
|
39
|
+
this.keyListeners.set(scope, scopedListeners);
|
|
40
|
+
}
|
|
41
|
+
let keyListeners = scopedListeners.get(key);
|
|
42
|
+
if (!keyListeners) {
|
|
43
|
+
keyListeners = new Set();
|
|
44
|
+
scopedListeners.set(key, keyListeners);
|
|
45
|
+
}
|
|
46
|
+
keyListeners.add(listener);
|
|
47
|
+
return () => {
|
|
48
|
+
const currentScopedListeners = this.keyListeners.get(scope);
|
|
49
|
+
const currentKeyListeners = currentScopedListeners?.get(key);
|
|
50
|
+
if (!currentKeyListeners) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
currentKeyListeners.delete(listener);
|
|
54
|
+
if (currentKeyListeners.size === 0) {
|
|
55
|
+
currentScopedListeners?.delete(key);
|
|
56
|
+
}
|
|
57
|
+
if (currentScopedListeners?.size === 0) {
|
|
58
|
+
this.keyListeners.delete(scope);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
subscribePrefix(scope, prefix, listener) {
|
|
63
|
+
const entry = {
|
|
64
|
+
prefix,
|
|
65
|
+
listener
|
|
66
|
+
};
|
|
67
|
+
return addListener(this.prefixListeners, scope, entry);
|
|
68
|
+
}
|
|
69
|
+
emitKey(event) {
|
|
70
|
+
this.emitToScope(event);
|
|
71
|
+
this.emitToKey(event);
|
|
72
|
+
this.emitToPrefixes(event);
|
|
73
|
+
}
|
|
74
|
+
emitBatch(event) {
|
|
75
|
+
this.emitToScope(event);
|
|
76
|
+
event.changes.forEach(change => {
|
|
77
|
+
this.emitToKey(change);
|
|
78
|
+
});
|
|
79
|
+
this.emitBatchToPrefixes(event);
|
|
80
|
+
}
|
|
81
|
+
emitToScope(event) {
|
|
82
|
+
this.scopeListeners.get(event.scope)?.forEach(listener => {
|
|
83
|
+
listener(event);
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
emitToKey(event) {
|
|
87
|
+
this.keyListeners.get(event.scope)?.get(event.key)?.forEach(listener => {
|
|
88
|
+
listener(event);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
emitToPrefixes(event) {
|
|
92
|
+
this.prefixListeners.get(event.scope)?.forEach(({
|
|
93
|
+
prefix,
|
|
94
|
+
listener
|
|
95
|
+
}) => {
|
|
96
|
+
if (event.key.startsWith(prefix)) {
|
|
97
|
+
listener(event);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
emitBatchToPrefixes(event) {
|
|
102
|
+
this.prefixListeners.get(event.scope)?.forEach(({
|
|
103
|
+
prefix,
|
|
104
|
+
listener
|
|
105
|
+
}) => {
|
|
106
|
+
const changes = event.changes.filter(change => change.key.startsWith(prefix));
|
|
107
|
+
if (changes.length > 0) {
|
|
108
|
+
listener({
|
|
109
|
+
...event,
|
|
110
|
+
changes
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
exports.StorageEventRegistry = StorageEventRegistry;
|
|
117
|
+
//# sourceMappingURL=storage-events.js.map
|
|
@@ -0,0 +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":"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","ignoreList":[]}
|