mirror of
https://github.com/trezor/trezor-suite.git
synced 2026-02-21 17:22:18 +01:00
chore: apply latest prettier
This commit is contained in:
committed by
Tomáš Martykán
parent
c791d09300
commit
eb758acea9
14
.github/ISSUE_TEMPLATE/02_Suite_bug.md
vendored
14
.github/ISSUE_TEMPLATE/02_Suite_bug.md
vendored
@@ -11,13 +11,13 @@ A clear and concise description of what the bug is.
|
||||
|
||||
**Info:**
|
||||
|
||||
- Remembered Wallet: yes/no
|
||||
- Suite Version: app/web, commit
|
||||
- Browser: name, version
|
||||
- Browser Installation Method: snap, flatpak, app store, windows store, downloaded installer, etc.
|
||||
- OS: name, version
|
||||
- Bridge: version
|
||||
- Firmware Version: model, version/commit
|
||||
- Remembered Wallet: yes/no
|
||||
- Suite Version: app/web, commit
|
||||
- Browser: name, version
|
||||
- Browser Installation Method: snap, flatpak, app store, windows store, downloaded installer, etc.
|
||||
- OS: name, version
|
||||
- Bridge: version
|
||||
- Firmware Version: model, version/commit
|
||||
|
||||
**How to reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
|
||||
4
.github/ISSUE_TEMPLATE/04_mobile_bug.md
vendored
4
.github/ISSUE_TEMPLATE/04_mobile_bug.md
vendored
@@ -12,8 +12,8 @@ A clear and concise description of what the bug is.
|
||||
|
||||
**Info:**
|
||||
|
||||
- Mobile Suite Version: version/commit
|
||||
- OS: name, version
|
||||
- Mobile Suite Version: version/commit
|
||||
- OS: name, version
|
||||
|
||||
**How to reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
|
||||
2
.github/actions/build-desktop/action.yml
vendored
2
.github/actions/build-desktop/action.yml
vendored
@@ -33,4 +33,4 @@ runs:
|
||||
with:
|
||||
name: desktop-app-build-e2e
|
||||
path: app-build.tar.gz
|
||||
retention-days: 7
|
||||
retention-days: 7
|
||||
|
||||
@@ -66,13 +66,13 @@ runs:
|
||||
SUCCESSFUL_JOB_URL=$(echo "$PREVIOUS_RUN_RESPONSE" | jq -r '.workflow_runs[0].html_url')
|
||||
echo "Previous successful job found: ${SUCCESSFUL_JOB_URL} - no need to run tests again"
|
||||
echo "skip_tests=true" >> $GITHUB_OUTPUT
|
||||
|
||||
|
||||
- name: Find skipped tests comment
|
||||
uses: peter-evans/find-comment@v3
|
||||
id: find-comment
|
||||
with:
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
comment-author: 'trezor-ci'
|
||||
comment-author: "trezor-ci"
|
||||
body-includes: ✅ Previously successful run of **${{ inputs.workflow_name }}**
|
||||
|
||||
- name: Post skipped tests comment
|
||||
|
||||
@@ -13,7 +13,7 @@ on:
|
||||
- "packages/transport-native-usb/**"
|
||||
- "yarn.lock"
|
||||
- ".github/workflows/build-suite-native-preview.yml"
|
||||
- '!**.md'
|
||||
- "!**.md"
|
||||
# list of paths is not complete, but it's always possible to dispatch manually using 'build-mobile' label
|
||||
workflow_dispatch:
|
||||
# manual dispatch will not add any comment to PR, use label 'build-mobile' if PR exists
|
||||
|
||||
@@ -7,7 +7,7 @@ on:
|
||||
paths:
|
||||
- "suite-native/**"
|
||||
- "suite-common/**"
|
||||
- '!**.md'
|
||||
- "!**.md"
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
|
||||
@@ -7,7 +7,7 @@ name: "[Test] Firmware canary Suite Desktop e2e tests"
|
||||
permissions:
|
||||
id-token: write # for fetching the OIDC token
|
||||
contents: read # for actions/checkout
|
||||
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 0 * * *"
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
- build-app
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
matrix:
|
||||
TEST_GROUP: [1, 2, 3, 4, 5, 6, 7]
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
- name: Build and Upload Suite Desktop
|
||||
uses: ./.github/actions/build-desktop
|
||||
|
||||
|
||||
run-e2e-suite-desktop-tests:
|
||||
if: github.repository == 'trezor/trezor-suite'
|
||||
runs-on: ubuntu-24.04
|
||||
@@ -33,7 +33,7 @@ jobs:
|
||||
- build-app
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
matrix:
|
||||
TEST_GROUP: [1, 2, 3, 4, 5, 6, 7]
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
||||
34
README.md
34
README.md
@@ -2,9 +2,9 @@
|
||||
|
||||
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
|
||||
- **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
|
||||
|
||||

