@metamask-previews/snap-networks-utils 1.0.0-preview-e79d811 → 1.0.0-preview-521475b3

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/CHANGELOG.md CHANGED
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ### Added
11
11
 
12
+ - Add helpers `serialize`, `deserialize`, and `Serializable` for round-tripping `BigNumber`, `bigint`, `Uint8Array`, and `undefined` through snap state ([#197](https://github.com/MetaMask/internal-snaps/pull/197))
12
13
  - Add `InFlightCoalescer`, exported from a new `./dedupe` entry point, which coalesces concurrent async operations by key so callers share one in-flight run ([#149](https://github.com/MetaMask/internal-snaps/pull/149))
13
14
  - Add shared async batching utilities. ([#211](https://github.com/MetaMask/internal-snaps/pull/211))
14
15
  - Add origin permission helpers ([#193](https://github.com/MetaMask/internal-snaps/pull/193))
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateOrigin = exports.DEFAULT_METAMASK_ORIGIN = exports.DEFAULT_DEV_ORIGINS = exports.DEFAULT_PROD_ORIGINS = exports.createOriginPermissions = exports.LogLevel = exports.Logger = exports.chunks = exports.batchesAllWithChunks = exports.batchesAllSettledWithChunks = exports.batchesAllSettled = exports.batchesAll = exports.UrlStruct = exports.sanitizeUri = exports.sanitizeControlCharacters = exports.buildUrl = exports.safeMerge = exports.RemoteFeatureFlagsProvider = exports.REMOTE_FEATURE_FLAGS_PROVIDER_NAME = exports.AssetsProvider = exports.ASSETS_PROVIDER_NAME = void 0;
3
+ exports.validateOrigin = exports.DEFAULT_METAMASK_ORIGIN = exports.DEFAULT_DEV_ORIGINS = exports.DEFAULT_PROD_ORIGINS = exports.createOriginPermissions = exports.deserialize = exports.serialize = exports.LogLevel = exports.Logger = exports.chunks = exports.batchesAllWithChunks = exports.batchesAllSettledWithChunks = exports.batchesAllSettled = exports.batchesAll = exports.UrlStruct = exports.sanitizeUri = exports.sanitizeControlCharacters = exports.buildUrl = exports.safeMerge = exports.RemoteFeatureFlagsProvider = exports.REMOTE_FEATURE_FLAGS_PROVIDER_NAME = exports.AssetsProvider = exports.ASSETS_PROVIDER_NAME = void 0;
4
4
  var AssetsProvider_1 = require("./providers/assets/AssetsProvider.cjs");
5
5
  Object.defineProperty(exports, "ASSETS_PROVIDER_NAME", { enumerable: true, get: function () { return AssetsProvider_1.ASSETS_PROVIDER_NAME; } });
6
6
  Object.defineProperty(exports, "AssetsProvider", { enumerable: true, get: function () { return AssetsProvider_1.AssetsProvider; } });
@@ -25,6 +25,9 @@ Object.defineProperty(exports, "chunks", { enumerable: true, get: function () {
25
25
  var logger_1 = require("./logger/index.cjs");
26
26
  Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return logger_1.Logger; } });
27
27
  Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return logger_1.LogLevel; } });
28
+ var serialization_1 = require("./serialization/serialization.cjs");
29
+ Object.defineProperty(exports, "serialize", { enumerable: true, get: function () { return serialization_1.serialize; } });
30
+ Object.defineProperty(exports, "deserialize", { enumerable: true, get: function () { return serialization_1.deserialize; } });
28
31
  var createOriginPermissions_1 = require("./originPermissions/createOriginPermissions.cjs");
29
32
  Object.defineProperty(exports, "createOriginPermissions", { enumerable: true, get: function () { return createOriginPermissions_1.createOriginPermissions; } });
30
33
  Object.defineProperty(exports, "DEFAULT_PROD_ORIGINS", { enumerable: true, get: function () { return createOriginPermissions_1.DEFAULT_PROD_ORIGINS; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wEAI2C;AAHzC,sHAAA,oBAAoB,OAAA;AACpB,gHAAA,cAAc,OAAA;AAGhB,8GAIqE;AAHnE,gJAAA,kCAAkC,OAAA;AAClC,wIAAA,0BAA0B,OAAA;AAG5B,uDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,oDAA+C;AAAtC,oGAAA,QAAQ,OAAA;AAEjB,2CAAoE;AAA3D,qHAAA,yBAAyB,OAAA;AAAE,uGAAA,WAAW,OAAA;AAC/C,uDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,qCAMiB;AALf,mGAAA,UAAU,OAAA;AACV,0GAAA,iBAAiB,OAAA;AACjB,oHAAA,2BAA2B,OAAA;AAC3B,6GAAA,oBAAoB,OAAA;AACpB,+FAAA,MAAM,OAAA;AAER,6CAA4C;AAAnC,gGAAA,MAAM,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAQzB,2FAKqD;AAJnD,kIAAA,uBAAuB,OAAA;AACvB,+HAAA,oBAAoB,OAAA;AACpB,8HAAA,mBAAmB,OAAA;AACnB,kIAAA,uBAAuB,OAAA;AAGzB,yEAAoE;AAA3D,gHAAA,cAAc,OAAA","sourcesContent":["export {\n ASSETS_PROVIDER_NAME,\n AssetsProvider,\n type AssetsProviderMessenger,\n} from './providers/assets/AssetsProvider';\nexport {\n REMOTE_FEATURE_FLAGS_PROVIDER_NAME,\n RemoteFeatureFlagsProvider,\n type RemoteFeatureFlagsProviderMessenger,\n} from './providers/remote-feature-flags/RemoteFeatureFlagsProvider';\nexport { safeMerge } from './safeMerge/safeMerge';\nexport { buildUrl } from './buildUrl/buildUrl';\nexport type { BuildUrlParams } from './buildUrl/buildUrl';\nexport { sanitizeControlCharacters, sanitizeUri } from './sanitize';\nexport { UrlStruct } from './urlStruct/urlStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './async';\nexport { Logger, LogLevel } from './logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './logger';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './originPermissions/createOriginPermissions';\nexport { validateOrigin } from './originPermissions/validateOrigin';\n"]}
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wEAI2C;AAHzC,sHAAA,oBAAoB,OAAA;AACpB,gHAAA,cAAc,OAAA;AAGhB,8GAIqE;AAHnE,gJAAA,kCAAkC,OAAA;AAClC,wIAAA,0BAA0B,OAAA;AAG5B,uDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,oDAA+C;AAAtC,oGAAA,QAAQ,OAAA;AAEjB,2CAAoE;AAA3D,qHAAA,yBAAyB,OAAA;AAAE,uGAAA,WAAW,OAAA;AAC/C,uDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,qCAMiB;AALf,mGAAA,UAAU,OAAA;AACV,0GAAA,iBAAiB,OAAA;AACjB,oHAAA,2BAA2B,OAAA;AAC3B,6GAAA,oBAAoB,OAAA;AACpB,+FAAA,MAAM,OAAA;AAER,6CAA4C;AAAnC,gGAAA,MAAM,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAQzB,mEAAuE;AAA9D,0GAAA,SAAS,OAAA;AAAE,4GAAA,WAAW,OAAA;AAE/B,2FAKqD;AAJnD,kIAAA,uBAAuB,OAAA;AACvB,+HAAA,oBAAoB,OAAA;AACpB,8HAAA,mBAAmB,OAAA;AACnB,kIAAA,uBAAuB,OAAA;AAGzB,yEAAoE;AAA3D,gHAAA,cAAc,OAAA","sourcesContent":["export {\n ASSETS_PROVIDER_NAME,\n AssetsProvider,\n type AssetsProviderMessenger,\n} from './providers/assets/AssetsProvider';\nexport {\n REMOTE_FEATURE_FLAGS_PROVIDER_NAME,\n RemoteFeatureFlagsProvider,\n type RemoteFeatureFlagsProviderMessenger,\n} from './providers/remote-feature-flags/RemoteFeatureFlagsProvider';\nexport { safeMerge } from './safeMerge/safeMerge';\nexport { buildUrl } from './buildUrl/buildUrl';\nexport type { BuildUrlParams } from './buildUrl/buildUrl';\nexport { sanitizeControlCharacters, sanitizeUri } from './sanitize';\nexport { UrlStruct } from './urlStruct/urlStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './async';\nexport { Logger, LogLevel } from './logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './logger';\nexport { serialize, deserialize } from './serialization/serialization';\nexport type { Serializable } from './serialization/types';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './originPermissions/createOriginPermissions';\nexport { validateOrigin } from './originPermissions/validateOrigin';\n"]}
package/dist/index.d.cts CHANGED
@@ -8,6 +8,8 @@ export { UrlStruct } from "./urlStruct/urlStruct.cjs";
8
8
  export { batchesAll, batchesAllSettled, batchesAllSettledWithChunks, batchesAllWithChunks, chunks, } from "./async.cjs";
9
9
  export { Logger, LogLevel } from "./logger/index.cjs";
10
10
  export type { LoggerOptions, LoggerMethod, LogMethod, LogMethodDecorator, LoggerDecorators, } from "./logger/index.cjs";
11
+ export { serialize, deserialize } from "./serialization/serialization.cjs";
12
+ export type { Serializable } from "./serialization/types.cjs";
11
13
  export { createOriginPermissions, DEFAULT_PROD_ORIGINS, DEFAULT_DEV_ORIGINS, DEFAULT_METAMASK_ORIGIN, } from "./originPermissions/createOriginPermissions.cjs";
12
14
  export type { CreateOriginPermissionsParams } from "./originPermissions/createOriginPermissions.cjs";
13
15
  export { validateOrigin } from "./originPermissions/validateOrigin.cjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,KAAK,uBAAuB,GAC7B,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,mCAAmC,GACzC,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAC/C,YAAY,EAAE,cAAc,EAAE,gCAA4B;AAC1D,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,GACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAC5C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,2BAAiB;AAClB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,GACxB,wDAAoD;AACrD,YAAY,EAAE,6BAA6B,EAAE,wDAAoD;AACjG,OAAO,EAAE,cAAc,EAAE,+CAA2C"}
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,KAAK,uBAAuB,GAC7B,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,mCAAmC,GACzC,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAC/C,YAAY,EAAE,cAAc,EAAE,gCAA4B;AAC1D,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,GACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAC5C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,2BAAiB;AAClB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,0CAAsC;AACvE,YAAY,EAAE,YAAY,EAAE,kCAA8B;AAC1D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,GACxB,wDAAoD;AACrD,YAAY,EAAE,6BAA6B,EAAE,wDAAoD;AACjG,OAAO,EAAE,cAAc,EAAE,+CAA2C"}
package/dist/index.d.mts CHANGED
@@ -8,6 +8,8 @@ export { UrlStruct } from "./urlStruct/urlStruct.mjs";
8
8
  export { batchesAll, batchesAllSettled, batchesAllSettledWithChunks, batchesAllWithChunks, chunks, } from "./async.mjs";
9
9
  export { Logger, LogLevel } from "./logger/index.mjs";
10
10
  export type { LoggerOptions, LoggerMethod, LogMethod, LogMethodDecorator, LoggerDecorators, } from "./logger/index.mjs";
11
+ export { serialize, deserialize } from "./serialization/serialization.mjs";
12
+ export type { Serializable } from "./serialization/types.mjs";
11
13
  export { createOriginPermissions, DEFAULT_PROD_ORIGINS, DEFAULT_DEV_ORIGINS, DEFAULT_METAMASK_ORIGIN, } from "./originPermissions/createOriginPermissions.mjs";
12
14
  export type { CreateOriginPermissionsParams } from "./originPermissions/createOriginPermissions.mjs";
13
15
  export { validateOrigin } from "./originPermissions/validateOrigin.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,KAAK,uBAAuB,GAC7B,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,mCAAmC,GACzC,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAC/C,YAAY,EAAE,cAAc,EAAE,gCAA4B;AAC1D,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,GACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAC5C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,2BAAiB;AAClB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,GACxB,wDAAoD;AACrD,YAAY,EAAE,6BAA6B,EAAE,wDAAoD;AACjG,OAAO,EAAE,cAAc,EAAE,+CAA2C"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,KAAK,uBAAuB,GAC7B,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,KAAK,mCAAmC,GACzC,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAC/C,YAAY,EAAE,cAAc,EAAE,gCAA4B;AAC1D,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,GACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAC5C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,2BAAiB;AAClB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,0CAAsC;AACvE,YAAY,EAAE,YAAY,EAAE,kCAA8B;AAC1D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,GACxB,wDAAoD;AACrD,YAAY,EAAE,6BAA6B,EAAE,wDAAoD;AACjG,OAAO,EAAE,cAAc,EAAE,+CAA2C"}
package/dist/index.mjs CHANGED
@@ -6,6 +6,7 @@ export { sanitizeControlCharacters, sanitizeUri } from "./sanitize.mjs";
6
6
  export { UrlStruct } from "./urlStruct/urlStruct.mjs";
7
7
  export { batchesAll, batchesAllSettled, batchesAllSettledWithChunks, batchesAllWithChunks, chunks } from "./async.mjs";
8
8
  export { Logger, LogLevel } from "./logger/index.mjs";
9
+ export { serialize, deserialize } from "./serialization/serialization.mjs";
9
10
  export { createOriginPermissions, DEFAULT_PROD_ORIGINS, DEFAULT_DEV_ORIGINS, DEFAULT_METAMASK_ORIGIN } from "./originPermissions/createOriginPermissions.mjs";
10
11
  export { validateOrigin } from "./originPermissions/validateOrigin.mjs";
11
12
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EAEf,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAE3B,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAE/C,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,EACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAQ5C,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,wDAAoD;AAErD,OAAO,EAAE,cAAc,EAAE,+CAA2C","sourcesContent":["export {\n ASSETS_PROVIDER_NAME,\n AssetsProvider,\n type AssetsProviderMessenger,\n} from './providers/assets/AssetsProvider';\nexport {\n REMOTE_FEATURE_FLAGS_PROVIDER_NAME,\n RemoteFeatureFlagsProvider,\n type RemoteFeatureFlagsProviderMessenger,\n} from './providers/remote-feature-flags/RemoteFeatureFlagsProvider';\nexport { safeMerge } from './safeMerge/safeMerge';\nexport { buildUrl } from './buildUrl/buildUrl';\nexport type { BuildUrlParams } from './buildUrl/buildUrl';\nexport { sanitizeControlCharacters, sanitizeUri } from './sanitize';\nexport { UrlStruct } from './urlStruct/urlStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './async';\nexport { Logger, LogLevel } from './logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './logger';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './originPermissions/createOriginPermissions';\nexport { validateOrigin } from './originPermissions/validateOrigin';\n"]}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EAEf,8CAA0C;AAC3C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAE3B,wEAAoE;AACrE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EAAE,QAAQ,EAAE,gCAA4B;AAE/C,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,uBAAmB;AACpE,OAAO,EAAE,SAAS,EAAE,kCAA8B;AAClD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,EACP,oBAAgB;AACjB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAAiB;AAQ5C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,0CAAsC;AAEvE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,wDAAoD;AAErD,OAAO,EAAE,cAAc,EAAE,+CAA2C","sourcesContent":["export {\n ASSETS_PROVIDER_NAME,\n AssetsProvider,\n type AssetsProviderMessenger,\n} from './providers/assets/AssetsProvider';\nexport {\n REMOTE_FEATURE_FLAGS_PROVIDER_NAME,\n RemoteFeatureFlagsProvider,\n type RemoteFeatureFlagsProviderMessenger,\n} from './providers/remote-feature-flags/RemoteFeatureFlagsProvider';\nexport { safeMerge } from './safeMerge/safeMerge';\nexport { buildUrl } from './buildUrl/buildUrl';\nexport type { BuildUrlParams } from './buildUrl/buildUrl';\nexport { sanitizeControlCharacters, sanitizeUri } from './sanitize';\nexport { UrlStruct } from './urlStruct/urlStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './async';\nexport { Logger, LogLevel } from './logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './logger';\nexport { serialize, deserialize } from './serialization/serialization';\nexport type { Serializable } from './serialization/types';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './originPermissions/createOriginPermissions';\nexport { validateOrigin } from './originPermissions/validateOrigin';\n"]}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deserialize = exports.serialize = void 0;
4
+ const bignumber_js_1 = require("bignumber.js");
5
+ const lodash_1 = require("lodash");
6
+ /**
7
+ * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.
8
+ * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.
9
+ *
10
+ * @param value - The value to serialize.
11
+ * @returns The serialized value.
12
+ */
13
+ const serialize = (value) => (0, lodash_1.cloneDeepWith)(value, (val) => {
14
+ if (val === undefined) {
15
+ return {
16
+ __type: 'undefined',
17
+ };
18
+ }
19
+ if (val instanceof bignumber_js_1.BigNumber) {
20
+ return {
21
+ __type: 'BigNumber',
22
+ value: val.toString(),
23
+ };
24
+ }
25
+ if (typeof val === 'bigint') {
26
+ return {
27
+ __type: 'bigint',
28
+ value: val.toString(),
29
+ };
30
+ }
31
+ if (val instanceof Uint8Array) {
32
+ const binaryString = Array.from(val, (byte) => String.fromCharCode(byte)).join('');
33
+ return {
34
+ __type: 'Uint8Array',
35
+ value: btoa(binaryString),
36
+ };
37
+ }
38
+ // Return undefined to let lodash handle the cloning of other values
39
+ return undefined;
40
+ });
41
+ exports.serialize = serialize;
42
+ /**
43
+ * Deserializes the passed value from a JSON object back to its original values.
44
+ * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.
45
+ *
46
+ * @param serializedValue - The value to deserialize.
47
+ * @returns The deserialized value.
48
+ */
49
+ const deserialize = (serializedValue) => JSON.parse(JSON.stringify(serializedValue), (_key, value) => {
50
+ if (!value) {
51
+ return value;
52
+ }
53
+ if (value.__type === 'undefined') {
54
+ return undefined;
55
+ }
56
+ if (value.__type === 'BigNumber') {
57
+ return new bignumber_js_1.BigNumber(value.value);
58
+ }
59
+ if (value.__type === 'bigint') {
60
+ return BigInt(value.value);
61
+ }
62
+ if (value.__type === 'Uint8Array') {
63
+ const binaryString = atob(value.value);
64
+ const bytes = new Uint8Array(binaryString.length);
65
+ for (let index = 0; index < binaryString.length; index++) {
66
+ bytes[index] = binaryString.charCodeAt(index);
67
+ }
68
+ return bytes;
69
+ }
70
+ return value;
71
+ });
72
+ exports.deserialize = deserialize;
73
+ //# sourceMappingURL=serialization.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.cjs","sourceRoot":"","sources":["../../src/serialization/serialization.ts"],"names":[],"mappings":";;;AACA,+CAAyC;AACzC,mCAAuC;AAIvC;;;;;;GAMG;AACI,MAAM,SAAS,GAAG,CAAC,KAAmB,EAAQ,EAAE,CACrD,IAAA,sBAAa,EAAC,KAAK,EAAE,CAAC,GAAY,EAAE,EAAE;IACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,WAAW;SACpB,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,wBAAS,EAAE,CAAC;QAC7B,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAC5C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAC1B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACX,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;SAC1B,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CAAC;AAlCQ,QAAA,SAAS,aAkCjB;AAEL;;;;;;GAMG;AACI,MAAM,WAAW,GAAG,CAAC,eAAqB,EAAgB,EAAE,CACjE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,IAAI,wBAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAClD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACzD,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC,CAAC;AA5BQ,QAAA,WAAW,eA4BnB","sourcesContent":["import type { Json } from '@metamask/snaps-sdk';\nimport { BigNumber } from 'bignumber.js';\nimport { cloneDeepWith } from 'lodash';\n\nimport type { Serializable } from './types';\n\n/**\n * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.\n * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.\n *\n * @param value - The value to serialize.\n * @returns The serialized value.\n */\nexport const serialize = (value: Serializable): Json =>\n cloneDeepWith(value, (val: unknown) => {\n if (val === undefined) {\n return {\n __type: 'undefined',\n };\n }\n\n if (val instanceof BigNumber) {\n return {\n __type: 'BigNumber',\n value: val.toString(),\n };\n }\n\n if (typeof val === 'bigint') {\n return {\n __type: 'bigint',\n value: val.toString(),\n };\n }\n\n if (val instanceof Uint8Array) {\n const binaryString = Array.from(val, (byte) =>\n String.fromCharCode(byte),\n ).join('');\n return {\n __type: 'Uint8Array',\n value: btoa(binaryString),\n };\n }\n\n // Return undefined to let lodash handle the cloning of other values\n return undefined;\n });\n\n/**\n * Deserializes the passed value from a JSON object back to its original values.\n * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.\n *\n * @param serializedValue - The value to deserialize.\n * @returns The deserialized value.\n */\nexport const deserialize = (serializedValue: Json): Serializable =>\n JSON.parse(JSON.stringify(serializedValue), (_key, value) => {\n if (!value) {\n return value;\n }\n\n if (value.__type === 'undefined') {\n return undefined;\n }\n\n if (value.__type === 'BigNumber') {\n return new BigNumber(value.value);\n }\n\n if (value.__type === 'bigint') {\n return BigInt(value.value);\n }\n\n if (value.__type === 'Uint8Array') {\n const binaryString = atob(value.value);\n const bytes = new Uint8Array(binaryString.length);\n for (let index = 0; index < binaryString.length; index++) {\n bytes[index] = binaryString.charCodeAt(index);\n }\n return bytes;\n }\n\n return value;\n });\n"]}
@@ -0,0 +1,19 @@
1
+ import type { Json } from "@metamask/snaps-sdk";
2
+ import type { Serializable } from "./types.cjs";
3
+ /**
4
+ * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.
5
+ * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.
6
+ *
7
+ * @param value - The value to serialize.
8
+ * @returns The serialized value.
9
+ */
10
+ export declare const serialize: (value: Serializable) => Json;
11
+ /**
12
+ * Deserializes the passed value from a JSON object back to its original values.
13
+ * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.
14
+ *
15
+ * @param serializedValue - The value to deserialize.
16
+ * @returns The deserialized value.
17
+ */
18
+ export declare const deserialize: (serializedValue: Json) => Serializable;
19
+ //# sourceMappingURL=serialization.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.d.cts","sourceRoot":"","sources":["../../src/serialization/serialization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,4BAA4B;AAIhD,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAgB;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,YAAY,KAAG,IAkC5C,CAAC;AAEL;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,iBAAiB,IAAI,KAAG,YA4BhD,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { Json } from "@metamask/snaps-sdk";
2
+ import type { Serializable } from "./types.mjs";
3
+ /**
4
+ * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.
5
+ * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.
6
+ *
7
+ * @param value - The value to serialize.
8
+ * @returns The serialized value.
9
+ */
10
+ export declare const serialize: (value: Serializable) => Json;
11
+ /**
12
+ * Deserializes the passed value from a JSON object back to its original values.
13
+ * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.
14
+ *
15
+ * @param serializedValue - The value to deserialize.
16
+ * @returns The deserialized value.
17
+ */
18
+ export declare const deserialize: (serializedValue: Json) => Serializable;
19
+ //# sourceMappingURL=serialization.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.d.mts","sourceRoot":"","sources":["../../src/serialization/serialization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,4BAA4B;AAIhD,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAgB;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,YAAY,KAAG,IAkC5C,CAAC;AAEL;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,iBAAiB,IAAI,KAAG,YA4BhD,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import $lodash from "lodash";
3
+ const { cloneDeepWith } = $lodash;
4
+ /**
5
+ * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.
6
+ * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.
7
+ *
8
+ * @param value - The value to serialize.
9
+ * @returns The serialized value.
10
+ */
11
+ export const serialize = (value) => cloneDeepWith(value, (val) => {
12
+ if (val === undefined) {
13
+ return {
14
+ __type: 'undefined',
15
+ };
16
+ }
17
+ if (val instanceof BigNumber) {
18
+ return {
19
+ __type: 'BigNumber',
20
+ value: val.toString(),
21
+ };
22
+ }
23
+ if (typeof val === 'bigint') {
24
+ return {
25
+ __type: 'bigint',
26
+ value: val.toString(),
27
+ };
28
+ }
29
+ if (val instanceof Uint8Array) {
30
+ const binaryString = Array.from(val, (byte) => String.fromCharCode(byte)).join('');
31
+ return {
32
+ __type: 'Uint8Array',
33
+ value: btoa(binaryString),
34
+ };
35
+ }
36
+ // Return undefined to let lodash handle the cloning of other values
37
+ return undefined;
38
+ });
39
+ /**
40
+ * Deserializes the passed value from a JSON object back to its original values.
41
+ * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.
42
+ *
43
+ * @param serializedValue - The value to deserialize.
44
+ * @returns The deserialized value.
45
+ */
46
+ export const deserialize = (serializedValue) => JSON.parse(JSON.stringify(serializedValue), (_key, value) => {
47
+ if (!value) {
48
+ return value;
49
+ }
50
+ if (value.__type === 'undefined') {
51
+ return undefined;
52
+ }
53
+ if (value.__type === 'BigNumber') {
54
+ return new BigNumber(value.value);
55
+ }
56
+ if (value.__type === 'bigint') {
57
+ return BigInt(value.value);
58
+ }
59
+ if (value.__type === 'Uint8Array') {
60
+ const binaryString = atob(value.value);
61
+ const bytes = new Uint8Array(binaryString.length);
62
+ for (let index = 0; index < binaryString.length; index++) {
63
+ bytes[index] = binaryString.charCodeAt(index);
64
+ }
65
+ return bytes;
66
+ }
67
+ return value;
68
+ });
69
+ //# sourceMappingURL=serialization.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.mjs","sourceRoot":"","sources":["../../src/serialization/serialization.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,qBAAqB;;;AAKzC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAmB,EAAQ,EAAE,CACrD,aAAa,CAAC,KAAK,EAAE,CAAC,GAAY,EAAE,EAAE;IACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,WAAW;SACpB,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,SAAS,EAAE,CAAC;QAC7B,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAC5C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAC1B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACX,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;SAC1B,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CAAC;AAEL;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,eAAqB,EAAgB,EAAE,CACjE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAClD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACzD,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC,CAAC","sourcesContent":["import type { Json } from '@metamask/snaps-sdk';\nimport { BigNumber } from 'bignumber.js';\nimport { cloneDeepWith } from 'lodash';\n\nimport type { Serializable } from './types';\n\n/**\n * Serializes the passed value to a JSON object so it can be stored in JSON-serializable storage like the snap state and interface context.\n * It transforms non-JSON-serializable values into a specific JSON-serializable representation that can be deserialized later.\n *\n * @param value - The value to serialize.\n * @returns The serialized value.\n */\nexport const serialize = (value: Serializable): Json =>\n cloneDeepWith(value, (val: unknown) => {\n if (val === undefined) {\n return {\n __type: 'undefined',\n };\n }\n\n if (val instanceof BigNumber) {\n return {\n __type: 'BigNumber',\n value: val.toString(),\n };\n }\n\n if (typeof val === 'bigint') {\n return {\n __type: 'bigint',\n value: val.toString(),\n };\n }\n\n if (val instanceof Uint8Array) {\n const binaryString = Array.from(val, (byte) =>\n String.fromCharCode(byte),\n ).join('');\n return {\n __type: 'Uint8Array',\n value: btoa(binaryString),\n };\n }\n\n // Return undefined to let lodash handle the cloning of other values\n return undefined;\n });\n\n/**\n * Deserializes the passed value from a JSON object back to its original values.\n * It transforms the JSON-serializable representation of non-JSON-serializable values back into their original values.\n *\n * @param serializedValue - The value to deserialize.\n * @returns The deserialized value.\n */\nexport const deserialize = (serializedValue: Json): Serializable =>\n JSON.parse(JSON.stringify(serializedValue), (_key, value) => {\n if (!value) {\n return value;\n }\n\n if (value.__type === 'undefined') {\n return undefined;\n }\n\n if (value.__type === 'BigNumber') {\n return new BigNumber(value.value);\n }\n\n if (value.__type === 'bigint') {\n return BigInt(value.value);\n }\n\n if (value.__type === 'Uint8Array') {\n const binaryString = atob(value.value);\n const bytes = new Uint8Array(binaryString.length);\n for (let index = 0; index < binaryString.length; index++) {\n bytes[index] = binaryString.charCodeAt(index);\n }\n return bytes;\n }\n\n return value;\n });\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../src/serialization/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Json } from '@metamask/snaps-sdk';\nimport type { BigNumber } from 'bignumber.js';\n\n/**\n * A primitive value that can be serialized to JSON using the `serialize` function.\n */\nexport type Serializable =\n | Json\n | undefined\n | null\n | bigint\n | BigNumber\n | Uint8Array\n | Serializable[]\n | {\n [prop: string]: Serializable;\n };\n"]}
@@ -0,0 +1,8 @@
1
+ import type { Json } from "@metamask/snaps-sdk";
2
+ /**
3
+ * A primitive value that can be serialized to JSON using the `serialize` function.
4
+ */
5
+ export type Serializable = Json | undefined | null | bigint | BigNumber | Uint8Array | Serializable[] | {
6
+ [prop: string]: Serializable;
7
+ };
8
+ //# sourceMappingURL=types.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../src/serialization/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,4BAA4B;AAGhD;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,SAAS,GACT,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,GACV,YAAY,EAAE,GACd;IACE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Json } from "@metamask/snaps-sdk";
2
+ /**
3
+ * A primitive value that can be serialized to JSON using the `serialize` function.
4
+ */
5
+ export type Serializable = Json | undefined | null | bigint | BigNumber | Uint8Array | Serializable[] | {
6
+ [prop: string]: Serializable;
7
+ };
8
+ //# sourceMappingURL=types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../src/serialization/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,4BAA4B;AAGhD;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,SAAS,GACT,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,GACV,YAAY,EAAE,GACd;IACE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/serialization/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Json } from '@metamask/snaps-sdk';\nimport type { BigNumber } from 'bignumber.js';\n\n/**\n * A primitive value that can be serialized to JSON using the `serialize` function.\n */\nexport type Serializable =\n | Json\n | undefined\n | null\n | bigint\n | BigNumber\n | Uint8Array\n | Serializable[]\n | {\n [prop: string]: Serializable;\n };\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/snap-networks-utils",
3
- "version": "1.0.0-preview-e79d811",
3
+ "version": "1.0.0-preview-521475b3",
4
4
  "description": "Shared utilities for MetaMask network snaps",
5
5
  "keywords": [
6
6
  "Ethereum",
@@ -75,13 +75,16 @@
75
75
  "@metamask/remote-feature-flag-controller": "^5.0.0",
76
76
  "@metamask/snaps-sdk": "^11.2.0",
77
77
  "@metamask/superstruct": "^3.4.1",
78
- "@metamask/utils": "^11.11.0"
78
+ "@metamask/utils": "^11.11.0",
79
+ "bignumber.js": "^9.3.1",
80
+ "lodash": "^4.17.21"
79
81
  },
80
82
  "devDependencies": {
81
83
  "@metamask/auto-changelog": "^6.1.1",
82
84
  "@metamask/messenger": "^2.0.0",
83
85
  "@ts-bridge/cli": "^0.6.4",
84
86
  "@types/jest": "^30.0.0",
87
+ "@types/lodash": "^4.17.15",
85
88
  "deepmerge": "^4.2.2",
86
89
  "jest": "30.0.3",
87
90
  "ts-jest": "^29.4.1",