Skip to content

Releases: MetaMask/snaps

57.0.0

19 Jul 15:28
2dc0bbd
Compare
Choose a tag to compare

@metamask/snaps-controllers 9.3.0

Added

  • Add snap_resolveInterface RPC method to the SnapInterfaceController (#2509)
  • Add SnapInsightsController (#2555)

Changed

  • Bump @metamask/base-controller from ^6.0.0 to ^6.0.1 (#2445)
  • Bump @metamask/permission-controller from ^10.0.0 to ^10.0.1 (#2445)
  • Bump @metamask/rpc-errors from ^6.2.1 to ^6.3.1 (#2445)
  • Bump @metamask/snaps-registry from ^3.1.0 to ^3.2.1 (#2445)
  • Bump @metamask/snaps-rpc-methods to ^10.0.0 (#2589)
  • Bump @metamask/snaps-sdk to ^6.1.0 (#2589)
  • Bump @metamask/snaps-utils to ^7.8.0 (#2589)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#2445)
  • Bump peer dependency @metamask/snaps-execution-environments to ^6.6.1 (#2589)

Fixed

  • Handle initial connections for preinstalled Snaps (#2591)
  • Account for revoked origins when calculating the difference in initialConnections (#2535)
    • Fixes issue of revoking permissions that are already revoked.
    • Enables revoked connections to be highlighted as being re-added in the UI.
  • Enforce stricter size limits for source code, static auxiliary files, and snap_getFile return values (#2527)
    • Prevent communication failures by enabling compliance with JSON-RPC extension message requirements.

@metamask/snaps-execution-environments 6.6.1

Changed

  • Bump @metamask/rpc-errors from ^6.2.1 to ^6.3.1 (#2445)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#2445)

Fixed

  • Replace superstruct with ESM-compatible @metamask/superstruct ^3.1.0 (#2445)
    • This fixes the issue of this package being unusable by any TypeScript project that uses Node16 or NodeNext as its moduleResolution option.
  • Set @metamask/providers from ^17.0.0 to 17.0.0 (#2445)
    • 17.1.0 and 17.1.1 introduce regressions.

56.0.0

18 Jul 14:31
face4fe
Compare
Choose a tag to compare

@metamask/snaps-rpc-methods 10.0.0

Added

  • BREAKING: snap_dialog now takes the requestUserApproval hook (#2509)
    • It should bind to the addAndShowRequest method of the ApprovalController.
    • Add type DialogApprovalTypes and object DIALOG_APPROVAL_TYPES.

Changed

  • Bump @metamask/key-tree from ^9.1.1 to ^9.1.2 (#2445)
  • Bump @metamask/permission-controller from ^10.0.0 to ^10.0.1 (#2445)
  • Bump @metamask/rpc-errors from ^6.2.1 to ^6.3.1 (#2445)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#2445)

Fixed

  • Replace superstruct with ESM-compatible @metamask/superstruct ^3.1.0 (#2445)
    • This fixes the issue of this package being unusable by any TypeScript project that uses Node16 or NodeNext as its moduleResolution option.

@metamask/snaps-sdk 6.1.0

Added

  • Add non-restricted RPC method snap_resolveInterface (#2509)
    • This method allows a Snap to resolve a given user interface bound to a snap_dialog with a custom value.
    • Add new types ResolveInterfaceParams, ResolveInterfaceResult.
  • Add Card component (#2480)
  • Add BoxChildStruct, FormChildStruct, FieldChildUnionStruct (#2409)
  • Add Container and Footer components (#2517)

Changed

  • Update RootJSXElement to allow Container or Box at the root (#2526)
  • Bump @metamask/key-tree from ^9.1.1 to ^9.1.2 (#2445)
  • Bump @metamask/rpc-errors from ^6.2.1 to ^6.3.1 (#2445)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#2445)

Fixed

  • Replace superstruct with ESM-compatible @metamask/superstruct ^3.1.0 (#2445)
    • This fixes the issue of this package being unusable by any TypeScript project that uses Node16 or NodeNext as its moduleResolution option.
  • Set @metamask/providers from ^17.0.0 to 17.0.0 (#2445)
    • 17.1.0 and 17.1.1 introduce regressions.

@metamask/snaps-utils 7.8.0

Added

  • Move serialiseJsx function from snaps-jest to snaps-utils (#2409)

Changed

  • Bump @metamask/base-controller from ^6.0.0 to ^6.0.1 (#2445)
  • Bump @metamask/key-tree from ^9.1.1 to ^9.1.2 (#2445)
  • Bump @metamask/permission-controller from ^10.0.0 to ^10.0.1 (#2445)
  • Bump @metamask/rpc-errors from ^6.2.1 to ^6.3.1 (#2445)
  • Bump @metamask/snaps-registry from ^3.1.0 to ^3.2.1 (#2445)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#2445)

Fixed

  • Replace superstruct with ESM-compatible @metamask/superstruct ^3.1.0 (#2445)
    • This fixes the issue of this package being unusable by any TypeScript project that uses Node16 or NodeNext as its moduleResolution option.
  • Fix allowedOrigins bypass caused by unterminated regex (#2576)

55.0.0

10 Jul 12:00
1480459
Compare
Choose a tag to compare

@metamask/snaps-execution-environments 6.6.0

Changed

  • Inline LavaMoat in WebView bundle (#2528, #2564)

54.0.0

26 Jun 10:08
1abcf20
Compare
Choose a tag to compare

@metamask/snaps-controllers 9.2.0

Added

  • Add feature flag to disable Snap installation (#2521)

@metamask/jsx-example-snap 1.1.1

Fixed

  • Move bold tags in JSX Example Snap (#2520)

53.0.0

25 Jun 12:47
26bbd2a
Compare
Choose a tag to compare

@metamask/snaps-cli 6.2.1

Fixed

  • Improve validation of endowment:rpc (#2512)

@metamask/snaps-controllers 9.1.0

Added

  • Add Checkbox component (#2501)
  • Add FileInput component (#2469)
  • Support additional components inside forms (#2497)

@metamask/snaps-execution-environments 6.5.0

Added

Fixed

  • Support parameters in setTimeout and setInterval (#2513)

@metamask/snaps-jest 8.2.0

Added

  • Add support for Checkbox to snaps-jest (#2515)
    • Checkboxes can be interacted with using clickElement.
  • Add support for FileInput to snaps-jest (#2494)
    • Files can be uploaded to file inputs using uploadFile.

@metamask/snaps-rpc-methods 9.1.4

Changed

  • Bump MetaMask dependencies (#2516)

@metamask/snaps-sdk 6.0.0

Added

  • BREAKING: Add FileInput component (#2469, #2504)
    • FormSubmitEvent may now contain values of type File.
  • BREAKING: Add Checkbox component (#2501)
    • FormSubmitEvent and InputChangeEvent may now contain values of type boolean.
  • Add alignment prop to Text (#2489)
  • Add Tooltip component (#2490)
  • Support additional components inside forms (#2497)
  • Support conditional children in most JSX components (#2506)

@metamask/snaps-utils 7.7.0

Added

  • Support conditional children in most JSX components (#2506)
  • Support additional components inside forms (#2497)

Fixed

  • Improve validation of endowment:rpc (#2512)

@metamask/file-upload-example-snap 1.0.0

Added

@metamask/interactive-ui-example-snap 2.1.0

Added

  • Add Checkbox to interactive UI example (#2515)

@metamask/jsx-example-snap 1.1.0

Added

  • Add Tooltip to JSX example (#2498)

52.0.0

13 Jun 10:30
0b97b71
Compare
Choose a tag to compare

@metamask/snaps-controllers 9.0.0

Changed

  • BREAKING: Defer creation of offscreen document in OffscreenExecutionService (#2473)
  • Update onNameLookup response to include domainName (#2484)
  • Bump MetaMask dependencies (#2460)

Fixed

  • Properly decrypt legacy state blobs (#2472)

@metamask/snaps-execution-environments 6.4.0

Changed

  • Update onNameLookup response to include domainName (#2484)
  • Bump MetaMask dependencies (#2460)

@metamask/snaps-jest 8.1.3

Changed

@metamask/snaps-rpc-methods 9.1.3

Changed

  • Bump MetaMask dependencies (#2460)

@metamask/snaps-sdk 5.0.0

Added

  • Allow row tooltips (#2483)
  • Support nested children in JSX (#2482)

Changed

  • Update onNameLookup response types (#2484)

Removed

  • BREAKING: Remove parseSvg and isSvg internals (#2475)

Fixed

  • Correct Row variant in JSX (#2486)
  • Revert requiring at least one child in JSX components (#2481, #2470)
  • Correct docs for Input and Dropdown (#2479)

@metamask/snaps-utils 7.6.0

Added

  • Support nested children in JSX (#2482)

Changed

  • Update onNameLookup response to include domainName (#2484)
  • Bump MetaMask dependencies (#2460)

Fixed

  • Fix a problem with converting legacy UIs that used row() (#2486)
  • Revert requiring at least one child in JSX components (#2470)

@metamask/name-lookup-example-snap 3.1.0

Changed

  • Update onNameLookup response to include domainName (#2484)

51.0.0

06 Jun 10:49
3866525
Compare
Choose a tag to compare

@metamask/snaps-controllers 8.4.0

Added

  • Add hidden flag for preinstalled Snaps (#2463)

Fixed

  • Use first Dropdown option as the default value (#2465)

@metamask/snaps-sdk 4.4.2

Fixed

  • Require at least 1 child in JSX components (#2466)

@metamask/snaps-utils 7.5.0

Added

  • Allow wildcards in allowedOrigins (#2458)
  • Add hidden flag for preinstalled Snaps (#2463)

Fixed

  • Require at least 1 child in JSX components (#2466)

50.0.0

31 May 11:49
e95e670
Compare
Choose a tag to compare

@metamask/snaps-controllers 8.3.1

Fixed

  • Fix react-native export for tools that don't support package.json exports (#2451)

@metamask/snaps-jest 8.1.2

Fixed

  • Fix invalid @metamask/snaps-sdk imports (#2452)

@metamask/snaps-rpc-methods 9.1.2

Fixed

  • Fix invalid @metamask/snaps-sdk imports (#2452)

@metamask/snaps-sdk 4.4.1

Fixed

  • Fix invalid @metamask/snaps-sdk imports (#2452)

@metamask/snaps-utils 7.4.1

Fixed

  • Fix invalid @metamask/snaps-sdk imports (#2452)

49.0.0

31 May 09:41
3431866
Compare
Choose a tag to compare

@metamask/snaps-controllers 8.3.0

Added

  • Add origin to lifecycle hooks (#2441)
    • Lifecycle hooks can now use the origin parameter to determine the origin
      of the installation or update.

@metamask/snaps-execution-environments 6.3.0

Added

  • Add origin to lifecycle hooks (#2441)
    • Lifecycle hooks can now use the origin parameter to determine the origin
      of the installation or update.

Changed

  • Bump @metamask/providers from 16.1.0 to 17.0.0 (#2442)

@metamask/snaps-jest 8.1.1

Changed

  • Bump @metamask/key-tree from 9.1.0 to 9.1.1 (#2431)

@metamask/snaps-rpc-methods 9.1.1

Changed

  • Bump @metamask/key-tree from 9.1.0 to 9.1.1 (#2431)

@metamask/snaps-sdk 4.4.0

Added

  • Add origin to lifecycle hooks (#2441)
    • Lifecycle hooks can now use the origin parameter to determine the origin
      of the installation or update.

Changed

  • Bump @metamask/providers from 16.1.0 to 17.0.0 (#2442)
  • Bump @metamask/key-tree from 9.1.0 to 9.1.1 (#2431)

48.0.0

28 May 13:28
46da240
Compare
Choose a tag to compare

@metamask/snaps-controllers 8.2.0

Added

  • Add context field to snap_createInterface (#2413)
  • Add feature flag to disable platform (#2434)
  • Add support for Dropdown component (#2420)
  • Add initialConnections diff calculations needed for Snap update (#2424)

Fixed

  • Correctly merge caveats when using initial connections (#2419)

@metamask/snaps-execution-environments 6.2.0

Added

  • Add context field to snap_createInterface (#2413)

@metamask/snaps-jest 8.1.0

Added

  • Add selectInDropdown to be used with the newly added Dropdown component (#2420)
  • Add context field to snap_createInterface (#2413)

Fixed

  • Properly handle invalid interfaces during test (#2433)
  • Properly diff when using legacy UI with toRender matcher (#2432)

@metamask/snaps-rpc-methods 9.1.0

Added

  • Add context field to snap_createInterface (#2413)

@metamask/snaps-sdk 4.3.0

Added

  • Add Value component (#2435)
  • Add Dropdown component (#2420)
  • Add positioning props to Box (#2422)
  • Allow Button within Input (#2407)
  • Add context field to snap_createInterface (#2413, #2427)

Fixed

  • Correct validation for children of Box component (#2423)

@metamask/bip32-example-snap 2.2.0

Added

  • Add support for ed25519Bip32 to the BIP-32 example snap (#2428)

@metamask/interactive-ui-example-snap 2.0.0

Changed

  • BREAKING: Revamp interactive UI example using JSX (#2427)
    • The getState RPC method was removed as part of this refactor.