react-native-nitro-storage 0.4.1 → 0.4.3
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 +39 -0
- package/android/build.gradle +0 -12
- package/android/consumer-rules.pro +26 -4
- package/android/src/main/cpp/AndroidStorageAdapterCpp.cpp +7 -10
- package/android/src/main/cpp/AndroidStorageAdapterCpp.hpp +0 -4
- package/android/src/main/java/com/nitrostorage/AndroidStorageAdapter.kt +172 -77
- package/cpp/bindings/HybridStorage.cpp +120 -69
- package/cpp/bindings/HybridStorage.hpp +4 -0
- package/ios/IOSStorageAdapterCpp.hpp +2 -1
- package/ios/IOSStorageAdapterCpp.mm +264 -49
- package/lib/commonjs/index.js +73 -21
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +120 -42
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/internal.js +51 -23
- package/lib/commonjs/internal.js.map +1 -1
- package/lib/module/index.js +72 -21
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +119 -42
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/internal.js +51 -23
- package/lib/module/internal.js.map +1 -1
- package/lib/typescript/index.d.ts +4 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +5 -1
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/lib/typescript/internal.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +83 -28
- package/src/index.web.ts +135 -50
- package/src/internal.ts +51 -23
package/lib/commonjs/internal.js
CHANGED
|
@@ -17,6 +17,15 @@ var _Storage = require("./Storage.types");
|
|
|
17
17
|
const MIGRATION_VERSION_KEY = exports.MIGRATION_VERSION_KEY = "__nitro_storage_migration_version__";
|
|
18
18
|
const NATIVE_BATCH_MISSING_SENTINEL = exports.NATIVE_BATCH_MISSING_SENTINEL = "__nitro_storage_batch_missing__::v1";
|
|
19
19
|
const PRIMITIVE_FAST_PATH_PREFIX = "__nitro_storage_primitive__:";
|
|
20
|
+
const PRIM_NULL = "__nitro_storage_primitive__:l";
|
|
21
|
+
const PRIM_UNDEFINED = "__nitro_storage_primitive__:u";
|
|
22
|
+
const PRIM_TRUE = "__nitro_storage_primitive__:b:1";
|
|
23
|
+
const PRIM_FALSE = "__nitro_storage_primitive__:b:0";
|
|
24
|
+
const PRIM_STRING_PREFIX = "__nitro_storage_primitive__:s:";
|
|
25
|
+
const PRIM_NUMBER_PREFIX = "__nitro_storage_primitive__:n:";
|
|
26
|
+
const PRIM_INFINITY = "__nitro_storage_primitive__:n:Infinity";
|
|
27
|
+
const PRIM_NEG_INFINITY = "__nitro_storage_primitive__:n:-Infinity";
|
|
28
|
+
const PRIM_NAN = "__nitro_storage_primitive__:n:NaN";
|
|
20
29
|
const NAMESPACE_SEPARATOR = ":";
|
|
21
30
|
const VERSION_TOKEN_PREFIX = "__nitro_storage_version__:";
|
|
22
31
|
function isStoredEnvelope(value) {
|
|
@@ -55,20 +64,29 @@ function isNamespaced(key, namespace) {
|
|
|
55
64
|
}
|
|
56
65
|
function serializeWithPrimitiveFastPath(value) {
|
|
57
66
|
if (value === null) {
|
|
58
|
-
return
|
|
67
|
+
return PRIM_NULL;
|
|
59
68
|
}
|
|
60
69
|
switch (typeof value) {
|
|
61
70
|
case "string":
|
|
62
|
-
return
|
|
71
|
+
return PRIM_STRING_PREFIX + value;
|
|
63
72
|
case "number":
|
|
64
73
|
if (Number.isFinite(value)) {
|
|
65
|
-
return
|
|
74
|
+
return PRIM_NUMBER_PREFIX + String(value);
|
|
75
|
+
}
|
|
76
|
+
if (Number.isNaN(value)) {
|
|
77
|
+
return PRIM_NAN;
|
|
78
|
+
}
|
|
79
|
+
if (value === Infinity) {
|
|
80
|
+
return PRIM_INFINITY;
|
|
81
|
+
}
|
|
82
|
+
if (value === -Infinity) {
|
|
83
|
+
return PRIM_NEG_INFINITY;
|
|
66
84
|
}
|
|
67
85
|
break;
|
|
68
86
|
case "boolean":
|
|
69
|
-
return
|
|
87
|
+
return value ? PRIM_TRUE : PRIM_FALSE;
|
|
70
88
|
case "undefined":
|
|
71
|
-
return
|
|
89
|
+
return PRIM_UNDEFINED;
|
|
72
90
|
default:
|
|
73
91
|
break;
|
|
74
92
|
}
|
|
@@ -78,30 +96,40 @@ function serializeWithPrimitiveFastPath(value) {
|
|
|
78
96
|
}
|
|
79
97
|
return serialized;
|
|
80
98
|
}
|
|
99
|
+
|
|
100
|
+
// charCode constants for fast tag dispatch
|
|
101
|
+
const CHAR_U = 117; // 'u'
|
|
102
|
+
const CHAR_L = 108; // 'l'
|
|
103
|
+
const CHAR_S = 115; // 's'
|
|
104
|
+
const CHAR_B = 98; // 'b'
|
|
105
|
+
const CHAR_N = 110; // 'n'
|
|
106
|
+
|
|
81
107
|
function deserializeWithPrimitiveFastPath(value) {
|
|
82
108
|
if (value.startsWith(PRIMITIVE_FAST_PATH_PREFIX)) {
|
|
83
|
-
const
|
|
84
|
-
|
|
109
|
+
const prefixLen = PRIMITIVE_FAST_PATH_PREFIX.length;
|
|
110
|
+
const tagChar = value.charCodeAt(prefixLen);
|
|
111
|
+
if (tagChar === CHAR_U) {
|
|
85
112
|
return undefined;
|
|
86
113
|
}
|
|
87
|
-
if (
|
|
114
|
+
if (tagChar === CHAR_L) {
|
|
88
115
|
return null;
|
|
89
116
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
117
|
+
|
|
118
|
+
// Tagged values have format: prefix + tag + ':' + payload
|
|
119
|
+
const payload = value.slice(prefixLen + 2);
|
|
120
|
+
if (tagChar === CHAR_S) {
|
|
121
|
+
return payload;
|
|
122
|
+
}
|
|
123
|
+
if (tagChar === CHAR_B) {
|
|
124
|
+
return payload === "1";
|
|
125
|
+
}
|
|
126
|
+
if (tagChar === CHAR_N) {
|
|
127
|
+
if (payload === "NaN") return NaN;
|
|
128
|
+
if (payload === "Infinity") return Infinity;
|
|
129
|
+
if (payload === "-Infinity") return -Infinity;
|
|
130
|
+
const parsed = Number(payload);
|
|
131
|
+
if (Number.isFinite(parsed)) {
|
|
132
|
+
return parsed;
|
|
105
133
|
}
|
|
106
134
|
}
|
|
107
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Storage","require","MIGRATION_VERSION_KEY","exports","NATIVE_BATCH_MISSING_SENTINEL","PRIMITIVE_FAST_PATH_PREFIX","NAMESPACE_SEPARATOR","VERSION_TOKEN_PREFIX","isStoredEnvelope","value","candidate","__nitroStorageEnvelope","expiresAt","payload","assertValidScope","scope","StorageScope","Memory","Disk","Secure","Error","String","assertBatchScope","items","mismatchedItem","find","item","expectedScope","actualScope","key","decodeNativeBatchValue","undefined","prefixKey","namespace","isNamespaced","startsWith","serializeWithPrimitiveFastPath","Number","isFinite","serialized","JSON","stringify","
|
|
1
|
+
{"version":3,"names":["_Storage","require","MIGRATION_VERSION_KEY","exports","NATIVE_BATCH_MISSING_SENTINEL","PRIMITIVE_FAST_PATH_PREFIX","PRIM_NULL","PRIM_UNDEFINED","PRIM_TRUE","PRIM_FALSE","PRIM_STRING_PREFIX","PRIM_NUMBER_PREFIX","PRIM_INFINITY","PRIM_NEG_INFINITY","PRIM_NAN","NAMESPACE_SEPARATOR","VERSION_TOKEN_PREFIX","isStoredEnvelope","value","candidate","__nitroStorageEnvelope","expiresAt","payload","assertValidScope","scope","StorageScope","Memory","Disk","Secure","Error","String","assertBatchScope","items","mismatchedItem","find","item","expectedScope","actualScope","key","decodeNativeBatchValue","undefined","prefixKey","namespace","isNamespaced","startsWith","serializeWithPrimitiveFastPath","Number","isFinite","isNaN","Infinity","serialized","JSON","stringify","CHAR_U","CHAR_L","CHAR_S","CHAR_B","CHAR_N","deserializeWithPrimitiveFastPath","prefixLen","length","tagChar","charCodeAt","slice","NaN","parsed","parse","fnv1aHash","hash","index","Math","imul","toString","padStart","toVersionToken","raw","normalized"],"sourceRoot":"../../src","sources":["internal.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -56,6 +56,9 @@ function recordMetric(operation, scope, durationMs, keysCount = 1) {
|
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
function measureOperation(operation, scope, fn, keysCount = 1) {
|
|
59
|
+
if (!metricsObserver) {
|
|
60
|
+
return fn();
|
|
61
|
+
}
|
|
59
62
|
const start = Date.now();
|
|
60
63
|
try {
|
|
61
64
|
return fn();
|
|
@@ -82,12 +85,19 @@ function clearScopeRawCache(scope) {
|
|
|
82
85
|
getScopeRawCache(scope).clear();
|
|
83
86
|
}
|
|
84
87
|
function notifyKeyListeners(registry, key) {
|
|
85
|
-
registry.get(key)
|
|
88
|
+
const listeners = registry.get(key);
|
|
89
|
+
if (listeners) {
|
|
90
|
+
for (const listener of listeners) {
|
|
91
|
+
listener();
|
|
92
|
+
}
|
|
93
|
+
}
|
|
86
94
|
}
|
|
87
95
|
function notifyAllListeners(registry) {
|
|
88
|
-
registry.
|
|
89
|
-
|
|
90
|
-
|
|
96
|
+
for (const listeners of registry.values()) {
|
|
97
|
+
for (const listener of listeners) {
|
|
98
|
+
listener();
|
|
99
|
+
}
|
|
100
|
+
}
|
|
91
101
|
}
|
|
92
102
|
function addKeyListener(registry, key, listener) {
|
|
93
103
|
let listeners = registry.get(key);
|
|
@@ -294,7 +304,12 @@ export const storage = {
|
|
|
294
304
|
if (scope === StorageScope.Secure) {
|
|
295
305
|
flushSecureWrites();
|
|
296
306
|
}
|
|
297
|
-
|
|
307
|
+
const scopeCache = getScopeRawCache(scope);
|
|
308
|
+
for (const key of scopeCache.keys()) {
|
|
309
|
+
if (isNamespaced(key, namespace)) {
|
|
310
|
+
scopeCache.delete(key);
|
|
311
|
+
}
|
|
312
|
+
}
|
|
298
313
|
getStorageModule().removeByPrefix(keyPrefix, scope);
|
|
299
314
|
});
|
|
300
315
|
},
|
|
@@ -424,10 +439,25 @@ export const storage = {
|
|
|
424
439
|
resetMetrics: () => {
|
|
425
440
|
metricsCounters.clear();
|
|
426
441
|
},
|
|
442
|
+
getString: (key, scope) => {
|
|
443
|
+
return measureOperation("storage:getString", scope, () => {
|
|
444
|
+
return getRawValue(key, scope);
|
|
445
|
+
});
|
|
446
|
+
},
|
|
447
|
+
setString: (key, value, scope) => {
|
|
448
|
+
measureOperation("storage:setString", scope, () => {
|
|
449
|
+
setRawValue(key, value, scope);
|
|
450
|
+
});
|
|
451
|
+
},
|
|
452
|
+
deleteString: (key, scope) => {
|
|
453
|
+
measureOperation("storage:deleteString", scope, () => {
|
|
454
|
+
removeRawValue(key, scope);
|
|
455
|
+
});
|
|
456
|
+
},
|
|
427
457
|
import: (data, scope) => {
|
|
458
|
+
const keys = Object.keys(data);
|
|
428
459
|
measureOperation("storage:import", scope, () => {
|
|
429
460
|
assertValidScope(scope);
|
|
430
|
-
const keys = Object.keys(data);
|
|
431
461
|
if (keys.length === 0) return;
|
|
432
462
|
const values = keys.map(k => data[k]);
|
|
433
463
|
if (scope === StorageScope.Memory) {
|
|
@@ -443,7 +473,7 @@ export const storage = {
|
|
|
443
473
|
}
|
|
444
474
|
getStorageModule().setBatch(keys, values, scope);
|
|
445
475
|
keys.forEach((key, index) => cacheRawValue(scope, key, values[index]));
|
|
446
|
-
},
|
|
476
|
+
}, keys.length);
|
|
447
477
|
}
|
|
448
478
|
};
|
|
449
479
|
export function setWebSecureStorageBackend(_backend) {
|
|
@@ -526,12 +556,17 @@ export function createStorageItem(config) {
|
|
|
526
556
|
}
|
|
527
557
|
return memoryStore.get(storageKey);
|
|
528
558
|
}
|
|
529
|
-
if (nonMemoryScope === StorageScope.Secure && !isBiometric
|
|
530
|
-
|
|
559
|
+
if (nonMemoryScope === StorageScope.Secure && !isBiometric) {
|
|
560
|
+
const pending = pendingSecureWrites.get(storageKey);
|
|
561
|
+
if (pending !== undefined) {
|
|
562
|
+
return pending.value;
|
|
563
|
+
}
|
|
531
564
|
}
|
|
532
565
|
if (readCache) {
|
|
533
|
-
|
|
534
|
-
|
|
566
|
+
const cache = getScopeRawCache(nonMemoryScope);
|
|
567
|
+
const cached = cache.get(storageKey);
|
|
568
|
+
if (cached !== undefined || cache.has(storageKey)) {
|
|
569
|
+
return cached;
|
|
535
570
|
}
|
|
536
571
|
}
|
|
537
572
|
if (isBiometric) {
|
|
@@ -691,10 +726,10 @@ export function createStorageItem(config) {
|
|
|
691
726
|
const set = valueOrFn => {
|
|
692
727
|
measureOperation("item:set", config.scope, () => {
|
|
693
728
|
const newValue = isUpdater(valueOrFn) ? valueOrFn(getInternal()) : valueOrFn;
|
|
694
|
-
invalidateParsedCache();
|
|
695
729
|
if (validate && !validate(newValue)) {
|
|
696
730
|
throw new Error(`Validation failed for key "${storageKey}" in scope "${StorageScope[config.scope]}".`);
|
|
697
731
|
}
|
|
732
|
+
invalidateParsedCache();
|
|
698
733
|
writeValueWithoutValidation(newValue);
|
|
699
734
|
});
|
|
700
735
|
};
|
|
@@ -786,14 +821,17 @@ export function getBatch(items, scope) {
|
|
|
786
821
|
const keyIndexes = [];
|
|
787
822
|
items.forEach((item, index) => {
|
|
788
823
|
if (scope === StorageScope.Secure) {
|
|
789
|
-
|
|
790
|
-
|
|
824
|
+
const pending = pendingSecureWrites.get(item.key);
|
|
825
|
+
if (pending !== undefined) {
|
|
826
|
+
rawValues[index] = pending.value;
|
|
791
827
|
return;
|
|
792
828
|
}
|
|
793
829
|
}
|
|
794
830
|
if (item._readCacheEnabled === true) {
|
|
795
|
-
|
|
796
|
-
|
|
831
|
+
const cache = getScopeRawCache(scope);
|
|
832
|
+
const cached = cache.get(item.key);
|
|
833
|
+
if (cached !== undefined || cache.has(item.key)) {
|
|
834
|
+
rawValues[index] = cached;
|
|
797
835
|
return;
|
|
798
836
|
}
|
|
799
837
|
}
|
|
@@ -958,9 +996,11 @@ export function migrateToLatest(scope = StorageScope.Disk) {
|
|
|
958
996
|
return;
|
|
959
997
|
}
|
|
960
998
|
migration(context);
|
|
961
|
-
writeMigrationVersion(scope, version);
|
|
962
999
|
appliedVersion = version;
|
|
963
1000
|
});
|
|
1001
|
+
if (appliedVersion !== currentVersion) {
|
|
1002
|
+
writeMigrationVersion(scope, appliedVersion);
|
|
1003
|
+
}
|
|
964
1004
|
return appliedVersion;
|
|
965
1005
|
});
|
|
966
1006
|
}
|
|
@@ -970,12 +1010,17 @@ export function runTransaction(scope, transaction) {
|
|
|
970
1010
|
if (scope === StorageScope.Secure) {
|
|
971
1011
|
flushSecureWrites();
|
|
972
1012
|
}
|
|
1013
|
+
const NOT_SET = Symbol();
|
|
973
1014
|
const rollback = new Map();
|
|
974
1015
|
const rememberRollback = key => {
|
|
975
1016
|
if (rollback.has(key)) {
|
|
976
1017
|
return;
|
|
977
1018
|
}
|
|
978
|
-
|
|
1019
|
+
if (scope === StorageScope.Memory) {
|
|
1020
|
+
rollback.set(key, memoryStore.has(key) ? memoryStore.get(key) : NOT_SET);
|
|
1021
|
+
} else {
|
|
1022
|
+
rollback.set(key, getRawValue(key, scope));
|
|
1023
|
+
}
|
|
979
1024
|
};
|
|
980
1025
|
const tx = {
|
|
981
1026
|
scope,
|
|
@@ -1009,11 +1054,12 @@ export function runTransaction(scope, transaction) {
|
|
|
1009
1054
|
const rollbackEntries = Array.from(rollback.entries()).reverse();
|
|
1010
1055
|
if (scope === StorageScope.Memory) {
|
|
1011
1056
|
rollbackEntries.forEach(([key, previousValue]) => {
|
|
1012
|
-
if (previousValue ===
|
|
1013
|
-
|
|
1057
|
+
if (previousValue === NOT_SET) {
|
|
1058
|
+
memoryStore.delete(key);
|
|
1014
1059
|
} else {
|
|
1015
|
-
|
|
1060
|
+
memoryStore.set(key, previousValue);
|
|
1016
1061
|
}
|
|
1062
|
+
notifyKeyListeners(memoryListeners, key);
|
|
1017
1063
|
});
|
|
1018
1064
|
} else {
|
|
1019
1065
|
const keysToSet = [];
|
|
@@ -1043,6 +1089,11 @@ export function runTransaction(scope, transaction) {
|
|
|
1043
1089
|
}
|
|
1044
1090
|
});
|
|
1045
1091
|
}
|
|
1092
|
+
export function isKeychainLockedError(err) {
|
|
1093
|
+
if (!(err instanceof Error)) return false;
|
|
1094
|
+
const msg = err.message;
|
|
1095
|
+
return msg.includes("errSecInteractionNotAllowed") || msg.includes("UserNotAuthenticatedException") || msg.includes("KeyStoreException") || msg.includes("KeyPermanentlyInvalidatedException") || msg.includes("InvalidKeyException") || msg.includes("android.security.keystore");
|
|
1096
|
+
}
|
|
1046
1097
|
export function createSecureAuthStorage(config, options) {
|
|
1047
1098
|
const ns = options?.namespace ?? "auth";
|
|
1048
1099
|
const result = {};
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NitroModules","StorageScope","AccessControl","BiometricLevel","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","decodeNativeBatchValue","serializeWithPrimitiveFastPath","deserializeWithPrimitiveFastPath","toVersionToken","prefixKey","isNamespaced","migrateFromMMKV","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","_storageModule","getStorageModule","createHybridObject","memoryStore","memoryListeners","scopedListeners","Disk","Secure","scopedUnsubscribers","scopedRawCache","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","WhenUnlocked","metricsObserver","metricsCounters","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","Date","now","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","forEach","listener","notifyAllListeners","listeners","addKeyListener","Set","add","delete","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","values","groupedSetWrites","keysToRemove","accessControl","undefined","push","resolvedAccessControl","existingGroup","group","storageModule","setSecureAccessControl","setBatch","length","removeBatch","scheduleSecureWrite","pendingWrite","ensureNativeScopeSubscription","unsubscribe","addOnChange","maybeCleanupNativeScopeSubscription","getRawValue","Memory","setRawValue","removeRawValue","remove","readMigrationVersion","raw","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","storage","clearAll","clearNamespace","namespace","keyPrefix","removeByPrefix","clearBiometric","clearSecureBiometric","getAllKeys","getKeysByPrefix","prefix","filter","startsWith","getByPrefix","result","getBatch","idx","getAll","val","setAccessControl","level","setSecureWritesAsync","enabled","setKeychainAccessGroup","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","import","data","map","k","index","setWebSecureStorageBackend","_backend","getWebSecureStorageBackend","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","defaultDeserialize","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","defaultValue","nonMemoryScope","Error","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","getSecureBiometric","writeStoredRaw","rawValue","setSecureBiometricWithLevel","removeStoredRaw","deleteSecureBiometric","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","getCurrentVersion","getWithVersion","newValue","setIfVersion","currentVersion","deleteItem","hasItem","hasSecureBiometric","subscribe","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_readCacheEnabled","_defaultValue","useStorage","useStorageSelector","useSetStorage","createIndexedDBBackend","items","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","rollback","rememberRollback","tx","getItem","setItem","removeItem","error","rollbackEntries","entries","reverse","previousValue","keysToSet","valuesToSet","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["NitroModules","StorageScope","AccessControl","BiometricLevel","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","decodeNativeBatchValue","serializeWithPrimitiveFastPath","deserializeWithPrimitiveFastPath","toVersionToken","prefixKey","isNamespaced","migrateFromMMKV","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","_storageModule","getStorageModule","createHybridObject","memoryStore","memoryListeners","scopedListeners","Disk","Secure","scopedUnsubscribers","scopedRawCache","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","WhenUnlocked","metricsObserver","metricsCounters","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","Date","now","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","listeners","listener","notifyAllListeners","values","addKeyListener","Set","add","delete","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","groupedSetWrites","keysToRemove","forEach","accessControl","undefined","push","resolvedAccessControl","existingGroup","group","storageModule","setSecureAccessControl","setBatch","length","removeBatch","scheduleSecureWrite","pendingWrite","ensureNativeScopeSubscription","unsubscribe","addOnChange","maybeCleanupNativeScopeSubscription","getRawValue","Memory","setRawValue","removeRawValue","remove","readMigrationVersion","raw","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","storage","clearAll","clearNamespace","namespace","keyPrefix","scopeCache","removeByPrefix","clearBiometric","clearSecureBiometric","getAllKeys","getKeysByPrefix","prefix","filter","startsWith","getByPrefix","result","getBatch","idx","getAll","val","setAccessControl","level","setSecureWritesAsync","enabled","setKeychainAccessGroup","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getString","setString","deleteString","import","data","map","k","index","setWebSecureStorageBackend","_backend","getWebSecureStorageBackend","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","defaultDeserialize","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","defaultValue","nonMemoryScope","Error","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","pending","cache","cached","getSecureBiometric","writeStoredRaw","rawValue","setSecureBiometricWithLevel","removeStoredRaw","deleteSecureBiometric","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","getCurrentVersion","getWithVersion","newValue","setIfVersion","currentVersion","deleteItem","hasItem","hasSecureBiometric","subscribe","storageItem","_triggerListeners","_invalidateParsedCacheOnly","_readCacheEnabled","_defaultValue","useStorage","useStorageSelector","useSetStorage","createIndexedDBBackend","items","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","getItem","setItem","removeItem","error","rollbackEntries","entries","reverse","previousValue","keysToSet","valuesToSet","isKeychainLockedError","err","msg","message","includes","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|