@metamask-previews/snap-networks-utils 1.0.0-preview-bbe2c39 → 1.0.0-preview-1ad90ff1

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,8 +9,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ### Added
11
11
 
12
- - Add the shared Security Alerts API HTTP client for transaction scans (`SecurityAlertsApiClient` posting a typed body to a single `scanUrl`, `SecurityAlertsHttpError`, `SECURITY_ALERTS_REQUEST_HEADERS`), the common scan request wire type (`SecurityAlertsScanRequestBase`), and the scan vocabulary shared by network snaps (`SecurityAlertsScanOption`, `SecurityAlertsScanStatus`, `SecurityAlertResponse`, `normalizeScanOrigin`)
13
-
14
12
  - Add a shared `EstimatedChanges` Snaps JSX component for transaction confirmations, rendering send/receive asset rows with loading, not-available, and no-changes states ([#369](https://github.com/MetaMask/internal-snaps/pull/369))
15
13
  - Add `SynchronizationError`, `formatAccountSyncFailures`, and the `AccountSyncFailure` type, for reporting account synchronization failures with per-account failure details embedded in the error message (details must live in the message because `snap_trackError` only serializes `name`, `message`, `stack`, and `cause`). ([#374](https://github.com/MetaMask/internal-snaps/pull/374))
16
14
  - Add `wrapSnapHandlers` to wrap any Snap entrypoint handlers with `withCatchAndThrowSnapError`, with optional per-handler `logError` overrides ([#341](https://github.com/MetaMask/internal-snaps/pull/341))
package/dist/index.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PROOF_OF_OWNERSHIP_MESSAGE_PREFIX = exports.ProofOfOwnershipMessageStruct = exports.ProofOfOwnershipBatchSuccessStruct = exports.ProofOfOwnershipBatchResponseStruct = exports.ProofOfOwnershipBatchRequestParamsStruct = exports.ProofOfOwnershipBatchRequestItemStruct = exports.ProofOfOwnershipBatchItemResponseStruct = exports.ProofOfOwnershipBatchErrorStruct = exports.parseProofOfOwnershipMessage = exports.deserialize = exports.serialize = exports.LogLevel = exports.Logger = exports.chunks = exports.batchesAllWithChunks = exports.batchesAllSettledWithChunks = exports.batchesAllSettled = exports.batchesAll = exports.EnvironmentStruct = exports.Environment = exports.LogLevelStruct = exports.parseFloatStruct = exports.parseIntegerStruct = exports.emptyToUndefined = exports.defaultedUrlStruct = exports.commaSeparatedListOf = exports.BaseConfigProvider = exports.parseEnv = exports.asStrictKeyringAccount = exports.UuidStruct = exports.UrlStruct = exports.sanitizeUri = exports.sanitizeControlCharacters = exports.buildUrl = exports.safeMerge = exports.SecurityAlertsScanStatus = exports.SecurityAlertsScanOption = exports.SecurityAlertResponse = exports.normalizeScanOrigin = exports.METAMASK_ORIGIN_URL = exports.SECURITY_ALERTS_REQUEST_HEADERS = exports.SecurityAlertsHttpError = exports.SecurityAlertsApiClient = exports.TransactionEventType = exports.SecurityEventType = exports.AnalyticsService = exports.RemoteFeatureFlagsProvider = exports.REMOTE_FEATURE_FLAGS_PROVIDER_NAME = exports.AssetsProvider = exports.ASSETS_PROVIDER_NAME = void 0;
4
- exports.wrapSnapHandlers = exports.noopAssetHandlers = exports.useCacheUntil = exports.useCache = exports.StateCache = exports.InMemoryCache = exports.EstimatedChanges = exports.InFlightCoalescer = exports.SynchronizationError = exports.stringifyReason = exports.normalizeError = exports.isSnapRpcError = exports.getSyncFailuresFromSettledResult = exports.formatAccountSyncFailures = exports.createWithCatchAndThrowSnapError = exports.createTrackError = exports.createSnapErrorHandling = exports.InMemoryState = exports.State = exports.validateOrigin = exports.DEFAULT_METAMASK_ORIGIN = exports.DEFAULT_DEV_ORIGINS = exports.DEFAULT_PROD_ORIGINS = exports.createOriginPermissions = void 0;
3
+ exports.createSnapErrorHandling = exports.InMemoryState = exports.State = exports.validateOrigin = exports.DEFAULT_METAMASK_ORIGIN = exports.DEFAULT_DEV_ORIGINS = exports.DEFAULT_PROD_ORIGINS = exports.createOriginPermissions = exports.PROOF_OF_OWNERSHIP_MESSAGE_PREFIX = exports.ProofOfOwnershipMessageStruct = exports.ProofOfOwnershipBatchSuccessStruct = exports.ProofOfOwnershipBatchResponseStruct = exports.ProofOfOwnershipBatchRequestParamsStruct = exports.ProofOfOwnershipBatchRequestItemStruct = exports.ProofOfOwnershipBatchItemResponseStruct = exports.ProofOfOwnershipBatchErrorStruct = exports.parseProofOfOwnershipMessage = exports.deserialize = exports.serialize = exports.LogLevel = exports.Logger = exports.chunks = exports.batchesAllWithChunks = exports.batchesAllSettledWithChunks = exports.batchesAllSettled = exports.batchesAll = exports.EnvironmentStruct = exports.Environment = exports.LogLevelStruct = exports.parseFloatStruct = exports.parseIntegerStruct = exports.emptyToUndefined = exports.defaultedUrlStruct = exports.commaSeparatedListOf = exports.BaseConfigProvider = exports.parseEnv = exports.asStrictKeyringAccount = exports.UuidStruct = exports.UrlStruct = exports.sanitizeUri = exports.sanitizeControlCharacters = exports.buildUrl = exports.safeMerge = exports.TransactionEventType = exports.SecurityEventType = exports.AnalyticsService = exports.RemoteFeatureFlagsProvider = exports.REMOTE_FEATURE_FLAGS_PROVIDER_NAME = exports.AssetsProvider = exports.ASSETS_PROVIDER_NAME = void 0;
4
+ exports.wrapSnapHandlers = exports.noopAssetHandlers = exports.useCacheUntil = exports.useCache = exports.StateCache = exports.InMemoryCache = exports.EstimatedChanges = exports.InFlightCoalescer = exports.SynchronizationError = exports.stringifyReason = exports.normalizeError = exports.isSnapRpcError = exports.getSyncFailuresFromSettledResult = exports.formatAccountSyncFailures = exports.createWithCatchAndThrowSnapError = exports.createTrackError = void 0;
5
5
  var AssetsProvider_1 = require("./providers/assets/AssetsProvider.cjs");
6
6
  Object.defineProperty(exports, "ASSETS_PROVIDER_NAME", { enumerable: true, get: function () { return AssetsProvider_1.ASSETS_PROVIDER_NAME; } });
7
7
  Object.defineProperty(exports, "AssetsProvider", { enumerable: true, get: function () { return AssetsProvider_1.AssetsProvider; } });
@@ -12,16 +12,6 @@ var AnalyticsService_1 = require("./services/analytics/AnalyticsService.cjs");
12
12
  Object.defineProperty(exports, "AnalyticsService", { enumerable: true, get: function () { return AnalyticsService_1.AnalyticsService; } });
13
13
  Object.defineProperty(exports, "SecurityEventType", { enumerable: true, get: function () { return AnalyticsService_1.SecurityEventType; } });
14
14
  Object.defineProperty(exports, "TransactionEventType", { enumerable: true, get: function () { return AnalyticsService_1.TransactionEventType; } });
15
- var SecurityAlertsApiClient_1 = require("./services/security-alerts/SecurityAlertsApiClient.cjs");
16
- Object.defineProperty(exports, "SecurityAlertsApiClient", { enumerable: true, get: function () { return SecurityAlertsApiClient_1.SecurityAlertsApiClient; } });
17
- Object.defineProperty(exports, "SecurityAlertsHttpError", { enumerable: true, get: function () { return SecurityAlertsApiClient_1.SecurityAlertsHttpError; } });
18
- Object.defineProperty(exports, "SECURITY_ALERTS_REQUEST_HEADERS", { enumerable: true, get: function () { return SecurityAlertsApiClient_1.SECURITY_ALERTS_REQUEST_HEADERS; } });
19
- var types_1 = require("./services/security-alerts/types.cjs");
20
- Object.defineProperty(exports, "METAMASK_ORIGIN_URL", { enumerable: true, get: function () { return types_1.METAMASK_ORIGIN_URL; } });
21
- Object.defineProperty(exports, "normalizeScanOrigin", { enumerable: true, get: function () { return types_1.normalizeScanOrigin; } });
22
- Object.defineProperty(exports, "SecurityAlertResponse", { enumerable: true, get: function () { return types_1.SecurityAlertResponse; } });
23
- Object.defineProperty(exports, "SecurityAlertsScanOption", { enumerable: true, get: function () { return types_1.SecurityAlertsScanOption; } });
24
- Object.defineProperty(exports, "SecurityAlertsScanStatus", { enumerable: true, get: function () { return types_1.SecurityAlertsScanStatus; } });
25
15
  var safeMerge_1 = require("./utils/safeMerge/safeMerge.cjs");
26
16
  Object.defineProperty(exports, "safeMerge", { enumerable: true, get: function () { return safeMerge_1.safeMerge; } });
27
17
  var buildUrl_1 = require("./utils/buildUrl/buildUrl.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","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 {\n AnalyticsService,\n SecurityEventType,\n TransactionEventType,\n} from './services/analytics/AnalyticsService';\nexport type {\n AnalyticsServiceOptions,\n SecurityAlertDetectedEventProperties,\n SecurityScanCompletedEventProperties,\n SnapTrackEventRequest,\n TrackEventCapableProvider,\n TransactionEventProperties,\n TransactionFinalizedEventProperties,\n WebSocketConnectionClosedEventProperties,\n} from './services/analytics/AnalyticsService';\nexport {\n SecurityAlertsApiClient,\n SecurityAlertsHttpError,\n SECURITY_ALERTS_REQUEST_HEADERS,\n} from './services/security-alerts/SecurityAlertsApiClient';\nexport type { SecurityAlertsApiClientOptions } from './services/security-alerts/SecurityAlertsApiClient';\nexport {\n METAMASK_ORIGIN_URL,\n normalizeScanOrigin,\n SecurityAlertResponse,\n SecurityAlertsScanOption,\n SecurityAlertsScanStatus,\n} from './services/security-alerts/types';\nexport type { SecurityAlertsScanRequestBase } from './services/security-alerts/types';\nexport { safeMerge } from './utils/safeMerge/safeMerge';\nexport { buildUrl } from './utils/buildUrl/buildUrl';\nexport type { BuildUrlParams } from './utils/buildUrl/buildUrl';\nexport {\n sanitizeControlCharacters,\n sanitizeUri,\n} from './utils/sanitize/sanitize';\nexport { UrlStruct } from './utils/urlStruct/urlStruct';\nexport { UuidStruct } from './utils/uuidStruct/uuidStruct';\nexport { asStrictKeyringAccount } from './utils/keyringAccount/keyringAccount';\nexport type {\n ExtendedKeyringAccount,\n KeyringAccountExtension,\n} from './utils/keyringAccount/keyringAccount';\nexport { parseEnv } from './utils/config/parseEnv';\nexport { BaseConfigProvider } from './utils/config/BaseConfigProvider';\nexport {\n commaSeparatedListOf,\n defaultedUrlStruct,\n emptyToUndefined,\n parseIntegerStruct,\n parseFloatStruct,\n} from './utils/config/envStructs';\nexport { LogLevelStruct } from './utils/config/logLevelStruct';\nexport {\n Environment,\n EnvironmentStruct,\n} from './utils/config/environmentStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './utils/async/async';\nexport { Logger, LogLevel } from './utils/logger/Logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './utils/logger/Logger';\nexport { serialize, deserialize } from './utils/serialization/serialization';\nexport type { Serializable } from './utils/serialization/types';\nexport {\n parseProofOfOwnershipMessage,\n ProofOfOwnershipBatchErrorStruct,\n ProofOfOwnershipBatchItemResponseStruct,\n ProofOfOwnershipBatchRequestItemStruct,\n ProofOfOwnershipBatchRequestParamsStruct,\n ProofOfOwnershipBatchResponseStruct,\n ProofOfOwnershipBatchSuccessStruct,\n ProofOfOwnershipMessageStruct,\n PROOF_OF_OWNERSHIP_MESSAGE_PREFIX,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport type {\n ProofOfOwnershipBatchError,\n ProofOfOwnershipBatchItemResponse,\n ProofOfOwnershipBatchRequestItem,\n ProofOfOwnershipBatchRequestParams,\n ProofOfOwnershipBatchResponse,\n ProofOfOwnershipBatchSuccess,\n ProofOfOwnershipMessage,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './utils/originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './utils/originPermissions/createOriginPermissions';\nexport { validateOrigin } from './utils/originPermissions/validateOrigin';\nexport { State } from './utils/state/State';\nexport type { StateConfig } from './utils/state/State';\nexport { InMemoryState } from './utils/state/InMemoryState';\nexport type { IStateManager } from './utils/state/IStateManager';\nexport {\n createSnapErrorHandling,\n createTrackError,\n createWithCatchAndThrowSnapError,\n formatAccountSyncFailures,\n getSyncFailuresFromSettledResult,\n isSnapRpcError,\n normalizeError,\n stringifyReason,\n SynchronizationError,\n} from './utils/errors';\nexport { InFlightCoalescer } from './utils/dedupe/InFlightCoalescer';\nexport { EstimatedChanges } from './ui/EstimatedChanges/EstimatedChanges';\nexport type {\n EstimatedChangesAsset,\n EstimatedChangesLabels,\n EstimatedChangesProps,\n} from './ui/EstimatedChanges/EstimatedChanges';\nexport { InMemoryCache } from './utils/cache/InMemoryCache';\nexport { StateCache } from './utils/cache/StateCache';\nexport { useCache } from './utils/cache/useCache';\nexport { useCacheUntil } from './utils/cache/useCacheUntil';\nexport type { CacheOptions } from './utils/cache/useCache';\nexport type {\n CacheUntilOptions,\n ResultWithExpiry,\n} from './utils/cache/useCacheUntil';\nexport type {\n ICache,\n CacheEntry,\n TimestampMilliseconds,\n} from './utils/cache/types';\nexport type {\n CacheStateManager,\n CacheStore,\n CachePrefix,\n StateValue,\n} from './utils/cache/StateCache';\nexport {\n noopAssetHandlers,\n wrapSnapHandlers,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n SnapHandlers,\n WithCatchAndThrowSnapError,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n AccountSyncFailure,\n CreateSnapErrorHandlingOptions,\n CreateTrackErrorOptions,\n CreateWithCatchAndThrowSnapErrorOptions,\n LogErrorFn,\n NormalizeErrorFn,\n PrepareErrorForTrackingFn,\n ShouldTrackErrorFn,\n SnapRpcError,\n SnapTrackErrorRequest,\n TrackErrorCapableProvider,\n TrackErrorFn,\n} from './utils/errors';\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,8EAI+C;AAH7C,oHAAA,gBAAgB,OAAA;AAChB,qHAAA,iBAAiB,OAAA;AACjB,wHAAA,oBAAoB,OAAA;AAYtB,6DAAwD;AAA/C,sGAAA,SAAS,OAAA;AAClB,0DAAqD;AAA5C,oGAAA,QAAQ,OAAA;AAEjB,0DAGmC;AAFjC,qHAAA,yBAAyB,OAAA;AACzB,uGAAA,WAAW,OAAA;AAEb,6DAAwD;AAA/C,sGAAA,SAAS,OAAA;AAClB,gEAA2D;AAAlD,wGAAA,UAAU,OAAA;AACnB,4EAA+E;AAAtE,wHAAA,sBAAsB,OAAA;AAK/B,wDAAmD;AAA1C,oGAAA,QAAQ,OAAA;AACjB,4EAAuE;AAA9D,wHAAA,kBAAkB,OAAA;AAC3B,4DAMmC;AALjC,kHAAA,oBAAoB,OAAA;AACpB,gHAAA,kBAAkB,OAAA;AAClB,8GAAA,gBAAgB,OAAA;AAChB,gHAAA,kBAAkB,OAAA;AAClB,8GAAA,gBAAgB,OAAA;AAElB,oEAA+D;AAAtD,gHAAA,cAAc,OAAA;AACvB,0EAG0C;AAFxC,gHAAA,WAAW,OAAA;AACX,sHAAA,iBAAiB,OAAA;AAEnB,iDAM6B;AAL3B,mGAAA,UAAU,OAAA;AACV,0GAAA,iBAAiB,OAAA;AACjB,oHAAA,2BAA2B,OAAA;AAC3B,6GAAA,oBAAoB,OAAA;AACpB,+FAAA,MAAM,OAAA;AAER,oDAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAQzB,yEAA6E;AAApE,0GAAA,SAAS,OAAA;AAAE,4GAAA,WAAW,OAAA;AAE/B,kFAUmD;AATjD,gIAAA,4BAA4B,OAAA;AAC5B,oIAAA,gCAAgC,OAAA;AAChC,2IAAA,uCAAuC,OAAA;AACvC,0IAAA,sCAAsC,OAAA;AACtC,4IAAA,wCAAwC,OAAA;AACxC,uIAAA,mCAAmC,OAAA;AACnC,sIAAA,kCAAkC,OAAA;AAClC,iIAAA,6BAA6B,OAAA;AAC7B,qIAAA,iCAAiC,OAAA;AAWnC,iGAK2D;AAJzD,kIAAA,uBAAuB,OAAA;AACvB,+HAAA,oBAAoB,OAAA;AACpB,8HAAA,mBAAmB,OAAA;AACnB,kIAAA,uBAAuB,OAAA;AAGzB,+EAA0E;AAAjE,gHAAA,cAAc,OAAA;AACvB,iDAA4C;AAAnC,8FAAA,KAAK,OAAA;AAEd,iEAA4D;AAAnD,8GAAA,aAAa,OAAA;AAEtB,mDAUwB;AATtB,iHAAA,uBAAuB,OAAA;AACvB,0GAAA,gBAAgB,OAAA;AAChB,0HAAA,gCAAgC,OAAA;AAChC,mHAAA,yBAAyB,OAAA;AACzB,0HAAA,gCAAgC,OAAA;AAChC,wGAAA,cAAc,OAAA;AACd,wGAAA,cAAc,OAAA;AACd,yGAAA,eAAe,OAAA;AACf,8GAAA,oBAAoB,OAAA;AAEtB,0EAAqE;AAA5D,sHAAA,iBAAiB,OAAA;AAC1B,+EAA0E;AAAjE,oHAAA,gBAAgB,OAAA;AAMzB,iEAA4D;AAAnD,8GAAA,aAAa,OAAA;AACtB,2DAAsD;AAA7C,wGAAA,UAAU,OAAA;AACnB,uDAAkD;AAAzC,oGAAA,QAAQ,OAAA;AACjB,iEAA4D;AAAnD,8GAAA,aAAa,OAAA;AAiBtB,0EAG2C;AAFzC,qHAAA,iBAAiB,OAAA;AACjB,oHAAA,gBAAgB,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 {\n AnalyticsService,\n SecurityEventType,\n TransactionEventType,\n} from './services/analytics/AnalyticsService';\nexport type {\n AnalyticsServiceOptions,\n SecurityAlertDetectedEventProperties,\n SecurityScanCompletedEventProperties,\n SnapTrackEventRequest,\n TrackEventCapableProvider,\n TransactionEventProperties,\n TransactionFinalizedEventProperties,\n WebSocketConnectionClosedEventProperties,\n} from './services/analytics/AnalyticsService';\nexport { safeMerge } from './utils/safeMerge/safeMerge';\nexport { buildUrl } from './utils/buildUrl/buildUrl';\nexport type { BuildUrlParams } from './utils/buildUrl/buildUrl';\nexport {\n sanitizeControlCharacters,\n sanitizeUri,\n} from './utils/sanitize/sanitize';\nexport { UrlStruct } from './utils/urlStruct/urlStruct';\nexport { UuidStruct } from './utils/uuidStruct/uuidStruct';\nexport { asStrictKeyringAccount } from './utils/keyringAccount/keyringAccount';\nexport type {\n ExtendedKeyringAccount,\n KeyringAccountExtension,\n} from './utils/keyringAccount/keyringAccount';\nexport { parseEnv } from './utils/config/parseEnv';\nexport { BaseConfigProvider } from './utils/config/BaseConfigProvider';\nexport {\n commaSeparatedListOf,\n defaultedUrlStruct,\n emptyToUndefined,\n parseIntegerStruct,\n parseFloatStruct,\n} from './utils/config/envStructs';\nexport { LogLevelStruct } from './utils/config/logLevelStruct';\nexport {\n Environment,\n EnvironmentStruct,\n} from './utils/config/environmentStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './utils/async/async';\nexport { Logger, LogLevel } from './utils/logger/Logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './utils/logger/Logger';\nexport { serialize, deserialize } from './utils/serialization/serialization';\nexport type { Serializable } from './utils/serialization/types';\nexport {\n parseProofOfOwnershipMessage,\n ProofOfOwnershipBatchErrorStruct,\n ProofOfOwnershipBatchItemResponseStruct,\n ProofOfOwnershipBatchRequestItemStruct,\n ProofOfOwnershipBatchRequestParamsStruct,\n ProofOfOwnershipBatchResponseStruct,\n ProofOfOwnershipBatchSuccessStruct,\n ProofOfOwnershipMessageStruct,\n PROOF_OF_OWNERSHIP_MESSAGE_PREFIX,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport type {\n ProofOfOwnershipBatchError,\n ProofOfOwnershipBatchItemResponse,\n ProofOfOwnershipBatchRequestItem,\n ProofOfOwnershipBatchRequestParams,\n ProofOfOwnershipBatchResponse,\n ProofOfOwnershipBatchSuccess,\n ProofOfOwnershipMessage,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './utils/originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './utils/originPermissions/createOriginPermissions';\nexport { validateOrigin } from './utils/originPermissions/validateOrigin';\nexport { State } from './utils/state/State';\nexport type { StateConfig } from './utils/state/State';\nexport { InMemoryState } from './utils/state/InMemoryState';\nexport type { IStateManager } from './utils/state/IStateManager';\nexport {\n createSnapErrorHandling,\n createTrackError,\n createWithCatchAndThrowSnapError,\n formatAccountSyncFailures,\n getSyncFailuresFromSettledResult,\n isSnapRpcError,\n normalizeError,\n stringifyReason,\n SynchronizationError,\n} from './utils/errors';\nexport { InFlightCoalescer } from './utils/dedupe/InFlightCoalescer';\nexport { EstimatedChanges } from './ui/EstimatedChanges/EstimatedChanges';\nexport type {\n EstimatedChangesAsset,\n EstimatedChangesLabels,\n EstimatedChangesProps,\n} from './ui/EstimatedChanges/EstimatedChanges';\nexport { InMemoryCache } from './utils/cache/InMemoryCache';\nexport { StateCache } from './utils/cache/StateCache';\nexport { useCache } from './utils/cache/useCache';\nexport { useCacheUntil } from './utils/cache/useCacheUntil';\nexport type { CacheOptions } from './utils/cache/useCache';\nexport type {\n CacheUntilOptions,\n ResultWithExpiry,\n} from './utils/cache/useCacheUntil';\nexport type {\n ICache,\n CacheEntry,\n TimestampMilliseconds,\n} from './utils/cache/types';\nexport type {\n CacheStateManager,\n CacheStore,\n CachePrefix,\n StateValue,\n} from './utils/cache/StateCache';\nexport {\n noopAssetHandlers,\n wrapSnapHandlers,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n SnapHandlers,\n WithCatchAndThrowSnapError,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n AccountSyncFailure,\n CreateSnapErrorHandlingOptions,\n CreateTrackErrorOptions,\n CreateWithCatchAndThrowSnapErrorOptions,\n LogErrorFn,\n NormalizeErrorFn,\n PrepareErrorForTrackingFn,\n ShouldTrackErrorFn,\n SnapRpcError,\n SnapTrackErrorRequest,\n TrackErrorCapableProvider,\n TrackErrorFn,\n} from './utils/errors';\n"]}
package/dist/index.d.cts CHANGED
@@ -2,10 +2,6 @@ export { ASSETS_PROVIDER_NAME, AssetsProvider, type AssetsProviderMessenger, } f
2
2
  export { REMOTE_FEATURE_FLAGS_PROVIDER_NAME, RemoteFeatureFlagsProvider, type RemoteFeatureFlagsProviderMessenger, } from "./providers/remote-feature-flags/RemoteFeatureFlagsProvider.cjs";
3
3
  export { AnalyticsService, SecurityEventType, TransactionEventType, } from "./services/analytics/AnalyticsService.cjs";
4
4
  export type { AnalyticsServiceOptions, SecurityAlertDetectedEventProperties, SecurityScanCompletedEventProperties, SnapTrackEventRequest, TrackEventCapableProvider, TransactionEventProperties, TransactionFinalizedEventProperties, WebSocketConnectionClosedEventProperties, } from "./services/analytics/AnalyticsService.cjs";
5
- export { SecurityAlertsApiClient, SecurityAlertsHttpError, SECURITY_ALERTS_REQUEST_HEADERS, } from "./services/security-alerts/SecurityAlertsApiClient.cjs";
6
- export type { SecurityAlertsApiClientOptions } from "./services/security-alerts/SecurityAlertsApiClient.cjs";
7
- export { METAMASK_ORIGIN_URL, normalizeScanOrigin, SecurityAlertResponse, SecurityAlertsScanOption, SecurityAlertsScanStatus, } from "./services/security-alerts/types.cjs";
8
- export type { SecurityAlertsScanRequestBase } from "./services/security-alerts/types.cjs";
9
5
  export { safeMerge } from "./utils/safeMerge/safeMerge.cjs";
10
6
  export { buildUrl } from "./utils/buildUrl/buildUrl.cjs";
11
7
  export type { BuildUrlParams } from "./utils/buildUrl/buildUrl.cjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -2,10 +2,6 @@ export { ASSETS_PROVIDER_NAME, AssetsProvider, type AssetsProviderMessenger, } f
2
2
  export { REMOTE_FEATURE_FLAGS_PROVIDER_NAME, RemoteFeatureFlagsProvider, type RemoteFeatureFlagsProviderMessenger, } from "./providers/remote-feature-flags/RemoteFeatureFlagsProvider.mjs";
3
3
  export { AnalyticsService, SecurityEventType, TransactionEventType, } from "./services/analytics/AnalyticsService.mjs";
4
4
  export type { AnalyticsServiceOptions, SecurityAlertDetectedEventProperties, SecurityScanCompletedEventProperties, SnapTrackEventRequest, TrackEventCapableProvider, TransactionEventProperties, TransactionFinalizedEventProperties, WebSocketConnectionClosedEventProperties, } from "./services/analytics/AnalyticsService.mjs";
5
- export { SecurityAlertsApiClient, SecurityAlertsHttpError, SECURITY_ALERTS_REQUEST_HEADERS, } from "./services/security-alerts/SecurityAlertsApiClient.mjs";
6
- export type { SecurityAlertsApiClientOptions } from "./services/security-alerts/SecurityAlertsApiClient.mjs";
7
- export { METAMASK_ORIGIN_URL, normalizeScanOrigin, SecurityAlertResponse, SecurityAlertsScanOption, SecurityAlertsScanStatus, } from "./services/security-alerts/types.mjs";
8
- export type { SecurityAlertsScanRequestBase } from "./services/security-alerts/types.mjs";
9
5
  export { safeMerge } from "./utils/safeMerge/safeMerge.mjs";
10
6
  export { buildUrl } from "./utils/buildUrl/buildUrl.mjs";
11
7
  export type { BuildUrlParams } from "./utils/buildUrl/buildUrl.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,8 +1,6 @@
1
1
  export { ASSETS_PROVIDER_NAME, AssetsProvider } from "./providers/assets/AssetsProvider.mjs";
2
2
  export { REMOTE_FEATURE_FLAGS_PROVIDER_NAME, RemoteFeatureFlagsProvider } from "./providers/remote-feature-flags/RemoteFeatureFlagsProvider.mjs";
3
3
  export { AnalyticsService, SecurityEventType, TransactionEventType } from "./services/analytics/AnalyticsService.mjs";
4
- export { SecurityAlertsApiClient, SecurityAlertsHttpError, SECURITY_ALERTS_REQUEST_HEADERS } from "./services/security-alerts/SecurityAlertsApiClient.mjs";
5
- export { METAMASK_ORIGIN_URL, normalizeScanOrigin, SecurityAlertResponse, SecurityAlertsScanOption, SecurityAlertsScanStatus } from "./services/security-alerts/types.mjs";
6
4
  export { safeMerge } from "./utils/safeMerge/safeMerge.mjs";
7
5
  export { buildUrl } from "./utils/buildUrl/buildUrl.mjs";
8
6
  export { sanitizeControlCharacters, sanitizeUri } from "./utils/sanitize/sanitize.mjs";
@@ -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,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACrB,kDAA8C;AAW/C,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,+BAA+B,EAChC,+DAA2D;AAE5D,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACzB,6CAAyC;AAE1C,OAAO,EAAE,SAAS,EAAE,wCAAoC;AACxD,OAAO,EAAE,QAAQ,EAAE,sCAAkC;AAErD,OAAO,EACL,yBAAyB,EACzB,WAAW,EACZ,sCAAkC;AACnC,OAAO,EAAE,SAAS,EAAE,wCAAoC;AACxD,OAAO,EAAE,UAAU,EAAE,0CAAsC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,kDAA8C;AAK/E,OAAO,EAAE,QAAQ,EAAE,oCAAgC;AACnD,OAAO,EAAE,kBAAkB,EAAE,8CAA0C;AACvE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EACjB,sCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,0CAAsC;AAC/D,OAAO,EACL,WAAW,EACX,iBAAiB,EAClB,6CAAyC;AAC1C,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,EACP,gCAA4B;AAC7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,kCAA8B;AAQzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gDAA4C;AAE7E,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,uCAAuC,EACvC,sCAAsC,EACtC,wCAAwC,EACxC,mCAAmC,EACnC,kCAAkC,EAClC,6BAA6B,EAC7B,iCAAiC,EAClC,sDAAkD;AAUnD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,8DAA0D;AAE3D,OAAO,EAAE,cAAc,EAAE,qDAAiD;AAC1E,OAAO,EAAE,KAAK,EAAE,gCAA4B;AAE5C,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAE5D,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gCAAgC,EAChC,yBAAyB,EACzB,gCAAgC,EAChC,cAAc,EACd,cAAc,EACd,eAAe,EACf,oBAAoB,EACrB,iCAAuB;AACxB,OAAO,EAAE,iBAAiB,EAAE,6CAAyC;AACrE,OAAO,EAAE,gBAAgB,EAAE,mDAA+C;AAM1E,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAC5D,OAAO,EAAE,UAAU,EAAE,qCAAiC;AACtD,OAAO,EAAE,QAAQ,EAAE,mCAA+B;AAClD,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAiB5D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EACjB,8CAA0C","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 {\n AnalyticsService,\n SecurityEventType,\n TransactionEventType,\n} from './services/analytics/AnalyticsService';\nexport type {\n AnalyticsServiceOptions,\n SecurityAlertDetectedEventProperties,\n SecurityScanCompletedEventProperties,\n SnapTrackEventRequest,\n TrackEventCapableProvider,\n TransactionEventProperties,\n TransactionFinalizedEventProperties,\n WebSocketConnectionClosedEventProperties,\n} from './services/analytics/AnalyticsService';\nexport {\n SecurityAlertsApiClient,\n SecurityAlertsHttpError,\n SECURITY_ALERTS_REQUEST_HEADERS,\n} from './services/security-alerts/SecurityAlertsApiClient';\nexport type { SecurityAlertsApiClientOptions } from './services/security-alerts/SecurityAlertsApiClient';\nexport {\n METAMASK_ORIGIN_URL,\n normalizeScanOrigin,\n SecurityAlertResponse,\n SecurityAlertsScanOption,\n SecurityAlertsScanStatus,\n} from './services/security-alerts/types';\nexport type { SecurityAlertsScanRequestBase } from './services/security-alerts/types';\nexport { safeMerge } from './utils/safeMerge/safeMerge';\nexport { buildUrl } from './utils/buildUrl/buildUrl';\nexport type { BuildUrlParams } from './utils/buildUrl/buildUrl';\nexport {\n sanitizeControlCharacters,\n sanitizeUri,\n} from './utils/sanitize/sanitize';\nexport { UrlStruct } from './utils/urlStruct/urlStruct';\nexport { UuidStruct } from './utils/uuidStruct/uuidStruct';\nexport { asStrictKeyringAccount } from './utils/keyringAccount/keyringAccount';\nexport type {\n ExtendedKeyringAccount,\n KeyringAccountExtension,\n} from './utils/keyringAccount/keyringAccount';\nexport { parseEnv } from './utils/config/parseEnv';\nexport { BaseConfigProvider } from './utils/config/BaseConfigProvider';\nexport {\n commaSeparatedListOf,\n defaultedUrlStruct,\n emptyToUndefined,\n parseIntegerStruct,\n parseFloatStruct,\n} from './utils/config/envStructs';\nexport { LogLevelStruct } from './utils/config/logLevelStruct';\nexport {\n Environment,\n EnvironmentStruct,\n} from './utils/config/environmentStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './utils/async/async';\nexport { Logger, LogLevel } from './utils/logger/Logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './utils/logger/Logger';\nexport { serialize, deserialize } from './utils/serialization/serialization';\nexport type { Serializable } from './utils/serialization/types';\nexport {\n parseProofOfOwnershipMessage,\n ProofOfOwnershipBatchErrorStruct,\n ProofOfOwnershipBatchItemResponseStruct,\n ProofOfOwnershipBatchRequestItemStruct,\n ProofOfOwnershipBatchRequestParamsStruct,\n ProofOfOwnershipBatchResponseStruct,\n ProofOfOwnershipBatchSuccessStruct,\n ProofOfOwnershipMessageStruct,\n PROOF_OF_OWNERSHIP_MESSAGE_PREFIX,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport type {\n ProofOfOwnershipBatchError,\n ProofOfOwnershipBatchItemResponse,\n ProofOfOwnershipBatchRequestItem,\n ProofOfOwnershipBatchRequestParams,\n ProofOfOwnershipBatchResponse,\n ProofOfOwnershipBatchSuccess,\n ProofOfOwnershipMessage,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './utils/originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './utils/originPermissions/createOriginPermissions';\nexport { validateOrigin } from './utils/originPermissions/validateOrigin';\nexport { State } from './utils/state/State';\nexport type { StateConfig } from './utils/state/State';\nexport { InMemoryState } from './utils/state/InMemoryState';\nexport type { IStateManager } from './utils/state/IStateManager';\nexport {\n createSnapErrorHandling,\n createTrackError,\n createWithCatchAndThrowSnapError,\n formatAccountSyncFailures,\n getSyncFailuresFromSettledResult,\n isSnapRpcError,\n normalizeError,\n stringifyReason,\n SynchronizationError,\n} from './utils/errors';\nexport { InFlightCoalescer } from './utils/dedupe/InFlightCoalescer';\nexport { EstimatedChanges } from './ui/EstimatedChanges/EstimatedChanges';\nexport type {\n EstimatedChangesAsset,\n EstimatedChangesLabels,\n EstimatedChangesProps,\n} from './ui/EstimatedChanges/EstimatedChanges';\nexport { InMemoryCache } from './utils/cache/InMemoryCache';\nexport { StateCache } from './utils/cache/StateCache';\nexport { useCache } from './utils/cache/useCache';\nexport { useCacheUntil } from './utils/cache/useCacheUntil';\nexport type { CacheOptions } from './utils/cache/useCache';\nexport type {\n CacheUntilOptions,\n ResultWithExpiry,\n} from './utils/cache/useCacheUntil';\nexport type {\n ICache,\n CacheEntry,\n TimestampMilliseconds,\n} from './utils/cache/types';\nexport type {\n CacheStateManager,\n CacheStore,\n CachePrefix,\n StateValue,\n} from './utils/cache/StateCache';\nexport {\n noopAssetHandlers,\n wrapSnapHandlers,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n SnapHandlers,\n WithCatchAndThrowSnapError,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n AccountSyncFailure,\n CreateSnapErrorHandlingOptions,\n CreateTrackErrorOptions,\n CreateWithCatchAndThrowSnapErrorOptions,\n LogErrorFn,\n NormalizeErrorFn,\n PrepareErrorForTrackingFn,\n ShouldTrackErrorFn,\n SnapRpcError,\n SnapTrackErrorRequest,\n TrackErrorCapableProvider,\n TrackErrorFn,\n} from './utils/errors';\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,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACrB,kDAA8C;AAW/C,OAAO,EAAE,SAAS,EAAE,wCAAoC;AACxD,OAAO,EAAE,QAAQ,EAAE,sCAAkC;AAErD,OAAO,EACL,yBAAyB,EACzB,WAAW,EACZ,sCAAkC;AACnC,OAAO,EAAE,SAAS,EAAE,wCAAoC;AACxD,OAAO,EAAE,UAAU,EAAE,0CAAsC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,kDAA8C;AAK/E,OAAO,EAAE,QAAQ,EAAE,oCAAgC;AACnD,OAAO,EAAE,kBAAkB,EAAE,8CAA0C;AACvE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EACjB,sCAAkC;AACnC,OAAO,EAAE,cAAc,EAAE,0CAAsC;AAC/D,OAAO,EACL,WAAW,EACX,iBAAiB,EAClB,6CAAyC;AAC1C,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,MAAM,EACP,gCAA4B;AAC7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,kCAA8B;AAQzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gDAA4C;AAE7E,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,uCAAuC,EACvC,sCAAsC,EACtC,wCAAwC,EACxC,mCAAmC,EACnC,kCAAkC,EAClC,6BAA6B,EAC7B,iCAAiC,EAClC,sDAAkD;AAUnD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,8DAA0D;AAE3D,OAAO,EAAE,cAAc,EAAE,qDAAiD;AAC1E,OAAO,EAAE,KAAK,EAAE,gCAA4B;AAE5C,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAE5D,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gCAAgC,EAChC,yBAAyB,EACzB,gCAAgC,EAChC,cAAc,EACd,cAAc,EACd,eAAe,EACf,oBAAoB,EACrB,iCAAuB;AACxB,OAAO,EAAE,iBAAiB,EAAE,6CAAyC;AACrE,OAAO,EAAE,gBAAgB,EAAE,mDAA+C;AAM1E,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAC5D,OAAO,EAAE,UAAU,EAAE,qCAAiC;AACtD,OAAO,EAAE,QAAQ,EAAE,mCAA+B;AAClD,OAAO,EAAE,aAAa,EAAE,wCAAoC;AAiB5D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EACjB,8CAA0C","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 {\n AnalyticsService,\n SecurityEventType,\n TransactionEventType,\n} from './services/analytics/AnalyticsService';\nexport type {\n AnalyticsServiceOptions,\n SecurityAlertDetectedEventProperties,\n SecurityScanCompletedEventProperties,\n SnapTrackEventRequest,\n TrackEventCapableProvider,\n TransactionEventProperties,\n TransactionFinalizedEventProperties,\n WebSocketConnectionClosedEventProperties,\n} from './services/analytics/AnalyticsService';\nexport { safeMerge } from './utils/safeMerge/safeMerge';\nexport { buildUrl } from './utils/buildUrl/buildUrl';\nexport type { BuildUrlParams } from './utils/buildUrl/buildUrl';\nexport {\n sanitizeControlCharacters,\n sanitizeUri,\n} from './utils/sanitize/sanitize';\nexport { UrlStruct } from './utils/urlStruct/urlStruct';\nexport { UuidStruct } from './utils/uuidStruct/uuidStruct';\nexport { asStrictKeyringAccount } from './utils/keyringAccount/keyringAccount';\nexport type {\n ExtendedKeyringAccount,\n KeyringAccountExtension,\n} from './utils/keyringAccount/keyringAccount';\nexport { parseEnv } from './utils/config/parseEnv';\nexport { BaseConfigProvider } from './utils/config/BaseConfigProvider';\nexport {\n commaSeparatedListOf,\n defaultedUrlStruct,\n emptyToUndefined,\n parseIntegerStruct,\n parseFloatStruct,\n} from './utils/config/envStructs';\nexport { LogLevelStruct } from './utils/config/logLevelStruct';\nexport {\n Environment,\n EnvironmentStruct,\n} from './utils/config/environmentStruct';\nexport {\n batchesAll,\n batchesAllSettled,\n batchesAllSettledWithChunks,\n batchesAllWithChunks,\n chunks,\n} from './utils/async/async';\nexport { Logger, LogLevel } from './utils/logger/Logger';\nexport type {\n LoggerOptions,\n LoggerMethod,\n LogMethod,\n LogMethodDecorator,\n LoggerDecorators,\n} from './utils/logger/Logger';\nexport { serialize, deserialize } from './utils/serialization/serialization';\nexport type { Serializable } from './utils/serialization/types';\nexport {\n parseProofOfOwnershipMessage,\n ProofOfOwnershipBatchErrorStruct,\n ProofOfOwnershipBatchItemResponseStruct,\n ProofOfOwnershipBatchRequestItemStruct,\n ProofOfOwnershipBatchRequestParamsStruct,\n ProofOfOwnershipBatchResponseStruct,\n ProofOfOwnershipBatchSuccessStruct,\n ProofOfOwnershipMessageStruct,\n PROOF_OF_OWNERSHIP_MESSAGE_PREFIX,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport type {\n ProofOfOwnershipBatchError,\n ProofOfOwnershipBatchItemResponse,\n ProofOfOwnershipBatchRequestItem,\n ProofOfOwnershipBatchRequestParams,\n ProofOfOwnershipBatchResponse,\n ProofOfOwnershipBatchSuccess,\n ProofOfOwnershipMessage,\n} from './utils/proofOfOwnership/proofOfOwnership';\nexport {\n createOriginPermissions,\n DEFAULT_PROD_ORIGINS,\n DEFAULT_DEV_ORIGINS,\n DEFAULT_METAMASK_ORIGIN,\n} from './utils/originPermissions/createOriginPermissions';\nexport type { CreateOriginPermissionsParams } from './utils/originPermissions/createOriginPermissions';\nexport { validateOrigin } from './utils/originPermissions/validateOrigin';\nexport { State } from './utils/state/State';\nexport type { StateConfig } from './utils/state/State';\nexport { InMemoryState } from './utils/state/InMemoryState';\nexport type { IStateManager } from './utils/state/IStateManager';\nexport {\n createSnapErrorHandling,\n createTrackError,\n createWithCatchAndThrowSnapError,\n formatAccountSyncFailures,\n getSyncFailuresFromSettledResult,\n isSnapRpcError,\n normalizeError,\n stringifyReason,\n SynchronizationError,\n} from './utils/errors';\nexport { InFlightCoalescer } from './utils/dedupe/InFlightCoalescer';\nexport { EstimatedChanges } from './ui/EstimatedChanges/EstimatedChanges';\nexport type {\n EstimatedChangesAsset,\n EstimatedChangesLabels,\n EstimatedChangesProps,\n} from './ui/EstimatedChanges/EstimatedChanges';\nexport { InMemoryCache } from './utils/cache/InMemoryCache';\nexport { StateCache } from './utils/cache/StateCache';\nexport { useCache } from './utils/cache/useCache';\nexport { useCacheUntil } from './utils/cache/useCacheUntil';\nexport type { CacheOptions } from './utils/cache/useCache';\nexport type {\n CacheUntilOptions,\n ResultWithExpiry,\n} from './utils/cache/useCacheUntil';\nexport type {\n ICache,\n CacheEntry,\n TimestampMilliseconds,\n} from './utils/cache/types';\nexport type {\n CacheStateManager,\n CacheStore,\n CachePrefix,\n StateValue,\n} from './utils/cache/StateCache';\nexport {\n noopAssetHandlers,\n wrapSnapHandlers,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n SnapHandlers,\n WithCatchAndThrowSnapError,\n} from './utils/handlers/wrapSnapHandlers';\nexport type {\n AccountSyncFailure,\n CreateSnapErrorHandlingOptions,\n CreateTrackErrorOptions,\n CreateWithCatchAndThrowSnapErrorOptions,\n LogErrorFn,\n NormalizeErrorFn,\n PrepareErrorForTrackingFn,\n ShouldTrackErrorFn,\n SnapRpcError,\n SnapTrackErrorRequest,\n TrackErrorCapableProvider,\n TrackErrorFn,\n} from './utils/errors';\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-bbe2c39",
3
+ "version": "1.0.0-preview-1ad90ff1",
4
4
  "description": "Shared utilities for MetaMask network snaps",
5
5
  "keywords": [
6
6
  "Ethereum",
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SecurityAlertsApiClient = exports.SecurityAlertsHttpError = exports.SECURITY_ALERTS_REQUEST_HEADERS = void 0;
4
- const superstruct_1 = require("@metamask/superstruct");
5
- const urlStruct_1 = require("../../utils/urlStruct/urlStruct.cjs");
6
- /**
7
- * Headers sent with every Security Alerts API request.
8
- */
9
- exports.SECURITY_ALERTS_REQUEST_HEADERS = {
10
- 'Content-Type': 'application/json',
11
- accept: 'application/json',
12
- };
13
- /**
14
- * Error thrown when the Security Alerts API responds with a non-2xx status.
15
- */
16
- class SecurityAlertsHttpError extends Error {
17
- statusCode;
18
- responseBody;
19
- /**
20
- * Creates a new SecurityAlertsHttpError.
21
- *
22
- * @param statusCode - The HTTP status code of the response.
23
- * @param responseBody - The raw response body, when it could be read.
24
- */
25
- constructor(statusCode, responseBody) {
26
- super(`Security Alerts API error: ${statusCode}${responseBody ? ` - ${responseBody}` : ''}`);
27
- this.name = 'SecurityAlertsHttpError';
28
- this.statusCode = statusCode;
29
- this.responseBody = responseBody;
30
- }
31
- }
32
- exports.SecurityAlertsHttpError = SecurityAlertsHttpError;
33
- /**
34
- * HTTP client for a Security Alerts API scan endpoint.
35
- *
36
- * Owns the request envelope shared by every chain — POSTing the JSON body,
37
- * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing
38
- * the JSON response — and nothing else.
39
- *
40
- * The request body and response payload are chain-specific Blockaid
41
- * contracts: the caller supplies a typed body (e.g. checked with `satisfies`
42
- * against a per-snap body type) and a Superstruct struct for the response,
43
- * so both are type-checked and validated at the call site.
44
- */
45
- class SecurityAlertsApiClient {
46
- #fetch;
47
- #scanUrl;
48
- /**
49
- * Creates a new SecurityAlertsApiClient.
50
- *
51
- * @param options - The client options.
52
- * @param options.scanUrl - The full scan endpoint URL. Validated once, so
53
- * an invalid URL fails fast at construction.
54
- * @param options.fetch - Optional fetch implementation; defaults to
55
- * `globalThis.fetch`.
56
- */
57
- constructor({ scanUrl, fetch: fetchFn = globalThis.fetch, }) {
58
- (0, superstruct_1.assert)(scanUrl, urlStruct_1.UrlStruct);
59
- this.#fetch = fetchFn;
60
- this.#scanUrl = scanUrl;
61
- }
62
- /**
63
- * Scans a transaction by posting the request body to the scan endpoint.
64
- *
65
- * @param body - The chain-specific scan request body.
66
- * @param responseStruct - Superstruct struct validating the
67
- * chain-specific response payload.
68
- * @returns The validated scan response.
69
- * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.
70
- */
71
- async scanTransaction(body, responseStruct) {
72
- const response = await this.#fetch(this.#scanUrl, {
73
- headers: { ...exports.SECURITY_ALERTS_REQUEST_HEADERS },
74
- method: 'POST',
75
- body: JSON.stringify(body),
76
- });
77
- if (!response.ok) {
78
- let responseBody = null;
79
- try {
80
- responseBody = await response.text();
81
- }
82
- catch {
83
- responseBody = null;
84
- }
85
- throw new SecurityAlertsHttpError(response.status, responseBody);
86
- }
87
- const data = await response.json();
88
- (0, superstruct_1.assert)(data, responseStruct);
89
- return data;
90
- }
91
- }
92
- exports.SecurityAlertsApiClient = SecurityAlertsApiClient;
93
- //# sourceMappingURL=SecurityAlertsApiClient.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SecurityAlertsApiClient.cjs","sourceRoot":"","sources":["../../../src/services/security-alerts/SecurityAlertsApiClient.ts"],"names":[],"mappings":";;;AAAA,uDAA+C;AAG/C,mEAA4D;AAE5D;;GAEG;AACU,QAAA,+BAA+B,GAA2B;IACrE,cAAc,EAAE,kBAAkB;IAClC,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAa,uBAAwB,SAAQ,KAAK;IACvC,UAAU,CAAS;IAEnB,YAAY,CAAgB;IAErC;;;;;OAKG;IACH,YAAY,UAAkB,EAAE,YAA2B;QACzD,KAAK,CACH,8BAA8B,UAAU,GACtC,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,CAAC,EACxC,EAAE,CACH,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAtBD,0DAsBC;AAcD;;;;;;;;;;;GAWG;AACH,MAAa,uBAAuB;IACzB,MAAM,CAA0B;IAEhC,QAAQ,CAAS;IAE1B;;;;;;;;OAQG;IACH,YAAY,EACV,OAAO,EACP,KAAK,EAAE,OAAO,GAAG,UAAU,CAAC,KAAK,GACF;QAC/B,IAAA,oBAAM,EAAC,OAAO,EAAE,qBAAS,CAAC,CAAC;QAE3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe,CACnB,IAAW,EACX,cAAiC;QAEjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChD,OAAO,EAAE,EAAE,GAAG,uCAA+B,EAAE;YAC/C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,YAAY,GAAkB,IAAI,CAAC;YACvC,IAAI,CAAC;gBACH,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YAED,MAAM,IAAI,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,IAAA,oBAAM,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA3DD,0DA2DC","sourcesContent":["import { assert } from '@metamask/superstruct';\nimport type { Struct } from '@metamask/superstruct';\n\nimport { UrlStruct } from '../../utils/urlStruct/urlStruct';\n\n/**\n * Headers sent with every Security Alerts API request.\n */\nexport const SECURITY_ALERTS_REQUEST_HEADERS: Record<string, string> = {\n 'Content-Type': 'application/json',\n accept: 'application/json',\n};\n\n/**\n * Error thrown when the Security Alerts API responds with a non-2xx status.\n */\nexport class SecurityAlertsHttpError extends Error {\n readonly statusCode: number;\n\n readonly responseBody: string | null;\n\n /**\n * Creates a new SecurityAlertsHttpError.\n *\n * @param statusCode - The HTTP status code of the response.\n * @param responseBody - The raw response body, when it could be read.\n */\n constructor(statusCode: number, responseBody: string | null) {\n super(\n `Security Alerts API error: ${statusCode}${\n responseBody ? ` - ${responseBody}` : ''\n }`,\n );\n\n this.name = 'SecurityAlertsHttpError';\n this.statusCode = statusCode;\n this.responseBody = responseBody;\n }\n}\n\n/**\n * Options for a `SecurityAlertsApiClient` constructor.\n */\nexport type SecurityAlertsApiClientOptions = {\n /**\n * The full scan endpoint URL, e.g. `https://security-alerts.api.cx.metamask.io/tron/transaction/scan`.\n */\n scanUrl: string;\n /** The fetch implementation to use. Defaults to `globalThis.fetch`. */\n fetch?: typeof globalThis.fetch;\n};\n\n/**\n * HTTP client for a Security Alerts API scan endpoint.\n *\n * Owns the request envelope shared by every chain — POSTing the JSON body,\n * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing\n * the JSON response — and nothing else.\n *\n * The request body and response payload are chain-specific Blockaid\n * contracts: the caller supplies a typed body (e.g. checked with `satisfies`\n * against a per-snap body type) and a Superstruct struct for the response,\n * so both are type-checked and validated at the call site.\n */\nexport class SecurityAlertsApiClient {\n readonly #fetch: typeof globalThis.fetch;\n\n readonly #scanUrl: string;\n\n /**\n * Creates a new SecurityAlertsApiClient.\n *\n * @param options - The client options.\n * @param options.scanUrl - The full scan endpoint URL. Validated once, so\n * an invalid URL fails fast at construction.\n * @param options.fetch - Optional fetch implementation; defaults to\n * `globalThis.fetch`.\n */\n constructor({\n scanUrl,\n fetch: fetchFn = globalThis.fetch,\n }: SecurityAlertsApiClientOptions) {\n assert(scanUrl, UrlStruct);\n\n this.#fetch = fetchFn;\n this.#scanUrl = scanUrl;\n }\n\n /**\n * Scans a transaction by posting the request body to the scan endpoint.\n *\n * @param body - The chain-specific scan request body.\n * @param responseStruct - Superstruct struct validating the\n * chain-specific response payload.\n * @returns The validated scan response.\n * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.\n */\n async scanTransaction<BodyT extends Record<string, unknown>, ResponseT>(\n body: BodyT,\n responseStruct: Struct<ResponseT>,\n ): Promise<ResponseT> {\n const response = await this.#fetch(this.#scanUrl, {\n headers: { ...SECURITY_ALERTS_REQUEST_HEADERS },\n method: 'POST',\n body: JSON.stringify(body),\n });\n\n if (!response.ok) {\n let responseBody: string | null = null;\n try {\n responseBody = await response.text();\n } catch {\n responseBody = null;\n }\n\n throw new SecurityAlertsHttpError(response.status, responseBody);\n }\n\n const data = await response.json();\n assert(data, responseStruct);\n\n return data;\n }\n}\n"]}
@@ -1,66 +0,0 @@
1
- import type { Struct } from "@metamask/superstruct";
2
- /**
3
- * Headers sent with every Security Alerts API request.
4
- */
5
- export declare const SECURITY_ALERTS_REQUEST_HEADERS: Record<string, string>;
6
- /**
7
- * Error thrown when the Security Alerts API responds with a non-2xx status.
8
- */
9
- export declare class SecurityAlertsHttpError extends Error {
10
- readonly statusCode: number;
11
- readonly responseBody: string | null;
12
- /**
13
- * Creates a new SecurityAlertsHttpError.
14
- *
15
- * @param statusCode - The HTTP status code of the response.
16
- * @param responseBody - The raw response body, when it could be read.
17
- */
18
- constructor(statusCode: number, responseBody: string | null);
19
- }
20
- /**
21
- * Options for a `SecurityAlertsApiClient` constructor.
22
- */
23
- export type SecurityAlertsApiClientOptions = {
24
- /**
25
- * The full scan endpoint URL, e.g. `https://security-alerts.api.cx.metamask.io/tron/transaction/scan`.
26
- */
27
- scanUrl: string;
28
- /** The fetch implementation to use. Defaults to `globalThis.fetch`. */
29
- fetch?: typeof globalThis.fetch;
30
- };
31
- /**
32
- * HTTP client for a Security Alerts API scan endpoint.
33
- *
34
- * Owns the request envelope shared by every chain — POSTing the JSON body,
35
- * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing
36
- * the JSON response — and nothing else.
37
- *
38
- * The request body and response payload are chain-specific Blockaid
39
- * contracts: the caller supplies a typed body (e.g. checked with `satisfies`
40
- * against a per-snap body type) and a Superstruct struct for the response,
41
- * so both are type-checked and validated at the call site.
42
- */
43
- export declare class SecurityAlertsApiClient {
44
- #private;
45
- /**
46
- * Creates a new SecurityAlertsApiClient.
47
- *
48
- * @param options - The client options.
49
- * @param options.scanUrl - The full scan endpoint URL. Validated once, so
50
- * an invalid URL fails fast at construction.
51
- * @param options.fetch - Optional fetch implementation; defaults to
52
- * `globalThis.fetch`.
53
- */
54
- constructor({ scanUrl, fetch: fetchFn, }: SecurityAlertsApiClientOptions);
55
- /**
56
- * Scans a transaction by posting the request body to the scan endpoint.
57
- *
58
- * @param body - The chain-specific scan request body.
59
- * @param responseStruct - Superstruct struct validating the
60
- * chain-specific response payload.
61
- * @returns The validated scan response.
62
- * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.
63
- */
64
- scanTransaction<BodyT extends Record<string, unknown>, ResponseT>(body: BodyT, responseStruct: Struct<ResponseT>): Promise<ResponseT>;
65
- }
66
- //# sourceMappingURL=SecurityAlertsApiClient.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SecurityAlertsApiClient.d.cts","sourceRoot":"","sources":["../../../src/services/security-alerts/SecurityAlertsApiClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA8B;AAIpD;;GAEG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGlE,CAAC;AAEF;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC;;;;;OAKG;gBACS,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;CAW5D;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAuB;;IAKlC;;;;;;;;OAQG;gBACS,EACV,OAAO,EACP,KAAK,EAAE,OAA0B,GAClC,EAAE,8BAA8B;IAOjC;;;;;;;;OAQG;IACG,eAAe,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EACpE,IAAI,EAAE,KAAK,EACX,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,SAAS,CAAC;CAuBtB"}
@@ -1,66 +0,0 @@
1
- import type { Struct } from "@metamask/superstruct";
2
- /**
3
- * Headers sent with every Security Alerts API request.
4
- */
5
- export declare const SECURITY_ALERTS_REQUEST_HEADERS: Record<string, string>;
6
- /**
7
- * Error thrown when the Security Alerts API responds with a non-2xx status.
8
- */
9
- export declare class SecurityAlertsHttpError extends Error {
10
- readonly statusCode: number;
11
- readonly responseBody: string | null;
12
- /**
13
- * Creates a new SecurityAlertsHttpError.
14
- *
15
- * @param statusCode - The HTTP status code of the response.
16
- * @param responseBody - The raw response body, when it could be read.
17
- */
18
- constructor(statusCode: number, responseBody: string | null);
19
- }
20
- /**
21
- * Options for a `SecurityAlertsApiClient` constructor.
22
- */
23
- export type SecurityAlertsApiClientOptions = {
24
- /**
25
- * The full scan endpoint URL, e.g. `https://security-alerts.api.cx.metamask.io/tron/transaction/scan`.
26
- */
27
- scanUrl: string;
28
- /** The fetch implementation to use. Defaults to `globalThis.fetch`. */
29
- fetch?: typeof globalThis.fetch;
30
- };
31
- /**
32
- * HTTP client for a Security Alerts API scan endpoint.
33
- *
34
- * Owns the request envelope shared by every chain — POSTing the JSON body,
35
- * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing
36
- * the JSON response — and nothing else.
37
- *
38
- * The request body and response payload are chain-specific Blockaid
39
- * contracts: the caller supplies a typed body (e.g. checked with `satisfies`
40
- * against a per-snap body type) and a Superstruct struct for the response,
41
- * so both are type-checked and validated at the call site.
42
- */
43
- export declare class SecurityAlertsApiClient {
44
- #private;
45
- /**
46
- * Creates a new SecurityAlertsApiClient.
47
- *
48
- * @param options - The client options.
49
- * @param options.scanUrl - The full scan endpoint URL. Validated once, so
50
- * an invalid URL fails fast at construction.
51
- * @param options.fetch - Optional fetch implementation; defaults to
52
- * `globalThis.fetch`.
53
- */
54
- constructor({ scanUrl, fetch: fetchFn, }: SecurityAlertsApiClientOptions);
55
- /**
56
- * Scans a transaction by posting the request body to the scan endpoint.
57
- *
58
- * @param body - The chain-specific scan request body.
59
- * @param responseStruct - Superstruct struct validating the
60
- * chain-specific response payload.
61
- * @returns The validated scan response.
62
- * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.
63
- */
64
- scanTransaction<BodyT extends Record<string, unknown>, ResponseT>(body: BodyT, responseStruct: Struct<ResponseT>): Promise<ResponseT>;
65
- }
66
- //# sourceMappingURL=SecurityAlertsApiClient.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SecurityAlertsApiClient.d.mts","sourceRoot":"","sources":["../../../src/services/security-alerts/SecurityAlertsApiClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA8B;AAIpD;;GAEG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGlE,CAAC;AAEF;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC;;;;;OAKG;gBACS,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;CAW5D;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAuB;;IAKlC;;;;;;;;OAQG;gBACS,EACV,OAAO,EACP,KAAK,EAAE,OAA0B,GAClC,EAAE,8BAA8B;IAOjC;;;;;;;;OAQG;IACG,eAAe,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EACpE,IAAI,EAAE,KAAK,EACX,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,SAAS,CAAC;CAuBtB"}
@@ -1,88 +0,0 @@
1
- import { assert } from "@metamask/superstruct";
2
- import { UrlStruct } from "../../utils/urlStruct/urlStruct.mjs";
3
- /**
4
- * Headers sent with every Security Alerts API request.
5
- */
6
- export const SECURITY_ALERTS_REQUEST_HEADERS = {
7
- 'Content-Type': 'application/json',
8
- accept: 'application/json',
9
- };
10
- /**
11
- * Error thrown when the Security Alerts API responds with a non-2xx status.
12
- */
13
- export class SecurityAlertsHttpError extends Error {
14
- statusCode;
15
- responseBody;
16
- /**
17
- * Creates a new SecurityAlertsHttpError.
18
- *
19
- * @param statusCode - The HTTP status code of the response.
20
- * @param responseBody - The raw response body, when it could be read.
21
- */
22
- constructor(statusCode, responseBody) {
23
- super(`Security Alerts API error: ${statusCode}${responseBody ? ` - ${responseBody}` : ''}`);
24
- this.name = 'SecurityAlertsHttpError';
25
- this.statusCode = statusCode;
26
- this.responseBody = responseBody;
27
- }
28
- }
29
- /**
30
- * HTTP client for a Security Alerts API scan endpoint.
31
- *
32
- * Owns the request envelope shared by every chain — POSTing the JSON body,
33
- * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing
34
- * the JSON response — and nothing else.
35
- *
36
- * The request body and response payload are chain-specific Blockaid
37
- * contracts: the caller supplies a typed body (e.g. checked with `satisfies`
38
- * against a per-snap body type) and a Superstruct struct for the response,
39
- * so both are type-checked and validated at the call site.
40
- */
41
- export class SecurityAlertsApiClient {
42
- #fetch;
43
- #scanUrl;
44
- /**
45
- * Creates a new SecurityAlertsApiClient.
46
- *
47
- * @param options - The client options.
48
- * @param options.scanUrl - The full scan endpoint URL. Validated once, so
49
- * an invalid URL fails fast at construction.
50
- * @param options.fetch - Optional fetch implementation; defaults to
51
- * `globalThis.fetch`.
52
- */
53
- constructor({ scanUrl, fetch: fetchFn = globalThis.fetch, }) {
54
- assert(scanUrl, UrlStruct);
55
- this.#fetch = fetchFn;
56
- this.#scanUrl = scanUrl;
57
- }
58
- /**
59
- * Scans a transaction by posting the request body to the scan endpoint.
60
- *
61
- * @param body - The chain-specific scan request body.
62
- * @param responseStruct - Superstruct struct validating the
63
- * chain-specific response payload.
64
- * @returns The validated scan response.
65
- * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.
66
- */
67
- async scanTransaction(body, responseStruct) {
68
- const response = await this.#fetch(this.#scanUrl, {
69
- headers: { ...SECURITY_ALERTS_REQUEST_HEADERS },
70
- method: 'POST',
71
- body: JSON.stringify(body),
72
- });
73
- if (!response.ok) {
74
- let responseBody = null;
75
- try {
76
- responseBody = await response.text();
77
- }
78
- catch {
79
- responseBody = null;
80
- }
81
- throw new SecurityAlertsHttpError(response.status, responseBody);
82
- }
83
- const data = await response.json();
84
- assert(data, responseStruct);
85
- return data;
86
- }
87
- }
88
- //# sourceMappingURL=SecurityAlertsApiClient.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SecurityAlertsApiClient.mjs","sourceRoot":"","sources":["../../../src/services/security-alerts/SecurityAlertsApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,8BAA8B;AAG/C,OAAO,EAAE,SAAS,EAAE,4CAAwC;AAE5D;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAA2B;IACrE,cAAc,EAAE,kBAAkB;IAClC,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACvC,UAAU,CAAS;IAEnB,YAAY,CAAgB;IAErC;;;;;OAKG;IACH,YAAY,UAAkB,EAAE,YAA2B;QACzD,KAAK,CACH,8BAA8B,UAAU,GACtC,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,CAAC,EACxC,EAAE,CACH,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAcD;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,uBAAuB;IACzB,MAAM,CAA0B;IAEhC,QAAQ,CAAS;IAE1B;;;;;;;;OAQG;IACH,YAAY,EACV,OAAO,EACP,KAAK,EAAE,OAAO,GAAG,UAAU,CAAC,KAAK,GACF;QAC/B,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAE3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe,CACnB,IAAW,EACX,cAAiC;QAEjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChD,OAAO,EAAE,EAAE,GAAG,+BAA+B,EAAE;YAC/C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,YAAY,GAAkB,IAAI,CAAC;YACvC,IAAI,CAAC;gBACH,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YAED,MAAM,IAAI,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC;CACF","sourcesContent":["import { assert } from '@metamask/superstruct';\nimport type { Struct } from '@metamask/superstruct';\n\nimport { UrlStruct } from '../../utils/urlStruct/urlStruct';\n\n/**\n * Headers sent with every Security Alerts API request.\n */\nexport const SECURITY_ALERTS_REQUEST_HEADERS: Record<string, string> = {\n 'Content-Type': 'application/json',\n accept: 'application/json',\n};\n\n/**\n * Error thrown when the Security Alerts API responds with a non-2xx status.\n */\nexport class SecurityAlertsHttpError extends Error {\n readonly statusCode: number;\n\n readonly responseBody: string | null;\n\n /**\n * Creates a new SecurityAlertsHttpError.\n *\n * @param statusCode - The HTTP status code of the response.\n * @param responseBody - The raw response body, when it could be read.\n */\n constructor(statusCode: number, responseBody: string | null) {\n super(\n `Security Alerts API error: ${statusCode}${\n responseBody ? ` - ${responseBody}` : ''\n }`,\n );\n\n this.name = 'SecurityAlertsHttpError';\n this.statusCode = statusCode;\n this.responseBody = responseBody;\n }\n}\n\n/**\n * Options for a `SecurityAlertsApiClient` constructor.\n */\nexport type SecurityAlertsApiClientOptions = {\n /**\n * The full scan endpoint URL, e.g. `https://security-alerts.api.cx.metamask.io/tron/transaction/scan`.\n */\n scanUrl: string;\n /** The fetch implementation to use. Defaults to `globalThis.fetch`. */\n fetch?: typeof globalThis.fetch;\n};\n\n/**\n * HTTP client for a Security Alerts API scan endpoint.\n *\n * Owns the request envelope shared by every chain — POSTing the JSON body,\n * reporting non-2xx responses as {@link SecurityAlertsHttpError}, and parsing\n * the JSON response — and nothing else.\n *\n * The request body and response payload are chain-specific Blockaid\n * contracts: the caller supplies a typed body (e.g. checked with `satisfies`\n * against a per-snap body type) and a Superstruct struct for the response,\n * so both are type-checked and validated at the call site.\n */\nexport class SecurityAlertsApiClient {\n readonly #fetch: typeof globalThis.fetch;\n\n readonly #scanUrl: string;\n\n /**\n * Creates a new SecurityAlertsApiClient.\n *\n * @param options - The client options.\n * @param options.scanUrl - The full scan endpoint URL. Validated once, so\n * an invalid URL fails fast at construction.\n * @param options.fetch - Optional fetch implementation; defaults to\n * `globalThis.fetch`.\n */\n constructor({\n scanUrl,\n fetch: fetchFn = globalThis.fetch,\n }: SecurityAlertsApiClientOptions) {\n assert(scanUrl, UrlStruct);\n\n this.#fetch = fetchFn;\n this.#scanUrl = scanUrl;\n }\n\n /**\n * Scans a transaction by posting the request body to the scan endpoint.\n *\n * @param body - The chain-specific scan request body.\n * @param responseStruct - Superstruct struct validating the\n * chain-specific response payload.\n * @returns The validated scan response.\n * @throws SecurityAlertsHttpError if the API responds with a non-2xx status.\n */\n async scanTransaction<BodyT extends Record<string, unknown>, ResponseT>(\n body: BodyT,\n responseStruct: Struct<ResponseT>,\n ): Promise<ResponseT> {\n const response = await this.#fetch(this.#scanUrl, {\n headers: { ...SECURITY_ALERTS_REQUEST_HEADERS },\n method: 'POST',\n body: JSON.stringify(body),\n });\n\n if (!response.ok) {\n let responseBody: string | null = null;\n try {\n responseBody = await response.text();\n } catch {\n responseBody = null;\n }\n\n throw new SecurityAlertsHttpError(response.status, responseBody);\n }\n\n const data = await response.json();\n assert(data, responseStruct);\n\n return data;\n }\n}\n"]}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- /* eslint-disable @typescript-eslint/naming-convention */
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.METAMASK_ORIGIN_URL = exports.SecurityAlertResponse = exports.SecurityAlertsScanStatus = exports.SecurityAlertsScanOption = void 0;
5
- exports.normalizeScanOrigin = normalizeScanOrigin;
6
- const createOriginPermissions_1 = require("../../utils/originPermissions/createOriginPermissions.cjs");
7
- /**
8
- * Scan options recognized by the Security Alerts API scan endpoints.
9
- *
10
- * `simulation` requests an on-chain simulation of the transaction (asset
11
- * diffs); `validation` requests a security verdict.
12
- */
13
- exports.SecurityAlertsScanOption = {
14
- Simulation: 'simulation',
15
- Validation: 'validation',
16
- };
17
- /** Status of a completed security scan. */
18
- exports.SecurityAlertsScanStatus = {
19
- SUCCESS: 'SUCCESS',
20
- ERROR: 'ERROR',
21
- };
22
- /**
23
- * Verdicts emitted by the Security Alerts API validation.
24
- *
25
- * Shared by all network snaps so scan results and analytics agree on the
26
- * verdict vocabulary.
27
- */
28
- exports.SecurityAlertResponse = {
29
- Benign: 'Benign',
30
- Warning: 'Warning',
31
- Malicious: 'Malicious',
32
- };
33
- /**
34
- * The URL substituted for the MetaMask in-app origin in scan request
35
- * metadata, since the in-app browser reports no dapp URL.
36
- */
37
- exports.METAMASK_ORIGIN_URL = 'https://metamask.io';
38
- /**
39
- * Normalizes a dapp origin for scan request metadata.
40
- *
41
- * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is
42
- * not a usable URL; it is mapped to the MetaMask site. Other origins are
43
- * returned unchanged.
44
- *
45
- * @param origin - The origin of the request.
46
- * @returns The normalized origin.
47
- */
48
- function normalizeScanOrigin(origin) {
49
- return origin === createOriginPermissions_1.DEFAULT_METAMASK_ORIGIN ? exports.METAMASK_ORIGIN_URL : origin;
50
- }
51
- //# sourceMappingURL=types.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../../src/services/security-alerts/types.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AA4EzD,kDAEC;AA5ED,uGAAgG;AAEhG;;;;;GAKG;AACU,QAAA,wBAAwB,GAAG;IACtC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;CAChB,CAAC;AAKX,2CAA2C;AAC9B,QAAA,wBAAwB,GAAG;IACtC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACN,CAAC;AAKX;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG;IACnC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAC;AAuBX;;;GAGG;AACU,QAAA,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD;;;;;;;;;GASG;AACH,SAAgB,mBAAmB,CAAC,MAAc;IAChD,OAAO,MAAM,KAAK,iDAAuB,CAAC,CAAC,CAAC,2BAAmB,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3E,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { DEFAULT_METAMASK_ORIGIN } from '../../utils/originPermissions/createOriginPermissions';\n\n/**\n * Scan options recognized by the Security Alerts API scan endpoints.\n *\n * `simulation` requests an on-chain simulation of the transaction (asset\n * diffs); `validation` requests a security verdict.\n */\nexport const SecurityAlertsScanOption = {\n Simulation: 'simulation',\n Validation: 'validation',\n} as const;\n\nexport type SecurityAlertsScanOption =\n (typeof SecurityAlertsScanOption)[keyof typeof SecurityAlertsScanOption];\n\n/** Status of a completed security scan. */\nexport const SecurityAlertsScanStatus = {\n SUCCESS: 'SUCCESS',\n ERROR: 'ERROR',\n} as const;\n\nexport type SecurityAlertsScanStatus =\n (typeof SecurityAlertsScanStatus)[keyof typeof SecurityAlertsScanStatus];\n\n/**\n * Verdicts emitted by the Security Alerts API validation.\n *\n * Shared by all network snaps so scan results and analytics agree on the\n * verdict vocabulary.\n */\nexport const SecurityAlertResponse = {\n Benign: 'Benign',\n Warning: 'Warning',\n Malicious: 'Malicious',\n} as const;\n\nexport type SecurityAlertResponse =\n (typeof SecurityAlertResponse)[keyof typeof SecurityAlertResponse];\n\n/**\n * JSON body fields shared by every Security Alerts API scan request.\n *\n * Chain-specific payloads (the transaction itself, its encoding, and the\n * metadata shape) are added by each chain's client on top of this base.\n */\nexport type SecurityAlertsScanRequestBase = {\n /**\n * The scanned account's address, in the chain's native format. The snake\n * case matches the Security Alerts API wire format.\n */\n account_address: string;\n /** The Security Alerts API chain identifier (e.g. `mainnet`, `pubnet`). */\n chain: string;\n /** The requested scan options. */\n options?: string[];\n};\n\n/**\n * The URL substituted for the MetaMask in-app origin in scan request\n * metadata, since the in-app browser reports no dapp URL.\n */\nexport const METAMASK_ORIGIN_URL = 'https://metamask.io';\n\n/**\n * Normalizes a dapp origin for scan request metadata.\n *\n * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is\n * not a usable URL; it is mapped to the MetaMask site. Other origins are\n * returned unchanged.\n *\n * @param origin - The origin of the request.\n * @returns The normalized origin.\n */\nexport function normalizeScanOrigin(origin: string): string {\n return origin === DEFAULT_METAMASK_ORIGIN ? METAMASK_ORIGIN_URL : origin;\n}\n"]}
@@ -1,63 +0,0 @@
1
- /**
2
- * Scan options recognized by the Security Alerts API scan endpoints.
3
- *
4
- * `simulation` requests an on-chain simulation of the transaction (asset
5
- * diffs); `validation` requests a security verdict.
6
- */
7
- export declare const SecurityAlertsScanOption: {
8
- readonly Simulation: "simulation";
9
- readonly Validation: "validation";
10
- };
11
- export type SecurityAlertsScanOption = (typeof SecurityAlertsScanOption)[keyof typeof SecurityAlertsScanOption];
12
- /** Status of a completed security scan. */
13
- export declare const SecurityAlertsScanStatus: {
14
- readonly SUCCESS: "SUCCESS";
15
- readonly ERROR: "ERROR";
16
- };
17
- export type SecurityAlertsScanStatus = (typeof SecurityAlertsScanStatus)[keyof typeof SecurityAlertsScanStatus];
18
- /**
19
- * Verdicts emitted by the Security Alerts API validation.
20
- *
21
- * Shared by all network snaps so scan results and analytics agree on the
22
- * verdict vocabulary.
23
- */
24
- export declare const SecurityAlertResponse: {
25
- readonly Benign: "Benign";
26
- readonly Warning: "Warning";
27
- readonly Malicious: "Malicious";
28
- };
29
- export type SecurityAlertResponse = (typeof SecurityAlertResponse)[keyof typeof SecurityAlertResponse];
30
- /**
31
- * JSON body fields shared by every Security Alerts API scan request.
32
- *
33
- * Chain-specific payloads (the transaction itself, its encoding, and the
34
- * metadata shape) are added by each chain's client on top of this base.
35
- */
36
- export type SecurityAlertsScanRequestBase = {
37
- /**
38
- * The scanned account's address, in the chain's native format. The snake
39
- * case matches the Security Alerts API wire format.
40
- */
41
- account_address: string;
42
- /** The Security Alerts API chain identifier (e.g. `mainnet`, `pubnet`). */
43
- chain: string;
44
- /** The requested scan options. */
45
- options?: string[];
46
- };
47
- /**
48
- * The URL substituted for the MetaMask in-app origin in scan request
49
- * metadata, since the in-app browser reports no dapp URL.
50
- */
51
- export declare const METAMASK_ORIGIN_URL = "https://metamask.io";
52
- /**
53
- * Normalizes a dapp origin for scan request metadata.
54
- *
55
- * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is
56
- * not a usable URL; it is mapped to the MetaMask site. Other origins are
57
- * returned unchanged.
58
- *
59
- * @param origin - The origin of the request.
60
- * @returns The normalized origin.
61
- */
62
- export declare function normalizeScanOrigin(origin: string): string;
63
- //# sourceMappingURL=types.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../../src/services/security-alerts/types.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E,2CAA2C;AAC3C,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAEzD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D"}
@@ -1,63 +0,0 @@
1
- /**
2
- * Scan options recognized by the Security Alerts API scan endpoints.
3
- *
4
- * `simulation` requests an on-chain simulation of the transaction (asset
5
- * diffs); `validation` requests a security verdict.
6
- */
7
- export declare const SecurityAlertsScanOption: {
8
- readonly Simulation: "simulation";
9
- readonly Validation: "validation";
10
- };
11
- export type SecurityAlertsScanOption = (typeof SecurityAlertsScanOption)[keyof typeof SecurityAlertsScanOption];
12
- /** Status of a completed security scan. */
13
- export declare const SecurityAlertsScanStatus: {
14
- readonly SUCCESS: "SUCCESS";
15
- readonly ERROR: "ERROR";
16
- };
17
- export type SecurityAlertsScanStatus = (typeof SecurityAlertsScanStatus)[keyof typeof SecurityAlertsScanStatus];
18
- /**
19
- * Verdicts emitted by the Security Alerts API validation.
20
- *
21
- * Shared by all network snaps so scan results and analytics agree on the
22
- * verdict vocabulary.
23
- */
24
- export declare const SecurityAlertResponse: {
25
- readonly Benign: "Benign";
26
- readonly Warning: "Warning";
27
- readonly Malicious: "Malicious";
28
- };
29
- export type SecurityAlertResponse = (typeof SecurityAlertResponse)[keyof typeof SecurityAlertResponse];
30
- /**
31
- * JSON body fields shared by every Security Alerts API scan request.
32
- *
33
- * Chain-specific payloads (the transaction itself, its encoding, and the
34
- * metadata shape) are added by each chain's client on top of this base.
35
- */
36
- export type SecurityAlertsScanRequestBase = {
37
- /**
38
- * The scanned account's address, in the chain's native format. The snake
39
- * case matches the Security Alerts API wire format.
40
- */
41
- account_address: string;
42
- /** The Security Alerts API chain identifier (e.g. `mainnet`, `pubnet`). */
43
- chain: string;
44
- /** The requested scan options. */
45
- options?: string[];
46
- };
47
- /**
48
- * The URL substituted for the MetaMask in-app origin in scan request
49
- * metadata, since the in-app browser reports no dapp URL.
50
- */
51
- export declare const METAMASK_ORIGIN_URL = "https://metamask.io";
52
- /**
53
- * Normalizes a dapp origin for scan request metadata.
54
- *
55
- * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is
56
- * not a usable URL; it is mapped to the MetaMask site. Other origins are
57
- * returned unchanged.
58
- *
59
- * @param origin - The origin of the request.
60
- * @returns The normalized origin.
61
- */
62
- export declare function normalizeScanOrigin(origin: string): string;
63
- //# sourceMappingURL=types.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../../src/services/security-alerts/types.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E,2CAA2C;AAC3C,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAEzD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D"}
@@ -1,47 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import { DEFAULT_METAMASK_ORIGIN } from "../../utils/originPermissions/createOriginPermissions.mjs";
3
- /**
4
- * Scan options recognized by the Security Alerts API scan endpoints.
5
- *
6
- * `simulation` requests an on-chain simulation of the transaction (asset
7
- * diffs); `validation` requests a security verdict.
8
- */
9
- export const SecurityAlertsScanOption = {
10
- Simulation: 'simulation',
11
- Validation: 'validation',
12
- };
13
- /** Status of a completed security scan. */
14
- export const SecurityAlertsScanStatus = {
15
- SUCCESS: 'SUCCESS',
16
- ERROR: 'ERROR',
17
- };
18
- /**
19
- * Verdicts emitted by the Security Alerts API validation.
20
- *
21
- * Shared by all network snaps so scan results and analytics agree on the
22
- * verdict vocabulary.
23
- */
24
- export const SecurityAlertResponse = {
25
- Benign: 'Benign',
26
- Warning: 'Warning',
27
- Malicious: 'Malicious',
28
- };
29
- /**
30
- * The URL substituted for the MetaMask in-app origin in scan request
31
- * metadata, since the in-app browser reports no dapp URL.
32
- */
33
- export const METAMASK_ORIGIN_URL = 'https://metamask.io';
34
- /**
35
- * Normalizes a dapp origin for scan request metadata.
36
- *
37
- * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is
38
- * not a usable URL; it is mapped to the MetaMask site. Other origins are
39
- * returned unchanged.
40
- *
41
- * @param origin - The origin of the request.
42
- * @returns The normalized origin.
43
- */
44
- export function normalizeScanOrigin(origin) {
45
- return origin === DEFAULT_METAMASK_ORIGIN ? METAMASK_ORIGIN_URL : origin;
46
- }
47
- //# sourceMappingURL=types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../../src/services/security-alerts/types.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,OAAO,EAAE,uBAAuB,EAAE,kEAA8D;AAEhG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;CAChB,CAAC;AAKX,2CAA2C;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACN,CAAC;AAKX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAC;AAuBX;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,OAAO,MAAM,KAAK,uBAAuB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3E,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { DEFAULT_METAMASK_ORIGIN } from '../../utils/originPermissions/createOriginPermissions';\n\n/**\n * Scan options recognized by the Security Alerts API scan endpoints.\n *\n * `simulation` requests an on-chain simulation of the transaction (asset\n * diffs); `validation` requests a security verdict.\n */\nexport const SecurityAlertsScanOption = {\n Simulation: 'simulation',\n Validation: 'validation',\n} as const;\n\nexport type SecurityAlertsScanOption =\n (typeof SecurityAlertsScanOption)[keyof typeof SecurityAlertsScanOption];\n\n/** Status of a completed security scan. */\nexport const SecurityAlertsScanStatus = {\n SUCCESS: 'SUCCESS',\n ERROR: 'ERROR',\n} as const;\n\nexport type SecurityAlertsScanStatus =\n (typeof SecurityAlertsScanStatus)[keyof typeof SecurityAlertsScanStatus];\n\n/**\n * Verdicts emitted by the Security Alerts API validation.\n *\n * Shared by all network snaps so scan results and analytics agree on the\n * verdict vocabulary.\n */\nexport const SecurityAlertResponse = {\n Benign: 'Benign',\n Warning: 'Warning',\n Malicious: 'Malicious',\n} as const;\n\nexport type SecurityAlertResponse =\n (typeof SecurityAlertResponse)[keyof typeof SecurityAlertResponse];\n\n/**\n * JSON body fields shared by every Security Alerts API scan request.\n *\n * Chain-specific payloads (the transaction itself, its encoding, and the\n * metadata shape) are added by each chain's client on top of this base.\n */\nexport type SecurityAlertsScanRequestBase = {\n /**\n * The scanned account's address, in the chain's native format. The snake\n * case matches the Security Alerts API wire format.\n */\n account_address: string;\n /** The Security Alerts API chain identifier (e.g. `mainnet`, `pubnet`). */\n chain: string;\n /** The requested scan options. */\n options?: string[];\n};\n\n/**\n * The URL substituted for the MetaMask in-app origin in scan request\n * metadata, since the in-app browser reports no dapp URL.\n */\nexport const METAMASK_ORIGIN_URL = 'https://metamask.io';\n\n/**\n * Normalizes a dapp origin for scan request metadata.\n *\n * The MetaMask in-app browser reports the pseudo-origin `metamask`, which is\n * not a usable URL; it is mapped to the MetaMask site. Other origins are\n * returned unchanged.\n *\n * @param origin - The origin of the request.\n * @returns The normalized origin.\n */\nexport function normalizeScanOrigin(origin: string): string {\n return origin === DEFAULT_METAMASK_ORIGIN ? METAMASK_ORIGIN_URL : origin;\n}\n"]}