Skip to content

Conversation

@thisconnect
Copy link
Collaborator

Before asking for reviews, here is a check list of the most common things you might need to consider:

  • updating the Changelog
  • writing unit tests
  • checking if your changes affect other coins or tokens in unintended ways
  • testing on multiple environments (Qt, Android, ...)
  • having an AI review your changes

thisconnect and others added 30 commits October 14, 2025 09:26
Added coinfinity logo to address request from coinfinity.co and
its subdomains.

Example link: aopp:?v=0&msg=XXX&asset=btc&format=any&callback=https://api.coinfinity.co/callback/v1/wallet/YYYY
4b55058 renamed some files, and
accidentally changed from `.sha256` to `.gz.sha256` for some but not
all bundled firmwares.

Then 30df8c6 accidentally added two unused/unreferenced .sha256
files, which are deleted now again (we didn't add a BitBox02 v9.23.3,
we only added it for BitBox02 Nova):

- firmware-bitbox02-btconly.v9.23.3.signed.bin.sha256
- firmware-bitbox02-multi.v9.23.3.signed.bin.gz.sha256
Display USDT and USDC amounts with two decimals (for
 value that have only one) to improve user experience.
Etherscan's gasoracle endpoint is not supported for Sepolia, so there is
no point in wasting an API call that will always return an error.
For Sepolia, we immediately go to the fallback solution.
Type can represent unions, intersections, mapped types, tuples, and other
advanced types that interface cannot.

Interfaces with the same name are automatically merged in TypeScript,
which can lead to subtle bugs if two interfaces collide unknowingly.
Type aliases don’t merge, so reusing the same name will throw an error,
which is safer.

Retain 'interface' only when extending global types (e.g., Window) via
`declare global`.

Changed `interface IAccount` to `type TAccount` with T prefix for
consistency and to prevent name clashes with existing modules.
Fixed intendation and semicolons
When an account is set as used, there is no more need to check it again.
By exiting early if an account is already used, we avoid a call to Transactions().
see previous commit:
- prefer 'type' over 'interface' for safer type definitions
Added import type in cases where it is only a type import.

Removed some unused exports.
Removed unused account type which was added in:
- efce945

The proposeTx api was typed in:
- 19c27ed

So it looks like IProposeTxData was never used.
@stylistic/indent should also catch formatting of types and not
just JavaScript.
@stylistic/semi also catches formatting of types and not
just JavaScript.
Was accidentally changed in 02e18e2.
shonsirsha and others added 25 commits October 22, 2025 15:56
When entering a number in the "Gap limit for change addresses" field
within the dialog, the cursor jumps to the "Gap limit for receive
addresses" field after typing a digit.

The cursor should remain in the Gap limit for change address field
while typing.
Title was never used, and small only in one place (Send) for the
noFeeTargets warning message.

Replaced small font in send View by using `<label>` element (most
other text elements use Label element on that page, so it shows
the smaller font size.

Tested by patching the api endpoint with:

```diff
diff --git a/frontends/web/src/api/account.ts b/frontends/web/src/api/account.ts
index cbef324..2d26f3347 100644
--- a/frontends/web/src/api/account.ts
+++ b/frontends/web/src/api/account.ts
@@ -20,6 +20,7 @@ import type { TDetailStatus } from './bitsurance';
 import type { SuccessResponse } from './response';
 import type { NonEmptyArray } from '@/utils/types';
 import { apiGet, apiPost } from '@/utils/request';
+// import { FeeTargets } from '@/routes/account/send/feetargets';

 export type NativeCoinCode = 'btc' | 'tbtc' | 'rbtc' | 'ltc' | 'tltc' | 'eth' | 'sepeth';

@@ -379,7 +380,7 @@ export type TFeeTargetList = {
 };

 export const getFeeTargetList = (code: AccountCode): Promise<TFeeTargetList> => {
-  return apiGet(`account/${code}/fee-targets`);
+  return apiGet(`account/${code}/fee-targets`).then(() => ({ defaultFeeTarget: 'custom', feeTargets: [] }));
 };
```
Renamed --size-header to be more consistent with other names.
--size-large-mobile was only used on mobile for the balance amount.

Chagned to closest available value which is --size-header. This is
not exactly the same as 1.4rem (22.4px) however 22.4px is not a
font-size that is used anywhere else. With this change the account
view now has same font-size for header as well as balance.
Was only used during setup for the label of the name input field
and the backup checklist for the checkboxes.

In both views there is no reason to use another font-size, without
it the text looks more consistent and label, input field and error
message have the same font-size as in other palces.
…elf-dropdown-merged

Conflicts:
	CHANGELOG.md
	frontends/web/src/api/account.ts
	frontends/web/src/components/dropdown/mobile-fullscreen-selector.tsx
	frontends/web/src/components/forms/input.tsx
	frontends/web/src/routes/account/send/components/inputs/receiver-address-input.tsx
	frontends/web/src/routes/account/send/send-wrapper.tsx
	frontends/web/src/routes/account/send/send.tsx
	frontends/web/src/routes/market/pocket.tsx
	frontends/web/src/routes/router.tsx
@thisconnect thisconnect changed the title Staging send to self dropdown merged master into staging-send-to-self merged Oct 29, 2025
@thisconnect thisconnect requested a review from benma October 29, 2025 14:50
@thisconnect
Copy link
Collaborator Author

Merging master->staging so that staging is up to date with all the recent lint changes on master.

and there is still this bug
#3625 (review) @benma

Copy link
Contributor

@benma benma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK

@thisconnect thisconnect merged commit 20f121e into BitBoxSwiss:staging-send-to-self-dropdown Oct 30, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants