Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@trezor/connect-common

trezor253.2kSEE LICENSE IN LICENSE.md0.3.5TypeScript support: included

Collection of assets and utils used by trezor-connect library.

Trezor, trezor-connect

readme

TREZOR SUITE MONOREPO

Welcome to the Trezor Suite repository! This repository contains the source code for 3 projects:

  • Connect - tool that offers developers an easy way to integrate Trezor's functionality into their own applications
  • Trezor Suite - desktop and web application for managing Trezor hardware wallet
  • Trezor Suite Lite - Mobile application designed for tracking user portfolios

img

Development

Prerequisities

Getting started

  • git clone git@github.com:trezor/trezor-suite.git
  • cd trezor-suite
  • git submodule update --init --recursive
  • git lfs install // Set up Git LFS for your user account. You only need to run this once per user account.
  • git lfs pull
  • nvm install
  • yarn
  • yarn build:libs

It's recommended to enable git config --global submodule.recurse true so you don't need to run git submodule update --init --recursive every time when submodules are updated.

You don't need a Trezor device to get into the app, you can use emulator. There is a Trezor User Env to help you set it up and run emulator for any Trezor model 🎉

Connect @trezor/connect

This repository is used for development of version 9 of @trezor/connect. For detailed documentation, please refer to this page.

Historically, Trezor Connect had its own repository. This repository is now archived.

Trezor Suite @trezor/suite

Dev environment is primarily supported on macOS or Linux, though development on Windows is possible by following this guide.

Run a dev build:

  • yarn suite:dev (web app)
  • yarn suite:dev:vite (⚠️ EXPERIMENTAL: web app with Vite bundler used for development only, use yarn suite:dev if you want fidelity to production app)
  • yarn suite:dev:desktop (electron app)

Trezor Suite Lite @suite-native/app

To set up your dev environment for a native platform (iOS/Android) follow these additional steps.

Contribute

Inspired by GitLab Contributing Guide

Using Conventional Commits is required.

Security vulnerability disclosure

Please report suspected security vulnerabilities in private to security@satoshilabs.com, also see the disclosure section on the Trezor.io website. Please do NOT create publicly viewable issues for suspected security vulnerabilities.

IDE specific settings

Find specific settings for Integrated Development Environments (IDE) in IDE.md

changelog

0.3.5

  • npm-prerelease: @trezor/connect-common 0.3.5-beta.1 (518cb2a22d)
  • chore: apply latest prettier (eb758acea9)

0.3.3

  • npm-prerelease: @trezor/connect-common 0.3.3-beta.1 (3fe6d1fdb7)

0.3.2

  • npm-prerelease: @trezor/connect-common 0.3.2-beta.2 (9c5bbd9601)
  • npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
  • fix(connect-common): revert t3b1 min_bootloader_version bump (3f9e16c788)
  • chore(connect-common): add fw binaries for 2.8.9 (63a69af876)

0.3.1

  • npm-prerelease: @trezor/connect-common 0.3.1-beta.1 (f652f8a255)
  • feat(backend): added backends so that each EVM has 4 endpoints (f5c057c2be)
  • fix(repo): fix generate package script (#17300) (a13f269b99)

0.3.0

  • npm-prerelease: @trezor/connect-common 0.3.0-beta.1 (bc89ee33de)
  • chore(connect-common): add fw binaries for 2.8.8 and 1.13.0 (6ef17681ba)
  • npm-prerelease: @trezor/connect-common 0.2.8-beta.1 (e596b27a42)
  • chore(trezor-common): uptate coins.json and coins-eth.json Replacing testnet 3 with testnet 4 as default Bitcoin Testnet. (0c1db741b4)
  • chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
  • chore(connect-common): update coins and coins-eth for T3W1 support (5ba81f81ed)
  • chore(connect-common): sort coins-eth.json by chain_id (2b32394dfe)
  • chore(connect): simplify transportInfo (bc7bf5d7a8)
  • chore(connect-common): add fw binaries for 2.8.7 (4f2733bcbe)
  • chore(blockchain-link): update networks to use trezor.io proxy servers (c6d420cde0)
  • feat(suite-native): bnb to bsc migration (b2e666250c)
  • feat(connect): add support of L2 ETH networks (26ff8eada4)
  • feat(connect): add Arbitrum one (0865836724)
  • chore(connect-commmon): decrease min bootloader version for 2.8.3 (ea4a3d8061)

0.2.7

  • npm-prerelease: @trezor/connect-common 0.2.7-beta.1 (d876bc6071)
  • Revert chore(connect-common): add fw 2.8.6. for t3t1 (064c56a642)
  • chore(connect-common): add fw 2.8.6. for t3t1 (21b4b9b0a3)

0.2.6

  • fix(connect-common): update ripple default backends (6a3dbf2b77)

0.2.5

  • npm-prerelease: @trezor/connect-common 0.2.5-beta.1 (6314de0dad)

0.2.4

  • npm-prerelease: @trezor/connect-common 0.2.4-beta.1 (55487acb49)
  • fix(connect): preferred device handling based on state (58b854cbed)

0.2.3

  • npm-prerelease: @trezor/connect-common 0.2.3-beta.2 (5038b5bbd4)
  • chore: get rid of '@typescript-eslint/no-unused-vars': 'off', and enforce it everywhere (1ad7b6f9b1)
  • chore: enforce @typescript-eslint/no-restricted-imports everywhere (5d1104bfeb)
  • chore: add 'import/no-duplicates' ESLint rule (8d8beba862)
  • feat(connect): add t3w1 releases.json (01cdee48f1)
  • refactor(connect): separate unique and transport device path (0f8d233d56)
  • npm-prerelease: @trezor/connect-common 0.2.3-beta.1 (412da596f1)
  • chore: update backends for bsc and op (458f0fe3d9)
  • feat(connect): add Optimism (c2fb244649)

0.2.1

  • npm-prerelease: @trezor/connect-common 0.2.1-beta.1 (4dc0af2640)
  • chore(connect-common): change lng blob in release.json (c8a0c46067)
  • chore(connect-common): add FW 2.8.3 binaries for T3B1 (c32984c54e)
  • chore(connect-common): add FW 2.8.3 binaries for T3T1 (b57198acf7)
  • feat: add filterCoins script, update coins (74c53f68ee)
  • chore(connect-common): update coins.json via yarn update-coins (f7c16e1e34)
  • chore(connect-common): add t3b1 to coins.json (6a8b460250)

0.2.0

  • npm-prerelease: @trezor/connect-common 0.1.1-beta.3 (2bf4c38c95)
  • feat(connect-common): Generalize firmware-check script for all devices, backfill revisionIds into releases (655b9d3574)
  • chore(connect-common): add fw 2.8.1 (847cfd6a1d)
  • chore(connect): rename bsc to bnb as it is declared in fw repo (0174dc2f38)
  • feat(connect-common): adding revisions into releases.json & adding a script to check their correctness (fcc68d281c)
  • npm-prerelease: @trezor/connect-common 0.1.1-beta.2 (c9bf01cb8a)
  • chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
  • npm-prerelease: @trezor/connect-common 0.1.1-beta.1 (fe9453ed05)
  • chore(connect-common): fw version 1.9.0 and 2.3.0 required (ee623e4090)
  • feat(suite): add support for Bitcoin Only changelog + add Markdown support for all changelogs (a707883081)
  • chore(connect-common): added fw 2.8.0 changelog (8accbc4ab3)
  • chore: add T3T1 fw binaries to lfs (abaff39c54)
  • chore(connect-common): add new fw 2.8.0 (314052b56a)

0.0.34-beta.1

  • chore(connect-common): edit firmware changelogs (3637a56cf7)
  • fix(connect-common): firmware release url (0166df50e6)
  • chore(connect-common): update firmware binaries to 2.7.2 (63923287e8)
  • chore(connect-common): T3T1 support (9d0adae993)

0.0.33-beta.1

  • chore(connect): bump required fw to 1.8.1/2.1.0 (2f14ff6703)
  • chore(connect-common): fix bootloader_version in the first t3t1 record (6ebae70094)

0.0.32

  • feat(connect): add T3T1 releases.json (a9840087c8)
  • chore: remove min_bridge_version from releases.json (c384914903)
  • chore(connect-common): add Czech to available FW translations (4a1aa824c6)

0.0.31

  • fix(connect): webextension save sessions (efed18e4ea)
  • chore(suite): remove goerli (8eb6b271a5)
  • chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
  • chore(connect-common): add firmware binaries 2.7.0 (4c14b45bd6)
  • chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)

0.0.30

  • fix(connect): fix build of connect-web (50f35cb2a)