|
||||
|
||||
@@ -12,20 +12,20 @@ Welcome to the Trezor Suite repository! This repository contains the source code
|
||||
|
||||
### Prerequisities
|
||||
|
||||
- Install [NVM](https://github.com/nvm-sh/nvm)
|
||||
- Enable [Yarn](https://yarnpkg.com/getting-started/install) through npm
|
||||
- Install [Git LFS](https://git-lfs.github.com/) (For Linux/Ubuntu, [after adding the repository](https://packagecloud.io/github/git-lfs/install) do `sudo apt-get install git-lfs`, more info [here](https://github.com/git-lfs/git-lfs/blob/main/INSTALLING.md))
|
||||
- Install [NVM](https://github.com/nvm-sh/nvm)
|
||||
- Enable [Yarn](https://yarnpkg.com/getting-started/install) through npm
|
||||
- Install [Git LFS](https://git-lfs.github.com/) (For Linux/Ubuntu, [after adding the repository](https://packagecloud.io/github/git-lfs/install) do `sudo apt-get install git-lfs`, more info [here](https://github.com/git-lfs/git-lfs/blob/main/INSTALLING.md))
|
||||
|
||||
### 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`
|
||||
- `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.
|
||||
|
||||
@@ -44,9 +44,9 @@ though development on Windows is possible by following [this guide](https://docs
|
||||
|
||||
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)
|
||||
- `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
|
||||
|
||||
|
||||
@@ -2,48 +2,48 @@
|
||||
|
||||
[Introduction](./index.md)
|
||||
|
||||
- [Analytics](./analytics/index.md)
|
||||
- [AWS](./analytics/aws.md)
|
||||
- [Sentry](./analytics/sentry.md)
|
||||
- [Releases](./releases/index.md)
|
||||
- [adding new firmwares](./releases/adding-new-firmwares.md)
|
||||
- [desktop updates](./releases/desktop_updates.md)
|
||||
- [environments](./releases/environments.md)
|
||||
- [npm packages](./releases/npm-packages.md)
|
||||
- [signing binaries windows](./releases/signing-binaries-win.md)
|
||||
- [versioning](./releases/versioning.md)
|
||||
- [Packages](./packages/index.md)
|
||||
- [@trezor/connect](./packages/connect/index.md)
|
||||
- [dependencies](./packages/connect/dependencies.md)
|
||||
- [protobuf](./packages/connect/protobuf-type-definitions.md)
|
||||
- [coins support](./packages/connect/supported-coins.md)
|
||||
- [events](./packages/connect/events.md)
|
||||
- [path](./packages/connect/path.md)
|
||||
- [methods](./packages/connect/methods.md)
|
||||
- [@trezor/suite](./packages/suite/index.md)
|
||||
- [send form](./packages/suite/send.md)
|
||||
- [send form architecture](./packages/suite/send/ARCHITECTURE.md)
|
||||
- [@trezor/suite-desktop](./packages/suite-desktop.md)
|
||||
- [creating new package](./packages/creating-packages.md)
|
||||
- [Features](./features/index.md)
|
||||
- [coin handler](./features/protocols/coin-handler.md)
|
||||
- [transactions export](./features/transactions/export.md)
|
||||
- [transactions search](./features/transactions/search.md)
|
||||
- [metadata labeling](./features/metadata.md)
|
||||
- [fiat rates](./features/fiat-rates.md)
|
||||
- [guide](./features/guide.md)
|
||||
- [localization](./features/localization.md)
|
||||
- [messaging system](./features/message-system.md)
|
||||
- [feature flags](./features/feature-flags.md)
|
||||
- [desktop logger](./features/desktop-logger.md)
|
||||
- [onboarding](./features/onboarding/onboarding.md)
|
||||
- [Tests](./tests/index.md)
|
||||
- [e2e @trezor/suite-web](./tests/e2e-suite-web.md)
|
||||
- [e2e @trezor/connect-popup](./tests/e2e-connect-popup.md)
|
||||
- [regtest](./tests/regtest.md)
|
||||
- [Miscellaneous](./misc/index.md)
|
||||
- [build](./misc/build.md)
|
||||
- [development on Windows](./misc/development-on-windows.md)
|
||||
- [device naming](./misc/device-naming.md)
|
||||
- [review](./misc/review.md)
|
||||
- [videos](./misc/videos.md)
|
||||
- [Analytics](./analytics/index.md)
|
||||
- [AWS](./analytics/aws.md)
|
||||
- [Sentry](./analytics/sentry.md)
|
||||
- [Releases](./releases/index.md)
|
||||
- [adding new firmwares](./releases/adding-new-firmwares.md)
|
||||
- [desktop updates](./releases/desktop_updates.md)
|
||||
- [environments](./releases/environments.md)
|
||||
- [npm packages](./releases/npm-packages.md)
|
||||
- [signing binaries windows](./releases/signing-binaries-win.md)
|
||||
- [versioning](./releases/versioning.md)
|
||||
- [Packages](./packages/index.md)
|
||||
- [@trezor/connect](./packages/connect/index.md)
|
||||
- [dependencies](./packages/connect/dependencies.md)
|
||||
- [protobuf](./packages/connect/protobuf-type-definitions.md)
|
||||
- [coins support](./packages/connect/supported-coins.md)
|
||||
- [events](./packages/connect/events.md)
|
||||
- [path](./packages/connect/path.md)
|
||||
- [methods](./packages/connect/methods.md)
|
||||
- [@trezor/suite](./packages/suite/index.md)
|
||||
- [send form](./packages/suite/send.md)
|
||||
- [send form architecture](./packages/suite/send/ARCHITECTURE.md)
|
||||
- [@trezor/suite-desktop](./packages/suite-desktop.md)
|
||||
- [creating new package](./packages/creating-packages.md)
|
||||
- [Features](./features/index.md)
|
||||
- [coin handler](./features/protocols/coin-handler.md)
|
||||
- [transactions export](./features/transactions/export.md)
|
||||
- [transactions search](./features/transactions/search.md)
|
||||
- [metadata labeling](./features/metadata.md)
|
||||
- [fiat rates](./features/fiat-rates.md)
|
||||
- [guide](./features/guide.md)
|
||||
- [localization](./features/localization.md)
|
||||
- [messaging system](./features/message-system.md)
|
||||
- [feature flags](./features/feature-flags.md)
|
||||
- [desktop logger](./features/desktop-logger.md)
|
||||
- [onboarding](./features/onboarding/onboarding.md)
|
||||
- [Tests](./tests/index.md)
|
||||
- [e2e @trezor/suite-web](./tests/e2e-suite-web.md)
|
||||
- [e2e @trezor/connect-popup](./tests/e2e-connect-popup.md)
|
||||
- [regtest](./tests/regtest.md)
|
||||
- [Miscellaneous](./misc/index.md)
|
||||
- [build](./misc/build.md)
|
||||
- [development on Windows](./misc/development-on-windows.md)
|
||||
- [device naming](./misc/device-naming.md)
|
||||
- [review](./misc/review.md)
|
||||
- [videos](./misc/videos.md)
|
||||
|
||||
@@ -12,16 +12,16 @@ Collected data are anonymous. This means that **Suite does not track** personal
|
||||
|
||||
Among the data **not collected** by analytics:
|
||||
|
||||
- Device IDs
|
||||
- Public keys
|
||||
- Particular amounts
|
||||
- Transaction IDs
|
||||
- Device IDs
|
||||
- Public keys
|
||||
- Particular amounts
|
||||
- Transaction IDs
|
||||
|
||||
When data tracking is enabled, Trezor Suite collects functional information that can be used to directly improve the app, such as:
|
||||
|
||||
- Events triggered by a user during a session
|
||||
- Hardware, operating system and setup of the connected device
|
||||
- Errors encountered during a session
|
||||
- Events triggered by a user during a session
|
||||
- Hardware, operating system and setup of the connected device
|
||||
- Errors encountered during a session
|
||||
|
||||
## Data process
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ Access to the data is limited strictly to the members of the development, securi
|
||||
|
||||
## Contents
|
||||
|
||||
- [AWS](./aws.md)
|
||||
- [Sentry](./sentry.md)
|
||||
- [Generic analytics package](https://github.com/trezor/trezor-suite/blob/develop/packages/analytics/README.md)
|
||||
- [Suite analytics package](https://github.com/trezor/trezor-suite/blob/develop/packages/suite-analytics/README.md)
|
||||
- [AWS](./aws.md)
|
||||
- [Sentry](./sentry.md)
|
||||
- [Generic analytics package](https://github.com/trezor/trezor-suite/blob/develop/packages/analytics/README.md)
|
||||
- [Suite analytics package](https://github.com/trezor/trezor-suite/blob/develop/packages/suite-analytics/README.md)
|
||||
|
||||
@@ -18,8 +18,8 @@ Browser (User Agent), System and HW specifications, Suite version, instance id s
|
||||
|
||||
### Extra data:
|
||||
|
||||
- Enabled-coins e.g.: `[btc, ltc, eth, xrp, doge]`
|
||||
- Wallet discovery e.g.:
|
||||
- Enabled-coins e.g.: `[btc, ltc, eth, xrp, doge]`
|
||||
- Wallet discovery e.g.:
|
||||
|
||||
```
|
||||
[
|
||||
@@ -38,7 +38,7 @@ Browser (User Agent), System and HW specifications, Suite version, instance id s
|
||||
]
|
||||
```
|
||||
|
||||
- Device information (slightly redacted):
|
||||
- Device information (slightly redacted):
|
||||
|
||||
```
|
||||
{
|
||||
@@ -131,7 +131,7 @@ Browser (User Agent), System and HW specifications, Suite version, instance id s
|
||||
}
|
||||
```
|
||||
|
||||
- Action logs:
|
||||
- Action logs:
|
||||
|
||||
```
|
||||
[
|
||||
|
||||
@@ -8,12 +8,12 @@ The application log is in JSON format. It starts with App & Platform information
|
||||
|
||||
Contains basic information about the user's platform and app status at the time of displaying the Application log such as:
|
||||
|
||||
- app version
|
||||
- browser name and version
|
||||
- transport type
|
||||
- number of connected devices
|
||||
- enabled networks and custom backends
|
||||
- ...
|
||||
- app version
|
||||
- browser name and version
|
||||
- transport type
|
||||
- number of connected devices
|
||||
- enabled networks and custom backends
|
||||
- ...
|
||||
|
||||
See `getApplicationInfo` method in `logsUtils.ts` in `suite` package.
|
||||
|
||||
@@ -22,9 +22,9 @@ See `getApplicationInfo` method in `logsUtils.ts` in `suite` package.
|
||||
Hundreds of redux actions are fired when using Trezor Suite. The actions, which should help the Support Team understand the user's problem, are logged.
|
||||
Each log record consists of:
|
||||
|
||||
- `type` which should express the type of user's action.
|
||||
- `datetime` showing UTC when user action occurred
|
||||
- `payload` containing additional information
|
||||
- `type` which should express the type of user's action.
|
||||
- `datetime` showing UTC when user action occurred
|
||||
- `payload` containing additional information
|
||||
|
||||
Example log record occurred when user's internet connectivity status changed to offline
|
||||
|
||||
|
||||
@@ -4,10 +4,10 @@ The desktop application includes a logging library to display various types of l
|
||||
|
||||
Four (or five if we count 'mute') log levels are currently implemented:
|
||||
|
||||
- error (1)
|
||||
- warn (2)
|
||||
- info (3)
|
||||
- debug (4)
|
||||
- error (1)
|
||||
- warn (2)
|
||||
- info (3)
|
||||
- debug (4)
|
||||
|
||||
All messages with an inferior level to the selected one will be displayed. For example, if the selected log level is _info_, then it will also display _warn_ and _error_ messages.
|
||||
|
||||
@@ -25,11 +25,11 @@ If you activate Debug menu, logging to file is automatically started. When you d
|
||||
|
||||
Any of the following values:
|
||||
|
||||
- mute (0)
|
||||
- error (1)
|
||||
- warn (2)
|
||||
- info (3)
|
||||
- debug (4)
|
||||
- mute (0)
|
||||
- error (1)
|
||||
- warn (2)
|
||||
- info (3)
|
||||
- debug (4)
|
||||
|
||||
#### Options (all optional)
|
||||
|
||||
@@ -66,8 +66,8 @@ The options `outputFile` and `logFormat` can be used with some expressions, pref
|
||||
|
||||
The constructor has the following parameters:
|
||||
|
||||
- level (LogLevel): Selected log level (see LogLevels in **Exported Types** above)
|
||||
- options (Options): Optional parameter containing settings for the logger (see Options in **Exported Types** above)
|
||||
- level (LogLevel): Selected log level (see LogLevels in **Exported Types** above)
|
||||
- options (Options): Optional parameter containing settings for the logger (see Options in **Exported Types** above)
|
||||
|
||||
### Log methods
|
||||
|
||||
@@ -75,15 +75,15 @@ All log methods have the same signature as they are just wrappers around a priva
|
||||
|
||||
The following methods are available:
|
||||
|
||||
- `error(topic: string, messages: string | string[]); // level: 1`
|
||||
- `warn(topic: string, messages: string | string[]); // level: 2`
|
||||
- `info(topic: string, messages: string | string[]); // level: 3`
|
||||
- `debug(topic: string, messages: string | string[]); // level: 4`
|
||||
- `error(topic: string, messages: string | string[]); // level: 1`
|
||||
- `warn(topic: string, messages: string | string[]); // level: 2`
|
||||
- `info(topic: string, messages: string | string[]); // level: 3`
|
||||
- `debug(topic: string, messages: string | string[]); // level: 4`
|
||||
|
||||
Parameters:
|
||||
|
||||
- **topic** (string): Message topic
|
||||
- **messages** (string | string[]): Single message or array of messages which will be displayed one by line.
|
||||
- **topic** (string): Message topic
|
||||
- **messages** (string | string[]): Single message or array of messages which will be displayed one by line.
|
||||
|
||||
### Exit method
|
||||
|
||||
|
||||
@@ -31,4 +31,4 @@ const main = () => {
|
||||
|
||||
## Future evolutions
|
||||
|
||||
- Control feature flags at runtime.
|
||||
- Control feature flags at runtime.
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
|
||||
Suite provides several types of fiat rates:
|
||||
|
||||
- Current fiat rate: Used on Dashboard, next to the account balance, for converting a crypto amount in send form to a fiat currency, etc...
|
||||
- Weekly rates: In addition to current rate we also fetch 7 days old rate and based on the difference we either show green or red arrow next to an exchange rate (can be seen in assets table on Dashboard).
|
||||
- Historical fiat rate: Exchange rate at the time of facilitating a transaction. Used in list of transactions to calculate daily deltas and in transaction detail modal. ERC-20 tokens are not yet implemented.
|
||||
- Current fiat rate: Used on Dashboard, next to the account balance, for converting a crypto amount in send form to a fiat currency, etc...
|
||||
- Weekly rates: In addition to current rate we also fetch 7 days old rate and based on the difference we either show green or red arrow next to an exchange rate (can be seen in assets table on Dashboard).
|
||||
- Historical fiat rate: Exchange rate at the time of facilitating a transaction. Used in list of transactions to calculate daily deltas and in transaction detail modal. ERC-20 tokens are not yet implemented.
|
||||
|
||||
## Providers
|
||||
|
||||
- Blockbook: For all main networks (BTC, LTC, ETH + ERC-20 tokens, ...) except XRP, SOL + SOL tokens and ADA + ADA tokens
|
||||
- CoinGecko: Used for XRP, SOL + SOL tokens and ADA + ADA tokens and as a fallback for failed requests to blockbook.
|
||||
- Blockbook: For all main networks (BTC, LTC, ETH + ERC-20 tokens, ...) except XRP, SOL + SOL tokens and ADA + ADA tokens
|
||||
- CoinGecko: Used for XRP, SOL + SOL tokens and ADA + ADA tokens and as a fallback for failed requests to blockbook.
|
||||
|
||||
## First fetch
|
||||
|
||||
|
||||
@@ -2,15 +2,15 @@
|
||||
|
||||
This directory contains description of various Trezor Suite features.
|
||||
|
||||
- [coin-handler](./protocols/coin-handler.md)
|
||||
- [transactions export](./transactions/export.md)
|
||||
- [transactions search](./transactions//search.md)
|
||||
- [metadata labeling](./metadata.md)
|
||||
- [fiat rates](./fiat-rates.md)
|
||||
- [guide](./guide.md)
|
||||
- [localization](./localization.md)
|
||||
- [messaging system](./message-system.md)
|
||||
- [feature flags](./feature-flags.md)
|
||||
- [desktop logger](./desktop-logger.md)
|
||||
- [application log](./application-log.md)
|
||||
- [onboarding](./onboarding/onboarding.md)
|
||||
- [coin-handler](./protocols/coin-handler.md)
|
||||
- [transactions export](./transactions/export.md)
|
||||
- [transactions search](./transactions//search.md)
|
||||
- [metadata labeling](./metadata.md)
|
||||
- [fiat rates](./fiat-rates.md)
|
||||
- [guide](./guide.md)
|
||||
- [localization](./localization.md)
|
||||
- [messaging system](./message-system.md)
|
||||
- [feature flags](./feature-flags.md)
|
||||
- [desktop logger](./desktop-logger.md)
|
||||
- [application log](./application-log.md)
|
||||
- [onboarding](./onboarding/onboarding.md)
|
||||
|
||||
@@ -16,10 +16,10 @@ _Do not manually edit language json files in `suite-data/files/translations/` di
|
||||
|
||||
### Structure
|
||||
|
||||
- `id`: We don't have strict conventions for generating these IDs, although using a prefix `TR_`, or expanded variant `TR_<SCOPE>`, where scope is, for example, "ONBOARDING" is really handy. ID must be the same as the object's key.
|
||||
- `defaultMessage`: Used as a source string for translator. It's also a text that is shown in the app as a fallback till someone changes/improves it in Crowdin.
|
||||
- `description`: Optional. Useful for describing the context in which the message occurs, especially if it is not clear from a `defaultMessage` field.
|
||||
- `dynamic`: Optional. Must be set to true for programmatically constructed keys. Otherwise, the keys will be deleted by the list-duplicates script.
|
||||
- `id`: We don't have strict conventions for generating these IDs, although using a prefix `TR_`, or expanded variant `TR_<SCOPE>`, where scope is, for example, "ONBOARDING" is really handy. ID must be the same as the object's key.
|
||||
- `defaultMessage`: Used as a source string for translator. It's also a text that is shown in the app as a fallback till someone changes/improves it in Crowdin.
|
||||
- `description`: Optional. Useful for describing the context in which the message occurs, especially if it is not clear from a `defaultMessage` field.
|
||||
- `dynamic`: Optional. Must be set to true for programmatically constructed keys. Otherwise, the keys will be deleted by the list-duplicates script.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -14,12 +14,12 @@ Message system was implemented to allow sending emergency messages to Trezor Sui
|
||||
|
||||
There are multiple ways of displaying message to a user:
|
||||
|
||||
- banner
|
||||
- looks like a cookie bar above the page
|
||||
- modal
|
||||
- _TODO: missing implementation_
|
||||
- context
|
||||
- messages on specific places in app (e.g. settings page, banner in account page)
|
||||
- banner
|
||||
- looks like a cookie bar above the page
|
||||
- modal
|
||||
- _TODO: missing implementation_
|
||||
- context
|
||||
- messages on specific places in app (e.g. settings page, banner in account page)
|
||||
|
||||
### Feature
|
||||
|
||||
@@ -47,15 +47,15 @@ The configuration structure is specified in JSON file using JSON schema. The fil
|
||||
|
||||
We use JSON schema for 2 reasons:
|
||||
|
||||
- generating TypeScript types
|
||||
- validating configuration file
|
||||
- generating TypeScript types
|
||||
- validating configuration file
|
||||
|
||||
### Types
|
||||
|
||||
Types are generated from JSON-schema during the `build:libs` process or can be generated manually by `yarn workspace @suite-common/message-system msg-system-types`. A `messageSystem.ts` file is created in `suite-common/suite-types/src` folder.
|
||||
|
||||
- This file should never be changed manually.
|
||||
- This file is committed into the repository.
|
||||
- This file should never be changed manually.
|
||||
- This file is committed into the repository.
|
||||
|
||||
### Signing
|
||||
|
||||
@@ -65,20 +65,20 @@ To ensure the authenticity of a configuration file, JSON Web Signatures are used
|
||||
|
||||
#### Validation
|
||||
|
||||
- Validation of configuration file is performed in CI job in `validation` phase. It is used to detect possible structure and semantic errors.
|
||||
- It can be run locally by `yarn workspace @suite-common/message-system validate-config` script.
|
||||
- Validation of configuration file is performed in CI job in `validation` phase. It is used to detect possible structure and semantic errors.
|
||||
- It can be run locally by `yarn workspace @suite-common/message-system validate-config` script.
|
||||
|
||||
#### Signing
|
||||
|
||||
- Signing of the configuration file is performed:
|
||||
- in CI job in `prebuild` phase for distribution and
|
||||
- manually by `yarn message-system-sign-config` (or `yarn build:libs`) script for local development.
|
||||
- The results are saved into `suite-common/message-system/files` as two files:
|
||||
- `config.v1.jws` to be uploaded to `https://data.trezor.io/config/$environment/config.vX.jws`
|
||||
- `config.v1.ts` to be bundled with application
|
||||
- Development private key is baked into project structure together with public keys for both development and production.
|
||||
- Production private key is available only on `codesign` branch in CI (both Gitlab and Github).
|
||||
- Development private key can be found in `suite-common/message-system/scripts/sign-config.ts` file, the public keys can be found in `packages/suite-build/utils/jws.ts` file.
|
||||
- Signing of the configuration file is performed:
|
||||
- in CI job in `prebuild` phase for distribution and
|
||||
- manually by `yarn message-system-sign-config` (or `yarn build:libs`) script for local development.
|
||||
- The results are saved into `suite-common/message-system/files` as two files:
|
||||
- `config.v1.jws` to be uploaded to `https://data.trezor.io/config/$environment/config.vX.jws`
|
||||
- `config.v1.ts` to be bundled with application
|
||||
- Development private key is baked into project structure together with public keys for both development and production.
|
||||
- Production private key is available only on `codesign` branch in CI (both Gitlab and Github).
|
||||
- Development private key can be found in `suite-common/message-system/scripts/sign-config.ts` file, the public keys can be found in `packages/suite-build/utils/jws.ts` file.
|
||||
|
||||
### Versioning of implementation
|
||||
|
||||
|
||||
@@ -9,9 +9,9 @@ For non-technical introduction, see [Trezor Learn](https://trezor.io/learn/a/lab
|
||||
|
||||
Because Trezor Suite is not a typical application with a backend server, data must be stored elsewhere. Currently supported providers are:
|
||||
|
||||
- Dropbox
|
||||
- Google Drive
|
||||
- Local file system (desktop only)
|
||||
- Dropbox
|
||||
- Google Drive
|
||||
- Local file system (desktop only)
|
||||
|
||||
### Google Drive specifics
|
||||
|
||||
@@ -120,17 +120,17 @@ Account has metadata property which is an object of following shape:
|
||||
|
||||
## Where metadata is set and displayed
|
||||
|
||||
- Wallet label is set in the modal where wallet is selected.
|
||||
- Account label is set in account header.
|
||||
- Receiving address label is set in the receive address list.
|
||||
- Output label is set in send form address field, coin control or transaction history
|
||||
- Wallet label is set in the modal where wallet is selected.
|
||||
- Account label is set in account header.
|
||||
- Receiving address label is set in the receive address list.
|
||||
- Output label is set in send form address field, coin control or transaction history
|
||||
|
||||
Note that transaction history displays output label and address next to each other. If the output does not have a label, only the address is shown. If it does, the address is shown when the label is hovered. The address is displayed as follows:
|
||||
|
||||
- If a receive address has a label, its label is displayed.
|
||||
- If a receive address has a label and it belongs to the same account, it is replaced by "Sent to myself".
|
||||
- If an outgoing address belongs to another discovered wallet or account, it is replaced by the account label (and wallet label, if it is a different wallet).
|
||||
- If none of the above is true, plain address is displayed.
|
||||
- If a receive address has a label, its label is displayed.
|
||||
- If a receive address has a label and it belongs to the same account, it is replaced by "Sent to myself".
|
||||
- If an outgoing address belongs to another discovered wallet or account, it is replaced by the account label (and wallet label, if it is a different wallet).
|
||||
- If none of the above is true, plain address is displayed.
|
||||
|
||||
Wallet and account labels can also be displayed in other places in Suite as read-only, e.g. in send form when sending to an address belonging to another discovered wallet or account.
|
||||
|
||||
@@ -159,11 +159,11 @@ Controlled by `discoveryActions` and `metadataMiddleware`
|
||||
|
||||
## How to turn metadata off
|
||||
|
||||
- controls for common metadata related actions are located in general settings under the labeling section
|
||||
- there is a switch which:
|
||||
- controls for common metadata related actions are located in general settings under the labeling section
|
||||
- there is a switch which:
|
||||
1. sets metadata.enabled bool value
|
||||
1. if setting to false, it triggers removal of all metadata (including keys) from devices and accounts.
|
||||
1. if setting to false, disconnects metadata provider (Dropbox, Google Drive)
|
||||
- there is a button "disconnect provider" which:
|
||||
- there is a button "disconnect provider" which:
|
||||
1. triggers removal of all metadata values (**excluding** metadata keys) from devices and accounts. This way provider might be reconnected without reconnecting device
|
||||
1. disconnects metadata provider
|
||||
|
||||
@@ -4,11 +4,11 @@ _Incomplete developers guide to Onboarding in Trezor Suite_
|
||||
|
||||
There are few different ways to trigger the onboarding process:
|
||||
|
||||
- Initial run
|
||||
- Initial run is what we call a state when Suite is launched for the first time. It may also be triggered by clearing the app storage (flag is stored inside a reducer `suite.flags.initialRun` and saved to persistent storage). This is stored per device. If Suite detects initial run it'll automatically launch the onboarding.
|
||||
- Connecting an uninitialized device (without a seed)
|
||||
- Suite will automatically launch the onboarding
|
||||
- Wiping a device from Suite UI and proceeding with device setup
|
||||
- Initial run
|
||||
- Initial run is what we call a state when Suite is launched for the first time. It may also be triggered by clearing the app storage (flag is stored inside a reducer `suite.flags.initialRun` and saved to persistent storage). This is stored per device. If Suite detects initial run it'll automatically launch the onboarding.
|
||||
- Connecting an uninitialized device (without a seed)
|
||||
- Suite will automatically launch the onboarding
|
||||
- Wiping a device from Suite UI and proceeding with device setup
|
||||
|
||||
## Prerequisites
|
||||
|
||||
@@ -31,22 +31,22 @@ In onboarding, we clear this array after each step (handled in `buttonRequestMid
|
||||
|
||||
## Steps
|
||||
|
||||
- [Welcome](#Welcome)
|
||||
- [Data analytics](<###Data-analytics-(only-in-initial-run)>)
|
||||
- [Device security (genuinity) check](<###Device-security-(genuinity)-check>)
|
||||
- [Firmware](##Firmware)
|
||||
- Note about normal and bootloader mode
|
||||
- Firmware update or installation
|
||||
- Device with older firmware installed
|
||||
- Device with no firmware installed
|
||||
- State of currently shipped devices, intermediary firmware
|
||||
- [Generating seed](##Generating-seed)
|
||||
- [Generating new seed](###Generating-new-seed)
|
||||
- [Recovery from mnemonic](###Recovery-from-mnemonic)
|
||||
- [Backup seed](##Backup-seed)
|
||||
- [PIN Setup](##PIN-setup)
|
||||
- [Suite Settings](##Suite-Settings) (enabled coins, custom backends, TOR)
|
||||
- [Final step](##Final-step) (device label, homescreen)
|
||||
- [Welcome](#Welcome)
|
||||
- [Data analytics](<###Data-analytics-(only-in-initial-run)>)
|
||||
- [Device security (genuinity) check](<###Device-security-(genuinity)-check>)
|
||||
- [Firmware](##Firmware)
|
||||
- Note about normal and bootloader mode
|
||||
- Firmware update or installation
|
||||
- Device with older firmware installed
|
||||
- Device with no firmware installed
|
||||
- State of currently shipped devices, intermediary firmware
|
||||
- [Generating seed](##Generating-seed)
|
||||
- [Generating new seed](###Generating-new-seed)
|
||||
- [Recovery from mnemonic](###Recovery-from-mnemonic)
|
||||
- [Backup seed](##Backup-seed)
|
||||
- [PIN Setup](##PIN-setup)
|
||||
- [Suite Settings](##Suite-Settings) (enabled coins, custom backends, TOR)
|
||||
- [Final step](##Final-step) (device label, homescreen)
|
||||
|
||||
## Welcome
|
||||
|
||||
@@ -57,24 +57,24 @@ In this step we handle various invalid device modes and problems with transport
|
||||
|
||||
#### List of valid states
|
||||
|
||||
- Waiting for a device
|
||||
- We provide some troubleshooting tips and link to download Trezor Bridge as it may happen that user launched Suite for the first time without installing Trezor Bridge (only in Web environment)
|
||||

|
||||
- Device connected in normal mode
|
||||
- Part of happy path. After the device is connected we proceed to [Data analytics (only in initial run)](<###Data-analytics-(only-in-initial-run)>) or to [Device security (genuinity) check](<###Device-security-(genuinity)-check>)
|
||||
- Waiting for a device
|
||||
- We provide some troubleshooting tips and link to download Trezor Bridge as it may happen that user launched Suite for the first time without installing Trezor Bridge (only in Web environment)
|
||||

|
||||
- Device connected in normal mode
|
||||
- Part of happy path. After the device is connected we proceed to [Data analytics (only in initial run)](<###Data-analytics-(only-in-initial-run)>) or to [Device security (genuinity) check](<###Device-security-(genuinity)-check>)
|
||||
|
||||
#### List of invalid states
|
||||
|
||||
Invalid device states:
|
||||
|
||||
- Device connected, but in bootloader mode
|
||||
- Device connected, but unreadable
|
||||
- [Seedless device setup](https://trezor.io/learn/a/seedless-setup) is not supported in Suite (not to be confused with regular device without seed).
|
||||
- Device connected, but in bootloader mode
|
||||
- Device connected, but unreadable
|
||||
- [Seedless device setup](https://trezor.io/learn/a/seedless-setup) is not supported in Suite (not to be confused with regular device without seed).
|
||||
|
||||
Invalid transport states:
|
||||
|
||||
- No transport available (Trezor Bridge is not running)
|
||||
- We need to provide link to download Trezor Bridge (only in Web environment)
|
||||
- No transport available (Trezor Bridge is not running)
|
||||
- We need to provide link to download Trezor Bridge (only in Web environment)
|
||||
|
||||
### Data analytics (only in initial run)
|
||||
|
||||
@@ -94,8 +94,8 @@ This should be the most common case in onboarding.
|
||||
|
||||
Scenario:
|
||||
|
||||
- New device bought from trusted seller
|
||||
- User wiped the device (and firmware)
|
||||
- New device bought from trusted seller
|
||||
- User wiped the device (and firmware)
|
||||
|
||||
Security questions: Check hologram, verify seller, check package...
|
||||
|
||||
@@ -107,8 +107,8 @@ Secondary action: Contact support
|
||||
|
||||
Scenario:
|
||||
|
||||
- User has wiped the device (without erasing a firmware)
|
||||
- Device has been tampered with
|
||||
- User has wiped the device (without erasing a firmware)
|
||||
- Device has been tampered with
|
||||
|
||||
Security questions: Have the user used the device before?
|
||||
|
||||
@@ -120,8 +120,8 @@ Secondary action: Contact support
|
||||
|
||||
Scenario:
|
||||
|
||||
- User cleared app storage so the onboarding was started on initial run.
|
||||
- Device has been tampered with
|
||||
- User cleared app storage so the onboarding was started on initial run.
|
||||
- Device has been tampered with
|
||||
|
||||
Security questions: Have the user used the device before?
|
||||
|
||||
@@ -152,27 +152,27 @@ This is the reason why, in Welcome step, we force the user to connect a device i
|
||||
|
||||
Device could be in various states when the user enters this step.
|
||||
|
||||
- Firmware not installed
|
||||
- Fresh device (`device.firmware` set to `none`)
|
||||
- We don't need to prompt the user to switch to bootloader mode in this case.
|
||||
- Firmware already installed and:
|
||||
- Update available: It can be optional (skip button is present) or mandatory. Be aware that a device, while in bootloader mode, doesn’t report its fw version, only version of bootloader.
|
||||
- Latest firmware already installed (just wiped seed)
|
||||
- Firmware not installed
|
||||
- Fresh device (`device.firmware` set to `none`)
|
||||
- We don't need to prompt the user to switch to bootloader mode in this case.
|
||||
- Firmware already installed and:
|
||||
- Update available: It can be optional (skip button is present) or mandatory. Be aware that a device, while in bootloader mode, doesn’t report its fw version, only version of bootloader.
|
||||
- Latest firmware already installed (just wiped seed)
|
||||
|
||||
Possible error states:
|
||||
|
||||
- Generic firmware installation fail
|
||||
- User cancelled installation on a device
|
||||
- Device disconnected during the process
|
||||
- Some unexpected error
|
||||
- Device is connected in bootloader mode from the start
|
||||
- We will prompt the user to connect device in normal mode
|
||||
- This won't happen in Onboarding so much, but it is handled as this firmware flow is used in standalone firmware update modal which can be triggered from Suite
|
||||
- Device disconnected before firmware installation starts
|
||||
- Prompt the user to reconnect the device
|
||||
- Device disconnected after firmware installation starts
|
||||
- Installation will fail with generic error
|
||||
- This could happen when a cable is not connected properly and the device will disconnect during the process
|
||||
- Generic firmware installation fail
|
||||
- User cancelled installation on a device
|
||||
- Device disconnected during the process
|
||||
- Some unexpected error
|
||||
- Device is connected in bootloader mode from the start
|
||||
- We will prompt the user to connect device in normal mode
|
||||
- This won't happen in Onboarding so much, but it is handled as this firmware flow is used in standalone firmware update modal which can be triggered from Suite
|
||||
- Device disconnected before firmware installation starts
|
||||
- Prompt the user to reconnect the device
|
||||
- Device disconnected after firmware installation starts
|
||||
- Installation will fail with generic error
|
||||
- This could happen when a cable is not connected properly and the device will disconnect during the process
|
||||
|
||||
#### Device with older firmware installed
|
||||
|
||||
@@ -207,7 +207,7 @@ Support for the WebUSB came pretty late for T1B1 (bootloader [1.6.0](https://git
|
||||
|
||||
##### UI.FIRMWARE_PROGRESS
|
||||
|
||||
- Devices won’t dispatch any event after the user confirms the installation on a device. We only detect that the installation has started when we receive `UI.FIRMWARE_PROGRESS` which is triggered about 10 seconds too late on T1B1.
|
||||
- Devices won’t dispatch any event after the user confirms the installation on a device. We only detect that the installation has started when we receive `UI.FIRMWARE_PROGRESS` which is triggered about 10 seconds too late on T1B1.
|
||||
|
||||
##### Remembered wallet, multiple devices
|
||||
|
||||
@@ -224,8 +224,8 @@ User chooses between generating a new seed or seed recovery.
|
||||
|
||||
### Generating new seed
|
||||
|
||||
- Single seed
|
||||
- Shamir (not available on T1B1)
|
||||
- Single seed
|
||||
- Shamir (not available on T1B1)
|
||||
|
||||
At first it might seem that both options are doing exactly the same, real difference between these two will present itself in [Backup seed step](##Backup-seed)
|
||||
|
||||
|
||||
@@ -5,33 +5,33 @@ Transactions can be searched using an input field located above the transaction
|
||||
|
||||
You can search for the following information:
|
||||
|
||||
- Transaction ID (txid)
|
||||
- Input and Output addresses
|
||||
- Output labels
|
||||
- Address labels
|
||||
- Amounts
|
||||
- Dates
|
||||
- Transaction ID (txid)
|
||||
- Input and Output addresses
|
||||
- Output labels
|
||||
- Address labels
|
||||
- Amounts
|
||||
- Dates
|
||||
|
||||
All searches, apart from the two last ones (Amounts and Dates), are free text searches. No specific format is required, anything (txid, addresses, labels) matching the search will be returned.
|
||||
|
||||
Any numbers will be treated as amounts. For a given number, partially matching amounts will be shown. Operators, prefixed to the number, can be used for different results:
|
||||
|
||||
- `>` will return amounts greater than the value (i.e. `> 0.001` for all amounts greater than 0.001).
|
||||
- `<` will return amounts lower than the value (i.e. `< 0` for all negative amounts).
|
||||
- `=` will return amounts that strictly match the value (i.e. `= 0.01` will return all amounts that are exactly 0.01).
|
||||
- `!=` will return amounts that do not match the value (i.e. `!= 0.01` will return all amounts that are not 0.01).
|
||||
- `>` will return amounts greater than the value (i.e. `> 0.001` for all amounts greater than 0.001).
|
||||
- `<` will return amounts lower than the value (i.e. `< 0` for all negative amounts).
|
||||
- `=` will return amounts that strictly match the value (i.e. `= 0.01` will return all amounts that are exactly 0.01).
|
||||
- `!=` will return amounts that do not match the value (i.e. `!= 0.01` will return all amounts that are not 0.01).
|
||||
|
||||
Dates provided in the format `yyyy-mm-dd` will return transactions matching that date. Just like amount searches, prefixed operators can be used:
|
||||
|
||||
- `>` will return all transactions after the date, including the given date itself (i.e. `> 2020-12-14` will return all transactions after December 14th, 2020).
|
||||
- `<` will return all transactions before the date, including the given date itself (i.e. `< 2020-12-14` will return all transactions before December 14th, 2020).
|
||||
- `!=` will return all transactions that are not matching the date (i.e. `!= 2020-12-14` will return all transactions except the ones on December 14th, 2020).
|
||||
- `>` will return all transactions after the date, including the given date itself (i.e. `> 2020-12-14` will return all transactions after December 14th, 2020).
|
||||
- `<` will return all transactions before the date, including the given date itself (i.e. `< 2020-12-14` will return all transactions before December 14th, 2020).
|
||||
- `!=` will return all transactions that are not matching the date (i.e. `!= 2020-12-14` will return all transactions except the ones on December 14th, 2020).
|
||||
|
||||
Multiple fields can be searched at the same time using AND (`&`) and OR (`|`) operators. A few examples using these operators might be pretty self-explanatory:
|
||||
|
||||
- `> 2020-12-01 & < 2020-12-31` will return all transactions from December 2020.
|
||||
- `> 2020-12-01 & < 2020-12-31 & > 0` will return all incoming (positive) transactions from December 2020.
|
||||
- `> 0.01 | > 2020-12-01` will return all transactions with an amount higher than 0.01 OR that have happened since December 1st, 2020.
|
||||
- `> 2019-12-01 & < 2019-12-31 | > 2020-12-01 & < 2020-12-31` will return all transactions from December 2020 and 2019.
|
||||
- `> 2020-12-01 & < 2020-12-31` will return all transactions from December 2020.
|
||||
- `> 2020-12-01 & < 2020-12-31 & > 0` will return all incoming (positive) transactions from December 2020.
|
||||
- `> 0.01 | > 2020-12-01` will return all transactions with an amount higher than 0.01 OR that have happened since December 1st, 2020.
|
||||
- `> 2019-12-01 & < 2019-12-31 | > 2020-12-01 & < 2020-12-31` will return all transactions from December 2020 and 2019.
|
||||
|
||||
As you may see in the last example, and similarly to SQL, the AND (`&`) operator has precedence over the OR (`|`) operator.
|
||||
|
||||
@@ -4,9 +4,9 @@ The front-end build of Suite is handled by Webpack configurations inside the `su
|
||||
|
||||
The folder structure is as follows:
|
||||
|
||||
- configs: Contains the Webpack configuration files. `base.webpack.config.ts` serves as a common base for all other configurations. The other files in this folder are project specific such as `web.webpack.config.ts` or `desktop.webpack.config.ts` for `suite-web` and `suite-desktop` respectively.
|
||||
- plugins: Contains custom Webpack plugins.
|
||||
- utils: Contains various utils for the build scripts.
|
||||
- configs: Contains the Webpack configuration files. `base.webpack.config.ts` serves as a common base for all other configurations. The other files in this folder are project specific such as `web.webpack.config.ts` or `desktop.webpack.config.ts` for `suite-web` and `suite-desktop` respectively.
|
||||
- plugins: Contains custom Webpack plugins.
|
||||
- utils: Contains various utils for the build scripts.
|
||||
|
||||
These Webpack configurations are using TypeScript and use the `tsconfig.json` file at the root of the package. This is specified via the `TS_NODE_PROJECT` environment variable to avoid any issues regardless of the location where the command is run.
|
||||
|
||||
|
||||
@@ -9,26 +9,26 @@ Running the dev environment natively on Windows is not most straightforward, but
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Install Python either via the [Python for Windows installer](https://www.python.org/downloads/windows/), or from Microsoft Store
|
||||
- Install [latest Visual Studio Community](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community) with C++ build tools
|
||||
- **Make sure** to install the "Desktop development with C++" workload
|
||||
- _FYI: it's necessary so that yarn packages with native code can be built, `node-gyp` depends on it: [details](https://github.com/nodejs/node-gyp?tab=readme-ov-file#on-windows)_
|
||||
- Install [git](https://git-scm.com/downloads/win) using the installer and make sure to include git bash for Windows
|
||||
- Install nodeJS version as per [.nvmrc](https://github.com/trezor/trezor-suite/blob/develop/.nvmrc)
|
||||
- You may use nvm, but it's not officially supported on Windows; manual nodeJS installation will work
|
||||
- Enable [Yarn](https://yarnpkg.com/getting-started/install) through npm
|
||||
- Install [Git LFS](https://git-lfs.com/)
|
||||
- It is **imperative** that all further commands are run in bash for Windows, **not** in cmd or powershell!
|
||||
- Especially, do not run any `yarn` command in a shell other than bash for Windows. If you have done so, delete `node_modules` and start over.
|
||||
- Install Python either via the [Python for Windows installer](https://www.python.org/downloads/windows/), or from Microsoft Store
|
||||
- Install [latest Visual Studio Community](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community) with C++ build tools
|
||||
- **Make sure** to install the "Desktop development with C++" workload
|
||||
- _FYI: it's necessary so that yarn packages with native code can be built, `node-gyp` depends on it: [details](https://github.com/nodejs/node-gyp?tab=readme-ov-file#on-windows)_
|
||||
- Install [git](https://git-scm.com/downloads/win) using the installer and make sure to include git bash for Windows
|
||||
- Install nodeJS version as per [.nvmrc](https://github.com/trezor/trezor-suite/blob/develop/.nvmrc)
|
||||
- You may use nvm, but it's not officially supported on Windows; manual nodeJS installation will work
|
||||
- Enable [Yarn](https://yarnpkg.com/getting-started/install) through npm
|
||||
- Install [Git LFS](https://git-lfs.com/)
|
||||
- It is **imperative** that all further commands are run in bash for Windows, **not** in cmd or powershell!
|
||||
- Especially, do not run any `yarn` command in a shell other than bash for Windows. If you have done so, delete `node_modules` and start over.
|
||||
|
||||
### Setup
|
||||
|
||||
- Proceed with the [Getting Started instructions in README](https://github.com/trezor/trezor-suite/blob/develop/README.md#getting-started).
|
||||
- _(except possibly the `nvm` step, depending on your choice)_
|
||||
- Proceed with the [Getting Started instructions in README](https://github.com/trezor/trezor-suite/blob/develop/README.md#getting-started).
|
||||
- _(except possibly the `nvm` step, depending on your choice)_
|
||||
|
||||
### Tips
|
||||
|
||||
- Exclude the `trezor-suite` folder from Windows Defender, as it may slow down the build process considerably
|
||||
- Exclude the `trezor-suite` folder from Windows Defender, as it may slow down the build process considerably
|
||||
|
||||
## Windows Subsystem for Linux
|
||||
|
||||
@@ -38,14 +38,14 @@ Running the dev environment natively on Windows is not most straightforward, but
|
||||
|
||||
On Windows:
|
||||
|
||||
- [Install an Ubuntu WSL2](https://learn.microsoft.com/en-us/windows/wsl/install) _(must be v2, you may upgrade existing v1 WSL to v2)_
|
||||
- Install [USBIPD](https://learn.microsoft.com/en-us/windows/wsl/connect-usb)
|
||||
- [Install an Ubuntu WSL2](https://learn.microsoft.com/en-us/windows/wsl/install) _(must be v2, you may upgrade existing v1 WSL to v2)_
|
||||
- Install [USBIPD](https://learn.microsoft.com/en-us/windows/wsl/connect-usb)
|
||||
|
||||
In WSL:
|
||||
|
||||
- Run `sudo apt-get install build-essential`
|
||||
- Install these [Electron dependencies](https://www.electronjs.org/docs/latest/development/build-instructions-linux) for Linux
|
||||
- Install udev rules [as per the Trezor docs](https://trezor.io/learn/a/udev-rules)
|
||||
- Run `sudo apt-get install build-essential`
|
||||
- Install these [Electron dependencies](https://www.electronjs.org/docs/latest/development/build-instructions-linux) for Linux
|
||||
- Install udev rules [as per the Trezor docs](https://trezor.io/learn/a/udev-rules)
|
||||
|
||||
Then proceed with the [Getting Started instructions in README](https://github.com/trezor/trezor-suite/blob/develop/README.md#getting-started).
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
Development/Internal name consists of 4 keys
|
||||
<`product_class`> <`platform`> <`feature_class`> <`generation`>
|
||||
|
||||
- `product_class` - `'T'` for Trezor hardware wallet
|
||||
- `platform` - `'1'` for STM32F207, `'2'` for STM32F42x
|
||||
- `feature_class` - `'B'` for Buttons, `'T'` for Touch
|
||||
- `generation`
|
||||
- `product_class` - `'T'` for Trezor hardware wallet
|
||||
- `platform` - `'1'` for STM32F207, `'2'` for STM32F42x
|
||||
- `feature_class` - `'B'` for Buttons, `'T'` for Touch
|
||||
- `generation`
|
||||
|
||||
| Official name | Development name |
|
||||
| :------------: | :--------------: |
|
||||
@@ -15,4 +15,4 @@ Development/Internal name consists of 4 keys
|
||||
| Trezor Safe 3 | T2B1, T3B1 |
|
||||
| Trezor Safe 5 | T3T1 |
|
||||
|
||||
- Trezor Safe 3 exists in two variants, depending on its chip. It was upgraded post-release.
|
||||
- Trezor Safe 3 exists in two variants, depending on its chip. It was upgraded post-release.
|
||||
|
||||
@@ -7,9 +7,9 @@ written down.
|
||||
At any time, information stored here might be restructured or moved to a different
|
||||
location, so as to ensure that the documentation is well structured overall.
|
||||
|
||||
- [build](./build.md)
|
||||
- [development on Windows](./development-on-windows.md)
|
||||
- [device naming](./device-naming.md)
|
||||
- [review](./review.md)
|
||||
- [suite setup troubleshooting](./suite-setup-troubleshooting.md)
|
||||
- [videos](./videos.md)
|
||||
- [build](./build.md)
|
||||
- [development on Windows](./development-on-windows.md)
|
||||
- [device naming](./device-naming.md)
|
||||
- [review](./review.md)
|
||||
- [suite setup troubleshooting](./suite-setup-troubleshooting.md)
|
||||
- [videos](./videos.md)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
This is an automatically created PR.
|
||||
|
||||
- [ ] Sanity check t2b1 https://github.com/trezor/data/blob/master/firmware/t2b1/authenticity.json
|
||||
- [ ] Sanity check t3t1 https://github.com/trezor/data/blob/master/firmware/t3t1/authenticity.json
|
||||
- [ ] Sanity check t3b1 https://github.com/trezor/data/blob/master/firmware/t3b1/authenticity.json
|
||||
- [ ] Merge this PR into develop
|
||||
- [ ] Sanity check t2b1 https://github.com/trezor/data/blob/master/firmware/t2b1/authenticity.json
|
||||
- [ ] Sanity check t3t1 https://github.com/trezor/data/blob/master/firmware/t3t1/authenticity.json
|
||||
- [ ] Sanity check t3b1 https://github.com/trezor/data/blob/master/firmware/t3b1/authenticity.json
|
||||
- [ ] Merge this PR into develop
|
||||
|
||||
@@ -7,13 +7,13 @@ see https://webpack.js.org/blog/2020-10-10-webpack-5-release/#automatic-nodejs-p
|
||||
|
||||
List of essential libraries to produce build:
|
||||
|
||||
- `assert` (polyfill)
|
||||
- `crypto-browserify` (polyfill)
|
||||
- `html-webpack-plugin`
|
||||
- `process` (polyfill)
|
||||
- `stream-browserify` (polyfill)
|
||||
- `style-loader`
|
||||
- `terser-webpack-plugin`
|
||||
- `util` (polyfill)
|
||||
- `webpack-*`
|
||||
- `worker-loader`
|
||||
- `assert` (polyfill)
|
||||
- `crypto-browserify` (polyfill)
|
||||
- `html-webpack-plugin`
|
||||
- `process` (polyfill)
|
||||
- `stream-browserify` (polyfill)
|
||||
- `style-loader`
|
||||
- `terser-webpack-plugin`
|
||||
- `util` (polyfill)
|
||||
- `webpack-*`
|
||||
- `worker-loader`
|
||||
|
||||
@@ -24,6 +24,6 @@ TrezorConnect.on(DEVICE_EVENT, event => {
|
||||
Full list of events is unfortunately beyond the scope of this documentation
|
||||
but you may refer to the source code for:
|
||||
|
||||
- [device events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/device.ts)
|
||||
- [transport events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/transport.ts)
|
||||
- [blockchain events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/blockchain.ts)
|
||||
- [device events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/device.ts)
|
||||
- [transport events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/transport.ts)
|
||||
- [blockchain events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/blockchain.ts)
|
||||
|
||||
@@ -30,13 +30,13 @@ Trezor Connect leverages the ability of Trezor device to hold securely secret ke
|
||||
|
||||
There are the following basic scenarios:
|
||||
|
||||
- Sign in with Trezor only (use case A)
|
||||
- Sign in with Trezor only (use case A)
|
||||
|
||||
This is the most secure option: When the user signs in with Trezor for the first time, the site offers them to create new account with their site-specific Trezor identity.
|
||||
|
||||
There is no other way to log in and the site operator should decide carefully if they allow any other (usually much weaker) form of authentication and Trezor identity override.
|
||||
|
||||
- Classic sign in along with Trezor option (use case B)
|
||||
- Classic sign in along with Trezor option (use case B)
|
||||
|
||||
This case occurs when Trezor is only one of more ways of accessing the user account. Usually, theuser already has an account with username-password authentication and they pair Trezor with the account later.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Path
|
||||
|
||||
- `path` - `string | Array<number>` in [BIP44](https://github.com/trezor/trezor-firmware/blob/main/docs/misc/coins-bip44-paths.md#bip-44-derivation-paths) path scheme or `Array` of hardended numbers.
|
||||
- `path` - `string | Array<number>` in [BIP44](https://github.com/trezor/trezor-firmware/blob/main/docs/misc/coins-bip44-paths.md#bip-44-derivation-paths) path scheme or `Array` of hardended numbers.
|
||||
|
||||
## Examples
|
||||
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
|
||||
### - @trezor/connect API
|
||||
|
||||
- suite-web
|
||||
- suite-web
|
||||
|
||||
`@trezor/connect` is part of the JavaScript bundle as a regular module.
|
||||
|
||||
`@trezor/connect` imports from `@trezor/suite` are replaced to `@trezor/connect-web` see [webpack config](https://github.com/trezor/trezor-suite/blob/develop/packages/suite-build/configs/web.webpack.config.ts)
|
||||
|
||||
- suite-desktop
|
||||
- suite-desktop
|
||||
|
||||
`@trezor/connect` is installed as regular node_module and works in nodejs context (electron main process).
|
||||
|
||||
@@ -20,11 +20,11 @@
|
||||
|
||||
### - Firmware binaries
|
||||
|
||||
- suite-web
|
||||
- suite-web
|
||||
|
||||
newest firmware binaries are hosted at `[url]/build/static/connect/data/firmware` and they are downloaded using regular `fetch` API.
|
||||
|
||||
- suite-desktop
|
||||
- suite-desktop
|
||||
|
||||
firmware binaries are bundled as application resources in `bin` directory, full path depends on OS but it could be found on the as level as `app.asar` file, and they are downloaded using `fs.readFile` API. see @trezor/connect/src/utils/assets
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Suite docs
|
||||
|
||||
- [Send form](./send.md)
|
||||
- [Send form](./send.md)
|
||||
|
||||
@@ -2,103 +2,103 @@
|
||||
|
||||
### Outputs (BTC coins only):
|
||||
|
||||
- regular (transfer) output is set by default
|
||||
- add OP_RETURN: if default output has any values then OP_RETURN is added as a second output otherwise will replace the first input
|
||||
- remove OP_RETURN: if there is only 1 output (OP_RETURN) then switch to regular otherwise just remove it
|
||||
- add recipient
|
||||
- remove recipient
|
||||
- Clear all
|
||||
- regular (transfer) output is set by default
|
||||
- add OP_RETURN: if default output has any values then OP_RETURN is added as a second output otherwise will replace the first input
|
||||
- remove OP_RETURN: if there is only 1 output (OP_RETURN) then switch to regular otherwise just remove it
|
||||
- add recipient
|
||||
- remove recipient
|
||||
- Clear all
|
||||
|
||||
---
|
||||
|
||||
### Address:
|
||||
|
||||
- on address input change
|
||||
- on QR scan
|
||||
- on Import (to be done)
|
||||
- on address input change
|
||||
- on QR scan
|
||||
- on Import (to be done)
|
||||
|
||||
### Address errors:
|
||||
|
||||
- RECIPIENT_IS_NOT_SET (empty field)
|
||||
- RECIPIENT_IS_NOT_VALID (not valid address)
|
||||
- RECIPIENT_CANNOT_SEND_TO_MYSELF (XRP only: cannot send to myself)
|
||||
- RECIPIENT_IS_NOT_SET (empty field)
|
||||
- RECIPIENT_IS_NOT_VALID (not valid address)
|
||||
- RECIPIENT_CANNOT_SEND_TO_MYSELF (XRP only: cannot send to myself)
|
||||
|
||||
---
|
||||
|
||||
### Amount:
|
||||
|
||||
- on amount input change
|
||||
- on Fiat input change
|
||||
- on QR scan (optional if defined in QR code)
|
||||
- on Import (to be done, optional if defined in file)
|
||||
- IF sendmax is ON
|
||||
- IF sendmax is set AND has second(or multiple) output(s): on second output Amount change
|
||||
- IF sendmax is set: on every fee level change
|
||||
- IF sendmax is set: on custom fee change
|
||||
- IF sendmax is set: on BTC opreturn data changed
|
||||
- IF sendmax is set: on ETH data changed
|
||||
- (ETH only) IF sendmax is set AND switching between ETH (base currency) and TOKEN
|
||||
- on amount input change
|
||||
- on Fiat input change
|
||||
- on QR scan (optional if defined in QR code)
|
||||
- on Import (to be done, optional if defined in file)
|
||||
- IF sendmax is ON
|
||||
- IF sendmax is set AND has second(or multiple) output(s): on second output Amount change
|
||||
- IF sendmax is set: on every fee level change
|
||||
- IF sendmax is set: on custom fee change
|
||||
- IF sendmax is set: on BTC opreturn data changed
|
||||
- IF sendmax is set: on ETH data changed
|
||||
- (ETH only) IF sendmax is set AND switching between ETH (base currency) and TOKEN
|
||||
|
||||
### Amount errors:
|
||||
|
||||
- AMOUNT_IS_NOT_SET (empty field)
|
||||
- AMOUNT_IS_TOO_LOW (lower/equal than zero + ETH exception: 0 amount is possible ONLY for tx with DATA)
|
||||
- AMOUNT_IS_BELOW_DUST lower than network dust limit
|
||||
- AMOUNT_IS_NOT_ENOUGH (not enough funds on account)
|
||||
- AMOUNT_NOT_ENOUGH_CURRENCY_FEE (ETH only: trying to send TOKEN without enough ETH to cover TX fee)
|
||||
- AMOUNT_IS_MORE_THAN_RESERVE (XRP only: trying to spend the reserve)
|
||||
- AMOUNT_IS_LESS_THAN_RESERVE (XRP only: trying to send less XRP than required reserve to the empty account)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (amount with invalid decimal places)
|
||||
- AMOUNT_IS_NOT_INTEGER (ERC20 only: token doesn't accept decimal places)
|
||||
- REMAINING_BALANCE_LESS_THAN_RENT (solana only: account has to keep a minimal balance equal to rent)
|
||||
- AMOUNT_IS_NOT_SET (empty field)
|
||||
- AMOUNT_IS_TOO_LOW (lower/equal than zero + ETH exception: 0 amount is possible ONLY for tx with DATA)
|
||||
- AMOUNT_IS_BELOW_DUST lower than network dust limit
|
||||
- AMOUNT_IS_NOT_ENOUGH (not enough funds on account)
|
||||
- AMOUNT_NOT_ENOUGH_CURRENCY_FEE (ETH only: trying to send TOKEN without enough ETH to cover TX fee)
|
||||
- AMOUNT_IS_MORE_THAN_RESERVE (XRP only: trying to spend the reserve)
|
||||
- AMOUNT_IS_LESS_THAN_RESERVE (XRP only: trying to send less XRP than required reserve to the empty account)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (amount with invalid decimal places)
|
||||
- AMOUNT_IS_NOT_INTEGER (ERC20 only: token doesn't accept decimal places)
|
||||
- REMAINING_BALANCE_LESS_THAN_RENT (solana only: account has to keep a minimal balance equal to rent)
|
||||
|
||||
---
|
||||
|
||||
### Fiat:
|
||||
|
||||
- on fiat input change
|
||||
- on Amount input change (any reason listed above)
|
||||
- on Currency select change (recalculation)
|
||||
- on Import (to be done, optional if defined in file AND amount is not defined in file)
|
||||
- on fiat input change
|
||||
- on Amount input change (any reason listed above)
|
||||
- on Currency select change (recalculation)
|
||||
- on Import (to be done, optional if defined in file AND amount is not defined in file)
|
||||
|
||||
### Fiat errors:
|
||||
|
||||
- AMOUNT_IS_NOT_SET (empty field)
|
||||
- AMOUNT_IS_TOO_LOW (lower than 0, 0 is still possible if recalculated amount is lower than 1 cent)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (max. 2 decimals allowed)
|
||||
- AMOUNT_IS_NOT_SET (empty field)
|
||||
- AMOUNT_IS_TOO_LOW (lower than 0, 0 is still possible if recalculated amount is lower than 1 cent)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (max. 2 decimals allowed)
|
||||
|
||||
---
|
||||
|
||||
### Fee:
|
||||
|
||||
- on fee level click
|
||||
- on custom fee level input change
|
||||
- on BTC OP_RETURN data changed
|
||||
- on ETH data changed
|
||||
- switching from "regular" fee level to "custom" should set value from last selected fee
|
||||
- IF fee level wasn't changed yet (normal) and there is not enough coins to satisfy normal level should be automatically switched to first possible (lower) level, either LOW or CUSTOM...
|
||||
- last used fee level will be remembered globally for this coin
|
||||
- estimated time is only available for BTC-like coins
|
||||
- on fee level click
|
||||
- on custom fee level input change
|
||||
- on BTC OP_RETURN data changed
|
||||
- on ETH data changed
|
||||
- switching from "regular" fee level to "custom" should set value from last selected fee
|
||||
- IF fee level wasn't changed yet (normal) and there is not enough coins to satisfy normal level should be automatically switched to first possible (lower) level, either LOW or CUSTOM...
|
||||
- last used fee level will be remembered globally for this coin
|
||||
- estimated time is only available for BTC-like coins
|
||||
|
||||
### Fee errors (custom level):
|
||||
|
||||
- CUSTOM_FEE_IS_NOT_SET (empty field)
|
||||
- CUSTOM_FEE_IS_NOT_INTEGER (BTC and XRP: decimals not allowed)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (ETH only: decimals are allowed but with max. 9 decimals - GWEI is not satoshi)
|
||||
- CUSTOM_FEE_NOT_IN_RANGE (must be between minFee and maxFee specified in coins.json, in @trezor/connect)
|
||||
- CUSTOM_FEE_IS_NOT_SET (empty field)
|
||||
- CUSTOM_FEE_IS_NOT_INTEGER (BTC and XRP: decimals not allowed)
|
||||
- AMOUNT_IS_NOT_IN_RANGE_DECIMALS (ETH only: decimals are allowed but with max. 9 decimals - GWEI is not satoshi)
|
||||
- CUSTOM_FEE_NOT_IN_RANGE (must be between minFee and maxFee specified in coins.json, in @trezor/connect)
|
||||
|
||||
---
|
||||
|
||||
### (BTC only) OP_RETURN output:
|
||||
|
||||
- HEX field, (on the right) should be changed on every ASCII field (on the left) change
|
||||
- ASCII field should be changed ONLY if HEX is valid, otherwise should be empty
|
||||
- HEX field, (on the right) should be changed on every ASCII field (on the left) change
|
||||
- ASCII field should be changed ONLY if HEX is valid, otherwise should be empty
|
||||
|
||||
### OP_RETURN output errors:
|
||||
|
||||
- DATA_NOT_SET (empty fields)
|
||||
- DATA_NOT_VALID_HEX (not valid hexadecimal)
|
||||
- DATA_HEX_TOO_BIG (data size limited to 80 bytes)
|
||||
- DATA_NOT_SET (empty fields)
|
||||
- DATA_NOT_VALID_HEX (not valid hexadecimal)
|
||||
- DATA_HEX_TOO_BIG (data size limited to 80 bytes)
|
||||
|
||||
---
|
||||
|
||||
@@ -108,18 +108,18 @@ Additional field in send form, activated by "Add locktime" option.
|
||||
|
||||
If the number is greater than 500000000 then it is a timestamp otherwise is block number
|
||||
|
||||
- on "add locktime" input change
|
||||
- on RBF option enable
|
||||
- should disable RBF option if set
|
||||
- should disable BROADCAST option if set
|
||||
- on "add locktime" input change
|
||||
- on RBF option enable
|
||||
- should disable RBF option if set
|
||||
- should disable BROADCAST option if set
|
||||
|
||||
### Locktime errors:
|
||||
|
||||
- LOCKTIME_IS_NOT_SET
|
||||
- LOCKTIME_IS_NOT_NUMBER
|
||||
- LOCKTIME_IS_TOO_LOW (lower/equal zero)
|
||||
- LOCKTIME_IS_NOT_INTEGER (decimals not allowed)
|
||||
- LOCKTIME_IS_TOO_BIG (locktime larger than max unix timestamp \* 2 = 4294967294)
|
||||
- LOCKTIME_IS_NOT_SET
|
||||
- LOCKTIME_IS_NOT_NUMBER
|
||||
- LOCKTIME_IS_TOO_LOW (lower/equal zero)
|
||||
- LOCKTIME_IS_NOT_INTEGER (decimals not allowed)
|
||||
- LOCKTIME_IS_TOO_BIG (locktime larger than max unix timestamp \* 2 = 4294967294)
|
||||
|
||||
---
|
||||
|
||||
@@ -133,13 +133,13 @@ Additional checkbox in send form, since this could be only true/false there is n
|
||||
|
||||
Additional field in send form, activated by "Add data" option. Same behavior as BTC OP_RETURN output.
|
||||
|
||||
- HEX field, (on the right) should be changed on every ASCII field (on the left) change
|
||||
- ASCII field should be changed ONLY if HEX is valid, otherwise should be empty
|
||||
- HEX field, (on the right) should be changed on every ASCII field (on the left) change
|
||||
- ASCII field should be changed ONLY if HEX is valid, otherwise should be empty
|
||||
|
||||
### Data errors:
|
||||
|
||||
- DATA_NOT_VALID_HEX
|
||||
- DATA_HEX_TOO_BIG (data size limit: 8192 bytes for protobuf single message encoding)
|
||||
- DATA_NOT_VALID_HEX
|
||||
- DATA_HEX_TOO_BIG (data size limit: 8192 bytes for protobuf single message encoding)
|
||||
|
||||
---
|
||||
|
||||
@@ -150,46 +150,46 @@ It doesn't have impact on transaction itself (fee, amount etc)
|
||||
|
||||
### Destination tag errors:
|
||||
|
||||
- DESTINATION_TAG_NOT_SET
|
||||
- DESTINATION_TAG_IS_NOT_NUMBER
|
||||
- DESTINATION_TAG_IS_NOT_VALID (decimals not allowed, in range: 0 - 4294967295)
|
||||
- DESTINATION_TAG_NOT_SET
|
||||
- DESTINATION_TAG_IS_NOT_NUMBER
|
||||
- DESTINATION_TAG_IS_NOT_VALID (decimals not allowed, in range: 0 - 4294967295)
|
||||
|
||||
---
|
||||
|
||||
### Broadcast:
|
||||
|
||||
- toggle "Sign transaction" / "Send transaction" button
|
||||
- "Review transaction" modal with different options at the last step (copy or download signed tx)
|
||||
- toggle "Sign transaction" / "Send transaction" button
|
||||
- "Review transaction" modal with different options at the last step (copy or download signed tx)
|
||||
|
||||
---
|
||||
|
||||
### Drafts:
|
||||
|
||||
- draft should be saved on change of any field (if this field is valid)
|
||||
- draft should be loaded after changing url (going back to send form from any other page)
|
||||
- draft should be saved on change of any field (if this field is valid)
|
||||
- draft should be loaded after changing url (going back to send form from any other page)
|
||||
|
||||
---
|
||||
|
||||
### Send RAW:
|
||||
|
||||
- Broadcast signed tx to the network regardless of tx OWNER, this tx doesn't have to be signed by currently selected account, only selected NETWORK matters
|
||||
- Broadcast signed tx to the network regardless of tx OWNER, this tx doesn't have to be signed by currently selected account, only selected NETWORK matters
|
||||
|
||||
---
|
||||
|
||||
### Precomposed transaction ("Total Sent" field)
|
||||
|
||||
- on load draft
|
||||
- on address change
|
||||
- on amount change
|
||||
- on fee change
|
||||
- on additional option change
|
||||
- on load draft
|
||||
- on address change
|
||||
- on amount change
|
||||
- on fee change
|
||||
- on additional option change
|
||||
|
||||
---
|
||||
|
||||
### Review modal
|
||||
|
||||
- can be cancelled at any time during signing
|
||||
- mirroring data displayed on the device
|
||||
- if there is BTC OP_RETURN data or ETH DATA present and those data are larger than 10 chars additional "expand button" will appear next to it
|
||||
- (BTC only) Expandable "Transaction detail" section
|
||||
- Regarding to BROADCAST option "Send transaction" or "Copy/download transaction" buttons are available on the last step
|
||||
- can be cancelled at any time during signing
|
||||
- mirroring data displayed on the device
|
||||
- if there is BTC OP_RETURN data or ETH DATA present and those data are larger than 10 chars additional "expand button" will appear next to it
|
||||
- (BTC only) Expandable "Transaction detail" section
|
||||
- Regarding to BROADCAST option "Send transaction" or "Copy/download transaction" buttons are available on the last step
|
||||
|
||||
@@ -32,16 +32,16 @@ In order to work with properly validated state `useSendFormCompose.composeReques
|
||||
|
||||
Every `networkType` has own `sendFormActions.composeTransaction` method
|
||||
|
||||
- `sendFormActionsBitcoin` does calculation using `@trezor/connect`
|
||||
- `sendFormActionsEthereum` does calculation locally, custom `feePerUnit` is calculated if `ethereumData` is used
|
||||
- `sendFormActionsRipple` does calculation locally, additional `account.reserve` check on recipient address
|
||||
- `sendFormActionsBitcoin` does calculation using `@trezor/connect`
|
||||
- `sendFormActionsEthereum` does calculation locally, custom `feePerUnit` is calculated if `ethereumData` is used
|
||||
- `sendFormActionsRipple` does calculation locally, additional `account.reserve` check on recipient address
|
||||
|
||||

|
||||
|
||||
- `PrecomposedLevel` are calculated for all possible `FeeLevel` at once.
|
||||
- if `FeeLevel` wasn't changed by the user and current `PrecomposedLevel` has error then tries to switch to a lower/custom possible `FeeLevel`
|
||||
- if `PrecomposedLevel` has error set this error in `react-hook-form`
|
||||
- if `PrecomposedLevel` has `set-max` set calculated amount in `react-hook-form`
|
||||
- `PrecomposedLevel` are calculated for all possible `FeeLevel` at once.
|
||||
- if `FeeLevel` wasn't changed by the user and current `PrecomposedLevel` has error then tries to switch to a lower/custom possible `FeeLevel`
|
||||
- if `PrecomposedLevel` has error set this error in `react-hook-form`
|
||||
- if `PrecomposedLevel` has `set-max` set calculated amount in `react-hook-form`
|
||||
|
||||
# Transaction signing process
|
||||
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
|
||||
This is an automatically created PR.
|
||||
|
||||
- [x] Bump @trezor/connect and @trezor/connect-web version using `yarn workspace @trezor/connect version:<beta|patch|minor|major>`
|
||||
- [x] Bump all connect dependencies that need to be released into npm. If unsure run `yarn tsx check-npm-dependencies.ts <package_name> <semver>`. Please note that this script will report unreleased dependencies even for changes that do not affect runtime (READMEs etc.)
|
||||
- [ ] Make sure [CHANGELOG](https://github.com/trezor/trezor-suite/blob/npm-release/connect/packages/connect/CHANGELOG.md) file has been updated @mroz22
|
||||
- [ ] Changelogs checked @Hannsek
|
||||
- [ ] Confirm that this release does not introduce any breaking changes @mroz22
|
||||
- [ ] Contact 3rd parties if needed @Hannsek
|
||||
- [ ] Merge this PR into develop
|
||||
- [x] Bump @trezor/connect and @trezor/connect-web version using `yarn workspace @trezor/connect version:<beta|patch|minor|major>`
|
||||
- [x] Bump all connect dependencies that need to be released into npm. If unsure run `yarn tsx check-npm-dependencies.ts <package_name> <semver>`. Please note that this script will report unreleased dependencies even for changes that do not affect runtime (READMEs etc.)
|
||||
- [ ] Make sure [CHANGELOG](https://github.com/trezor/trezor-suite/blob/npm-release/connect/packages/connect/CHANGELOG.md) file has been updated @mroz22
|
||||
- [ ] Changelogs checked @Hannsek
|
||||
- [ ] Confirm that this release does not introduce any breaking changes @mroz22
|
||||
- [ ] Contact 3rd parties if needed @Hannsek
|
||||
- [ ] Merge this PR into develop
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
This chapter contains information about the release process.
|
||||
|
||||
- [adding new firmwares](./adding-new-firmwares.md)
|
||||
- [desktop updates](./desktop_updates.md)
|
||||
- [environments](./environments.md)
|
||||
- [signing binaries windows](./signing-binaries-win.md)
|
||||
- [versioning](./versioning.md)
|
||||
- [adding new firmwares](./adding-new-firmwares.md)
|
||||
- [desktop updates](./desktop_updates.md)
|
||||
- [environments](./environments.md)
|
||||
- [signing binaries windows](./signing-binaries-win.md)
|
||||
- [versioning](./versioning.md)
|
||||
|
||||
@@ -16,15 +16,15 @@ The version of the Suite App itself is tracked in the `suiteVersion` field of th
|
||||
|
||||
We are using so-called [calendar versioning](https://calver.org/) in the format `YY.MM.PATCH` where
|
||||
|
||||
- `YY` stands for the current year.
|
||||
- `MM` stands for the current month.
|
||||
- `PATCH` is increased on every release in the given month.
|
||||
- `YY` stands for the current year.
|
||||
- `MM` stands for the current month.
|
||||
- `PATCH` is increased on every release in the given month.
|
||||
|
||||
For example:
|
||||
|
||||
- `20.10.1` first release in Oct 2020
|
||||
- `20.10.3` third release in Oct 2020
|
||||
- `19.12.1` first release in Dec 2019
|
||||
- `20.10.1` first release in Oct 2020
|
||||
- `20.10.3` third release in Oct 2020
|
||||
- `19.12.1` first release in Dec 2019
|
||||
|
||||
### Beta versions
|
||||
|
||||
@@ -38,11 +38,11 @@ Beta also has +1 `MM` version when compared to stable indicating this is upcomin
|
||||
|
||||
For example:
|
||||
|
||||
- `20.10.1` first release on Oct 15th to stable
|
||||
- `20.10.2` second release on Oct 22nd to stable
|
||||
- `20.11.0` release on Oct 29th 2020 to beta
|
||||
- `20.11.0` another release on Nov 5th to beta
|
||||
- `20.11.1` public release on Nov 14th to stable
|
||||
- `20.10.1` first release on Oct 15th to stable
|
||||
- `20.10.2` second release on Oct 22nd to stable
|
||||
- `20.11.0` release on Oct 29th 2020 to beta
|
||||
- `20.11.0` another release on Nov 5th to beta
|
||||
- `20.11.1` public release on Nov 14th to stable
|
||||
|
||||
### Development versions
|
||||
|
||||
|
||||
@@ -8,10 +8,10 @@ We are using Playwright in combination with Currents.dev to run and orchestrate
|
||||
|
||||
### Features
|
||||
|
||||
- Currents reporting - Test reports and very useful statistics are available in https://app.currents.dev/
|
||||
- Currents orchestration - Tests are running in parallel groups and the tests are dynamically distributed to these groups to optimize execution time.
|
||||
- Configurable fail fast - If a given number of tests fails, all the parallel groups are terminated and the rest of the testing is skipped. This is used to save resources and time in case of heavily broken build.
|
||||
- Test retries - The test runner is configured to perform up to two retries (i.e. maximum of 3 runs) to deal with test flakiness
|
||||
- Currents reporting - Test reports and very useful statistics are available in https://app.currents.dev/
|
||||
- Currents orchestration - Tests are running in parallel groups and the tests are dynamically distributed to these groups to optimize execution time.
|
||||
- Configurable fail fast - If a given number of tests fails, all the parallel groups are terminated and the rest of the testing is skipped. This is used to save resources and time in case of heavily broken build.
|
||||
- Test retries - The test runner is configured to perform up to two retries (i.e. maximum of 3 runs) to deal with test flakiness
|
||||
|
||||
### Note manual workflow reruns and orchestration
|
||||
|
||||
@@ -33,8 +33,8 @@ This is the most commonly triggered pipeline, because it runs as part of each PR
|
||||
|
||||
### Triggers
|
||||
|
||||
- Open PR
|
||||
- Push to PR
|
||||
- Open PR
|
||||
- Push to PR
|
||||
|
||||
### Flow
|
||||
|
||||
@@ -42,19 +42,19 @@ This CI pipeline decides whether to build app and run E2E tests following this l
|
||||
|
||||
#### 🔹 Is First Attempt?
|
||||
|
||||
- **Yes** (e.g. initial run after a push):
|
||||
- **Yes** (e.g. initial run after a push):
|
||||
|
||||
- **Check Previous Test Runs**:
|
||||
- ✅ **If a previous successful run exists**:
|
||||
- 🛑 **Skip Build**
|
||||
- 🛑 **Skip Tests**
|
||||
- ❌ **If no successful run exists (failed or incomplete)**:
|
||||
- 🔄 **Run Build**
|
||||
- ✅ **Run All Tests**
|
||||
- **Check Previous Test Runs**:
|
||||
- ✅ **If a previous successful run exists**:
|
||||
- 🛑 **Skip Build**
|
||||
- 🛑 **Skip Tests**
|
||||
- ❌ **If no successful run exists (failed or incomplete)**:
|
||||
- 🔄 **Run Build**
|
||||
- ✅ **Run All Tests**
|
||||
|
||||
- **No** (e.g. a manual rerun of the same workflow run):
|
||||
- 🔄 **Run Build**
|
||||
- ✅ **Run All Tests**
|
||||
- **No** (e.g. a manual rerun of the same workflow run):
|
||||
- 🔄 **Run Build**
|
||||
- ✅ **Run All Tests**
|
||||
|
||||
#### Flowchart representation:
|
||||
|
||||
@@ -68,11 +68,11 @@ These pipelines are running nightly scheduled tests on develop branch. The FW ca
|
||||
|
||||
### Triggers
|
||||
|
||||
- Cron
|
||||
- Cron
|
||||
|
||||
### Test runner configuration
|
||||
|
||||
- Fail fast disabled
|
||||
- Fail fast disabled
|
||||
|
||||
### Flow
|
||||
|
||||
@@ -86,11 +86,11 @@ This pipeline serves as a release candidate verification.
|
||||
|
||||
### Triggers
|
||||
|
||||
- Push to release branch
|
||||
- Push to release branch
|
||||
|
||||
### Test runner configuration
|
||||
|
||||
- Fail fast disabled
|
||||
- Fail fast disabled
|
||||
|
||||
### Flow
|
||||
|
||||
|
||||
@@ -39,13 +39,13 @@ Test annotations are defined in `testAnnotations.ts`, all of them are optional a
|
||||
|
||||
The GitHub project is configured with fields that correspond to test metadata:
|
||||
|
||||
- **Status** - Test outcome (Todo, In Progress, Done PASS, Done FAIL, etc.)
|
||||
- **Stream** - Team assignment
|
||||
- **Test Run** - Whether the test is manual or automated (and which platform)
|
||||
- **Priority** - Test importance
|
||||
- **Device Model** - Target device for testing
|
||||
- **Comment** - Additional notes
|
||||
- **Release Build** - The release build identifier (branch-commit format)
|
||||
- **Status** - Test outcome (Todo, In Progress, Done PASS, Done FAIL, etc.)
|
||||
- **Stream** - Team assignment
|
||||
- **Test Run** - Whether the test is manual or automated (and which platform)
|
||||
- **Priority** - Test importance
|
||||
- **Device Model** - Target device for testing
|
||||
- **Comment** - Additional notes
|
||||
- **Release Build** - The release build identifier (branch-commit format)
|
||||
|
||||
## How to Use
|
||||
|
||||
@@ -80,9 +80,9 @@ test.describe('Test suite name', { tag: ['@group=manual'] }, () => {
|
||||
|
||||
The reporter is configured with environment variables:
|
||||
|
||||
- `GITHUB_TOKEN` - Required for API access
|
||||
- `RELEASE_BUILD` - Used to identify the specific release build (format: branch-commit)
|
||||
- `VERBOSE` - Set to control logging detail
|
||||
- `GITHUB_TOKEN` - Required for API access
|
||||
- `RELEASE_BUILD` - Used to identify the specific release build (format: branch-commit)
|
||||
- `VERBOSE` - Set to control logging detail
|
||||
|
||||
### Project Creation
|
||||
|
||||
@@ -98,9 +98,9 @@ This script creates a central "Trezor Suite release testing" project that will c
|
||||
|
||||
The reporter can be run from a local environment for troubleshooting and development purposes:
|
||||
|
||||
- `yarn test:e2e:web --reporter=./e2e/support/reporters/gitHubReporter.ts`
|
||||
- `yarn test:e2e:desktop --reporter=./e2e/support/reporters/gitHubReporter.ts`
|
||||
- `yarn test:e2e:manual`
|
||||
- `yarn test:e2e:web --reporter=./e2e/support/reporters/gitHubReporter.ts`
|
||||
- `yarn test:e2e:desktop --reporter=./e2e/support/reporters/gitHubReporter.ts`
|
||||
- `yarn test:e2e:manual`
|
||||
|
||||
## Implementation Notes
|
||||
|
||||
@@ -138,8 +138,8 @@ Tests from different release builds are added to the same GitHub project but are
|
||||
|
||||
The reporter is integrated into release branch CI workflows:
|
||||
|
||||
- `test-suite-web-e2e-release.yml` for Suite Web tests
|
||||
- `test-suite-desktop-e2e-release.yml` for Suite Desktop tests
|
||||
- `test-suite-manual-release.yml` for manual tests
|
||||
- `test-suite-web-e2e-release.yml` for Suite Web tests
|
||||
- `test-suite-desktop-e2e-release.yml` for Suite Desktop tests
|
||||
- `test-suite-manual-release.yml` for manual tests
|
||||
|
||||
Each workflow passes the `RELEASE_BUILD` and `GITHUB_TOKEN` environment variables to enable test reporting.
|
||||
|
||||
@@ -8,10 +8,10 @@ _Note: All paths below are relative to the root of trezor-suite repository, if n
|
||||
|
||||
### Common
|
||||
|
||||
- [Docker](https://docs.docker.com/desktop/mac/install/)
|
||||
- macOS only: [XQuartz](https://www.xquartz.org/) (to share your screen with Docker)
|
||||
- [Trezor user env](https://github.com/trezor/trezor-user-env)
|
||||
- No other instance of `Suite` or `trezord` service is running
|
||||
- [Docker](https://docs.docker.com/desktop/mac/install/)
|
||||
- macOS only: [XQuartz](https://www.xquartz.org/) (to share your screen with Docker)
|
||||
- [Trezor user env](https://github.com/trezor/trezor-user-env)
|
||||
- No other instance of `Suite` or `trezord` service is running
|
||||
|
||||
**Full steps:**<br />
|
||||
_(in case of Linux with X11 support, skip to step 6.)_
|
||||
@@ -83,22 +83,22 @@ Each test should be assigned a tag
|
||||
|
||||
At the moment, there are the following tags:
|
||||
|
||||
- @group=[string]
|
||||
- @desktopOnly
|
||||
- @webOnly
|
||||
- @snapshot
|
||||
- @group=[string]
|
||||
- @desktopOnly
|
||||
- @webOnly
|
||||
- @snapshot
|
||||
|
||||
#### @group
|
||||
|
||||
Assigning a @group allows filtering based on logical test category
|
||||
|
||||
- `@group=wallet`
|
||||
- `@group=suite`
|
||||
- `@group=device-management`
|
||||
- `@group=other`
|
||||
- `@group=metadata`
|
||||
- `@group=passphrase`
|
||||
- `@group=settings`
|
||||
- `@group=wallet`
|
||||
- `@group=suite`
|
||||
- `@group=device-management`
|
||||
- `@group=other`
|
||||
- `@group=metadata`
|
||||
- `@group=passphrase`
|
||||
- `@group=settings`
|
||||
|
||||
#### @desktopOnly or @webOnly
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
This chapter contains information about tests.
|
||||
|
||||
- [e2e playwright suite](./e2e-playwright-suite.md)
|
||||
- [e2e playwright contribution guide](./e2e-playwright-contribution-guide.md)
|
||||
- [e2e @trezor/connect-popup](./e2e-connect-popup.md)
|
||||
- [regtest](./regtest.md)
|
||||
- [e2e playwright suite](./e2e-playwright-suite.md)
|
||||
- [e2e playwright contribution guide](./e2e-playwright-contribution-guide.md)
|
||||
- [e2e @trezor/connect-popup](./e2e-connect-popup.md)
|
||||
- [regtest](./regtest.md)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# 1.0.0
|
||||
|
||||
- package created
|
||||
- package created
|
||||
|
||||
@@ -1,95 +1,95 @@
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.3.3-beta.1 (2fd7c7afd9)
|
||||
- npm-prerelease: @trezor/analytics 1.3.3-beta.1 (2fd7c7afd9)
|
||||
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.3.2-beta.1 (da51b9cf12)
|
||||
- npm-prerelease: @trezor/analytics 1.3.2-beta.1 (da51b9cf12)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.3.0-beta.1 (d848ffc4d4)
|
||||
- npm-prerelease: @trezor/analytics 1.2.7-beta.1 (327b230fb1)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- npm-prerelease: @trezor/analytics 1.3.0-beta.1 (d848ffc4d4)
|
||||
- npm-prerelease: @trezor/analytics 1.2.7-beta.1 (327b230fb1)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.2.3-beta.1 (136e6f103a)
|
||||
- npm-prerelease: @trezor/analytics 1.2.3-beta.1 (136e6f103a)
|
||||
|
||||
# 1.2.2
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.2.2-beta.1 (13b76de1b3)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
- npm-prerelease: @trezor/analytics 1.2.2-beta.1 (13b76de1b3)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.2.1-beta.1 (cad75cc6e6)
|
||||
- npm-prerelease: @trezor/analytics 1.2.1-beta.1 (cad75cc6e6)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/analytics 1.1.1-beta.1 (69ebdd96a5)
|
||||
- npm-prerelease: @trezor/analytics 1.1.1-beta.1 (69ebdd96a5)
|
||||
|
||||
# 1.0.18-beta.1
|
||||
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.17-beta.1
|
||||
|
||||
- fix(suite-native): coin discovery analytics objectless structure (#11992) (7bd1a2bea0)
|
||||
- feat(suite-native): token discovery analytics (#11846) (f81a8012d5)
|
||||
- fix(suite-native): coin discovery analytics objectless structure (#11992) (7bd1a2bea0)
|
||||
- feat(suite-native): token discovery analytics (#11846) (f81a8012d5)
|
||||
|
||||
# 1.0.16
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.15
|
||||
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- 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(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- 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)
|
||||
|
||||
# 1.0.13
|
||||
|
||||
- fix(connect): point analytics to lib (e5ae31f62b)
|
||||
- fix(connect): point analytics to lib (e5ae31f62b)
|
||||
|
||||
# 1.0.11
|
||||
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- fix(analytics): timestamp from queued events were overriden (96ccc83d6)
|
||||
- chore(jest): update jest in packages without issues (7458ab20f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(analytics): flush queue based on analytics status (b8b4b413c)
|
||||
- feat(analytics): queue can be enabled when analytics object created (c0e3855a8)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- fix(analytics): timestamp from queued events were overriden (96ccc83d6)
|
||||
- chore(jest): update jest in packages without issues (7458ab20f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(analytics): flush queue based on analytics status (b8b4b413c)
|
||||
- feat(analytics): queue can be enabled when analytics object created (c0e3855a8)
|
||||
|
||||
# 1.0.7
|
||||
|
||||
- fix(analytics): adding missing fields package.json (8f1626c49)
|
||||
- fix(analytics): re-adding missing tsconfig.lib (d3bc367b2)
|
||||
- fix(analytics): adding missing fields package.json (8f1626c49)
|
||||
- fix(analytics): re-adding missing tsconfig.lib (d3bc367b2)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- chore(analytics): report also analytics event type to sentry to see what we miss (27563c630)
|
||||
- chore(analytics): report to sentry also what is missing for analytics to be ready (90484114b)
|
||||
- chore: remove some unecessary build:lib (0a5d8267c)
|
||||
- chore(analytics): report also analytics event type to sentry to see what we miss (27563c630)
|
||||
- chore(analytics): report to sentry also what is missing for analytics to be ready (90484114b)
|
||||
- chore: remove some unecessary build:lib (0a5d8267c)
|
||||
|
||||
# 1.0.4
|
||||
|
||||
- chore(suite): move env util from suite to trezor package to make it reusable for native (c22aa6c31)
|
||||
- feat(analytics): requests outlive the app session (80223eeab)
|
||||
- chore(suite): move env util from suite to trezor package to make it reusable for native (c22aa6c31)
|
||||
- feat(analytics): requests outlive the app session (80223eeab)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- fix(suite-native): analytics init (#8225)
|
||||
- fix(suite-native): analytics init (#8225)
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- package created
|
||||
- package created
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
This is a generic analytics package. To use analytics in a specific environment,
|
||||
please use one of the following packages or create a new one inspired by existing ones.
|
||||
|
||||
- [Suite Analytics](../suite-analytics)
|
||||
- [Suite Analytics](../suite-analytics)
|
||||
|
||||
Keep in mind that global `fetch` and `URLSearchParams` methods must be available. Node and React Native use polyfills as a substitute.
|
||||
|
||||
@@ -39,11 +39,11 @@ Which tracks:
|
||||
|
||||
Attributes which are always tracked:
|
||||
|
||||
- **c_v**: version of analytics
|
||||
- **c_type**: type of tracked event
|
||||
- **c_commit**: current revision of app
|
||||
- **c_instance_id**: until user wipes storage, the ID does not change
|
||||
- **c_session_id**: ID changing on every launch of app
|
||||
- **c_timestamp**: time in ms when event is created (added in 1.11)
|
||||
- **c_v**: version of analytics
|
||||
- **c_type**: type of tracked event
|
||||
- **c_commit**: current revision of app
|
||||
- **c_instance_id**: until user wipes storage, the ID does not change
|
||||
- **c_session_id**: ID changing on every launch of app
|
||||
- **c_timestamp**: time in ms when event is created (added in 1.11)
|
||||
|
||||
Other attributes are connected to a specific event type.
|
||||
|
||||
@@ -1,186 +1,186 @@
|
||||
# 1.3.4
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.4-beta.1 (fa0a4d511d)
|
||||
- feat(blockchain-link): migrate wallet-sdk-solana staking accounts (995ed63410)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- chore(blockchain-link): update blockbook-api types (5ca901a0e3)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.4-beta.1 (fa0a4d511d)
|
||||
- feat(blockchain-link): migrate wallet-sdk-solana staking accounts (995ed63410)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- chore(blockchain-link): update blockbook-api types (5ca901a0e3)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.3-beta.1 (577577afd4)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.3-beta.1 (577577afd4)
|
||||
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.2-beta.2 (4234d28ca6)
|
||||
- chore: replace `@solana/web3.js` with `@solana/kit` (6356bafe6d)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.2-beta.2 (4234d28ca6)
|
||||
- chore: replace `@solana/web3.js` with `@solana/kit` (6356bafe6d)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.1-beta.1 (183dc685f7)
|
||||
- feat(blockchain-link-type): change bigint to string in persist (3ecc87c3a5)
|
||||
- feat(fee): logic for rent fee calculation (2650f6b510)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.1-beta.1 (183dc685f7)
|
||||
- feat(blockchain-link-type): change bigint to string in persist (3ecc87c3a5)
|
||||
- feat(fee): logic for rent fee calculation (2650f6b510)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- refactor(connect): separate bitcoin and misc fee levels (73ba107ee4)
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.0-beta.1 (ae9fbcf120)
|
||||
- chore(suite): sync types with blockbook (8e843a36d7)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.6-beta.1 (6e5413cfec)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- feat(blockchain-link): support solana stake types and calculate amounts (b10e27ed77)
|
||||
- fix(blockchain-link): CustomError with message passed as code (5285872b3f)
|
||||
- fix: make types strict to prevent accidental deletion via unused types, the optionality is a trap, they are required (184ebbb7f4)
|
||||
- Revert chore(suite): remove unused types in token (f588fa36a7)
|
||||
- chore(blockchain-link-types): extend token standard type by bep (44358cbc8c)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- feat(blockchain-link-types): update blockfrost staking types (d27b94b2e3)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- chore(suite): remove unused types in token (efed0f9922)
|
||||
- feat(suite): expand TokenInfo type to work with NFT (6c7b1ab731)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
- refactor(connect): separate bitcoin and misc fee levels (73ba107ee4)
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.3.0-beta.1 (ae9fbcf120)
|
||||
- chore(suite): sync types with blockbook (8e843a36d7)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.6-beta.1 (6e5413cfec)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- feat(blockchain-link): support solana stake types and calculate amounts (b10e27ed77)
|
||||
- fix(blockchain-link): CustomError with message passed as code (5285872b3f)
|
||||
- fix: make types strict to prevent accidental deletion via unused types, the optionality is a trap, they are required (184ebbb7f4)
|
||||
- Revert chore(suite): remove unused types in token (f588fa36a7)
|
||||
- chore(blockchain-link-types): extend token standard type by bep (44358cbc8c)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- feat(blockchain-link-types): update blockfrost staking types (d27b94b2e3)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- chore(suite): remove unused types in token (efed0f9922)
|
||||
- feat(suite): expand TokenInfo type to work with NFT (6c7b1ab731)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
|
||||
# 1.2.4
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.4-beta.1 (32d2ef7bab)
|
||||
- chore(blockchain-link): solana optimized getAccountInfo (88b9c6de14)
|
||||
- chore: Update the Solana types in `@trezor/blockchain-link-types` (d8fe398c07)
|
||||
- chore: Update `@solana/web3.js` to 2.0.0 (f1eac69733)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.4-beta.1 (32d2ef7bab)
|
||||
- chore(blockchain-link): solana optimized getAccountInfo (88b9c6de14)
|
||||
- chore: Update the Solana types in `@trezor/blockchain-link-types` (d8fe398c07)
|
||||
- chore: Update `@solana/web3.js` to 2.0.0 (f1eac69733)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.3-beta.1 (d7636062ed)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.3-beta.1 (d7636062ed)
|
||||
|
||||
# 1.2.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.2-beta.2 (33407a3dcf)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- feat(blockchain-link): implement ethereum rpc call (2732533db8)
|
||||
- chore(blockchain-link-types): remove socks-proxy-agent dependency (327ed789cf)
|
||||
- chore(blockchain-link-types): keep legacy type SocksProxyAgentOptions (4a4d439aab)
|
||||
- chore: update socks-proxy-agent from 6.1.1 to 8.0.4 (2d3edbcc89)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.2-beta.1 (552d5487f3)
|
||||
- feat(suite-common): add pol and bnb to graph (013c786250)
|
||||
- chore(blockchain-link): Update Blockbook types (06d54d6aa9)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.2-beta.2 (33407a3dcf)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- feat(blockchain-link): implement ethereum rpc call (2732533db8)
|
||||
- chore(blockchain-link-types): remove socks-proxy-agent dependency (327ed789cf)
|
||||
- chore(blockchain-link-types): keep legacy type SocksProxyAgentOptions (4a4d439aab)
|
||||
- chore: update socks-proxy-agent from 6.1.1 to 8.0.4 (2d3edbcc89)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.2.2-beta.1 (552d5487f3)
|
||||
- feat(suite-common): add pol and bnb to graph (013c786250)
|
||||
- chore(blockchain-link): Update Blockbook types (06d54d6aa9)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- chore: remove prettier-eslint dependency, upgrade @typescript-eslint (77576f5bea)
|
||||
- chore: remove prettier-eslint dependency, upgrade @typescript-eslint (77576f5bea)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.3 (2be3a59462)
|
||||
- chore(suite): get rid of NETWORKS reexport (02bd51829a)
|
||||
- feat(solana): validate send amount against rent (9f1f76b994)
|
||||
- feat(staking): instant staking/unstaking success (6f42f9f86b)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.2 (67e3933906)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.1 (83c91308b5)
|
||||
- fix(suite): transaction search with token name, symbol or contract (#13410) (986032c736)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
- chore(blockchain-link): cardano using unit as contract address again (0e58ab32b3)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.3 (2be3a59462)
|
||||
- chore(suite): get rid of NETWORKS reexport (02bd51829a)
|
||||
- feat(solana): validate send amount against rent (9f1f76b994)
|
||||
- feat(staking): instant staking/unstaking success (6f42f9f86b)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.2 (67e3933906)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link-types 1.1.1-beta.1 (83c91308b5)
|
||||
- fix(suite): transaction search with token name, symbol or contract (#13410) (986032c736)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
- chore(blockchain-link): cardano using unit as contract address again (0e58ab32b3)
|
||||
|
||||
# 1.0.18-beta.2
|
||||
|
||||
- chore(suite): unused package dependencies removed (f7907e1496)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(suite): unused package dependencies removed (f7907e1496)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.18-beta.1
|
||||
|
||||
- refactor(suite): signed transaction data stored in redux send form state (2ea31ab5d6)
|
||||
- refactor(suite): signed transaction data stored in redux send form state (2ea31ab5d6)
|
||||
|
||||
# 1.0.17-beta.2
|
||||
|
||||
- Chore/refactor fiat rates (#11592) (f40b8bf7d8)
|
||||
- Chore/refactor fiat rates (#11592) (f40b8bf7d8)
|
||||
|
||||
# 1.0.16
|
||||
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
- refactor(connect): optional token symbol (#10762) (47a7de17c6)
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
- refactor(connect): optional token symbol (#10762) (47a7de17c6)
|
||||
|
||||
# 1.0.15
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.14
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- feat(eth-staking): add unstake pending state, pool stats, stake data from blockbook (27e463e04)
|
||||
- fix(suite): `fromWei` and `toWei`check errors (#11266) (99bb3324d)
|
||||
- chore(suite): replace `selectCoinsLegacy` by fiat rates selectors (4e3ce7367)
|
||||
- chore(blockchain-link): remove unused error event (4c1b8df7d)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- feat(eth-staking): add unstake pending state, pool stats, stake data from blockbook (27e463e04)
|
||||
- fix(suite): `fromWei` and `toWei`check errors (#11266) (99bb3324d)
|
||||
- chore(suite): replace `selectCoinsLegacy` by fiat rates selectors (4e3ce7367)
|
||||
- chore(blockchain-link): remove unused error event (4c1b8df7d)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
|
||||
# 1.0.12
|
||||
|
||||
- feat(suite-native): modals renderer (#10801) (a9b4d1e8fe)
|
||||
- chore(blockchain-link-types): move deps from dev to dependencies (b77caf9715)
|
||||
- feat(suite-native): modals renderer (#10801) (a9b4d1e8fe)
|
||||
- chore(blockchain-link-types): move deps from dev to dependencies (b77caf9715)
|
||||
|
||||
# 1.0.11
|
||||
|
||||
- fix(suite): subscribe to Solana token accounts as well (b2f85ac9e)
|
||||
- chore(blokchain-link-types): import type from @trezor/type-utils (a2087ebf7)
|
||||
- fix(suite): subscribe to Solana token accounts as well (b2f85ac9e)
|
||||
- chore(blokchain-link-types): import type from @trezor/type-utils (a2087ebf7)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- feat(blockchain-link): add `getTransactionHex` method (cbca5dbfd)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
- fix(blockchain-link-types): ADA getTransaction type (02e6194ef)
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- feat(blockchain-link): add `getTransactionHex` method (cbca5dbfd)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
- fix(blockchain-link-types): ADA getTransaction type (02e6194ef)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
|
||||
# 1.0.8
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- chore(suite): update lockfile (761aea82b)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(blockchain-link): Solana getAccountInfo (248913743)
|
||||
- feat(blockchain-link): Solana estimateFee (34a2f28a0)
|
||||
- feat(blockchain-link): Solana worker setup (662bc092a)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- chore(suite): update lockfile (761aea82b)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(blockchain-link): Solana getAccountInfo (248913743)
|
||||
- feat(blockchain-link): Solana estimateFee (34a2f28a0)
|
||||
- feat(blockchain-link): Solana worker setup (662bc092a)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- feat(blockchain-link-types): add block filters (78dd71d4c)
|
||||
- chore: replace deprecated String.subst with Sting.substing (57f45d4cd)
|
||||
- feat(blockchain-link-types): add block filters (78dd71d4c)
|
||||
- chore: replace deprecated String.subst with Sting.substing (57f45d4cd)
|
||||
|
||||
# 1.0.5
|
||||
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- chore(blockchain-link): add addrTxCount (2d6e12535)
|
||||
- feat: update deps in root package.json (5806d41bc)
|
||||
- chore(blockchain-link): add addrTxCount (2d6e12535)
|
||||
- feat: update deps in root package.json (5806d41bc)
|
||||
|
||||
# 1.0.2
|
||||
|
||||
- 5711aa998 feat(blockchain-link): add getMempoolFilters method
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
- 5711aa998 feat(blockchain-link): add getMempoolFilters method
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- fix: remove workspace: from dependencies
|
||||
- fix: remove workspace: from dependencies
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- package created
|
||||
- package created
|
||||
|
||||
@@ -1,189 +1,189 @@
|
||||
# 1.3.4
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.4-beta.1 (94c6c8d06c)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.4-beta.1 (94c6c8d06c)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.3-beta.1 (e84ac565b8)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.3-beta.1 (e84ac565b8)
|
||||
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.2-beta.2 (9e84c16e80)
|
||||
- fix(blockchain-link-utils): ignore incomplete type in unit test (b82c1b36ec)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.2-beta.2 (9e84c16e80)
|
||||
- fix(blockchain-link-utils): ignore incomplete type in unit test (b82c1b36ec)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.1-beta.1 (8f776478e3)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.1-beta.1 (8f776478e3)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.0-beta.1 (e9235027ca)
|
||||
- chore(suite): fix tests (b646159ec2)
|
||||
- chore(suite): sync types with blockbook (8e843a36d7)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.7-beta.1 (86cb20a5a2)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- fix(blockchain-link): change success status in failed transactions with missing destination tag (dd6d496fd3)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- fix(solana): whitelist Serum's Asset Owner program (e6af2c1471)
|
||||
- feat(solana): more generic transaction parsing (89bc5a54fd)
|
||||
- feat(blockchain-link): support solana stake types and calculate amounts (b10e27ed77)
|
||||
- Revert chore(suite): remove unused types in token (f588fa36a7)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- chore(suite): remove unused types in token (efed0f9922)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.3.0-beta.1 (e9235027ca)
|
||||
- chore(suite): fix tests (b646159ec2)
|
||||
- chore(suite): sync types with blockbook (8e843a36d7)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.7-beta.1 (86cb20a5a2)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- fix(blockchain-link): change success status in failed transactions with missing destination tag (dd6d496fd3)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- fix(solana): whitelist Serum's Asset Owner program (e6af2c1471)
|
||||
- feat(solana): more generic transaction parsing (89bc5a54fd)
|
||||
- feat(blockchain-link): support solana stake types and calculate amounts (b10e27ed77)
|
||||
- Revert chore(suite): remove unused types in token (f588fa36a7)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- chore(suite): remove unused types in token (efed0f9922)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
|
||||
# 1.2.5
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.5-beta.1 (6af3be92af)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.5-beta.1 (6af3be92af)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.3-beta.1 (0b0670f5ea)
|
||||
- fix(blockchain-link-utils): solana with negative tx amount (2af67c50f9)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.3-beta.1 (0b0670f5ea)
|
||||
- fix(blockchain-link-utils): solana with negative tx amount (2af67c50f9)
|
||||
|
||||
# 1.2.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.2-beta.2 (225a260c34)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.2-beta.1 (54ab781bf9)
|
||||
- fix(blockchain-link-utils): fix solana self txs info in history (f53d31e47f)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.2-beta.2 (225a260c34)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.2-beta.1 (54ab781bf9)
|
||||
- fix(blockchain-link-utils): fix solana self txs info in history (f53d31e47f)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.1-beta.1 (58d60c48c7)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.2.1-beta.1 (58d60c48c7)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.3 (20a2fe6372)
|
||||
- feat(staking): instant staking/unstaking success (6f42f9f86b)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.2 (a4ebac3e6f)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.1 (bc36f6ecfa)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
- chore(blockchain-link): cardano using unit as contract address again (0e58ab32b3)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.3 (20a2fe6372)
|
||||
- feat(staking): instant staking/unstaking success (6f42f9f86b)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.2 (a4ebac3e6f)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link-utils 1.1.1-beta.1 (bc36f6ecfa)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
- chore(blockchain-link): cardano using unit as contract address again (0e58ab32b3)
|
||||
|
||||
# 1.0.19-beta.1
|
||||
|
||||
- fix(blockchain-link): omit solana foreign tx effects (80836ddb90)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- fix(blockchain-link): omit solana foreign tx effects (80836ddb90)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.18
|
||||
|
||||
- chore: BigNumber wrapper (d18ba9a879)
|
||||
- chore: BigNumber wrapper (d18ba9a879)
|
||||
|
||||
# 1.0.18-beta.1
|
||||
|
||||
- fix: unify solana and cardano missing symbol name length (2698f935aa)
|
||||
- fix(blockchain-link-utils): fix solana token definitions url (5b29898216)
|
||||
- fix: unify solana and cardano missing symbol name length (2698f935aa)
|
||||
- fix(blockchain-link-utils): fix solana token definitions url (5b29898216)
|
||||
|
||||
# 1.0.17
|
||||
|
||||
- feat(blockchain-link-utils): solana using data.trezor.io token metadata (9bd73e9d36)
|
||||
- fix(blockchain-link): cache SOL token metadata (385010151a)
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
- feat(blockchain-link-utils): solana using data.trezor.io token metadata (9bd73e9d36)
|
||||
- fix(blockchain-link): cache SOL token metadata (385010151a)
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
|
||||
# 1.0.16
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.15
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- feat(eth-staking): add unstake pending state, pool stats, stake data from blockbook (27e463e04)
|
||||
- fix(suite): `fromWei` and `toWei`check errors (#11266) (99bb3324d)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- 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)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- feat(eth-staking): add unstake pending state, pool stats, stake data from blockbook (27e463e04)
|
||||
- fix(suite): `fromWei` and `toWei`check errors (#11266) (99bb3324d)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- 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)
|
||||
|
||||
# 1.0.14
|
||||
|
||||
- Revert feat(blockchain-link); get sol token metadata from coingecko (61cf93cd62)
|
||||
- Revert feat(blockchain-link); get sol token metadata from coingecko (61cf93cd62)
|
||||
|
||||
# 1.0.13
|
||||
|
||||
- feat(blockchain-link); get sol token metadata from coingecko (5c901ea8f)
|
||||
- feat(blockchain-link); get sol token metadata from coingecko (5c901ea8f)
|
||||
|
||||
# 1.0.12
|
||||
|
||||
- fix(blockchain-link-utils): support `multisigAuthority` in solana txs (dfd96d23b)
|
||||
- fix(blockchain-link-utils): use `some` instead of `find` in solana tx type predcicates (1d58f980d)
|
||||
- fix(blockchain-link-utils): parse solana transfers originating from exchanges (58b125fb2)
|
||||
- fix(blockchain-link): correct import in solana using @trezor/ prefix (3a4895d6b)
|
||||
- fix(blockchain-link-utils): support `multisigAuthority` in solana txs (dfd96d23b)
|
||||
- fix(blockchain-link-utils): use `some` instead of `find` in solana tx type predcicates (1d58f980d)
|
||||
- fix(blockchain-link-utils): parse solana transfers originating from exchanges (58b125fb2)
|
||||
- fix(blockchain-link): correct import in solana using @trezor/ prefix (3a4895d6b)
|
||||
|
||||
# 1.0.11
|
||||
|
||||
- fix(blockchain-link): gasPrice null fallback (34d612a06)
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(blockchain-link-utils): add meta for solana BONK token (c8e1762ed)
|
||||
- fix(blockchain-link): filter out non-spl tokens (de631248e)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- refactor(blockchain-link-utils): improve `transformTransaction` params (a28a90142)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
- fix(blockchain-link): gasPrice null fallback (34d612a06)
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(blockchain-link-utils): add meta for solana BONK token (c8e1762ed)
|
||||
- fix(blockchain-link): filter out non-spl tokens (de631248e)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- refactor(blockchain-link-utils): improve `transformTransaction` params (a28a90142)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- fix(blockchain-link): add solana vout for self txs (ab6f0acf0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
- fix(blockchain-link): add solana vout for self txs (ab6f0acf0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(jest): update jest in packages without issues (7458ab20f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- fix(blockchain-link): PR review fixes (08d84dfe6)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(jest): update jest in packages without issues (7458ab20f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- fix(blockchain-link): PR review fixes (08d84dfe6)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
|
||||
# 1.0.7
|
||||
|
||||
- chore: replace deprecated String.subst with Sting.substing (57f45d4cd)
|
||||
- chore: replace deprecated Buffer.slice with Buffer.subarray (814caeaa9)
|
||||
- chore: replace deprecated String.subst with Sting.substing (57f45d4cd)
|
||||
- chore: replace deprecated Buffer.slice with Buffer.subarray (814caeaa9)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
|
||||
# 1.0.5
|
||||
|
||||
- fix(blockchain-link): use tx `rbf` flag from backend (c5f7a5033)
|
||||
- fix(blockchain-link): use tx `rbf` flag from backend (c5f7a5033)
|
||||
|
||||
# 1.0.4
|
||||
|
||||
- chore(blockchain-link): add addrTxCount (2d6e12535)
|
||||
- feat: update deps in root package.json (5806d41bc)
|
||||
- chore(blockchain-link): add addrTxCount (2d6e12535)
|
||||
- feat: update deps in root package.json (5806d41bc)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
|
||||
# 1.0.2
|
||||
|
||||
- chore(blockchain-link): fix ripple blocktime
|
||||
- chore(blockchain-link): fix ripple blocktime
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- fix: remove workspace: from dependencies
|
||||
- fix: remove workspace: from dependencies
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- package created
|
||||
- package created
|
||||
|
||||
@@ -1,495 +1,495 @@
|
||||
# 2.4.4
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.4-beta.1 (a19dc530b6)
|
||||
- feat(blockchain-link): migrate wallet-sdk-solana staking accounts (995ed63410)
|
||||
- fix(blockchain-link): clean connectPromise (09488c9ab1)
|
||||
- fix: staking epoch update (8083c2f349)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- feat(websocket-client): sendMessage is now public; support timeout param (b0740c419e)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
- chore: update @everstake/wallet-sdk-solana (e3e1f19e32)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.4-beta.1 (a19dc530b6)
|
||||
- feat(blockchain-link): migrate wallet-sdk-solana staking accounts (995ed63410)
|
||||
- fix(blockchain-link): clean connectPromise (09488c9ab1)
|
||||
- fix: staking epoch update (8083c2f349)
|
||||
- feat(blockchain-link): migrate ripple-lib to xrpl.js (422c175f4f)
|
||||
- feat(websocket-client): sendMessage is now public; support timeout param (b0740c419e)
|
||||
- chore(blockchain-link): move solana types (b3dfcb0de0)
|
||||
- chore: update @everstake/wallet-sdk-solana (e3e1f19e32)
|
||||
|
||||
# 2.4.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.3-beta.1 (7b9b8e1ebd)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.3-beta.1 (7b9b8e1ebd)
|
||||
|
||||
# 2.4.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.2-beta.2 (8e9f390bf2)
|
||||
- chore: update all `@solana-program/*` deps to use ones that depend on `@solana/kit` (b7446ce635)
|
||||
- chore: replace `@solana/web3.js` with `@solana/kit` (6356bafe6d)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.2-beta.2 (8e9f390bf2)
|
||||
- chore: update all `@solana-program/*` deps to use ones that depend on `@solana/kit` (b7446ce635)
|
||||
- chore: replace `@solana/web3.js` with `@solana/kit` (6356bafe6d)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
|
||||
# 2.4.1
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.1-beta.1 (be66c4683c)
|
||||
- feat(backend): added backends so that each EVM has 4 endpoints (f5c057c2be)
|
||||
- feat(blockchain-link-type): change bigint to string in persist (3ecc87c3a5)
|
||||
- feat(fee): logic for rent fee calculation (2650f6b510)
|
||||
- fix(blockchain-link): correctly handle Solana server URL (1fe9034132)
|
||||
- fix(suite): hide non-Everstake Solana staking accounts (cbb6cdbe59)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- chore(blockchain-link): do not fetch solana rpc version (0959e86389)
|
||||
- chore(blockchain-link): use confirmed Solana blockhash (8c47f52179)
|
||||
- feat(suite): add timer to solana tx modal (c2aea2a9ca)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.1-beta.1 (be66c4683c)
|
||||
- feat(backend): added backends so that each EVM has 4 endpoints (f5c057c2be)
|
||||
- feat(blockchain-link-type): change bigint to string in persist (3ecc87c3a5)
|
||||
- feat(fee): logic for rent fee calculation (2650f6b510)
|
||||
- fix(blockchain-link): correctly handle Solana server URL (1fe9034132)
|
||||
- fix(suite): hide non-Everstake Solana staking accounts (cbb6cdbe59)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- chore(blockchain-link): do not fetch solana rpc version (0959e86389)
|
||||
- chore(blockchain-link): use confirmed Solana blockhash (8c47f52179)
|
||||
- feat(suite): add timer to solana tx modal (c2aea2a9ca)
|
||||
|
||||
# 2.4.0
|
||||
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.0-beta.1 (fe6ccbb8ec)
|
||||
- chore(suite): fix tests (b646159ec2)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- chore(suite): bump webpack (eab0cc7041)
|
||||
- feat(blockchain-link): add btc testnet4 to ui (3c194a9499)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.7-beta.1 (c961bb9629)
|
||||
- chore(blockchain-link): use `@trezor/websocket-client` package (5d1c40cf02)
|
||||
- test(blockchain-link): use JestCustomEnv.js to detect exceeding listeners (edb3f82eaa)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- feat(suite): update destination tag field display in the send form (7ab690b3d1)
|
||||
- fix(blockchain-link): change success status in failed transactions with missing destination tag (dd6d496fd3)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- fix(blockchain-link): stop ripple ping timeout if api disconnected (0342e33b03)
|
||||
- fix(blockchain-link): remove console.error in solana rpc (170932133b)
|
||||
- fix(blockchain-link): don't log error on solana rpc channel closed (776e1d8584)
|
||||
- feat(solana): more generic transaction parsing (89bc5a54fd)
|
||||
- chore(deps): update various @types packages (c6c6b36900)
|
||||
- fix(blockchain-link): CustomError with message passed as code (5285872b3f)
|
||||
- fix: make types strict to prevent accidental deletion via unused types, the optionality is a trap, they are required (184ebbb7f4)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- fix(blockchain-link): blockfrost getAccountInfo details fallback (2e76785bd1)
|
||||
- chore(blockchain-link): cache solana epoch (edc9a53b29)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- chore(blockchain-link): update networks to use trezor.io proxy servers (c6d420cde0)
|
||||
- fix(suite): tests network symbol (6160341b24)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- feat(blockchain-link): add Arbitrum one (6b5cdf2cb0)
|
||||
- chore(blockchain-link): replace cross-fetch in workers webpack (bb1b85ff65)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
- feat(blockchain-link): add support for Solana v2 staking (f12b0240c8)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.4.0-beta.1 (fe6ccbb8ec)
|
||||
- chore(suite): fix tests (b646159ec2)
|
||||
- chore: update solana and everstake deps (cf806ff3d0)
|
||||
- chore(suite): bump webpack (eab0cc7041)
|
||||
- feat(blockchain-link): add btc testnet4 to ui (3c194a9499)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.7-beta.1 (c961bb9629)
|
||||
- chore(blockchain-link): use `@trezor/websocket-client` package (5d1c40cf02)
|
||||
- test(blockchain-link): use JestCustomEnv.js to detect exceeding listeners (edb3f82eaa)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- feat(suite): update destination tag field display in the send form (7ab690b3d1)
|
||||
- fix(blockchain-link): change success status in failed transactions with missing destination tag (dd6d496fd3)
|
||||
- feat(suite): add Destination tag into TxDetail (c46de7a9c3)
|
||||
- fix(blockchain-link): stop ripple ping timeout if api disconnected (0342e33b03)
|
||||
- fix(blockchain-link): remove console.error in solana rpc (170932133b)
|
||||
- fix(blockchain-link): don't log error on solana rpc channel closed (776e1d8584)
|
||||
- feat(solana): more generic transaction parsing (89bc5a54fd)
|
||||
- chore(deps): update various @types packages (c6c6b36900)
|
||||
- fix(blockchain-link): CustomError with message passed as code (5285872b3f)
|
||||
- fix: make types strict to prevent accidental deletion via unused types, the optionality is a trap, they are required (184ebbb7f4)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- fix(blockchain-link): blockfrost getAccountInfo details fallback (2e76785bd1)
|
||||
- chore(blockchain-link): cache solana epoch (edc9a53b29)
|
||||
- feat(blockchain-link): add Solana epoch info call and upgrade SDK (2a8262578d)
|
||||
- chore(blockchain-link): update networks to use trezor.io proxy servers (c6d420cde0)
|
||||
- fix(suite): tests network symbol (6160341b24)
|
||||
- feat(connect): add support of L2 ETH networks (26ff8eada4)
|
||||
- feat(blockchain-link): add Arbitrum one (6b5cdf2cb0)
|
||||
- chore(blockchain-link): replace cross-fetch in workers webpack (bb1b85ff65)
|
||||
- fix(blockchain-link): add stakingAccounts property to AccountInfo interface (e2e907090f)
|
||||
- feat(solana): add support for Token-2022 tokens (9abc7d93dd)
|
||||
|
||||
# 2.3.5
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.5-beta.1 (d7c82a5c70)
|
||||
- chore: unify types for setTimeout return type to address the NodeJS types leak issue (3f34981e5d)
|
||||
- fix(blockchain-link): update ripple default backends (0652732a54)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.5-beta.1 (d7c82a5c70)
|
||||
- chore: unify types for setTimeout return type to address the NodeJS types leak issue (3f34981e5d)
|
||||
- fix(blockchain-link): update ripple default backends (0652732a54)
|
||||
|
||||
# 2.3.4
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.4-beta.1 (b6f0602c75)
|
||||
- fix(blockchain-link): solana fetch isTestnet only once (fb0a013bd8)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.4-beta.1 (b6f0602c75)
|
||||
- fix(blockchain-link): solana fetch isTestnet only once (fb0a013bd8)
|
||||
|
||||
# 2.3.3
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.3-beta.1 (bb519376e8)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.3-beta.1 (bb519376e8)
|
||||
|
||||
# 2.3.2
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.2-beta.2 (eacdfff276)
|
||||
- chore: bump webpack (fc04fea1de)
|
||||
- chore: get rid of '@typescript-eslint/no-unused-vars': 'off', and enforce it everywhere (1ad7b6f9b1)
|
||||
- chore: enable import/order rule for whole codebase - prettier fix (12b6fb18b9)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
- chore: enforce @typescript-eslint/no-restricted-imports everywhere (5d1104bfeb)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- chore: add 'import/no-duplicates' ESLint rule (8d8beba862)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- chore: add 'no-case-declarations' ESLint rule (855548f686)
|
||||
- fix(blockchain-link): show better message for solana expired txs (74d5365ff5)
|
||||
- fix(blockchain-link): export socks-prosy-agent for browser (e9973e9117)
|
||||
- feat(blockchain-link): implement ethereum rpc call (2732533db8)
|
||||
- chore(libs): update @types/web 0.0.162 to 0.0.174 (30298f7c52)
|
||||
- chore(blockchain-link): update proxyAgent to new socks-proxy-agent (e54f8d736e)
|
||||
- chore: update socks-proxy-agent from 6.1.1 to 8.0.4 (2d3edbcc89)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.2-beta.1 (679a6dbc86)
|
||||
- chore: update backends for bsc and op (458f0fe3d9)
|
||||
- feat(suite): add Optimism (f98f57023f)
|
||||
- fix(blockchain-link): do not fetch solana token account signatures for recipient address (171c7d6a20)
|
||||
- feat(blockchain-link): add user agent to Solana requests from desktop (2109d004e2)
|
||||
- feat(blockchain-link): add user agent to Cardano requests from desktop (8ec6f008bd)
|
||||
- feat(blockchain-link): user agent with Suite version when req Blockbook (9f61f179a4)
|
||||
- feat: change matic to pol symbol in the codebase (66427afab4)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.2-beta.2 (eacdfff276)
|
||||
- chore: bump webpack (fc04fea1de)
|
||||
- chore: get rid of '@typescript-eslint/no-unused-vars': 'off', and enforce it everywhere (1ad7b6f9b1)
|
||||
- chore: enable import/order rule for whole codebase - prettier fix (12b6fb18b9)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
- chore: enforce @typescript-eslint/no-restricted-imports everywhere (5d1104bfeb)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- chore: add 'import/no-duplicates' ESLint rule (8d8beba862)
|
||||
- chore: update solana lib (76519c7c16)
|
||||
- chore: add 'no-case-declarations' ESLint rule (855548f686)
|
||||
- fix(blockchain-link): show better message for solana expired txs (74d5365ff5)
|
||||
- fix(blockchain-link): export socks-prosy-agent for browser (e9973e9117)
|
||||
- feat(blockchain-link): implement ethereum rpc call (2732533db8)
|
||||
- chore(libs): update @types/web 0.0.162 to 0.0.174 (30298f7c52)
|
||||
- chore(blockchain-link): update proxyAgent to new socks-proxy-agent (e54f8d736e)
|
||||
- chore: update socks-proxy-agent from 6.1.1 to 8.0.4 (2d3edbcc89)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.2-beta.1 (679a6dbc86)
|
||||
- chore: update backends for bsc and op (458f0fe3d9)
|
||||
- feat(suite): add Optimism (f98f57023f)
|
||||
- fix(blockchain-link): do not fetch solana token account signatures for recipient address (171c7d6a20)
|
||||
- feat(blockchain-link): add user agent to Solana requests from desktop (2109d004e2)
|
||||
- feat(blockchain-link): add user agent to Cardano requests from desktop (8ec6f008bd)
|
||||
- feat(blockchain-link): user agent with Suite version when req Blockbook (9f61f179a4)
|
||||
- feat: change matic to pol symbol in the codebase (66427afab4)
|
||||
|
||||
# 2.3.1
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.1-beta.1 (a77b9e96f7)
|
||||
- chore(blockchain-link): replace deprecated Solana api call (c1ed11bd4c)
|
||||
- chore(deps): update @types/bytebuffer @types/sharedworker @types/web (a9eaedc0a7)
|
||||
- fix(blockchain-link): unify SOL connection logic (55dd2790a1)
|
||||
- chore(deps): bump webpack from 5.93.0 to 5.94.0 (358b96d708)
|
||||
- chore(deps): update @types/chrome; @types/web; @types/sharedworker (8e73aeb59b)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.3.1-beta.1 (a77b9e96f7)
|
||||
- chore(blockchain-link): replace deprecated Solana api call (c1ed11bd4c)
|
||||
- chore(deps): update @types/bytebuffer @types/sharedworker @types/web (a9eaedc0a7)
|
||||
- fix(blockchain-link): unify SOL connection logic (55dd2790a1)
|
||||
- chore(deps): bump webpack from 5.93.0 to 5.94.0 (358b96d708)
|
||||
- chore(deps): update @types/chrome; @types/web; @types/sharedworker (8e73aeb59b)
|
||||
|
||||
# 2.3.0
|
||||
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.3 (9a0896e229)
|
||||
- feat(solana): validate send amount against rent (9f1f76b994)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.2 (ff5875c801)
|
||||
- chore: update ws from 8.17.1 to 8.18.0 (f4f1aa5d6e)
|
||||
- chore: update webpack-dev-server from 4.15.1 to 5.0.4 (cf90006585)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.1 (3b74de9765)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.3 (9a0896e229)
|
||||
- feat(solana): validate send amount against rent (9f1f76b994)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.2 (ff5875c801)
|
||||
- chore: update ws from 8.17.1 to 8.18.0 (f4f1aa5d6e)
|
||||
- chore: update webpack-dev-server from 4.15.1 to 5.0.4 (cf90006585)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/blockchain-link 2.2.1-beta.1 (3b74de9765)
|
||||
- chore: update trends libs (70b9c112bf)
|
||||
|
||||
# 2.1.31-beta.2
|
||||
|
||||
- chore(deps): bump ws from 8.16.0 to 8.17.1 (bc5b787f3e)
|
||||
- chore(deps): bump ws from 8.16.0 to 8.17.1 (bc5b787f3e)
|
||||
|
||||
# 2.1.31-beta.1
|
||||
|
||||
- chore(utils): move Throttler util from blockchain-link to utils (78673bd14c)
|
||||
- chore(utils): move Throttler util from blockchain-link to utils (78673bd14c)
|
||||
|
||||
# 2.1.30
|
||||
|
||||
- chore: BigNumber wrapper (d18ba9a879)
|
||||
- chore: BigNumber wrapper (d18ba9a879)
|
||||
|
||||
# 2.1.30-beta.2
|
||||
|
||||
- Chore/refactor fiat rates (#11592) (f40b8bf7d8)
|
||||
- Chore/refactor fiat rates (#11592) (f40b8bf7d8)
|
||||
|
||||
# 2.1.29
|
||||
|
||||
- chore(blockchain-link): skip failing tests (34833c4751)
|
||||
- chore(blockhain-link): beta release 2.1.29-beta.0 (bf3589acc1)
|
||||
- fix(blockchain-link): cache SOL token metadata (385010151a)
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
- feat(blockchain-link): resubmit Solana transactions during confirmation (babb748eca)
|
||||
- fix(blockchain-link): close blockchain link connection on error (3bf8732140)
|
||||
- chore(blockchain-link): skip failing tests (34833c4751)
|
||||
- chore(blockhain-link): beta release 2.1.29-beta.0 (bf3589acc1)
|
||||
- fix(blockchain-link): cache SOL token metadata (385010151a)
|
||||
- chore(deps): bump @solana/web3.js from 1.90.0 to 1.90.2 (962e51f4ca)
|
||||
- feat(blockchain-link): resubmit Solana transactions during confirmation (babb748eca)
|
||||
- fix(blockchain-link): close blockchain link connection on error (3bf8732140)
|
||||
|
||||
# 2.1.28
|
||||
|
||||
- fix(blockchain-link): fix Solana transaction confirmation (38cd7ccdb6)
|
||||
- feat(blockchain-link): add support for Solana priority fees (a6c2aa8c7d)
|
||||
- fix(blockchain-link): hanging connection issue (#11516) (6cb0d99c03)
|
||||
- fix: wait on solana confirmed tx (#11515) (3cb139fbd3)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- fix(blockchain-link): fix Solana transaction confirmation (38cd7ccdb6)
|
||||
- feat(blockchain-link): add support for Solana priority fees (a6c2aa8c7d)
|
||||
- fix(blockchain-link): hanging connection issue (#11516) (6cb0d99c03)
|
||||
- fix: wait on solana confirmed tx (#11515) (3cb139fbd3)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 2.1.26
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(suite): replace `selectCoinsLegacy` by fiat rates selectors (4e3ce7367)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(utils): remove build step requirement from @trezor/utils (#11176) (6cd3d3c81)
|
||||
- chore(blockchain-link): remove unused error event (4c1b8df7d)
|
||||
- refactor(blockchain-link): use `createDeferredManager` (037ecfe68)
|
||||
- Fix: add missing keys that eslint was complaining about (#11167) (824c8b18b)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update css-loader and remove it from resolutions (953de853e)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(suite): replace `selectCoinsLegacy` by fiat rates selectors (4e3ce7367)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(utils): remove build step requirement from @trezor/utils (#11176) (6cd3d3c81)
|
||||
- chore(blockchain-link): remove unused error event (4c1b8df7d)
|
||||
- refactor(blockchain-link): use `createDeferredManager` (037ecfe68)
|
||||
- Fix: add missing keys that eslint was complaining about (#11167) (824c8b18b)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update css-loader and remove it from resolutions (953de853e)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
|
||||
# 2.1.25
|
||||
|
||||
- feat(suite): Rename Polygon to Polygon PoS (15a7fd38dc)
|
||||
- feat(suite): add Polygon (8c569ca580)
|
||||
- Revert feat(blockchain-link); get sol token metadata from coingecko (61cf93cd62)
|
||||
- feat(suite): Rename Polygon to Polygon PoS (15a7fd38dc)
|
||||
- feat(suite): add Polygon (8c569ca580)
|
||||
- Revert feat(blockchain-link); get sol token metadata from coingecko (61cf93cd62)
|
||||
|
||||
# 2.1.23
|
||||
|
||||
- feat(blockchain-link); get sol token metadata from coingecko (5c901ea8f)
|
||||
- feat(blockchain-link); get sol token metadata from coingecko (5c901ea8f)
|
||||
|
||||
# 2.1.22
|
||||
|
||||
- fix(suite): subscribe to Solana token accounts as well (b2f85ac9e)
|
||||
- fix(suite): re-enable Solana account subscriptions (still without token accounts support) (e05f8c9ed)
|
||||
- fix(suite): fix subscription return values (149903f8e)
|
||||
- fix(blockchain-link): no throw from ws.close (7e6e79b1c)
|
||||
- chore: bump `ws` to 8.16.0 (bd1e5ec81)
|
||||
- fix(suite): subscribe to Solana token accounts as well (b2f85ac9e)
|
||||
- fix(suite): re-enable Solana account subscriptions (still without token accounts support) (e05f8c9ed)
|
||||
- fix(suite): fix subscription return values (149903f8e)
|
||||
- fix(blockchain-link): no throw from ws.close (7e6e79b1c)
|
||||
- chore: bump `ws` to 8.16.0 (bd1e5ec81)
|
||||
|
||||
# 2.1.21
|
||||
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(electrum): support non-batching servers (e06b9375a)
|
||||
- test(blockchain-link): remove `TypedRawTransaction` (d3354fdf2)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- feat(blockchain-link): add `getTransactionHex` method (cbca5dbfd)
|
||||
- refactor(blockchain-link): adjust `transformTransaction` params (2d669d72e)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
- test(blockchain-link): smaller timeouts (cd83adc61)
|
||||
- test(blockchain-link): fix error testing (7995e957e)
|
||||
- fix(blockchain-link): fix solana txs when sending to associated token account (5cb682078)
|
||||
- feat(electrum): support non-batching servers (e06b9375a)
|
||||
- test(blockchain-link): remove `TypedRawTransaction` (d3354fdf2)
|
||||
- feat(blockchain-link): remove `TypedRawTransaction` (34d405d12)
|
||||
- feat(blockchain-link): add `getTransactionHex` method (cbca5dbfd)
|
||||
- refactor(blockchain-link): adjust `transformTransaction` params (2d669d72e)
|
||||
- chore(blockchain-link): remove ADA `null` subtype (07161b141)
|
||||
- test(blockchain-link): smaller timeouts (cd83adc61)
|
||||
- test(blockchain-link): fix error testing (7995e957e)
|
||||
|
||||
# 2.1.20
|
||||
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(blockchain-link): use extended top-level tsconfig (d17da1f35)
|
||||
- chore: update `jest` and related dependency (b8a321c83)
|
||||
- fix(blockchain-link): use timeout field of RippleApi.APIOptions (eafa4f308)
|
||||
- chore(blockchain-link): use default imports from commonjs dependencies (9a81b0459)
|
||||
- chore: Throttler throttling instead of debouncing in `@trezor/blockchain-link` (#10288) (f7ff0cf9f)
|
||||
- fix(blockchain-link): consider only unique solana signatures when paginating (e00cf70ac)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(blockchain-link): use extended top-level tsconfig (d17da1f35)
|
||||
- chore: update `jest` and related dependency (b8a321c83)
|
||||
- fix(blockchain-link): use timeout field of RippleApi.APIOptions (eafa4f308)
|
||||
- chore(blockchain-link): use default imports from commonjs dependencies (9a81b0459)
|
||||
- chore: Throttler throttling instead of debouncing in `@trezor/blockchain-link` (#10288) (f7ff0cf9f)
|
||||
- fix(blockchain-link): consider only unique solana signatures when paginating (e00cf70ac)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
|
||||
# 2.1.19
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- fix(blockchain-link): PR review fixes (08d84dfe6)
|
||||
- chore(suite): update lockfile (761aea82b)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana pushTx (e63813bb6)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(blockchain-link): Solana getAccountInfo (248913743)
|
||||
- feat(blockchain-link): Solana estimateFee (34a2f28a0)
|
||||
- feat(blockchain-link): Solana worker setup (662bc092a)
|
||||
- feat(blockchain-link): Solana ui config (98407f35a)
|
||||
- chore(tests): cleanup jets configs (#9869) (7b68bab05)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore: update prettier to v3 and reformat (4229fd483)
|
||||
- chore(connect): bl workers dynamic import (74fd08389)
|
||||
- chore(build): update deps related to suite app build (6ab9e6322)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- fix(blockchain-link): multiple workers initialization (#9766) (3208ea280)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- fix(blockchain-link): PR review fixes (08d84dfe6)
|
||||
- chore(suite): update lockfile (761aea82b)
|
||||
- feat(blockchain-link): Solana tx history (9dff5e509)
|
||||
- feat(blockchain-link): Solana pushTx (e63813bb6)
|
||||
- feat(blockchain-link): Solana tokens (9adc115ce)
|
||||
- feat(blockchain-link): Solana getAccountInfo (248913743)
|
||||
- feat(blockchain-link): Solana estimateFee (34a2f28a0)
|
||||
- feat(blockchain-link): Solana worker setup (662bc092a)
|
||||
- feat(blockchain-link): Solana ui config (98407f35a)
|
||||
- chore(tests): cleanup jets configs (#9869) (7b68bab05)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore: update prettier to v3 and reformat (4229fd483)
|
||||
- chore(connect): bl workers dynamic import (74fd08389)
|
||||
- chore(build): update deps related to suite app build (6ab9e6322)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- fix(blockchain-link): multiple workers initialization (#9766) (3208ea280)
|
||||
|
||||
# 2.1.17
|
||||
|
||||
- feat(blockchain-link): add block filter methods (66606afc6)
|
||||
- chore: adjust/unify createDeferred usage (4d724a451)
|
||||
- feat(blockchain-link): add block filter methods (66606afc6)
|
||||
- chore: adjust/unify createDeferred usage (4d724a451)
|
||||
|
||||
# 2.1.16
|
||||
|
||||
- feat(blockchain-link): ipv6 electrum support (1d4b5471c)
|
||||
- fix(blockchain-link): WsWrapper default export (0c5297e56)
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
- feat(blockchain-link): add baseWebsocket options (951bd3e29)
|
||||
- feat(blockchain-link): ipv6 electrum support (1d4b5471c)
|
||||
- fix(blockchain-link): WsWrapper default export (0c5297e56)
|
||||
- feat(blockchain-link): return tx hex in blockbook transactions (6aba6f094)
|
||||
- feat(blockchain-link): add baseWebsocket options (951bd3e29)
|
||||
|
||||
# 2.1.14
|
||||
|
||||
- fix(coinjoin): pending ws message closing recovery (0171cf3ef)
|
||||
- chore(deps): update (a21a081ba)
|
||||
- chore(blockchain-link): remove ts-loader from blockchain-link (3b117830a)
|
||||
- fix(blockchain-link): browser and native Websocket error message (e160101f5)
|
||||
- fix(blockchain-link): handle Websocket ping rejection (b9940b6e9)
|
||||
- chore(blockchain-link): define missing extraneous dependencies (83230e063)
|
||||
- fix(coinjoin): pending ws message closing recovery (0171cf3ef)
|
||||
- chore(deps): update (a21a081ba)
|
||||
- chore(blockchain-link): remove ts-loader from blockchain-link (3b117830a)
|
||||
- fix(blockchain-link): browser and native Websocket error message (e160101f5)
|
||||
- fix(blockchain-link): handle Websocket ping rejection (b9940b6e9)
|
||||
- chore(blockchain-link): define missing extraneous dependencies (83230e063)
|
||||
|
||||
# 2.1.12
|
||||
|
||||
- 5711aa998 feat(blockchain-link): add getMempoolFilters method
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
- 3e072b11f chore(blockchain-link): use `@trezor/e2e-utils` in tests
|
||||
- 5711aa998 feat(blockchain-link): add getMempoolFilters method
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
- 3e072b11f chore(blockchain-link): use `@trezor/e2e-utils` in tests
|
||||
|
||||
# 2.1.11
|
||||
|
||||
- chore(blockchain-link): fix ripple blocktime
|
||||
- chore(blockchain-link): fix ripple blocktime
|
||||
|
||||
# 2.1.10
|
||||
|
||||
- fix: remove workspace: from dependencies
|
||||
- fix: remove workspace: from dependencies
|
||||
|
||||
# 2.1.9
|
||||
|
||||
- feat: add `token` param to to `GetCurrentFiatRates`, `GetFiatRatesForTimestamps` and `GetFiatRatesTickersList` methods
|
||||
- chore: parts of this packages split into @trezor/blockchain-link-types and @trezor/blockchain-link-utils
|
||||
- chore: token.address to token.contract, ethereum improvements
|
||||
- feat: add token param to blockbook fiat methods
|
||||
- feat: add `token` param to to `GetCurrentFiatRates`, `GetFiatRatesForTimestamps` and `GetFiatRatesTickersList` methods
|
||||
- chore: parts of this packages split into @trezor/blockchain-link-types and @trezor/blockchain-link-utils
|
||||
- chore: token.address to token.contract, ethereum improvements
|
||||
- feat: add token param to blockbook fiat methods
|
||||
|
||||
# 2.1.8
|
||||
|
||||
- fix(suite-native): cardano websocket (#7722)
|
||||
- feat(blockchain-link): add getBlock method
|
||||
- feat(blockchain-link): add mempool subscription
|
||||
- fix(suite-native): cardano websocket (#7722)
|
||||
- feat(blockchain-link): add getBlock method
|
||||
- feat(blockchain-link): add mempool subscription
|
||||
|
||||
# 2.1.7
|
||||
|
||||
- feat: cardano preview testnet
|
||||
- feat: cardano preview testnet
|
||||
|
||||
# 2.1.6
|
||||
|
||||
- deps: updated typescript to 4.9
|
||||
- fix: order of txs in the same block
|
||||
- deps: updated typescript to 4.9
|
||||
- fix: order of txs in the same block
|
||||
|
||||
# 2.1.5
|
||||
|
||||
- added Transaction.feeRate
|
||||
- use Transaction.size provided by Blockbook instead of computing it from hex if available
|
||||
- Electrum: fixed `joint` transaction handling
|
||||
- added Transaction.feeRate
|
||||
- use Transaction.size provided by Blockbook instead of computing it from hex if available
|
||||
- Electrum: fixed `joint` transaction handling
|
||||
|
||||
# 2.1.4
|
||||
|
||||
- add missing ADA types
|
||||
- added `joint` transaction type to Transaction interface.
|
||||
- added `isAccountOwned` field to `tx.details.vin`/`tx.details.vout`
|
||||
- removed `totalSpent` field from Transaction interface
|
||||
- add missing ADA types
|
||||
- added `joint` transaction type to Transaction interface.
|
||||
- added `isAccountOwned` field to `tx.details.vin`/`tx.details.vout`
|
||||
- removed `totalSpent` field from Transaction interface
|
||||
|
||||
# 2.1.3
|
||||
|
||||
### changes
|
||||
|
||||
- revert part of backend selection refactoring (298e56ca992508ba0d5e1c0586d60d7a232eaa6a)
|
||||
- revert part of backend selection refactoring (298e56ca992508ba0d5e1c0586d60d7a232eaa6a)
|
||||
|
||||
# 2.1.2
|
||||
|
||||
#### changes
|
||||
|
||||
- throttling of block events (#5093)
|
||||
- backend selection refactoring (#5047)
|
||||
- set proxyAgent protocol to satisfy sentry wrapper (#5033)
|
||||
- Blockfrost: add withdrawal and deposits amounts to transaction
|
||||
- throttling of block events (#5093)
|
||||
- backend selection refactoring (#5047)
|
||||
- set proxyAgent protocol to satisfy sentry wrapper (#5033)
|
||||
- Blockfrost: add withdrawal and deposits amounts to transaction
|
||||
|
||||
# 2.1.1
|
||||
|
||||
#### changes
|
||||
|
||||
- Proxy agent in Ripple worker is set based on `RippleAPI._ALLOW_AGENT` flag, in order not to fail in standalone `trezor-connect` implementation (#4942)
|
||||
- Proxy agent in Ripple worker is set based on `RippleAPI._ALLOW_AGENT` flag, in order not to fail in standalone `trezor-connect` implementation (#4942)
|
||||
|
||||
# 2.1.0
|
||||
|
||||
#### changes
|
||||
|
||||
- Added `proxy` param allowing workers to initialize SocksProxyAgent and use it for proxying communication
|
||||
- Added support for `Electrum` backend
|
||||
- Using common utilities from new `@trezor/utils` package
|
||||
- Updated dependencies
|
||||
- Added `proxy` param allowing workers to initialize SocksProxyAgent and use it for proxying communication
|
||||
- Added support for `Electrum` backend
|
||||
- Using common utilities from new `@trezor/utils` package
|
||||
- Updated dependencies
|
||||
|
||||
# 2.0.0
|
||||
|
||||
#### changes
|
||||
|
||||
- Refactored architecture of workers. They may now be used as commonjs module in main context or in WebWorker context like before.
|
||||
- Updated library build targets to es2017 reducing polyfills from typescript transpilation.
|
||||
- Removed `build` directory from npm registry.
|
||||
- Updated dependencies.
|
||||
- Refactored architecture of workers. They may now be used as commonjs module in main context or in WebWorker context like before.
|
||||
- Updated library build targets to es2017 reducing polyfills from typescript transpilation.
|
||||
- Removed `build` directory from npm registry.
|
||||
- Updated dependencies.
|
||||
|
||||
# 1.1.0
|
||||
|
||||
#### changes
|
||||
|
||||
- lower default XRP reserve
|
||||
- set XRP reserve after `getInfo` call (get server info)
|
||||
- added support for `Cardano` using `Blockfrost` backend
|
||||
- fix blockbook transaction target when tx is sent to change address
|
||||
- fix blockbook (ETH) transaction target when swapping ETH <> ERC20
|
||||
- lower default XRP reserve
|
||||
- set XRP reserve after `getInfo` call (get server info)
|
||||
- added support for `Cardano` using `Blockfrost` backend
|
||||
- fix blockbook transaction target when tx is sent to change address
|
||||
- fix blockbook (ETH) transaction target when swapping ETH <> ERC20
|
||||
|
||||
# 1.0.17
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed tx.amount for btc-like sent txs
|
||||
- Added tx.totalSpent
|
||||
- Added tx.details.locktime
|
||||
- Fixed tx.amount for btc-like sent txs
|
||||
- Added tx.totalSpent
|
||||
- Added tx.details.locktime
|
||||
|
||||
# 1.0.16
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed an issue where account with non-zero balance could be marked as empty (eth)
|
||||
- Pending ETH transaction fee calculated from `ethereumSpecific` field
|
||||
- Added missing types (data) to `ethereumSpecific` field
|
||||
- Fixed an issue where account with non-zero balance could be marked as empty (eth)
|
||||
- Pending ETH transaction fee calculated from `ethereumSpecific` field
|
||||
- Added missing types (data) to `ethereumSpecific` field
|
||||
|
||||
# 1.0.15
|
||||
|
||||
#### changes
|
||||
|
||||
- Added `details` to `Transaction` object (vin, vout, size)
|
||||
- Fixed types in `BlockchainLink` event listeners
|
||||
- Move "workersDepenedecies" to regular "dependencies" in package.json
|
||||
- Update dependencies
|
||||
- Added `details` to `Transaction` object (vin, vout, size)
|
||||
- Fixed types in `BlockchainLink` event listeners
|
||||
- Move "workersDepenedecies" to regular "dependencies" in package.json
|
||||
- Update dependencies
|
||||
|
||||
# 1.0.14
|
||||
|
||||
#### changes
|
||||
|
||||
- Update dependencies
|
||||
- Update dependencies
|
||||
|
||||
# 1.0.13
|
||||
|
||||
#### changes
|
||||
|
||||
- Add `AccountTransaction.target.n` (output index) field
|
||||
- Fix `build/node/ripple-worker` (webpack configuration)
|
||||
- Update dependencies
|
||||
- Add `AccountTransaction.target.n` (output index) field
|
||||
- Fix `build/node/ripple-worker` (webpack configuration)
|
||||
- Update dependencies
|
||||
|
||||
# 1.0.12
|
||||
|
||||
#### changes
|
||||
|
||||
- Update dependencies
|
||||
- Update dependencies
|
||||
|
||||
# 1.0.11
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed `recv` transaction targets
|
||||
- Fixed `recv` transaction targets
|
||||
|
||||
# 1.0.10
|
||||
|
||||
#### changes
|
||||
|
||||
- Better clearing of `undefined` fields inside nested objects in `Response`
|
||||
- Added `misc.erc20Contract` field to getAccountInfo response (fetching info about ERC20 smart contract)
|
||||
- Better clearing of `undefined` fields inside nested objects in `Response`
|
||||
- Added `misc.erc20Contract` field to getAccountInfo response (fetching info about ERC20 smart contract)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
#### changes
|
||||
|
||||
- Added new Blockbook methods for fiat rates (`getAccountBalanceHistory`, `getCurrentFiatRates`, `getFiatRatesForTimestamps`, `getFiatRatesTickersList`)
|
||||
- Added new Blockbook methods for fiat rates (`getAccountBalanceHistory`, `getCurrentFiatRates`, `getFiatRatesForTimestamps`, `getFiatRatesTickersList`)
|
||||
|
||||
# 1.0.8
|
||||
|
||||
#### changes
|
||||
|
||||
- Fix: Ripple notification dispatched for both, sender and receiver
|
||||
- Fix: Ripple notification dispatched for both, sender and receiver
|
||||
|
||||
# 1.0.7
|
||||
|
||||
#### changes
|
||||
|
||||
- Update outdated node_modules
|
||||
- Ripple worker: different reconnection schema since RippleApi@1.6.3
|
||||
- Ripple worker: fixed bug with `minLedgerVersion` since RippleApi@1.6.3
|
||||
- Update outdated node_modules
|
||||
- Ripple worker: different reconnection schema since RippleApi@1.6.3
|
||||
- Ripple worker: fixed bug with `minLedgerVersion` since RippleApi@1.6.3
|
||||
|
||||
# 1.0.6
|
||||
|
||||
#### changes
|
||||
|
||||
- Fix for react-native workers
|
||||
- Update outdated node_modules
|
||||
- Fix for react-native workers
|
||||
- Update outdated node_modules
|
||||
|
||||
# 1.0.5
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed Ripple-lib transaction event transformation (missing ledger_index field in transaction object)
|
||||
- Fixed Ripple-lib transaction event transformation (missing ledger_index field in transaction object)
|
||||
|
||||
# 1.0.4
|
||||
|
||||
#### changes
|
||||
|
||||
- Update dependencies (ripple-lib@1.4.0) and fix reconnection issue
|
||||
- Update types for ERC20 tokens
|
||||
- Update dependencies (ripple-lib@1.4.0) and fix reconnection issue
|
||||
- Update types for ERC20 tokens
|
||||
|
||||
# 1.0.3
|
||||
|
||||
#### changes
|
||||
|
||||
- Add currently connected url to 'getInfo' response
|
||||
- Fixed getAccountInfo 'blockbook' type: empty = (transactions === 0 && unconfirmedTransactions === 0)
|
||||
- Add currently connected url to 'getInfo' response
|
||||
- Fixed getAccountInfo 'blockbook' type: empty = (transactions === 0 && unconfirmedTransactions === 0)
|
||||
|
||||
# 1.0.2
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed getTransaction response
|
||||
- Fixed getTransaction response
|
||||
|
||||
# 1.0.1
|
||||
|
||||
#### changes
|
||||
|
||||
- Fixed amount calculation in blockbook Transactions
|
||||
- Fixed amount calculation in blockbook Transactions
|
||||
|
||||
# 1.0.0-rc3
|
||||
|
||||
#### changes
|
||||
|
||||
- Added possibility to export workers as a main thread module (using webpack build)
|
||||
- ./src/workers/common.ts changed to class for multiple instance usage
|
||||
- Added possibility to export workers as a main thread module (using webpack build)
|
||||
- ./src/workers/common.ts changed to class for multiple instance usage
|
||||
|
||||
# 1.0.0-rc1
|
||||
|
||||
- First release
|
||||
- First release
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
|
||||
blockchain-link is a client and unified interface for several backends (_BE_ further on) of various blockchain networks. Currently, there are implementations for
|
||||
|
||||
- [blockbook](https://github.com/trezor/blockbook): BE developed and deployed by SatoshiLabs. Provides access to Bitcoin(like) and Ethereum(like) networks.
|
||||
- [ripple](https://xrpl.org/): third party BE that provides access to the Ripple network.
|
||||
- [blockfrost](https://blockfrost.io): third party BE that provides access to the Cardano network.
|
||||
- [electrum](https://electrumx-spesmilo.readthedocs.io/en/latest/): protocol implemented by multiple third party backends that provide access to the Bitcoin network.
|
||||
- [blockbook](https://github.com/trezor/blockbook): BE developed and deployed by SatoshiLabs. Provides access to Bitcoin(like) and Ethereum(like) networks.
|
||||
- [ripple](https://xrpl.org/): third party BE that provides access to the Ripple network.
|
||||
- [blockfrost](https://blockfrost.io): third party BE that provides access to the Cardano network.
|
||||
- [electrum](https://electrumx-spesmilo.readthedocs.io/en/latest/): protocol implemented by multiple third party backends that provide access to the Bitcoin network.
|
||||
|
||||
## Usage
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ Each component can be inspected separately in [Storybook](https://storybook.js.o
|
||||
|
||||
Icons in Suite are SVGs stored in [src/images/icons](./src/images/icons) and accessed via [icons.ts](./src/components/Icon/iconsLegacy.ts). The SVGs should follow a set of rules so that they are efficient and easy to handle:
|
||||
|
||||
- minify the icon file by an [optimizer](https://iconly.io/tools/svg-cleaner)
|
||||
- the icon should be defined by fills rather than strokes - you can use an [online tool](https://iconly.io/tools/svg-convert-stroke-to-fill) or ask the designer if it does not work properly
|
||||
- edit the SVG so that it's `width`, `height`, `opacity`, `fill` etc. are not defined - this should be handled by Suite
|
||||
- if needed, the space around the icon can be cropped using an [online tool](https://svgcrop.com/) and/or by tweaking the [viewBox](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/viewBox) property
|
||||
- minify the icon file by an [optimizer](https://iconly.io/tools/svg-cleaner)
|
||||
- the icon should be defined by fills rather than strokes - you can use an [online tool](https://iconly.io/tools/svg-convert-stroke-to-fill) or ask the designer if it does not work properly
|
||||
- edit the SVG so that it's `width`, `height`, `opacity`, `fill` etc. are not defined - this should be handled by Suite
|
||||
- if needed, the space around the icon can be cropped using an [online tool](https://svgcrop.com/) and/or by tweaking the [viewBox](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/viewBox) property
|
||||
|
||||
@@ -78,7 +78,7 @@ export const useTooltip = ({
|
||||
const [isUncontrolledTooltipOpen, setIsUncontrolledTooltipOpen] = useState(isInitiallyOpen);
|
||||
|
||||
// NOTE: if the tooltip is overall inactive (isActive === false), always hide it / never display it
|
||||
const open = isActive === false ? false : isControlledOpen ?? isUncontrolledTooltipOpen;
|
||||
const open = isActive === false ? false : (isControlledOpen ?? isUncontrolledTooltipOpen);
|
||||
const setOpen = setControlledOpen ?? setIsUncontrolledTooltipOpen;
|
||||
|
||||
const middleware = useMemo(() => {
|
||||
|
||||
@@ -1,58 +1,58 @@
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.3.2-beta.1 (c39a3f83f9)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.3.2-beta.1 (c39a3f83f9)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.3.1-beta.2 (228a130185)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.3.1-beta.2 (228a130185)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.5-beta.1 (4cfe6ff8b1)
|
||||
- fix(connect): resolve multiple transports (1c89c284c5)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.5-beta.1 (4cfe6ff8b1)
|
||||
- fix(connect): resolve multiple transports (1c89c284c5)
|
||||
|
||||
# 1.2.4
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.4-beta.1 (4f0a207d57)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.4-beta.1 (4f0a207d57)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.3-beta.1 (ce1f777320)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.2.3-beta.1 (ce1f777320)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/connect-analytics 1.1.1-beta.1 (dffb8c9c4d)
|
||||
- npm-prerelease: @trezor/connect-analytics 1.1.1-beta.1 (dffb8c9c4d)
|
||||
|
||||
# 1.0.16-beta.1
|
||||
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.14
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.13
|
||||
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(analytics): queue can be enabled when analytics object created (c0e3855a8)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(analytics): queue can be enabled when analytics object created (c0e3855a8)
|
||||
|
||||
# 1.0.5
|
||||
|
||||
- feat(connect): analytics method name and method param names (23df6d87a)
|
||||
- feat(connect): analytics method name and method param names (23df6d87a)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- feat(connect-popup): report error screen presence to analytics (6f3b77e01)
|
||||
- feat(connect-popup): report error screen presence to analytics (6f3b77e01)
|
||||
|
||||
@@ -1,262 +1,262 @@
|
||||
# 0.3.3
|
||||
|
||||
- npm-prerelease: @trezor/connect-common 0.3.3-beta.1 (3fe6d1fdb7)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- fix(connect-common): update ripple default backends (6a3dbf2b77)
|
||||
|
||||
# 0.2.5
|
||||
|
||||
- npm-prerelease: @trezor/connect-common 0.2.5-beta.1 (6314de0dad)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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)
|
||||
- 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
|
||||
- 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
|
||||
- chore(connect): move systemInfo to connect-common
|
||||
|
||||
# 0.0.13
|
||||
|
||||
- 2.6.0 FW
|
||||
- 2.6.0 FW
|
||||
|
||||
# 0.0.12
|
||||
|
||||
- feat: cardano preview testnet
|
||||
- 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
|
||||
- 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
|
||||
- 2.5.3 FW
|
||||
|
||||
### Removed
|
||||
|
||||
- 2.5.2 FW
|
||||
- 2.5.2 FW
|
||||
|
||||
# 0.0.9
|
||||
|
||||
### Added
|
||||
|
||||
- 1.11.2 & 2.5.2
|
||||
- 1.11.2 & 2.5.2
|
||||
|
||||
# 0.0.6
|
||||
|
||||
### Added
|
||||
|
||||
- 1.11.1 & 2.5.1 FW, (1.11.0 BL)
|
||||
- [storage utils](./src/storage) moved from standalone Connect repository
|
||||
- [coins.json](./files/coins.json) moved from standalone Connect repository
|
||||
- 1.11.1 & 2.5.1 FW, (1.11.0 BL)
|
||||
- [storage utils](./src/storage) moved from standalone Connect repository
|
||||
- [coins.json](./files/coins.json) moved from standalone Connect repository
|
||||
|
||||
### Removed
|
||||
|
||||
- 1.11.0 & 2.5.0 FW
|
||||
- 1.11.0 & 2.5.0 FW
|
||||
|
||||
# 0.0.5
|
||||
|
||||
### Added
|
||||
|
||||
- 1.11.0 & 2.5.0 FW
|
||||
- 1.11.0 & 2.5.0 FW
|
||||
|
||||
# 0.0.4
|
||||
|
||||
### Added
|
||||
|
||||
- 1.10.5 FW
|
||||
- 1.10.5 FW
|
||||
|
||||
@@ -16,5 +16,5 @@ A collection of example implementations of @trezor/connect in various environmen
|
||||
|
||||
Also you may explorer 3rd party @trezor/connect integrations.
|
||||
|
||||
- https://github.com/stellar/laboratory
|
||||
- https://github.com/vacuumlabs/adalite
|
||||
- https://github.com/stellar/laboratory
|
||||
- https://github.com/vacuumlabs/adalite
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
|
||||
Please note, that this example needs:
|
||||
|
||||
- Trezor bridge running
|
||||
- Device connected via USB
|
||||
- Trezor bridge running
|
||||
- Device connected via USB
|
||||
|
||||
## Install
|
||||
|
||||
|
||||
@@ -8,26 +8,26 @@ Tested in Chrome and Firefox
|
||||
|
||||
Run the commands below in order to get the MV2 and MV3 webextension ready to be loaded in the browser.
|
||||
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-web build:webextension`
|
||||
- `yarn workspace @trezor/connect-web build:inline`
|
||||
- `node packages/connect-examples/update-webextensions.js`
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-web build:webextension`
|
||||
- `yarn workspace @trezor/connect-web build:inline`
|
||||
- `node packages/connect-examples/update-webextensions.js`
|
||||
|
||||
## Browsers
|
||||
|
||||
### Chrome
|
||||
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv2` directory
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv2` directory
|
||||
|
||||
### Firefox
|
||||
|
||||
- Go to settings (top right Menu) > Add-ons
|
||||
- Manage Your Extensions > Debug Add-ons
|
||||
- Load temporary Add-on
|
||||
- Choose `packages/connect-examples/webextension-mv2/manifest-firefox.json` file
|
||||
- Go to settings (top right Menu) > Add-ons
|
||||
- Manage Your Extensions > Debug Add-ons
|
||||
- Load temporary Add-on
|
||||
- Choose `packages/connect-examples/webextension-mv2/manifest-firefox.json` file
|
||||
|
||||
# Detailed explanation
|
||||
|
||||
|
||||
@@ -8,12 +8,12 @@ Tested in Chrome
|
||||
|
||||
Run the commands below in order to get the webextension ready to be loaded in the browser.
|
||||
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-webextension build`
|
||||
- `node packages/connect-examples/update-webextensions-sw.js`
|
||||
- `yarn workspace @trezor/connect-iframe build:core-module`
|
||||
- `yarn workspace @trezor/connect-popup dev`
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-webextension build`
|
||||
- `node packages/connect-examples/update-webextensions-sw.js`
|
||||
- `yarn workspace @trezor/connect-iframe build:core-module`
|
||||
- `yarn workspace @trezor/connect-popup dev`
|
||||
|
||||
This extension is super simple and only reacts to "reload" button.
|
||||
|
||||
@@ -21,6 +21,6 @@ This extension is super simple and only reacts to "reload" button.
|
||||
|
||||
### Chrome
|
||||
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv3-sw` directory
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv3-sw` directory
|
||||
|
||||
@@ -8,16 +8,16 @@ Tested in Chrome
|
||||
|
||||
Run the commands below in order to get the MV2 and MV3 webextension ready to be loaded in the browser.
|
||||
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-web build:webextension`
|
||||
- `yarn workspace @trezor/connect-web build:inline`
|
||||
- `node packages/connect-examples/update-webextensions.js`
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-web build:webextension`
|
||||
- `yarn workspace @trezor/connect-web build:inline`
|
||||
- `node packages/connect-examples/update-webextensions.js`
|
||||
|
||||
## Browsers
|
||||
|
||||
### Chrome
|
||||
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv3` directory
|
||||
- Go to chrome://extensions
|
||||
- Enable developer mode and load unpacked
|
||||
- Choose `packages/connect-examples/webextension-mv3` directory
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -58,9 +58,9 @@ const address = await TrezorConnect.getAddress({
|
||||
|
||||
The parameters would be:
|
||||
|
||||
- **method**: `getAddress`
|
||||
- **params**: `{"coin":"btc","path":"m/44'/0'/0'/0/0"}`
|
||||
- **callback**: `https://httpbin.org/get?id=123` (as an example)
|
||||
- **method**: `getAddress`
|
||||
- **params**: `{"coin":"btc","path":"m/44'/0'/0'/0/0"}`
|
||||
- **callback**: `https://httpbin.org/get?id=123` (as an example)
|
||||
|
||||
The encoded deep link URL would then be:
|
||||
|
||||
|
||||
@@ -20,6 +20,6 @@ TrezorConnect.on(DEVICE_EVENT, event => {
|
||||
|
||||
There are more types of events. Apart from device events you may also decide to consume blockchain data available through BLOCKCHAIN_EVENT events.
|
||||
|
||||
- [device events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/device.ts)
|
||||
- [blockchain events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/blockchain.ts)
|
||||
- [transport events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/transport.ts)
|
||||
- [device events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/device.ts)
|
||||
- [blockchain events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/blockchain.ts)
|
||||
- [transport events](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/events/transport.ts)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Path
|
||||
|
||||
- `path` - `string | Array<number>` in [BIP44](https://github.com/trezor/trezor-firmware/blob/main/docs/misc/coins-bip44-paths.md#bip-44-derivation-paths) path scheme or `Array` of hardended numbers.
|
||||
- `path` - `string | Array<number>` in [BIP44](https://github.com/trezor/trezor-firmware/blob/main/docs/misc/coins-bip44-paths.md#bip-44-derivation-paths) path scheme or `Array` of hardended numbers.
|
||||
|
||||
## Examples
|
||||
|
||||
|
||||
@@ -86,20 +86,20 @@ _Device and backend connection is not required for this case since all data are
|
||||
|
||||
## Accepted output objects:
|
||||
|
||||
- `regular output`
|
||||
- `amount` - _required_ `string` value to send in satoshi
|
||||
- `address` - _required_ `string` recipient address
|
||||
- `send-max` - spends all available inputs from account
|
||||
- `type` - _required_ with `send-max` value
|
||||
- `address` - _required_ `string` recipient address
|
||||
- `opreturn` - [read more](https://trezor.io/learn/a/use-op_return-in-trezor-suite-app)
|
||||
- `type` - _required_ with `opreturn` value
|
||||
- `dataHex` - _required_ `hexadecimal string` with arbitrary data
|
||||
- `payment-noaddress` - incomplete output, target address is not known yet. used only in precompose
|
||||
- `type` - _required_ with `payment-noaddress` value
|
||||
- `amount` - _required_ `string` value to send in satoshi
|
||||
- `send-max-noaddress` - incomplete output, target address is not known yet. used only in precompose
|
||||
- `type` - _required_ with `send-max-noaddress` value
|
||||
- `regular output`
|
||||
- `amount` - _required_ `string` value to send in satoshi
|
||||
- `address` - _required_ `string` recipient address
|
||||
- `send-max` - spends all available inputs from account
|
||||
- `type` - _required_ with `send-max` value
|
||||
- `address` - _required_ `string` recipient address
|
||||
- `opreturn` - [read more](https://trezor.io/learn/a/use-op_return-in-trezor-suite-app)
|
||||
- `type` - _required_ with `opreturn` value
|
||||
- `dataHex` - _required_ `hexadecimal string` with arbitrary data
|
||||
- `payment-noaddress` - incomplete output, target address is not known yet. used only in precompose
|
||||
- `type` - _required_ with `payment-noaddress` value
|
||||
- `amount` - _required_ `string` value to send in satoshi
|
||||
- `send-max-noaddress` - incomplete output, target address is not known yet. used only in precompose
|
||||
- `type` - _required_ with `send-max-noaddress` value
|
||||
|
||||
## Examples
|
||||
|
||||
@@ -248,5 +248,5 @@ For more examples see [composeTransaction fixtures](https://github.com/trezor/tr
|
||||
|
||||
### Additional notes
|
||||
|
||||
- [1] `UI.SELECT_ACCOUNT` and `UI.SELECT_FEE` events are emitted when using `trusted mode`
|
||||
- [2] Account utxo selection, fee and change calculation is performed by [@trezor/utxo-lib](https://github.com/trezor/trezor-suite/tree/develop/packages/utxo-lib/src/compose) module
|
||||
- [1] `UI.SELECT_ACCOUNT` and `UI.SELECT_FEE` events are emitted when using `trusted mode`
|
||||
- [2] Account utxo selection, fee and change calculation is performed by [@trezor/utxo-lib](https://github.com/trezor/trezor-suite/tree/develop/packages/utxo-lib/src/compose) module
|
||||
|
||||
@@ -86,12 +86,12 @@ Represents an ordinary user transaction transferring funds, delegating stake or
|
||||
|
||||
The transaction
|
||||
|
||||
- _should_ have valid `path` property on all `inputs`
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _must not_ contain `collateralInputs`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain paths as stake credentials in certificates and withdrawals (no key hashes or script hashes)
|
||||
- _may_ contain only 1852 and 1855 paths
|
||||
- _must not_ contain 1855 witness requests when transaction is not minting/burning tokens
|
||||
- _should_ have valid `path` property on all `inputs`
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _must not_ contain `collateralInputs`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain paths as stake credentials in certificates and withdrawals (no key hashes or script hashes)
|
||||
- _may_ contain only 1852 and 1855 paths
|
||||
- _must not_ contain 1855 witness requests when transaction is not minting/burning tokens
|
||||
|
||||
#### `POOL_REGISTRATION_AS_OWNER`
|
||||
|
||||
@@ -99,13 +99,13 @@ Represents pool registration from the perspective of pool owner.
|
||||
|
||||
The transaction
|
||||
|
||||
- _must_ have `path` undefined on all `inputs` (i.e., we are not witnessing any UTxO)
|
||||
- _must_ have single Pool registration certificate
|
||||
- _must_ have single owner given by path on that certificate
|
||||
- _must not_ contain withdrawals
|
||||
- _must not_ contain token minting
|
||||
- _must not_ contain `collateralInputs`, `requiredSigners`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain only staking witness requests
|
||||
- _must_ have `path` undefined on all `inputs` (i.e., we are not witnessing any UTxO)
|
||||
- _must_ have single Pool registration certificate
|
||||
- _must_ have single owner given by path on that certificate
|
||||
- _must not_ contain withdrawals
|
||||
- _must not_ contain token minting
|
||||
- _must not_ contain `collateralInputs`, `requiredSigners`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain only staking witness requests
|
||||
|
||||
These restrictions are in place due to a possibility of maliciously signing _another_ part of the transaction with the pool owner path as we are not displaying device-owned paths on the device screen.
|
||||
|
||||
@@ -115,13 +115,13 @@ Represents a multi-sig transaction using native scripts. The transaction will on
|
||||
|
||||
The transaction
|
||||
|
||||
- _must_ have `path` undefined on all `inputs`
|
||||
- _must not_ contain output addresses given by parameters
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _must not_ contain `collateralInputs`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain script hash stake credentials in certificates and withdrawals (no paths or key hashes)
|
||||
- _may_ contain only 1854 and 1855 witness requests
|
||||
- _must not_ contain 1855 witness requests when transaction is not minting/burning tokens
|
||||
- _must_ have `path` undefined on all `inputs`
|
||||
- _must not_ contain output addresses given by parameters
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _must not_ contain `collateralInputs`, `collateralReturn`, `totalCollateral` and `referenceInputs`
|
||||
- _must_ contain script hash stake credentials in certificates and withdrawals (no paths or key hashes)
|
||||
- _may_ contain only 1854 and 1855 witness requests
|
||||
- _must not_ contain 1855 witness requests when transaction is not minting/burning tokens
|
||||
|
||||
#### `PLUTUS_TRANSACTION`
|
||||
|
||||
@@ -129,10 +129,10 @@ Represents a transactions containing Plutus script evaluation. The transaction w
|
||||
|
||||
The transaction
|
||||
|
||||
- _should_ contain `scriptDataHash` and `collateralInputs`
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _may_ contain only 1852, 1854 and 1855 required signers
|
||||
- _may_ contain only 1852, 1854 and 1855 witness requests
|
||||
- _should_ contain `scriptDataHash` and `collateralInputs`
|
||||
- _must not_ contain a pool registration certificate
|
||||
- _may_ contain only 1852, 1854 and 1855 required signers
|
||||
- _may_ contain only 1852, 1854 and 1855 witness requests
|
||||
|
||||
Note: `requiredSigners` are meant for Plutus transactions (from the blockchain point of view), but some applications utilize them for their own purposes, so we allow them in all signing modes (except for pool registration as owner).
|
||||
|
||||
@@ -149,8 +149,8 @@ Trezor supports signing of stake pool registration certificates as a pool owner.
|
||||
|
||||
Trezor supports signing transactions with auxiliary data containing a vote key registration. Vote key registrations used to follow [CIP-15](https://cips.cardano.org/cips/cip15/), which has been superseded by [CIP-36](https://cips.cardano.org/cips/cip36/). Currently, Trezor supports both CIP-15 and CIP-36 formats, the intended standard can be specified in the `format` field (with CIP-15 being the default). They differ in the following:
|
||||
|
||||
- CIP-36 allows delegating the voting power to several vote public keys with different voting power ([CardanoCVoteRegistrationDelegation](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/types/api/cardano/index.ts)) as an alternative to providing only a single vote public key. Note that Trezor Firmware supports at most 32 delegations in a single registration.
|
||||
- CIP-36 registrations contain the [votingPurpose](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/types/api/cardano/index.ts) field. The value 0 is intended for Catalyst voting and the value 1 is intended for other purposes. If no value is provided, Trezor serializes 0 by default (if the CIP-36 format is used).
|
||||
- CIP-36 allows delegating the voting power to several vote public keys with different voting power ([CardanoCVoteRegistrationDelegation](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/types/api/cardano/index.ts)) as an alternative to providing only a single vote public key. Note that Trezor Firmware supports at most 32 delegations in a single registration.
|
||||
- CIP-36 registrations contain the [votingPurpose](https://github.com/trezor/trezor-suite/blob/develop/packages/connect/src/types/api/cardano/index.ts) field. The value 0 is intended for Catalyst voting and the value 1 is intended for other purposes. If no value is provided, Trezor serializes 0 by default (if the CIP-36 format is used).
|
||||
|
||||
Trezor does not support the 1694 derivation paths at the moment.
|
||||
|
||||
|
||||
@@ -44,24 +44,24 @@ Here is a list of notable firmware ranges. `1.11.1` was the latest firmware at t
|
||||
|
||||
Firmware versions `latest` - `1.7.1`
|
||||
|
||||
- can be installed only on devices with firmware 1.6.2 and higher
|
||||
- can be installed only on devices with firmware 1.6.2 and higher
|
||||
|
||||
Firmware versions `1.6.3` - `1.0.0`
|
||||
|
||||
- can not be updated to the latest firmware using single `TrezorConnect.firmwareUpdate` call
|
||||
- if device has one of these firmwares, `TrezorConnect.firmwareUpdate` should be called with `intermediary: true` which would install a special intermediary firmware first and automatically switch device into bootloader mode making it ready to accept another firmware update
|
||||
- alternatively, you may call `TrezorConnect.firmwareUpdate` with `version: '1.6.3'` and after succeeding retry this call with `version: '1.11.1'`
|
||||
- can not be updated to the latest firmware using single `TrezorConnect.firmwareUpdate` call
|
||||
- if device has one of these firmwares, `TrezorConnect.firmwareUpdate` should be called with `intermediary: true` which would install a special intermediary firmware first and automatically switch device into bootloader mode making it ready to accept another firmware update
|
||||
- alternatively, you may call `TrezorConnect.firmwareUpdate` with `version: '1.6.3'` and after succeeding retry this call with `version: '1.11.1'`
|
||||
|
||||
Bootloader versions `latest` - `1.8.0`
|
||||
|
||||
- the first 256 byte (containing old firmware header) must sliced off the when installing a new firmware on bootloader versions in this range.
|
||||
- TrezorConnect takes care of this automatically
|
||||
- the first 256 byte (containing old firmware header) must sliced off the when installing a new firmware on bootloader versions in this range.
|
||||
- TrezorConnect takes care of this automatically
|
||||
|
||||
Firmwares `1.7.2` - `1.6.2`
|
||||
|
||||
- These can be updated to the latest firmware in one `TrezorConnect.firmwareUpdate` call (this is apparent from bullets above).
|
||||
- Old firmware headers MUST NOT be sliced off when installing new firmwares onto these versions as these versions have lower bootloader than 1.8.0.
|
||||
- For the purpose of computing firmware hash of a newly installed firmware, we **MUST** slice off old firmware headers.
|
||||
- These can be updated to the latest firmware in one `TrezorConnect.firmwareUpdate` call (this is apparent from bullets above).
|
||||
- Old firmware headers MUST NOT be sliced off when installing new firmwares onto these versions as these versions have lower bootloader than 1.8.0.
|
||||
- For the purpose of computing firmware hash of a newly installed firmware, we **MUST** slice off old firmware headers.
|
||||
|
||||
### Example
|
||||
|
||||
|
||||
@@ -105,9 +105,9 @@ Error
|
||||
Here is the reference implementation of the server-side signature verification
|
||||
written in various languages:
|
||||
|
||||
- [**C#**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.cs)
|
||||
- [**Javascript**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.js)
|
||||
- [**PHP**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.php)
|
||||
- [**Python**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.py)
|
||||
- [**Ruby**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.rb)
|
||||
- [**Go**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.go)
|
||||
- [**C#**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.cs)
|
||||
- [**Javascript**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.js)
|
||||
- [**PHP**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.php)
|
||||
- [**Python**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.py)
|
||||
- [**Ruby**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.rb)
|
||||
- [**Go**](https://github.com/trezor/trezor-suite/tree/develop/docs/packages/connect/methods/server/server.go)
|
||||
|
||||
@@ -85,7 +85,7 @@ const schemaToFields = (schema: TSchema, name = ''): Field<any>[] => {
|
||||
return schemaToFields(schema.anyOf[0]).map(field => ({
|
||||
...field,
|
||||
optional: field.optional || schema[OptionalKind] === 'Optional',
|
||||
value: !isFieldBasic(field) ? undefined : field.value ?? schema.default,
|
||||
value: !isFieldBasic(field) ? undefined : (field.value ?? schema.default),
|
||||
}));
|
||||
} else if (schema.anyOf?.length > 1) {
|
||||
return [
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
# UNRELEASED
|
||||
|
||||
- updated `@metamask/eth-sig-util` from `^7.0.1` to `^8.2.0`
|
||||
- updated `@metamask/eth-sig-util` from `^7.0.1` to `^8.2.0`
|
||||
|
||||
# 9.0.3
|
||||
|
||||
- updated `@metamask/eth-sig-util` from `^6.0.0` to `^7.0.1`
|
||||
- updated `@metamask/eth-sig-util` from `^6.0.0` to `^7.0.1`
|
||||
|
||||
# 9.0.2
|
||||
|
||||
- updated `@metamask/eth-sig-util` from `^5.0.2` to `^6.0.0`
|
||||
- updated `@metamask/eth-sig-util` from `^5.0.2` to `^6.0.0`
|
||||
|
||||
# 9.0.1
|
||||
|
||||
- updated `@metamask/eth-sig-util` from `^4.0.1` to `^5.0.2`
|
||||
- updated `@metamask/eth-sig-util` from `^4.0.1` to `^5.0.2`
|
||||
|
||||
# 9.0.0
|
||||
|
||||
- initial release
|
||||
- migrated from https://github.com/trezor/connect
|
||||
- initial release
|
||||
- migrated from https://github.com/trezor/connect
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
# UNRELEASED
|
||||
|
||||
- chore: update @stellar/stellar-sdk to ^13.2.0
|
||||
- chore: update @stellar/stellar-sdk to ^13.2.0
|
||||
|
||||
# 9.0.3
|
||||
|
||||
- chore: update @stellar/stellar-sdk to ^11.2.2
|
||||
- chore: update @stellar/stellar-sdk to ^11.2.2
|
||||
|
||||
# 9.0.2
|
||||
|
||||
- chore: update stellar-base to v10.0.0-beta.2
|
||||
- chore: update stellar-sdk to v11.0.0-beta.3
|
||||
- chore: update stellar-base to v10.0.0-beta.2
|
||||
- chore: update stellar-sdk to v11.0.0-beta.3
|
||||
|
||||
# 9.0.1
|
||||
|
||||
- updated `stellar-sdk` from `^10.1.0` to `^10.4.0`
|
||||
- memoId return type https://github.com/trezor/trezor-suite/pull/7395
|
||||
- updated `stellar-sdk` from `^10.1.0` to `^10.4.0`
|
||||
- memoId return type https://github.com/trezor/trezor-suite/pull/7395
|
||||
|
||||
# 9.0.0
|
||||
|
||||
- initial release
|
||||
- migrated from https://github.com/trezor/connect
|
||||
- initial release
|
||||
- migrated from https://github.com/trezor/connect
|
||||
|
||||
@@ -8,9 +8,9 @@ This package is bundled into web implementations. User interface is presented in
|
||||
|
||||
Contains minimum of code required to:
|
||||
|
||||
- Define `TrezorConnect` API object
|
||||
- Create and handle communication between `@trezor/connect-iframe` hosted on `https://connect.trezor.io/<version>/iframe.html`
|
||||
- Create and handle communication and lifecycle of `@trezor/connect-popup` hosted on `https://connect.trezor.io/<version>/popup.html`
|
||||
- Define `TrezorConnect` API object
|
||||
- Create and handle communication between `@trezor/connect-iframe` hosted on `https://connect.trezor.io/<version>/iframe.html`
|
||||
- Create and handle communication and lifecycle of `@trezor/connect-popup` hosted on `https://connect.trezor.io/<version>/popup.html`
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -50,10 +50,10 @@ For more instructions [refer to this document](https://github.com/trezor/trezor-
|
||||
|
||||
## Development
|
||||
|
||||
- clone repository: `git clone git@github.com:trezor/trezor-suite.git`
|
||||
- install node_modules: `yarn && yarn build:libs`
|
||||
- generate certs `yarn workspace @trezor/connect-web predev`
|
||||
- It is possible to run local dev server with iframe and popup using: `yarn workspace @trezor/connect-web dev` Note: don't forget to visit `https://localhost:8088/` and allow self-signed certificate. No UI is displayed here.
|
||||
- clone repository: `git clone git@github.com:trezor/trezor-suite.git`
|
||||
- install node_modules: `yarn && yarn build:libs`
|
||||
- generate certs `yarn workspace @trezor/connect-web predev`
|
||||
- It is possible to run local dev server with iframe and popup using: `yarn workspace @trezor/connect-web dev` Note: don't forget to visit `https://localhost:8088/` and allow self-signed certificate. No UI is displayed here.
|
||||
|
||||
## TrezorConnect Support Matrix
|
||||
|
||||
@@ -67,5 +67,5 @@ The table below details the support for different environments by TrezorConnect
|
||||
|
||||
## Key Differences
|
||||
|
||||
- **WebUSB**: Allows direct communication with Trezor devices via the browser. Supported by most modern browsers but may have limitations on mobile devices and is not supported by Safari.
|
||||
- **Trezor Bridge**: A service that runs with Trezor Suite or Standalone that facilitates communication between your Trezor device and a web browser. Required for browsers that do not support WebUSB or for a more stable connection on desktop environments.
|
||||
- **WebUSB**: Allows direct communication with Trezor devices via the browser. Supported by most modern browsers but may have limitations on mobile devices and is not supported by Safari.
|
||||
- **Trezor Bridge**: A service that runs with Trezor Suite or Standalone that facilitates communication between your Trezor device and a web browser. Required for browsers that do not support WebUSB or for a more stable connection on desktop environments.
|
||||
|
||||
@@ -122,8 +122,9 @@
|
||||
position: relative;
|
||||
min-height: 500px;
|
||||
min-width: 328px;
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',
|
||||
Arial, sans-serif;
|
||||
font-family:
|
||||
-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
|
||||
sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #494949;
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
|
||||
The `@trezor/connect-webextension` package provides an implementation of `@trezor/connect` designed specifically for use within web extensions. Key features include:
|
||||
|
||||
- Compatibility with service worker environments.
|
||||
- Full access to the TrezorConnect API.
|
||||
- Automatic handling of pop-up windows for user approvals on trezor.io.
|
||||
- Direct response delivery to the calling script.
|
||||
- Compatibility with service worker environments.
|
||||
- Full access to the TrezorConnect API.
|
||||
- Automatic handling of pop-up windows for user approvals on trezor.io.
|
||||
- Direct response delivery to the calling script.
|
||||
|
||||
## Using the Library
|
||||
|
||||
@@ -76,16 +76,16 @@ To ensure your extension is displayed with its name rather than its ID, you need
|
||||
|
||||
## Examples
|
||||
|
||||
- [Simple example](https://github.com/trezor/trezor-suite/tree/develop/packages/connect-examples/webextension-mv3-sw)
|
||||
- [ES6 and TypeScript example](https://github.com/trezor/trezor-suite/tree/develop/packages/connect-examples/webextension-mv3-sw-ts)
|
||||
- [Simple example](https://github.com/trezor/trezor-suite/tree/develop/packages/connect-examples/webextension-mv3-sw)
|
||||
- [ES6 and TypeScript example](https://github.com/trezor/trezor-suite/tree/develop/packages/connect-examples/webextension-mv3-sw-ts)
|
||||
|
||||
## Development
|
||||
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-webextension build`
|
||||
- `yarn workspace @trezor/connect-iframe build:core-module`
|
||||
- `yarn workspace @trezor/connect-popup dev`
|
||||
- `yarn`
|
||||
- `yarn build:libs`
|
||||
- `yarn workspace @trezor/connect-webextension build`
|
||||
- `yarn workspace @trezor/connect-iframe build:core-module`
|
||||
- `yarn workspace @trezor/connect-popup dev`
|
||||
|
||||
After completing these steps, you can import from @trezor/connect-webextension or directly use the built file `build/trezor-connect-webextension.js`.
|
||||
The popup will run on your localhost, and you can specify it in the `TrezorConnect.init({ connectSrc: ... })`.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -38,8 +38,8 @@ For more instructions [refer to this document](https://github.com/trezor/trezor-
|
||||
|
||||
Since version 9 we are adopting a new versioning strategy. With every release, we are going to update two urls
|
||||
|
||||
- A) The latest release will always be available on https://connect.trezor.io/9/trezor-connect.js.
|
||||
- B) For those who like to have more control over their dependencies, there will be also a new url created in form of https://connect.trezor.io/9.1../trezor-connect.js. Please note that these endpoints will not receive any further updates including security updates.
|
||||
- A) The latest release will always be available on https://connect.trezor.io/9/trezor-connect.js.
|
||||
- B) For those who like to have more control over their dependencies, there will be also a new url created in form of https://connect.trezor.io/9.1../trezor-connect.js. Please note that these endpoints will not receive any further updates including security updates.
|
||||
|
||||
Version 9 is available as `@trezor/connect` and `@trezor/connect-web` npm packages.
|
||||
|
||||
@@ -53,8 +53,8 @@ Current major version 9 is being developed on top of `develop` branch. When ther
|
||||
|
||||
Minor versions are released when there are:
|
||||
|
||||
- considerable additions to API
|
||||
- changes in npm package
|
||||
- considerable additions to API
|
||||
- changes in npm package
|
||||
|
||||
### Patch version
|
||||
|
||||
|
||||
@@ -326,7 +326,7 @@ export default class ComposeTransaction extends AbstractMethod<'composeTransacti
|
||||
coinInfo,
|
||||
outputs,
|
||||
sortingStrategy:
|
||||
skipPermutation === true ? 'none' : sortingStrategy ?? DEFAULT_SORTING_STRATEGY,
|
||||
skipPermutation === true ? 'none' : (sortingStrategy ?? DEFAULT_SORTING_STRATEGY),
|
||||
});
|
||||
await composer.init(blockchain);
|
||||
|
||||
|
||||
@@ -143,7 +143,7 @@ export class BackendManager {
|
||||
private patchCoinInfo(coinInfo: CoinInfo): CoinInfo {
|
||||
const custom = this.custom[coinInfo.shortcut];
|
||||
const preferred = this.preferred[coinInfo.shortcut];
|
||||
const url = preferred ? [preferred] : custom?.url ?? coinInfo.blockchainLink?.url;
|
||||
const url = preferred ? [preferred] : (custom?.url ?? coinInfo.blockchainLink?.url);
|
||||
|
||||
return {
|
||||
...coinInfo,
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
# 1.1.2
|
||||
|
||||
- npm-prerelease: @trezor/crypto-utils 1.1.2-beta.1 (009f05e6b3)
|
||||
- npm-prerelease: @trezor/crypto-utils 1.1.2-beta.1 (009f05e6b3)
|
||||
|
||||
# 1.1.1
|
||||
|
||||
- npm-prerelease: @trezor/crypto-utils 1.1.1-beta.1 (9c426b4ffa)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/crypto-utils 1.1.1-beta.1 (9c426b4ffa)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.1.0
|
||||
|
||||
- npm-prerelease: @trezor/crypto-utils 1.0.1-beta.1 (a23a8c565e)
|
||||
- chore(crypto-utils): `@trezor/crypto-utils` as public package (a541b92546)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd3)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19c)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f8)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80f)
|
||||
- chore(deps): unify typescript to 4.9.5 in all packages (66a50fcdd7)
|
||||
- chore: crypto-utils package (7b08d28f57)
|
||||
- npm-prerelease: @trezor/crypto-utils 1.0.1-beta.1 (a23a8c565e)
|
||||
- chore(crypto-utils): `@trezor/crypto-utils` as public package (a541b92546)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd3)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19c)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f8)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80f)
|
||||
- chore(deps): unify typescript to 4.9.5 in all packages (66a50fcdd7)
|
||||
- chore: crypto-utils package (7b08d28f57)
|
||||
|
||||
# 1.0.0
|
||||
|
||||
@@ -1,47 +1,47 @@
|
||||
# 1.0.2
|
||||
|
||||
- npm-prerelease: @trezor/device-utils 1.0.2-beta.1 (608436928d)
|
||||
- npm-prerelease: @trezor/device-utils 1.0.2-beta.1 (608436928d)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- fix(device-utils): add tsx as dev dependency (75e2cf82af)
|
||||
- npm-prerelease: @trezor/device-utils 1.0.1-beta.1 (65fb5950b5)
|
||||
- chore(device-utils): prepare setup for npm release (e4c32edb37)
|
||||
- chore: more refactorign to remove connect from components (3736dec0a5)
|
||||
- chore: move DeviceModelInternal to device-utils (0bcf666672)
|
||||
- chore(monorepo): remove dependency on connect in components and device-utils (465f40a072)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore(device-utils, suite): add FirmwareVersionString type (94a4485b9f)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- chore(device-utils): acccept only PartialDevice as param (4764484da9)
|
||||
- chore(device-utils): stricter getFirmwareVersion return type (7b5d0b3de0)
|
||||
- test(device-utils): add unit tests for pickByDeviceModel (cc6a036954)
|
||||
- feat(device-utils): allow passing null as an option value to pickByDeviceModel (0df7a3b455)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(connect): improve type for releases and pick model (996e96de14)
|
||||
- feat(connect): basic T3T1 support in types (1bc4569136)
|
||||
- chore(suite): autofix newlines (c82455e746)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd3)
|
||||
- chore: remove test scripts for packages without tests (01e33b7145)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19c)
|
||||
- fix(device-utils): fix firmware version array util (d1c3c056fe)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f8)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80f)
|
||||
- feat(suite-native): device info detail (#9979) (74faef71bd)
|
||||
- fix(suite): change condition so that btc-only device with universal fw updates to universal (a0c39feaf7)
|
||||
- feat(device-utils): bitcoin only device helper (184647a939)
|
||||
- feat(connect): trezor name in device object (a0ecb66390)
|
||||
- chore(device-utils): use connect Device type (19309be6d7)
|
||||
- chore(connect): change FirmwareType from type to enum (45bf58946c)
|
||||
- chore(suite): move getFirmwareType from device-utils to Suite (be17cf8231)
|
||||
- chore(suite): bitcoin-only fw util (0e26840d8f)
|
||||
- chore: remove some unecessary build:lib (0a5d8267c4)
|
||||
- chore(device-utils): remove DeviceModel enum and getDeviceModel (82a0db70db)
|
||||
- feat(connect): reexport device model internal enum and use (a832fde9ff)
|
||||
- feat(device-utils): internal_model, display name utility in device-utils (d39278cfd9)
|
||||
- chore(suite): name model R to model T2B1 (abe486b471)
|
||||
- chore(deps): unify typescript to 4.9.5 in all packages (66a50fcdd7)
|
||||
- feat(suite): device model utils + config changes (6baf231ed0)
|
||||
- chore: build:lib 3 connect deps to fix desktop app build (1f5fa637aa)
|
||||
- feat(connect): send analytics data from connect core (f7b5e27ce7)
|
||||
- feat(@trezor/device-utils): move device utils from suite to separate pkg (c755aeecbe)
|
||||
- fix(device-utils): add tsx as dev dependency (75e2cf82af)
|
||||
- npm-prerelease: @trezor/device-utils 1.0.1-beta.1 (65fb5950b5)
|
||||
- chore(device-utils): prepare setup for npm release (e4c32edb37)
|
||||
- chore: more refactorign to remove connect from components (3736dec0a5)
|
||||
- chore: move DeviceModelInternal to device-utils (0bcf666672)
|
||||
- chore(monorepo): remove dependency on connect in components and device-utils (465f40a072)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore(device-utils, suite): add FirmwareVersionString type (94a4485b9f)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- chore(device-utils): acccept only PartialDevice as param (4764484da9)
|
||||
- chore(device-utils): stricter getFirmwareVersion return type (7b5d0b3de0)
|
||||
- test(device-utils): add unit tests for pickByDeviceModel (cc6a036954)
|
||||
- feat(device-utils): allow passing null as an option value to pickByDeviceModel (0df7a3b455)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(connect): improve type for releases and pick model (996e96de14)
|
||||
- feat(connect): basic T3T1 support in types (1bc4569136)
|
||||
- chore(suite): autofix newlines (c82455e746)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd3)
|
||||
- chore: remove test scripts for packages without tests (01e33b7145)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19c)
|
||||
- fix(device-utils): fix firmware version array util (d1c3c056fe)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f8)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80f)
|
||||
- feat(suite-native): device info detail (#9979) (74faef71bd)
|
||||
- fix(suite): change condition so that btc-only device with universal fw updates to universal (a0c39feaf7)
|
||||
- feat(device-utils): bitcoin only device helper (184647a939)
|
||||
- feat(connect): trezor name in device object (a0ecb66390)
|
||||
- chore(device-utils): use connect Device type (19309be6d7)
|
||||
- chore(connect): change FirmwareType from type to enum (45bf58946c)
|
||||
- chore(suite): move getFirmwareType from device-utils to Suite (be17cf8231)
|
||||
- chore(suite): bitcoin-only fw util (0e26840d8f)
|
||||
- chore: remove some unecessary build:lib (0a5d8267c4)
|
||||
- chore(device-utils): remove DeviceModel enum and getDeviceModel (82a0db70db)
|
||||
- feat(connect): reexport device model internal enum and use (a832fde9ff)
|
||||
- feat(device-utils): internal_model, display name utility in device-utils (d39278cfd9)
|
||||
- chore(suite): name model R to model T2B1 (abe486b471)
|
||||
- chore(deps): unify typescript to 4.9.5 in all packages (66a50fcdd7)
|
||||
- feat(suite): device model utils + config changes (6baf231ed0)
|
||||
- chore: build:lib 3 connect deps to fix desktop app build (1f5fa637aa)
|
||||
- feat(connect): send analytics data from connect core (f7b5e27ce7)
|
||||
- feat(@trezor/device-utils): move device utils from suite to separate pkg (c755aeecbe)
|
||||
|
||||
@@ -1,100 +1,100 @@
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.3.3-beta.1 (ffd8f0ab80)
|
||||
- feat(env-utils): add getCpuArch (b3deeb546b)
|
||||
- feat(env-utils): implement new getOsVersion, deprecate old one (1973c02f62)
|
||||
- chore(env-utils): narrow down types of is platform functions (35c943abd9)
|
||||
- chore(suite): ua-parser-js@2.0.3 (840d5c6202)
|
||||
- npm-prerelease: @trezor/env-utils 1.3.3-beta.1 (ffd8f0ab80)
|
||||
- feat(env-utils): add getCpuArch (b3deeb546b)
|
||||
- feat(env-utils): implement new getOsVersion, deprecate old one (1973c02f62)
|
||||
- chore(env-utils): narrow down types of is platform functions (35c943abd9)
|
||||
- chore(suite): ua-parser-js@2.0.3 (840d5c6202)
|
||||
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.3.2-beta.1 (d3b393f591)
|
||||
- npm-prerelease: @trezor/env-utils 1.3.2-beta.1 (d3b393f591)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.3.1-beta.1 (c4c43edca8)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/env-utils 1.3.1-beta.1 (c4c43edca8)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.3.0-beta.1 (7a125b0091)
|
||||
- npm-prerelease: @trezor/env-utils 1.2.2-beta.1 (cc55141299)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- npm-prerelease: @trezor/env-utils 1.3.0-beta.1 (7a125b0091)
|
||||
- npm-prerelease: @trezor/env-utils 1.2.2-beta.1 (cc55141299)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.2.1-beta.1 (571dd950c6)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- npm-prerelease: @trezor/env-utils 1.2.1-beta.1 (571dd950c6)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/env-utils 1.1.1-beta.1 (bbcfc75743)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/env-utils 1.1.1-beta.1 (bbcfc75743)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
|
||||
# 1.0.18-beta.1
|
||||
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(env-utils): make `expo-constants` optional peer dependency (b51e9e07f5)
|
||||
- fix(env-utils): move publicKey from `@suite-common/wallet-constants` (0d54971f34)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(env-utils): make `expo-constants` optional peer dependency (b51e9e07f5)
|
||||
- fix(env-utils): move publicKey from `@suite-common/wallet-constants` (0d54971f34)
|
||||
|
||||
# 1.0.15
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.14
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- feat(suite-native): expo eas (#10898) (02009f17c)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- feat(suite-native): expo eas (#10898) (02009f17c)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
|
||||
# 1.0.12
|
||||
|
||||
- chore: unify isCodesignBuild condition (fb80938756)
|
||||
- chore(mobile): Expo migration (#10769) (bb37005e6b)
|
||||
- chore: unify isCodesignBuild condition (fb80938756)
|
||||
- chore(mobile): Expo migration (#10769) (bb37005e6b)
|
||||
|
||||
# 1.0.11
|
||||
|
||||
- chore(suite): add fiat rates to common (e2fb9ea19)
|
||||
- chore(suite): add fiat rates to common (e2fb9ea19)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- fix(suite-native): use correct message config on mobile (#10184) (082592a2b)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- fix(suite-native): use correct message config on mobile (#10184) (082592a2b)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- chore(env-utils): build:lib (044490ef5)
|
||||
- chore(env-utils): build:lib (044490ef5)
|
||||
|
||||
# 1.0.5
|
||||
|
||||
- chore: remove some unecessary build:lib (0a5d8267c)
|
||||
- chore: remove some unecessary build:lib (0a5d8267c)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- fix(env-utils): prevent react-native dependencies to be bundled in suite-desktop (818d91047)
|
||||
- chore(dependencies): remove unnecessary exception for no-extraneous-dependencies (21f1424b0)
|
||||
- chore(suite): add suite version and commit hash to env utils (aec3d373d)
|
||||
- chore(suite): move env util from suite to trezor package to make it reusable for native (c22aa6c31)
|
||||
- fix(env-utils): prevent react-native dependencies to be bundled in suite-desktop (818d91047)
|
||||
- chore(dependencies): remove unnecessary exception for no-extraneous-dependencies (21f1424b0)
|
||||
- chore(suite): add suite version and commit hash to env utils (aec3d373d)
|
||||
- chore(suite): move env util from suite to trezor package to make it reusable for native (c22aa6c31)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- 9b9b72a01 chore(env-utils): add tsx as dev dependency
|
||||
- a1d75cb01 chore(env-utils): npm scripts
|
||||
- 9b9b72a01 chore(env-utils): add tsx as dev dependency
|
||||
- a1d75cb01 chore(env-utils): npm scripts
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- first release
|
||||
- first release
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# 1.0.1
|
||||
|
||||
- most of the proxy logic was moved from preload context (`exposeIpcProxy` entry point) to renderer context (`createIpcProxy` entry point) which allows to compare listener functions by reference (unlike in preload context)
|
||||
- in `window.ipcProxy` there is now exposed only small `IpcProxyApi` object instead of whole proxy factory
|
||||
- most of the proxy logic was moved from preload context (`exposeIpcProxy` entry point) to renderer context (`createIpcProxy` entry point) which allows to compare listener functions by reference (unlike in preload context)
|
||||
- in `window.ipcProxy` there is now exposed only small `IpcProxyApi` object instead of whole proxy factory
|
||||
|
||||
# 1.0.0
|
||||
|
||||
@@ -1,185 +1,185 @@
|
||||
# 1.3.4
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.3.4-beta.1 (4664dfed22)
|
||||
- fix(connect): Failure code properly typed (fb14734ac4)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.4-beta.1 (4664dfed22)
|
||||
- fix(connect): Failure code properly typed (fb14734ac4)
|
||||
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.3.3-beta.1 (3f079b57d3)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.3-beta.1 (3f079b57d3)
|
||||
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.3.2-beta.2 (68749e6701)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- fix(protobuf): fix DeviceModelInternal read patch path (3bdcbfc508)
|
||||
- chore(protobuf): exclude nostr (b18b8da051)
|
||||
- feat(protobuf): load definitions (f4f4fadcfc)
|
||||
- chore: move DeviceModelInternal to device-utils (0bcf666672)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.2-beta.2 (68749e6701)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- fix(protobuf): fix DeviceModelInternal read patch path (3bdcbfc508)
|
||||
- chore(protobuf): exclude nostr (b18b8da051)
|
||||
- feat(protobuf): load definitions (f4f4fadcfc)
|
||||
- chore: move DeviceModelInternal to device-utils (0bcf666672)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.3.1-beta.1 (6256d4a813)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.1-beta.1 (6256d4a813)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- chore(protobuf): update protobuf (fb892d5db8)
|
||||
- Revert chore(transport): move long dep to protobuf package and unify its version with protobufjs (4a6b98bcf3)
|
||||
- chore(transport): move long dep to protobuf package and unify its version with protobufjs (3ab195cf19)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.0-beta.1 (736c4b6620)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.7-beta.1 (36972ab0e7)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- chore(protobuf): update definitions (add `ResetDevice.entropy_check`) (3737c9ea00)
|
||||
- feat(connect): introduce internal_model UNKNOWN for non-standard models (289ebe9dde)
|
||||
- chore(protobuf): update protobuf (fb892d5db8)
|
||||
- Revert chore(transport): move long dep to protobuf package and unify its version with protobufjs (4a6b98bcf3)
|
||||
- chore(transport): move long dep to protobuf package and unify its version with protobufjs (3ab195cf19)
|
||||
- npm-prerelease: @trezor/protobuf 1.3.0-beta.1 (736c4b6620)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.7-beta.1 (36972ab0e7)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- chore(protobuf): update definitions (add `ResetDevice.entropy_check`) (3737c9ea00)
|
||||
- feat(connect): introduce internal_model UNKNOWN for non-standard models (289ebe9dde)
|
||||
|
||||
# 1.2.6
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.2.6-beta.1 (d2bc8b3b1a)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.6-beta.1 (d2bc8b3b1a)
|
||||
|
||||
# 1.2.5
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.2.5-beta.1 (a3f1b9247e)
|
||||
- chore(protobuf): update protobuf definitions (display type enum added) (3818a30d06)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.5-beta.1 (a3f1b9247e)
|
||||
- chore(protobuf): update protobuf definitions (display type enum added) (3818a30d06)
|
||||
|
||||
# 1.2.4
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.2.4-beta.1 (cf18864248)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.4-beta.1 (cf18864248)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.2.3-beta.2 (c965336138)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- chore: add no-empty as it will became part of recommanded (ef2dd42a5e)
|
||||
- feat(protobuf): add t3w1 internal_model (1f8a09066a)
|
||||
- feat(suite): images, logic, videos for T3W1 (9ef409912d)
|
||||
- feat(protobuf): add message for LoadDevice (950a3d04ef)
|
||||
- feat(protobuf): stop skipping LoadDevice (3419d536e4)
|
||||
- chore(protobuf): remove `MessageType_` prefix from `MessageType` enum (f620e40f2a)
|
||||
- chore(protobuf): build types script as module (324ba30921)
|
||||
- fix(protobuf): skip benchmark messages (888774fc19)
|
||||
- fix(protobuf): repo path in build script (5396d67588)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.3-beta.1 (0b4f84fa7d)
|
||||
- chore(protobuf): remove unused definitions (monero, webauthn) (66ae488690)
|
||||
- chore(protobuf): build types scripts and patches `js` > `ts` (326260c73c)
|
||||
- feat(protobuf): build definitions using protobufjs package (000870b9ab)
|
||||
- chore(protobuf): update messages.json (71bbde850b)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.3-beta.2 (c965336138)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- chore: add no-empty as it will became part of recommanded (ef2dd42a5e)
|
||||
- feat(protobuf): add t3w1 internal_model (1f8a09066a)
|
||||
- feat(suite): images, logic, videos for T3W1 (9ef409912d)
|
||||
- feat(protobuf): add message for LoadDevice (950a3d04ef)
|
||||
- feat(protobuf): stop skipping LoadDevice (3419d536e4)
|
||||
- chore(protobuf): remove `MessageType_` prefix from `MessageType` enum (f620e40f2a)
|
||||
- chore(protobuf): build types script as module (324ba30921)
|
||||
- fix(protobuf): skip benchmark messages (888774fc19)
|
||||
- fix(protobuf): repo path in build script (5396d67588)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.3-beta.1 (0b4f84fa7d)
|
||||
- chore(protobuf): remove unused definitions (monero, webauthn) (66ae488690)
|
||||
- chore(protobuf): build types scripts and patches `js` > `ts` (326260c73c)
|
||||
- feat(protobuf): build definitions using protobufjs package (000870b9ab)
|
||||
- chore(protobuf): update messages.json (71bbde850b)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.2.1-beta.1 (3cfd038db1)
|
||||
- chore(connect): update @sinclair/typebox-codegen 0.8.13=>0.10.4 (6cd1fdc8af)
|
||||
- chore(deps): update protobuf-js 7.2.6=>7.4.0 (0b937d6fe7)
|
||||
- chore(deps): update various patch versions deps (ed3e9bfda7)
|
||||
- npm-prerelease: @trezor/protobuf 1.2.1-beta.1 (3cfd038db1)
|
||||
- chore(connect): update @sinclair/typebox-codegen 0.8.13=>0.10.4 (6cd1fdc8af)
|
||||
- chore(deps): update protobuf-js 7.2.6=>7.4.0 (0b937d6fe7)
|
||||
- chore(deps): update various patch versions deps (ed3e9bfda7)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/protobuf 1.1.1-beta.2 (0639cf5bdb)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/protobuf 1.1.1-beta.1 (8c9f17688c)
|
||||
- chore(connect): add basic types support for T3B1 (131c4af73a)
|
||||
- feat(protobuf): update protobuf messages for newest version (f8d8a23a85)
|
||||
- npm-prerelease: @trezor/protobuf 1.1.1-beta.2 (0639cf5bdb)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/protobuf 1.1.1-beta.1 (8c9f17688c)
|
||||
- chore(connect): add basic types support for T3B1 (131c4af73a)
|
||||
- feat(protobuf): update protobuf messages for newest version (f8d8a23a85)
|
||||
|
||||
# 1.0.14-beta.2
|
||||
|
||||
- chore(suite): unused package dependencies removed (f7907e1496)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(suite): unused package dependencies removed (f7907e1496)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.14-beta.1
|
||||
|
||||
- feat(suite): Add adding a new shamir group into an existing setup (e9a0425183)
|
||||
- feat(connect): Conway certificates (ab003ce04f)
|
||||
- fix(suite): make default 1:1 for adding backup from settings + sync protobuffs (b08d5602fb)
|
||||
- feat(suite): Add adding a new shamir group into an existing setup (e9a0425183)
|
||||
- feat(connect): Conway certificates (ab003ce04f)
|
||||
- fix(suite): make default 1:1 for adding backup from settings + sync protobuffs (b08d5602fb)
|
||||
|
||||
# 1.0.13-beta.1
|
||||
|
||||
- fix(protobuf): deterministic protobuf order in generated file (7bdc2ebecc)
|
||||
- fix(scripts): probuf update separate repository + fix situation when someone force-pushes the FW branch (9bdad31d67)
|
||||
- fix(protobuf): add git fetch to update script (be86c395ad)
|
||||
- feat(connect): update protobuf messages (41bff13bc1)
|
||||
- fix(protobuf): deterministic protobuf order in generated file (7bdc2ebecc)
|
||||
- fix(scripts): probuf update separate repository + fix situation when someone force-pushes the FW branch (9bdad31d67)
|
||||
- fix(protobuf): add git fetch to update script (be86c395ad)
|
||||
- feat(connect): update protobuf messages (41bff13bc1)
|
||||
|
||||
# 1.0.12
|
||||
|
||||
- chore(protobuf): ability to build protobuf messages from the specified branch (7a6babb818)
|
||||
- feat(protobuf): add T3T1 internal_model patch (6a6aea725e)
|
||||
- fix(protocol): encoding repeated enum (eaac0b12e8)
|
||||
- feat(protocol): encode/decode messageType as string (ae3211ab6a)
|
||||
- fix(protobuf): clean up type of `backup_type` in schema (19b7bb27c1)
|
||||
- chore(protobuf): ability to build protobuf messages from the specified branch (7a6babb818)
|
||||
- feat(protobuf): add T3T1 internal_model patch (6a6aea725e)
|
||||
- fix(protocol): encoding repeated enum (eaac0b12e8)
|
||||
- feat(protocol): encode/decode messageType as string (ae3211ab6a)
|
||||
- fix(protobuf): clean up type of `backup_type` in schema (19b7bb27c1)
|
||||
|
||||
# 1.0.11
|
||||
|
||||
- chore(connect-explorer-nextra): code cleanup, yarn resolutions (a0e511f1fd)
|
||||
- feat(connect-explorer-nextra): params table for viewing schemas (2ed3a5b366)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore(connect-explorer-nextra): code cleanup, yarn resolutions (a0e511f1fd)
|
||||
- feat(connect-explorer-nextra): params table for viewing schemas (2ed3a5b366)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.10
|
||||
|
||||
- fix(protobuf): undefined in messageToJSON (5fa61491e)
|
||||
- chore(connect): format json after re-generation (350daea70)
|
||||
- feat(connect): update protobuf (450acf915)
|
||||
- fix(protobuf): undefined in messageToJSON (5fa61491e)
|
||||
- chore(connect): format json after re-generation (350daea70)
|
||||
- feat(connect): update protobuf (450acf915)
|
||||
|
||||
# 1.0.9
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build from protobuf (#11288) (11ffd941e)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(protobuf): update with Stellar related messages (22babdcf6)
|
||||
- chore(protobuf): add language related messages (36ca33a67)
|
||||
- chore(protobuf): recreate messages files (c06b3ee47)
|
||||
- chore(protobuf): add eslint --fix to update:protobuf (db58d01b4)
|
||||
- fix(protobuf): codegen devdependencies (0632e9ced)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: remove test scripts for packages without tests (01e33b714)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build from protobuf (#11288) (11ffd941e)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(protobuf): update with Stellar related messages (22babdcf6)
|
||||
- chore(protobuf): add language related messages (36ca33a67)
|
||||
- chore(protobuf): recreate messages files (c06b3ee47)
|
||||
- chore(protobuf): add eslint --fix to update:protobuf (db58d01b4)
|
||||
- fix(protobuf): codegen devdependencies (0632e9ced)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: remove test scripts for packages without tests (01e33b714)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
|
||||
# 1.0.8
|
||||
|
||||
- fix(suite): navbar positioning (icons) (123882a387)
|
||||
- fix(suite): navbar positioning (icons) (123882a387)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- chore(protobuf): lint fix (cebcf0256)
|
||||
- fix(protobuf): inaccuracy in `TxOutputType` (c78cd9ad2)
|
||||
- refactor(connect): validation in API methods (0c035c26a)
|
||||
- feat(protobuf): support sint in proto codegen (4fd7808ac)
|
||||
- feat(connect): assert message schema in every typedCall (44430e47f)
|
||||
- test(protobuf): check equivalence of generated Protobuf messages types (25420c4e8)
|
||||
- feat(protobuf): use protobuf messages based on schema chore(protobuf): remove `bytebuffer` dependency fix(connect): use assert, update TS references, lint issue fix(connect-explorer): remove old references in tsconfig fix: update yarn, schema after rebase fix: update yarn lock after rebase (ad086e462)
|
||||
- chore(protobuf): lint fix (cebcf0256)
|
||||
- fix(protobuf): inaccuracy in `TxOutputType` (c78cd9ad2)
|
||||
- refactor(connect): validation in API methods (0c035c26a)
|
||||
- feat(protobuf): support sint in proto codegen (4fd7808ac)
|
||||
- feat(connect): assert message schema in every typedCall (44430e47f)
|
||||
- test(protobuf): check equivalence of generated Protobuf messages types (25420c4e8)
|
||||
- feat(protobuf): use protobuf messages based on schema chore(protobuf): remove `bytebuffer` dependency fix(connect): use assert, update TS references, lint issue fix(connect-explorer): remove old references in tsconfig fix: update yarn, schema after rebase fix: update yarn lock after rebase (ad086e462)
|
||||
|
||||
# 1.0.4
|
||||
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- feat(suite): add Solana support (f2a89b34f)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- feat(connect): add support for solana FW interactions (3d9c703a5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- feat(connect): add support for solana FW interactions (3d9c703a5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
|
||||
# 1.0.2
|
||||
|
||||
- chore(transport): update protobuf (3ecb44412)
|
||||
- chore(transport): update protobuf (3ecb44412)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- chore(protobuf): update protobuf messages (9a9b193e7)
|
||||
- chore(protobuf,protocol): missing fields in package.json (27a5e8ab4)
|
||||
- chore(protobuf): update protobuf messages (9a9b193e7)
|
||||
- chore(protobuf,protocol): missing fields in package.json (27a5e8ab4)
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- chore(protobuf): update messages.json (d4542de357)
|
||||
- deps(protobuf): add protobufjs-cli package (b7b5f8005a)
|
||||
- chore: introduce protobuf and protocol packages (072042e772)
|
||||
- chore(protobuf): update messages.json (d4542de357)
|
||||
- deps(protobuf): add protobufjs-cli package (b7b5f8005a)
|
||||
- chore: introduce protobuf and protocol packages (072042e772)
|
||||
|
||||
@@ -22,10 +22,10 @@ for (de)serialization logic and to generate Typescript definitions.
|
||||
|
||||
The JSON is transformed to TypeScript definitions by a script in `scripts/protobuf-types.js`. The script also applies 'patches' I.e. after-the-fact fixes manually described in `scripts/protobuf-patches.js`. The patches compensate for/fix
|
||||
|
||||
- The source `.proto` definitions that do not reflect the actual business logic. Usually fields marked as required which are in fact optional.
|
||||
- Fields typed as `uint32`, `uint64`, `sint32`, `sint64` in protobuf that need to be represented as strings in runtime because of javascript number's insufficient range. Runtime conversion is handled automatically by `@trezor/transport`.
|
||||
- Similarly, fields typed as `bytes` in protobuf may be represented as hexadecimal `string`, `Buffer`, `Uint8Array` or `Array<number>` in runtime.
|
||||
- Optional protobuf fields that get typed as `<T> | undefined` but are in fact deserialized as `<T> | null`. This could be handled globally by `@trezor/transport`. The patches exist mainly for historical reasons.
|
||||
- The source `.proto` definitions that do not reflect the actual business logic. Usually fields marked as required which are in fact optional.
|
||||
- Fields typed as `uint32`, `uint64`, `sint32`, `sint64` in protobuf that need to be represented as strings in runtime because of javascript number's insufficient range. Runtime conversion is handled automatically by `@trezor/transport`.
|
||||
- Similarly, fields typed as `bytes` in protobuf may be represented as hexadecimal `string`, `Buffer`, `Uint8Array` or `Array<number>` in runtime.
|
||||
- Optional protobuf fields that get typed as `<T> | undefined` but are in fact deserialized as `<T> | null`. This could be handled globally by `@trezor/transport`. The patches exist mainly for historical reasons.
|
||||
|
||||
All these steps are done manually and all the generated files are tracked in git. It's also not uncommon to circumvent
|
||||
some step by e.g. generating the messages.json file not from the Common submodule but directly from the firmware repo.
|
||||
|
||||
@@ -1,87 +1,87 @@
|
||||
# 1.2.5
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.2.5-beta.1 (fe8f4dc278)
|
||||
- npm-prerelease: @trezor/protocol 1.2.5-beta.1 (fe8f4dc278)
|
||||
|
||||
# 1.2.4
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.2.4-beta.2 (5ea9011fdb)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- feat(protocol): add `protocol-v2` (7ff4f19571)
|
||||
- npm-prerelease: @trezor/protocol 1.2.4-beta.2 (5ea9011fdb)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- feat(protocol): add `protocol-v2` (7ff4f19571)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.2.3-beta.1 (71c1cd7ee3)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/protocol 1.2.3-beta.1 (71c1cd7ee3)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.2.2
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.2.2-beta.1 (7bfeed7f69)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
- npm-prerelease: @trezor/protocol 1.2.2-beta.1 (7bfeed7f69)
|
||||
- chore: remove glboal nx/workspace link scripts (it shall be run only globally) + resolve ugly igonores for devDependencies in import/no-extraneous-dependencies (abb41f8033)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.2.1-beta.1 (52acb3950c)
|
||||
- feat(protocol): add `name` to TransportProtocol (5bf4c0138e)
|
||||
- npm-prerelease: @trezor/protocol 1.2.1-beta.1 (52acb3950c)
|
||||
- feat(protocol): add `name` to TransportProtocol (5bf4c0138e)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/protocol 1.1.1-beta.1 (cdd837ba2b)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- chore(protocol): accept Buffer in decode function (858837bb2a)
|
||||
- npm-prerelease: @trezor/protocol 1.1.1-beta.1 (cdd837ba2b)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- chore(protocol): accept Buffer in decode function (858837bb2a)
|
||||
|
||||
# 1.0.10-beta.2
|
||||
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
|
||||
# 1.0.10-beta.1
|
||||
|
||||
- chore(protocol): add a logging message in case of empty buffer (c5dd5749a7)
|
||||
- chore(protocol): add a logging message in case of empty buffer (c5dd5749a7)
|
||||
|
||||
# 1.0.8
|
||||
|
||||
- feat(protocol): separate chunking from encoding (2f445ba734)
|
||||
- feat(protocol): encode/decode messageType as string (ae3211ab6a)
|
||||
- chore(protocol): rename decode response fields (1db2916fed)
|
||||
- feat(protocol): separate chunking from encoding (2f445ba734)
|
||||
- feat(protocol): encode/decode messageType as string (ae3211ab6a)
|
||||
- chore(protocol): rename decode response fields (1db2916fed)
|
||||
|
||||
# 1.0.7
|
||||
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.6
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- 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)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- 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)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19)
|
||||
|
||||
# 1.0.4
|
||||
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- feat(transport): allow custom chunkSize in protocol-v1.encode (ba855c980)
|
||||
- feat(transport): unify protocol encode/decode functions (b4f08409c)
|
||||
- tests(protocols): add unit tests for @trezor/protocols package (5073f4921)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- feat(transport): allow custom chunkSize in protocol-v1.encode (ba855c980)
|
||||
- feat(transport): unify protocol encode/decode functions (b4f08409c)
|
||||
- tests(protocols): add unit tests for @trezor/protocols package (5073f4921)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- chore(protobuf,protocol): missing fields in package.json (27a5e8ab4)
|
||||
- chore(protobuf,protocol): missing fields in package.json (27a5e8ab4)
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- chore(transport): reorganize protocol related logic (cbabe2e2c5)
|
||||
- chore: introduce protobuf and protocol packages (072042e772)
|
||||
- chore(transport): reorganize protocol related logic (cbabe2e2c5)
|
||||
- chore: introduce protobuf and protocol packages (072042e772)
|
||||
|
||||
@@ -1,89 +1,89 @@
|
||||
# 1.3.2
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.2-beta.1 (ba0d60c261)
|
||||
- fix(protobuf): improve message type and schema generating (c3f1750def)
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.2-beta.1 (ba0d60c261)
|
||||
- fix(protobuf): improve message type and schema generating (c3f1750def)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.1-beta.1 (4bb2472d7a)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.1-beta.1 (4bb2472d7a)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.0-beta.1 (5c1f9a994d)
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.4-beta.1 (e7c2a7c410)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- npm-prerelease: @trezor/schema-utils 1.3.0-beta.1 (5c1f9a994d)
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.4-beta.1 (e7c2a7c410)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
|
||||
# 1.2.3
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.3-beta.1 (9500133ffe)
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.3-beta.1 (9500133ffe)
|
||||
|
||||
# 1.2.2
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.2-beta.1 (0cd41d78cd)
|
||||
- fix(schema-utils): typescript + typebox package resolution issue (cc22068b2a)
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.2-beta.1 (0cd41d78cd)
|
||||
- fix(schema-utils): typescript + typebox package resolution issue (cc22068b2a)
|
||||
|
||||
# 1.2.1
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.1-beta.1 (557eefaa0d)
|
||||
- chore: remove prettier-eslint dependency, upgrade @typescript-eslint (77576f5bea)
|
||||
- feat(repo): TS 5.5 (198c91f3c4)
|
||||
- chore(connect): update @sinclair/typebox-codegen 0.8.13=>0.10.4 (6cd1fdc8af)
|
||||
- chore(connect): update @sinclair/typebox 0.31.28=>0.33.7 (43ae2975b3)
|
||||
- npm-prerelease: @trezor/schema-utils 1.2.1-beta.1 (557eefaa0d)
|
||||
- chore: remove prettier-eslint dependency, upgrade @typescript-eslint (77576f5bea)
|
||||
- feat(repo): TS 5.5 (198c91f3c4)
|
||||
- chore(connect): update @sinclair/typebox-codegen 0.8.13=>0.10.4 (6cd1fdc8af)
|
||||
- chore(connect): update @sinclair/typebox 0.31.28=>0.33.7 (43ae2975b3)
|
||||
|
||||
# 1.2.0
|
||||
|
||||
- npm-prerelease: @trezor/schema-utils 1.1.1-beta.1 (2d695ff6e0)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- npm-prerelease: @trezor/schema-utils 1.1.1-beta.1 (2d695ff6e0)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
|
||||
# 1.0.5-beta.1
|
||||
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- feat(suite): Add adding a new shamir group into an existing setup (e9a0425183)
|
||||
- chore(suite): depcheck enabled (2206f19f2e)
|
||||
- feat(suite): Add adding a new shamir group into an existing setup (e9a0425183)
|
||||
|
||||
# 1.0.4-beta.1
|
||||
|
||||
- feat(connect-explorer-nextra): method json params editor (09086d0f1a)
|
||||
- feat(connect-explorer-nextra): method json params editor (09086d0f1a)
|
||||
|
||||
# 1.0.3
|
||||
|
||||
- feat(connect-explorer-nextra): complex/nested types handling, refactor (905756a4a5)
|
||||
- fix(connect-explorer-nextra): base path, disable dark mode, unit test update (5a8c4a9f39)
|
||||
- feat(connect-explorer-nextra): params table for viewing schemas (2ed3a5b366)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- feat(connect-explorer-nextra): complex/nested types handling, refactor (905756a4a5)
|
||||
- fix(connect-explorer-nextra): base path, disable dark mode, unit test update (5a8c4a9f39)
|
||||
- feat(connect-explorer-nextra): params table for viewing schemas (2ed3a5b366)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.0.2
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- feat(connect): add support for StellarClaimClaimableBalanceOp. (51a3e294d)
|
||||
- fix(protobuf): codegen devdependencies (0632e9ced)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global prettier (a416bc2e6)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19)
|
||||
- chore(schema-utils): add missing tsx dev dependency (459374dc7)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(repo): remove build:lib for some simple packages (#11276) (7febd10cf)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- feat(connect): add support for StellarClaimClaimableBalanceOp. (51a3e294d)
|
||||
- fix(protobuf): codegen devdependencies (0632e9ced)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global prettier (a416bc2e6)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: use global jest (a7e68797d)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore(repo): config cleanups and improvements (TS, Nx...) (#11096) (acf9a7f19)
|
||||
- chore(schema-utils): add missing tsx dev dependency (459374dc7)
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- fix(schema-utils): add autocast string -> number (aaa0cd784)
|
||||
- fix(schema-utils): improve union errors, add weak assert (23b664a89)
|
||||
- chore(connect-web): reduce bundle size (b41ce8e43)
|
||||
- chore(schema-utils): prepare for npm release (7e286ad7d)
|
||||
- docs(schema-utils): add readme (f996d69db)
|
||||
- refactor(connect): validation in API methods (0c035c26a)
|
||||
- feat(protobuf): support sint in proto codegen (4fd7808ac)
|
||||
- feat(connect): assert message schema in every typedCall (44430e47f)
|
||||
- feat(schema-utils): add better error handling (5280cd619)
|
||||
- feat(protobuf): use protobuf messages based on schema chore(protobuf): remove `bytebuffer` dependency fix(connect): use assert, update TS references, lint issue fix(connect-explorer): remove old references in tsconfig fix: update yarn, schema after rebase fix: update yarn lock after rebase (ad086e462)
|
||||
- feat(schema-utils): typebox with custom types and codegen (d6a6aeb3c)
|
||||
- fix(schema-utils): add autocast string -> number (aaa0cd784)
|
||||
- fix(schema-utils): improve union errors, add weak assert (23b664a89)
|
||||
- chore(connect-web): reduce bundle size (b41ce8e43)
|
||||
- chore(schema-utils): prepare for npm release (7e286ad7d)
|
||||
- docs(schema-utils): add readme (f996d69db)
|
||||
- refactor(connect): validation in API methods (0c035c26a)
|
||||
- feat(protobuf): support sint in proto codegen (4fd7808ac)
|
||||
- feat(connect): assert message schema in every typedCall (44430e47f)
|
||||
- feat(schema-utils): add better error handling (5280cd619)
|
||||
- feat(protobuf): use protobuf messages based on schema chore(protobuf): remove `bytebuffer` dependency fix(connect): use assert, update TS references, lint issue fix(connect-explorer): remove old references in tsconfig fix: update yarn, schema after rebase fix: update yarn lock after rebase (ad086e462)
|
||||
- feat(schema-utils): typebox with custom types and codegen (d6a6aeb3c)
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- initial release
|
||||
- initial release
|
||||
|
||||
@@ -8,13 +8,13 @@ Specific events can be found in [src/types/events.ts](./src/types/events.ts) and
|
||||
|
||||
Data from **production** builds (codesign branch) should be sent to:
|
||||
|
||||
- Desktop build: https://data.trezor.io/suite/log/desktop/stable.log
|
||||
- Web build: https://data.trezor.io/suite/log/web/stable.log
|
||||
- Desktop build: https://data.trezor.io/suite/log/desktop/stable.log
|
||||
- Web build: https://data.trezor.io/suite/log/web/stable.log
|
||||
|
||||
Data from **development** builds should be sent to:
|
||||
|
||||
- Desktop build: https://data.trezor.io/suite/log/desktop/develop.log
|
||||
- Web build: https://data.trezor.io/suite/log/web/develop.log
|
||||
- Desktop build: https://data.trezor.io/suite/log/desktop/develop.log
|
||||
- Web build: https://data.trezor.io/suite/log/web/develop.log
|
||||
|
||||
## Add/Modify event
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@ Private package providing strongly typed `DesktopApi` used in `@trezor/suite` an
|
||||
|
||||
Exported modules:
|
||||
|
||||
- `main` (default) used in `@trezor/suite-desktop/src` in main (NodeJS) context.
|
||||
- `renderer` (browser) used in `@trezor/suite` and `@trezor/suite-desktop-ui` in renderer context.
|
||||
- `main` (default) used in `@trezor/suite-desktop/src` in main (NodeJS) context.
|
||||
- `renderer` (browser) used in `@trezor/suite` and `@trezor/suite-desktop-ui` in renderer context.
|
||||
|
||||
```javascript
|
||||
export function getDesktopApi(ipcRenderer?: Electron.IpcRenderer): DesktopApi;
|
||||
@@ -15,40 +15,40 @@ export const desktopApi: DesktopApi;
|
||||
|
||||
## Usage examples in main process
|
||||
|
||||
- Overload `electron` types. See [typed-electron.ts](../suite-desktop/src/typed-electron.ts)
|
||||
- Overload `electron` types. See [typed-electron.ts](../suite-desktop/src/typed-electron.ts)
|
||||
|
||||
- Create `DesktopApi` instance and expose it to renderer `window.desktopApi` object. See [preload.ts](../suite-desktop/src/preload.ts)
|
||||
- Create `DesktopApi` instance and expose it to renderer `window.desktopApi` object. See [preload.ts](../suite-desktop/src/preload.ts)
|
||||
|
||||
- Receive invoke messages from renderer. See [metadata module](../suite-desktop/src/modules/metadata.ts)
|
||||
- Receive invoke messages from renderer. See [metadata module](../suite-desktop/src/modules/metadata.ts)
|
||||
|
||||
- Receive event messages from renderer. See [theme module](../suite-desktop/src/modules/theme.ts)
|
||||
- Receive event messages from renderer. See [theme module](../suite-desktop/src/modules/theme.ts)
|
||||
|
||||
- Send event messages to renderer. See `mainWindow.webContents.send` in [autoupdater module](../suite-desktop/src/modules/auto-updater.ts)
|
||||
- Send event messages to renderer. See `mainWindow.webContents.send` in [autoupdater module](../suite-desktop/src/modules/auto-updater.ts)
|
||||
|
||||
## Usage examples in renderer process
|
||||
|
||||
- `DesktopApi.invoke`. See [metadata module](../suite/src/services/suite/metadata/FileSystemProvider.ts)
|
||||
- `DesktopApi.invoke`. See [metadata module](../suite/src/services/suite/metadata/FileSystemProvider.ts)
|
||||
|
||||
- `DesktopApi.on`. See [AutoUpdater component](../suite-desktop-ui/src/support/DesktopUpdater.tsx)
|
||||
- `DesktopApi.on`. See [AutoUpdater component](../suite-desktop-ui/src/support/DesktopUpdater.tsx)
|
||||
|
||||
## How to add new method/channel
|
||||
|
||||
To invoke a method on the `main` process and return an asynchronous result to the `renderer` process
|
||||
|
||||
- add a channel to `./src/api.ts InvokeChannels`
|
||||
- add a method to `./src/api.ts DesktopApi` as `DesktopApiInvoke<'your-new-channel'>`
|
||||
- process incoming request in `@trezor/suite-desktop/src/modules/*` using `ipcMain.handle('your-new-channel', (arg?: string) => { return 1; })`
|
||||
- trigger it from `@trezor/suite` using `const r = await desktopApi.yourNewFunction()`
|
||||
- add a channel to `./src/api.ts InvokeChannels`
|
||||
- add a method to `./src/api.ts DesktopApi` as `DesktopApiInvoke<'your-new-channel'>`
|
||||
- process incoming request in `@trezor/suite-desktop/src/modules/*` using `ipcMain.handle('your-new-channel', (arg?: string) => { return 1; })`
|
||||
- trigger it from `@trezor/suite` using `const r = await desktopApi.yourNewFunction()`
|
||||
|
||||
To receive an asynchronous event in `renderer` process
|
||||
|
||||
- add a channel to `./src/api.ts RendererChannels`
|
||||
- set a listener in `@trezor/suite` using `await desktopApi.on('your-new-channel', (payload) => {})`
|
||||
- trigger an event from `@trezor/suite-desktop/src/modules/*` using `mainWindow.webContents.send('your-new-channel', { foo: 'bar' })`
|
||||
- add a channel to `./src/api.ts RendererChannels`
|
||||
- set a listener in `@trezor/suite` using `await desktopApi.on('your-new-channel', (payload) => {})`
|
||||
- trigger an event from `@trezor/suite-desktop/src/modules/*` using `mainWindow.webContents.send('your-new-channel', { foo: 'bar' })`
|
||||
|
||||
To receive an asynchronous event in `main` process
|
||||
|
||||
- add a channel to `./src/api.ts MainChannels`
|
||||
- add a method to `./src/api.ts DesktopApi` as `DesktopApiSend<'your-new-channel'>`
|
||||
- set a listener in `@trezor/suite-desktop/src/modules/*` using `ipcMain.on('your-new-channel', (_, { foo }) => {})`
|
||||
- trigger an event from `@trezor/suite` using `desktopApi.yourNewFunction({ foo: 'bar' })`
|
||||
- add a channel to `./src/api.ts MainChannels`
|
||||
- add a method to `./src/api.ts DesktopApi` as `DesktopApiSend<'your-new-channel'>`
|
||||
- set a listener in `@trezor/suite-desktop/src/modules/*` using `ipcMain.on('your-new-channel', (_, { foo }) => {})`
|
||||
- trigger an event from `@trezor/suite` using `desktopApi.yourNewFunction({ foo: 'bar' })`
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
### 🚀 New features
|
||||
|
||||
- [EVM priority fees](https://trezor.io/learn/a/transaction-fees-in-trezor-suite) are now available on all EVM chains except BSC. This allows users to speed up transactions by adding a “tip” (priority fee) to incentivize validators.
|
||||
- [EVM priority fees](https://trezor.io/learn/a/transaction-fees-in-trezor-suite) are now available on all EVM chains except BSC. This allows users to speed up transactions by adding a “tip” (priority fee) to incentivize validators.
|
||||
|
||||
### 🎨 Improvements
|
||||
|
||||
- The updated color palette enhances brand alignment and improves contrast for better visual clarity.
|
||||
- The app now opens significantly faster in View-only mode, allowing users to navigate immediately while content continues loading in the background.
|
||||
- Users can now filter out suspicious transactions on networks that support detection, improving security and transparency.
|
||||
- The DCA page has been enhanced with updated visuals and content, along with an option to display the withdrawal address for easy and quick scanning into the Invity App.
|
||||
- The updated color palette enhances brand alignment and improves contrast for better visual clarity.
|
||||
- The app now opens significantly faster in View-only mode, allowing users to navigate immediately while content continues loading in the background.
|
||||
- Users can now filter out suspicious transactions on networks that support detection, improving security and transparency.
|
||||
- The DCA page has been enhanced with updated visuals and content, along with an option to display the withdrawal address for easy and quick scanning into the Invity App.
|
||||
|
||||
### 🔧 Bug fixes
|
||||
|
||||
- Fixed minor bugs, improved usability, and optimized performance for a smoother experience.
|
||||
- Fixed minor bugs, improved usability, and optimized performance for a smoother experience.
|
||||
|
||||
@@ -121,7 +121,7 @@ export const FiatValue = ({
|
||||
return children({
|
||||
value: fiatValueComponent,
|
||||
rate: fiatRateComponent,
|
||||
timestamp: historicRate ? null : currentRate?.lastTickerTimestamp ?? null,
|
||||
timestamp: historicRate ? null : (currentRate?.lastTickerTimestamp ?? null),
|
||||
});
|
||||
}
|
||||
if (!children) return null;
|
||||
|
||||
@@ -40,7 +40,7 @@ export const useTradingFiatValues = ({
|
||||
const dispatch = useDispatch();
|
||||
const defaultCryptoSymbol = 'btc';
|
||||
const symbol = sendCryptoSelect
|
||||
? cryptoIdToSymbol(sendCryptoSelect.value) ?? defaultCryptoSymbol
|
||||
? (cryptoIdToSymbol(sendCryptoSelect.value) ?? defaultCryptoSymbol)
|
||||
: defaultCryptoSymbol;
|
||||
const tokenAddressTyped = (sendCryptoSelect?.contractAddress ?? undefined) as
|
||||
| TokenAddress
|
||||
|
||||
@@ -137,7 +137,7 @@ export const useTradingFormActions = <T extends TradingSellExchangeFormProps>({
|
||||
const formattedCryptoAmount =
|
||||
cryptoAmount && shouldSendInSats
|
||||
? amountToSmallestUnit(cryptoAmount, networkDecimals)
|
||||
: cryptoAmount ?? '';
|
||||
: (cryptoAmount ?? '');
|
||||
setValue(FORM_OUTPUT_AMOUNT, formattedCryptoAmount, { shouldValidate: true });
|
||||
},
|
||||
[getValues, tradingFiatValues, networkDecimals, shouldSendInSats, setValue],
|
||||
|
||||
@@ -135,7 +135,7 @@ export const useSendFormImport = ({
|
||||
const cryptoAmount =
|
||||
cryptoValue && shouldSendInSats
|
||||
? amountToSmallestUnit(cryptoValue, network.decimals)
|
||||
: cryptoValue ?? '';
|
||||
: (cryptoValue ?? '');
|
||||
|
||||
output.amount = cryptoAmount;
|
||||
} else if (tokens) {
|
||||
|
||||
@@ -339,7 +339,7 @@ const suiteReducer = (state: SuiteState = initialState, action: Action): SuiteSt
|
||||
const { udev, bridge, apiType } = action.payload;
|
||||
const transports =
|
||||
!draft.transport || !apiType
|
||||
? draft.transport?.transports ?? []
|
||||
? (draft.transport?.transports ?? [])
|
||||
: draft.transport.transports?.filter(t => t.apiType !== apiType);
|
||||
draft.transport = { udev, bridge, transports };
|
||||
break;
|
||||
|
||||
@@ -2,180 +2,180 @@
|
||||
|
||||
## 55
|
||||
|
||||
- change `tradingTrades` - add `sendAccountKey` and `receiveAccountKey` to each buy, sell, and exchange trade
|
||||
- change `tradingTrades` - add `sendAccountKey` and `receiveAccountKey` to each buy, sell, and exchange trade
|
||||
|
||||
## 54
|
||||
|
||||
- create `connect` object for Connect Popup related data
|
||||
- create `connect` object for Connect Popup related data
|
||||
|
||||
## 53
|
||||
|
||||
- remove `walletSettings.lastUsedFeeLevel` - we don't remember last selected fee in send form anymore
|
||||
- remove `walletSettings.lastUsedFeeLevel` - we don't remember last selected fee in send form anymore
|
||||
|
||||
## 52
|
||||
|
||||
- Deprecated Vertcoin (VTC), Bitcoin Gold (BTG), Namecoin (NMC), DigiByte (DGB), and Dash (DASH) networks. Removed related transactions, accounts, and settings.
|
||||
- Renamed coinmarketTrades to tradingTrades
|
||||
- saved ripple network type txs are removed to be fetched again and obtain internal transfers and token transfer contract and standard
|
||||
- added `security.devicesWithFailedEntropyCheck`
|
||||
- Deprecated Vertcoin (VTC), Bitcoin Gold (BTG), Namecoin (NMC), DigiByte (DGB), and Dash (DASH) networks. Removed related transactions, accounts, and settings.
|
||||
- Renamed coinmarketTrades to tradingTrades
|
||||
- saved ripple network type txs are removed to be fetched again and obtain internal transfers and token transfer contract and standard
|
||||
- added `security.devicesWithFailedEntropyCheck`
|
||||
|
||||
## 51
|
||||
|
||||
- Changed `metadata.key` on non-eth EVM networks accounts to be `descriptor-chainId`
|
||||
- Changed `metadata.key` on non-eth EVM networks accounts to be `descriptor-chainId`
|
||||
|
||||
## 49
|
||||
|
||||
- networks now have same order everywhere
|
||||
- solana tx amount is always positive
|
||||
- networks now have same order everywhere
|
||||
- solana tx amount is always positive
|
||||
|
||||
## 48
|
||||
|
||||
- device state to new object format (`device._state` -> `device.state`)
|
||||
- device state to new object format (`device._state` -> `device.state`)
|
||||
|
||||
## 47
|
||||
|
||||
- migrate matic to pol
|
||||
- migrate matic to pol
|
||||
|
||||
## 46
|
||||
|
||||
- added `tokenManagement`
|
||||
- added `device.passwords`
|
||||
- migrate Cardano accounts to a new structure
|
||||
- added `tokenManagement`
|
||||
- added `device.passwords`
|
||||
- migrate Cardano accounts to a new structure
|
||||
|
||||
## 45
|
||||
|
||||
- added `historicRates`
|
||||
- remove rates for all transactions since we are using selectors to get rates
|
||||
- added `historicRates`
|
||||
- remove rates for all transactions since we are using selectors to get rates
|
||||
|
||||
## 44
|
||||
|
||||
- remove goerli accounts, txs and settings
|
||||
- remove goerli accounts, txs and settings
|
||||
|
||||
## 43
|
||||
|
||||
- fixes bug cannot set properties of undefined (setting 'passwords') introduced by migration 41
|
||||
- fixes bug cannot set properties of undefined (setting 'passwords') introduced by migration 41
|
||||
|
||||
## 42
|
||||
|
||||
- remove fiatRates table
|
||||
- remove fiatRates table
|
||||
|
||||
## 41
|
||||
|
||||
- adds `metadata.selectedProvider.passwords` key
|
||||
- adds `metadata.selectedProvider.passwords` key
|
||||
|
||||
## 40
|
||||
|
||||
- `device.metadata.status` does not exist anymore. this information is derivable from `device.metadata[key]` and `metadata.error[deviceState]`
|
||||
- `device.metadata.status` does not exist anymore. this information is derivable from `device.metadata[key]` and `metadata.error[deviceState]`
|
||||
|
||||
## 39
|
||||
|
||||
- `metadata.provider` replaced with array of `metadata.providers`
|
||||
- `metadata.selectedProvider` field added to select from `metadata.providers`
|
||||
- labeling data are no longer stored with labelable entities (devices, accounts) but are to be found under `metadata.providers[].data`
|
||||
- labeling data (that were previously stored withing accounts/devices object) are not migrated
|
||||
but since data are fetched from providers (which are migrated) it should affect only users that update their suite and use it offline at the same time
|
||||
- `metadata.provider` replaced with array of `metadata.providers`
|
||||
- `metadata.selectedProvider` field added to select from `metadata.providers`
|
||||
- labeling data are no longer stored with labelable entities (devices, accounts) but are to be found under `metadata.providers[].data`
|
||||
- labeling data (that were previously stored withing accounts/devices object) are not migrated
|
||||
but since data are fetched from providers (which are migrated) it should affect only users that update their suite and use it offline at the same time
|
||||
|
||||
## 38
|
||||
|
||||
- add internal model to saved devices
|
||||
- add internal model to saved devices
|
||||
|
||||
## 37
|
||||
|
||||
- remove persisted coinjoin sessions
|
||||
- remove persisted coinjoin sessions
|
||||
|
||||
## 36
|
||||
|
||||
- token `address` to `contract`
|
||||
- remove ropsten accounts, txs and settings
|
||||
- token `address` to `contract`
|
||||
- remove ropsten accounts, txs and settings
|
||||
|
||||
## 35
|
||||
|
||||
- saved ethereum network type txs are removed to be fetched again and obtain internal transfers and token transfer contract and standard
|
||||
- saved ethereum network type txs are removed to be fetched again and obtain internal transfers and token transfer contract and standard
|
||||
|
||||
## 34
|
||||
|
||||
- added `coinjoinDebugSettings`
|
||||
- added `coinjoinDebugSettings`
|
||||
|
||||
## 33
|
||||
|
||||
- added `messageSystem.dismissedMessages[id].feature`
|
||||
- added `messageSystem.dismissedMessages[id].feature`
|
||||
|
||||
## 32
|
||||
|
||||
- added `coinjoinAccounts`
|
||||
- added `coinjoinAccounts`
|
||||
|
||||
## 31
|
||||
|
||||
- txs are now stored unconverted (mostly `sat` units instead of `BTC`), therefore migration was needed
|
||||
- added `firmwareType` field to objects in`devices`
|
||||
- txs are now stored unconverted (mostly `sat` units instead of `BTC`), therefore migration was needed
|
||||
- added `firmwareType` field to objects in`devices`
|
||||
|
||||
## 30
|
||||
|
||||
- added the `bitcoinAmountUnit` field to `walletSettings`
|
||||
- added the `bitcoinAmountUnit` field to `walletSettings`
|
||||
|
||||
## 29
|
||||
|
||||
- split to `token` property for storing OAuth tokens into `tokens.accessToken` and `tokens.refreshToken`
|
||||
- added `firmware`
|
||||
- split to `token` property for storing OAuth tokens into `tokens.accessToken` and `tokens.refreshToken`
|
||||
- added `firmware`
|
||||
|
||||
## 28
|
||||
|
||||
- with advent of connect v9, device.state field has changed. migrated all affected data.
|
||||
- with advent of connect v9, device.state field has changed. migrated all affected data.
|
||||
|
||||
## 27
|
||||
|
||||
- removed walletSettings.backends
|
||||
- added wallet.blockchain[coin].backends
|
||||
- backend address remembering is now supported
|
||||
- removed walletSettings.backends
|
||||
- added wallet.blockchain[coin].backends
|
||||
- backend address remembering is now supported
|
||||
|
||||
## 26
|
||||
|
||||
- added VTC bech32 accounts
|
||||
- added VTC bech32 accounts
|
||||
|
||||
## 25
|
||||
|
||||
- added walletSettings.backends
|
||||
- removed walletSettings.blockbookUrls
|
||||
- added walletSettings.backends
|
||||
- removed walletSettings.blockbookUrls
|
||||
|
||||
## 24
|
||||
|
||||
- added form drafts
|
||||
- added form drafts
|
||||
|
||||
## 23
|
||||
|
||||
- added message system
|
||||
- added message system
|
||||
|
||||
## 22
|
||||
|
||||
- added LTC bech32 accounts
|
||||
- added LTC bech32 accounts
|
||||
|
||||
## 21
|
||||
|
||||
- fix tx.amount for btc sent txs (subtract tx.fee from it), add tx.totalSpent field
|
||||
- fix tx.amount for btc sent txs (subtract tx.fee from it), add tx.totalSpent field
|
||||
|
||||
## 20
|
||||
|
||||
- format tx.details
|
||||
- format tx.details
|
||||
|
||||
## 19
|
||||
|
||||
- removed keyPath from fiatRates definition
|
||||
- removed keyPath from fiatRates definition
|
||||
|
||||
## 18
|
||||
|
||||
- added device.walletNumber
|
||||
- added device.walletNumber
|
||||
|
||||
## 17
|
||||
|
||||
- added coinmarketTrades
|
||||
- added coinmarketTrades
|
||||
|
||||
## 16
|
||||
|
||||
- removed sendForm
|
||||
- added sendFormDrafts
|
||||
- removed sendForm
|
||||
- added sendFormDrafts
|
||||
|
||||
## 15
|
||||
|
||||
- added metadata object store
|
||||
- added device.metadata
|
||||
- added account.metadata
|
||||
- added metadata object store
|
||||
- added device.metadata
|
||||
- added account.metadata
|
||||
|
||||
@@ -51,7 +51,7 @@ export const TradingFormInputFiatCrypto = <
|
||||
labelLeft: showLabel ? <Translation id={amountLabels.inputLabel} /> : undefined,
|
||||
labelRight: showLabel ? (
|
||||
<TradingFormSwitcherCryptoFiat
|
||||
currency={!amountInCrypto ? displaySymbol : currencySelectLabel ?? ''}
|
||||
currency={!amountInCrypto ? displaySymbol : (currencySelectLabel ?? '')}
|
||||
isDisabled={isFormLoading}
|
||||
toggleAmountInCrypto={toggleAmountInCrypto}
|
||||
/>
|
||||
|
||||
@@ -4,8 +4,8 @@ This package contains theme for new Suite v2, currently used only in React Nativ
|
||||
|
||||
You can find Figma files for this theme here:
|
||||
|
||||
- [colors](https://www.figma.com/file/YIFzn2vuwktwV4GzZClrYx/%5Bs2.0%5D-Trezor-Colors?node-id=0%3A1)
|
||||
- [font, borders, shadows...](https://www.figma.com/file/Z6AGVUmKQzLNtDozFamW7f/s2-Mobile?node-id=37%3A757)
|
||||
- [colors](https://www.figma.com/file/YIFzn2vuwktwV4GzZClrYx/%5Bs2.0%5D-Trezor-Colors?node-id=0%3A1)
|
||||
- [font, borders, shadows...](https://www.figma.com/file/Z6AGVUmKQzLNtDozFamW7f/s2-Mobile?node-id=37%3A757)
|
||||
|
||||
# Fonts for React Native app
|
||||
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# @trezor/transport-bridge
|
||||
|
||||
- javascript clone of https://github.com/trezor/trezord-go
|
||||
- javascript clone of https://github.com/trezor/trezord-go
|
||||
|
||||
## Build and run using node
|
||||
|
||||
- `yarn workspace @trezor/transport-bridge build:js`
|
||||
- `node ./packages/transport-bridge/dist/bin.js`
|
||||
- `yarn workspace @trezor/transport-bridge build:js`
|
||||
- `node ./packages/transport-bridge/dist/bin.js`
|
||||
|
||||
Javascript build has 2 phases - node, using esbuild, and web, using webpack. It still can be used without the `build:lib` script. But to have
|
||||
also bridge status page available you need to build.
|
||||
|
||||
## Build and run binary
|
||||
|
||||
- `yarn workspace @trezor/transport-bridge build`
|
||||
- `./packages/transport-bridge/build/\@trezor/transport-bridge-<your-platform>`
|
||||
- `yarn workspace @trezor/transport-bridge build`
|
||||
- `./packages/transport-bridge/build/\@trezor/transport-bridge-<your-platform>`
|
||||
|
||||
@@ -1,328 +1,328 @@
|
||||
# 1.4.4
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.4.4-beta.1 (4088a73073)
|
||||
- chore(deps): update usb dependency from 2.14.0 to 2.15.0 (7f3f70a55b)
|
||||
- fix(transport): reinit sessions background when initing webusb transport (968234bee7)
|
||||
- chore(transport): remove unused onClose param from release (64300a51aa)
|
||||
- fix(transport): add synchronous release (f4d1eb6eb5)
|
||||
- npm-prerelease: @trezor/transport 1.4.4-beta.1 (4088a73073)
|
||||
- chore(deps): update usb dependency from 2.14.0 to 2.15.0 (7f3f70a55b)
|
||||
- fix(transport): reinit sessions background when initing webusb transport (968234bee7)
|
||||
- chore(transport): remove unused onClose param from release (64300a51aa)
|
||||
- fix(transport): add synchronous release (f4d1eb6eb5)
|
||||
|
||||
# 1.4.3
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.4.3-beta.1 (78542f7870)
|
||||
- chore(transport): usb: rework implementation of device.reset (e75c5b00ea)
|
||||
- chore(transport): usb: move selectConfiguration outside of reset block (de8bbf162e)
|
||||
- chore(transport): usb rename 'first' param to 'reset' (afb24c461c)
|
||||
- fix(transport): usb: select configuration only if not already selected (8244a4ce91)
|
||||
- chore(transport): do not claim interface that is already claimed (d93655f57e)
|
||||
- npm-prerelease: @trezor/transport 1.4.3-beta.1 (78542f7870)
|
||||
- chore(transport): usb: rework implementation of device.reset (e75c5b00ea)
|
||||
- chore(transport): usb: move selectConfiguration outside of reset block (de8bbf162e)
|
||||
- chore(transport): usb rename 'first' param to 'reset' (afb24c461c)
|
||||
- fix(transport): usb: select configuration only if not already selected (8244a4ce91)
|
||||
- chore(transport): do not claim interface that is already claimed (d93655f57e)
|
||||
|
||||
# 1.4.2
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.4.2-beta.2 (8bac92fdc8)
|
||||
- fix(transport): `UDP` read from buffer or promise (444ace3bb9)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- feat(transport): load protobuf definitions (04cc60bd84)
|
||||
- chore(connect): change `buildMessage` param. `encode` > `protocol` (cdd43fe629)
|
||||
- npm-prerelease: @trezor/transport 1.4.2-beta.2 (8bac92fdc8)
|
||||
- fix(transport): `UDP` read from buffer or promise (444ace3bb9)
|
||||
- npm-release: @trezor/connect 9.5.2-beta.1 (#17529) (3d7542843b)
|
||||
- feat(transport): load protobuf definitions (04cc60bd84)
|
||||
- chore(connect): change `buildMessage` param. `encode` > `protocol` (cdd43fe629)
|
||||
|
||||
# 1.4.1
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.4.1-beta.1 (31d1473977)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- feat(connect): add `bluetoothProps` to Device (db9e51ad2a)
|
||||
- npm-prerelease: @trezor/transport 1.4.1-beta.1 (31d1473977)
|
||||
- fix(repo): fix generate package script (#17300) (a13f269b99)
|
||||
- feat(connect): add `bluetoothProps` to Device (db9e51ad2a)
|
||||
|
||||
# 1.4.0
|
||||
|
||||
- chore(deps): unify ts-node version (3187da7bf4)
|
||||
- Revert chore(transport): move long dep to protobuf package and unify its version with protobufjs (4a6b98bcf3)
|
||||
- chore(transport): move long dep to protobuf package and unify its version with protobufjs (3ab195cf19)
|
||||
- chore(transport): update long from 4.0.0 to 5.2.0 (241eebcb72)
|
||||
- chore(utils): typedObjectKeys (30f8f4fc59)
|
||||
- fix(connect): releasing device on browser reload using sendBeacon api (f308e1a42f)
|
||||
- npm-prerelease: @trezor/transport 1.4.0-beta.1 (4182c7dcd6)
|
||||
- chore(transport): remove unused transport-interface-error (c486d86ef3)
|
||||
- fix(transport): enumerate when UsbDevice without serialNumber disconnects (3f0f817ffd)
|
||||
- fix(transport): close connected UsbDevice if opened (8a1bb83fc0)
|
||||
- fix(transport): transferOut timeout must be inside try block (723a253667)
|
||||
- chore: replace createTimeoutPromise with resolveAfter (fd9f5098ce)
|
||||
- feat(transport): add ping to transports (98af487887)
|
||||
- chore(transport): remove unused export (a12e98efd3)
|
||||
- chore(transport): add another log in usb read error case (9924cb1e40)
|
||||
- fix(transport): usb - write timeout (eb781d8c41)
|
||||
- npm-prerelease: @trezor/transport 1.3.8-beta.1 (38c249b40a)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore(transport): make messages param required in abstract constructor (6c6244475e)
|
||||
- fix(transport): synchronize usb.getDevices since it returns wrong results when called simultaneously (571439e5dd)
|
||||
- chore(deps): update various @types packages (c6c6b36900)
|
||||
- feat(connect): add `setTransports` method (4880cd3d0c)
|
||||
- refactor(connect): DeviceList init rewritten into abortable tasks (d971ce8bcc)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
- chore(deps): unify ts-node version (3187da7bf4)
|
||||
- Revert chore(transport): move long dep to protobuf package and unify its version with protobufjs (4a6b98bcf3)
|
||||
- chore(transport): move long dep to protobuf package and unify its version with protobufjs (3ab195cf19)
|
||||
- chore(transport): update long from 4.0.0 to 5.2.0 (241eebcb72)
|
||||
- chore(utils): typedObjectKeys (30f8f4fc59)
|
||||
- fix(connect): releasing device on browser reload using sendBeacon api (f308e1a42f)
|
||||
- npm-prerelease: @trezor/transport 1.4.0-beta.1 (4182c7dcd6)
|
||||
- chore(transport): remove unused transport-interface-error (c486d86ef3)
|
||||
- fix(transport): enumerate when UsbDevice without serialNumber disconnects (3f0f817ffd)
|
||||
- fix(transport): close connected UsbDevice if opened (8a1bb83fc0)
|
||||
- fix(transport): transferOut timeout must be inside try block (723a253667)
|
||||
- chore: replace createTimeoutPromise with resolveAfter (fd9f5098ce)
|
||||
- feat(transport): add ping to transports (98af487887)
|
||||
- chore(transport): remove unused export (a12e98efd3)
|
||||
- chore(transport): add another log in usb read error case (9924cb1e40)
|
||||
- fix(transport): usb - write timeout (eb781d8c41)
|
||||
- npm-prerelease: @trezor/transport 1.3.8-beta.1 (38c249b40a)
|
||||
- chore(packages): autofix for sort-imports eslint rule (b96c899ebb)
|
||||
- chore(transport): make messages param required in abstract constructor (6c6244475e)
|
||||
- fix(transport): synchronize usb.getDevices since it returns wrong results when called simultaneously (571439e5dd)
|
||||
- chore(deps): update various @types packages (c6c6b36900)
|
||||
- feat(connect): add `setTransports` method (4880cd3d0c)
|
||||
- refactor(connect): DeviceList init rewritten into abortable tasks (d971ce8bcc)
|
||||
- chore: enable ESLint rule for as-needed | auto-fix (64fcbde4bd)
|
||||
|
||||
# 1.3.6
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.3.6-beta.1 (52aae6ddc6)
|
||||
- chore: unify types for setTimeout return type to address the NodeJS types leak issue (3f34981e5d)
|
||||
- chore(transport): reduce verbosity of usb logs by removing device (c4bef18118)
|
||||
- fix(transport): propagate libusb_access_error for correct udev rules component rendering (aced3af557)
|
||||
- chore(transport): get rid of timeout in sessions background (430e877f8d)
|
||||
- fix(transport): narrow error handling of disconnected device to be the same as with trezord-go (2dcaafd766)
|
||||
- fix(transport): match hid devices correctly on usb layer (cdd2a17c74)
|
||||
- npm-prerelease: @trezor/transport 1.3.6-beta.1 (52aae6ddc6)
|
||||
- chore: unify types for setTimeout return type to address the NodeJS types leak issue (3f34981e5d)
|
||||
- chore(transport): reduce verbosity of usb logs by removing device (c4bef18118)
|
||||
- fix(transport): propagate libusb_access_error for correct udev rules component rendering (aced3af557)
|
||||
- chore(transport): get rid of timeout in sessions background (430e877f8d)
|
||||
- fix(transport): narrow error handling of disconnected device to be the same as with trezord-go (2dcaafd766)
|
||||
- fix(transport): match hid devices correctly on usb layer (cdd2a17c74)
|
||||
|
||||
# 1.3.5
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.3.5-beta.1 (c8c6a8b5c7)
|
||||
- npm-prerelease: @trezor/transport 1.3.5-beta.1 (c8c6a8b5c7)
|
||||
|
||||
# 1.3.4
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.3.4-beta.1 (29c4ff061f)
|
||||
- npm-prerelease: @trezor/transport 1.3.4-beta.1 (29c4ff061f)
|
||||
|
||||
# 1.3.3
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.3.3-beta.2 (de2cfbf343)
|
||||
- chore: get rid of '@typescript-eslint/no-unused-vars': 'off', and enforce it everywhere (1ad7b6f9b1)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- fix(transport-bridge): synchronize was too strict, allow enumerate and call (b7afbd0515)
|
||||
- fix(connect): webusb sessions sync in all deployments (13ec59a53d)
|
||||
- chore: add no-unsafe-optional-chaining as it became part of recommanded settings (e4c191ee7b)
|
||||
- chore: add no-empty as it will became part of recommanded (ef2dd42a5e)
|
||||
- chore: enable 'prefet-const' ESLint rule (ff5fe34e9e)
|
||||
- chore: add 'import/no-duplicates' ESLint rule (8d8beba862)
|
||||
- feat(transport): implement transport.id and descriptor.sessionOwner (ab294cb3ef)
|
||||
- test(connect): adjust tests (934ae43a30)
|
||||
- refactor(connect): device handling improved (d5077c8e06)
|
||||
- refactor(transport): emit update with separate descriptors (8a98804706)
|
||||
- chore(protobuf): remove `MessageType_` prefix from `MessageType` enum (f620e40f2a)
|
||||
- chore(libs): update @types/sharedworker 0.0.124 to 0.0.130 (3ce0e31de7)
|
||||
- fix(transport): udp interface-change event (17bac171ec)
|
||||
- fix(transport): api.dispose on transport.stop (e79130e88e)
|
||||
- npm-prerelease: @trezor/transport 1.3.3-beta.1 (48637b2975)
|
||||
- chore(transport): passing rest params to parent transport class (f3eff3a302)
|
||||
- refactor(transport): background sessions improved (7644107353)
|
||||
- npm-prerelease: @trezor/transport 1.3.3-beta.2 (de2cfbf343)
|
||||
- chore: get rid of '@typescript-eslint/no-unused-vars': 'off', and enforce it everywhere (1ad7b6f9b1)
|
||||
- chore: enable import/order rule for whole codebase (e22b683733)
|
||||
- chore: add recommanded checks from eslint-plugin-jest (55d663ca2d)
|
||||
- fix(transport-bridge): synchronize was too strict, allow enumerate and call (b7afbd0515)
|
||||
- fix(connect): webusb sessions sync in all deployments (13ec59a53d)
|
||||
- chore: add no-unsafe-optional-chaining as it became part of recommanded settings (e4c191ee7b)
|
||||
- chore: add no-empty as it will became part of recommanded (ef2dd42a5e)
|
||||
- chore: enable 'prefet-const' ESLint rule (ff5fe34e9e)
|
||||
- chore: add 'import/no-duplicates' ESLint rule (8d8beba862)
|
||||
- feat(transport): implement transport.id and descriptor.sessionOwner (ab294cb3ef)
|
||||
- test(connect): adjust tests (934ae43a30)
|
||||
- refactor(connect): device handling improved (d5077c8e06)
|
||||
- refactor(transport): emit update with separate descriptors (8a98804706)
|
||||
- chore(protobuf): remove `MessageType_` prefix from `MessageType` enum (f620e40f2a)
|
||||
- chore(libs): update @types/sharedworker 0.0.124 to 0.0.130 (3ce0e31de7)
|
||||
- fix(transport): udp interface-change event (17bac171ec)
|
||||
- fix(transport): api.dispose on transport.stop (e79130e88e)
|
||||
- npm-prerelease: @trezor/transport 1.3.3-beta.1 (48637b2975)
|
||||
- chore(transport): passing rest params to parent transport class (f3eff3a302)
|
||||
- refactor(transport): background sessions improved (7644107353)
|
||||
|
||||
# 1.3.1
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.3.1-beta.1 (71a9c73da1)
|
||||
- feat(transport): unify path format for all transports (masked serialNumber) (edc6b6dec1)
|
||||
- refactor(transport): don't pass signal to transports (0cb09ab127)
|
||||
- refactor(transport): sessions background without abort signal (4f6e8cf370)
|
||||
- test(transport): better abortable methods (6dbeefde62)
|
||||
- refactor(transport): better abortable methods (583f4aacb8)
|
||||
- refactor(transport): unknownError optional (82dcd5000a)
|
||||
- refactor(transport): improved listen loops (8bda3abfe2)
|
||||
- fix(transport): improve types (47525ff18a)
|
||||
- revert(transport): remove explicit semver labels handling (8f33d930d3)
|
||||
- fix(transport): node bridge version parsing issue (7a6ff560bb)
|
||||
- chore(deps): update @types/bytebuffer @types/sharedworker @types/web (a9eaedc0a7)
|
||||
- fix(transport-bridge): lock per path (ea069c3988)
|
||||
- test(transport): unit test adjustment (e7305b93f2)
|
||||
- refactor(transport, connect): descriptor diff improvement (afa479e1ea)
|
||||
- feat(transport): `BridgeTransport` use `BridgeProtocolMessage` (43f321e5ff)
|
||||
- fix(transport): node-bridge udp reports same value in descriptor.vendor as the old bridge (a26ec84d20)
|
||||
- fix(transport): node-bridge udp reports same value in descriptor.product as the old bridge (2b7da5ef87)
|
||||
- fix(transport): UDP api: fix missing device disconnect or late device connect events (9d3c1390f5)
|
||||
- chore(transport): remove duplicated fn (29dab70e12)
|
||||
- chore(transport): move type definition to the only place where it is used (1a2fbf7f7d)
|
||||
- fix(transport): usb api in node and abort (5c2cb7d048)
|
||||
- fix(transport): do not load serialNumber if already loaded (53c722801d)
|
||||
- fix(transport-bridge): handle concurrent access cases (29d6e991ef)
|
||||
- fix(transport): remove BridgeTransport.receive timeout (415a8355f0)
|
||||
- fix(transport): transport resetting (b689e0206a)
|
||||
- fix(transport): UsbApi abort endless device.transferIn/transferOut using device.reset (eb5215c66f)
|
||||
- chore(transport): when read returns empty buffer, return ERRORS.INTERFACE_DATA_TRANSFER (1065225e4b)
|
||||
- chore(deps): update usb 2.11.0=>2.13.0 (a12e1353d5)
|
||||
- chore(deps): update protobuf-js 7.2.6=>7.4.0 (0b937d6fe7)
|
||||
- chore(deps): update @types/chrome; @types/web; @types/sharedworker (8e73aeb59b)
|
||||
- feat(transport): add DebugLink support to NodeUsbTransport and UdpTransport (6ba2bd1d27)
|
||||
- npm-prerelease: @trezor/transport 1.3.1-beta.1 (71a9c73da1)
|
||||
- feat(transport): unify path format for all transports (masked serialNumber) (edc6b6dec1)
|
||||
- refactor(transport): don't pass signal to transports (0cb09ab127)
|
||||
- refactor(transport): sessions background without abort signal (4f6e8cf370)
|
||||
- test(transport): better abortable methods (6dbeefde62)
|
||||
- refactor(transport): better abortable methods (583f4aacb8)
|
||||
- refactor(transport): unknownError optional (82dcd5000a)
|
||||
- refactor(transport): improved listen loops (8bda3abfe2)
|
||||
- fix(transport): improve types (47525ff18a)
|
||||
- revert(transport): remove explicit semver labels handling (8f33d930d3)
|
||||
- fix(transport): node bridge version parsing issue (7a6ff560bb)
|
||||
- chore(deps): update @types/bytebuffer @types/sharedworker @types/web (a9eaedc0a7)
|
||||
- fix(transport-bridge): lock per path (ea069c3988)
|
||||
- test(transport): unit test adjustment (e7305b93f2)
|
||||
- refactor(transport, connect): descriptor diff improvement (afa479e1ea)
|
||||
- feat(transport): `BridgeTransport` use `BridgeProtocolMessage` (43f321e5ff)
|
||||
- fix(transport): node-bridge udp reports same value in descriptor.vendor as the old bridge (a26ec84d20)
|
||||
- fix(transport): node-bridge udp reports same value in descriptor.product as the old bridge (2b7da5ef87)
|
||||
- fix(transport): UDP api: fix missing device disconnect or late device connect events (9d3c1390f5)
|
||||
- chore(transport): remove duplicated fn (29dab70e12)
|
||||
- chore(transport): move type definition to the only place where it is used (1a2fbf7f7d)
|
||||
- fix(transport): usb api in node and abort (5c2cb7d048)
|
||||
- fix(transport): do not load serialNumber if already loaded (53c722801d)
|
||||
- fix(transport-bridge): handle concurrent access cases (29d6e991ef)
|
||||
- fix(transport): remove BridgeTransport.receive timeout (415a8355f0)
|
||||
- fix(transport): transport resetting (b689e0206a)
|
||||
- fix(transport): UsbApi abort endless device.transferIn/transferOut using device.reset (eb5215c66f)
|
||||
- chore(transport): when read returns empty buffer, return ERRORS.INTERFACE_DATA_TRANSFER (1065225e4b)
|
||||
- chore(deps): update usb 2.11.0=>2.13.0 (a12e1353d5)
|
||||
- chore(deps): update protobuf-js 7.2.6=>7.4.0 (0b937d6fe7)
|
||||
- chore(deps): update @types/chrome; @types/web; @types/sharedworker (8e73aeb59b)
|
||||
- feat(transport): add DebugLink support to NodeUsbTransport and UdpTransport (6ba2bd1d27)
|
||||
|
||||
# 1.3.0
|
||||
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.3 (4cb7f32c21)
|
||||
- test(transport): add check for unregistered listeners also to udp api (539204f3ed)
|
||||
- fix(transport): clear abort listener in UsbApi abortableMethod (f5dfbad901)
|
||||
- test(transport): unit tests now fail when eventlisteners memory leak is detected (e602689079)
|
||||
- fix(transport-bridge): fix concurrent enumerate on node-bridge (94d1a263d6)
|
||||
- test(transport-test): introduce new dedicated testing package (f0a060127d)
|
||||
- fix(transport-bridge): cleanup also sessions background on dispose (a68bae8897)
|
||||
- chore(transport): descriptor legacy fields and updating local descriptors (460fb75a88)
|
||||
- chore(transport): remove unused json-stable-stringify dep (5d5722228b)
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.2 (b5e8d4e769)
|
||||
- chore: update @babel/preset-typescript from 7.23.3 to 7.24.7 (22b452d19c)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- fix(transport): pass all options to bridgeApiCall (signal, timeout) (96da7b911c)
|
||||
- chore(transport): reduce noise in logs by printing less device info (ba1e335339)
|
||||
- test(transport): stop testing legacy bridge versions (b374ebae50)
|
||||
- test(transport): remove misleading comments (be42c1338c)
|
||||
- chore(transport): return Buffer from transport api read (2d6744abab)
|
||||
- refactor(connect): separate onTransportUpdate (4780c51904)
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.1 (65046451dd)
|
||||
- chore(transport): use shared method for sending chunks to api (f8e4ec4565)
|
||||
- chore(transport): remove duplicated code (91cf20d007)
|
||||
- fix(transport): bridge: handle listen loop correctly when Unable to open device error (eab01684cb)
|
||||
- feat(transport): propagate hid descriptors to higher layers (97d3d78e1d)
|
||||
- fix(transport): remove listeners of AbortSignal to prevent memory leaks (b7b51d8944)
|
||||
- feat(connect-web): automatic fallback to core in popup (e4e1fcc033)
|
||||
- chore(transport): optimize imports for tree shaking (60177c7d2e)
|
||||
- fix(transport): correctly reference class instance method (12fe5a0e74)
|
||||
- chore(transport): remove duplicated types declaration (6cb4e8691c)
|
||||
- chore(transport): remove unnecessary return type from Usb and Udp api (8a41a883f1)
|
||||
- feat(transport): `AbstractApiTransport` with abort signal (5090458cc4)
|
||||
- feat(transport): `UsbApi` with abort signal (756f953b5c)
|
||||
- feat(transport): `UdpApi` with abort signal (1c93308e6a)
|
||||
- fix(transport): do not timeout AbstractApiTransport `send` and `receive` methods (bae2e15933)
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.3 (4cb7f32c21)
|
||||
- test(transport): add check for unregistered listeners also to udp api (539204f3ed)
|
||||
- fix(transport): clear abort listener in UsbApi abortableMethod (f5dfbad901)
|
||||
- test(transport): unit tests now fail when eventlisteners memory leak is detected (e602689079)
|
||||
- fix(transport-bridge): fix concurrent enumerate on node-bridge (94d1a263d6)
|
||||
- test(transport-test): introduce new dedicated testing package (f0a060127d)
|
||||
- fix(transport-bridge): cleanup also sessions background on dispose (a68bae8897)
|
||||
- chore(transport): descriptor legacy fields and updating local descriptors (460fb75a88)
|
||||
- chore(transport): remove unused json-stable-stringify dep (5d5722228b)
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.2 (b5e8d4e769)
|
||||
- chore: update @babel/preset-typescript from 7.23.3 to 7.24.7 (22b452d19c)
|
||||
- chore: update txs from 4.7.0 to 4.16.2 (59c856fd0f)
|
||||
- fix(transport): pass all options to bridgeApiCall (signal, timeout) (96da7b911c)
|
||||
- chore(transport): reduce noise in logs by printing less device info (ba1e335339)
|
||||
- test(transport): stop testing legacy bridge versions (b374ebae50)
|
||||
- test(transport): remove misleading comments (be42c1338c)
|
||||
- chore(transport): return Buffer from transport api read (2d6744abab)
|
||||
- refactor(connect): separate onTransportUpdate (4780c51904)
|
||||
- npm-prerelease: @trezor/transport 1.2.1-beta.1 (65046451dd)
|
||||
- chore(transport): use shared method for sending chunks to api (f8e4ec4565)
|
||||
- chore(transport): remove duplicated code (91cf20d007)
|
||||
- fix(transport): bridge: handle listen loop correctly when Unable to open device error (eab01684cb)
|
||||
- feat(transport): propagate hid descriptors to higher layers (97d3d78e1d)
|
||||
- fix(transport): remove listeners of AbortSignal to prevent memory leaks (b7b51d8944)
|
||||
- feat(connect-web): automatic fallback to core in popup (e4e1fcc033)
|
||||
- chore(transport): optimize imports for tree shaking (60177c7d2e)
|
||||
- fix(transport): correctly reference class instance method (12fe5a0e74)
|
||||
- chore(transport): remove duplicated types declaration (6cb4e8691c)
|
||||
- chore(transport): remove unnecessary return type from Usb and Udp api (8a41a883f1)
|
||||
- feat(transport): `AbstractApiTransport` with abort signal (5090458cc4)
|
||||
- feat(transport): `UsbApi` with abort signal (756f953b5c)
|
||||
- feat(transport): `UdpApi` with abort signal (1c93308e6a)
|
||||
- fix(transport): do not timeout AbstractApiTransport `send` and `receive` methods (bae2e15933)
|
||||
|
||||
# 1.1.30-beta.2
|
||||
|
||||
- chore(transport): remove enumeration intent signaling (ef5b83e6f1)
|
||||
- feat(transport): make descriptor.type required (6b8a46b3be)
|
||||
- fix(transport-bridge): pass type to listen,stable stringify comparison (667dc4a26b)
|
||||
- chore(transport): remove enumeration intent signaling (ef5b83e6f1)
|
||||
- feat(transport): make descriptor.type required (6b8a46b3be)
|
||||
- fix(transport-bridge): pass type to listen,stable stringify comparison (667dc4a26b)
|
||||
|
||||
# 1.1.30-beta.1
|
||||
|
||||
- chore(transport): add more logs (4eeed40ad6)
|
||||
- fix(transport): UdpTransport use `listen` and `stop` to control enumeration (4356826bc4)
|
||||
- chore(transport): add more logs (4eeed40ad6)
|
||||
- fix(transport): UdpTransport use `listen` and `stop` to control enumeration (4356826bc4)
|
||||
|
||||
# 1.1.29
|
||||
|
||||
- chore(transport): make Session type literal (72570f2219)
|
||||
- chore(transport): specify apis fields more verbosely (public/protected) (786fa92fdc)
|
||||
- chore(transport): make Session type literal (72570f2219)
|
||||
- chore(transport): specify apis fields more verbosely (public/protected) (786fa92fdc)
|
||||
|
||||
# 1.1.29-beta.1
|
||||
|
||||
- feat(transport-bridge): introduce dispose method in transport-bridge (7fe9e7cd56)
|
||||
- fix(transport): usb device filtering (d5ba4383c0)
|
||||
- fix(connect): simultaneous read of connected devices (f181c988a4)
|
||||
- test(transport): enable skipped unit tests (6516c718b7)
|
||||
- fix(transport): AbstractApiTransport.acquire listenPromise condition (c37d12961a)
|
||||
- fix(transport): Transport.stopped initial value (e9638f48ed)
|
||||
- feat(transport): make signal required param in constructor (4b82f8d505)
|
||||
- feat(transport-bridge): introduce dispose method in transport-bridge (7fe9e7cd56)
|
||||
- fix(transport): usb device filtering (d5ba4383c0)
|
||||
- fix(connect): simultaneous read of connected devices (f181c988a4)
|
||||
- test(transport): enable skipped unit tests (6516c718b7)
|
||||
- fix(transport): AbstractApiTransport.acquire listenPromise condition (c37d12961a)
|
||||
- fix(transport): Transport.stopped initial value (e9638f48ed)
|
||||
- feat(transport): make signal required param in constructor (4b82f8d505)
|
||||
|
||||
# 1.1.28
|
||||
|
||||
- chore(protobuf): ability to build protobuf messages from the specified branch (7a6babb818)
|
||||
- fix(transport): remove accidental descriptors object mutation (3cd6b820f9)
|
||||
- Revert feat(transport): add scheduleActionParams to call api (4de6cbed0c)
|
||||
- feat(transport): add scheduleActionParams to call api (40a053013a)
|
||||
- feat(protocol): separate chunking from encoding (2f445ba734)
|
||||
- chore(transport): drop dead code (faba718c9f)
|
||||
- chore(protocol): rename decode response fields (1db2916fed)
|
||||
- test(transport): fix e2e triggering unit tests (9c117de07e)
|
||||
- feat(transport): handle cases when bridge returns descriptor with same path but different product (e2abb91fc8)
|
||||
- chore(transport): improve tests setup (5aa27a0fba)
|
||||
- chore(transport): keep track of full descriptors in background (be400968bb)
|
||||
- feat(transport): add field type to descriptor (74a7214adb)
|
||||
- test(suite-native): detox e2e (#11821) (3e3f185ece)
|
||||
- chore(protobuf): ability to build protobuf messages from the specified branch (7a6babb818)
|
||||
- fix(transport): remove accidental descriptors object mutation (3cd6b820f9)
|
||||
- Revert feat(transport): add scheduleActionParams to call api (4de6cbed0c)
|
||||
- feat(transport): add scheduleActionParams to call api (40a053013a)
|
||||
- feat(protocol): separate chunking from encoding (2f445ba734)
|
||||
- chore(transport): drop dead code (faba718c9f)
|
||||
- chore(protocol): rename decode response fields (1db2916fed)
|
||||
- test(transport): fix e2e triggering unit tests (9c117de07e)
|
||||
- feat(transport): handle cases when bridge returns descriptor with same path but different product (e2abb91fc8)
|
||||
- chore(transport): improve tests setup (5aa27a0fba)
|
||||
- chore(transport): keep track of full descriptors in background (be400968bb)
|
||||
- feat(transport): add field type to descriptor (74a7214adb)
|
||||
- test(suite-native): detox e2e (#11821) (3e3f185ece)
|
||||
|
||||
# 1.1.27
|
||||
|
||||
- chore(ci): faster transport E2E (5154075030)
|
||||
- fix(transport): accept logger also for usb transports (3a5dee1318)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- fix(connect): fix connect for RN (#11489) (14814fd54b)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
- chore(ci): faster transport E2E (5154075030)
|
||||
- fix(transport): accept logger also for usb transports (3a5dee1318)
|
||||
- chore: TS project references for build:libs + buildless utxo-lib (#11526) (4d857722fe)
|
||||
- fix(connect): fix connect for RN (#11489) (14814fd54b)
|
||||
- chore(repo): mostly buildless monorepo (#11464) (637ad88dcf)
|
||||
|
||||
# 1.1.26
|
||||
|
||||
- chore(transport, trezor-user-env-link): remove cross-fetch (e489dce33)
|
||||
- chore(transport, trezor-user-env-link): remove cross-fetch (e489dce33)
|
||||
|
||||
# 1.1.25
|
||||
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(utils): remove build step requirement from @trezor/utils (#11176) (6cd3d3c81)
|
||||
- feat(connect): add support for StellarClaimClaimableBalanceOp. (51a3e294d)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- chore: updated deprecated jest syntax (d3f8043f0)
|
||||
- fix: from g:tsx to local tsx in prepublish script (d21d698b2)
|
||||
- chore(suite): autofix newlines (c82455e74)
|
||||
- chore(utils): remove build step requirement from @trezor/utils (#11176) (6cd3d3c81)
|
||||
- feat(connect): add support for StellarClaimClaimableBalanceOp. (51a3e294d)
|
||||
- chore(repo): ESLint refactor + speed up 70% (#11143) (44fa12a79)
|
||||
- chore: update various dependencies (no major update) (fecd89f6e)
|
||||
- chore: use global tsx (c21d81f66)
|
||||
- chore: update typescript and use global tsc (84bc9b8bd)
|
||||
- chore: use global rimraf (5a6759eff)
|
||||
- chore: update prettier (00fe229e0)
|
||||
- chore: upgrade jest to 29.7.0 (3c656dc0b)
|
||||
- chore: upgrade jest (004938e24)
|
||||
- chore: update root dependencies (fac6d99ec)
|
||||
- chore: updated deprecated jest syntax (d3f8043f0)
|
||||
|
||||
# 1.1.21
|
||||
|
||||
- chore(transport): remove unused files (b69076a80)
|
||||
- chore(transport): remove custom eslint no-underscore-dangle rule (049e42d18)
|
||||
- chore(transport): remove custom eslint no-await-in-loop rule (be90dcd2a)
|
||||
- chore(transport): remove custom eslint no-restricted-syntax rule (8b4910209)
|
||||
- chore(transport): remove custom eslint ban-types rule (44da16615)
|
||||
- fix(transport): add missing await (aaecf9440)
|
||||
- chore(transport): move node-bridge logic to transport-bridge package (0f2882af4)
|
||||
- fix(mobile): fix Cardano receive (#10580) (3c5e253e0)
|
||||
- feat(transport): add node-bridge module (acf5056f7)
|
||||
- chore(transport): separate receive util (d1d964c1d)
|
||||
- fix(connect): check custom Transport instance (018ef646d)
|
||||
- chore(transport): remove unused files (b69076a80)
|
||||
- chore(transport): remove custom eslint no-underscore-dangle rule (049e42d18)
|
||||
- chore(transport): remove custom eslint no-await-in-loop rule (be90dcd2a)
|
||||
- chore(transport): remove custom eslint no-restricted-syntax rule (8b4910209)
|
||||
- chore(transport): remove custom eslint ban-types rule (44da16615)
|
||||
- fix(transport): add missing await (aaecf9440)
|
||||
- chore(transport): move node-bridge logic to transport-bridge package (0f2882af4)
|
||||
- fix(mobile): fix Cardano receive (#10580) (3c5e253e0)
|
||||
- feat(transport): add node-bridge module (acf5056f7)
|
||||
- chore(transport): separate receive util (d1d964c1d)
|
||||
- fix(connect): check custom Transport instance (018ef646d)
|
||||
|
||||
# 1.1.19
|
||||
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore: update `jest` and related dependency (b8a321c83)
|
||||
- feat(transport): allow custom chunkSize in protocol-v1.encode (ba855c980)
|
||||
- feat(transport): accept encoding protocols as parameter of send, receive and call methods (b64af958e)
|
||||
- feat(transport): unify protocol encode/decode functions (b4f08409c)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- tests: switch to fw main branch (91c450631)
|
||||
- chore: remove `bytebuffer` dependency (9b2f9def0)
|
||||
- chore(connect): use `tslib` as dependency in all public libs (606ecc63b)
|
||||
- chore: update `jest` and related dependency (b8a321c83)
|
||||
- feat(transport): allow custom chunkSize in protocol-v1.encode (ba855c980)
|
||||
- feat(transport): accept encoding protocols as parameter of send, receive and call methods (b64af958e)
|
||||
- feat(transport): unify protocol encode/decode functions (b4f08409c)
|
||||
- chore(repo): update tsx (53de3e3a8)
|
||||
- tests: switch to fw main branch (91c450631)
|
||||
|
||||
# 1.1.18
|
||||
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- refactor(transport): rename files (f5286f613)
|
||||
- chore(tests): cleanup jets configs (#9869) (7b68bab05)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- tests(transport): check presence of protobuf messages (60f1a8bf1)
|
||||
- feat(transport): do not require protobuf messages (221573be2)
|
||||
- tests(transport): fix type-check (ffcfde3bb)
|
||||
- tests(transport): fix imports in e2e (1ffb1c05b)
|
||||
- tests(transport): remove unused script/test (6feadb573)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- feat(mobile): create react-native-usb library (#9689) (3be5f5015)
|
||||
- chore(repo): Upgrade TS 5.3 (#10017) (7277f9d0f)
|
||||
- chore(repo): upgrade to TS 5.2 (#9989) (bf8d0fe80)
|
||||
- refactor(transport): rename files (f5286f613)
|
||||
- chore(tests): cleanup jets configs (#9869) (7b68bab05)
|
||||
- feat(deps): update deps without breaking changes (7e0584c51)
|
||||
- tests(transport): check presence of protobuf messages (60f1a8bf1)
|
||||
- feat(transport): do not require protobuf messages (221573be2)
|
||||
- tests(transport): fix type-check (ffcfde3bb)
|
||||
- tests(transport): fix imports in e2e (1ffb1c05b)
|
||||
- tests(transport): remove unused script/test (6feadb573)
|
||||
- chore(desktop): update deps related to desktop packages (af412cfb5)
|
||||
- feat(mobile): create react-native-usb library (#9689) (3be5f5015)
|
||||
|
||||
# 1.1.17
|
||||
|
||||
- chore: edit links to trezor-firmware repo after renaming its main branch (2b0606371)
|
||||
- fix: content type header applied for native (#9594) (c84270e13)
|
||||
- fix: use type header with the bridge API (#9590) (b8bb2dfe6)
|
||||
- chore: edit links to trezor-firmware repo after renaming its main branch (2b0606371)
|
||||
- fix: content type header applied for native (#9594) (c84270e13)
|
||||
- fix: use type header with the bridge API (#9590) (b8bb2dfe6)
|
||||
|
||||
# 1.1.16
|
||||
|
||||
- feat(transport): udp support (65e617195)
|
||||
- chore: adjust/unify createDeferred usage (4d724a451)
|
||||
- feat(transport): udp support (65e617195)
|
||||
- chore: adjust/unify createDeferred usage (4d724a451)
|
||||
|
||||
# 1.1.15
|
||||
|
||||
- chore(transport): merge lowlevel folder with utils (1d8d76637)
|
||||
- chore(transport): reorganize protocol related logic (cbabe2e2c)
|
||||
- refactor(transport): small change in interface device type (fb73caa39)
|
||||
- chore: introduce protobuf and protocol packages (072042e77)
|
||||
- chore(transport): merge lowlevel folder with utils (1d8d76637)
|
||||
- chore(transport): reorganize protocol related logic (cbabe2e2c)
|
||||
- refactor(transport): small change in interface device type (fb73caa39)
|
||||
- chore: introduce protobuf and protocol packages (072042e77)
|
||||
|
||||
# 1.1.14
|
||||
|
||||
- chore(deps): bump protobufjs from 6.11.3 to 7.2.4 (d0cb6caae)
|
||||
- fix(transport): fix occasional race condition (fb8062e18)
|
||||
- feat(transport): internal_model enum (26c17386a)
|
||||
- chore(deps): bump protobufjs from 6.11.3 to 7.2.4 (d0cb6caae)
|
||||
- fix(transport): fix occasional race condition (fb8062e18)
|
||||
- feat(transport): internal_model enum (26c17386a)
|
||||
|
||||
# 1.1.13
|
||||
|
||||
- test(transport): extend unit tests (99e12c7be)
|
||||
- fix(transport): race condition in listen (6cd72cb60)
|
||||
- chore(transport): update messages (7bc259f8b)
|
||||
- feat(transport): add nodeusb transport (f0cee52f2)
|
||||
- chore(deps): update (a21a081ba)
|
||||
- chore(transport): reuse typed event emitter from utils (379c82dd3)
|
||||
- chore(request-manager,transport,connect-plugin-stelar): fix extraneous dependencies (68bf1d451)
|
||||
- chore(transport): refactor (f7b97fb68)
|
||||
- test(transport): extend unit tests (99e12c7be)
|
||||
- fix(transport): race condition in listen (6cd72cb60)
|
||||
- chore(transport): update messages (7bc259f8b)
|
||||
- feat(transport): add nodeusb transport (f0cee52f2)
|
||||
- chore(deps): update (a21a081ba)
|
||||
- chore(transport): reuse typed event emitter from utils (379c82dd3)
|
||||
- chore(request-manager,transport,connect-plugin-stelar): fix extraneous dependencies (68bf1d451)
|
||||
- chore(transport): refactor (f7b97fb68)
|
||||
|
||||
# 1.1.11
|
||||
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
- 819c019d1 chore: use workspace:\* everywhere
|
||||
|
||||
# 1.1.10
|
||||
|
||||
- fix(transport): update encoded_network to ArrayBuffer
|
||||
- chore(transport): protobuf patch for ethereum get address
|
||||
- fix(transport): update encoded_network to ArrayBuffer
|
||||
- chore(transport): protobuf patch for ethereum get address
|
||||
|
||||
# 1.1.9
|
||||
|
||||
@@ -330,43 +330,43 @@ chore(transport): update protobufs, update dependencies
|
||||
|
||||
# 1.1.8
|
||||
|
||||
- chore(connect;transport): connect.init add transports param; rename transports
|
||||
- chore(connect;transport): connect.init add transports param; rename transports
|
||||
|
||||
# 1.1.7
|
||||
|
||||
- Code cleanup, sharing constants with @trezor/connect
|
||||
- Code cleanup, sharing constants with @trezor/connect
|
||||
|
||||
# 1.1.6
|
||||
|
||||
- Dependencies: typescript 4.9
|
||||
- Dependencies: typescript 4.9
|
||||
|
||||
# 1.1.5
|
||||
|
||||
- Removed flowtype generation
|
||||
- Added CoinJoinRequest message
|
||||
- Cardano: Added support for [CIP36](https://cips.cardano.org/cips/cip36/) Catalyst registration format
|
||||
- Removed flowtype generation
|
||||
- Added CoinJoinRequest message
|
||||
- Cardano: Added support for [CIP36](https://cips.cardano.org/cips/cip36/) Catalyst registration format
|
||||
|
||||
# 1.1.4
|
||||
|
||||
- Added cardano types related to [babbage feature](https://github.com/trezor/trezor-suite/commit/efe9c78a2f74a1b7653b3fddf6cca35ba38d3ae9#diff-c1b9d6a93a3b65c45c4dcf06aa86d6c7a84bcc2e14fefdc4a9bdc3d3298c9a5a)
|
||||
- Added cardano types related to [babbage feature](https://github.com/trezor/trezor-suite/commit/efe9c78a2f74a1b7653b3fddf6cca35ba38d3ae9#diff-c1b9d6a93a3b65c45c4dcf06aa86d6c7a84bcc2e14fefdc4a9bdc3d3298c9a5a)
|
||||
|
||||
# 1.1.2
|
||||
|
||||
- Added CardanoTxRequiredSigner.key_path': 'optional in protobuf patches
|
||||
- Added CardanoTxRequiredSigner.key_path': 'optional in protobuf patches
|
||||
|
||||
# 1.1.1
|
||||
|
||||
- Changed latest bridge url to https://connect.trezor.io/8/data/bridge/latest.txt'
|
||||
- Added trezor-common submodule. Protobuf definitions (messages.json) and protobuf related typescript definitions.
|
||||
- Changed latest bridge url to https://connect.trezor.io/8/data/bridge/latest.txt'
|
||||
- Added trezor-common submodule. Protobuf definitions (messages.json) and protobuf related typescript definitions.
|
||||
|
||||
# 1.1.0
|
||||
|
||||
- Added @trezor/utils dependency.
|
||||
- Added @trezor/utils dependency.
|
||||
|
||||
# 1.0.1
|
||||
|
||||
- Fixed: encoding protobuf messages containing numbers over Number.MAX_SAFE_INTEGER in browser environment.
|
||||
- Fixed: encoding protobuf messages containing numbers over Number.MAX_SAFE_INTEGER in browser environment.
|
||||
|
||||
# 1.0.0
|
||||
|
||||
- first release
|
||||
- first release
|
||||
|
||||
@@ -10,11 +10,11 @@ _You probably don't want to use this package directly._ For communication with T
|
||||
|
||||
## What is the purpose
|
||||
|
||||
- translate JSON payloads to binary messages using [protobuf definitions](https://github.com/trezor/trezor-common/tree/master/protob) comprehensible to Trezor devices
|
||||
- chunking and reading chunked messages according to the [Trezor protocol](https://github.com/trezor/trezor-common/blob/master/protob/protocol.md)
|
||||
- exposing single API for various transport methods:
|
||||
- Trezor Bridge
|
||||
- WebUSB
|
||||
- translate JSON payloads to binary messages using [protobuf definitions](https://github.com/trezor/trezor-common/tree/master/protob) comprehensible to Trezor devices
|
||||
- chunking and reading chunked messages according to the [Trezor protocol](https://github.com/trezor/trezor-common/blob/master/protob/protocol.md)
|
||||
- exposing single API for various transport methods:
|
||||
- Trezor Bridge
|
||||
- WebUSB
|
||||
|
||||
## Publishing
|
||||
|
||||
|
||||
@@ -8,26 +8,26 @@ Sessions in @trezor/transport package is a mean to coordinate multiple applicati
|
||||
|
||||
### Problems
|
||||
|
||||
- Device might change its state. We don't know until we ask.
|
||||
- Underlying data-transfer technology might not support simultaneous reads and writes by multiple clients.
|
||||
- We want to be 100% that the response we receive is really what we are expecting and not some stray response intended for someone else.
|
||||
- Device might change its state. We don't know until we ask.
|
||||
- Underlying data-transfer technology might not support simultaneous reads and writes by multiple clients.
|
||||
- We want to be 100% that the response we receive is really what we are expecting and not some stray response intended for someone else.
|
||||
|
||||
### Solution
|
||||
|
||||
- Before client can access device it needs to `acquire` a `session`. Session is a simple integer that is incremented whenever a new session is granted.
|
||||
- Since we support not only multiple applications but also multiple devices, we keep session in a dict where key is `device.path`
|
||||
- If claimed session is correct, client is allowed to access device. Client sends its `session` with every `call` and transport validates that `session` is still valid.
|
||||
- Once client has finished its work with device, it is supposed to `release` its session. At this moment any other client is free to `acquire` session.
|
||||
- Before client can access device it needs to `acquire` a `session`. Session is a simple integer that is incremented whenever a new session is granted.
|
||||
- Since we support not only multiple applications but also multiple devices, we keep session in a dict where key is `device.path`
|
||||
- If claimed session is correct, client is allowed to access device. Client sends its `session` with every `call` and transport validates that `session` is still valid.
|
||||
- Once client has finished its work with device, it is supposed to `release` its session. At this moment any other client is free to `acquire` session.
|
||||
|
||||
### Implementation
|
||||
|
||||
- Since we not only support multiple devices and multiple applications but also different platforms things get little more complicated.
|
||||
- `BridgeTransport` has sessions management incorporated and is the "highest rank" transport. All applications should detect if it is available and if yes, `BridgeTransport` should be used.
|
||||
- Sessions management logic is contained in what we call [sessions background](packages/transport/src/sessions/background.ts) which is a simple typescript module that can be easily run in various contexts.
|
||||
- When `WebUSBTransport` is in use (browser environment), we strive for synchronization between tabs. We can achieve this by running `sessions background` in a [SharedWorker](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker).
|
||||
- When experimental `NodeUSBTransport` is in use there is no synchronization **YET**. Technically, it should be possible to expose `sessions background` through a locally opened server. In that case we must ensure that browser applications connect to the right `sessions background`. Probably `sessions background` itself should check whether there is a `sessions background` of "higher rank" available and forward all requests to it.
|
||||
- Since we not only support multiple devices and multiple applications but also different platforms things get little more complicated.
|
||||
- `BridgeTransport` has sessions management incorporated and is the "highest rank" transport. All applications should detect if it is available and if yes, `BridgeTransport` should be used.
|
||||
- Sessions management logic is contained in what we call [sessions background](packages/transport/src/sessions/background.ts) which is a simple typescript module that can be easily run in various contexts.
|
||||
- When `WebUSBTransport` is in use (browser environment), we strive for synchronization between tabs. We can achieve this by running `sessions background` in a [SharedWorker](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker).
|
||||
- When experimental `NodeUSBTransport` is in use there is no synchronization **YET**. Technically, it should be possible to expose `sessions background` through a locally opened server. In that case we must ensure that browser applications connect to the right `sessions background`. Probably `sessions background` itself should check whether there is a `sessions background` of "higher rank" available and forward all requests to it.
|
||||
|
||||
### Next steps
|
||||
|
||||
- Sessions negotiation and subordination
|
||||
- Sessions on protocol level.
|
||||
- Sessions negotiation and subordination
|
||||
- Sessions on protocol level.
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user