react-native-nitro-storage 0.12.0 → 0.14.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 (61) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +107 -15
  3. package/SECURITY.md +2 -2
  4. package/android/build.gradle +5 -0
  5. package/android/src/main/cpp/AndroidStorageAdapterCpp.cpp +12 -13
  6. package/android/src/main/cpp/JniSize.hpp +21 -0
  7. package/android/src/main/java/com/nitrostorage/AndroidStorageAdapter.kt +94 -7
  8. package/android/src/main/java/com/nitrostorage/DiskSqliteStore.kt +147 -34
  9. package/cpp/bindings/HybridStorage.cpp +12 -4
  10. package/cpp/core/SqliteDiskStore.cpp +172 -26
  11. package/cpp/core/SqliteDiskStore.hpp +10 -1
  12. package/docs/api-reference.md +60 -54
  13. package/docs/batch-transactions-migrations.md +7 -0
  14. package/docs/native-libraries.md +28 -0
  15. package/docs/qa/agent-device-replay.md +70 -0
  16. package/docs/secure-storage.md +12 -6
  17. package/ios/IOSStorageAdapterCpp.mm +89 -22
  18. package/lib/commonjs/Storage.types.js +4 -2
  19. package/lib/commonjs/Storage.types.js.map +1 -1
  20. package/lib/commonjs/core/durability.js +30 -2
  21. package/lib/commonjs/core/durability.js.map +1 -1
  22. package/lib/commonjs/index.js.map +1 -1
  23. package/lib/commonjs/index.web.js.map +1 -1
  24. package/lib/commonjs/shared.js.map +1 -1
  25. package/lib/commonjs/storage-core.js +63 -9
  26. package/lib/commonjs/storage-core.js.map +1 -1
  27. package/lib/commonjs/testing.js +1 -0
  28. package/lib/commonjs/testing.js.map +1 -1
  29. package/lib/module/Storage.types.js +4 -2
  30. package/lib/module/Storage.types.js.map +1 -1
  31. package/lib/module/core/durability.js +30 -2
  32. package/lib/module/core/durability.js.map +1 -1
  33. package/lib/module/index.js.map +1 -1
  34. package/lib/module/index.web.js.map +1 -1
  35. package/lib/module/shared.js.map +1 -1
  36. package/lib/module/storage-core.js +63 -9
  37. package/lib/module/storage-core.js.map +1 -1
  38. package/lib/module/testing.js +1 -0
  39. package/lib/module/testing.js.map +1 -1
  40. package/lib/typescript/Storage.types.d.ts +4 -2
  41. package/lib/typescript/Storage.types.d.ts.map +1 -1
  42. package/lib/typescript/core/durability.d.ts +7 -1
  43. package/lib/typescript/core/durability.d.ts.map +1 -1
  44. package/lib/typescript/index.d.ts +4 -2
  45. package/lib/typescript/index.d.ts.map +1 -1
  46. package/lib/typescript/index.web.d.ts +4 -2
  47. package/lib/typescript/index.web.d.ts.map +1 -1
  48. package/lib/typescript/shared.d.ts +8 -1
  49. package/lib/typescript/shared.d.ts.map +1 -1
  50. package/lib/typescript/storage-core.d.ts +6 -3
  51. package/lib/typescript/storage-core.d.ts.map +1 -1
  52. package/lib/typescript/testing.d.ts +7 -4
  53. package/lib/typescript/testing.d.ts.map +1 -1
  54. package/package.json +2 -1
  55. package/src/Storage.types.ts +4 -2
  56. package/src/core/durability.ts +46 -2
  57. package/src/index.ts +4 -0
  58. package/src/index.web.ts +4 -0
  59. package/src/shared.ts +17 -1
  60. package/src/storage-core.ts +87 -13
  61. package/src/testing.ts +5 -0
