react-native-nitro-storage 0.3.2 → 0.4.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 (36) hide show
  1. package/README.md +141 -30
  2. package/android/src/main/cpp/AndroidStorageAdapterCpp.cpp +22 -2
  3. package/android/src/main/cpp/AndroidStorageAdapterCpp.hpp +3 -0
  4. package/android/src/main/java/com/nitrostorage/AndroidStorageAdapter.kt +54 -5
  5. package/cpp/bindings/HybridStorage.cpp +167 -22
  6. package/cpp/bindings/HybridStorage.hpp +12 -1
  7. package/cpp/core/NativeStorageAdapter.hpp +3 -0
  8. package/ios/IOSStorageAdapterCpp.hpp +16 -0
  9. package/ios/IOSStorageAdapterCpp.mm +135 -11
  10. package/lib/commonjs/index.js +466 -275
  11. package/lib/commonjs/index.js.map +1 -1
  12. package/lib/commonjs/index.web.js +564 -270
  13. package/lib/commonjs/index.web.js.map +1 -1
  14. package/lib/commonjs/internal.js +25 -0
  15. package/lib/commonjs/internal.js.map +1 -1
  16. package/lib/module/index.js +466 -277
  17. package/lib/module/index.js.map +1 -1
  18. package/lib/module/index.web.js +564 -272
  19. package/lib/module/index.web.js.map +1 -1
  20. package/lib/module/internal.js +24 -0
  21. package/lib/module/internal.js.map +1 -1
  22. package/lib/typescript/Storage.nitro.d.ts +2 -0
  23. package/lib/typescript/Storage.nitro.d.ts.map +1 -1
  24. package/lib/typescript/index.d.ts +38 -1
  25. package/lib/typescript/index.d.ts.map +1 -1
  26. package/lib/typescript/index.web.d.ts +40 -1
  27. package/lib/typescript/index.web.d.ts.map +1 -1
  28. package/lib/typescript/internal.d.ts +1 -0
  29. package/lib/typescript/internal.d.ts.map +1 -1
  30. package/nitrogen/generated/shared/c++/HybridStorageSpec.cpp +2 -0
  31. package/nitrogen/generated/shared/c++/HybridStorageSpec.hpp +2 -0
  32. package/package.json +1 -1
  33. package/src/Storage.nitro.ts +2 -0
  34. package/src/index.ts +616 -296
  35. package/src/index.web.ts +728 -288
  36. package/src/internal.ts +28 -0
