react-native-nitro-storage 0.3.0 → 0.3.2

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.
Files changed (53) hide show
  1. package/README.md +594 -247
  2. package/android/CMakeLists.txt +2 -0
  3. package/android/src/main/cpp/AndroidStorageAdapterCpp.cpp +102 -11
  4. package/android/src/main/cpp/AndroidStorageAdapterCpp.hpp +16 -0
  5. package/android/src/main/java/com/nitrostorage/AndroidStorageAdapter.kt +154 -34
  6. package/android/src/main/java/com/nitrostorage/NitroStoragePackage.kt +2 -2
  7. package/cpp/bindings/HybridStorage.cpp +176 -21
  8. package/cpp/bindings/HybridStorage.hpp +29 -2
  9. package/cpp/core/NativeStorageAdapter.hpp +16 -0
  10. package/ios/IOSStorageAdapterCpp.hpp +20 -0
  11. package/ios/IOSStorageAdapterCpp.mm +239 -32
  12. package/lib/commonjs/Storage.types.js +23 -1
  13. package/lib/commonjs/Storage.types.js.map +1 -1
  14. package/lib/commonjs/index.js +292 -75
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/commonjs/index.web.js +473 -86
  17. package/lib/commonjs/index.web.js.map +1 -1
  18. package/lib/commonjs/internal.js +10 -0
  19. package/lib/commonjs/internal.js.map +1 -1
  20. package/lib/commonjs/storage-hooks.js +36 -0
  21. package/lib/commonjs/storage-hooks.js.map +1 -0
  22. package/lib/module/Storage.types.js +22 -0
  23. package/lib/module/Storage.types.js.map +1 -1
  24. package/lib/module/index.js +264 -75
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/index.web.js +445 -86
  27. package/lib/module/index.web.js.map +1 -1
  28. package/lib/module/internal.js +8 -0
  29. package/lib/module/internal.js.map +1 -1
  30. package/lib/module/storage-hooks.js +30 -0
  31. package/lib/module/storage-hooks.js.map +1 -0
  32. package/lib/typescript/Storage.nitro.d.ts +12 -0
  33. package/lib/typescript/Storage.nitro.d.ts.map +1 -1
  34. package/lib/typescript/Storage.types.d.ts +20 -0
  35. package/lib/typescript/Storage.types.d.ts.map +1 -1
  36. package/lib/typescript/index.d.ts +33 -10
  37. package/lib/typescript/index.d.ts.map +1 -1
  38. package/lib/typescript/index.web.d.ts +45 -10
  39. package/lib/typescript/index.web.d.ts.map +1 -1
  40. package/lib/typescript/internal.d.ts +2 -0
  41. package/lib/typescript/internal.d.ts.map +1 -1
  42. package/lib/typescript/storage-hooks.d.ts +10 -0
  43. package/lib/typescript/storage-hooks.d.ts.map +1 -0
  44. package/nitrogen/generated/shared/c++/HybridStorageSpec.cpp +12 -0
  45. package/nitrogen/generated/shared/c++/HybridStorageSpec.hpp +12 -0
  46. package/package.json +8 -3
  47. package/src/Storage.nitro.ts +13 -2
  48. package/src/Storage.types.ts +22 -0
  49. package/src/index.ts +382 -123
  50. package/src/index.web.ts +618 -134
  51. package/src/internal.ts +14 -4
  52. package/src/migration.ts +1 -1
  53. package/src/storage-hooks.ts +48 -0
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useSyncExternalStore","NitroModules","StorageScope","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","decodeNativeBatchValue","serializeWithPrimitiveFastPath","deserializeWithPrimitiveFastPath","migrateFromMMKV","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","_storageModule","getStorageModule","createHybridObject","memoryStore","memoryListeners","scopedListeners","Disk","Secure","scopedUnsubscribers","scopedRawCache","pendingSecureWrites","secureFlushScheduled","getScopedListeners","scope","get","getScopeRawCache","cacheRawValue","key","value","set","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","forEach","listener","notifyAllListeners","listeners","addKeyListener","Set","add","delete","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","values","keysToSet","valuesToSet","keysToRemove","undefined","push","storageModule","length","setBatch","removeBatch","scheduleSecureWrite","ensureNativeScopeSubscription","unsubscribe","addOnChange","maybeCleanupNativeScopeSubscription","getRawValue","Memory","setRawValue","removeRawValue","remove","readMigrationVersion","raw","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","storage","clearAll","canUseRawBatchPath","item","_hasExpiration","_hasValidation","defaultSerialize","defaultDeserialize","createStorageItem","config","serialize","deserialize","isMemory","validate","onValidationError","expiration","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","nonMemoryScope","Error","lastRaw","lastValue","hasLastValue","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","writeStoredRaw","rawValue","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","defaultValue","ensureValidatedValue","candidate","hadStoredValue","resolved","canUseCachedValue","deserializableRaw","parse","valueOrFn","currentValue","newValue","deleteItem","subscribe","storageItem","_triggerListeners","_readCacheEnabled","useStorage","useStorageSelector","selector","isEqual","Object","is","selectedRef","hasValue","getSelectedSnapshot","nextSelected","current","selectedValue","useSetStorage","getBatch","items","map","useRawBatchPath","every","useBatchCache","rawValues","keysToFetch","keyIndexes","index","fetchedValues","targetIndex","batchEntry","keys","entry","registerMigration","migration","isInteger","migrateToLatest","currentVersion","versions","filter","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","rollback","rememberRollback","tx","getItem","setItem","removeItem","error","entries","reverse","previousValue"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","StorageScope","AccessControl","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","decodeNativeBatchValue","serializeWithPrimitiveFastPath","deserializeWithPrimitiveFastPath","prefixKey","isNamespaced","BiometricLevel","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","getScopedListeners","scope","get","getScopeRawCache","cacheRawValue","key","value","set","readCachedRawValue","hasCachedRawValue","has","clearScopeRawCache","clear","notifyKeyListeners","registry","forEach","listener","notifyAllListeners","listeners","addKeyListener","Set","add","delete","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","values","keysToSet","valuesToSet","keysToRemove","undefined","push","storageModule","setSecureAccessControl","length","setBatch","removeBatch","scheduleSecureWrite","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","getAll","result","getBatch","idx","val","setAccessControl","level","setSecureWritesAsync","enabled","setKeychainAccessGroup","group","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","defaultDeserialize","createStorageItem","config","storageKey","serialize","deserialize","isMemory","isBiometric","biometric","secureAccessControl","accessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","defaultValue","nonMemoryScope","Error","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","getSecureBiometric","writeStoredRaw","rawValue","setSecureBiometric","removeStoredRaw","deleteSecureBiometric","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","deserializableRaw","envelopeExpiresAt","parse","newValue","deleteItem","hasItem","hasSecureBiometric","subscribe","storageItem","_triggerListeners","_readCacheEnabled","useStorage","useStorageSelector","useSetStorage","items","map","useRawBatchPath","every","useBatchCache","rawValues","keysToFetch","keyIndexes","index","fetchedValues","targetIndex","batchEntry","secureEntries","internal","canUseSecureBatchPath","groupedByAccessControl","existingGroup","entry","registerMigration","migration","isInteger","migrateToLatest","currentVersion","versions","filter","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","rollback","rememberRollback","tx","getItem","setItem","removeItem","error","entries","reverse","previousValue","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}