0.0.29

  • fix: from g:tsx to local tsx in prepublish script (d21d698b2)
  • fix(connect-common): remove confusing log in AbstractMessageChannel (6d3b60c73)
  • chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
  • chore(suite): autofix newlines (c82455e74)
  • chore(utils): remove build step requirement from @trezor/utils (#11176) (6cd3d3c81)
  • fix(connect-web): workaround to work with older content-script (5da505b02)
  • fix(connect-web): reconnect message channel (ee98bb51c)
  • chore(connect-web): refactor popupmanager (af1723e4f)
  • chore: use global tsx (c21d81f66)
  • chore: update typescript and use global tsc (84bc9b8bd)
  • chore: use global rimraf (5a6759eff)
  • chore: use global jest (a7e68797d)
  • chore: upgrade jest to 29.7.0 (3c656dc0b)
  • chore: upgrade jest (004938e24)
  • chore: update root dependencies (fac6d99ec)

0.0.28

  • feat(suite): Rename Polygon to Polygon PoS (15a7fd38dc)
  • feat(suite): add Polygon (8c569ca580)
  • chore(connect-common): remove es5 target (fails with TypedEmitter) (0a19580f63)
  • feat(connect-common): store is event emitter, saves permissions and preferred device (db0e9631da)

0.0.27

  • feat(connect-common): message channel to allow lazy handshake (79be923e67)

0.0.26

  • feat(connect-common): add resolve messages promises to abstract (f9e6f304f)
  • fix(connect-common): when init always create new deferred (70c6c0048)

0.0.24

  • feat(connect-common): add more backend urls for solana (29f042470)
  • chore(connect): use tslib as dependency in all public libs (606ecc63b)
  • chore: update jest and related dependency (b8a321c83)
  • chore(connect-common): update fw binaries to 2.6.4 (398509788)
  • chore(repo): update tsx (53de3e3a8)
  • feat(suite): add Solana support (f2a89b34f)
  • chore(suite): unify support config for eth coins (8776bb79c)
  • chore(suite): add Holesky (175707861)
  • chore(connect-webextension): postMessage useQueue param (4e626e758)

0.0.23

  • feat(connect): update solana backend urls (876f60939)
  • chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
  • chore(jest): update in connect-common package (5801d2595)
  • chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
  • chore(tests): cleanup jets configs (#9869) (7b68bab05)
  • feat(deps): update deps without breaking changes (7e0584c51)
  • feat(connect-common): add T2T1 & T2B1 firmware binaries 2.6.3 bootloader 2.1.4 (9cca8b14f)
  • chore(desktop): update deps related to desktop packages (af412cfb5)

0.0.22

  • chore(connect): update coins.json support format (95f270fec)
  • fix(connect-common): fix bootloader version in T2B1 release config (4e698091b)
  • feat(suite): support t2b1 firmware installation (9ef2bf627)
  • chore(connect): fix local storage check (#9547) (b9ac84446)

0.0.19

  • chore(connect): update coins.json (trezor-common f2374ae) (3b21c4308)
  • chore(connect-*): change model to internal model (8edb0a59d)
  • feat(suite): add Sepolia (bc2236c1c)
  • fix(connect-common): put back goerli and etc records for suite/blockchain-link (23783a3ef)
  • chore(connect): remove unused rskip60 field from coininfo (e686e143c)
  • chore(connect): update coins.json (ebcb36d75)

0.0.17

  • chore: forgotten renaming to T1/TT (5decd0839)
  • chore: unify trezor names in docs/comments (74290aab3)

0.0.15

  • a926901a6 chore: unify T1 and TT names
  • 211ac5ef3 chore(coins.json): remove old eth testnets

0.0.14

  • chore(connect): move systemInfo to connect-common

0.0.13

  • 2.6.0 FW

0.0.12

  • feat: cardano preview testnet

0.0.11

  • refactor storage
    • storage.load(key) -> storage.load().key
    • storage.save(key, value) -> storage.save(state => ({ ...state, key: value }))
  • versioning of storage

0.0.10

Added

  • 2.5.3 FW

Removed

  • 2.5.2 FW

0.0.9

Added

  • 1.11.2 & 2.5.2

0.0.6

Added

  • 1.11.1 & 2.5.1 FW, (1.11.0 BL)
  • storage utils moved from standalone Connect repository
  • coins.json moved from standalone Connect repository

Removed

  • 1.11.0 & 2.5.0 FW

0.0.5

Added

  • 1.11.0 & 2.5.0 FW

0.0.4

Added

  • 1.10.5 FW