@@ -1 +1 @@
1
- {"version":3,"names":["_Storage","require","_internal","_migration","_storageHooks","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","memoryStore","memoryListeners","webScopeListeners","StorageScope","Disk","Secure","scopedRawCache","webScopeKeyIndex","Set","hydratedWebScopeKeyIndex","pendingSecureWrites","secureFlushScheduled","SECURE_WEB_PREFIX","BIOMETRIC_WEB_PREFIX","hasWarnedAboutWebBiometricFallback","getBrowserStorage","scope","globalThis","localStorage","undefined","toSecureStorageKey","key","fromSecureStorageKey","slice","length","toBiometricStorageKey","fromBiometricStorageKey","getWebScopeKeyIndex","get","hydrateWebScopeKeyIndex","has","storage","keyIndex","clear","index","startsWith","add","ensureWebScopeKeyIndex","getScopedListeners","getScopeRawCache","cacheRawValue","value","set","readCachedRawValue","hasCachedRawValue","clearScopeRawCache","notifyKeyListeners","registry","forEach","listener","notifyAllListeners","listeners","addKeyListener","scopedListeners","delete","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","values","keysToSet","valuesToSet","keysToRemove","push","WebStorage","setBatch","removeBatch","scheduleSecureWrite","name","equals","other","dispose","storageKey","setItem","getItem","remove","removeItem","i","getBatch","map","removeByPrefix","prefix","filter","addOnChange","_scope","_callback","getAllKeys","setSecureAccessControl","setSecureWritesAsync","_enabled","setKeychainAccessGroup","setSecureBiometric","__DEV__","console","warn","getSecureBiometric","deleteSecureBiometric","hasSecureBiometric","clearSecureBiometric","keysToNotify","toRemove","k","getRawValue","assertValidScope","Memory","setRawValue","removeRawValue","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","exports","clearAll","clearNamespace","namespace","isNamespaced","keyPrefix","prefixKey","clearBiometric","getAll","result","val","setAccessControl","_level","_group","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","serialize","deserialize","isMemory","isBiometric","biometric","secureAccessControl","accessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","defaultValue","nonMemoryScope","Error","unsubscribe","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","Date","now","writeStoredRaw","rawValue","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","newValue","deleteItem","hasItem","subscribe","storageItem","_triggerListeners","_readCacheEnabled","items","assertBatchScope","useRawBatchPath","every","useBatchCache","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","secureEntries","internal","canUseSecureBatchPath","groupedByAccessControl","AccessControl","WhenUnlocked","existingGroup","group","entry","registerMigration","migration","isInteger","migrateToLatest","currentVersion","versions","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","rollback","rememberRollback","tx","error","entries","reverse","previousValue","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_Storage","require","_internal","_migration","_storageHooks","asInternal","item","isUpdater","valueOrFn","typedKeys","record","Object","keys","registeredMigrations","Map","runMicrotask","queueMicrotask","task","Promise","resolve","then","memoryStore","memoryListeners","webScopeListeners","StorageScope","Disk","Secure","scopedRawCache","webScopeKeyIndex","Set","hydratedWebScopeKeyIndex","pendingSecureWrites","secureFlushScheduled","SECURE_WEB_PREFIX","BIOMETRIC_WEB_PREFIX","hasWarnedAboutWebBiometricFallback","hasWebStorageEventSubscription","metricsObserver","metricsCounters","recordMetric","operation","scope","durationMs","keysCount","existing","get","set","count","totalDurationMs","maxDurationMs","Math","max","measureOperation","fn","start","Date","now","createLocalStorageWebSecureBackend","getItem","key","globalThis","localStorage","setItem","value","removeItem","clear","getAllKeys","storage","index","length","push","webSecureStorageBackend","getBrowserStorage","undefined","toSecureStorageKey","fromSecureStorageKey","slice","toBiometricStorageKey","fromBiometricStorageKey","getWebScopeKeyIndex","hydrateWebScopeKeyIndex","has","keyIndex","startsWith","add","ensureWebScopeKeyIndex","handleWebStorageEvent","event","clearScopeRawCache","notifyAllListeners","getScopedListeners","plainKey","newValue","delete","cacheRawValue","notifyKeyListeners","ensureWebStorageEventSubscription","window","addEventListener","getScopeRawCache","readCachedRawValue","hasCachedRawValue","registry","forEach","listener","listeners","addKeyListener","scopedListeners","size","readPendingSecureWrite","hasPendingSecureWrite","clearPendingSecureWrite","flushSecureWrites","writes","Array","from","values","groupedSetWrites","keysToRemove","accessControl","resolvedAccessControl","AccessControl","WhenUnlocked","existingGroup","group","WebStorage","setSecureAccessControl","setBatch","removeBatch","scheduleSecureWrite","pendingWrite","name","equals","other","dispose","storageKey","remove","i","getBatch","map","removeByPrefix","prefix","filter","addOnChange","_scope","_callback","getKeysByPrefix","setSecureWritesAsync","_enabled","setKeychainAccessGroup","setSecureBiometric","setSecureBiometricWithLevel","BiometricLevel","BiometryOnly","_level","__DEV__","console","warn","getSecureBiometric","deleteSecureBiometric","hasSecureBiometric","clearSecureBiometric","keysToNotify","toRemove","k","getRawValue","assertValidScope","Memory","setRawValue","removeRawValue","readMigrationVersion","raw","MIGRATION_VERSION_KEY","parsed","Number","parseInt","isFinite","writeMigrationVersion","version","String","exports","clearAll","clearNamespace","namespace","isNamespaced","keyPrefix","prefixKey","clearBiometric","getByPrefix","result","getAll","val","setAccessControl","_group","setMetricsObserver","observer","getMetricsSnapshot","snapshot","avgDurationMs","resetMetrics","setWebSecureStorageBackend","backend","getWebSecureStorageBackend","canUseRawBatchPath","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","createStorageItem","config","serialize","deserialize","isMemory","resolvedBiometricLevel","biometricLevel","biometric","None","isBiometric","secureAccessControl","validate","onValidationError","expiration","onExpired","expirationTtlMs","ttlMs","memoryExpiration","readCache","coalesceSecureWrites","defaultValue","nonMemoryScope","Error","unsubscribe","lastRaw","lastValue","hasLastValue","lastExpiresAt","invalidateParsedCache","ensureSubscription","callback","readStoredRaw","expiresAt","writeStoredRaw","rawValue","removeStoredRaw","writeValueWithoutValidation","serialized","envelope","__nitroStorageEnvelope","payload","JSON","stringify","resolveInvalidValue","invalidValue","ensureValidatedValue","candidate","hadStoredValue","resolved","getInternal","deserializableRaw","envelopeExpiresAt","parse","isStoredEnvelope","getCurrentVersion","toVersionToken","getWithVersion","setIfVersion","currentVersion","deleteItem","hasItem","subscribe","storageItem","_triggerListeners","_readCacheEnabled","_defaultValue","items","assertBatchScope","useRawBatchPath","every","rawValues","keysToFetch","keyIndexes","fetchedValues","targetIndex","batchEntry","secureEntries","internal","canUseSecureBatchPath","groupedByAccessControl","entry","registerMigration","migration","isInteger","migrateToLatest","versions","sort","a","b","appliedVersion","context","getRaw","setRaw","removeRaw","runTransaction","transaction","rollback","rememberRollback","tx","error","rollbackEntries","entries","reverse","previousValue","keysToSet","valuesToSet","createSecureAuthStorage","options","ns","itemConfig","expirationConfig"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
@@ -12,11 +12,13 @@ exports.isNamespaced = isNamespaced;
12
12
  exports.isStoredEnvelope = isStoredEnvelope;
13
13
  exports.prefixKey = prefixKey;
14
14
  exports.serializeWithPrimitiveFastPath = serializeWithPrimitiveFastPath;
15
+ exports.toVersionToken = toVersionToken;
15
16
  var _Storage = require("./Storage.types");
16
17
  const MIGRATION_VERSION_KEY = exports.MIGRATION_VERSION_KEY = "__nitro_storage_migration_version__";
17
18
  const NATIVE_BATCH_MISSING_SENTINEL = exports.NATIVE_BATCH_MISSING_SENTINEL = "__nitro_storage_batch_missing__::v1";
18
19
  const PRIMITIVE_FAST_PATH_PREFIX = "__nitro_storage_primitive__:";
19
20
  const NAMESPACE_SEPARATOR = ":";
21
+ const VERSION_TOKEN_PREFIX = "__nitro_storage_version__:";
20
22
  function isStoredEnvelope(value) {
21
23
  if (typeof value !== "object" || value === null) {
22
24
  return false;
@@ -109,4 +111,27 @@ function deserializeWithPrimitiveFastPath(value) {
109
111
  return value;
110
112
  }
111
113
  }
114
+ function fnv1aHash(value) {
115
+ let hash = 0x811c9dc5;
116
+ for (let index = 0; index < value.length; index += 1) {
117
+ hash ^= value.charCodeAt(index);
118
+ hash = Math.imul(hash, 0x01000193);
119
+ }
120
+ return (hash >>> 0).toString(16).padStart(8, "0");
121
+ }
122
+ function toVersionToken(raw) {
123
+ if (raw === undefined) {
124
+ return `${VERSION_TOKEN_PREFIX}missing`;
125
+ }
126
+ if (typeof raw === "string") {
127
+ return `${VERSION_TOKEN_PREFIX}${raw.length}:${fnv1aHash(raw)}`;
128
+ }
129
+ let normalized;
130
+ try {
131
+ normalized = JSON.stringify(raw) ?? String(raw);
132
+ } catch {
133
+ normalized = String(raw);
134
+ }
135
+ return `${VERSION_TOKEN_PREFIX}${normalized.length}:${fnv1aHash(normalized)}`;
136
+ }
112
137
  //# sourceMappingURL=internal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Storage","require","MIGRATION_VERSION_KEY","exports","NATIVE_BATCH_MISSING_SENTINEL","PRIMITIVE_FAST_PATH_PREFIX","NAMESPACE_SEPARATOR","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","deserializeWithPrimitiveFastPath","encodedValue","slice","length","separatorIndex","indexOf","tag","parsed","parse"],"sourceRoot":"../../src","sources":["internal.ts"],"mappings":"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","ignoreList":[]}
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","deserializeWithPrimitiveFastPath","encodedValue","slice","length","separatorIndex","indexOf","tag","parsed","parse","fnv1aHash","hash","index","charCodeAt","Math","imul","toString","padStart","toVersionToken","raw","normalized"],"sourceRoot":"../../src","sources":["internal.ts"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEO,MAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG,qCAAqC;AACnE,MAAME,6BAA6B,GAAAD,OAAA,CAAAC,6BAAA,GACxC,qCAAqC;AACvC,MAAMC,0BAA0B,GAAG,8BAA8B;AACjE,MAAMC,mBAAmB,GAAG,GAAG;AAC/B,MAAMC,oBAAoB,GAAG,4BAA4B;AAQlD,SAASC,gBAAgBA,CAACC,KAAc,EAA2B;EACxE,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE;IAC/C,OAAO,KAAK;EACd;EAEA,MAAMC,SAAS,GAAGD,KAAgC;EAClD,OACEC,SAAS,CAACC,sBAAsB,KAAK,IAAI,IACzC,OAAOD,SAAS,CAACE,SAAS,KAAK,QAAQ,IACvC,OAAOF,SAAS,CAACG,OAAO,KAAK,QAAQ;AAEzC;AAEO,SAASC,gBAAgBA,CAACC,KAAmB,EAAQ;EAC1D,IACEA,KAAK,KAAKC,qBAAY,CAACC,MAAM,IAC7BF,KAAK,KAAKC,qBAAY,CAACE,IAAI,IAC3BH,KAAK,KAAKC,qBAAY,CAACG,MAAM,EAC7B;IACA,MAAM,IAAIC,KAAK,CAAC,0BAA0BC,MAAM,CAACN,KAAK,CAAC,EAAE,CAAC;EAC5D;AACF;AAOO,SAASO,gBAAgBA,CAC9BC,KAAiC,EACjCR,KAAmB,EACb;EACN,MAAMS,cAAc,GAAGD,KAAK,CAACE,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACX,KAAK,KAAKA,KAAK,CAAC;EACjE,IAAI,CAACS,cAAc,EAAE;IACnB;EACF;EAEA,MAAMG,aAAa,GAAGX,qBAAY,CAACD,KAAK,CAAC,IAAIM,MAAM,CAACN,KAAK,CAAC;EAC1D,MAAMa,WAAW,GACfZ,qBAAY,CAACQ,cAAc,CAACT,KAAK,CAAC,IAAIM,MAAM,CAACG,cAAc,CAACT,KAAK,CAAC;EAEpE,MAAM,IAAIK,KAAK,CACb,6BAA6BI,cAAc,CAACK,GAAG,eAAeF,aAAa,cAAcC,WAAW,GACtG,CAAC;AACH;AAEO,SAASE,sBAAsBA,CACpCrB,KAAyB,EACL;EACpB,IAAIA,KAAK,KAAKL,6BAA6B,EAAE;IAC3C,OAAO2B,SAAS;EAClB;EAEA,OAAOtB,KAAK;AACd;AAEO,SAASuB,SAASA,CAACC,SAA6B,EAAEJ,GAAW,EAAU;EAC5E,IAAI,CAACI,SAAS,EAAE,OAAOJ,GAAG;EAC1B,OAAO,GAAGI,SAAS,GAAG3B,mBAAmB,GAAGuB,GAAG,EAAE;AACnD;AAEO,SAASK,YAAYA,CAACL,GAAW,EAAEI,SAAiB,EAAW;EACpE,OAAOJ,GAAG,CAACM,UAAU,CAAC,GAAGF,SAAS,GAAG3B,mBAAmB,EAAE,CAAC;AAC7D;AAEO,SAAS8B,8BAA8BA,CAAI3B,KAAQ,EAAU;EAClE,IAAIA,KAAK,KAAK,IAAI,EAAE;IAClB,OAAO,GAAGJ,0BAA0B,GAAG;EACzC;EAEA,QAAQ,OAAOI,KAAK;IAClB,KAAK,QAAQ;MACX,OAAO,GAAGJ,0BAA0B,KAAKI,KAAK,EAAE;IAClD,KAAK,QAAQ;MACX,IAAI4B,MAAM,CAACC,QAAQ,CAAC7B,KAAK,CAAC,EAAE;QAC1B,OAAO,GAAGJ,0BAA0B,KAAKI,KAAK,EAAE;MAClD;MACA;IACF,KAAK,SAAS;MACZ,OAAO,GAAGJ,0BAA0B,KAAKI,KAAK,GAAG,GAAG,GAAG,GAAG,EAAE;IAC9D,KAAK,WAAW;MACd,OAAO,GAAGJ,0BAA0B,GAAG;IACzC;MACE;EACJ;EAEA,MAAMkC,UAAU,GAAGC,IAAI,CAACC,SAAS,CAAChC,KAAK,CAAC;EACxC,IAAI8B,UAAU,KAAKR,SAAS,EAAE;IAC5B,MAAM,IAAIX,KAAK,CACb,yFACF,CAAC;EACH;EACA,OAAOmB,UAAU;AACnB;AAEO,SAASG,gCAAgCA,CAAIjC,KAAa,EAAK;EACpE,IAAIA,KAAK,CAAC0B,UAAU,CAAC9B,0BAA0B,CAAC,EAAE;IAChD,MAAMsC,YAAY,GAAGlC,KAAK,CAACmC,KAAK,CAACvC,0BAA0B,CAACwC,MAAM,CAAC;IACnE,IAAIF,YAAY,KAAK,GAAG,EAAE;MACxB,OAAOZ,SAAS;IAClB;IACA,IAAIY,YAAY,KAAK,GAAG,EAAE;MACxB,OAAO,IAAI;IACb;IAEA,MAAMG,cAAc,GAAGH,YAAY,CAACI,OAAO,CAAC,GAAG,CAAC;IAChD,IAAID,cAAc,GAAG,CAAC,EAAE;MACtB,MAAME,GAAG,GAAGL,YAAY,CAACC,KAAK,CAAC,CAAC,EAAEE,cAAc,CAAC;MACjD,MAAMjC,OAAO,GAAG8B,YAAY,CAACC,KAAK,CAACE,cAAc,GAAG,CAAC,CAAC;MACtD,IAAIE,GAAG,KAAK,GAAG,EAAE;QACf,OAAOnC,OAAO;MAChB;MACA,IAAImC,GAAG,KAAK,GAAG,EAAE;QACf,OAAQnC,OAAO,KAAK,GAAG;MACzB;MACA,IAAImC,GAAG,KAAK,GAAG,EAAE;QACf,MAAMC,MAAM,GAAGZ,MAAM,CAACxB,OAAO,CAAC;QAC9B,IAAIwB,MAAM,CAACC,QAAQ,CAACW,MAAM,CAAC,EAAE;UAC3B,OAAOA,MAAM;QACf;MACF;IACF;EACF;EAEA,IAAI;IACF,OAAOT,IAAI,CAACU,KAAK,CAACzC,KAAK,CAAC;EAC1B,CAAC,CAAC,MAAM;IACN,OAAOA,KAAK;EACd;AACF;AAEA,SAAS0C,SAASA,CAAC1C,KAAa,EAAU;EACxC,IAAI2C,IAAI,GAAG,UAAU;EACrB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAG5C,KAAK,CAACoC,MAAM,EAAEQ,KAAK,IAAI,CAAC,EAAE;IACpDD,IAAI,IAAI3C,KAAK,CAAC6C,UAAU,CAACD,KAAK,CAAC;IAC/BD,IAAI,GAAGG,IAAI,CAACC,IAAI,CAACJ,IAAI,EAAE,UAAU,CAAC;EACpC;EACA,OAAO,CAACA,IAAI,KAAK,CAAC,EAAEK,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AACnD;AAEO,SAASC,cAAcA,CAACC,GAAY,EAAU;EACnD,IAAIA,GAAG,KAAK7B,SAAS,EAAE;IACrB,OAAO,GAAGxB,oBAAoB,SAAS;EACzC;EAEA,IAAI,OAAOqD,GAAG,KAAK,QAAQ,EAAE;IAC3B,OAAO,GAAGrD,oBAAoB,GAAGqD,GAAG,CAACf,MAAM,IAAIM,SAAS,CAACS,GAAG,CAAC,EAAE;EACjE;EAEA,IAAIC,UAAkB;EACtB,IAAI;IACFA,UAAU,GAAGrB,IAAI,CAACC,SAAS,CAACmB,GAAG,CAAC,IAAIvC,MAAM,CAACuC,GAAG,CAAC;EACjD,CAAC,CAAC,MAAM;IACNC,UAAU,GAAGxC,MAAM,CAACuC,GAAG,CAAC;EAC1B;EACA,OAAO,GAAGrD,oBAAoB,GAAGsD,UAAU,CAAChB,MAAM,IAAIM,SAAS,CAACU,UAAU,CAAC,EAAE;AAC/E","ignoreList":[]}