react-native-nitro-storage 0.4.5 → 0.5.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/README.md +235 -960
- package/SECURITY.md +26 -0
- package/docs/api-reference.md +217 -0
- package/docs/batch-transactions-migrations.md +186 -0
- package/docs/benchmarks.md +37 -0
- package/docs/mmkv-migration.md +80 -0
- package/docs/react-hooks.md +113 -0
- package/docs/recipes.md +281 -0
- package/docs/secure-storage.md +171 -0
- package/docs/web-backends.md +141 -0
- package/lib/commonjs/index.js +51 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +54 -0
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/storage-runtime.js.map +1 -1
- package/lib/module/index.js +51 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +54 -0
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/storage-runtime.js.map +1 -1
- package/lib/typescript/index.d.ts +5 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +5 -2
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/lib/typescript/storage-runtime.d.ts +32 -0
- package/lib/typescript/storage-runtime.d.ts.map +1 -1
- package/package.json +21 -8
- package/src/index.ts +67 -1
- package/src/index.web.ts +76 -0
- package/src/storage-runtime.ts +35 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_Storage","_internal","_storageRuntime","_migration","_storageHooks","_indexeddbBackend","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","now","performance","Date","_storageModule","getStorageModule","NitroModules","createHybridObject","memoryStore","memoryListeners","scopedListeners","StorageScope","Disk","Secure","scopedUnsubscribers","scopedRawCache","pendingDiskWrites","diskFlushScheduled","diskWritesAsync","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","AccessControl","WhenUnlocked","metricsObserver","metricsCounters","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","listeners","listener","notifyAllListeners","values","addKeyListener","Set","add","delete","size","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","writes","Array","from","keysToSet","valuesToSet","keysToRemove","forEach","undefined","push","storageModule","length","setBatch","removeBatch","flushSecureWrites","groupedSetWrites","accessControl","resolvedAccessControl","existingGroup","group","setSecureAccessControl","scheduleDiskWrite","scheduleSecureWrite","pendingWrite","ensureNativeScopeSubscription","unsubscribe","addOnChange","maybeCleanupNativeScopeSubscription","getRawValue","assertValidScope","Memory","setRawValue","removeRawValue","remove","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","storage","exports","clearAll","clearNamespace","namespace","isNamespaced","keyPrefix","prefixKey","scopeCache","removeByPrefix","clearBiometric","clearSecureBiometric","getAllKeys","getKeysByPrefix","prefix","filter","startsWith","getByPrefix","result","getBatch","idx","decodeNativeBatchValue","getAll","val","setAccessControl","level","setSecureWritesAsync","enabled","setDiskWritesAsync","setKeychainAccessGroup","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getCapabilities","platform","backend","disk","secure","writeBuffering","errorClassification","getString","setString","deleteString","import","data","map","k","index","setWebSecureStorageBackend","_backend","getWebSecureStorageBackend","setWebDiskStorageBackend","getWebDiskStorageBackend","flushWebStorageBackends","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometricLevel","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","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","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","newValue","setIfVersion","currentVersion","deleteItem","hasItem","hasSecureBiometric","subscribe","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","getItem","setItem","removeItem","error","rollbackEntries","entries","reverse","previousValue","isKeychainLockedError","err","isLockedStorageErrorCode","getStorageErrorCode","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_Storage","_internal","_storageRuntime","_migration","_storageHooks","_indexeddbBackend","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","now","performance","Date","_storageModule","getStorageModule","NitroModules","createHybridObject","memoryStore","memoryListeners","scopedListeners","StorageScope","Disk","Secure","scopedUnsubscribers","scopedRawCache","pendingDiskWrites","diskFlushScheduled","diskWritesAsync","pendingSecureWrites","secureFlushScheduled","secureDefaultAccessControl","AccessControl","WhenUnlocked","metricsObserver","metricsCounters","nativeSecureBackend","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","getScopedListeners","getScopeRawCache","cacheRawValue","key","value","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","listeners","listener","notifyAllListeners","values","addKeyListener","Set","add","delete","size","readPendingSecureWrite","readPendingDiskWrite","hasPendingDiskWrite","hasPendingSecureWrite","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","writes","Array","from","keysToSet","valuesToSet","keysToRemove","forEach","undefined","push","storageModule","length","setBatch","removeBatch","flushSecureWrites","groupedSetWrites","accessControl","resolvedAccessControl","existingGroup","group","setSecureAccessControl","scheduleDiskWrite","scheduleSecureWrite","pendingWrite","ensureNativeScopeSubscription","unsubscribe","addOnChange","maybeCleanupNativeScopeSubscription","getRawValue","assertValidScope","Memory","setRawValue","removeRawValue","remove","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","storage","exports","clearAll","clearNamespace","namespace","isNamespaced","keyPrefix","prefixKey","scopeCache","removeByPrefix","clearBiometric","clearSecureBiometric","getAllKeys","getKeysByPrefix","prefix","filter","startsWith","getByPrefix","result","getBatch","idx","decodeNativeBatchValue","getAll","val","setAccessControl","level","setSecureWritesAsync","enabled","setDiskWritesAsync","setKeychainAccessGroup","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","getCapabilities","platform","backend","disk","secure","writeBuffering","errorClassification","getSecurityCapabilities","secureStorage","encrypted","keychainAccessGroup","hardwareBacked","biometric","prompt","biometryOnly","biometryOrPasscode","metadata","perKey","listsWithoutValues","persistsTimestamps","getSecureMetadata","biometricProtected","hasSecureBiometric","exists","kind","valueExposed","getAllSecureMetadata","map","getString","setString","deleteString","import","data","k","index","setWebSecureStorageBackend","_backend","getWebSecureStorageBackend","setWebDiskStorageBackend","getWebDiskStorageBackend","flushWebStorageBackends","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","BiometricLevel","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceDiskWrites","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","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","newValue","setIfVersion","currentVersion","deleteItem","hasItem","subscribe","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","getItem","setItem","removeItem","error","rollbackEntries","entries","reverse","previousValue","isKeychainLockedError","err","isLockedStorageErrorCode","getStorageErrorCode","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -161,6 +161,9 @@ function getBackendName(scope, backend) {
|
|
|
161
161
|
const scopeName = scope === _Storage.StorageScope.Disk ? "disk" : "secure";
|
|
162
162
|
return backend?.name ?? `web:${scopeName}`;
|
|
163
163
|
}
|
|
164
|
+
function getWebSecureEncryptionStatus(backend) {
|
|
165
|
+
return backend?.name === "localStorage:secure" ? "unavailable" : "unknown";
|
|
166
|
+
}
|
|
164
167
|
function createWebStorageError(scope, operation, error, backend) {
|
|
165
168
|
const backendName = getBackendName(scope, backend);
|
|
166
169
|
const message = error instanceof Error ? error.message : String(error ?? "Unknown error");
|
|
@@ -987,6 +990,57 @@ const storage = exports.storage = {
|
|
|
987
990
|
},
|
|
988
991
|
errorClassification: true
|
|
989
992
|
}),
|
|
993
|
+
getSecurityCapabilities: () => {
|
|
994
|
+
const secureBackend = getBackendName(_Storage.StorageScope.Secure, webSecureStorageBackend);
|
|
995
|
+
return {
|
|
996
|
+
platform: "web",
|
|
997
|
+
secureStorage: {
|
|
998
|
+
backend: secureBackend,
|
|
999
|
+
encrypted: getWebSecureEncryptionStatus(webSecureStorageBackend),
|
|
1000
|
+
accessControl: "unavailable",
|
|
1001
|
+
keychainAccessGroup: "unavailable",
|
|
1002
|
+
hardwareBacked: "unavailable"
|
|
1003
|
+
},
|
|
1004
|
+
biometric: {
|
|
1005
|
+
storage: "unavailable",
|
|
1006
|
+
prompt: "unavailable",
|
|
1007
|
+
biometryOnly: "unavailable",
|
|
1008
|
+
biometryOrPasscode: "unavailable"
|
|
1009
|
+
},
|
|
1010
|
+
metadata: {
|
|
1011
|
+
perKey: true,
|
|
1012
|
+
listsWithoutValues: true,
|
|
1013
|
+
persistsTimestamps: false
|
|
1014
|
+
}
|
|
1015
|
+
};
|
|
1016
|
+
},
|
|
1017
|
+
getSecureMetadata: key => {
|
|
1018
|
+
return measureOperation("storage:getSecureMetadata", _Storage.StorageScope.Secure, () => {
|
|
1019
|
+
flushSecureWrites();
|
|
1020
|
+
const biometricProtected = WebStorage.hasSecureBiometric(key);
|
|
1021
|
+
const exists = biometricProtected || WebStorage.has(key, _Storage.StorageScope.Secure);
|
|
1022
|
+
let kind = "missing";
|
|
1023
|
+
if (exists) {
|
|
1024
|
+
kind = biometricProtected ? "biometric" : "secure";
|
|
1025
|
+
}
|
|
1026
|
+
return {
|
|
1027
|
+
key,
|
|
1028
|
+
exists,
|
|
1029
|
+
kind,
|
|
1030
|
+
backend: getBackendName(_Storage.StorageScope.Secure, webSecureStorageBackend),
|
|
1031
|
+
encrypted: getWebSecureEncryptionStatus(webSecureStorageBackend),
|
|
1032
|
+
hardwareBacked: "unavailable",
|
|
1033
|
+
biometricProtected,
|
|
1034
|
+
valueExposed: false
|
|
1035
|
+
};
|
|
1036
|
+
});
|
|
1037
|
+
},
|
|
1038
|
+
getAllSecureMetadata: () => {
|
|
1039
|
+
return measureOperation("storage:getAllSecureMetadata", _Storage.StorageScope.Secure, () => {
|
|
1040
|
+
flushSecureWrites();
|
|
1041
|
+
return WebStorage.getAllKeys(_Storage.StorageScope.Secure).map(key => storage.getSecureMetadata(key));
|
|
1042
|
+
});
|
|
1043
|
+
},
|
|
990
1044
|
getString: (key, scope) => {
|
|
991
1045
|
return measureOperation("storage:getString", scope, () => {
|
|
992
1046
|
return getRawValue(key, scope);
|