react-native-nitro-storage 0.10.3 → 0.11.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.
Files changed (87) hide show
  1. package/CHANGELOG.md +85 -14
  2. package/README.md +148 -41
  3. package/SECURITY.md +16 -6
  4. package/android/build.gradle +0 -1
  5. package/android/consumer-rules.pro +0 -3
  6. package/android/src/main/cpp/AndroidStorageAdapterCpp.cpp +48 -33
  7. package/android/src/main/cpp/AndroidStorageAdapterCpp.hpp +3 -3
  8. package/android/src/main/java/com/nitrostorage/AndroidStorageAdapter.kt +73 -23
  9. package/android/src/main/java/com/nitrostorage/DiskSqliteStore.kt +22 -4
  10. package/app.plugin.js +51 -51
  11. package/cpp/bindings/HybridStorage.cpp +25 -6
  12. package/cpp/core/NativeStorageAdapter.hpp +14 -1
  13. package/cpp/core/SqliteDiskStore.cpp +94 -17
  14. package/cpp/core/SqliteDiskStore.hpp +10 -0
  15. package/docs/api-reference.md +73 -28
  16. package/docs/benchmarks.md +41 -12
  17. package/docs/mmkv-migration.md +3 -1
  18. package/docs/native-libraries.md +10 -4
  19. package/docs/secure-storage.md +26 -12
  20. package/docs/web-backends.md +6 -2
  21. package/indexeddb-backend/package.json +6 -0
  22. package/ios/IOSStorageAdapterCpp.hpp +4 -0
  23. package/ios/IOSStorageAdapterCpp.mm +149 -57
  24. package/lib/commonjs/capabilities.js +3 -8
  25. package/lib/commonjs/capabilities.js.map +1 -1
  26. package/lib/commonjs/index.js +23 -8
  27. package/lib/commonjs/index.js.map +1 -1
  28. package/lib/commonjs/index.web.js +61 -19
  29. package/lib/commonjs/index.web.js.map +1 -1
  30. package/lib/commonjs/indexeddb-backend.js +21 -37
  31. package/lib/commonjs/indexeddb-backend.js.map +1 -1
  32. package/lib/commonjs/internal.js +6 -0
  33. package/lib/commonjs/internal.js.map +1 -1
  34. package/lib/commonjs/storage-core.js +61 -22
  35. package/lib/commonjs/storage-core.js.map +1 -1
  36. package/lib/commonjs/storage-runtime.js +1 -1
  37. package/lib/commonjs/storage-runtime.js.map +1 -1
  38. package/lib/commonjs/testing.js +68 -23
  39. package/lib/commonjs/testing.js.map +1 -1
  40. package/lib/commonjs/web-backend-contract.js +6 -2
  41. package/lib/commonjs/web-backend-contract.js.map +1 -1
  42. package/lib/module/capabilities.js +3 -8
  43. package/lib/module/capabilities.js.map +1 -1
  44. package/lib/module/index.js +14 -5
  45. package/lib/module/index.js.map +1 -1
  46. package/lib/module/index.web.js +61 -12
  47. package/lib/module/index.web.js.map +1 -1
  48. package/lib/module/indexeddb-backend.js +21 -37
  49. package/lib/module/indexeddb-backend.js.map +1 -1
  50. package/lib/module/internal.js +5 -0
  51. package/lib/module/internal.js.map +1 -1
  52. package/lib/module/storage-core.js +62 -23
  53. package/lib/module/storage-core.js.map +1 -1
  54. package/lib/module/storage-runtime.js +1 -1
  55. package/lib/module/storage-runtime.js.map +1 -1
  56. package/lib/module/testing.js +59 -16
  57. package/lib/module/testing.js.map +1 -1
  58. package/lib/module/web-backend-contract.js +5 -2
  59. package/lib/module/web-backend-contract.js.map +1 -1
  60. package/lib/typescript/capabilities.d.ts.map +1 -1
  61. package/lib/typescript/index.d.ts +8 -1
  62. package/lib/typescript/index.d.ts.map +1 -1
  63. package/lib/typescript/index.web.d.ts +7 -1
  64. package/lib/typescript/index.web.d.ts.map +1 -1
  65. package/lib/typescript/indexeddb-backend.d.ts.map +1 -1
  66. package/lib/typescript/internal.d.ts +1 -0
  67. package/lib/typescript/internal.d.ts.map +1 -1
  68. package/lib/typescript/storage-core.d.ts +1 -1
  69. package/lib/typescript/storage-core.d.ts.map +1 -1
  70. package/lib/typescript/storage-runtime.d.ts +1 -1
  71. package/lib/typescript/storage-runtime.d.ts.map +1 -1
  72. package/lib/typescript/testing.d.ts +15 -2
  73. package/lib/typescript/testing.d.ts.map +1 -1
  74. package/lib/typescript/web-backend-contract.d.ts +1 -0
  75. package/lib/typescript/web-backend-contract.d.ts.map +1 -1
  76. package/package.json +14 -5
  77. package/react-native-nitro-storage.podspec +4 -2
  78. package/src/capabilities.ts +4 -9
  79. package/src/index.ts +19 -5
  80. package/src/index.web.ts +86 -19
  81. package/src/indexeddb-backend.ts +20 -42
  82. package/src/internal.ts +8 -0
  83. package/src/storage-core.ts +84 -33
  84. package/src/storage-runtime.ts +3 -1
  85. package/src/testing.ts +91 -18
  86. package/src/web-backend-contract.ts +6 -2
  87. package/testing/package.json +8 -0