@@ -1 +1 @@
1
- {"version":3,"file":"durability.d.ts","sourceRoot":"","sources":["../../../src/core/durability.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3C,iBAAiB,IAAI,OAAO,CAAC;IAC7B,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC/D,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACnE,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,uBAAuB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvD,yBAAyB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3D,yBAAyB,IAAI,IAAI,CAAC;IAClC,2BAA2B,IAAI,IAAI,CAAC;IACpC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,CAAC;IAC5E,mBAAmB,CACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,aAAa,CAAC,EAAE,aAAa,GAC5B,kBAAkB,CAAC;IACtB,eAAe,IAAI,IAAI,CAAC;IACxB,iBAAiB,IAAI,IAAI,CAAC;IAC1B,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;CAC3D,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IACnD,OAAO,EAAE,iBAAiB,CAAC;IAC3B,iCAAiC,IAAI,aAAa,CAAC;CACpD,GAAG,qBAAqB,CAqOxB"}
1
+ {"version":3,"file":"durability.d.ts","sourceRoot":"","sources":["../../../src/core/durability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEtE,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG,CAC/C,KAAK,EAAE,0BAA0B,KAC9B,IAAI,CAAC;AAEV,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,8BAA8B,CAC5B,QAAQ,EAAE,kCAAkC,GAAG,SAAS,GACvD,IAAI,CAAC;IACR,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3C,iBAAiB,IAAI,OAAO,CAAC;IAC7B,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC/D,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACnE,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,uBAAuB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvD,yBAAyB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3D,yBAAyB,IAAI,IAAI,CAAC;IAClC,2BAA2B,IAAI,IAAI,CAAC;IACpC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,CAAC;IAC5E,mBAAmB,CACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,aAAa,CAAC,EAAE,aAAa,GAC5B,kBAAkB,CAAC;IACtB,eAAe,IAAI,IAAI,CAAC;IACxB,iBAAiB,IAAI,IAAI,CAAC;IAC1B,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;CAC3D,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IACnD,OAAO,EAAE,iBAAiB,CAAC;IAC3B,iCAAiC,IAAI,aAAa,CAAC;CACpD,GAAG,qBAAqB,CAqQxB"}
@@ -5,6 +5,7 @@ import { StorageScope } from "./Storage.types";
5
5
  import type { WebDiskStorageBackend, WebSecureStorageBackend } from "./web-storage-backend";
6
6
  export type { ExpirationConfig, Migration, MigrationContext, SecureAuthStorageConfig, StorageEventObserverOptions, StorageExportOptions, StorageCacheMetrics, StorageMetricSummary, StorageMetricsEvent, StorageMetricsObserver, StorageSelectorListener, StorageSelectorSubscribeOptions, StorageCompositeError, StorageCompensationError, StorageVersion, Validator, VersionedValue, } from "./shared";
7
7
  export { isKeychainLockedError } from "./shared";
8
+ export type { StorageScheduledFlushError, StorageScheduledFlushErrorObserver, } from "./core/durability";
8
9
  export { StorageScope, AccessControl, BiometricLevel } from "./Storage.types";
9
10
  export type { Storage } from "./Storage.nitro";
10
11
  export { migrateFromMMKV } from "./migration";
@@ -53,6 +54,7 @@ export declare const storage: {
53
54
  setDiskWritesAsync: (enabled: boolean) => void;
54
55
  flushDiskWrites: () => void;
55
56
  flushSecureWrites: () => void;
57
+ setScheduledFlushErrorObserver: (observer?: import(".").StorageScheduledFlushErrorObserver) => void;
56
58
  setMetricsObserver: (observer?: import("./shared").StorageMetricsObserver) => void;
57
59
  getMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
58
60
  getScopedMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
@@ -78,9 +80,9 @@ export declare const setBatch: <const TItems extends readonly {
78
80
  value: ReturnType<TItems[Index]["get"]>;
79
81
  }; }, scope: StorageScope) => void;
80
82
  export declare const removeBatch: (items: readonly import("./storage-core").BatchRemoveItem[], scope: StorageScope) => void;
81
- export declare const registerMigration: (version: number, migration: import("./shared").Migration) => void;
83
+ export declare const registerMigration: <TResult>(version: number, migration: import("./shared").Migration<TResult>) => void;
82
84
  export declare const migrateToLatest: (scope?: StorageScope) => number;
83
- export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => T) => T;
85
+ export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => import("./shared").SynchronousCallbackResult<T>) => T;
84
86
  export declare const createSecureAuthStorage: <K extends string>(config: import("./shared").SecureAuthStorageConfig<K>, options?: {
85
87
  namespace?: string;
86
88
  group?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { StorageScope } from "./Storage.types";
5
5
  import { type WebDiskStorageBackend, type WebSecureStorageBackend } from "./web-storage-backend";
6
6
  export type { ExpirationConfig, Migration, MigrationContext, SecureAuthStorageConfig, StorageEventObserverOptions, StorageExportOptions, StorageCacheMetrics, StorageMetricSummary, StorageMetricsEvent, StorageMetricsObserver, StorageSelectorListener, StorageSelectorSubscribeOptions, StorageCompositeError, StorageCompensationError, StorageVersion, Validator, VersionedValue, } from "./shared";
7
7
  export { isKeychainLockedError } from "./shared";
8
+ export type { StorageScheduledFlushError, StorageScheduledFlushErrorObserver, } from "./core/durability";
8
9
  export { StorageScope, AccessControl, BiometricLevel } from "./Storage.types";
9
10
  export type { Storage } from "./Storage.nitro";
10
11
  export { migrateFromMMKV } from "./migration";
@@ -53,6 +54,7 @@ export declare const storage: {
53
54
  setDiskWritesAsync: (enabled: boolean) => void;
54
55
  flushDiskWrites: () => void;
55
56
  flushSecureWrites: () => void;
57
+ setScheduledFlushErrorObserver: (observer?: import(".").StorageScheduledFlushErrorObserver) => void;
56
58
  setMetricsObserver: (observer?: import("./shared").StorageMetricsObserver) => void;
57
59
  getMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
58
60
  getScopedMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
@@ -78,9 +80,9 @@ export declare const setBatch: <const TItems extends readonly {
78
80
  value: ReturnType<TItems[Index]["get"]>;
79
81
  }; }, scope: StorageScope) => void;
80
82
  export declare const removeBatch: (items: readonly import("./storage-core").BatchRemoveItem[], scope: StorageScope) => void;
81
- export declare const registerMigration: (version: number, migration: import("./shared").Migration) => void;
83
+ export declare const registerMigration: <TResult>(version: number, migration: import("./shared").Migration<TResult>) => void;
82
84
  export declare const migrateToLatest: (scope?: StorageScope) => number;
83
- export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => T) => T;
85
+ export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => import("./shared").SynchronousCallbackResult<T>) => T;
84
86
  export declare const createSecureAuthStorage: <K extends string>(config: import("./shared").SecureAuthStorageConfig<K>, options?: {
85
87
  namespace?: string;
86
88
  group?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../src/index.web.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../src/index.web.ts"],"names":[],"mappings":"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"}
@@ -46,7 +46,13 @@ export type MigrationContext = {
46
46
  setRaw: (key: string, value: string) => void;
47
47
  removeRaw: (key: string) => void;
48
48
  };
49
- export type Migration = (context: MigrationContext) => void;
49
+ type CallableThenableResult<TResult> = TResult extends {
50
+ then?: infer Then;
51
+ } ? Extract<Then, (...args: never[]) => unknown> extends never ? never : TResult : never;
52
+ export type SynchronousCallbackResult<TResult> = [
53
+ CallableThenableResult<TResult>
54
+ ] extends [never] ? TResult : never;
55
+ export type Migration<TResult = unknown> = (context: MigrationContext) => SynchronousCallbackResult<TResult>;
50
56
  export type KeyListenerRegistry = Map<string, Set<() => void>>;
51
57
  export type RawBatchPathItem = {
52
58
  _hasValidation?: boolean;
@@ -120,4 +126,5 @@ export type SecureAuthStorageConfig<K extends string = string> = Record<K, {
120
126
  * authentication, and invalidated-key recovery paths.
121
127
  */
122
128
  export declare function isKeychainLockedError(err: unknown): boolean;
129
+ export {};
123
130
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { type ExpirationConfig, type KeyListenerRegistry, type Migration, type NonMemoryScope, type SecureAuthStorageConfig, type StorageEventObserverOptions, type StorageExportOptions, type StorageCacheMetrics, type StorageMetricSummary, type StorageMetricsObserver, type StorageSelectorListener, type StorageSelectorSubscribeOptions, type StorageVersion, type Validator, type VersionedValue } from "./shared";
1
+ import { type StorageScheduledFlushErrorObserver } from "./core/durability";
2
+ import { type ExpirationConfig, type KeyListenerRegistry, type Migration, type NonMemoryScope, type SecureAuthStorageConfig, type StorageEventObserverOptions, type StorageExportOptions, type StorageCacheMetrics, type StorageMetricSummary, type StorageMetricsObserver, type StorageSelectorListener, type StorageSelectorSubscribeOptions, type SynchronousCallbackResult, type StorageVersion, type Validator, type VersionedValue } from "./shared";
2
3
  import { type StorageChangeOperation, type StorageChangeSource, type StorageEventListener, type StorageKeyChangeEvent } from "./storage-events";
3
4
  import type { StorageSetter } from "./storage-hooks";
4
5
  import { type SecureStorageMetadata } from "./storage-runtime";
@@ -191,6 +192,8 @@ export declare function createStorageCore(buildAdapter: (internals: StorageCoreI
191
192
  setDiskWritesAsync: (enabled: boolean) => void;
192
193
  flushDiskWrites: () => void;
193
194
  flushSecureWrites: () => void;
195
+ /** Observes scheduled flush failures; explicit flush calls still throw. */
196
+ setScheduledFlushErrorObserver: (observer?: StorageScheduledFlushErrorObserver) => void;
194
197
  setMetricsObserver: (observer?: StorageMetricsObserver) => void;
195
198
  getMetricsSnapshot: () => Record<string, StorageMetricSummary>;
196
199
  getScopedMetricsSnapshot: () => Record<string, StorageMetricSummary>;
@@ -211,9 +214,9 @@ export declare function createStorageCore(buildAdapter: (internals: StorageCoreI
211
214
  getBatch: <const TItems extends readonly BatchReadItem<unknown>[]>(items: TItems, scope: StorageScope) => BatchValues<TItems>;
212
215
  setBatch: <const TItems extends readonly StorageBatchSetCandidate[]>(items: StorageBatchSetEntries<TItems>, scope: StorageScope) => void;
213
216
  removeBatch: (items: readonly BatchRemoveItem[], scope: StorageScope) => void;
214
- registerMigration: (version: number, migration: Migration) => void;
217
+ registerMigration: <TResult>(version: number, migration: Migration<TResult>) => void;
215
218
  migrateToLatest: (scope?: StorageScope) => number;
216
- runTransaction: <T>(scope: StorageScope, transaction: (context: TransactionContext) => T) => T;
219
+ runTransaction: <T>(scope: StorageScope, transaction: (context: TransactionContext) => SynchronousCallbackResult<T>) => T;
217
220
  createSecureAuthStorage: <K extends string>(config: SecureAuthStorageConfig<K>, options?: {
218
221
  namespace?: string;
219
222
  group?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage-core.d.ts","sourceRoot":"","sources":["../../src/storage-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage-core.d.ts","sourceRoot":"","sources":["../../src/storage-core.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { StorageScope, AccessControl } from "./Storage.types";
4
4
  import type { WebDiskStorageBackend, WebSecureStorageBackend } from "./web-storage-backend";
5
5
  export { StorageScope, AccessControl, BiometricLevel } from "./Storage.types";
6
6
  export { isKeychainLockedError } from "./shared";
7
+ export type { StorageScheduledFlushError, StorageScheduledFlushErrorObserver, } from "./core/durability";
7
8
  export { migrateFromMMKV } from "./migration";
8
9
  export { getStorageErrorCode, isStorageError } from "./storage-runtime";
9
10
  export { describeWebBackendCapabilities, isIndexedDBWebBackend, type WebBackendCapabilities, } from "./web-backend-contract";
@@ -54,6 +55,7 @@ declare function buildTestingModule(): {
54
55
  setDiskWritesAsync: (enabled: boolean) => void;
55
56
  flushDiskWrites: () => void;
56
57
  flushSecureWrites: () => void;
58
+ setScheduledFlushErrorObserver: (observer?: import(".").StorageScheduledFlushErrorObserver) => void;
57
59
  setMetricsObserver: (observer?: import("./shared").StorageMetricsObserver) => void;
58
60
  getMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
59
61
  getScopedMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
@@ -79,9 +81,9 @@ declare function buildTestingModule(): {
79
81
  value: ReturnType<TItems[Index]["get"]>;
80
82
  }; }, scope: StorageScope) => void;
81
83
  removeBatch: (items: readonly import("./storage-core").BatchRemoveItem[], scope: StorageScope) => void;
82
- registerMigration: (version: number, migration: import("./shared").Migration) => void;
84
+ registerMigration: <TResult>(version: number, migration: import("./shared").Migration<TResult>) => void;
83
85
  migrateToLatest: (scope?: StorageScope) => number;
84
- runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => T) => T;
86
+ runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => import("./shared").SynchronousCallbackResult<T>) => T;
85
87
  createSecureAuthStorage: <K extends string>(config: import("./shared").SecureAuthStorageConfig<K>, options?: {
86
88
  namespace?: string;
87
89
  group?: string;
@@ -128,6 +130,7 @@ export declare const storage: {
128
130
  setDiskWritesAsync: (enabled: boolean) => void;
129
131
  flushDiskWrites: () => void;
130
132
  flushSecureWrites: () => void;
133
+ setScheduledFlushErrorObserver: (observer?: import(".").StorageScheduledFlushErrorObserver) => void;
131
134
  setMetricsObserver: (observer?: import("./shared").StorageMetricsObserver) => void;
132
135
  getMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
133
136
  getScopedMetricsSnapshot: () => Record<string, import("./shared").StorageMetricSummary>;
@@ -153,9 +156,9 @@ export declare const setBatch: <const TItems extends readonly {
153
156
  value: ReturnType<TItems[Index]["get"]>;
154
157
  }; }, scope: StorageScope) => void;
155
158
  export declare const removeBatch: (items: readonly import("./storage-core").BatchRemoveItem[], scope: StorageScope) => void;
156
- export declare const registerMigration: (version: number, migration: import("./shared").Migration) => void;
159
+ export declare const registerMigration: <TResult>(version: number, migration: import("./shared").Migration<TResult>) => void;
157
160
  export declare const migrateToLatest: (scope?: StorageScope) => number;
158
- export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => T) => T;
161
+ export declare const runTransaction: <T>(scope: StorageScope, transaction: (context: import("./storage-core").TransactionContext) => import("./shared").SynchronousCallbackResult<T>) => T;
159
162
  export declare const createSecureAuthStorage: <K extends string>(config: import("./shared").SecureAuthStorageConfig<K>, options?: {
160
163
  namespace?: string;
161
164
  group?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-nitro-storage",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "description": "Synchronous React Native storage powered by Nitro Modules and JSI: typed Memory, Disk, Keychain/Android Keystore secure storage, biometric auth, MMKV migration, Expo, Zustand/Jotai persistence, and web IndexedDB support.",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -54,6 +54,7 @@
54
54
  "!cpp/build",
55
55
  "!android/build",
56
56
  "!android/.cxx",
57
+ "!android/src/test",
57
58
  "!scripts"
58
59
  ],
59
60
  "sideEffects": false,
@@ -20,8 +20,10 @@ export enum AccessControl {
20
20
  export enum BiometricLevel {
21
21
  /** No biometric requirement (default). */
22
22
  None = 0,
23
- /** Require biometric or passcode for each access. */
23
+ /** iOS: Keychain user presence. Android: recent authentication when opening
24
+ * the protected store; later access uses its cached keyset. Web: no biometric enforcement. */
24
25
  BiometryOrPasscode = 1,
25
- /** Require biometric only (no passcode fallback). */
26
+ /** Biometric-only Keychain/Keystore policy, without passcode fallback.
27
+ * Android authenticates when opening the store, not each access. Web: no biometric enforcement. */
26
28
  BiometryOnly = 2,
27
29
  }
@@ -2,6 +2,15 @@ import { runMicrotask } from "../shared";
2
2
  import { StorageScope, type AccessControl } from "../Storage.types";
3
3
  import type { PendingDiskWrite, PendingSecureWrite } from "../shared";
4
4
 
5
+ export type StorageScheduledFlushError = {
6
+ readonly scope: StorageScope.Disk | StorageScope.Secure;
7
+ readonly error: unknown;
8
+ };
9
+
10
+ export type StorageScheduledFlushErrorObserver = (
11
+ error: StorageScheduledFlushError,
12
+ ) => void;
13
+
5
14
  export type DurabilityBackend = {
6
15
  setBatch(keys: string[], values: string[], scope: number): void;
7
16
  removeBatch(keys: string[], scope: number): void;
@@ -9,6 +18,9 @@ export type DurabilityBackend = {
9
18
  };
10
19
 
11
20
  export type DurabilityCoordinator = {
21
+ setScheduledFlushErrorObserver(
22
+ observer: StorageScheduledFlushErrorObserver | undefined,
23
+ ): void;
12
24
  setDiskWritesAsync(enabled: boolean): void;
13
25
  isDiskWritesAsync(): boolean;
14
26
  hasPendingDiskWrite(key: string): boolean;
@@ -42,6 +54,8 @@ export function createDurabilityCoordinator(options: {
42
54
  let nextGeneration = 0;
43
55
  let diskFlushScheduled = false;
44
56
  let diskWritesAsync = false;
57
+ let scheduledFlushErrorObserver:
58
+ StorageScheduledFlushErrorObserver | undefined;
45
59
  const pendingSecureWrites = new Map<string, PendingSecureWrite>();
46
60
  let secureFlushScheduled = false;
47
61
  const securePromotionsInProgress = new Set<string>();
@@ -168,6 +182,33 @@ export function createDurabilityCoordinator(options: {
168
182
  }
169
183
  }
170
184
 
185
+ function reportScheduledFlushError(
186
+ scope: StorageScheduledFlushError["scope"],
187
+ error: unknown,
188
+ ): void {
189
+ const observer = scheduledFlushErrorObserver;
190
+ if (observer === undefined) {
191
+ throw error;
192
+ }
193
+ observer({ scope, error });
194
+ }
195
+
196
+ function flushScheduledDiskWrites(): void {
197
+ try {
198
+ flushDiskWrites();
199
+ } catch (error) {
200
+ reportScheduledFlushError(StorageScope.Disk, error);
201
+ }
202
+ }
203
+
204
+ function flushScheduledSecureWrites(): void {
205
+ try {
206
+ flushSecureWrites();
207
+ } catch (error) {
208
+ reportScheduledFlushError(StorageScope.Secure, error);
209
+ }
210
+ }
211
+
171
212
  function scheduleDiskWrite(
172
213
  key: string,
173
214
  value: string | undefined,
@@ -182,7 +223,7 @@ export function createDurabilityCoordinator(options: {
182
223
  return pendingWrite;
183
224
  }
184
225
  diskFlushScheduled = true;
185
- runMicrotask(flushDiskWrites);
226
+ runMicrotask(flushScheduledDiskWrites);
186
227
  return pendingWrite;
187
228
  }
188
229
 
@@ -204,7 +245,7 @@ export function createDurabilityCoordinator(options: {
204
245
  return pendingWrite;
205
246
  }
206
247
  secureFlushScheduled = true;
207
- runMicrotask(flushSecureWrites);
248
+ runMicrotask(flushScheduledSecureWrites);
208
249
  return pendingWrite;
209
250
  }
210
251
 
@@ -225,6 +266,9 @@ export function createDurabilityCoordinator(options: {
225
266
  }
226
267
 
227
268
  return {
269
+ setScheduledFlushErrorObserver(observer) {
270
+ scheduledFlushErrorObserver = observer;
271
+ },
228
272
  setDiskWritesAsync(enabled) {
229
273
  diskWritesAsync = enabled;
230
274
  if (!enabled) {
package/src/index.ts CHANGED
@@ -49,6 +49,10 @@ export type {
49
49
  VersionedValue,
50
50
  } from "./shared";
51
51
  export { isKeychainLockedError } from "./shared";
52
+ export type {
53
+ StorageScheduledFlushError,
54
+ StorageScheduledFlushErrorObserver,
55
+ } from "./core/durability";
52
56
 
53
57
  export { StorageScope, AccessControl, BiometricLevel } from "./Storage.types";
54
58
  export type { Storage } from "./Storage.nitro";
package/src/index.web.ts CHANGED
@@ -48,6 +48,10 @@ export type {
48
48
  VersionedValue,
49
49
  } from "./shared";
50
50
  export { isKeychainLockedError } from "./shared";
51
+ export type {
52
+ StorageScheduledFlushError,
53
+ StorageScheduledFlushErrorObserver,
54
+ } from "./core/durability";
51
55
 
52
56
  export { StorageScope, AccessControl, BiometricLevel } from "./Storage.types";
53
57
  export type { Storage } from "./Storage.nitro";
package/src/shared.ts CHANGED
@@ -75,7 +75,23 @@ export type MigrationContext = {
75
75
  removeRaw: (key: string) => void;
76
76
  };
77
77
 
78
- export type Migration = (context: MigrationContext) => void;
78
+ type CallableThenableResult<TResult> = TResult extends {
79
+ then?: infer Then;
80
+ }
81
+ ? Extract<Then, (...args: never[]) => unknown> extends never
82
+ ? never
83
+ : TResult
84
+ : never;
85
+
86
+ export type SynchronousCallbackResult<TResult> = [
87
+ CallableThenableResult<TResult>,
88
+ ] extends [never]
89
+ ? TResult
90
+ : never;
91
+
92
+ export type Migration<TResult = unknown> = (
93
+ context: MigrationContext,
94
+ ) => SynchronousCallbackResult<TResult>;
79
95
 
80
96
  export type KeyListenerRegistry = Map<string, Set<() => void>>;
81
97