@@ -1 +1 @@
1
- {"version":3,"names":["createDurabilityCoordinator","createMetricsRegistry","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","toVersionToken","prefixKey","isNamespaced","escapeCollidingRawValue","unescapeCollidingRawValue","assertAccessControlLevel","assertBiometricLevel","canUseRawBatchPath","canUseSecureRawBatchPath","createStorageCompositeError","createKeyChange","defaultDeserialize","defaultSerialize","isKeychainLockedError","isUpdater","normalizeStorageError","notifyAllListeners","notifyKeyListeners","redactSecureKeyChange","typedKeys","StorageEventRegistry","StorageScope","AccessControl","BiometricLevel","EMPTY_KEYS","Object","freeze","asInternal","item","createStorageCore","buildAdapter","registeredMigrations","Map","itemGroups","registeredKeyCounts","memoryStore","memoryExpirationDeadlines","memoryItemsByKey","memoryListeners","scopedListeners","Disk","Secure","scopedRawCache","cacheHits","cacheMisses","secureDefaultAccessControl","WhenUnlocked","eventObserver","eventObserverRedactSecureValues","storageEvents","metrics","durability","backend","setBatch","keys","values","scope","adapter","removeBatch","setSecureAccessControl","level","resolveSecureDefaultAccessControl","getScopedListeners","getScopeRawCache","getCachedRawValueEntry","key","create","scopeCache","existing","get","entry","set","cacheRawValue","value","representation","readCachedRawValue","invalidateRawCache","delete","clearScopeRawCache","clear","snapshotCacheMetrics","cacheEntries","cacheBytes","length","invalidateMemoryItemCaches","forEach","_invalidateParsedCacheOnly","addKeyListener","registry","listener","listeners","Set","add","keyListeners","size","getEventRawValue","Memory","undefined","getRawValue","getEventRawValueForRepresentation","raw","getSecureBiometric","shouldReadPreviousEventValues","hasListeners","eventForGlobalObserver","event","type","changes","map","emitKeyChange","oldValue","newValue","operation","source","onWillEmitChanges","emitKey","emitBatchChange","change","emitBatch","measureOperation","fn","keysCount","measure","recordMetric","durationMs","record","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","flushSecureWrites","runSecurePromotion","promotion","scheduleDiskWrite","scheduleSecureWrite","accessControl","setDiskWritesAsyncMode","enabled","setDiskWritesAsync","isDiskWritesAsync","getStoredRawValue","pending","getPendingDiskWrite","getPendingSecureWrite","getStoredRawValueForRepresentation","setRawValue","storedValue","changeSource","applyAccessControlOnSecureRawWrite","removeRawValue","remove","readMigrationVersion","parsed","Number","parseInt","isFinite","internals","clearAllPendingDiskWrites","clearAllPendingSecureWrites","hasEventObserver","hasScopeEventListeners","getSecureDefaultAccessControl","setSecureDefaultAccessControl","resolveKeyRef","ref","clearScopeExcept","exceptRefs","keep","removeKeys","Array","from","filter","has","previousValues","index","getAllKeys","getBatch","storage","subscribe","ensureScopeSubscription","unsubscribe","maybeCleanupScopeSubscription","subscribeKey","subscribePrefix","prefix","subscribeNamespace","namespace","setEventObserver","observer","options","redactSecureValues","except","getAll","clearAll","clearGroup","group","items","byScope","scoped","push","groupItems","getGroupItems","subscribeExpired","findDuplicateKeys","duplicates","count","registryKey","separatorIndex","indexOf","slice","getRegisteredKeys","result","_count","clearNamespace","affectedKeys","keyPrefix","getByPrefix","removeByPrefix","clearBiometric","readEventValues","shouldEmitChanges","biometricKeys","hasSecureBiometric","clearSecureBiometric","getKeysByPrefix","startsWith","idx","val","export","includeSecureValues","Error","exportSecureUnsafe","setMetricsObserver","setObserver","getMetricsSnapshot","getSnapshot","getScopedMetricsSnapshot","getScopedSnapshot","resetMetrics","reset","getCacheMetrics","getSecureMetadata","profile","getSecureMetadataProfile","biometricProtected","exists","kind","encrypted","hardwareBacked","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","storedValues","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","rawCacheRepresentation","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","renameFromKeys","renameFrom","fallbackToCacheOnReadError","onReadError","renamesMigrated","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","resolveNonMemoryScope","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","expiredRaw","memoryStored","migrateRenamesIfNeeded","cachedEntry","readBackendRaw","read","error","cached","getRenameSourceKeys","getRenameSourceRaw","invalidateRenameSourceCache","removeRenameSource","deleteSecureBiometric","restoreRenameSource","snapshot","biometricValue","setSecureBiometricWithLevel","plainValue","readRenameSnapshots","flatMap","selectedRenameValue","hasPendingCurrentWrite","hasPendingDiskWrite","hasPendingSecureWrite","hasPendingRenameSourceWrite","some","flushPendingRenameSourceWrites","clearPendingCurrentWriteIf","write","clearPendingDiskWriteIf","clearPendingSecureWriteIf","flushPendingCurrentWrite","removeCurrentBackendValue","scheduleRenameSourceCleanup","sourceKeys","atomicMutationDepth","getItemStateKeys","captureItemState","records","pendingWrite","clearPendingItemWrite","restoreItemState","rollbackErrors","recordsByKey","biometricRecords","label","plainSets","plainRemoves","runAtomicItemMutation","mutation","primaryError","writeStoredRaw","rawValue","cleanupRenameSources","hasCurrent","snapshots","find","candidate","writeAttempted","pendingCurrentWrite","renameSnapshot","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","getCurrentVersion","getWithVersion","version","valueOrFn","setIfVersion","didSet","currentVersion","deleteItem","merge","partial","prev","setOrDelete","hasItem","subscribeSelector","selector","isEqual","is","currentValue","fireImmediately","nextValue","previousValue","storageItem","_triggerListeners","_deleteMemoryEntry","_hasValidation","_hasExpiration","_hasRenameFrom","_renameFromKeys","_getRenameMigrationState","_setRenameMigrationState","migrated","_readCacheEnabled","_isBiometric","_biometricLevel","_defaultValue","_secureAccessControl","_group","groupSet","useRawBatchPath","every","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","needsIndividualSets","internal","secureEntries","canUseSecureBatchPath","serializedValues","oldValues","groupedByAccessControl","existingGroup","willEmitChanges","plainItems","plainValues","plainIndex","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","runTransaction","tx","setRaw","String","transaction","NOT_SET","Symbol","rollback","itemRenameStates","rememberRollback","includeOtherSecureRepresentation","rememberRepresentation","representationToRemember","identity","rememberItemRollback","aliasKey","getRaw","removeRaw","getItem","setItem","removeItem","rollbackEntries","reverse","rollbackSource","readRollbackEventValue","readError","preRollbackValues","rollbackError","groupedKeysToSet","keysToRemove","biometricEntries","biometricValues","flushError","keysToRemoveWithoutBiometric","createSecureAuthStorage","ns","itemConfig","expirationConfig","memoryItem","diskItem","secureItem","createSetItem","rest","initial","id","current","next","deleteId","toggle","getTyped","typed"],"sourceRoot":"../../src","sources":["storage-core.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createDurabilityCoordinator","createMetricsRegistry","MIGRATION_VERSION_KEY","isStoredEnvelope","assertBatchScope","assertValidScope","toVersionToken","assertValidStorageKey","prefixKey","isNamespaced","escapeCollidingRawValue","unescapeCollidingRawValue","assertAccessControlLevel","assertBiometricLevel","canUseRawBatchPath","canUseSecureRawBatchPath","createStorageCompositeError","createKeyChange","defaultDeserialize","defaultSerialize","isKeychainLockedError","isUpdater","normalizeStorageError","notifyAllListeners","notifyKeyListeners","redactSecureKeyChange","typedKeys","StorageEventRegistry","isStorageError","StorageScope","AccessControl","BiometricLevel","EMPTY_KEYS","Object","freeze","asInternal","item","createStorageCore","buildAdapter","registeredMigrations","Map","itemGroups","registeredKeyCounts","memoryStore","memoryExpirationDeadlines","memoryItemsByKey","memoryListeners","scopedListeners","Disk","Secure","scopedRawCache","cacheHits","cacheMisses","secureDefaultAccessControl","WhenUnlocked","eventObserver","eventObserverRedactSecureValues","storageEvents","metrics","setOwnDataProperty","target","key","value","defineProperty","configurable","enumerable","writable","durability","backend","setBatch","keys","values","scope","adapter","removeBatch","setSecureAccessControl","level","resolveSecureDefaultAccessControl","getScopedListeners","getScopeRawCache","getCachedRawValueEntry","create","scopeCache","existing","get","entry","set","cacheRawValue","representation","readCachedRawValue","invalidateRawCache","delete","clearScopeRawCache","clear","snapshotCacheMetrics","cacheEntries","cacheBytes","length","invalidateMemoryItemCaches","forEach","_invalidateParsedCacheOnly","addKeyListener","registry","listener","listeners","Set","add","keyListeners","size","getEventRawValue","Memory","undefined","getRawValue","getEventRawValueForRepresentation","raw","getSecureBiometric","shouldReadPreviousEventValues","hasListeners","readPreviousEventValue","toMemoryStoredValue","deleteMemoryKey","eventForGlobalObserver","event","type","changes","map","emitKeyChange","oldValue","newValue","operation","source","onWillEmitChanges","emitKey","emitBatchChange","change","emitBatch","measureOperation","fn","keysCount","measure","recordMetric","durationMs","record","clearPendingDiskWrite","clearPendingSecureWrite","flushDiskWrites","flushSecureWrites","runSecurePromotion","promotion","scheduleDiskWrite","scheduleSecureWrite","accessControl","setDiskWritesAsyncMode","enabled","setDiskWritesAsync","isDiskWritesAsync","getStoredRawValue","pending","getPendingDiskWrite","getPendingSecureWrite","getStoredRawValueForRepresentation","setRawValue","storedValue","changeSource","applyAccessControlOnSecureRawWrite","removeRawValue","remove","readMigrationVersion","parsed","Number","parseInt","isFinite","internals","clearAllPendingDiskWrites","clearAllPendingSecureWrites","hasEventObserver","hasScopeEventListeners","getSecureDefaultAccessControl","setSecureDefaultAccessControl","resolveKeyRef","ref","clearScopeExcept","exceptRefs","keep","removeKeys","Array","from","filter","has","previousValues","index","getAllKeys","getBatch","storage","subscribe","ensureScopeSubscription","unsubscribe","maybeCleanupScopeSubscription","subscribeKey","subscribePrefix","prefix","subscribeNamespace","namespace","setEventObserver","observer","options","redactSecureValues","except","getAll","clearAll","clearGroup","group","items","byScope","scoped","push","groupItems","getGroupItems","subscribeExpired","findDuplicateKeys","duplicates","count","registryKey","separatorIndex","indexOf","slice","getRegisteredKeys","result","_count","clearNamespace","affectedKeys","keyPrefix","getByPrefix","removeByPrefix","clearBiometric","readEventValues","shouldEmitChanges","biometricKeys","hasSecureBiometric","clearSecureBiometric","getKeysByPrefix","startsWith","idx","val","export","includeSecureValues","Error","exportSecureUnsafe","setMetricsObserver","setObserver","getMetricsSnapshot","getSnapshot","getScopedMetricsSnapshot","getScopedSnapshot","resetMetrics","reset","getCacheMetrics","getSecureMetadata","profile","getSecureMetadataProfile","biometricProtected","exists","kind","encrypted","hardwareBacked","valueExposed","getAllSecureMetadata","getString","setString","deleteString","import","data","k","storedValues","readPrevious","createStorageItem","config","storageKey","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","BiometryOnly","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","rawCacheRepresentation","coalesceDiskWrites","coalesceSecureWrites","defaultValue","nonMemoryScope","renameFromKeys","renameFrom","fallbackToCacheOnReadError","onReadError","renamesMigrated","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","resolveNonMemoryScope","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","expiredRaw","memoryStored","migrateRenamesIfNeeded","cachedEntry","readBackendRaw","read","error","cached","getRenameSourceKeys","getRenameSourceRaw","invalidateRenameSourceCache","removeRenameSource","deleteSecureBiometric","restoreRenameSource","snapshot","biometricValue","setSecureBiometricWithLevel","plainValue","readRenameSnapshots","flatMap","selectedRenameValue","hasPendingCurrentWrite","hasPendingDiskWrite","hasPendingSecureWrite","hasPendingRenameSourceWrite","some","flushPendingRenameSourceWrites","clearPendingCurrentWriteIf","write","clearPendingDiskWriteIf","clearPendingSecureWriteIf","flushPendingCurrentWrite","removeCurrentBackendValue","scheduleRenameSourceCleanup","sourceKeys","atomicMutationDepth","getItemStateKeys","captureItemState","records","pendingWrite","clearPendingItemWrite","restoreItemState","rollbackErrors","recordsByKey","biometricRecords","label","plainSets","plainRemoves","runAtomicItemMutation","mutation","primaryError","writeStoredRaw","rawValue","cleanupRenameSources","hasCurrent","snapshots","find","candidate","writeAttempted","pendingCurrentWrite","renameSnapshot","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","hadStoredValue","resolved","getInternal","cb","deserializableRaw","envelopeExpiresAt","parse","getCurrentVersion","getWithVersion","version","valueOrFn","setIfVersion","didSet","currentVersion","deleteItem","merge","partial","prev","setOrDelete","hasItem","subscribeSelector","selector","isEqual","is","currentValue","fireImmediately","nextValue","previousValue","storageItem","_triggerListeners","_deleteMemoryEntry","_hasValidation","_hasExpiration","_hasRenameFrom","_renameFromKeys","_getRenameMigrationState","_setRenameMigrationState","migrated","_readCacheEnabled","_isBiometric","_biometricLevel","_defaultValue","_secureAccessControl","_group","groupSet","useRawBatchPath","every","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","needsIndividualSets","internal","secureEntries","canUseSecureBatchPath","serializedValues","oldValues","groupedByAccessControl","existingGroup","willEmitChanges","plainItems","plainValues","plainIndex","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","runTransaction","tx","setRaw","String","transaction","NOT_SET","Symbol","rollback","itemRenameStates","rememberRollback","includeOtherSecureRepresentation","rememberRepresentation","representationToRemember","identity","rememberItemRollback","aliasKey","getRaw","removeRaw","getItem","setItem","removeItem","rollbackEntries","reverse","rollbackSource","readRollbackEvents","readRollbackEventValue","readError","preRollbackValues","rollbackError","groupedKeysToSet","keysToRemove","biometricEntries","biometricValues","flushError","keysToRemoveWithoutBiometric","createSecureAuthStorage","ns","itemConfig","expirationConfig","memoryItem","diskItem","secureItem","createSetItem","rest","initial","id","current","next","deleteId","toggle","getTyped","typed"],"sourceRoot":"../../src","sources":["storage-core.ts"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  const STORAGE_ERROR_TAG_PATTERN = /\[nitro-error:([a-z_]+)\]/;
4
- const STORAGE_ERROR_CODES = new Set(["keychain_locked", "authentication_required", "key_invalidated", "storage_corruption", "storage_compensation_failed", "biometric_unavailable", "unsupported"]);
4
+ const STORAGE_ERROR_CODES = new Set(["keychain_locked", "authentication_required", "key_invalidated", "storage_corruption", "storage_compensation_failed", "biometric_unavailable", "unsupported", "invalid_key"]);
5
5
  export function getStorageErrorCode(err) {
6
6
  if (!(err instanceof Error)) {
7
7
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["STORAGE_ERROR_TAG_PATTERN","STORAGE_ERROR_CODES","Set","getStorageErrorCode","err","Error","undefined","taggedCode","message","match","has","isStorageError","code","isLockedStorageErrorCode"],"sourceRoot":"../../src","sources":["storage-runtime.ts"],"mappings":";;AAyDA,MAAMA,yBAAyB,GAAG,2BAA2B;AAE7D,MAAMC,mBAAmB,GAAG,IAAIC,GAAG,CAAmB,CACpD,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,6BAA6B,EAC7B,uBAAuB,EACvB,aAAa,CACd,CAAC;AAEF,OAAO,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;AAEA,OAAO,SAASK,cAAcA,CAACP,GAAY,EAAEQ,IAAsB,EAAW;EAC5E,OAAOT,mBAAmB,CAACC,GAAG,CAAC,KAAKQ,IAAI;AAC1C;AAEA,OAAO,SAASC,wBAAwBA,CACtCD,IAAkC,EACzB;EACT,OACEA,IAAI,KAAK,iBAAiB,IAC1BA,IAAI,KAAK,yBAAyB,IAClCA,IAAI,KAAK,iBAAiB;AAE9B","ignoreList":[]}
1
+ {"version":3,"names":["STORAGE_ERROR_TAG_PATTERN","STORAGE_ERROR_CODES","Set","getStorageErrorCode","err","Error","undefined","taggedCode","message","match","has","isStorageError","code","isLockedStorageErrorCode"],"sourceRoot":"../../src","sources":["storage-runtime.ts"],"mappings":";;AA0DA,MAAMA,yBAAyB,GAAG,2BAA2B;AAE7D,MAAMC,mBAAmB,GAAG,IAAIC,GAAG,CAAmB,CACpD,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,6BAA6B,EAC7B,uBAAuB,EACvB,aAAa,EACb,aAAa,CACd,CAAC;AAEF,OAAO,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;AAEA,OAAO,SAASK,cAAcA,CAACP,GAAY,EAAEQ,IAAsB,EAAW;EAC5E,OAAOT,mBAAmB,CAACC,GAAG,CAAC,KAAKQ,IAAI;AAC1C;AAEA,OAAO,SAASC,wBAAwBA,CACtCD,IAAkC,EACzB;EACT,OACEA,IAAI,KAAK,iBAAiB,IAC1BA,IAAI,KAAK,yBAAyB,IAClCA,IAAI,KAAK,iBAAiB;AAE9B","ignoreList":[]}